close
Skip to content

Tags: pyodide/pyodide-build

Tags

0.36.0

Toggle 0.36.0's commit message

Verified

This tag was signed with the committer’s verified signature.
Image agriyakhetarpal Agriya Khetarpal
pyodide-build version 0.36.0 - released on 2026/06/30

Fixed

- Fixed several bugs in the cross-build-environment (xbuildenv) lifecycle
  [#378](#378):
  - A Python-version marker mismatch on an already-installed xbuildenv will now
    refresh the host packages.
  - Installing via `DEFAULT_CROSS_BUILD_ENV_URL` is now treated like an explicit
    `--url` install, so it no longer bakes a mangled, URL-derived version into the
    generated package index.
  - `pyodide xbuildenv use` no longer raises `FileExistsError` when the `xbuildenv`
    symlink is dangling (its target was removed); the stale symlink is now
    cleaned up first.
  - A failure during a later installation step no longer deletes a pre-existing,
    valid cached xbuildenv.

- Fixed a hang when a recipe `build/script` or `build/post` ends by exiting the
  shell itself (e.g. `exit 0`). The build no longer blocks forever waiting for an
  environment dump that never runs; the previous environment is kept instead.
  [#383](#383)

- Fixed per-package build variables (`PKGDIR`, `PKG_VERSION`, `DISTDIR`, ...)
  leaking into the cached build-environment dict, which caused later packages in
  a sequential `build-recipes` run to see the previous package's values.
  [#383](#383)

- Fixed `find_matching_wheel` raising `RuntimeError("Found multiple matching
  wheels")` for a single file.
  [#381](#381)

- Fixed `pyodide clean recipes` incorrectly cleaning packages tagged `always`.
  [#381](#381)

- Fixed a bug where boolean and non-string values in pyproject.toml crashes pyodide CLI
  when loading config values
  [#381](#381)

- Sanitize `Content-Disposition: filename=...` header values to prevent path traversal.
  [#382](#382)

- Fixed build constraints not being applied when using `uv` as the installer by
  setting `UV_BUILD_CONSTRAINT` alongside `PIP_CONSTRAINT` and `PIP_BUILD_CONSTRAINT`.
  [#389](#389)

- Fixed a dead-code control flow in `pyodide skeleton pypi` where a package
  whose new release ships only wheels (while the recipe used an sdist) would
  raise an exception rather than updating to the wheel.
  [#384](#384)

- `skeleton`: fixed incorrect predictable URLs sdists for `.zip`-style sdists
  and packages with non-normalised names (such as `ruamel.yaml`).
  [#384](#384)

- Fixed three bugs in `pyodide venv`: `pyodide venv --no-download` / `--never-download`
  being silently ignored, versioned pip scripts (e.g., `pip3.12`) being renamed
  to `pip3`, and a failed `pyodide venv` invocation deleting a pre-existing
  destination directory.
  [#377](#377)

Changed

- Fixed build-time scripts of unisolated packages (like `f2py` and
  `numpy-config` from NumPy) not being available on `PATH` during builds.
  [#21](#21)

- `oldest-supported-numpy` is now explicitly rejected when encountered as a
  build-time dependency. It is deprecated since NumPy 2.0, and packages that
  still list it should migrate to a direct `numpy` dependency.
  [#392](#392)

0.35.1

Toggle 0.35.1's commit message

Verified

This tag was signed with the committer’s verified signature.
Image agriyakhetarpal Agriya Khetarpal
pyodide-build version 0.35.1

Includes the following changes:

- Fixed an include path issue on macOS when homebrew Python is installed:
  if `sys.prefix` contains a symlink (as is the case with homebrew), resolve it
  so that host include paths are still replaced by the cross-compile ones
  [#375](#375)

0.35.0

Toggle 0.35.0's commit message

Verified

This tag was signed with the committer’s verified signature.
Image agriyakhetarpal Agriya Khetarpal
pyodide-build version 0.35.0 released on 2026/06/09

Added:

- `CrossBuildEnvReleaseSpec` now has a `published_at` field containing the UTC timestamp
  when the release was published on GitHub (ISO 8601 format). This is exposed in
  `pyodide xbuildenv search --all` and `pyodide xbuildenv search --all --json`.
  [#349](#349)

- `pyodide xbuildenv search` and `pyodide xbuildenv install` now support `--nightly`
  and `--debug` flags to search and install stable-debug, nightly, and nightly-debug
  cross-build environments respectively.
  [#350](#350), [#354](#371)

- `pyodide build` now accepts `-v`/`--verbose` flags (stackable twice up to `-vv`)
  to increase build verbosity. At `-v`, installer commands and
  backend hook invocations are shown. At `-vv`, the package installers (`uv`/`pip`)
  additionally receive a `-v` flag for detailed package resolution output.
  [#363](#363)

0.34.4

Toggle 0.34.4's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Print inner subprocess error when installing build requirements fail (#…

…346)

* Print subprocess error when installing build requirements fail

* changelog

0.34.3

Toggle 0.34.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix: loosen build requirement (#345)

0.34.2

Toggle 0.34.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Pin build 1.4.3 (#342)

Workaround for pypa/build#1040 installing over our
cross numpy and scipy.

0.34.1

Toggle 0.34.1's commit message

Verified

This tag was signed with the committer’s verified signature.
Image agriyakhetarpal Agriya Khetarpal
pyodide-build version 0.34.1

0.34.0

Toggle 0.34.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Make install-emscripten command idempotent (#320)

* Make install-emscripten command idempotent

* Fresh clone

* Update CHANGELOG.md

0.33.0

Toggle 0.33.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Auto install and activate emscripten (#293)

* Auto install emscripten when it is not in the system

* Remove unnecessary env variables from the config

* Cleanup unused function

* Fix unittest

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* changelog

* Fix test

* Only update variables that are changes by emsdk

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

0.32.1

Toggle 0.32.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Fix pip wrapper script Python 3.14-compatible (#295)

* Fix path calculation in Python3.14

* Fix path calculation

* use os.path instead of pathlib

* Fix readlink

* Handle unlink failure

* More error handling

* Update ci for venv test

* Fix quote

* Fix pip.conf

* Update changelog

* Update changelog