Removing old Ruby builds like Ruby 1.9-2.2 and JRuby 9.1-9.3 and TruffleRuby 19-22
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- JavaScript
- Star
- 990
- Fork
- 369
- Merge trung bình
- 18 phút
- Pull request đã merge (30 ngày)
- 3
Mô tả
Based on the excludes in https://github.com/ruby/setup-ruby/blob/afda160499b3ea79ea34ed7dc1191c3f68294309/.github/workflows/test.yml#L38
I'm thinking to remove old Rubies such as:
- 1.9. which is only built on
ubuntu-22.04andmacos-latestbut fails to build on all other platforms. It probably doesn't work well either and there are tons of exclude for it. - 2.0, 2.1 and 2.2 since 2.2 is known to segfault (https://github.com/ruby/setup-ruby/issues/496) and likely none of them work well. Also 2.2 has this weird version mismatch explained in the README. Also the oldest version that builds on arm64 is 2.3.5 and it seems nice to have approximately the same versions on x64 and arm64 available (when possible).
- JRuby 9.1, 9.2 and 9.3, so we'd keep only supported release trains of 9.4 and 10.0.
- TruffleRuby releases which are EOL and older than 2 years, like everything older than 23.0.0 (which is compat 3.1, 22.3 is compat 3.0).
I want to keep @v1 and avoid jumping to @v2 to avoid unnecessary churn and confusion. The idea is to not maintain those anymore, if there was a @v2, @v1 would become "dead" and I don't want that and all the issue spam that would result from it.
I'm thinking to first remove support for them in setup-ruby (so it would result in an error then, or maybe at first a warning), and then after some time remove them in https://github.com/ruby/ruby-builder/releases/tag/toolcache.
Is anyone using those versions and have a working build they can link?
That would make me consider keeping some of these versions longer.
Hướng dẫn đóng góp
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
Xem xét các phiên bản bị loại trừ trong .github/workflows/test.yml và các đường dẫn hỗ trợ của setup-ruby, sau đó so sánh chúng với bản phát hành toolcache của ruby-builder được mô tả trong issue. Xác nhận liệu các phiên bản MRI, JRuby và TruffleRuby được liệt kê vẫn còn bản build hoạt động hoặc người dùng hay không; hoàn tất nghĩa là có kế hoạch đã được quyết định về việc loại bỏ hoặc giữ lại mà không làm hỏng giao diện @v1.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- github-actions, javascript, ruby
- Lĩnh vực
- build-system, ci-cd, release
- 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
- 35/100