Skip to content

Commit

Permalink
fix(deps): update rust crate chrono to v0.4.38 (#46)
Browse files Browse the repository at this point in the history
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [chrono](https://redirect.github.com/chronotope/chrono) | dependencies
| patch | `0.4.33` -> `0.4.38` |

---

### Release Notes

<details>
<summary>chronotope/chrono (chrono)</summary>

###
[`v0.4.38`](https://redirect.github.com/chronotope/chrono/releases/tag/v0.4.38)

[Compare
Source](https://redirect.github.com/chronotope/chrono/compare/v0.4.37...v0.4.38)

This release bring a ca. 20% improvement to the performance of the
formatting code, and a convenient `days_since` method for the `Weekday`
type.

Chrono 0.4.38 also removes the long deprecated `rustc-serialize`
feature. Support for `rustc-serialize` will be [soft-destabilized in the
next Rust
edition](https://redirect.github.com/rust-lang/rust/pull/116016).
Removing the feature will not break existing users of the feature; Cargo
will just not update dependents that rely on it to newer versions of
chrono.

In chrono 0.4.36 we made an accidental breaking change by switching to
`derive(Copy)` for `DateTime` instead of a manual implementation. It is
reverted in this release.

##### Removals

- Remove `rustc-serialize` feature
([#&#8203;1548](https://redirect.github.com/chronotope/chrono/issues/1548),
thanks
[@&#8203;workingjubilee](https://redirect.github.com/workingjubilee))

##### Additions

- Add `Weekday::days_since`
([#&#8203;1249](https://redirect.github.com/chronotope/chrono/issues/1249),
based on
[#&#8203;216](https://redirect.github.com/chronotope/chrono/issues/216)
by [@&#8203;clarfonthey](https://redirect.github.com/clarfonthey))
- Add `TimeDelta::checked_mul` and `TimeDelta::checked_div`
([#&#8203;1565](https://redirect.github.com/chronotope/chrono/issues/1565),
thanks [@&#8203;Zomtir](https://redirect.github.com/Zomtir))

##### Fixes

- Return error when rounding with a zero duration
([#&#8203;1474](https://redirect.github.com/chronotope/chrono/issues/1474),
thanks [@&#8203;Dav1dde](https://redirect.github.com/Dav1dde))
- Manually implement `Copy` for `DateTime` if offset is `Copy`
([#&#8203;1573](https://redirect.github.com/chronotope/chrono/issues/1573))

##### Internal

- Inline `test_encodable_json` and `test_decodable_json` functions
([#&#8203;1550](https://redirect.github.com/chronotope/chrono/issues/1550))
- CI: Reduce combinations in `cargo hack check`
([#&#8203;1553](https://redirect.github.com/chronotope/chrono/issues/1553))
- Refactor formatting code
([#&#8203;1335](https://redirect.github.com/chronotope/chrono/issues/1335))
- Optimize number formatting
([#&#8203;1558](https://redirect.github.com/chronotope/chrono/issues/1558))
- Only package files needed for building and testing
([#&#8203;1554](https://redirect.github.com/chronotope/chrono/issues/1554))

Thanks to all contributors on behalf of the chrono team,
[@&#8203;djc](https://redirect.github.com/djc) and
[@&#8203;pitdicker](https://redirect.github.com/pitdicker)!

###
[`v0.4.37`](https://redirect.github.com/chronotope/chrono/releases/tag/v0.4.37)

[Compare
Source](https://redirect.github.com/chronotope/chrono/compare/v0.4.36...v0.4.37)

Version 0.4.36 introduced an unexpected breaking change and was yanked.
In it `LocalResult` was renamed to `MappedLocalTime` to avoid the
impression that it is a `Result` type were some of the results are
errors. For backwards compatibility a type alias with the old name was
added.

As it turns out there is one case where a type alias behaves differently
from the regular enum: you can't import enum variants from a type alias
with `use chrono::LocalResult::*`. With 0.4.37 we make the new name
`MappedLocalTime` the alias, but keep using it in function signatures
and the documentation as much as possible.

See also the release notes of [chrono
0.4.36](https://redirect.github.com/chronotope/chrono/releases/tag/v0.4.36)
from yesterday for the yanked release.

###
[`v0.4.36`](https://redirect.github.com/chronotope/chrono/releases/tag/v0.4.36)

[Compare
Source](https://redirect.github.com/chronotope/chrono/compare/v0.4.35...v0.4.36)

This release un-deprecates the methods on `TimeDelta` that were
deprecated with the 0.4.35 release because of the churn they are causing
for the ecosystem.

New is the `DateTime::with_time()` method. As an example of when it is
useful:

```rust
use chrono::{Local, NaiveTime};
// Today at 12:00:00
let today_noon = Local::now().with_time(NaiveTime::from_hms_opt(12, 0, 0).unwrap());
```

##### Additions

- Add `DateTime::with_time()`
([#&#8203;1510](https://redirect.github.com/chronotope/chrono/issues/1510))

##### Deprecations

- Revert `TimeDelta` deprecations
([#&#8203;1543](https://redirect.github.com/chronotope/chrono/issues/1543))
- Deprecate `TimeStamp::timestamp_subsec_nanos`, which was missed in the
0.4.35 release
([#&#8203;1486](https://redirect.github.com/chronotope/chrono/issues/1486))

##### Documentation

- Correct version number of deprecation notices
([#&#8203;1486](https://redirect.github.com/chronotope/chrono/issues/1486))
- Fix some typos
([#&#8203;1505](https://redirect.github.com/chronotope/chrono/issues/1505))
- Slightly improve serde documentation
([#&#8203;1519](https://redirect.github.com/chronotope/chrono/issues/1519))
- Main documentation: simplify links and reflow text
([#&#8203;1535](https://redirect.github.com/chronotope/chrono/issues/1535))

##### Internal

- CI: Lint benchmarks
([#&#8203;1489](https://redirect.github.com/chronotope/chrono/issues/1489))
- Remove unnessary `Copy` and `Send` impls
([#&#8203;1492](https://redirect.github.com/chronotope/chrono/issues/1492),
thanks [@&#8203;erickt](https://redirect.github.com/erickt))
- Backport streamlined `NaiveDate` unit tests
([#&#8203;1500](https://redirect.github.com/chronotope/chrono/issues/1500),
thanks [@&#8203;Zomtir](https://redirect.github.com/Zomtir))
- Rename `LocalResult` to `TzResolution`, add alias
([#&#8203;1501](https://redirect.github.com/chronotope/chrono/issues/1501))
- Update windows-bindgen to 0.55
([#&#8203;1504](https://redirect.github.com/chronotope/chrono/issues/1504))
- Avoid duplicate imports, which generate warnings on nightly
([#&#8203;1507](https://redirect.github.com/chronotope/chrono/issues/1507))
- Add extra debug assertions to `NaiveDate::from_yof`
([#&#8203;1518](https://redirect.github.com/chronotope/chrono/issues/1518))
- Some small simplifications to `DateTime::date_naive` and
`NaiveDate::diff_months`
([#&#8203;1530](https://redirect.github.com/chronotope/chrono/issues/1530))
- Remove `unwrap` in Unix `Local` type
([#&#8203;1533](https://redirect.github.com/chronotope/chrono/issues/1533))
- Use different method to ignore feature-dependent doctests
([#&#8203;1534](https://redirect.github.com/chronotope/chrono/issues/1534))

Thanks to all contributors on behalf of the chrono team,
[@&#8203;djc](https://redirect.github.com/djc) and
[@&#8203;pitdicker](https://redirect.github.com/pitdicker)!

###
[`v0.4.35`](https://redirect.github.com/chronotope/chrono/releases/tag/v0.4.35)

[Compare
Source](https://redirect.github.com/chronotope/chrono/compare/v0.4.34...v0.4.35)

Most of our efforts have shifted to improving the API for a 0.5 release,
for which cleanups and refactorings are landing on the 0.4.x branch.

The most significant changes in this release are two sets of
deprecations.

- We deprecated all timestamp-related methods on `NaiveDateTime`. The
reason is that a timestamp is defined to be in UTC. The `NaiveDateTime`
type doesn't know the offset from UTC, so it was technically wrong to
have these methods. The alternative is to use the similar methods on the
`DateTime<Utc>` type, or from the `TimeZone` trait.

Converting from `NaiveDateTime` to `DateTime<Utc>` is simple with
`.and_utc()`, and in the other direction with `.naive_utc()`.

- The panicking constructors of `TimeDelta` (the new name of the
`Duration` type) are deprecated. This was the last part of chrono that
defaulted to panicking on error, dating from before rust 1.0.

- A nice change is that `NaiveDate` now includes a niche. So now
`Option<NaiveDate>`, `Option<NaiveDateTime>` and `Option<DateTime<Tz>>`
are the same size as their base types.

- `format::Numeric` and `format::Fixed` are marked as `non_exhaustive`.
This will allow us to improve our formatting and parsing support, and we
have reason to believe this breaking change will have little to no
impact on users.

##### Additions

- Add `DateTime::{from_timestamp_micros, from_timestamp_nanos}`
([#&#8203;1234](https://redirect.github.com/chronotope/chrono/issues/1234))
- Add getters to `Parsed`
([#&#8203;1465](https://redirect.github.com/chronotope/chrono/issues/1465))

##### Deprecations

- Deprecate timestamp methods on `NaiveDateTime`
([#&#8203;1473](https://redirect.github.com/chronotope/chrono/issues/1473))
- Deprecate panicking constructors of `TimeDelta`
([#&#8203;1450](https://redirect.github.com/chronotope/chrono/issues/1450))

##### Changes/fixes

- Use `NonZeroI32` inside `NaiveDate`
([#&#8203;1207](https://redirect.github.com/chronotope/chrono/issues/1207))
- Mark `format::Numeric` and `format::Fixed` as `non_exhaustive`
([#&#8203;1430](https://redirect.github.com/chronotope/chrono/issues/1430))
- `Parsed` fixes to error values
([#&#8203;1439](https://redirect.github.com/chronotope/chrono/issues/1439))
- Use `overflowing_naive_local` in `DateTime::checked_add*`
([#&#8203;1333](https://redirect.github.com/chronotope/chrono/issues/1333))
- Do complete range checks in `Parsed::set_*`
([#&#8203;1465](https://redirect.github.com/chronotope/chrono/issues/1465))

##### Documentation

- Rustfmt doctests
([#&#8203;1452](https://redirect.github.com/chronotope/chrono/issues/1452))
- Improve docs for crate features
([#&#8203;1455](https://redirect.github.com/chronotope/chrono/issues/1455),
thanks [@&#8203;edmorley](https://redirect.github.com/edmorley))
- Add more documentation and examples to `Parsed`
([#&#8203;1439](https://redirect.github.com/chronotope/chrono/issues/1439))

##### Internal

- Refactor `internals` module
([#&#8203;1428](https://redirect.github.com/chronotope/chrono/issues/1428),
[#&#8203;1429](https://redirect.github.com/chronotope/chrono/issues/1429),
[#&#8203;1431](https://redirect.github.com/chronotope/chrono/issues/1431),
[#&#8203;1432](https://redirect.github.com/chronotope/chrono/issues/1432),
[#&#8203;1433](https://redirect.github.com/chronotope/chrono/issues/1433),
[#&#8203;1438](https://redirect.github.com/chronotope/chrono/issues/1438))
- CI: test cross-compiling to `x86_64-unknown-illumos` instead of
Solaris
([#&#8203;1437](https://redirect.github.com/chronotope/chrono/issues/1437))
- CI: lint Windows target, fix clippy warning
([#&#8203;1441](https://redirect.github.com/chronotope/chrono/issues/1441))
- CI: only run `cargo hack check` on Linux
([#&#8203;1442](https://redirect.github.com/chronotope/chrono/issues/1442))
- Update windows-bindgen to 0.54
([#&#8203;1462](https://redirect.github.com/chronotope/chrono/issues/1462),
[#&#8203;1483](https://redirect.github.com/chronotope/chrono/issues/1483))
- Simplify error value of `parse_internal`
([#&#8203;1459](https://redirect.github.com/chronotope/chrono/issues/1459))
- Simplify `SerdeError`
([#&#8203;1458](https://redirect.github.com/chronotope/chrono/issues/1458))
- Simplify `NaiveDate::from_isoywd` a bit
([#&#8203;1464](https://redirect.github.com/chronotope/chrono/issues/1464))

Thanks to all contributors on behalf of the chrono team,
[@&#8203;djc](https://redirect.github.com/djc) and
[@&#8203;pitdicker](https://redirect.github.com/pitdicker)!

###
[`v0.4.34`](https://redirect.github.com/chronotope/chrono/releases/tag/v0.4.34)

[Compare
Source](https://redirect.github.com/chronotope/chrono/compare/v0.4.33...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 to `TimeDelta`. This removes the
confusion between chrono's type and the later `Duration` 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 of `TimeDelta` 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`
([#&#8203;1385](https://redirect.github.com/chronotope/chrono/issues/1385),
thanks [@&#8203;danwilliams](https://redirect.github.com/danwilliams))
- Remove check for `DurationExceedsTimestamp` in `DurationRound`
([#&#8203;1403](https://redirect.github.com/chronotope/chrono/issues/1403),
thanks [@&#8203;joroKr21](https://redirect.github.com/joroKr21))
- Fix localized formatting with `%X`
([https://github.com/chronotope/pure-rust-locales/pull/12](https://redirect.github.com/chronotope/pure-rust-locales/pull/12),
[#&#8203;1420](https://redirect.github.com/chronotope/chrono/issues/1420))
- Windows: base implementation on `GetTimeZoneInformationForYear`
([#&#8203;1017](https://redirect.github.com/chronotope/chrono/issues/1017))

##### Additions

- Add `TimeDelta::try_milliseconds`
([#&#8203;1385](https://redirect.github.com/chronotope/chrono/issues/1385),
thanks [@&#8203;danwilliams](https://redirect.github.com/danwilliams))
- Add `TimeDelta::new`
([#&#8203;1337](https://redirect.github.com/chronotope/chrono/issues/1337))
- Add `StrftimeItems::{parse, parse_to_owned}` and more documentation
([#&#8203;1184](https://redirect.github.com/chronotope/chrono/issues/1184))
- More standard traits and documentation for `format::Locale` (via
[https://github.com/chronotope/pure-rust-locales/pull/8](https://redirect.github.com/chronotope/pure-rust-locales/pull/8))

##### Changes

- Rename `Duration` to `TimeDelta`, add type alias
([#&#8203;1406](https://redirect.github.com/chronotope/chrono/issues/1406))
- Make `TimeDelta` methods const
([#&#8203;1337](https://redirect.github.com/chronotope/chrono/issues/1337))
- Make remaining methods of `NaiveDate`, `NaiveWeek`, `NaiveTime` and
`NaiveDateTime` const where possible
([#&#8203;1337](https://redirect.github.com/chronotope/chrono/issues/1337))
- Make methods on `DateTime` const where possible
([#&#8203;1400](https://redirect.github.com/chronotope/chrono/issues/1400))
- Make `Display` format of `TimeDelta` conform better to ISO 8601
([#&#8203;1328](https://redirect.github.com/chronotope/chrono/issues/1328))

##### Documentation

- Fix the formatting of `timestamp_micros`'s Example doc
([#&#8203;1338](https://redirect.github.com/chronotope/chrono/issues/1338)
via
[#&#8203;1386](https://redirect.github.com/chronotope/chrono/issues/1386),
thanks [@&#8203;emikitas](https://redirect.github.com/emikitas))
- Specify branch for GitHub Actions badge and fix link
([#&#8203;1388](https://redirect.github.com/chronotope/chrono/issues/1388))
- Don't mention some deprecated methods in docs
([#&#8203;1395](https://redirect.github.com/chronotope/chrono/issues/1395))
- Remove stray documentation from main
([#&#8203;1397](https://redirect.github.com/chronotope/chrono/issues/1397))
- Improved documentation of `TimeDelta` constructors
([#&#8203;1385](https://redirect.github.com/chronotope/chrono/issues/1385),
thanks [@&#8203;danwilliams](https://redirect.github.com/danwilliams))

##### Internal

- Switch branch names: 0.4.x releases are the `main` branch, work on 0.5
happens in the `0.5.x` branch
([#&#8203;1390](https://redirect.github.com/chronotope/chrono/issues/1390),
[#&#8203;1402](https://redirect.github.com/chronotope/chrono/issues/1402)).
- Don't use deprecated method in `impl Arbitrary for DateTime` and set
up CI test
([#&#8203;1336](https://redirect.github.com/chronotope/chrono/issues/1336))
- Remove workaround for Rust < 1.61
([#&#8203;1393](https://redirect.github.com/chronotope/chrono/issues/1393))
- Bump `codecov/codecov-action` from 3 to 4
([#&#8203;1404](https://redirect.github.com/chronotope/chrono/issues/1404))
- Remove partial support for handling `-0000` offset
([#&#8203;1411](https://redirect.github.com/chronotope/chrono/issues/1411))
- Move `TOO_LONG` error out of `parse_internal`
([#&#8203;1419](https://redirect.github.com/chronotope/chrono/issues/1419))

Thanks to all contributors on behalf of the chrono team,
[@&#8203;djc](https://redirect.github.com/djc) and
[@&#8203;pitdicker](https://redirect.github.com/pitdicker)!

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/rustic-rs/rustic_scheduler).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC44MC4wIiwidXBkYXRlZEluVmVyIjoiMzguODAuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiQS1kZXBlbmRlbmNpZXMiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  • Loading branch information
renovate[bot] authored Sep 21, 2024
1 parent 3aba5af commit e7fd0af
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit e7fd0af

Please sign in to comment.