build: Enable MSRV-aware resolver v3#5426
Merged
Conversation
Switch from Cargo resolver v2 to v3 to enable automatic MSRV-aware dependency resolution. This ensures dependencies respect our MSRV of 1.75.0 without manual version pinning. The resolver v3 requires Cargo 1.84.0+ to parse the configuration, but our development toolchain (1.89.0) supports it. Dependencies will now be automatically constrained to versions compatible with Rust 1.75.0. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
max-sixty
added a commit
to max-sixty/prql
that referenced
this pull request
Sep 25, 2025
This reverts commit 117f9db. We intend to re-revert this shortly after investigating why CI didn't catch the issues with resolver v3. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
3 tasks
max-sixty
added a commit
to max-sixty/prql
that referenced
this pull request
Sep 25, 2025
The recent resolver v3 upgrade (PRQL#5426) broke MSRV compatibility but wasn't caught by CI because Cargo.toml changes don't trigger the test-msrv job. Resolver v3 requires Rust 1.81+ to parse, but our MSRV is 1.75. This adds Cargo.toml to the nightly filter list so that fundamental build configuration changes will trigger MSRV testing. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This was referenced Sep 25, 2025
max-sixty
added a commit
to max-sixty/prql
that referenced
this pull request
Sep 25, 2025
This enables Cargo's MSRV-aware resolver (v3) while maintaining our ability to test with Rust 1.75. ## Changes - Enable resolver v3 for MSRV-aware dependency resolution - Add sed patch in MSRV test job to temporarily downgrade to resolver v2 during testing ## Context Resolver v3 requires Rust 1.84+ to parse the configuration, but our library MSRV is 1.75. This creates a split MSRV situation: - Library MSRV: 1.75 (the code itself works with this version) - Development/build toolchain: 1.84+ (required for resolver v3) The CI workaround allows us to verify the library MSRV while benefiting from resolver v3's automatic dependency version management for development. Supersedes PRQL#5426, PRQL#5428, PRQL#5430 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
4 tasks
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
Changes
Cargo.tomlto useresolver = "3"instead ofresolver = "2"Benefits
rust-versionRequirements
Test plan
cargo updaterespects MSRV constraints (shows "Locking 279 packages to latest Rust 1.75.0 compatible versions")🤖 Generated with Claude Code