Commit Graph

317 Commits

Author SHA1 Message Date
Hood Chatham df527fdad5
Emscripten 3.1.45 (#4094) 2023-08-29 13:37:31 +02:00
Hood Chatham 15adde3afb Revert "Version 0.24.0a1"
This reverts commit 77dbe16a5e.
2023-08-28 14:16:09 +02:00
Hood Chatham 77dbe16a5e Version 0.24.0a1 2023-08-28 12:35:58 +02:00
Martoxa b7f86248fa
Add function to check for WASM magic number (#4018)
This adds `check_wasm_magic_number` to`pyodide_build` which checks whether a file starts 
with the wasm magic number `b"\0asm"`.
2023-07-26 22:53:08 -07:00
Hood Chatham ec05ccd762
Cap cython<3 (#4001)
I added tools/constraints.txt and set it into the PIP_CONSTRAINT environment variable.
2023-07-18 23:47:05 -07:00
Hood Chatham 7814fd6788 chore: Sort BUILD_VARS 2023-07-18 22:22:37 -07:00
Juniper Tyree 0980b51677
Implement PEP 658: .whl.metadata files (#3981) 2023-07-17 21:17:24 +09:00
Hood Chatham fcb467d5f7
ENH Add environment variable to control 'exports' cli argument (#3973) 2023-07-06 19:52:45 -07:00
Tim Paine 72a1c0412f
FIX Version cap pydantic<2 (#3971) 2023-06-30 19:54:16 -07:00
Gyeongjae Choi b79b8913b9
Enable freesasa, lightgbm, opencv-python, and wordcloud (#3970) 2023-06-30 14:44:51 -07:00
Roman Yurchak 17be4f1347
Use pyodide-lock for pyodide-lock.json parsing in Python (#3949)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2023-06-29 16:45:06 +00:00
Gyeongjae Choi 1eaa80da9b
FIX set PYODIDE_ROOT when using Makefile out-of-tree (#3959) 2023-06-29 11:37:03 +00:00
Gyeongjae Choi 8cd338b629
MAINT Relocate build environment management related methods (#3934)
Relocates methods that are related to the build environment management (common.py ==> build_env.py)
2023-06-26 21:20:12 +09:00
Roman Yurchak b4a4249278
MAINT pyodide-build: move setup.cfg to pyproject.toml (#3947) 2023-06-23 21:33:58 +02:00
Hood Chatham 5fe0d2e302
Change the name of repodata.json to pyodide-lock.json (#3824) 2023-06-18 22:57:43 -07:00
Hood Chatham 9d8ed8e3b8
pytest-pyodide 0.52.2 (#3939) 2023-06-18 20:23:06 -07:00
Hood Chatham 9012711ba0
Run replace_so_abi_tags on out of tree builds (#3927) 2023-06-17 13:39:33 -07:00
Gyeongjae Choi 1691d347d1
Don't set PYODIDE_ROOT inside xbuildenv installation function (#3922)
This is some cleanup after #3883.

- Make the `PYODIDE_ROOT` be modified only inside the `init_environment` function.
- Removes `__LOADED_PYODIDE_ENV`. I think it is redundant as we use `PYODIDE_ROOT` for a similar purpose.
2023-06-15 17:30:52 +09:00
Hood Chatham 3bf1075997
Use pytest-pyodide 0.52.1 (#3920) 2023-06-11 15:03:50 +09:00
Hood Chatham ffa2dd7036
NFC Factor out common setup for rust packages (#3908) 2023-06-07 08:45:26 -07:00
Hood Chatham 09f903e8ab
NFC Update pre-commit rules to cover pyodide-build (#3911) 2023-06-06 14:21:03 -07:00
Gyeongjae Choi 73c497bfbe
Remove in-tree dependency when building unvendored python modules (#3864) 2023-06-05 19:48:48 +09:00
Gyeongjae Choi 4a7cc0c20e
Merge initialization functions for in-tree and out-of-tree builds (#3883) 2023-06-05 17:34:07 +09:00
Hood Chatham d823e91e4b
Update pytest-pyodide to 0.52 (#3859) 2023-06-02 09:01:39 -07:00
Gyeongjae Choi a62a319ab7
Append extra commandline args after original args (#3866)
Switches the order of command line args so that pywasmcross appends additional arguments
after the original arguments.
Resolves: #3839
2023-05-17 20:57:40 -07:00
Kai Tietz 63b4af4da9
Support Fortran-file preprocessing on case-insensitive file-system (#3845)
On case-insensitive file-systems - eg like MacOS standard Extended file-system (not APFS),
FAT, etc - it is problematic if for files with .F extension the output is written as file with .f
extension, as both actually are referring to the same file.
After the operation of f2c, the original file is restored to its original name.
2023-05-16 09:21:50 -07:00
Kai Tietz a98c10916c
Use gfortran instead of gcc for preprocessing in replay_f2c (#3837)
Co-authored-by: Gyeongjae Choi <def6488@gmail.com>
2023-05-09 12:50:38 +02:00
Hood Chatham 78084ef07c
Fix llvm-readobj when emscipten is installed with emsdk out of tree (#3840) 2023-05-08 17:34:00 -07:00
Gyeongjae Choi fafcde1ff3
Show a list of disabled packages when building recipes (#3838) 2023-05-09 09:09:41 +09:00
Hood Chatham 5138d0b472
NFC Add missing else clause (#3834)
We don't need to get PYWASMCROSS_ARGS from both environment and from
disk, it was supposed to be either/or.
2023-05-06 15:26:47 -07:00
Hood Chatham 3a231a7822
NFC Fix llvm-readobj path hack (#3833)
By linking llvm-readobj into an emscripten directory which is on the path
2023-05-06 13:49:06 -07:00
Gyeongjae Choi 19886f8bd6
Make build variables accessible only through the API (#3765)
This PR makes build variables only accessible through the API, instead of polluting os.environ.

I also changed the API as below, as a preparation to move away from makefiles.

- `get_make_environment_vars` => `get_build_environment_vars`
- `get_make_flag` => `get_build_flag`
2023-05-06 17:17:22 +09:00
Hood Chatham cd8af3f9c3
Minor tweaks to pyodide-build (#3807) 2023-05-02 10:31:10 +09:00
Henry Schreiner 1ee991550e
fix: drop some no-longer-needed bits from pydodide build (#3814)
A few things here aren't needed:

* `"wheel"` is injected via a PEP 517 hook when building wheels for all versions of setuptools that support PEP 517.
* `LICENSE` is already included, no need for a MANIFEST.in. You can compare SDist and Git via `pipx run check-sdist`.
* Recent-ish versions of Pip and Setuptools now support editable installs without setup.py
2023-05-01 14:39:09 -07:00
Hood Chatham 36d4efb1e1
Change --output-directory to --outdir (#3811) 2023-05-01 13:07:07 -07:00
Gyeongjae Choi 4777f59200
Don't remove build logs after build failure (#3804)
Fixes #3770. The reason why no logs are being printed when a build fails was quite interesting:

1. There is code that deletes a build log when a build fails (This PR removes it).
2. That code was not working before #3746, since we changed the working directory into srcpath.
3. After #3746, that code started to "work", so the build log gets deleted when a build fails.

I think we definitely don't want to delete the build log. So this PR removes it.
2023-04-30 09:03:33 -07:00
Hood Chatham 4f392d22a8
Fix out of tree pip (#3767) 2023-04-13 22:50:49 -07:00
Hood Chatham f2b2a17d2f
Make executables installed in Pyodide venv run in Pyodide not in host (#3752)
pip can't run inside of Pyodide because it needs to do stuff like make requests
that don't work inside the virtual environment. So the virtual environment bin
folder contains a python-host executable which is a symlink to the
sys.executable that created the virtual environment. The shebang for pip uses
python-host. But then when pip installs an executable it uses sys.executable to
create the shebang for the installed executable. If that is python-host then the
installed executable will run outside of Pyodide. So we need to patch
`sys.executable` to point to the Pyodide Python.
2023-04-12 17:47:20 +02:00
Hood Chatham b1405ffede
Pass the source and build directory explicitly, don't use chdir (#3746)
This switches to passing the source and build directories as arguments.
It adds an output-directory argument to pyodide build allowing us to
indicate where the output wheel should go independent of the build
directory. I also did some cleanup of the logic added in #3310
2023-04-12 17:43:57 +02:00
Loïc Estève 7193109f4d
Package OpenBLAS and use OpenBLAS in scipy (#3331) 2023-04-11 21:30:07 -07:00
Gyeongjae Choi 862163ece3
Add python_stdlib.zip to xbuildenv (#3760)
Resolves #3730
2023-04-12 06:14:18 +02:00
Gyeongjae Choi 6213477940
Make sure PYODIDE_ROOT points to absolute path in out-of-tree build (#3751) 2023-04-11 13:05:11 +09:00
Hood Chatham d5d2396f6a
Fix set_build_environment so that it works even if HOME is unset (#3744)
I'm running into a crash in cibuildwheel where some of its CI environments don't set HOME. This fixes set_build_environment to be a bit more resistant against crashes due to missing environment variables.
2023-04-08 19:34:10 +02:00
Gyeongjae Choi 5a8ecf130a
Add `xbuildenv create` CLI command and remove old entrypoints (#3732)
Add a private pyodide xbuildenv create CLI commad that replaces pyodide-build create_xbuildenv. Also removes legacy entrypoints: `pyodide-build {create,install}_xbuildenv.
2023-04-07 20:54:11 +09:00
Roman Yurchak 8be4402e4f
Fix passing compression-level in `pyodide py-compile` CLI (#3727)
The compression-level wasn't passed through in the internal functions when the target is a single archive.
2023-04-03 16:08:26 +09:00
Roman Yurchak 3446d2e0a1
Bump main to 0.24.0.dev0 (#3721) 2023-03-31 09:29:32 +02:00
Roman Yurchak 53de1c3e72
Version 0.23.0 (#3712) 2023-03-30 23:30:18 +02:00
Roman Yurchak 7f4f66b34b
Deploy py-compiled build (#3701)
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
2023-03-29 22:54:46 +02:00
Roman Yurchak 8058cb6703
Support for py-compiling folders + repodata.json update (#3700)
Co-authored-by: Gyeongjae Choi <def6488@gmail.com>
2023-03-28 11:28:28 +00:00
Hood Chatham edddf21c7b
MAINT Improvements to mkpkg error handling (#3684)
Removes tracebacks from "user errors" and improves error messages.
2023-03-27 09:55:51 +09:00