Strings that could be interpreted as sexagesimal should always be emitted quoted
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 45/100
Línea de trabajo
Empieza siguiendo la ruta de emisión de to_yaml para strings y compárala con los ejemplos de Ruby 2.5 y 2.6 del issue. Comprueba cómo interpretan los analizadores de YAML 1.1 los valores emitidos y, después, verifica que los strings similares a valores sexagesimales, como las direcciones MAC, se escriban entre comillas sin cambiar el resto de la salida de strings.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Not doing so causes parsers that follow the yaml 1.1 spec (crazy though it might be), to load certain unquoted mac addresses as integers.
IMO https://github.com/ruby/psych/issues/265 wasn't actually a bug. It was following the 1.1 spec. (To make things more complicated, sexagesimal was dropped from yaml in the 1.2 spec)
Ruby 2.5 and 2.6 emit mac addresses, (but not shorter strings it thinks are more likely to be sexagesimal), unquoted.
2.6.0 :002 > '52:54:00:44:49:56'.to_yaml
=> "--- 52:54:00:44:49:56\n...\n"
2.6.0 :003 > '44:49:56'.to_yaml
=> "--- '44:49:56'\n"
ruby < 2.5 then parse them as integers.
2.4.5 :006 > YAML.load('macaddress: 52:54:00:44:49:56')
=> {"macaddress"=>12465480}
Here is an actual example of where the change in handling of sexagesimal has been a problem.
- Lenguaje dominante
- Ruby
- Estrellas
- 597
- Forks
- 223
- Merge medio
- 6 h 8 min
- PR fusionados (30 d)
- 2
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
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/psych
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
Documentation
Dificultad 1/5 Menos de una hora Aptitud para principiantes 72/100
-
Psych.dump raises Encoding::CompatibilityError for UTF-16/UTF-32 stringsPosiblemente ocupada @Halvanhelv la tomó hace 25 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 55/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 68/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 52/100
Todos los issues de ruby/psych
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
forem/forem#23933 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Allow customizing the page titleAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
rails/mission_control-jobs#347 ·
-
PROJECT: ILR/DRS
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
thewca/worldcubeassociation.org#15914 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 7 días
-
good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
benbalter/site-inspector#127 ·
Los mantenedores suelen responder en 1 día