date: follow GNU pure-number -d semantics #8907
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This makes -d0, -d7, -d0700 mean “today at HH[:MM]” like GNU date. We pre-parse pure digits (1–2 => HH:00, 3–4 => HHMM), respect -u for UTC, and reject invalid times like 2400/2360.
Fixes #8898.
an earlier change routed -d through parse_datetime and didn’t carry over GNU’s pure-number rule; this brings us back in line with GNU.
reference: https://www.gnu.org/software/coreutils/manual/html_node/Pure-numbers-in-date-strings.html
Tests cover -d0, -d7, -d0700 (TZ=UTC0) and the invalid cases.