-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
1.18 doesn't build with 1.17 #42543
Comments
Same on Void Linux, |
tagging with both infra and compiler because i don't know whose fault it is here. |
src/bootstrap/bootstrap.py reads |
Same on Slackware linux. Our build was using |
FWIW, we currently use this hack to make it use the cargo from $PATH, which then works fine: https://github.com/voidlinux/void-packages/blob/master/srcpkgs/rust/patches/cargo-hack.patch |
I suspect at least some of the problem here is from #41779, which will hopefully be fixed soon. I plan to look into it more today, though I wasn't able to reproduce yet. |
…crichton Use custom cargo/rustc paths when parsing flags. Fixes rust-lang#41779, probably also rust-lang#42543 (I think they're duplicates). I'm not entirely happy with the implementation, since it means we parse the configuration twice, but it's the minimal solution. I think the other choice is to move both calls to Config::parse inside Flags::parse and merge them, but I don't know if that's a good idea. r? @alexcrichton
…crichton Use custom cargo/rustc paths when parsing flags. Fixes rust-lang#41779, probably also rust-lang#42543 (I think they're duplicates). I'm not entirely happy with the implementation, since it means we parse the configuration twice, but it's the minimal solution. I think the other choice is to move both calls to Config::parse inside Flags::parse and merge them, but I don't know if that's a good idea. r? @alexcrichton
1.18 doesn't build using 1.17 with #42695 applied either. |
@kyrias With the same error? Are you using a custom cargo/rustc path? |
Same error, yes. And building without the
|
The problem comes from this piece of code, from
Perhaps it is getting run before the stage0 stuff is copied. |
I know what the problem is, but I haven't figured out how to fix it yet. |
Seems like our CI should be running an |
@Mark-Simulacrum does that patch backport to 1.18? At minimum we need to provide a patch for packagers, and we should discuss whether this is worth a point release. |
I can confirm that backporting both does fix the build for me. It would also be useful if we could set up a system where a few days before the actual release, what's supposed to become the release tarballs would be released to package maintainers so that we could report back if there's any fairly big problems like this, so it could either be fixed or at the very least noted clearly in the release notes. Especially since I've hit build-breaking bugs in 3 of the last 4 rust releases. It's one of the things I rather like about the way SaltStack does releases, there's a private mailing list for package maintainers were we can test the releases first, and also make the built packages available to the SaltStack people so that they can run their tests on our built packages. |
This does not fix the bug for me. |
And you applied both patches? |
Duh, missed the first one. Works fine! 👍 |
…ap, r=alexcrichton Fixes bootstrapping with custom cargo/rustc. config.mk is now always read when parsing the configuration to prevent this from reoccurring in the future, hopefully. Fixes rust-lang#42543. r? @alexcrichton cc @infinity0 @kyrias
…ap, r=alexcrichton Fixes bootstrapping with custom cargo/rustc. config.mk is now always read when parsing the configuration to prevent this from reoccurring in the future, hopefully. Fixes rust-lang#42543. r? @alexcrichton cc @infinity0 @kyrias
…richton Fixes bootstrapping with custom cargo/rustc. config.mk is now always read when parsing the configuration to prevent this from reoccurring in the future, hopefully. Fixes #42543. r? @alexcrichton cc @infinity0 @kyrias
Trying to build 1.18.0 with the Arch Linux 1.17.0 package results in the following error:
(It's built in a clean chroot.)
The text was updated successfully, but these errors were encountered: