SyntaxSuggest 3.0.0 leaks raw invalid bytes into stderr when source has invalid encoding
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 38/100
Línea de trabajo
Empieza rastreando el manejo de codificaciones no válidas alrededor de CleanDocument#clean_sweep y del rescue en core_ext.rb. Reproduce el problema con LC_ALL=C usando una fuente que contenga bytes no válidos y, después, inspecciona spec/ruby/language/source_encoding_spec.rb y los fallos vinculados de Ruby CI. Se considera terminado cuando los bytes no válidos sin procesar ya no llegan a la anotación ni al stderr capturado y el comportamiento de codificación afectado está cubierto.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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
- Lenguaje dominante
- Ruby
- Estrellas
- 350
- Forks
- 17
- Merge medio
- 48 min
- PR fusionados (30 d)
- 5
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de ruby/syntax_suggest
-
Accidental if instead of a block Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
ruby/syntax_suggest#206 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
ruby/syntax_suggest#205 · 1 comentario ·
-
RSpec won't use syntax_suggest Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
ruby/syntax_suggest#171 · 3 comentarios ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
ruby/syntax_suggest#118 · 3 comentarios ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 45/100
ruby/syntax_suggest#109 · 1 comentario ·
Todos los issues de ruby/syntax_suggest
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
TheOdinProject/curriculum#31417 · 2 comentarios ·
-
Allow faraday-http-cache 3.x Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
glossarist/glossarist-ruby#238 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
palladius/rails8-app-on-gcp#145 ·