Skip to content

py-sr25519-bindings: add build-py-sr25519-bindings.yml for riscv64 wheels - #1223

Merged
luhenry merged 2 commits into
mainfrom
py-sr25519-bindings
Sep 7, 2026
Merged

py-sr25519-bindings: add build-py-sr25519-bindings.yml for riscv64 wheels#1223
luhenry merged 2 commits into
mainfrom
py-sr25519-bindings

Conversation

@luhenry

@luhenry luhenry commented Sep 7, 2026

Copy link
Copy Markdown
Member

PyO3/maturin bindings for the schnorrkel sr25519 signature scheme used by Substrate/Polkadot. Upstream publishes no riscv64 wheel.

Mirrors upstream's CI.yml linux/sdist jobs.

Differs from upstream

  • Musllinux dropped - rustup ships no riscv64 musl host toolchain.

Testing

  • Exercises sign/verify/derive_pubkey/derive_keypair/hard_derive_keypair against upstream's own src/lib.rs unit-test vectors instead of tests.py, whose test_sign_and_verify_message needs py-bip39-bindings, not yet on the registry.

License: OK

Built a cp39 wheel locally from the sdist on an arm64 host; all five test vectors matched.

…eels

Ports the polkascan/py-sr25519-bindings PyO3/schnorrkel bindings (Substrate's
sr25519 signature scheme). No abi3 feature is set on pyo3, so the interpreter
matrix builds cp312/cp313/cp314/cp314t individually; maturin ships the
compiled extension behind an auto-generated sr25519/__init__.py shim, so the
test command probes sr25519.sr25519 directly and exercises sign/verify/derive
against upstream's own src/lib.rs unit test vectors.
…_TEST_COMMAND

The YAML folded scalar plus a newline right after python -c " left a leading
space before the first statement, which cp312/cp313 reject as an unexpected
indent (cp314/cp314t happen to tolerate it).
@luhenry
luhenry merged commit 6913d91 into main Sep 7, 2026
10 checks passed
@luhenry
luhenry deleted the py-sr25519-bindings branch September 7, 2026 08:24
@luhenry luhenry linked an issue Sep 7, 2026 that may be closed by this pull request
luhenry added a commit that referenced this pull request Sep 7, 2026
…#1239)

* **Package**: `py-bip39-bindings`
* **Version**: `0.3.0`
* **Source**: https://github.com/polkascan/py-bip39-bindings
* **Docs**: https://github.com/polkascan/py-bip39-bindings

PyO3/maturin bindings for the tiny-bip39 Rust crate, generating and validating BIP-39 mnemonic seed phrases for Substrate/Polkadot key derivation. Upstream publishes no riscv64 wheel.

Mirrors upstream's [`CI.yml`](https://github.com/polkascan/py-bip39-bindings/blob/v0.3.0/.github/workflows/CI.yml) `linux`/`sdist` jobs, same shape as py-sr25519-bindings (#1223).

**Differs from upstream**
- Musllinux dropped - rustup ships no riscv64 musl host toolchain.

**Testing**
- same as upstream (`pytest tests.py`, covering French and zh-hans mnemonic locales too)

**License**: OK
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.

py-sr25519-bindings riscv64 support

1 participant