bazel-contrib / bazel-contrib/rules_python

pip_parse: lockfile for build dependencies in repository rule

オープン
#1,325 コメント 9 件 リアクション 1 件 担当者 0 名 GitHub で見る
help wanted type: pip
主要言語
Starlark
スター
688
フォーク
721
平均マージ
15時間 7分
マージ済み PR(30日)
76

説明

Since [PEP 518](https://peps.python.org/pep-0518/) projects can specify their build system requirements in their pyproject.toml file. Currently this is not included in the pip-compile and therefore can lead to non-reproducible issues. This happened in the wild today because pyyaml depends on cython but didn't pin its major version, so when cython pushed an incompatible version this broke if you were including it in bazel. One of the potential workarounds is to install the compatible cython version in the venv _before_ installing your requirements, which I also don't believe is possible. I believe supporting this would require pip-tools to also support this option, which is potentially implemented by https://github.com/jazzband/pip-tools/pull/1681

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

まず、pip_parse リポジトリルールの現在の pip-compile フローと、参照されている pip-tools の pull request #1681 を確認します。pyproject.toml のビルドシステム要件をどのように含めるべきかを判断し、それらの依存関係がリポジトリのビルド用に再現可能な形で固定された時点で作業完了とします。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
python
領域
build-system
issue の種類
機能追加
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
32/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。