Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Dates with 5 digit years can not deserialized

Abierto
#483 2 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
42/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
ruby
Área
tooling

Línea de trabajo

Reproduce el fallo con el fragmento de Ruby del issue y luego inspecciona lib/psych/scalar_scanner.rb alrededor de la expresión regular de Date en la línea 113. Confirma cómo se analiza un año de cinco dígitos y define como finalización la carga correcta del DateTime volcado sin el captures error, preservando el manejo de fechas válidas.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

require 'time'
require 'yaml'

date = DateTime.parse('22018-01-05')
serialized_date = YAML.dump(date)
YAML.load(serialized_date)
# => fails with NoMethodError: undefined method `captures' for nil:NilClass

This is because the regex for parsing a Date, in ScalarScanner, expects a 4 digit year.

The year is actually incorrect and should have been validated before being saved. It has made it in to our data.

Please close if you think this is too much of an edge case to be considered.

On the other hand 5 digit years are legit.

Lenguaje dominante
Ruby
Estrellas
597
Forks
223
Merge medio
14 min
PR fusionados (30 d)
1

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de ruby/psych

Todos los issues de ruby/psych

Issues similares

Más issues de Ruby

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.