Commit Graph

68 Commits

Author SHA1 Message Date
Gyeongjae Choi 6edf6b2535
CI Bump chrome version in the docker image to 122 (#4616) 2024-03-15 19:45:20 +09:00
Hood Chatham fb31fff09a
Upgrade to Python 3.12.1 (#4435) 2024-02-03 19:25:45 -08:00
Hood Chatham 16db2158ff
Update docker image to bookworm (#4431)
Buster isn't available for anymore for Python 312 so we have to update.

This also updates to Python 3.11.7, which turns out to be relatively invasive. I broadly
xfailed failing tests in `python_tests.yaml` since we'll upgrade to Python 3.12 soon anyways.
2024-01-30 08:19:53 -08:00
Hood Chatham 4c34b6a468
Update node in docker image from v14 to v20 (#3819)
This updates the docker image to use node 20.1.0
2023-05-06 15:27:43 -07:00
Christian Clauss b2201c19b1
Upgrade to Python v3.11.3 (#3741) 2023-04-12 17:38:05 +02:00
Christian Clauss b19e276cfa
Python 3.11.2: Set PYODIDE_IMAGE_TAG in run_docker (#3620) 2023-03-02 02:10:53 +01:00
Hood Chatham 2ab4b0ab6a
Install autoconf 2.71 in the docker image (#3515)
Upstream libffi requires autoconf 2.71, so we should use it too.
2023-01-26 19:30:13 -08:00
Hood Chatham 5e26d9f1ae
Build libpyodide.a (#3335)
This is work towards unvendoring the Pyodide foreign function interface. 

Prior to this point, we included a large amount of critical functionality with `--pre-js`.
So we could create an archive called `libpyodide.a` with the object files but to use it
you would have to pass `--pre-js _pyodide.out.js` at link time. This embeds all of this
stuff in an object file called `pyodide_pre.o` which goes in our archive so you get all
the needed js runtime by linking it. 

Of course someone trying to use this still has to get the Python code onto the import
path, either using `--preload-file`, using Python to unpack it as a zip archive as we now
do, with zipimporter, or otherwise. They also will have to link `libpython.a` (is CPython
going to start distributing an Emscripten libpython?) and probably various other things.

We have to use a hack to inject the JavaScript code into the object files. The normal
`EM_JS` macro cannot handle arbitrary JavaScript code -- for example it fails with many
regex. Instead we manually generate write a C source file that does what we need using
`xxd`. The generated C code is similar to what `EM_JS` generates, but it uses an array
initializer rather than a string initializer for the characters avoiding the C preprocessor /
compiler's strange opinions about strings.
2023-01-26 17:22:05 -08:00
Hood Chatham 3b2952fc92
Python3.11 (#3252) 2023-01-23 19:45:59 -08:00
Gyeongjae Choi ef112108c9
Add rust toolchain to the pyodide-env docker image (#3441)
This adds rust toolchain into our docker image so we don't have to install it every time.

make rust command still exists, but I removed it from the docs. So now a user (who wants to build a package that requires rust) is responsible for installing rust toolchain in their build setup, which is reasonable I think.

Co-authored-by: josephrocca <1167575+josephrocca@users.noreply.github.com>
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
2023-01-10 13:28:04 +09:00
Gyeongjae Choi d802fb3fdc
Remove pre-built docker image support (#3342) 2022-12-13 12:04:15 +09:00
Joe Marshall 4a1913d3ad
build packages from pypi direct (#3196)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
Co-authored-by: Gyeongjae Choi <def6488@gmail.com>
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2022-11-17 10:05:14 +09:00
Gyeongjae Choi 5e2688b37b
Bump docker image tag (#3221) 2022-11-02 16:25:27 +09:00
Gyeongjae Choi 5e412795ed
0.21.0 (#2935) 2022-08-09 15:36:10 +02:00
Gyeongjae Choi 5935e5c7f9
Add sqlite3 binary to the docker image (#2807) 2022-06-30 13:22:03 +09:00
Jo Bovy e30df9fa9a
Fix groupadd/useradd in `run_docker` so $HOME is set correctly (#2675)
"$HOME is now just set to /. According to useradd's documentation, the flag for setting
the home directory is just --home, not --home-dir. With that, echo $HOME gives the
right result in the container."

https://github.com/pyodide/pyodide/issues/2674#issuecomment-1150182865
2022-06-08 12:24:17 -07:00
Hood Chatham d818f410c4
Use tblib to pickle errors in `run_in_pyodide` (#2619) 2022-05-27 12:28:46 -07:00
Henry Schreiner 1093b86e5b
refactor: use cmake 3.22 from pip (#2489)
* refactor: use cmake 3.22 from pip

* Fix dockerfile

* Update image tags

* Fix image

* Switch to pyodide docker image

Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
2022-05-04 14:22:50 -06:00
Gyeongjae Choi 6a84067819
Update docker image (#2388) 2022-04-11 11:05:32 +09:00
Hood Chatham 7a9273dd6c v0.20.0 2022-04-09 13:44:32 -07:00
Gyeongjae Choi 043dcf1763
Wait until docker container initialization in run_docker script (#2302) 2022-03-22 22:43:32 -07:00
Hood Chatham 165ad56fa2
Add user to sudoers in run_docker (#2296) 2022-03-21 10:01:58 +09:00
Hood Chatham 0e1e2ac01c
Python 3.10 (#2225) 2022-03-17 15:48:56 -07:00
Gyeongjae Choi 114c24d018
Fix word splitting on run_docker script (#2260) 2022-03-08 09:29:10 -08:00
Henry Schreiner 4f8b0a0344
chore: more pre-commit checking (#2257) 2022-03-07 21:51:20 -08:00
Gyeongjae Choi 525d1111b0
CI Improve docker tagging rules (#2168) 2022-02-14 18:34:13 +01:00
Gyeongjae Choi 950c1dcbd2
CI Update to newer docker image (#2160) 2022-02-10 09:36:18 +01:00
Hood Chatham 276d396fff
Version 0.19.0 (#2099) 2022-01-10 15:17:53 -08:00
Gyeongjae Choi 4f2a9906c4
Fix run_docker to not ignore PYODIDE_SYSTEM_PORT (#1807) 2021-08-28 09:03:24 +02:00
Hood Chatham 250c48038b
Release 0.18.0 (#1775) 2021-08-03 21:34:14 +02:00
Hood Chatham 2fde295e21
Don't bind a port in run_docker by default (#1750) 2021-07-27 00:47:11 +02:00
Hood Chatham f0bd568a31
Set up pytest node tests (#1717) 2021-07-20 10:48:27 +02:00
Devin Neal c0bec41b78
Use the PORT_CONFIGURATION_LINE in run_docker (#1723) 2021-07-18 17:49:35 -07:00
Ondřej Staněk 601e474e7d
Fix run_docker to work on Mac (#1695) [skip ci] 2021-07-09 10:41:28 -07:00
Hood Chatham 7bf1b55001
Add a --root option to run_docker to run container as root (#1686) 2021-07-05 09:42:38 -07:00
Hood Chatham 653891b045
ENH Add Ctypes support (#1656) 2021-06-26 10:34:31 +02:00
Hood Chatham b4f4bcffdc
Update to Python 3.9.5 (#1637)
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2021-06-19 15:49:25 -07:00
Ondřej Staněk f9a68998e5
run_docker: option to run non-interactively (#1641)
Allows to execute `run_docker` in environments such as Github Actions.
Specifying the `--non-interactive` flag resolves the error "the input device
is not a TTY".

Co-authored-by: Ondrej Stanek <ondrej@ostan.cz>
2021-06-17 00:04:47 +02:00
Hood Chatham ab1b6c8d24
MAINT Use prettier to format javascript (#1554)
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2021-05-01 10:17:32 -07:00
Roman Yurchak c49dd7ad5f
Version 0.17.0 (#1515) 2021-04-21 21:51:28 +02:00
Roman Yurchak 5a2f7d027f
MAINT Update to selenium 4.0.0.b3 (#1422) 2021-04-19 13:39:22 +02:00
Roman Yurchak e8ca3e2552
MAINT Update to Firefox 87 in tests (#1209) 2021-04-19 09:06:22 +02:00
Roman Yurchak f063719e98
MAINT Use Chrome 89 in tests (#1462) 2021-04-13 23:12:39 +02:00
Hood Chatham 6fb385bc8c
BLD run_docker as the host user not as root (#1429) 2021-04-04 12:19:54 -07:00
Ondřej Staněk 2c98abfd73
run_docker: Allow to run arbitrary command in docker (#1424)
Useful for unattended builds.
2021-04-03 15:20:42 -07:00
Ondřej Staněk 52045b7802
BLD Optionally disable docker port binding (#1423)
Useful for building pyodide within a docker in a multi-user environment.
2021-04-03 11:38:28 -07:00
Roman Yurchak 7df15d175e
MAINT Set shm size to 2GB in run_docker (#1401) 2021-03-31 21:53:15 +02:00
Roman Yurchak afb522ed59
Release 0.17.0a2 (#1356) 2021-03-21 19:03:09 +01:00
Hood Chatham 9baffb6b7f
Use hypothesis to test string conversions between js and python (#1339)
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2021-03-17 10:03:42 +01:00
Dexter Chua cd198e2927
Use python:3.8.2-slim-buster Docker base image (#1095)
This doesn't come with any build dependencies by default, so this
clarifies what really is needed (and as you can see from the diff, not
much).
2021-01-10 21:14:50 +08:00