Only Try a Unique Venv If There Is a Conflict
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- Python
- Star
- 1k
- Fork
- 203
- Merge trung bình
- 1 giờ 20 phút
- Pull request đã merge (30 ngày)
- 2
Mô tả
Currently any failure when installing a benchmark's requirements triggers the creation of a unique venv for that benchmark and a retry of the install. The only failure for which we need to create a unique venv is when there is a conflict with the version of already installed packages. Adjusting the code along those lines would speed things up when their are failures (e.g. wheel cannot build) and produce less noise.
Possible solutions:
- parse the text of the first install attempt to see if it a conflict
- this is fragile, as well as requiring that we "tee" the output of the "pip install" command
- instead of trying the common venv first, track the installed versions and use the common venv only if the benchmark's requirements are compatible
- #158 identifies several approaches to tracking installed versions
- this means we need to add some logic for checking requirements compatibility, though there is probably a good enough library out there (maybe in the stdlib)
Also see https://github.com/python/pyperformance/issues/144#issuecomment-1075822776.
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Theo dõi luồng cài đặt requirements của benchmark và xem xét issue #158 để tìm các cách tiếp cận nhằm theo dõi các phiên bản đã cài đặt. Thay đổi được hoàn tất khi một môi trường ảo duy nhất chỉ được sử dụng cho các xung đột phiên bản gói, còn các lỗi cài đặt khác được báo cáo mà không tự động thử lại.
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
- Lĩnh vực
- performance, tooling
- Loại issue
- Tái cấu trúc
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 38/100