guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#56684] [PATCH 1/3] Bump rust 1.57 -> 1.58


From: Jim Newsome
Subject: [bug#56684] [PATCH 1/3] Bump rust 1.57 -> 1.58
Date: Thu, 21 Jul 2022 20:33:51 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0

On 7/21/22 19:08, Maxime Devos wrote:
E.g., you could try going directly from 1.57 to 1.60 without intermediate steps. If that's possible, it would be less inefficient to compile.

I dug into this a bit.

The Rust bootstrapping docs say to use x.py to download the stage0 compiler. https://rustc-dev-guide.rust-lang.org/building/bootstrapping.html

x.py is a thin wrapper around bootstrap.py: https://github.com/rust-lang/rust/blob/master/x.py

bootstrap.py decides what compiler to use as stage0 from stage0.json: https://github.com/rust-lang/rust/blob/master/src/bootstrap/bootstrap.py

1.62.1 was compiled with 1.61.0: https://github.com/rust-lang/rust/blob/1.62.1/src/stage0.json#L6

1.61.0 was compiled with 1.60.0: https://github.com/rust-lang/rust/blob/1.61.0/src/stage0.json#L6

1.60.0 was compiled with 1.59.0: https://github.com/rust-lang/rust/blob/1.60.0/src/stage0.json#L6

1.59.0 was compiled with 1.58.0: https://github.com/rust-lang/rust/blob/1.59.0/src/stage0.json#L6

1.58.0 was compiled with 1.57.0: https://github.com/rust-lang/rust/blob/1.58.0/src/stage0.json#L6

So it looks like each release was compiled with a compiler from one feature-release back. In my patchset, I took the highest patch-version at each feature-version, since I don't think it makes sense to include outdated patch-levels, and it should be safe.

Trying to compile a release with an older compiler than it was originally compiled with seems unlikely to go well. It's not explicitly stated that it *won't* work, but it seems unlikely that it would, and would take a lot of time to verify by trial and error.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]