Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

date input: unrecognized trailing tokens rejected (e.g. `8j`, `8 j`)

Aperta
#279 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
65/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
rust
Ambito
backend

Direzione di ricerca

Inizia dal punto di ingresso parse_datetime e verifica come vengono gestiti i token di parole finali, quindi esamina il test proposto nella suite di integrazione di uutils/coreutils. Esegui i casi date per "8j" e "8 j" nella riproduzione; il lavoro è completato quando entrambi gli input hanno esito positivo e producono 08:00:00, mentre i test di parsing esistenti continuano a passare.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug good first issue

Summary

GNU date silently ignores unrecognized trailing word-tokens and parses the preceding number as an hour. parse_datetime errors out instead.

Found by a fuzz_date run on uutils/coreutils.

Reproduction

$ TZ=UTC /usr/bin/date -u -d '8j' '+%H:%M:%S'
08:00:00
$ echo $?
0

$ TZ=UTC target/debug/coreutils date -u -d '8j' '+%H:%M:%S'
date: invalid date '8j'
$ echo $?
1

$ TZ=UTC /usr/bin/date -u -d '8 j' '+%H:%M:%S'
08:00:00

$ TZ=UTC target/debug/coreutils date -u -d '8 j' '+%H:%M:%S'
date: invalid date '8 j'

Test (in uutils/coreutils integration suite)

#[test]
fn test_date_ignores_unrecognized_trailing_tokens() {
    for input in ["8j", "8 j"] {
        new_ucmd!()
            .env("TZ", "UTC")
            .arg("-u")
            .arg("-d")
            .arg(input)
            .arg("+%H:%M:%S")
            .succeeds()
            .stdout_only("08:00:00\n");
    }
}
Lingua principale
Rust
Stelle
37
Fork
39
Merge medio
17h 48m
PR unite (30g)
8

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di uutils/parse_datetime

Tutte le issue di uutils/parse_datetime

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.