Update Rust crate time to v0.3.49 #58

Merged
kitten merged 1 commit from renovate/time-0.x-lockfile into main 2026-06-14 06:38:48 +02:00
Owner

This PR contains the following updates:

Package Type Update Change
time (source) dependencies patch 0.3.470.3.49

Release Notes

time-rs/time (time)

v0.3.49

Compare Source

Fixed
  • Due to a long-standing bug in the Rust compiler, v0.3.48 caused a number of crates to stop
    compiling. A patch has been added that avoids triggering the bug.

v0.3.48

Compare Source

Security
  • The number of digits parsed by [subsecond digits:1+] is capped at 32 to avoid parsing unbounded
    user input. Digits after the 9th have no semantic meaning.
  • Explicitly specify #[repr] for Weekday. The value of the variants is relied upon in multiple
    locations for soundness. The practical effect of this change is nothing, as Rust has always mapped
    C-like enums to 0..N in memory.
Compatibility
  • Non-UTF-8 formatting and parsing is deprecated without replacement. It is recommended to only
    format and parse valid UTF-8.
  • format_description::parse is deprecated. It is recommended to use
    format_description::parse_borrowed::<3> or format_description::parse_owned::<3>.
Added
  • All types in the unit module have a generic parameter, though this is currently not used for
    much. Usage will be expanded in the future.
  • Comparisons between types in the unit module and the generic Unit type are permitted.
  • Support for rand 0.10
  • Version 3 format descriptions
    • Only UTF-8 is supported. As a side effect of this, [ignore] requires that the remaining input
      not begin mid-codepoint.
    • Representation is deliberately opaque to allow for arbitrary changes going forward.
    • format:false is supported on [optional] components. This is not possible in version 1 and
      version 2 format descriptions due to API compatibility.
    • The time::serde::format_description! macro uses a new, clearer syntax for version 3.
      • time::serde::format_description!(mod foo [Date] = "[year]-[month]-[day]");
      • Unlike version 1 and version 2 format descriptions, the type is not automatically brought into
        scope. You must import it yourself.
    • Nonsensical combinations of modifiers are rejected. For example, you cannot specify
      case-sensitivity when parsing a numerical month.
    • [year] defaults to range:standard
    • Components and modifiers are case sensitive (and always lowercase).
Changed
  • The convert module has been renamed to unit.
Fixed
  • Macro hygiene has been improved by specifying re-exports.
  • Fix handling of T in ISO 8601
  • Support parsing the full range of UTC offset hours
  • Version 1 nested format descriptions may now start with a component. Previously, a lexer bug
    unintentionally prohibited this.
  • Error when ISO week date overflows the max year. This would previously panic.
  • Error when padding is specified in strftime format descriptions but the component is not. This
    would previously panic.
Performance

Huge performance gains across multiple areas, including:

  • optimizing equality checks for Duration
  • optimizing Display impls for all major types
  • optimizing the formatting of components and well-known formats
  • precomputing metadata when formatting, reducing allocations
  • adding fast path for typical RFC 2822 usage
  • optimizing strftime parsing
  • refactoring format description parsing

Depending on the area, gains range from 3× to even 11×.


Configuration

📅 Schedule: (UTC)

  • 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: 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.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [time](https://time-rs.github.io) ([source](https://github.com/time-rs/time)) | dependencies | patch | `0.3.47` → `0.3.49` | --- ### Release Notes <details> <summary>time-rs/time (time)</summary> ### [`v0.3.49`](https://github.com/time-rs/time/blob/HEAD/CHANGELOG.md#0349-2026-06-13) [Compare Source](https://github.com/time-rs/time/compare/v0.3.48...v0.3.49) ##### Fixed - Due to a long-standing bug in the Rust compiler, v0.3.48 caused a number of crates to stop compiling. A patch has been added that avoids triggering the bug. ### [`v0.3.48`](https://github.com/time-rs/time/blob/HEAD/CHANGELOG.md#0348-2026-06-12-YANKED) [Compare Source](https://github.com/time-rs/time/compare/v0.3.47...v0.3.48) ##### Security - The number of digits parsed by `[subsecond digits:1+]` is capped at 32 to avoid parsing unbounded user input. Digits after the 9<sup>th</sup> have no semantic meaning. - Explicitly specify `#[repr]` for `Weekday`. The value of the variants is relied upon in multiple locations for soundness. The practical effect of this change is nothing, as Rust has always mapped C-like `enum`s to 0..N in memory. ##### Compatibility - Non-UTF-8 formatting and parsing is deprecated without replacement. It is recommended to only format and parse valid UTF-8. - `format_description::parse` is deprecated. It is recommended to use `format_description::parse_borrowed::<3>` or `format_description::parse_owned::<3>`. ##### Added - All types in the `unit` module have a generic parameter, though this is currently not used for much. Usage will be expanded in the future. - Comparisons between types in the `unit` module and the generic `Unit` type are permitted. - Support for `rand` 0.10 - Version 3 format descriptions - Only UTF-8 is supported. As a side effect of this, `[ignore]` requires that the remaining input not begin mid-codepoint. - Representation is deliberately opaque to allow for arbitrary changes going forward. - `format:false` is supported on `[optional]` components. This is not possible in version 1 and version 2 format descriptions due to API compatibility. - The `time::serde::format_description!` macro uses a new, clearer syntax for version 3. - `time::serde::format_description!(mod foo [Date] = "[year]-[month]-[day]");` - Unlike version 1 and version 2 format descriptions, the type is not automatically brought into scope. You must import it yourself. - Nonsensical combinations of modifiers are rejected. For example, you cannot specify case-sensitivity when parsing a numerical month. - `[year]` defaults to `range:standard` - Components and modifiers are case sensitive (and always lowercase). ##### Changed - The `convert` module has been renamed to `unit`. ##### Fixed - Macro hygiene has been improved by specifying re-exports. - Fix handling of `T` in ISO 8601 - Support parsing the full range of UTC offset hours - Version 1 nested format descriptions may now start with a component. Previously, a lexer bug unintentionally prohibited this. - Error when ISO week date overflows the max year. This would previously panic. - Error when padding is specified in `strftime` format descriptions but the component is not. This would previously panic. ##### Performance Huge performance gains across multiple areas, including: - optimizing equality checks for `Duration` - optimizing `Display` impls for all major types - optimizing the formatting of components and well-known formats - precomputing metadata when formatting, reducing allocations - adding fast path for typical RFC 2822 usage - optimizing `strftime` parsing - refactoring format description parsing Depending on the area, gains range from 3× to even 11×. </details> --- ### Configuration 📅 **Schedule**: (UTC) - 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**: 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://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xNTAuMCIsInVwZGF0ZWRJblZlciI6IjQzLjE1MC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Update Rust crate time to v0.3.49
All checks were successful
Build and Test / account (push) Successful in 4m40s
e633d8af49
kitten merged commit d310f81376 into main 2026-06-14 06:38:48 +02:00
kitten deleted branch renovate/time-0.x-lockfile 2026-06-14 06:38:48 +02:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
spacebar/account!58
No description provided.