MagicStack / MagicStack/httptools
Add riscv64 (linux_riscv64) wheel to PyPI releases
まだ誰も着手していません。
- 主要言語
- Python
- スター
- 1.3k
- フォーク
- 107
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
Add linux_riscv64 wheel to PyPI releases
Summary
pip install httptools on riscv64 Linux currently requires building from source (~2 min on a 1.6 GHz RISC-V SoC). Adding linux_riscv64 to the wheel build matrix would give riscv64 users a prebuilt wheel.
Evidence
| Tested wheel | httptools-0.7.1-cp313-cp313-linux_riscv64.whl |
| Hardware | BananaPi F3 (SpacemiT K1, rv64imafdcv, 8 cores @ 1.6 GHz, 16 GB RAM) |
| Python | 3.13 (CPython) |
| Build system | cibuildwheel |
| Build time | ~2 min (native, on hardware) |
The wheel imports and passes basic smoke tests on riscv64 Linux.
Suggested CI change
Workflow: .github/workflows/release.yml
Add riscv64 to the matrix:
# In strategy.matrix.cibw_arch, add riscv64:
cibw_arch: [auto64, aarch64, universal2, riscv64]
# Add exclude for riscv64 on non-linux:
exclude:
- os: windows-latest
cibw_arch: riscv64
- os: macos-latest
cibw_arch: riscv64
QEMU action is already present (for aarch64).
Ecosystem context
manylinux_2_28_riscv64images are available onquay.io/pypa/(landed in pypa/manylinux, 2025)- cibuildwheel 3.x supports riscv64 via QEMU emulation
- auditwheel supports riscv64 platform tags
- maturin-action supports
riscv64gc-unknown-linux-gnucross-compilation - Packages already shipping riscv64 wheels on PyPI: aiohttp, yarl, regex, markupsafe, charset-normalizer, rpds-py, multidict, propcache, watchfiles, rignore, setproctitle
- RISC-V hardware is shipping: SiFive HiFive, SpacemiT K1/K3, Sophgo SG2044 (64-core)
Our temporary index
While upstream support is pending, we maintain a PEP 503 index with 50+ riscv64 wheels for the Python ML/AI stack, built natively on RISC-V hardware.
Tracking repo: https://github.com/gounthar/riscv64-python-wheels
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
.github/workflows/release.yml から始めて、既存の cibw_arch マトリクス、プラットフォームの除外、aarch64 用の QEMU セットアップを確認します。説明されているとおりに riscv64 のサポートを追加し、その後、リリースワークフローによって linux_riscv64 wheel が生成され、Windows や macOS では有効化されていないことを確認します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- github-actions, python
- 領域
- build-system, ci-cd, release
- issue の種類
- 機能追加
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 活発さ
- 停滞
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 68/100