554 Commits
Author SHA1 Message Date
renovate[bot] 6c2ab28fcb chore(deps): update rust crate codspeed-criterion-compat to v5.0.3 2026-10-14 14:32:48 +02:00
xtqqczze 0510844e44 build(deps): update rust crates 2026-10-11 23:01:37 +02:00
Sylvestre Ledru eb444cc124 prepare version 0.17.0 v0.17.0 2026-10-11 16:23:43 +02:00
Ion f75711a932 fix(relative): add the fraction of a negative relative second count (#327)
* fix(relative): add the fraction of a negative relative second count

`Relative::Seconds` holds a floor decomposition, so -0.25 seconds is
`(-1, 750_000_000)`. A `jiff::Span` is sign-uniform, so combining those two
fields directly subtracted the fraction instead of adding it and the result
was off by `2 * (1 - fraction)` seconds. Rebalance the fraction onto the sign
of the whole seconds before building the span.

* fix(relative): shorten the fraction comment, align the GNU version to 9.11
2026-10-11 16:10:53 +02:00
Anas Awadalla de62667844 fix(weekday): accept a period after abbreviated weekday names (#334)
* fix(weekday): accept a period after abbreviated weekday names

* test(weekday): parse abbreviated weekdays with a period through the full parser

* test(weekday): cover mismatched abbreviated weekday with period
2026-10-11 15:52:32 +02:00
CodSpeed Bot 701f5a0200 bench: pin parse_weekday to a fixed reference date
The weekday benchmark parsed "wednesday" relative to the current date, so
its cost depended on which day of the week CI ran (no date shift on a
Wednesday, a multi-day shift otherwise), producing spurious regressions.
2026-10-11 09:41:30 +02:00
Asifur Rahaman Meeru 2df367552d fix(offset): correct ADT, AST, BST, GST and SST to GNU's values
The table is meant to cover the same abbreviations GNU date supports, but
five of them resolved to a different offset than GNU date gives, so
"2026-06-15 12:00 BST" parsed as +06:00 (Bangladesh) rather than +01:00
(British Summer Time). Offsets were measured with `date --debug` on GNU
coreutils 9.10: ADT is -3, AST -4, BST +1, GST +10 and SST -12.
2026-10-11 09:41:30 +02:00
renovate[bot] 3fc6d60400 chore(deps): update rust crate arbitrary to v1.5.0 2026-10-07 06:52:23 +02:00
renovate[bot] 1c92c879ed chore(deps): update rust crate jiff to v0.2.38 2026-10-07 06:51:33 +02:00
sap1110 5bc4b0a902 fixup! builder: ignore weekday when an explicit date is given 2026-10-05 22:20:33 +02:00
sap1110 a066a83ca4 builder: ignore weekday when an explicit date is given
When the input carries both a weekday and a calendar date, the date is
now authoritative and the weekday is dropped, matching GNU date. This
also covers ordinal forms such as "next friday sep 25 2026". Relative
items are still applied on top of the date, and a weekday without a
date behaves as before.

Closes #317
2026-10-05 22:20:33 +02:00
oech3 ed95575362 ci.yml: use prebuilt cargo-fuzz 2026-10-04 10:19:34 +02:00
Anas Awadalla c6bfe2d15a test(primitive): cover comments and ignored signs between items 2026-10-03 13:17:40 -04:00
Anas Awadalla 59336d8db1 test(offset): cover offsets followed by a relative item 2026-10-03 13:17:40 -04:00
Anas Awadalla dabd1eab31 refactor(offset): shorten the relative lookahead comments 2026-10-03 13:17:40 -04:00
Anas Awadalla f1523281a0 refactor(items): address review cleanups 2026-10-03 13:17:40 -04:00
Anas Awadalla 5b0b578a4c perf(items): parse an ISO date once and lowercase the input only when needed 2026-10-03 13:17:40 -04:00
Anas Awadalla 2788bf4e3d perf(offset): map timezone names to offsets directly and defer the relative lookahead 2026-10-03 13:17:40 -04:00
Anas Awadalla 04fa426eff perf(primitive): skip the whitespace combinator when no comment or sign follows 2026-10-03 13:17:40 -04:00
Anas Awadalla fef8bf0cfc fix(ordinal): accept eighth instead of eight as an ordinal (#333)
* fix(ordinal): accept eighth instead of eight as an ordinal

* test(ordinal): cover text ordinals and parse eighth through the full parser
2026-10-03 19:16:06 +02:00
Natsu e25bf1530c relative: accept hence after a relative time (#331) 2026-09-21 19:13:23 +02:00
renovate[bot] fdd87ce6ad chore(deps): update rust crate codspeed-criterion-compat to v5.0.2 2026-09-18 07:18:08 +02:00
renovate[bot] f451f94912 chore(deps): update rust crate jiff to v0.2.37 2026-09-13 09:51:25 +02:00
renovate[bot] d4bace0d65 chore(deps): update rust crate rstest to 0.27 2026-09-07 07:12:23 +02:00
Sylvestre Ledru 618dda7263 fix(builder): keep the time of day when a zone item is combined with a relative item (#324) v0.16.0 2026-08-29 17:39:35 +02:00