Skip to content

feat: riscv64 builds are now enabled by default #2509

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jul 24, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 0 additions & 4 deletions cibuildwheel/selector.py
Original file line number Diff line number Diff line change
Expand Up @@ -93,10 +93,6 @@ def __call__(self, build_id: str) -> bool:
return False
if EnableGroup.PyPyEoL not in self.enable and fnmatch(build_id, "pp3?-*"):
return False
if EnableGroup.CPythonExperimentalRiscV64 not in self.enable and fnmatch(
build_id, "*_riscv64"
):
return False
if EnableGroup.GraalPy not in self.enable and fnmatch(build_id, "gp*"):
return False
# TODO: Re-enable this when we have Pyodide prereleases again (e.g., 0.29.0a1+)
Expand Down
6 changes: 0 additions & 6 deletions docs/options.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,6 @@ The list of supported and currently selected build identifiers can also be retri
The format is `python_tag-platform_tag`, with tags similar to those in [PEP 425](https://www.python.org/dev/peps/pep-0425/#details).

Windows arm64 platform support is experimental.
Linux riscv64 platform support is experimental and requires an explicit opt-in through [`enable`](#enable).

See the [cibuildwheel 2 documentation](https://cibuildwheel.pypa.io/en/2.x/) for past end-of-life versions of Python.

Expand Down Expand Up @@ -201,8 +200,6 @@ Options:
to use [`build`](#build-skip) with this option to target specific
architectures via build selectors.

Linux riscv64 platform support is experimental and requires an explicit opt-in through [`enable`](#enable).

Default: `auto`

| Runner | `native` | `auto` | `auto64` | `auto32` |
Expand Down Expand Up @@ -356,9 +353,6 @@ values are:
free-threaded builds are no longer experimental, so this enable is not needed.
- `pypy`: Enable PyPy.
- `pypy-eol`: Enable PyPy versions that have passed end of life (if still available).
- `cpython-experimental-riscv64`: Enable experimental riscv64 builds. Those builds
are disabled by default as they can't be uploaded to PyPI and a PEP will most likely
be required before this can happen.
- `graalpy`: Enable GraalPy.
- `pyodide-prerelease`: Pyodide versions that haven't released yet, if one is
available. Safe if you are shipping a site with an early build, not for
Expand Down
2 changes: 1 addition & 1 deletion test/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ def get_platform() -> str:
raise Exception(msg)


DEFAULT_CIBW_ENABLE = "cpython-freethreading cpython-prerelease cpython-experimental-riscv64"
DEFAULT_CIBW_ENABLE = "cpython-freethreading cpython-prerelease"


def get_enable_groups() -> frozenset[EnableGroup]:
Expand Down
9 changes: 0 additions & 9 deletions unit_test/build_selector_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -217,15 +217,6 @@ def test_build_free_threaded_python():
assert build_selector("cp313t-manylinux_x86_64")


def test_build_riscv64_enable():
build_selector = BuildSelector(build_config="*", skip_config="")
assert not build_selector("cp313-manylinux_riscv64")
build_selector = BuildSelector(
build_config="*", skip_config="", enable=frozenset([EnableGroup.CPythonExperimentalRiscV64])
)
assert build_selector("cp313-manylinux_riscv64")


def test_testing_selector():
# This is not a global import to keep pytest from collecting it as a test
test_selector = cibuildwheel.selector.TestSelector(skip_config="cp36-*")
Expand Down
Loading