Jeffrey Finkelstein
db18db4e1d
Add time to parsed date after parsing not before
...
Change the way dates without times are parsed by just parsing the date
as-is and applying the placeholder time (00:00:00) after parsing
instead of before.
2025-02-13 18:48:47 -05:00
Sylvestre Ledru
c337aba9cb
Merge pull request #116 from jfinkels/remove-add-zero-months
...
Remove more useless calls to add zero months to date
2025-02-13 07:55:18 +01:00
Sylvestre Ledru
63cfc01e80
Merge pull request #111 from cakebaker/fuzz_remove_rand_dependency
...
fuzz: remove `rand` dependency
2025-02-13 07:54:53 +01:00
Sylvestre Ledru
1daaeb42a2
Merge pull request #118 from jfinkels/add-more-tests
...
Add a lot more unit tests
2025-02-13 07:54:36 +01:00
Jeffrey Finkelstein
3fcbac6fae
Add a lot more unit tests
...
Add more unit tests for `parse_datetime()` when given an input without
a time delta (like "+1 year" or similar).
2025-02-12 22:04:09 -05:00
Jeffrey Finkelstein
65cd15dba9
Remove useless call to add zero months to date
2025-02-12 21:49:23 -05:00
Daniel Hofstetter
65c88f3586
Merge pull request #115 from jfinkels/patterns-with-length
...
Greedy parsing of datetime before time delta
2025-02-12 07:15:23 +01:00
jfinkels
2c55db21fa
Avoid unnecessary slicing when parsing offset
...
Co-authored-by: Daniel Hofstetter <daniel.hofstetter@42dh.com >
2025-02-11 20:05:55 -05:00
Jeffrey Finkelstein
badc887606
Greedy parsing of datetime before time delta
...
Simulate greedy parsing of an absolute datetime in the prefix of a
string before parsing a subsequent time delta in the suffix of the
string. This does not change the behavior of `parse_datetime`, it just
prepares the code for a future change that allows parsing both the
absolute datetime and the time delta from the same string.
Greedy parsing is implemented by iterating over a list of patterns in
decreasing order of length so that longer patterns are tried before
shorter patterns. This guarantees that if there is an absolute datetime
present at the beginning of the string, then it will definitely be
parsed and the remaining part of the string is assumed to contain a time
delta.
2025-02-09 17:31:25 -05:00
Jeffrey Finkelstein
f8adcb6c88
Add passing test for parsing datetime ending in Z
...
Add a passing unit test for parsing a datetime ending in the letter Z,
as in
2023-06-03 12:00:01Z
This is treated as a datetime in the UTC time zone.
2025-02-09 17:31:25 -05:00
Daniel Hofstetter
d0dceb6eaf
Merge pull request #114 from jfinkels/parse-empty-string
...
Allow empty string in parse_relative_time_at_date
2025-02-09 16:18:43 +01:00
Jeffrey Finkelstein
45b9d9f09a
Allow empty string in parse_relative_time_at_date
...
Allow the empty string when parsing the relative time in
`parse_relative_time_at_date()`. The empty string represents zero time
delta.
2025-02-08 15:05:50 -05:00
Daniel Hofstetter
0965130c1b
fuzz: remove rand dependency
2025-02-08 20:59:19 +01:00
Sylvestre Ledru
51ddcb793f
Merge pull request #113 from jfinkels/set-utc-tz-in-test
...
Explicitly set timezone UTC0 in a unit test
2025-02-08 20:59:03 +01:00
Sylvestre Ledru
7985aa04ba
Merge pull request #112 from jfinkels/fix-add-months-tests
...
Make tests of adding months more resilient
2025-02-08 20:58:39 +01:00
Jeffrey Finkelstein
5c0c9c4405
Explicitly set timezone UTC0 in a unit test
2025-02-08 14:48:06 -05:00
Jeffrey Finkelstein
8dd8051eb7
Make tests of adding months more resilient
...
Protect against a situation where adding one month to the current day
would cause an overflow in the next month in some unit tests of
`parse_relative_time`. For example, adding one month to March 31
should overflow to May 1 because April only has 30 days. This is a
difference in the behavior we want for our library compared with the
behavior of `chrono`.
2025-02-08 14:42:38 -05:00
Daniel Hofstetter
073b9f7b70
Merge pull request #109 from uutils/renovate/libfuzzer-sys-0.x-lockfile
...
fix(deps): update rust crate libfuzzer-sys to v0.4.9
2025-01-29 07:16:20 +01:00
renovate[bot]
0318dabe3a
fix(deps): update rust crate libfuzzer-sys to v0.4.9
2025-01-28 18:33:49 +00:00
Sylvestre Ledru
57fe123e21
Merge pull request #107 from cakebaker/bump_nom
...
Bump `nom` & adapt to API changes
2025-01-27 11:14:31 +01:00
Daniel Hofstetter
2fe83cabf1
Adapt to API changes in nom 8.0.0
2025-01-27 10:53:08 +01:00
Daniel Hofstetter
94d4112707
Bump nom from 7.1.3 to 8.0.0
2025-01-27 10:48:23 +01:00
Sylvestre Ledru
eda2422bb3
Merge pull request #103 from jfinkels/parse-datetime-with-single-digit-offset-t-sep
...
Parse datetime with T separator and single digit offset
2025-01-19 23:07:12 +01:00
Jeffrey Finkelstein
c948274c42
Parse datetime with T separator and digit offset
...
Parse a datetime with T separator between date and time, single digit
timezone offset, and no space between time and offset.
2025-01-19 16:38:06 -05:00
Sylvestre Ledru
b209341259
Merge pull request #105 from sylvestre/0.7.0
...
prepare new release 0.7.0
2025-01-19 22:29:25 +01:00