fix(ci): resolve Launchpad PPA build failures with Rust 1.85 compatibility#113
Open
appleparan wants to merge 4 commits intolablup:mainfrom
Open
fix(ci): resolve Launchpad PPA build failures with Rust 1.85 compatibility#113appleparan wants to merge 4 commits intolablup:mainfrom
appleparan wants to merge 4 commits intolablup:mainfrom
Conversation
Simulates the Launchpad PPA build environment to catch issues before uploading to the actual PPA. Tests include: - Ubuntu jammy/noble base images - Rust 1.85 (same as rust-1.85-all package) - Network-disabled offline build (--network none) - Vendored dependencies with cargo --frozen Also fixes .gitignore to not exclude .github/ directory. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Pin the following dependencies to versions compatible with Rust 1.85 for Launchpad PPA builds: - sysinfo: 0.33 (0.37 requires Rust 1.88) - libloading: 0.8 (0.9 requires Rust 1.88) - libamdgpu_top: 0.10 (0.11 uses Rust 2024 edition) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Replace `is_multiple_of()` method with equivalent `% == 0` expression for Rust 1.85 compatibility. The `is_multiple_of` method is still an unstable feature (rust-lang/rust#128101) not available in stable Rust. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add #[allow(clippy::needless_lifetimes)] to MetricExporter impls and Visitor impl to suppress false positives in Rust 1.85's clippy. Add manual_is_multiple_of = "allow" to Cargo.toml lints section to allow using modulo operator instead of unstable is_multiple_of() method (rust-lang/rust#128101). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
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
Problem
Launchpad PPA builds were failing due to:
sysinfo@0.37.2requires Rust 1.88libloading@0.9requires Rust 1.88libamdgpu_top@0.11uses Rust 2024 edition (requires Rust 1.88+)is_multiple_of()which is unstable until Rust 1.88+ (rust-lang/rust#128101)Solution
sysinfo: 0.37 → 0.33 (MSRV 1.69)libloading: 0.9 → 0.8 (MSRV 1.71)libamdgpu_top: 0.11 → 0.10 (uses Rust 2021 edition)cycle % FULL_REFRESH_INTERVAL == 0instead ofcycle.is_multiple_of()manual_is_multiple_of = "allow"in Cargo.toml (for latest Rust)#[allow(clippy::needless_lifetimes)]on 9 impl blocks (for Rust 1.85)Test Plan
Closes #112