bazel-contrib / bazel-contrib/rules_python

Evaluate the best extraction method for repository rules

Đang mở
#3,562 3 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Starlark
Star
688
Fork
721
Merge trung bình
15 giờ 7 phút
Pull request đã merge (30 ngày)
76

Mô tả

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.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu bằng việc đọc các follow-up #3554 và #3555, sau đó so sánh đường dẫn của legacy Python interpreter và installer wheel, đường dẫn repository_ctx.extract/chmod/rename của pipstar, uv's crates/uv-extract/src/sync.rs và tùy chọn chmod/unzip của uutils. Kiểm tra các tác động đến facts API của release, whl_library và bzlmod được mô tả trong issue. Hoàn tất khi đã lựa chọn và ghi lại một phương án extraction có cơ sở, cùng các yêu cầu về toolchain, dependency, binary-release và hash của phương án đó.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
python, rust
Lĩnh vực
build-system, tooling
Loại issue
Tái cấu trúc
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.