Skip to content

Releases: pyodide/pyodide-build

0.30.5

04 Jun 17:53
0.30.5
919e6a2
Compare
Choose a tag to compare

What's Changed

  • Fixed a regression in quoting of pip arguments introduced in
    #185.
    #209

v0.30.4

20 May 10:03
0.30.4
4ece0b3
Compare
Choose a tag to compare

version 0.30.4 - 2025/05/20

  • Fixed compatibility with virtualenv 20.31 and later. The Pyodide virtual environment via pyodide venv no longer seeds
    wheel, i.e., the --wheel/--no-wheel options are not available anymore.
    #208

  • The default cross-build metadata URL was changed to https://pyodide.github.io/pyodide/api/pyodide-cross-build-environments.json in order to circumvent rate limits imposed by GitHub. It remains overridable by setting the PYODIDE_CROSS_BUILD_ENV_METADATA_URL environment variable.
    #206

Full range of commits: 0.30.3...0.30.4

v0.30.3

17 May 15:21
0.30.3
5e8124d
Compare
Choose a tag to compare
  • Added interpreter and package_index to the variables available via pyodide config get.
    #199

v0.30.2

05 May 14:28
v0.30.2
c24a9f3
Compare
Choose a tag to compare

Fixed

  • Fixed a regression in pyodide venv installation of shell entrypoints introduced in
    #185
    #197

v0.30.1

25 Apr 18:56
v0.30.1
e8ad627
Compare
Choose a tag to compare

[0.30.1] - 2025/04/25

Added

  • pyodide config exposes new variables: pyodide_root, pyodide_abi_version, and python_include_dir,
    and ignored_build_requirements.
    #186 and #187

Fixed

  • pyodide venv now works in uv-managed environments.
    See issue #143.
    #185

v0.30.0

08 Apr 13:28
v0.30.0
a4b038c
Compare
Choose a tag to compare

version 0.30.0 - 2025/04/08

We are excited to announce the release of pyodide-build v0.30.0.

Full CHANGELOG: pyodide/pyodide-build@a4b038c/CHANGELOG.md

Added

  • Added basic support for uv. uv tool install pyodide-cli --with pyodide-build, or
    uvx --from pyodide-cli --with pyodide-build pyodide --help, or using pyodide-build
    in uv-managed virtual environments will now work.
    #132

  • pyodide build now takes an additional --xbuildenv-path argument and corresponding
    equivalent PYODIDE_XBUILDENV_PATH environment variable to either use an existing
    cross-build environment or create one at the specified path. This means that users
    can use pyodide xbuildenv install <...> --path to install a cross-build environment
    somewhere and reuse this with pyodide build.
    #158

  • Added a new config variable xbuildenv_path that can be left in the [tool.pyodide.build]
    section in pyproject.toml and retrieved through pyodide config get xbuildenv_path.
    The pyodide xbuildenv and pyodide build commands will setup/use cross-build environments
    at this path if one isn't specified as a CLI argument or unless overridden through the
    PYODIDE_XBUILDENV_PATH environment variable.
    #158

  • Added support for building without a wheel without build isolation: pyodide build now accepts
    the --no-isolation/-n and/or --skip-dependency-check/-x flags to customise the wheel
    building behaviour, similar to pypa/build.
    #152

Changed

  • The Rust toolchain version has been updated to nightly-2025-01-18.
    #103

  • Pyodide cross-build environments will now be installed in the user cache directory by default,
    which is <home>/.cache or XDG cache in Linux systems, and /Users/<user>/Library/Caches in macOS.
    #148

  • Removed cmake dependency from the package.
    The Pyodide build system now uses the cmake package specified in the pyproject.toml file
    of the target package.
    #141

PRs that made it to this release

Full Changelog: v0.29.3...v0.30.0

v0.29.3

04 Feb 09:42
b8bd8d8
Compare
Choose a tag to compare

version 0.29.3 – 2025/02/04

Added

  • Added new configuration variable default_cross_build_env_url. #85
  • Added a new recipe key requirement.constraint to set the package-level constraints. #97

What's Changed

  • Build numpy from src in integration test by @ryanking13 in #65
  • Bump the actions group with 2 updates by @dependabot in #69
  • Bump the actions group with 2 updates by @dependabot in #71
  • Use Emscripten's llvm-readobj by default by @agriyakhetarpal in #73
  • MAINT Subclass recipe builders by @ryanking13 in #36
  • Fix handling cpython_module type recipe by @ryanking13 in #74
  • Bump the actions group with 2 updates by @dependabot in #75
  • Integration tests: fix orjson's builds with Maturin 1.8, and bump to NumPy v2 by @agriyakhetarpal in #76
  • [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #78
  • Bump actions/upload-artifact from 4.5.0 to 4.6.0 in the actions group by @dependabot in #80
  • Move CrossBuildEnvManager._download to common.download_and_unpack_achive by @hoodmane in #82
  • Move ensure_rust_toolchain to buildall by @hoodmane in #83
  • Split config manager into ConfigManager and CrossBuildEnvConfigManager by @ryanking13 in #91
  • Add a new configuration variable for setting default xbuildenv url by @ryanking13 in #85
  • MAINT Rename recipe-related scripts by @ryanking13 in #92
  • Add pinned key to opt recipe out of autoupdates by @hoodmane in #89
  • Bump the actions group with 4 updates by @dependabot in #95
  • Add pyodide skeleton enable and disable commands by @hoodmane in #94
  • Save symlinks directory when building with recipe builder by @hoodmane in #96
  • Bump actions/setup-python from 5.3.0 to 5.4.0 in the actions group by @dependabot in #98
  • Add requirement.constraint key to support package-wise constraints by @ryanking13 in #97

New Contributors

Full Changelog: v0.29.2...v0.29.3

v0.29.2

29 Nov 14:27
199828e
Compare
Choose a tag to compare

version 0.29.2 – 2024/11/29

Fixed

  • Fixed pyodide venv command not loading the shared libraries correctly, resulting in the package load failure.
    This bug was introduced in version 0.28. #67

PRs that made it into this release

  • Add config variable for setting index url for build requirements by @ryanking13 in #64
  • Ruff comprehensions and performance by @cclauss in #66
  • Fix pyodide venv after removing shared_library key by @ryanking13 in #67

New Contributors

Full Changelog: v0.29.1...v0.29.2

v0.29.1

27 Nov 11:56
4a82b7f
Compare
Choose a tag to compare

version 0.29.1 – 2024/11/27

Added

  • Add skip_emscripten_version_check flag and SKIP_EMSCRIPTEN_VERSION_CHECK environment
    variable to skip emscripten version check.
    #53
  • Set the EM_PKG_CONFIG_PATH environment variable used by emscripten/pkg-config to discover dependencies
    #52

Changed

  • Source tar files are now extracted with python's data filter
    #52

  • The pyodide build command will now raise an error if the local Python version has been changed,
    after the cross-build environment has been set up.
    #62

PRs that made it into this release

  • Add option to skip emscripten version check by @ryanking13 in #53
  • Properly parse the content disposition filename by @juntyr in #46
  • Validate Python version when initializing xbuildenv by @ryanking13 in #62
  • Set EM_PKG_CONFIG_PATH to correctly configure pkg-config by @swnf in #52

New Contributors

Full Changelog: v0.29.0...v0.29.1

v0.29.0

19 Sep 13:54
v0.29.0
3e17ce2
Compare
Choose a tag to compare

version 0.29.0 – 2024/09/19

Added

  • The pyodide xbuildenv search command now accepts a --json flag to output the search results in JSON format that is machine-readable. The design for the regular tabular output has been improved. (#28)

Changed

  • The pyodide skeleton pypi --update command and the --update-patched variant now validate the version and the source checksum when updating a package's recipe (#27)

  • pyo3_config_file is no longer available in the pyodide config command. Pyodide now sets PYO3_CROSS_PYTHON_VERSION, PYO3_CROSS_LIB_DIR to specify the cross-compilation environment
    for PyO3. (#19)


PRs that made it into this release

Full changelog: v0.28.0...v0.29.0