Skip to content

Commit

Permalink
Merge branch 'main' into cleanup-test-lists
Browse files Browse the repository at this point in the history
  • Loading branch information
ryanking13 authored Dec 20, 2024
2 parents 3df7499 + 50ce981 commit 368dab8
Show file tree
Hide file tree
Showing 122 changed files with 5,999 additions and 1,076 deletions.
17 changes: 8 additions & 9 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@ defaults: &defaults
# (e.g. `rg -F --hidden <old_tag>`)
- image: pyodide/pyodide-env:20241106-chrome130-firefox132
environment:
- EMSDK_NUM_CORES: 3
EMCC_CORES: 3
PYODIDE_JOBS: 3
# Make sure the ccache dir is consistent between core and package builds
# (it's not the case otherwise)
CCACHE_DIR: /root/.ccache/
# Disable the compression of wheels, so they are better compressed by the CDN
PYODIDE_ZIP_COMPRESSION_LEVEL: 0
EMSDK_NUM_CORES: 3
EMCC_CORES: 3
PYODIDE_JOBS: 3
# Make sure the ccache dir is consistent between core and package builds
# (it's not the case otherwise)
CCACHE_DIR: /root/.ccache/
# Disable the compression of wheels, so they are better compressed by the CDN
PYODIDE_ZIP_COMPRESSION_LEVEL: 0

jobs:
build-core:
Expand Down Expand Up @@ -574,7 +574,6 @@ jobs:
--access-key-env "AWS_ACCESS_KEY_ID_CACHE" --secret-key-env "AWS_SECRET_ACCESS_KEY_CACHE"
workflows:
version: 2
build-and-deploy:
jobs:
- build-core:
Expand Down
4 changes: 2 additions & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ repos:
- id: trailing-whitespace

- repo: https://github.com/astral-sh/ruff-pre-commit
rev: "v0.5.0"
rev: "v0.8.1"
hooks:
- id: ruff
args: [--fix]
Expand Down Expand Up @@ -53,7 +53,7 @@ repos:
"--ignore-words-list",
"ags,aray,asend,ba,crate,falsy,feld,inflight,lits,nd,slowy,te,oint,conveniant,atmost",
]
exclude: ^(benchmark/benchmarks/pystone_benchmarks/pystone\.py|src/js/package-lock\.json)$
exclude: ^(benchmark/benchmarks/pystone_benchmarks/pystone\.py|src/js/package-lock\.json|packages/matplotlib/extras/fontlist\.json)$

- repo: https://github.com/pre-commit/mirrors-mypy
rev: "v1.11.0"
Expand Down
4 changes: 2 additions & 2 deletions benchmark/benchmark.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@
def print_entry(name, res):
print(" - ", name)
print(" " * 4, end="")
for name, dt in res.items():
print(f"{name}: {dt:.6f} ", end="")
for res_name, dt in res.items():
print(f"{res_name}: {dt:.6f} ", end="")
print("")


Expand Down
2 changes: 1 addition & 1 deletion benchmark/benchmarks/matplotlib_benchmarks/canvas_image.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

matplotlib.use("module://matplotlib_pyodide.html5_canvas_backend")

import matplotlib.cm as cm # noqa: E402
from matplotlib import cm # noqa: E402
from matplotlib import pyplot as plt # noqa: E402


Expand Down
2 changes: 1 addition & 1 deletion benchmark/benchmarks/matplotlib_benchmarks/wasm_image.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

matplotlib.use("module://matplotlib_pyodide.wasm_backend")

import matplotlib.cm as cm # noqa: E402
from matplotlib import cm # noqa: E402
from matplotlib import pyplot as plt # noqa: E402


Expand Down
2 changes: 1 addition & 1 deletion conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ def pytest_configure(config):
it to reduce the verbosity of the test names in the table. This leaves
enough room to see the information about the test failure in the summary.
"""
global CONFIG
global CONFIG # noqa: PLW0602

old_cwd_relative_nodeid = config.cwd_relative_nodeid

Expand Down
18 changes: 9 additions & 9 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,19 +21,19 @@
copyright = "2019-2024, Pyodide contributors and Mozilla"

nitpicky = True
nitpick_ignore = []
nitpick_ignore: list[tuple[str, str]] = []


def ignore_typevars():
"""These are all intentionally broken. Disable the warnings about it."""
PY_TYPEVARS_TO_IGNORE = ["T", "T_co", "T_contra", "V_co", "KT", "VT", "VT_co"]
JS_TYPEVARS_TO_IGNORE = ["TResult", "TResult1", "TResult2", "U"]
PY_TYPEVARS_TO_IGNORE = ("T", "T_co", "T_contra", "V_co", "KT", "VT", "VT_co")
JS_TYPEVARS_TO_IGNORE = ("TResult", "TResult1", "TResult2", "U")

for typevar in PY_TYPEVARS_TO_IGNORE:
nitpick_ignore.append(("py:obj", f"_pyodide._core_docs.{typevar}"))

for typevar in JS_TYPEVARS_TO_IGNORE:
nitpick_ignore.append(("js:func", typevar))
nitpick_ignore.extend(
("py:obj", f"_pyodide._core_docs.{typevar}")
for typevar in PY_TYPEVARS_TO_IGNORE
)
nitpick_ignore.extend(("js:func", typevar) for typevar in JS_TYPEVARS_TO_IGNORE)


ignore_typevars()
Expand Down Expand Up @@ -292,7 +292,7 @@ def ensure_typedoc_on_path():
if shutil.which("typedoc"):
return
if IN_READTHEDOCS:
subprocess.run(["npm", "ci"], cwd="../src/js")
subprocess.run(["npm", "ci"], cwd="../src/js", check=True)
Path("../node_modules").symlink_to("../src/js/node_modules")
if shutil.which("typedoc"):
return
Expand Down
17 changes: 17 additions & 0 deletions docs/development/building-from-sources.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,23 @@ Pyodide can be built from sources on different platforms,

## Build instructions

The Pyodide repository has a git submodule called `pyodide-build`. Make sure to
do a recursive clone:

```bash
git clone --recursive https://github.com/pyodide/pyodide
```

or if you have already cloned the Pyodide repository without the `--recursive`
flag, you may initialize the submodule with:

```bash
git submodule update --init
```

If you change git branches, make sure you update `pyodide-build` with
`git submodule update`.

### Using Docker

We provide a Debian-based x86_64 Docker image
Expand Down
60 changes: 54 additions & 6 deletions docs/project/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,49 @@ myst:
for more information.
{pr}`5100`

- {{ Breaking }} The WASM backend is now the default backend for `matplotlib-pyodide` and
the HTML5 backend has been disabled, temporarily redirecting to it. Power users
might see minor incompatibilities and subtle differences. Please see
https://github.com/pyodide/matplotlib-pyodide/issues/64 and
https://github.com/pyodide/matplotlib-pyodide/issues/65
for more information and if you wish to contribute to the discussion.
{pr}`4510`

### Packages

- Upgraded `numpy` to 2.0.2 {pr}`4925`
- Upgraded `RobotRaconteur` to 1.2.2 {pr}`4925`
- Upgraded `gsw` to 3.6.19 {pr}`4925`
- Upgraded `opencv-python` to 4.10.0.84 {pr}`4925`
- Upgraded `yt` to 4.3.1 {pr}`4925`
- Upgraded `xgboost` to 2.1.2 {pr}`4925`
- Upgraded `autograd` to 1.7.0 {pr}`4925`
- Upgraded `sisl` to 0.15.1 {pr}`4925`
- Upgraded `cartopy` to 0.24.1 {pr}`4925`
- Upgraded `astropy` to 7.0.0 {pr}`4925`
- Upgraded `biopython` to 1.84 {pr}`4925`
- Upgraded `fastparquet` to 2024.5.0 {pr}`4925`
- Upgraded `geopandas` to 1.0.1 {pr}`4925`
- Upgraded `imageio` to 2.36.0 {pr}`4925`
- Upgraded `lightgbm` to 4.5.0 {pr}`4925`
- Upgraded `netcdf4` to 1.7.2 {pr}`4925`
- Upgraded `networkx` to 3.4.2 {pr}`4925`
- Upgraded `numcodecs` to 0.13.1 {pr}`4925`
- Upgraded `pandas` to 2.2.3 {pr}`4893`, {pr}`4925`
- Upgraded `pywavelets` to 1.7.0 {pr}`4925`
- Upgraded `shapely` to 2.0.6 {pr}`4925`
- Upgraded `threadpoolctl` to 3.5.0 {pr}`4925`
- Upgraded `unyt` to 3.0.3 {pr}`4925`
- Upgraded `xarray` to 2024.10.0 {pr}`4925`
- Upgraded `zarr` to 2.18.3 {pr}`4925`
- Upgraded `h5py` to 3.12.1 {pr}`4925`
- Upgraded `cftime` to 1.6.4.post1 {pr}`4925`
- Upgraded `clarabel` to 0.9.0 {pr}`4925`
- Upgraded `ewah_bool_utils` to 1.2.2 {pr}`4925`
- Upgraded `galpy` to 1.10.1 {pr}`4925`
- Upgraded `mne-python` to 1.8.0 {pr}`4925`
- Upgraded `pyxirr` to 0.10.6 {pr}`4925`
- Upgraded `regex` to 2024.9.11 {pr}`4925`
- Upgraded `crc32c` to 2.7.1 {pr}`5169`
- Upgraded `rebound` to 4.4.3 {pr}`5163`
- Upgraded `reboundx` to 4.3.0 {pr}`5163`
Expand All @@ -80,11 +121,11 @@ myst:
- Upgraded `scikit-learn` to 1.5.2 {pr}`4823`, {pr}`5016`, {pr}`5072`
- Upgraded `libcst` to 1.4.0 {pr}`4856`
- Upgraded `lakers` to 0.3.3 {pr}`4885`
- Upgraded `certifi` to 2024.7.4 {pr}`5035`
- Upgraded `certifi` to 2024.12.14 {pr}`5257`
- Upgraded `bokeh` to 3.6.0 {pr}`4888`, {pr}`5047`, {pr}`5118`
- Upgraded `pandas` to 2.2.2 {pr}`4893`
- Upgraded `awkward-cpp` to 43 {pr}`5214`, {pr}`5247`
- Upgraded `zengl` to 2.5.0 {pr}`4894`
- Upgraded `protobuf` to 5.27.3 {pr}`4601`
- Upgraded `protobuf` to 5.29.1 {pr}`5257`
- Upgraded `sourmash` to 4.8.11 {pr}`4980`
- Upgraded `scipy` to 1.14.1 {pr}`4719`, {pr}`5011`, {pr}`5012`, {pr}`5031`
- Upgraded `scikit-image` to 0.24.0 {pr}`5003`
Expand All @@ -97,12 +138,15 @@ myst:
- Upgraded `altair` to 5.4.1 {pr}`5124`
- Upgraded `PyYAML` to 6.0.2 {pr}`5137`
- Upgraded `duckdb` to 1.1.2 {pr}`5142`
- Upgraded `matplotlib` to 3.8.4 {pr}`4510`
- Upgraded `matplotlib-pyodide` to 0.2.3 {pr}`4510`
- Upgraded `cysignals` to 1.12.2 {pr}`5267`
- Added `soxr` 0.5.0.post1 {pr}`5150`
- Added `tiktoken` v0.8.0 in {pr}`5147`
- Added `casadi` 3.6.6 {pr}`4936`, {pr}`5057`
- Added `casadi` 3.6.7 {pr}`4936`, {pr}`5057`, {pr}`4925`
- Added `pyarrow` 17.0.0 {pr}`4950`
- Added `rasterio` 1.13.10, `affine` 2.4.0 {pr}`4983`
- Added `iminuit` 2.29.1 {pr}`4767`, {pr}`5072`
- Added `rasterio` 1.4.2, `affine` 2.4.0 {pr}`4983`, {pr}`4925`
- Added `iminuit` 2.30.1 {pr}`4767`, {pr}`5072`, {pr}`4925`
- Added `arro3-core`, `arro3-io`, and `arro3-compute` 0.3.0, 0.4.0, 0.4.1 {pr}`5020`, {pr}`5095`, {pr}`5104`
- Added `tree-sitter` 0.23.0 {pr}`5099`
- Added `tree-sitter-go` 0.23.1 {pr}`5102`
Expand All @@ -116,6 +160,10 @@ myst:
- Upgraded `tree-sitter-go` to 0.23.3 {pr}`5185`
- Upgraded `tree-sitter-java` to 0.23.4 {pr}`5185`
- Upgraded `tree-sitter-python` to 0.23.4 {pr}`5185`
- Upgraded `xarray` to 2024.11.0 {pr}`5224`
- Upgraded `lakers-python` to 0.4.1 {pr}`5225`
- Upgraded `pure-eval` to 0.2.3 {pr}`5086`, {pr}`5244`
- Upgraded `cffi` to 1.17.1 {pr}`5261`

## Version 0.26.4

Expand Down
6 changes: 3 additions & 3 deletions packages/Cartopy/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package:
name: Cartopy
version: 0.23.0
version: 0.24.1
top-level:
- cartopy
source:
url: https://files.pythonhosted.org/packages/a5/00/fed048eeb80129908f8bd5f5762e230864abc8a8fbbc493740bafcb696bd/Cartopy-0.23.0.tar.gz
sha256: 231f37b35701f2ba31d94959cca75e6da04c2eea3a7f14ce1c75ee3b0eae7676
url: https://files.pythonhosted.org/packages/e0/75/94aff4fef338887641aa780d13795609861e6e9f9593bd66d4917ab7954b/cartopy-0.24.1.tar.gz
sha256: 01c910d5634c69a7efdec46e0a17d473d2328767f001d4dc0b5c4b48e585c8bd
test:
imports:
- cartopy
Expand Down
17 changes: 12 additions & 5 deletions packages/RobotRaconteur/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,16 +1,17 @@
package:
name: RobotRaconteur
version: 1.2.0
version: 1.2.2

source:
url: https://github.com/robotraconteur/robotraconteur/releases/download/v1.2.0/RobotRaconteur-1.2.0-Source.tar.gz
sha256: "305cc0dc1f0e51181999247c14ac8b93d53aca755d9e7bccb78a5a3ef87ed86f"
url: https://github.com/robotraconteur/robotraconteur/releases/download/v1.2.2/RobotRaconteur-1.2.2-Source.tar.gz
sha256: "837710102b5ee6ad81a22e14b313b1dd09995c3da3e7846355866553b3c52715"

requirements:
run:
- numpy
host:
- boost-cpp
- openssl
- numpy

build:
Expand All @@ -22,11 +23,11 @@ build:
echo "set_property(GLOBAL PROPERTY TARGET_SUPPORTS_SHARED_LIBS FALSE)" > ForceStaticLib.cmake
emcmake cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} -DBUILD_GEN=OFF -DBUILD_TESTING=OFF -DBUILD_PYTHON3=ON \
-DCMAKE_PROJECT_INCLUDE=ForceStaticLib.cmake \
-DNUMPY_INCLUDE_DIR=$HOSTINSTALLDIR/lib/python$PYMAJOR.$PYMINOR/site-packages/numpy/core/include/ \
-DNUMPY_INCLUDE_DIR=$HOSTINSTALLDIR/lib/python$PYMAJOR.$PYMINOR/site-packages/numpy/_core/include/ \
-DPYTHON3_INCLUDE_DIR=$PYTHONINCLUDE -DPYTHON3_EXECUTABLE=python$PYMAJOR.$PYMINOR \
-DPYTHON3_LIBRARY=$HOSTINSTALLDIR/lib/python$PYMAJOR.$PYMINOR.a \
-DCMAKE_CXX_FLAGS="-fPIC -fexceptions -DBOOST_AP_DISABLE_THREADS=1 -O2 -DBOOST_BIND_GLOBAL_PLACEHOLDERS=1 -Wno-enum-constexpr-conversion" \
-DBOOST_INCLUDEDIR=$WASM_LIBRARY_DIR/include -DBOOST_LIBRARYDIR=$WASM_LIBRARY_DIR/lib \
-DBoost_INCLUDE_DIR=$WASM_LIBRARY_DIR/include -DBoost_LIBRARY_DIR=$WASM_LIBRARY_DIR/lib \
-DBoost_DATE_TIME_LIBRARY_RELEASE=$WASM_LIBRARY_DIR/lib/libboost_date_time.a \
-DBoost_DATE_TIME_LIBRARY_DEBUG=$WASM_LIBRARY_DIR/lib/libboost_date_time.a \
-DBoost_FILESYSTEM_LIBRARY_RELEASE=$WASM_LIBRARY_DIR/lib/libboost_filesystem.a \
Expand All @@ -41,6 +42,9 @@ build:
-DBoost_RANDOM_LIBRARY_DEBUG=$WASM_LIBRARY_DIR/lib/libboost_random.a \
-DBoost_PROGRAM_OPTIONS_LIBRARY_RELEASE=$WASM_LIBRARY_DIR/lib/libboost_program_options.a \
-DBoost_PROGRAM_OPTIONS_LIBRARY_DEBUG=$WASM_LIBRARY_DIR/lib/libboost_program_options.a \
-DOpenSSL_CRYPTO_LIBRARY=$WASM_LIBRARY_DIR/lib/libcrypto.a \
-DOpenSSL_INCLUDE_DIR=$WASM_LIBRARY_DIR/include \
-DOpenSSL_USE_STATIC_LIBS=ON \
-DUSE_PREGENERATED_SOURCE=ON \
.
emmake make -j ${PYODIDE_JOBS:-3}
Expand All @@ -57,3 +61,6 @@ build:
about:
home: https://github.com/robotraconteur/robotraconteur
license: Apache-2.0
extra:
recipe-maintainers:
- johnwason
6 changes: 3 additions & 3 deletions packages/astropy/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package:
name: astropy
version: 6.0.1
version: 7.0.0
top-level:
- astropy
source:
url: https://files.pythonhosted.org/packages/48/08/f205a24d75ad1f329586bb685b53574c5303c56acf80924166a6c8df8a09/astropy-6.0.1.tar.gz
sha256: 89a975de356d0608e74f1f493442fb3acbbb7a85b739e074460bb0340014b39c
url: https://files.pythonhosted.org/packages/6a/12/d6ad68d5acd751e3827d54a64333e0dd789bcc747fe9528f5758b35421f8/astropy-7.0.0.tar.gz
sha256: e92d7c9fee86eb3df8714e5dd41bbf9f163d343e1a183d95bf6bd09e4313c940
build:
# The test module is imported from the top level `__init__.py`
# so it cannot be unvendored
Expand Down
4 changes: 3 additions & 1 deletion packages/astropy/test_astropy.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,9 @@
("coordinates", "test_erfa_astrom.py"),
("coordinates", "test_frames_with_velocity.py"),
("coordinates", "test_icrs_observed_transformations.py"),
("coordinates", "test_matching.py"),
# Needs SciPy but optional dependency not declared, can be re-enabled
# later when we unvendor recipes
# ("coordinates", "test_matching.py"),
("coordinates", "test_representation.py and not test_unitphysics"),
("coordinates", "test_sky_coord.py"),
("coordinates", "test_sky_coord_velocities.py"),
Expand Down
6 changes: 3 additions & 3 deletions packages/autograd/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package:
name: autograd
version: 1.6.2
version: 1.7.0
top-level:
- autograd
source:
sha256: 8731e08a0c4e389d8695a40072ada4512641c113b6cace8f4cfbe8eb7e9aedeb
url: https://files.pythonhosted.org/packages/42/03/9d00fbea21fd702970f157a6b79caa1a947b08c1c518296fe94cb7d549f0/autograd-1.6.2.tar.gz
sha256: de743fd368d6df523cd37305dcd171861a9752a144493677d2c9f5a56983ff2f
url: https://files.pythonhosted.org/packages/28/ed/67975d75c0fe71220c8df2370c6c1390805790a641359b502f39c042c0c1/autograd-1.7.0.tar.gz
requirements:
host:
- numpy
Expand Down
6 changes: 3 additions & 3 deletions packages/awkward-cpp/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package:
name: awkward-cpp
version: "39"
version: "43"
top-level:
- awkward_cpp

source:
url: https://files.pythonhosted.org/packages/6e/57/972e2a808c197d9331a129d0e749b3d6d5c39b5d175a047dbf6254a9b1a5/awkward_cpp-39.tar.gz
sha256: 61da001199ea2094484e28ca074591d2ec660f117e9a97ab89e60da405272385
url: https://files.pythonhosted.org/packages/c4/6b/b1ddc01206296322544247dfef8e1958292154b785a6d545bb12fb703d51/awkward_cpp-43.tar.gz
sha256: c1ed75596ec82af666da084b5bf805d9b72c83532d035d2b65e0795905d25ead

build:
exports: requested
Expand Down
8 changes: 3 additions & 5 deletions packages/biopython/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,14 +1,12 @@
package:
name: biopython
version: "1.83"
version: "1.84"
top-level:
- Bio
- BioSQL
source:
sha256: 78e6bfb78de63034037afd35fe77cb6e0a9e5b62706becf78a7d922b16ed83f7
url: https://files.pythonhosted.org/packages/cc/d4/3d8848191a7a37187704c382e6dfda4d6a47d05a14cd64f004c55a3cd5a1/biopython-1.83.tar.gz
patches:
- "patches/0001-Remove-error-message-if-wheel-is-not-installed.patch"
sha256: 60fbe6f996e8a6866a42698c17e552127d99a9aab3259d6249fbaabd0e0cc7b4
url: https://files.pythonhosted.org/packages/9e/7f/eaca4de03f0ee06c9d578d2730fd55858a57cee3620c62d3bc17b5da5447/biopython-1.84.tar.gz
requirements:
run:
- numpy
Expand Down
Loading

0 comments on commit 368dab8

Please sign in to comment.