Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update time to fix build failures on rust 1.80.0 #134

Merged
merged 1 commit into from
Aug 24, 2024

Conversation

eopb
Copy link
Contributor

@eopb eopb commented Aug 24, 2024

Rust 1.80.0 introduced a new trait implementation which caused builds of old versions of the time crate to fail.

Since cargo clone depends on one of these old time versions, builds with rust 1.80.0 or later fail:

error[E0282]: type annotations needed for `Box<_>`
  --> /home/ethan/.cargo/registry/src/index.crates.io-6f17d22bba15001f/time-0.3.30/src/format_description/parse/mod.rs:83:9
   |
83 |     let items = format_items
   |         ^^^^^
...
86 |     Ok(items.into())
   |              ---- type must be known at this point
   |
help: consider giving `items` an explicit type, where the placeholders `_` are specified
   |
83 |     let items: Box<_> = format_items
   |              ++++++++

For more information about this error, try `rustc --explain E0282`.
error: could not compile `time` (lib) due to 1 previous error

Updating to a version of time with this regression fixed, with cargo update -p time, fixes the build of cargo clone.

It would also be helpful to get a new release of cargo clone after this is merged, since this is also causing the cargo clone package to fail on NixOS.

Rust `1.80.0` introduced a [new trait implementation](rust-lang/rust#99969) which caused builds of [old versions of the `time` crate to fail](rust-lang/rust#127343).

Since `cargo clone` depends on one of these old `time` versions, builds with rust `1.80.0` or later fail:

```
error[E0282]: type annotations needed for `Box<_>`
  --> /home/ethan/.cargo/registry/src/index.crates.io-6f17d22bba15001f/time-0.3.30/src/format_description/parse/mod.rs:83:9
   |
83 |     let items = format_items
   |         ^^^^^
...
86 |     Ok(items.into())
   |              ---- type must be known at this point
   |
help: consider giving `items` an explicit type, where the placeholders `_` are specified
   |
83 |     let items: Box<_> = format_items
   |              ++++++++

For more information about this error, try `rustc --explain E0282`.
error: could not compile `time` (lib) due to 1 previous error
```

Updating to a version of time with this regression fixed, with `cargo update -p time`, fixes the build of `cargo clone`.

It would also be helpful to get a new release of `cargo clone` after this is merged, since this is also causing the `cargo clone` package to [fail on NixOS](NixOS/nixpkgs#332957 (comment)).
@JanLikar
Copy link
Owner

Thank you, I appreciate it!

@JanLikar JanLikar self-requested a review August 24, 2024 16:19
@JanLikar JanLikar merged commit 6ef9e01 into JanLikar:master Aug 24, 2024
1 check passed
@eopb eopb deleted the push-tywxomptropt branch August 24, 2024 16:34
@JanLikar
Copy link
Owner

JanLikar commented Aug 24, 2024

@eopb I released v1.2.3 and created a PR in nixpkgs. See NixOS/nixpkgs#337058. Thanks again for fixing it, I wasn't even aware of the issue. I figured it was just a problem with CI.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants