v0.4.34
Notable changes
- In chrono 0.4.34 we finished the work to make all methods const where doing so is supported by rust 1.61.
- We renamed the
Duration
type toTimeDelta
. This removes the confusion between chrono's type and the laterDuration
type in the standard library. It will remain available under the old name as a type alias for compatibility. - The Windows implementation of
Local
is rewritten. The new version avoids panics when the date is outside of the range supported by windows (the years 1601 to 30828), and gives more accurate results during DST transitions. - The
Display
format ofTimeDelta
is modified to conform better to ISO 8601. Previously it converted all values greater than 24 hours to a value with days. This is not correct, as doing so changes the duration from an 'accurate' to a 'nominal' representation to use ISO 8601 terms.
Fixes
- Add missing range check in
TimeDelta::milliseconds
(#1385, thanks @danwilliams) - Remove check for
DurationExceedsTimestamp
inDurationRound
(#1403, thanks @joroKr21) - Fix localized formatting with
%X
(chronotope/pure-rust-locales#12, #1420) - Windows: base implementation on
GetTimeZoneInformationForYear
(#1017)
Additions
- Add
TimeDelta::try_milliseconds
(#1385, thanks @danwilliams) - Add
TimeDelta::new
(#1337) - Add
StrftimeItems::{parse, parse_to_owned}
and more documentation (#1184) - More standard traits and documentation for
format::Locale
(via chronotope/pure-rust-locales#8)
Changes
- Rename
Duration
toTimeDelta
, add type alias (#1406) - Make
TimeDelta
methods const (#1337) - Make remaining methods of
NaiveDate
,NaiveWeek
,NaiveTime
andNaiveDateTime
const where possible (#1337) - Make methods on
DateTime
const where possible (#1400) - Make
Display
format ofTimeDelta
conform better to ISO 8601 (#1328)
Documentation
- Fix the formatting of
timestamp_micros
's Example doc (#1338 via #1386, thanks @emikitas) - Specify branch for GitHub Actions badge and fix link (#1388)
- Don't mention some deprecated methods in docs (#1395)
- Remove stray documentation from main (#1397)
- Improved documentation of
TimeDelta
constructors (#1385, thanks @danwilliams)
Internal
- Switch branch names: 0.4.x releases are the
main
branch, work on 0.5 happens in the0.5.x
branch (#1390, #1402). - Don't use deprecated method in
impl Arbitrary for DateTime
and set up CI test (#1336) - Remove workaround for Rust < 1.61 (#1393)
- Bump
codecov/codecov-action
from 3 to 4 (#1404) - Remove partial support for handling
-0000
offset (#1411) - Move
TOO_LONG
error out ofparse_internal
(#1419)
Thanks to all contributors on behalf of the chrono team, @djc and @pitdicker!