SyntaxSuggest 3.0.0 leaks raw invalid bytes into stderr when source has invalid encoding
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 38/100
Hướng nghiên cứu
Bắt đầu bằng cách lần theo việc xử lý encoding không hợp lệ quanh CleanDocument#clean_sweep và rescue trong core_ext.rb. Tái hiện sự cố với LC_ALL=C bằng một source chứa các byte không hợp lệ, sau đó kiểm tra spec/ruby/language/source_encoding_spec.rb và các lỗi Ruby CI được liên kết. Được xem là hoàn tất khi các byte không hợp lệ thô không còn đi tới annotation hoặc stderr được capture và hành vi encoding bị ảnh hưởng đã được bao phủ.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Since 3.0.0 removed CleanDocument#clean_sweep, sources that contain bytes invalid in their encoding are no longer rejected internally — the raw bytes end up in the annotation. Previously clean_sweep raised ArgumentError and the rescue in core_ext.rb produced a clean fallback.
Under LC_ALL=C, captured error output becomes a US-ASCII string with invalid bytes — any regex match on it raises ArgumentError: invalid byte sequence in US-ASCII. This broke spec/ruby/language/source_encoding_spec.rb on three Ruby CI platforms:
- https://rubyci.s3.amazonaws.com/debian/ruby-master/log/20260420T003003Z.fail.html.gz
- https://rubyci.s3.amazonaws.com/s390x/ruby-master/log/20260419T230004Z.fail.html.gz
- https://rubyci.s3.amazonaws.com/openbsd-current/ruby-master/log/20260419T233005Z.fail.html.gz
I added workaround for this at https://github.com/ruby/ruby/commit/f45bb9ba36cff72eff1bf0c0817a023843a1be34
- Ngôn ngữ chính
- Ruby
- Star
- 350
- Fork
- 17
- Merge trung bình
- 48 phút
- Pull request đã merge (30 ngày)
- 5
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.
Issue khác của ruby/syntax_suggest
-
Accidental if instead of a block Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 30/100
ruby/syntax_suggest#206 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 42/100
ruby/syntax_suggest#205 · 1 bình luận ·
-
RSpec won't use syntax_suggest Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
ruby/syntax_suggest#171 · 3 bình luận ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 20/100
ruby/syntax_suggest#118 · 3 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 45/100
ruby/syntax_suggest#109 · 1 bình luận ·
Tất cả issue của ruby/syntax_suggest
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
Please Drop ruby 3.2 support Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
googleapis/google-api-ruby-client#28001 · 5 reaction ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100