Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Requests shim #2

Open
wants to merge 209 commits into
base: 0.19.X
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
209 commits
Select commit Hold shift + click to select a range
e3693a0
Add a very minimal requests shim and its dependencies
bartbroere Nov 13, 2021
0b2f4aa
Raise warnings and merge Session.headers with the request headers par…
bartbroere Nov 17, 2021
3fb1ff6
Merge remote-tracking branch 'upstream/main' into requests-shim
bartbroere Jan 2, 2022
cd1971c
Revert "Version 0.19.0 (#2099)"
hoodmane Jan 10, 2022
9d515cc
Bump version to 0.20.0dev0
hoodmane Jan 11, 2022
3f5a6ac
Fix CI Pre-build docker image not deploying on tags (#2105)
ehfd Jan 13, 2022
5c1588d
MAINT Refactor of load-pyodide (reduces diff to wheels PR) (#2106)
hoodmane Jan 13, 2022
c8f8718
FIX scipy Templated_PyUFunc (#2109)
hoodmane Jan 16, 2022
a206386
Fix numpy comparator functions (#2110)
hoodmane Jan 16, 2022
0396189
DOC Add version alert on latest docs (#2093)
ryanking13 Jan 17, 2022
3293f1d
PKG added sqlalchemy (#2112)
clstaudt Jan 18, 2022
de61d5a
Add basic test for sqlalchemy (#2116)
ryanking13 Jan 19, 2022
59016f2
Improve error message when a destroyed pyproxy is used (#2121)
hoodmane Jan 23, 2022
8323987
Use wheels instead of file_packager (#2027)
hoodmane Jan 24, 2022
50938f3
FIX REPL tab at beginning of line should indent not complete (#2125)
eagleoflqj Jan 24, 2022
56cffbc
Use error-stack-parser to make better stack traces (#2123)
hoodmane Jan 24, 2022
e6ef8d6
PKG updated pyb2d version (#2117)
DerThorsten Jan 24, 2022
704783b
Split off webworker / node compatibility into separate file (#2129)
hoodmane Jan 24, 2022
21ebeed
Bump node-fetch from 2.6.1 to 2.6.7 in /src/js (#2128)
dependabot[bot] Jan 24, 2022
581e8fd
MAINT Do not print all archived files when building (#2134)
ryanking13 Jan 25, 2022
9b5b639
Use typescript (split from #2130, doesn't fix docs) (#2133)
hoodmane Jan 25, 2022
42d13a0
Bump node-fetch from 2.6.1 to 2.6.7 in /src/js (#2135)
dependabot[bot] Jan 25, 2022
ad114b7
Fix typescript documentation (#2130)
hoodmane Jan 27, 2022
6bdd96c
Fix numpy fatal error: incorrect random_float_fill return type (#2137)
hoodmane Jan 27, 2022
75aa9ba
MAINT Split js2python_init into a separate .js file (#2136)
hoodmane Jan 27, 2022
0e77ba4
MAINT refactor js2python to allow future options (#2138)
hoodmane Jan 30, 2022
597857f
MAINT Reorder make lint to typecheck first before running formatters …
hoodmane Jan 30, 2022
33ab51a
DOC Fix typo in packages path [skip ci] (#2146)
paulftw Jan 30, 2022
42cd4a4
MAINT Refactor *console.py* (#2140)
Jan 30, 2022
391c43e
MAINT Separate some things out of Module (#2144)
hoodmane Jan 30, 2022
2005c9d
Update the statsmodels URL (#2153)
ryanking13 Feb 2, 2022
54f6ba4
Update Dockerfile to install latest browser versions (#2152)
ryanking13 Feb 9, 2022
950c1dc
CI Update to newer docker image (#2160)
ryanking13 Feb 10, 2022
2b75cd6
Add wrapt (#2165)
hoodmane Feb 12, 2022
f784e5e
Use wheels instead of sdists for pure Python packages (#2126)
hoodmane Feb 12, 2022
39e0281
MAINT Add Hiwire to top level namespace (#2173)
hoodmane Feb 14, 2022
525d111
CI Improve docker tagging rules (#2168)
ryanking13 Feb 14, 2022
d6e9ddf
fix(mkpkg): arguments were incorrect (#2176)
henryiii Feb 14, 2022
32f9d79
Add default_converter argument to to_py (#2170)
hoodmane Feb 14, 2022
55fbd32
ENH Show informative error message when fetching wheel fails (#2175)
ryanking13 Feb 15, 2022
fcc8c48
Strip whitespace from micropip.list() output (#2181)
ryanking13 Feb 16, 2022
1041e8e
Pin markupsafe version (#2183)
ryanking13 Feb 18, 2022
30ea13f
Support for C++ exceptions in packages (#2178)
hoodmane Feb 19, 2022
41b6db1
style: improve pre-commit (#2177)
henryiii Feb 19, 2022
c11fabc
Fix pre-commit CI (#2191)
rth Feb 19, 2022
1a8514d
Add boost-histogram (#2174)
henryiii Feb 19, 2022
ed22c06
chore: pyupgrade 3.9+ (#2195)
henryiii Feb 20, 2022
66856a7
MAINT isort (#2200)
henryiii Feb 21, 2022
8385df3
tests: enabling mypy on untyped defs (#2204)
henryiii Feb 23, 2022
0882766
Actually run wrapt tests (#2207)
hoodmane Feb 24, 2022
edadd26
chore: update pre-commit hooks (#2209)
henryiii Feb 24, 2022
869b1bb
benchmark html5 canvas renderer (#2151)
madhur-tandon Feb 24, 2022
57a41af
DOC Corrected sha256 doc (#2213)
gabrielfougeron Feb 25, 2022
8d00451
chore: enable the rest of flake8 & bugbear (#2216)
henryiii Feb 27, 2022
bb36171
Remove unneeded code from pywasmcross (#2224)
hoodmane Feb 28, 2022
e065454
chore: some package updates (#2230)
henryiii Mar 1, 2022
e3760e8
upgrade to jquery.terminal 2.32.0 (#2231)
eagleoflqj Mar 1, 2022
8798e1f
Use ESM import in module type webworker (#2220)
leopsidom Mar 2, 2022
63161b5
Fix Astropy: avoid failing top level imports
jobovy Mar 2, 2022
e0393b2
Handle strings and other weird things that are thrown as errors (#2236)
hoodmane Mar 2, 2022
5b22f5e
Add cache for lint CI to reduce timeouts (#2240)
hoodmane Mar 2, 2022
fd8433a
MAINT Refactor benchmark script (#2227)
ryanking13 Mar 2, 2022
0687b1a
Fix bug in loadDynlib (#2235)
hoodmane Mar 2, 2022
913d706
xfail draw_math_text (#2243)
hoodmane Mar 2, 2022
a725c6c
chore: use GHA for linting (#2245)
henryiii Mar 4, 2022
5724bbc
MAINT use variables for Python version rather than hardcoding it (#2241)
hoodmane Mar 4, 2022
9feb50b
Remove numpy patches work around for chrome 89 bug (#2171)
hoodmane Mar 5, 2022
d6071d2
Upload build logs zip as circleci artifact (#2254)
hoodmane Mar 5, 2022
7763e0a
fix: better error messages, fewer tracebacks (#2242)
henryiii Mar 5, 2022
36d0e15
MAINT Improve circleci cache rules (#2253)
hoodmane Mar 5, 2022
fff0f0e
Add `default_converter` argument to `to_js` and `toJs` (#2208)
hoodmane Mar 5, 2022
138c7a7
chore: matplotlib 3.5.1, yt 4 (#2234)
henryiii Mar 7, 2022
dd70b56
Remove numpy decorators patch (#2259)
hoodmane Mar 8, 2022
4f8b0a0
chore: more pre-commit checking (#2257)
henryiii Mar 8, 2022
114c24d
Fix word splitting on run_docker script (#2260)
ryanking13 Mar 8, 2022
17fdd6c
Fix typo in docs [skip ci] (#2264)
hoodmane Mar 10, 2022
c01ab54
Better package cross compilation (#2238)
hoodmane Mar 10, 2022
74e6809
Update lxml (#2239)
hoodmane Mar 10, 2022
3002751
Update astropy to 5.0.2 (#2268)
jobovy Mar 11, 2022
37c8a70
fix(build): lock around logging and archiving portions (#2262)
henryiii Mar 11, 2022
0a9153e
Add cryptography, openssl, and _ssl packages (#2263)
hoodmane Mar 12, 2022
6defff3
Update main branch changelog to include v0.19.1
hoodmane Mar 13, 2022
f7b0f8c
No replay (#2256)
hoodmane Mar 13, 2022
18e664a
chore: isort avoid local build confusion, bump pre-commit (#2274)
henryiii Mar 14, 2022
8c5627f
MAINT Fix emscripten patch paths (#2276)
hoodmane Mar 15, 2022
5bd042f
Refactor matplotlib tests (#2271)
ryanking13 Mar 16, 2022
245e8e7
Don't expose loadPyodide as global variable from ES6 module (#2249)
hoodmane Mar 16, 2022
63442de
Use uppercase for the package Pillow (#2278)
ryanking13 Mar 16, 2022
b6555fb
Move making archive of shared libraries to buildpkg (#2279)
ryanking13 Mar 16, 2022
59ace09
Implement more accurate wheel finding using the packaging tags module…
hoodmane Mar 16, 2022
918fe4c
Remove Py2JsResult (#2277)
hoodmane Mar 17, 2022
406ed94
Dockerfile update for Python 3.10 (#2281)
hoodmane Mar 17, 2022
0e1e2ac
Python 3.10 (#2225)
hoodmane Mar 17, 2022
25358e4
Improve error message when no matching wheel is found (#2284)
hoodmane Mar 18, 2022
a356fc4
Fix requirejs compatibility (#2283)
hoodmane Mar 20, 2022
165ad56
Add user to sudoers in run_docker (#2296)
hoodmane Mar 21, 2022
abba842
MAINT Use tee to pipe stdout to build.log from buildpkg (#2293)
hoodmane Mar 21, 2022
7f908be
ENH Calculate indexURL from error stack trace (#2292)
hoodmane Mar 21, 2022
eabfa81
Use pypa/build (#2272)
hoodmane Mar 22, 2022
880fc39
Add handling and tests for weird Javascript errors (#2294)
hoodmane Mar 22, 2022
bfcc58b
Update new package docs and add more detailed meta.yaml validation (#…
hoodmane Mar 22, 2022
0f2ce88
Rework core tests (#2265)
hoodmane Mar 22, 2022
0a2b307
PKG Add python-solvespace (#2287)
fuyb1992 Mar 23, 2022
043dcf1
Wait until docker container initialization in run_docker script (#2302)
ryanking13 Mar 23, 2022
9b3d72b
Change runPython and runPythonAsync 'globals' to be passed as a named…
hoodmane Mar 23, 2022
f4f013a
Disable python_solvespace due to CI failures (#2308)
hoodmane Mar 24, 2022
e865b77
Fix scipy linking errors (#2289)
hoodmane Mar 24, 2022
5897646
MAINT Update emscripten to 2.0.24 (#2035)
hoodmane Mar 24, 2022
694c47f
Update emscripten to 2.0.27 (#2295)
hoodmane Mar 24, 2022
04b75b0
Add changelog entry for Emscripten update (#2295)
hoodmane Mar 24, 2022
22a0014
Pyodide v0.20.0a1
hoodmane Mar 24, 2022
cc541d9
Revert "Pyodide v0.20.0a1"
hoodmane Mar 24, 2022
cf61487
Bump minimist from 1.2.5 to 1.2.6 in /src/js (#2311)
dependabot[bot] Mar 24, 2022
818dfe4
Remove pyodide-interrupts (#2309)
hoodmane Mar 24, 2022
844cc24
Merge together unpack_buffer and unpack_buffer_archive (#2307)
hoodmane Mar 25, 2022
5a30246
Fix broken link (#2316)
tirkarthi Mar 25, 2022
d091e64
Handle signals other than SIGINT with interrupt_buffer (#2301)
hoodmane Mar 25, 2022
7895bd5
DOC Add deprecation timeline (#2314)
ryanking13 Mar 27, 2022
075714f
Update documentation for passing in global namespace (#2324)
wlach Mar 27, 2022
2838dfa
Change extract_dir argument of unpackArchive to be a keyword argument…
hoodmane Mar 28, 2022
22fab55
MAINT Bump zlib version (#2327)
hoodmane Mar 29, 2022
c982e6b
ENH Automatically schedule coroutines (#2319)
hoodmane Mar 29, 2022
37057d1
Set PLATFORM_TRIPLET, include platform in so names, only load compati…
hoodmane Mar 29, 2022
ca97aaf
chore: fix black breakage from click 8.1 (#2328)
henryiii Mar 29, 2022
f06eb77
Remove bad ctypes patch (#2331)
hoodmane Mar 30, 2022
3c2ae15
MAINT merge console scripts into one (#2329)
ryanking13 Mar 31, 2022
c27d2e7
Switch extractDir to camelCase (#2333)
hoodmane Apr 1, 2022
389f8ff
Update openssl to 1.1.1n (#2334)
hoodmane Apr 1, 2022
6f62a89
fix: better mypy coverage (#2339)
henryiii Apr 1, 2022
a54b1b4
Update numpy to v1.22.3 (#2337)
hoodmane Apr 1, 2022
93dc922
chore: Python 3.10 pyupgrade (#2342)
henryiii Apr 1, 2022
7cbbe73
Bump ansi-regex from 3.0.0 to 3.0.1 in /src/js (#2341)
dependabot[bot] Apr 2, 2022
b12399c
Add lazy-object-proxy (#2320)
hoodmane Apr 2, 2022
93c3e65
MAINT Fix JsBuffer_tobytes and JsBuffer_tomemoryview signatures (#2347)
hoodmane Apr 2, 2022
981f238
Test numpy in node (#2349)
hoodmane Apr 3, 2022
a69fb1b
Enable ANSI escape codes in console (#2345)
tomwhite Apr 3, 2022
8ffd03f
Update changelog.md (#2352)
Lothiraldan Apr 4, 2022
eb8afb0
Update libffi commit (#2350)
hoodmane Apr 5, 2022
1b094cf
CI Disable log clipping in building docker images on GHA (#2356)
ryanking13 Apr 5, 2022
513919e
Fix matplotlib event listeners (#2335)
hoodmane Apr 6, 2022
73a5b29
Fix scipy import failure #2338 (#2348)
hoodmane Apr 6, 2022
df3a928
Run make -C packages update-all (#2355)
hoodmane Apr 7, 2022
58b6fed
Update nltk to v3.7 (#2363)
hoodmane Apr 8, 2022
dc6e0ef
Update python-sat to 0.1.7.dev16 (#2364)
hoodmane Apr 8, 2022
f748f12
Update zarr to v2.11.3 (#2365)
hoodmane Apr 8, 2022
8e3cc8f
Update scikit-image to v0.19.2 (#2367)
hoodmane Apr 8, 2022
c477ca6
Update statsmodels to v0.13.2 (#2366)
hoodmane Apr 8, 2022
23662b2
More package updates (#2369)
hoodmane Apr 8, 2022
bd8f8c0
TST Enable some skipped or xfailed tests (#2368)
ryanking13 Apr 8, 2022
69aab0b
Update Pillow to v9.1.0 (#2362)
hoodmane Apr 8, 2022
dfbf288
New keyboard interrupt patch from upstream (#2332)
hoodmane Apr 8, 2022
0c4470b
Update cryptography to v3.4.8 (#2372)
hoodmane Apr 8, 2022
fe893b3
Update pandas to v1.4.2 (#2370)
hoodmane Apr 8, 2022
4ec97fd
fix: minor touchups (#2374)
henryiii Apr 8, 2022
da7a3f5
chore: some pacage updates (#2375)
henryiii Apr 8, 2022
70633ab
xfail statsmodels in chrome (#2377)
hoodmane Apr 9, 2022
66fe7ed
Update scipy to v1.8.0 (#2361)
hoodmane Apr 9, 2022
374eef1
DOC Reorganize 0.20.0 changelog (#2380)
rth Apr 9, 2022
60d5308
ENH Remove hard coded paths in `pyodide_build` (#2351)
ryanking13 Apr 9, 2022
adc234b
Changes for v0.20 release
hoodmane Apr 9, 2022
7a9273d
v0.20.0
hoodmane Apr 9, 2022
952d909
v0.21.0dev0
hoodmane Apr 9, 2022
30a863a
Fix invocations of _PyArg_ParseStackAndKeywords (#2382)
hoodmane Apr 10, 2022
a19b34c
Replace runtime assertions about JsRef size and alignment with compil…
hoodmane Apr 10, 2022
6a84067
Update docker image (#2388)
ryanking13 Apr 11, 2022
50af355
Rename 'build' directory to 'dist' (#2387)
hoodmane Apr 11, 2022
bda8a85
Update debugging devguide (#2386)
hoodmane Apr 11, 2022
6281041
FIX Make core tests pass with ASSERTIONS=1 (#2385)
rth Apr 11, 2022
1c14950
Enable python_solvespace (#2389)
fuyb1992 Apr 12, 2022
c4ebd37
Fix type declarations (#2396)
hoodmane Apr 14, 2022
a95a27e
DOC Remove dummy packages from docs (#2358)
ryanking13 Apr 14, 2022
993940b
Allow multiple loading of Pyodide instances (#2391)
hoodmane Apr 15, 2022
e5a46e5
Fix npm package (#2394)
hoodmane Apr 18, 2022
5f52842
Fix typo in CDN url (#2404)
ryanking13 Apr 18, 2022
217463f
Merge remote-tracking branch 'upstream/main' into requests-shim
bartbroere Apr 18, 2022
81d7472
Simplify the patch some more, and handle some binary use cases better
bartbroere Apr 18, 2022
6900afd
PKG Add opencv-python, ffmpeg and libwebp (#2305)
ryanking13 Apr 19, 2022
fda600e
Fix interrupt handler patch (#2405)
hoodmane Apr 19, 2022
d24d656
MAINT Reduce CI failures (#2409)
ryanking13 Apr 20, 2022
aaf9a50
Enable webp support in Pillow (#2407)
ryanking13 Apr 21, 2022
6f098b8
Fix rebuild check (#2415)
ryanking13 Apr 21, 2022
6d34ef0
DOC Fix renderer for Interface type (#2417)
ryanking13 Apr 21, 2022
71deef5
MAINT Fix being able to run javascript tests (#2413)
mneil Apr 21, 2022
0772491
PKG Add h5py (#2411)
bmaranville Apr 21, 2022
e18e6c8
Fix rebuild check (#2419)
ryanking13 Apr 26, 2022
0c30f4b
BLD Fix pyodide-build installation when in Python virtual environment…
ryanking13 Apr 27, 2022
5700b86
Dependency checks for cmake (req. by emsdk) and libtool (req. by libf…
mdboom Apr 28, 2022
5100bc1
v0.20.1a1
ryanking13 Apr 29, 2022
d0ae8a6
Revert "v0.20.1a1"
ryanking13 Apr 29, 2022
3f9ae2e
Fix micropip package name resolution (#2414)
ryanking13 May 1, 2022
80a650c
MAINT declare module_init functions in TRY_INIT macros (#2437)
hoodmane May 2, 2022
975dd6d
DOC Improve contributing instructions [skip ci] (#2447)
rth May 2, 2022
e3e3c19
Fix JS tests run in browser and node against build pyodide.js (#2425)
mneil May 2, 2022
7152cea
also lowercase when normalizing micropip package names (#2445)
bollwyvl May 2, 2022
6e4a63f
MAINT added missing build==0.7.0 dependency in requirements.txt (#2454)
Zyell May 3, 2022
c082d93
MAINT Mark position-only params in _core_docs (#2427)
hoodmane May 3, 2022
0311cd1
ENH Add SHA-256 hash to packages.json entries (#2455)
mger May 3, 2022
fd0b652
Benchmark load times for pandas and matplotlib too (#2465)
wlach May 3, 2022
1aad443
ENH allow running mkpkg without npx installed (#2462)
megies May 3, 2022
f5bc181
MAINT Add `jsproxy_typedict` to `_core_module` (#2473)
hoodmane May 3, 2022
3c1bd73
ENH Update typescript target to es2017 (#2471)
jasongrout May 3, 2022
e05778e
DOC Improve GH PR template (#2464)
rth May 3, 2022
68c9850
ENH Add credentials kwarg to `micropip.install` (#2458)
amitsaha May 4, 2022
72c00ee
Add browser polyfills for webpack compilation (#2468)
jasongrout May 4, 2022
0ba04f3
Export PyodideInterface (#2443)
hoodmane May 4, 2022
9b4d4a7
FIX to_string encoding argument is not position only (#2479)
hoodmane May 4, 2022
7a6c7bd
Merge remote-tracking branch 'upstream/main' into requests-shim
bartbroere May 4, 2022
ddf26ed
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] May 4, 2022
4af2986
New certifi version
bartbroere May 18, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
240 changes: 108 additions & 132 deletions .circleci/config.yml

Large diffs are not rendered by default.

2 changes: 0 additions & 2 deletions .clang-format
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,4 @@ SpacesInSquareBrackets: false
Standard: Cpp11
TabWidth: 8
UseTab: Never
---
Language: JavaScript
...
3 changes: 3 additions & 0 deletions .flake8
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[flake8]
extend-ignore = E203, E402, E501, E731, E741, B950
select = C,E,F,W,B,B9
12 changes: 3 additions & 9 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
<!-- Thank you for contributing to Pyodide! All improvements are welcome,
so don't be afraid to make a PR. -->

<!-- [IMPORTANT] Note on CI failures:
Currently, we are having issues with selenium-based tests.
Don't panic if the CI fails on your PR because of timeouts.
It's probably not your fault. We will investigate :) -->

### Description

<!-- Please explain what your PR is about:
Expand All @@ -16,11 +11,10 @@

### Checklists

<!-- Note on checklists:
<!-- Note:
If you think some of these steps are not necessary for your PR,
just remove those checkboxes, or mark them as checked. Otherwise,
if some checkboxes are left unmarked, we might assume that your PR
is not ready to be merged and we might keep you waiting -->
remove those checkboxes, or mark them as checked. If you keep unchecked checkboxes,
we will assume that your PR is not ready to be merged -->

- [ ] Add a [CHANGELOG](https://github.com/pyodide/pyodide/blob/main/docs/project/changelog.md) entry
- [ ] Add / update tests
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/deploy_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
- name: Setup Python
uses: actions/setup-python@v2
with:
python-version: "3.9"
python-version: "3.10.2"

- name: Install dependencies
run: python -m pip install build twine
Expand Down
43 changes: 38 additions & 5 deletions .github/workflows/docker_image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,18 @@ name: pyodide-env-docker
on:
workflow_dispatch:
inputs:
version:
description: "Version of the docker image to build."
required: true
chrome_version:
description: "Version of the chrome browser (e.g. 97, 96, latest)."
required: false
default: "97"
firefox_version:
description: "Version of the firefox browser (e.g. 96, 95, latest)."
required: false
default: "96"
tag:
description: "Tag of the docker image to build (If not set, <release-date>-chrome[version]-firefox[version] will be used)"
required: false
default: ""
env:
GHCR_REGISTRY: ghcr.io
IMAGE_NAME: pyodide/pyodide-env
Expand All @@ -25,14 +34,26 @@ jobs:
uses: docker/metadata-action@v3
with:
images: ${{ env.IMAGE_NAME }}
- name: Set tag
id: tag
run: |
TAG=${{ github.event.inputs.tag }}
if [ -z "$TAG" ]; then
DATE=$(date +'%Y%m%d')
TAG="$DATE-chrome${{ github.event.inputs.chrome_version }}-firefox${{ github.event.inputs.firefox_version }}"
fi
echo "::set-output name=tag::$TAG"
- name: Build and push Docker image to Docker Hub
id: build
uses: docker/build-push-action@v2
with:
file: ./Dockerfile
push: true
tags: ${{ env.IMAGE_NAME }}:${{ github.event.inputs.version }}
tags: ${{ env.IMAGE_NAME }}:${{ steps.tag.outputs.tag }}
labels: ${{ steps.meta.outputs.labels }}
build-args: |
CHROME_VERSION=${{ github.event.inputs.chrome_version }}
FIREFOX_VERSION=${{ github.event.inputs.firefox_version }}
- name: Image digest
run: echo ${{ steps.build.outputs.digest }}
build_ghcr:
Expand All @@ -51,13 +72,25 @@ jobs:
uses: docker/metadata-action@v3
with:
images: ${{ env.GHCR_REGISTRY }}/${{ env.IMAGE_NAME }}
- name: Set tag
id: tag
run: |
TAG=${{ github.event.inputs.tag }}
if [ -z "$TAG" ]; then
DATE=$(date +'%Y%m%d')
TAG="$DATE-chrome${{ github.event.inputs.chrome_version }}-firefox${{ github.event.inputs.firefox_version }}"
fi
echo "::set-output name=tag::$TAG"
- name: Build and push Docker image to ${{ env.GHCR_REGISTRY }}
id: build
uses: docker/build-push-action@v2
with:
file: ./Dockerfile
push: true
tags: ${{ env.GHCR_REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.event.inputs.version }}
tags: ${{ env.GHCR_REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.tag.outputs.tag }}
labels: ${{ steps.meta.outputs.labels }}
build-args: |
CHROME_VERSION=${{ github.event.inputs.chrome_version }}
FIREFOX_VERSION=${{ github.event.inputs.firefox_version }}
- name: Image digest
run: echo ${{ steps.build.outputs.digest }}
29 changes: 21 additions & 8 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,20 @@ on:
pull_request:
branches: [main]

concurrency:
group: main-${{ github.head_ref }}
cancel-in-progress: true

jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v3
with:
python-version: 3.10.2
- uses: pre-commit/[email protected]

build-core:
runs-on: ubuntu-latest
env:
Expand All @@ -28,7 +41,7 @@ jobs:
- uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: pyodide-env
python-version: 3.9.5
python-version: 3.10.2
channels: conda-forge

- name: Check Python versions
Expand Down Expand Up @@ -75,21 +88,21 @@ jobs:
ccache -s

- name: check-size
run: ls -lh build/
run: ls -lh dist/

- name: Store artifacts build
uses: actions/upload-artifact@v2
with:
name: core-build
path: ./build/
path: ./dist/
retention-days: 60

test-core:
runs-on: ubuntu-latest
env:
DISPLAY: :99

needs: build-core
needs: [build-core]
strategy:
matrix:
selenium_runner: [firefox]
Expand All @@ -101,12 +114,12 @@ jobs:
uses: actions/download-artifact@v2
with:
name: core-build
path: ./build/
path: ./dist/

- uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: pyodide-env
python-version: 3.9.5
python-version: 3.10.2
channels: conda-forge

- name: install test requirements
Expand All @@ -120,7 +133,7 @@ jobs:
shell: bash -l {0}
run: |
ls -lh
ls -lh build/
ls -lh dist/
tools/pytest_wrapper.py src packages/micropip/ -v -k "${SELENIUM_RUNNER}"

- name: run package tests
Expand All @@ -129,5 +142,5 @@ jobs:
shell: bash -l {0}
run: |
ls -lh
ls -lh build/
ls -lh dist/
tools/pytest_wrapper.py packages/test* packages/*/test* -v -k "numpy and not joblib and ${SELENIUM_RUNNER}"
24 changes: 17 additions & 7 deletions .github/workflows/prebuilt_docker_image.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,23 @@
name: prebuilt-docker-image
on:
push:
tags:
- "*.*.*"
release:
types: [published]
env:
GHCR_REGISTRY: ghcr.io
IMAGE_NAME: pyodide/pyodide
# Note: the following version needs updating after each pyodide-env image release
PYODIDE_ENV_VERSION: 19
PYODIDE_ENV_VERSION: 20220411-chrome99-firefox98
jobs:
build_docker:
runs-on: ubuntu-latest
environment: Docker
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
id: builder
with:
driver-opts: env.BUILDKIT_STEP_LOG_MAX_SIZE=-1
- name: Log into Docker Hub registry
uses: docker/login-action@v1
with:
Expand All @@ -33,15 +36,21 @@ jobs:
push: true
build-args: |
VERSION=${{ env.PYODIDE_ENV_VERSION }}
tags: ${{ env.IMAGE_NAME }}:${{ github.event.inputs.version }}
tags: ${{ env.IMAGE_NAME }}:${{ github.event.release.tag_name }}
labels: ${{ steps.meta.outputs.labels }}
builder: ${{ steps.builder.outputs.name }}
- name: Image digest
run: echo ${{ steps.build.outputs.digest }}
build_ghcr:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
id: builder
with:
driver-opts: env.BUILDKIT_STEP_LOG_MAX_SIZE=-1
- name: Log into registry ${{ env.GHCR_REGISTRY }}
uses: docker/login-action@v1
with:
Expand All @@ -61,7 +70,8 @@ jobs:
push: true
build-args: |
VERSION=${{ env.PYODIDE_ENV_VERSION }}
tags: ${{ env.GHCR_REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.event.inputs.version }}
tags: ${{ env.GHCR_REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.event.release.tag_name }}
labels: ${{ steps.meta.outputs.labels }}
builder: ${{ steps.builder.outputs.name }}
- name: Image digest
run: echo ${{ steps.build.outputs.digest }}
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
*.a
*.o
*.pyc
src/js/pyproxy.gen.js
src/js/*.gen.*
src/js/*.out.*

*.egg-info/

Expand Down
Loading