Skip to content

pyrage: add build-pyrage.yml for riscv64 wheels - #1452

Merged
luhenry merged 3 commits into
mainfrom
pyrage
Sep 8, 2026
Merged

pyrage: add build-pyrage.yml for riscv64 wheels#1452
luhenry merged 3 commits into
mainfrom
pyrage

Conversation

@luhenry

@luhenry luhenry commented Sep 7, 2026

Copy link
Copy Markdown
Member

Compiles PyO3/maturin bindings around the Rust age/rage crates for file encryption and decryption. Upstream publishes no riscv64 wheel.

Mirrors the test job of upstream's ci.yml.

Matrix: cp310-abi3 wheel reused across cp310-cp314, plus a separate cp314t wheel - pyo3's abi3-py310 feature is unconditional in Cargo.toml, and pyo3 disables abi3 under Py_GIL_DISABLED.

Testing

  • same as upstream

License: OK

Confirmed no C dependencies: age/age-core/pyo3-file are pure Rust, so no in-container native toolchain beyond rustup is needed.

Rust/PyO3 bindings for the age file encryption tool. pyo3's abi3-py310
feature is unconditional in Cargo.toml, so a single abi3 wheel covers
cp310-cp314 and the free-threaded build gets its own cp314t wheel.
No C dependencies (age is pure Rust), so no in-container native
toolchain beyond rustup is needed.
luhenry added a commit that referenced this pull request Sep 7, 2026
Verified via CI: v1.4.0's Cargo.lock pins pyo3 0.24.2, whose build
script hard-errors on any non-abi3 build against a 3.14 interpreter
("configured Python interpreter version (3.14) is newer than PyO3's
maximum supported version (3.13)"). A bump was tried locally: pyo3-file
0.12.0 also needs bumping (its pyo3 req is pinned to "0.24"), and pyo3
0.29.2 then fails to compile pyrage's own src/*.rs (Python::with_gil
was renamed to try_attach), which is too invasive to backport here.
… 314)

pyrage has no [tool.maturin] python-source, so maturin auto-generates
pyrage/__init__.py wrapping the compiled pyrage/pyrage.abi3.so
submodule; pyrage.__file__ is the shim, not the extension.
@luhenry
luhenry merged commit 6daf9cf into main Sep 8, 2026
6 checks passed
@luhenry
luhenry deleted the pyrage branch September 8, 2026 08:36
@luhenry luhenry linked an issue Sep 8, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

pyrage riscv64 support

1 participant