[needs-packaging] rustc-1.90

Bug #2129716 reported by Max Gilmour
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu
In Progress
Wishlist
Max Gilmour

Bug Description

Rust 1.90 was released on 18 September, 2025. As time passes, the minimal supported Rust version (MSRV) of crucial Rust-based packages in the archive increases. It is crucial to keep up with upstream Rust development to ensure that Rust packages in the Ubuntu archive build without issue.

The most notable of Rust 1.90's changes is the move to LLD as the default linker (instead of BFD) for amd64 Ubuntu machines[1].

[1]: https://blog.rust-lang.org/2025/09/01/rust-lld-on-1.90.0-stable/

Revision history for this message
Jeremy Bícha (jbicha) wrote :

Could you build either rustc-1.89 or rustc-1.90 with llvm (etc.) 21 instead of 20?

llvm-toolchain-20 is being removed from Debian and eventually Ubuntu, while Ubuntu has just switched the default llvm to 21.

Revision history for this message
Max Gilmour (maxgmr) wrote :

> Could you build either rustc-1.89 or rustc-1.90 with llvm (etc.) 21 instead of 20?

Sure thing, I'll make sure 1.90 builds with LLVM 21. Will I need to make all *previous* Rust releases in 26.04 use LLVM 21? That is, will I need to go back and update 1.89 and 1.88?

Revision history for this message
Jeremy Bícha (jbicha) wrote :

You'll be removing rustc 1.88 and 1.89 once you finish switching rust-defaults to 1.90, right? And that will probably happen within a few weeks, right?

If so, then I don't see a need for you to update 1.88 or 1.89 for the llvm transition.

Revision history for this message
Max Gilmour (maxgmr) wrote :

> You'll be removing rustc 1.88 and 1.89 once you finish switching rust-defaults to 1.90, right?

Yes, I will. I'll just make sure 1.90 uses LLVM 21 then.

Max Gilmour (maxgmr)
Changed in ubuntu:
status: New → In Progress
Revision history for this message
Max Gilmour (maxgmr) wrote :

rustc-1.90 is ready for i386 whitelist addition, review, and sponsorship.

=====
Links
=====
PPA: https://launchpad.net/~maxgmr/+archive/ubuntu/rustc-1.90-merge
Source: https://git.launchpad.net/~canonical-foundations/ubuntu/+source/rustc/log/?h=merge-1.90
amd64 Autopkgtests: https://autopkgtest.ubuntu.com/results/autopkgtest-resolute-maxgmr-rustc-1.90-merge/resolute/amd64/r/rustc-1.90/20251202_194344_96a8a@/log.gz

=======================
Notable Package Changes
=======================
- The toolchain now uses LLVM 21.
- Vendored crate stubs are now generated as an orig tarball component rather than a patch, which fixes LP: #2132631 (which affects rustc-1.89). This means that d/control now reports vendored dependencies accurately.
- The version string format has been changed to be more succinct and similar to other packages in the archive.

=======
Lintian
=======
The four "source-is-missing" errors are caused by four minimized JS files containing single lines which are too long for Lintian to process.

E: rustc-1.90 source: field-too-long Vendored-Sources-Rust (13536 chars > 5000)
E: rustc-1.90 source: source-is-missing [vendor/mdbook-0.4.52/src/front-end/js/clipboard.min.js]
E: rustc-1.90 source: source-is-missing [vendor/mdbook-0.4.52/src/front-end/searcher/elasticlunr.min.js]
E: rustc-1.90 source: source-is-missing [vendor/mdbook-0.4.52/src/front-end/searcher/mark.min.js]
E: rustc-1.90 source: source-is-missing [vendor/salsa-0.23.0/book/mermaid.min.js]
E: rustc-1.90 source: version-substvar-for-external-package Depends ${binary:Version} cargo-1.90 -> rustc [debian/control:306]
W: rustc-1.90 source: mismatched-override missing-license-paragraph-in-dep5-copyright debian/copyright mpl-2.0+ (*) [debian/source/lintian-overrides:21]
W: rustc-1.90 source: unknown-field Vendored-Sources-Rust
N: 0 hints overridden; 1 unused override
N: Some overrides were ignored.
N: Use --verbose for more information.

Revision history for this message
Skia (skia) wrote :

@maxgmr: I'm looking into reviewing this.

In the meantime, could you see to re-upload this branch to your PPA, given that resolute has changed a lot since you did it. Same story for autopkgtest, and also please trigger them for all architectures (`ppa tests --show-urls` can help here).

Additionally, since I can't really review deeply the rust-toolchain specific parts of that, could you have one of your other team members give a +1 here?

Revision history for this message
Max Gilmour (maxgmr) wrote :

Sounds good to me. Since I can't do an MP, is there a "formal" way for my teammates to review it, or should I just verbally get them to take a look?

Revision history for this message
Skia (skia) wrote :

Well, whatever works. I did do a review by manually running `git diff merge-1.89..merge-1.90`, I guess your teammates can do the same. What I'd like before sponsoring is some validation by someone knowing the rust compiler world, to sanity check that we're not going to break the world.

Revision history for this message
Brent Kerby (blkerby) wrote :

I reviewed the changes from merge-1.89 to merge-1.90, and it looks good to me.

Revision history for this message
Max Gilmour (maxgmr) wrote :

Just waiting on riscv64 build and arm64 autopkgtests. Will update when ready.

Revision history for this message
Skia (skia) wrote :

Alright, thanks both. I'll upload when everything looks good!

Revision history for this message
Max Gilmour (maxgmr) wrote :
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.