Commit Graph

18 Commits

Author SHA1 Message Date
Christian Clauss 57f36ac6f8
Ruff is now compatible with Python pattern matching (#3650) 2023-03-13 22:45:06 +01:00
Hood Chatham e7bbb2010b
Run mkpkg update-all again (#3365)
Packages that are *not* up to date:
* gdal
* matplotlib
* packaging
* Pillow
* pillow_heif
* rebound
* reboundx
* shapely
* xgboost
* yt
* zarr
2022-12-18 15:18:50 -08:00
Gyeongjae Choi 555f7828f4
Parse top-level import name from wheel file (#3006) 2022-09-06 15:20:04 +09:00
Roman Yurchak c85e00806b
MAINT Switch to pytest-pyodide (#2893)
Co-authored-by: ryanking13 <def6488@gmail.com>
2022-07-31 19:00:45 +09:00
Hood Chatham b905fcb172
Move numcodecs build environment vars into meta.yaml file (#2833) 2022-07-03 06:41:32 -07:00
Hood Chatham 36dee13657
MAINT run_in_pyodide function should take selenium fixture as an explicit argument (#2617)
This updates run_in_pyodide to assume that the first argument of the function will be a selenium fixture.
2022-05-25 19:47:43 -07:00
Hood Chatham 1eab80ea40
MAINT Add pytest.mark.xfail_browsers and use it to reduce boilerplate (#2616)
Use a decorator to indicate which browsers we want to xfail test. 
This works for `run_in_pyodide` as well as normal tests.
2022-05-25 13:34:40 -07:00
Hood Chatham 8ed430d300
Allow using other decorators with `@run_in_pyodide` (#2541)
Allow using `pytest.mark.xfail`, `pytest.mark.parametrize`, hypothesis,
and other decorators in `run_in_pyodide` tests
2022-05-25 10:31:26 -07:00
Hood Chatham e732cb9dd7
meta.yaml keys for cross-build environment (#2536)
This moves unisolation into a package key. `cross-build-env: true` means the package
is part of the cross build environment and should be unisolated. `cross-build-files`
gives a list of files that should be copied from the built copy of the package into the host
copy of the package.

This will allow us to construct a cross build environment automatically as part of building
packages. If we have these files and the Python include directory, this is sufficient for 
cross-building binary packages.
2022-05-11 20:31:16 -07:00
Gyeongjae Choi b20b43bd66
MAINT Split conftest.py into modules (#2418) 2022-05-08 16:52:08 +09:00
Hood Chatham eabfa8101e
Use pypa/build (#2272)
This resolves #2189.

> build isolation would be a bit difficult to use in our case, as for instance
> when building scipy we need the patched numpy on the host and not the numpy
> version specified in pyproject.toml (which would be unpatched)

This is indeed the case, certain packages cannot be isolated. My strategy is to
make a list of packages that shouldn't be isolated and add symlinks from the
isolated build environment into the `.artifacts` directory to "unisolate" them.
Then we remove the unisolated package requirements from the list of packages to
install, in case pesky constraints aren't satisfied. In particular, packages
that expect to be used with `pypa/build` often feel free to put very specific
constraints on their build dependencies (often asking them to be == to a
particular version). Specific version constraints is good for build
reproducibility and with build isolation doesn't cost anything. So we just
ignore the constraints. Hopefully nothing goes wrong.

In particular, any package that does stuff both at build time and at runtime and
requires synchronization between the build time and run time environments needs
the unisolation. This includes cffi with `_cffi_backend.so`, and of course numpy
and scipy. pycparser needs to be unisolated because it is a dependency of cffi.

Currently I have also unisolated pythran and cython, though these are build time
only tools and do not really need to be unisolated. Cython I unisolated
specifically because numcodecs needs it but it isn't in the numcodecs build
dependencies. Pythran I unisolated because of a problem with the scipy build
which I don't fully understand (some problem with long double feature
detection).
2022-03-21 22:05:30 -07:00
Henry Schreiner 66856a7427
MAINT isort (#2200) 2022-02-21 23:27:03 +01:00
Gyeongjae Choi 950c1dcbd2
CI Update to newer docker image (#2160) 2022-02-10 09:36:18 +01:00
Hood Chatham 79c6688535
Run pyodide-build update-all (#2085) 2022-01-10 11:54:11 -08:00
Hood Chatham 4c36ad548f
Ran make -C packages update-all (#1704) 2021-07-18 15:04:28 -07:00
Hood Chatham 65bae96004
MAINT xfail remaining Chrome 89 fatal errors (#1494) 2021-04-19 19:52:59 -07:00
Dexter Chua 170c52d6ea
TST Convert some package tests to use new test system (#1132) 2021-01-13 12:07:50 +01:00
Wei Ouyang 96159d4e60
Add zarr and numcodecs (#938) 2020-12-24 18:15:35 +01:00