Timestamp converter still turns "02/30/2024" into March 1
Los mantenedores suelen responder en 1 día
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 88/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
Línea de trabajo
Empieza por extractCalendarDay y su patrón de fecha numérica en lib/time-utils.ts; después, lee los casos relacionados en lib/__tests__/time-utils.test.ts. Añade cobertura para 02/30/2024 y 2/30/2024 y confirma que 02/29/2024 y 12/31/2024 se sigan convirtiendo. El trabajo estará terminado cuando se rechacen las fechas no válidas con formato estadounidense y pasen los comandos indicados de lint, test y build.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
#340 made the timestamp converter reject impossible days in 2024-02-30, 2024/02/30, February 30, 2024 and 30 February 2024. US-style dates still slip through: type 02/30/2024 (month/day/year) into Date to epoch and it converts it to March 1, 2024. extractCalendarDay (lib/time-utils.ts, line 143) only reads numeric dates that start with the year (line 144), so MM/DD/YYYY goes straight to Date.parse, which rolls the day over.
What to do
- Read
MM/DD/YYYY(andM/D/YYYY) inextractCalendarDaythe wayDate.parsereads it, month first, so the day can be checked against that month's length.
Where to look
lib/time-utils.ts:extractCalendarDay(line 143) and its numeric pattern (line 144)lib/__tests__/time-utils.test.ts
Acceptance criteria
-
02/30/2024and2/30/2024are rejected like2024-02-30 -
02/29/2024and12/31/2024still convert - Tests that fail on the current code
-
npm run lint,npm run testandnpm run buildpass
Want to work on this? Comment below and I'll assign it to you. Please take one issue at a time, branch off develop, and open your PR against develop with Closes #345 in the description.
- Lenguaje dominante
- TypeScript
- Estrellas
- 1
- Forks
- 9
- Merge medio
- 7 h 17 min
- PR fusionados (30 d)
- 158
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una 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 codercops/toolbelt
-
documentation good first issue hacktoberfest seo
Dificultad 3/5 1-2 días Aptitud para principiantes 50/100
codercops/toolbelt#364 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
UUID generator's v7 batch comes out in random order instead of time orderPosiblemente ocupada @omisha123 la tomó hace 3 días. Abiertobug good first issue hacktoberfest
codercops/toolbelt#316 · 3 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Base64 decode error points at the wrong character when the input has spaces or line breaksPosiblemente ocupada @Aaqibhafeezkhan la tomó hace 3 días. Abiertobug good first issue hacktoberfest
codercops/toolbelt#310 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Guide: how to check color contrast for WCAGPosiblemente ocupada @08abhinav la tomó hace 3 días. Abiertodocumentation good first issue hacktoberfest seo
codercops/toolbelt#276 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Guide: how to convert a Unix timestamp to a date and backPosiblemente ocupada @varun-pahuja la tomó hace 3 días. Abiertodocumentation good first issue hacktoberfest seo
codercops/toolbelt#275 · 3 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de codercops/toolbelt
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
VictoriaMetrics/victorialogs-datasource#747 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
Los mantenedores suelen responder en 1 día
-
bug from-studio
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
esengine/DeepSeek-Reasonix#14608 ·
Los mantenedores suelen responder en 1 día
-
triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
getarcaneapp/arcane#4590 ·
Los mantenedores suelen responder en 1 día
-
支持对已取消(cancelled)任务生成报告Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
Clouditera/VulnHunter#57 ·