Skip to content

Commit

Permalink
Update Rust crate chrono to 0.4.35 (#432)
Browse files Browse the repository at this point in the history
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

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

---

### Release Notes

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

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

[Compare
Source](https://togithub.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://togithub.com/chronotope/chrono/issues/1234))
- Add getters to `Parsed`
([#&#8203;1465](https://togithub.com/chronotope/chrono/issues/1465))

### Deprecations

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

### Changes/fixes

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

### Documentation

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

### Internal

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

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

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

[Compare
Source](https://togithub.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://togithub.com/chronotope/chrono/issues/1385),
thanks [@&#8203;danwilliams](https://togithub.com/danwilliams))
- Remove check for `DurationExceedsTimestamp` in `DurationRound`
([#&#8203;1403](https://togithub.com/chronotope/chrono/issues/1403),
thanks [@&#8203;joroKr21](https://togithub.com/joroKr21))
- Fix localized formatting with `%X`
([https://github.com/chronotope/pure-rust-locales/pull/12](https://togithub.com/chronotope/pure-rust-locales/pull/12),
[#&#8203;1420](https://togithub.com/chronotope/chrono/issues/1420))
- Windows: base implementation on `GetTimeZoneInformationForYear`
([#&#8203;1017](https://togithub.com/chronotope/chrono/issues/1017))

##### Additions

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

##### Changes

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

##### Documentation

- Fix the formatting of `timestamp_micros`'s Example doc
([#&#8203;1338](https://togithub.com/chronotope/chrono/issues/1338) via
[#&#8203;1386](https://togithub.com/chronotope/chrono/issues/1386),
thanks [@&#8203;emikitas](https://togithub.com/emikitas))
- Specify branch for GitHub Actions badge and fix link
([#&#8203;1388](https://togithub.com/chronotope/chrono/issues/1388))
- Don't mention some deprecated methods in docs
([#&#8203;1395](https://togithub.com/chronotope/chrono/issues/1395))
- Remove stray documentation from main
([#&#8203;1397](https://togithub.com/chronotope/chrono/issues/1397))
- Improved documentation of `TimeDelta` constructors
([#&#8203;1385](https://togithub.com/chronotope/chrono/issues/1385),
thanks [@&#8203;danwilliams](https://togithub.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://togithub.com/chronotope/chrono/issues/1390),
[#&#8203;1402](https://togithub.com/chronotope/chrono/issues/1402)).
- Don't use deprecated method in `impl Arbitrary for DateTime` and set
up CI test
([#&#8203;1336](https://togithub.com/chronotope/chrono/issues/1336))
- Remove workaround for Rust < 1.61
([#&#8203;1393](https://togithub.com/chronotope/chrono/issues/1393))
- Bump `codecov/codecov-action` from 3 to 4
([#&#8203;1404](https://togithub.com/chronotope/chrono/issues/1404))
- Remove partial support for handling `-0000` offset
([#&#8203;1411](https://togithub.com/chronotope/chrono/issues/1411))
- Move `TOO_LONG` error out of `parse_internal`
([#&#8203;1419](https://togithub.com/chronotope/chrono/issues/1419))

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

</details>

---

### Configuration

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

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, 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 has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/ziyadedher/evm-bench).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNDUuMCIsInVwZGF0ZWRJblZlciI6IjM3LjI0NS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  • Loading branch information
renovate[bot] authored Mar 18, 2024
1 parent b70d834 commit 206904e
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 3 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.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ keywords = ["benchmark", "ethereum", "smart-contracts", "ethereum-contract", "be

[dependencies]
bytes = "1.5.0"
chrono = "0.4.33"
chrono = "0.4.35"
clap = { version = "4.4.18", features = ["derive"] }
env_logger = "0.11.1"
glob = "0.3.1"
Expand Down

0 comments on commit 206904e

Please sign in to comment.