Commit Graph

267 Commits

Author SHA1 Message Date
Gyeongjae Choi b801885353
Out-of-tree recipe build support (#3544)
Add out-of-tree support for `pyodide build-recipes` command.
This mostly reuses xbuildenv we use for the out-of-tree build.
2023-03-23 14:01:27 +09:00
Roman Yurchak 601d939fdd
Fix wheel compression with the JsDelivr CDN (#3667)
Set the MIME type for wheels and zip files to application/wasm to enable CDN compression. Also optionally disable compression in zip files and wheels to make the brotli compression by the CDN more efficient.

Co-authored-by: Gyeongjae Choi <def6488@gmail.com>
2023-03-21 09:11:47 +01:00
Roman Yurchak 59b2c4e1ef
Remove deprecated pyodide-build buildall and mkpkg CLI endpoints (#3668) 2023-03-20 08:43:04 +01:00
Gyeongjae Choi 802a9cd26b
Handle response files in pywasmcross (#3645)
Co-authored-by: josephrocca <1167575+josephrocca@users.noreply.github.com>
2023-03-17 09:00:51 +09:00
Loïc Estève 4028757968
Fix arpack *eupd issues due to numpy 1.24 f2py changes (#3658) 2023-03-17 08:59:16 +09:00
Christian Clauss 57f36ac6f8
Ruff is now compatible with Python pattern matching (#3650) 2023-03-13 22:45:06 +01:00
Gyeongjae Choi a9182030cd
Merge pyodide_py into python_stdlib.zip (#3621)
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
2023-03-04 11:05:12 +01:00
Joe Marshall 0fdf9a80fa
Add Fastparquet (#3590) 2023-03-02 14:46:58 +09:00
Gyeongjae Choi 61f3d35eca
Pin types-setuptools version (#3613) 2023-02-28 10:46:00 +01:00
Gyeongjae Choi c99584d4b8
FIX Change rust packages not to build concurrently (#3607)
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
2023-02-27 14:55:03 +09:00
Christian Clauss 01c00d70b4
PEP621: Move pytest configuration into pyproject.toml (#3609)
* PEP621: Move pytest configuration into pyproject.toml

Migrate `setup.cfg` to `pyproject.toml` using [ini2toml](https://pypi.org/project/ini2toml) to do the file conversion and running [validate-pyproject](https://github.com/abravalheri/validate-pyproject) in pre-commit to validate the results.

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2023-02-27 08:33:53 +09:00
Gyeongjae Choi 1138a4af2d
Add url parameter to install_xbuildenv (#3592) 2023-02-22 11:56:35 +09:00
Gyeongjae Choi 0d5bd851fe
Use loky.cpu_count() instead of os.cpu_count() (#3598) 2023-02-22 07:53:19 +09:00
Gyeongjae Choi 994ce5111f
BLD Add DISTDIR variable (#3584) 2023-02-17 08:25:42 +09:00
Gyeongjae Choi 5ad2dcf76f
Improve the error message when a meta.yaml file is not found (#3568) 2023-02-14 08:49:52 +09:00
Gyeongjae Choi 0b378d6727
Remove globally pinned build requirements (#3577) 2023-02-13 09:55:41 -08:00
Nicholas Bollweg e835bf05ff
add license file and metadata to pyodide-build (#3574) 2023-02-11 13:29:01 -08:00
Gyeongjae Choi 2fb9440e91
BLD Remove _pywasmcross entrypoint (#3566) 2023-02-11 00:04:25 -08:00
Gyeongjae Choi b6fc9e7b1d
Add --no-user flag when installing packages in xbuildenv (#3562) 2023-02-10 09:17:53 +09:00
Gyeongjae Choi 68e42b1867
ENH Autodetect the number of cores when invoking `pyodide build-recipes` (#3559)
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
2023-02-10 08:56:42 +09:00
Roman Yurchak 48258ff146
Replace isort, flake8, pycln and pyupgrade by ruff (#3522)
Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
2023-02-07 08:35:20 +09:00
Joe Marshall ba3a8d7eb8
Reproducible package builds (and requirements.txt support) (#3469)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2023-02-04 14:55:09 +01:00
Gyeongjae Choi f943739e8f
ENH Add --no-deps parameter to build-recipes CLI (#3520)
This adds `--no-deps` parameter to `pyodide build-recipes` CLI, which is a replacement for `pyodide_build buildpkg` entrypoint.

Ref: https://github.com/pyodide/pyodide/issues/2879
2023-02-03 21:31:46 -08:00
Gyeongjae Choi 01e0c92380
Add package_type field to repodata.json (#3528)
This PR adds `package_type` field to repodata.json and use it to create a list of
unvendored standard libraries. After this we don't need to manage a hard-coded
list of unvendored stdlib lists in pyodide-py.
2023-02-03 21:26:23 -08:00
Gyeongjae Choi dcdc1e6941
Unvendor pydoc_data and _pydecimal (#3525)
Removes / unvendors some python modules:

- Remove `_aix_support.py`, which is for supporting IBM AIX OS.

- Unvendor `_pydecimal.py`.
  - _pydecimal is a pure Python implementation of `decimal` module. [Importing `decimal` fallbacks](https://github.com/python/cpython/blob/main/Lib/decimal.py) to `_pydecimal` if the C-implementation `_decimal` is not available. In our case, _decimal is available, so _pydecimal will not be normally used. 

- Unvendor `pydoc_data`.
  - pydoc_data contains [a large (~700KB) dictionary](https://github.com/python/cpython/blob/main/Lib/pydoc_data/topics.py) for explaining python builtins. This is mostly used when `help("...")` is called.
2023-02-01 11:00:17 +09:00
Gyeongjae Choi 570e69ad4f
Add BuildArgs class to store common build arguments (#3514) 2023-01-30 13:35:18 +09:00
Gyeongjae Choi f50c749c9a
Apply upstream cpython commits to relocate test directories (#3507) 2023-01-30 13:34:33 +09:00
Hood Chatham cca5e9f87f
Add pynacl (#3500)
Resolves https://github.com/pyodide/pyodide/issues/3327
2023-01-27 16:36:46 -08:00
Gyeongjae Choi 328a9ffc34
Add tag key in meta.yaml spec (#3444)
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
2023-01-27 13:31:26 +09:00
Hood Chatham 036f9cb545 Revert "0.23.0a1"
This reverts commit 2eaee0673d.
2023-01-24 07:30:10 -08:00
Hood Chatham 2eaee0673d 0.23.0a1 2023-01-23 21:45:09 -08:00
Hood Chatham 3b2952fc92
Python3.11 (#3252) 2023-01-23 19:45:59 -08:00
Hood Chatham 3f845c87a1
Pass same environment variables to out of tree builds as in tree ones (#3495)
Resolves https://github.com/pyodide/pyodide/issues/3493
2023-01-23 17:09:31 -08:00
Hood Chatham 485e806383
Make sure pyodide config doesn't output anything extra (#3483)
Resolves https://github.com/pyodide/pyodide/issues/3430
2023-01-22 08:24:58 -08:00
Hood Chatham af4158da77
Don't check emscripten version when creating pyodide venv (#3485)
Resolves https://github.com/pyodide/pyodide/issues/3472
2023-01-22 08:21:03 -08:00
Gyeongjae Choi 8d7137f112
Fix incorrect error messages in ModuleNotFoundError (#3435)
Close https://github.com/pyodide/pyodide/issues/3423
2023-01-22 09:20:19 +01:00
Gyeongjae Choi 5523b1397f
Implement pycompile option in pyodide create-zipfile CLI (#3463) 2023-01-18 10:00:18 +01:00
Gyeongjae Choi fa8289eb11
MAINT Relocate functions in pywasmcross (#3464) 2023-01-17 13:31:45 +09:00
Gyeongjae Choi eb7b80bb3e
Replace print statements with rich in pyodide-build (#3442) 2023-01-16 13:46:38 +09:00
Gyeongjae Choi 0483a6bbf0
Remove a duplicated test in test_cli (#3454) 2023-01-16 13:19:06 +09:00
Gyeongjae Choi ae4492a1fd
Add a CLI command to create a zipfile of Python libraries (#3411)
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2023-01-14 14:59:42 +01:00
Gyeongjae Choi 094a6dafcf
FIX Append --fresh flag to let cmake ignore existing cache (#3445)
Resolve https://github.com/pyodide/pyodide/issues/3425
2023-01-13 18:41:29 +01: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
josephrocca fd49100981
Ignore --exclude-libs link flag (#3434) 2023-01-09 08:21:37 +09:00
Joe Marshall 76581a7d28
Get deps from pypi during build (#3310) 2023-01-05 08:45:20 +09:00
Roman Yurchak e8f8324eb2
Add CLI command to py-compile wheels (#3253)
Co-authored-by: Gyeongjae Choi <def6488@gmail.com>
2023-01-04 17:07:07 +02:00
Gyeongjae Choi 8e965e57d4
0.22.0 (#3389)
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2023-01-03 20:34:25 +09:00
Loïc Estève 84496124d2
Fix scipy build with gfortran >= 10 (#3401) 2023-01-03 11:20:26 +09:00
Gyeongjae Choi 03161e530c
Fix broken pyodide cli tests (#3390) 2022-12-29 18:37:16 +09:00
Gyeongjae Choi c3647f7e5d
Pin range of auditwheel-emscripten version (#3388)
So we can fix bugs in auditwheel-emscripten without releasing a new version
of pyodide-build
2022-12-26 20:02:18 -08:00