build: bump Launchpad PPA toolchain and MSRV to Rust 1.96#231
Merged
Conversation
Rust 1.96 has shipped (latest patch 1.96.1), so move the packaging toolchain off 1.93. This raises the declared MSRV in Cargo.toml to 1.96 to keep it aligned with the Launchpad PPA build toolchain, updates the debian/control and debian/control.source build dependencies to rustc-1.96/cargo-1.96, bumps the rustc/cargo version gate in every debian/rules variant to ge 1.96, refreshes debian/README.packaging, and sets vendor_rust to 1.96.1 for all distros in the Launchpad PPA workflow. The CI msrv job reads rust-version from Cargo.toml, so it tracks the new value automatically. Jammy and Noble still resolve their build toolchain from the ~lablup/+archive/ubuntu/rustc-release dependency PPA, which must publish rustc-1.96 and cargo-1.96 before those builds can resolve the dependency.
inureyes
added a commit
that referenced
this pull request
Jul 19, 2026
…r_rust to 1.96.0 (#232) ## Summary Follow-up to #231. Verified the actual state of the `~lablup/+archive/ubuntu/rustc-release` PPA and adjusted the packaging config to match reality. ## PPA verification Queried the Launchpad API (`getPublishedSources`). `rustc-1.96` is published for all three target series: | Source | Version | Series | | --- | --- | --- | | rustc-1.96 | 1.96.0+dfsg1-0ubuntu1~22.04.1 | jammy | | rustc-1.96 | 1.96.0+dfsg1-0ubuntu1~24.04.1 | noble | | rustc-1.96 | 1.96.0+dfsg1-0ubuntu1~26.04.2 | resolute | So the #231 precondition (PPA must ship `rustc-1.96`/`cargo-1.96`) is already satisfied, and the PPA serves Resolute (26.04) as well. The PPA patch is 1.96.0, not 1.96.1. ## Changes - Resolute now documents the same dependent-PPA toolchain source as jammy and noble in `launchpad_ppa.yml` and `debian/README.packaging`, instead of claiming it builds from the 26.04 archive without the dependency PPA. `debian/control` already prefers the versioned `rustc-1.96` alternative, so no control change is needed. - `vendor_rust` drops from 1.96.1 to 1.96.0 for all distros so the runner-side lockfile validation and `cargo vendor` step run on the exact patch Launchpad compiles with, removing any patch-level skew between the vendoring toolchain and the build toolchain. ## Verification Workflow and docs only; no Rust source or `debian/control` build-deps changed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Rust 1.96 has shipped (latest patch 1.96.1), so this moves the Debian/Launchpad packaging toolchain and the declared MSRV off 1.93 onto 1.96.
Changes
Cargo.toml: raiserust-versionfrom 1.93 to 1.96, keeping the MSRV aligned with the Launchpad PPA build toolchain as documented in the surrounding comment. The CImsrvjob reads this value fromCargo.toml, so it tracks the bump automatically.debian/control,debian/control.source: update build dependencies torustc-1.96 | rustc (>= 1.96)andcargo-1.96 | cargo (>= 1.96).debian/rules,debian/rules.launchpad,debian/rules.launchpad-simple,debian/rules.source: prefer therustc-1.96/cargo-1.96toolchain and raise thedpkg --compare-versionsgate toge 1.96.debian/README.packaging: refresh the documented Rust version requirement to 1.96..github/workflows/launchpad_ppa.yml: setvendor_rustto1.96.1for jammy, noble, and resolute, and update the resolute toolchain-source note to Rust 1.96+.The exact patch
1.96.1is used only forvendor_rust(the toolchain the CI runner installs to vendor crates); package build-deps and the MSRV correctly use the1.96minor series per Debian and Cargo conventions.Preconditions before the PPA workflow will build
~lablup/+archive/ubuntu/rustc-releasedependency PPA. That PPA must publishrustc-1.96andcargo-1.96before those builds can resolve the dependency.Verification
Config, packaging, and workflow only; no Rust source changed.
cargo fmt --checkis clean. CItestuses the stable toolchain andmsrvfetches 1.96 viadtolnay/rust-toolchain.