bazel-contrib / bazel-contrib/rules_python
Evaluate the best extraction method for repository rules
- 主要言語
- Starlark
- スター
- 688
- フォーク
- 721
- 平均マージ
- 15時間 7分
- マージ済み PR(30日)
- 76
説明
Alternatives:
* What we have in legacy - Python interpreter + `installer` whl
* What we have in pipstar - `repository_ctx.extract` + `chmod` and `repository_ctx.rename`
* What `uv` is using - https://github.com/astral-sh/uv/blob/0.9.28/crates/uv-extract/src/sync.rs
* A regular `uutils` chmod + unzip
For the last thing we would probably have to setup:
- development rust toolchain.
- binary archiving as part of release. We could probably download the right thing and store hashes using the new `facts` API for `bzlmod`.
- download the binary as a dependency to `whl_library`.
This is a followup to #3554 and #3555.
コントリビューションガイド
調査の方向性
まず follow-ups #3554 と #3555 を読み、legacy Python interpreter と installer wheel のパス、pipstar の repository_ctx.extract/chmod/rename のパス、uv's crates/uv-extract/src/sync.rs、および uutils の chmod/unzip オプションを比較します。issue に記載されている release、whl_library、bzlmod の facts API への影響を確認します。toolchain、依存関係、binary-release、hash の要件を含む、根拠のある展開方式を選定して文書化できれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- python, rust
- 領域
- build-system, tooling
- issue の種類
- リファクタリング
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100