opened 09:32AM - 07 Aug 24 UTC
6.topic: rust
5. scope: tracking
Dear maintainers,
Rust 1.80.0 contains a couple of changes that break some pa…ckages: [an unfixable build regression](https://github.com/rust-lang/rust/issues/127343), and a warning for unrecognized cfg values that some packages treat as an error. Most commonly, the required fix is just to update the "time" crate. I've opened PRs to fix as many regressions as I can, but I can't do all of them.
1.80.0 is currently in staging-next, so will probably be in Nixpkgs master in the next 1-2 weeks. It wasn't really feasible to hold back, because packages tend to start requiring new Rust versions very soon after release, and it also didn't make a lot of sense to keep 1.79.0 as well, because many of the affected packages haven't been touched in a year or more, so there'd be no assurance we'd be able to remove it any time soon.
So, some effort will be required from you to keep your package building with 1.80.0. Usually, the process will be like this:
- Figure out what's broken. Usually, but not always, this is that the "time" crate needs to be updated.
- Get it fixed upstream, if it isn't already.
- Ask upstream to release a new version, if they haven't already.
- Update the package in Nixpkgs.
As a last resort, we can patch if we need to, but especially for packages that include a Cargo.lock in Nixpkgs, this is a pain.
I'll post the affected packages in comments, because GitHub limits how many mentions an issue body can contain.
Sorry for the inconvenience. I've lost a lot of the last week to coordinating the update, collecting broken packages, etc., but hopefully by spreading out the work from here it won't take too much of anybody else's time.