Skip to content

Declare MSRV (currently 1.85)#371

Merged
wprzytula merged 2 commits intoscylladb:masterfrom
wprzytula:declare-msrv
Sep 23, 2025
Merged

Declare MSRV (currently 1.85)#371
wprzytula merged 2 commits intoscylladb:masterfrom
wprzytula:declare-msrv

Conversation

@wprzytula
Copy link
Copy Markdown
Contributor

@wprzytula wprzytula commented Sep 23, 2025

This PR sets rust-version in Cargo.toml to the lowest possible MSRV (1.85) that supports Rust edition 2024, which is currently used in the project. The same version happens to be the current MSRV of the Rust Driver.

Because Clippy is now MSRV-aware, it no longer complains - because the fixes require Rust version that is higher than the MSRV - so the CI now passes.

Additionally, the building.md bullet about supported rustc versions now claims our support only for the most recent stable Rust version. This will allow bumping MSRV freely in case a new useful feature is released, as we would do in the past.

Pre-review checklist

  • I have split my patch into logically separate commits.
  • All commit messages clearly explain what they change and why.
  • PR description sums up the changes and reasons why they should be introduced.
  • [ ] I have implemented Rust unit tests for the features/changes introduced.
  • [ ] I have enabled appropriate tests in Makefile in {SCYLLA,CASSANDRA}_(NO_VALGRIND_)TEST_FILTER.
  • [ ] I added appropriate Fixes: annotations to PR description.

Since we already are using edition 2024, this workspace uses Cargo
resolver v3. Therefore, once we declare the MSRV, Cargo will
automatically ensure that all dependencies also support it.
Another benefit is that tools like `cargo clippy` will no longer
complain about possible improvements that are not supported by the MSRV.

The policy adopted is to follow MSRV of the Scylla Rust Driver, which is
currently set to 1.85.
@wprzytula wprzytula self-assigned this Sep 23, 2025
@wprzytula wprzytula added this to the 1.0.0 milestone Sep 23, 2025
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR establishes a Minimum Supported Rust Version (MSRV) of 1.85 for the project by declaring it in Cargo.toml and updating the documentation to reference the ScyllaDB Rust Driver's MSRV requirements.

  • Adds rust-version = "1.85" to Cargo.toml to declare MSRV
  • Updates building.md documentation to reference the ScyllaDB Rust Driver's MSRV on crates.io instead of maintaining a hardcoded version

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
scylla-rust-wrapper/Cargo.toml Adds rust-version field declaring MSRV as 1.85
docs/source/topics/building.md Updates documentation to reference dynamic MSRV from ScyllaDB Rust Driver

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.


* Compilers:
- rustc 1.82+ (as part of the Rust toolchain, available at [rustup.rs]);
- rustc (as part of the Rust toolchain, available at [rustup.rs]). The minimum supported version is derived from ScyllaDB Rust Driver - see [its entry on crates.io](https://crates.io/crates/scylla) for details (_Metadata_ box on the right side, _"Minimum Supported Rust Version"_).
Copy link

Copilot AI Sep 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[nitpick] The sentence structure is unclear and could be confusing. Consider revising to: 'rustc (as part of the Rust toolchain, available at [rustup.rs]). The minimum supported version is derived from the ScyllaDB Rust Driver - see its entry on crates.io for details (check the Metadata box on the right side for Minimum Supported Rust Version).'

Suggested change
- rustc (as part of the Rust toolchain, available at [rustup.rs]). The minimum supported version is derived from ScyllaDB Rust Driver - see [its entry on crates.io](https://crates.io/crates/scylla) for details (_Metadata_ box on the right side, _"Minimum Supported Rust Version"_).
- rustc (as part of the Rust toolchain, available at [rustup.rs]). The minimum supported version is derived from the ScyllaDB Rust Driver - see [its entry on crates.io](https://crates.io/crates/scylla) for details (check the _Metadata_ box on the right side for _Minimum Supported Rust Version_).

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This doesn't convince me.

As in the past we would take advantage of new Rust features, we prefer
to retain this flexibility by not declaring a specific MSRV in the
user-facing documentation. Instead, we now simply state that the
officially supported version is the most recent stable, and that older
versions may work, but we don't guarantee that.

This leaves us the freedom to use new Rust features as needed, by simply
bumping the MSRV in Cargo.toml as needed.
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated no new comments.


Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Copy link
Copy Markdown
Contributor

@Lorak-mmk Lorak-mmk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please update PR description.

@wprzytula wprzytula merged commit 335c399 into scylladb:master Sep 23, 2025
10 checks passed
@wprzytula wprzytula deleted the declare-msrv branch September 23, 2025 09:43
@Lorak-mmk Lorak-mmk modified the milestones: 1.0.0, 0.6.0 Dec 16, 2025
@wprzytula wprzytula mentioned this pull request Dec 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants