Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update MSRVs to be accurate #6742

Open
wants to merge 8 commits into
base: master
Choose a base branch
from
24 changes: 10 additions & 14 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -122,24 +122,20 @@ jobs:
uses: ./.github/actions/setup-builder
- name: Install cargo-msrv
run: cargo install cargo-msrv
- name: Downgrade arrow dependencies
run: cargo update -p ahash --precise 0.8.7
Copy link
Contributor Author

Choose a reason for hiding this comment

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

ahash's MSRV now is 1.60, so we don't need this downgrade anymore.

- name: Check arrow
working-directory: arrow
run: cargo msrv --log-target stdout verify
- name: Check parquet
working-directory: parquet
run: cargo msrv --log-target stdout verify
- name: Check arrow-flight
working-directory: arrow-flight
run: cargo msrv --log-target stdout verify
- name: Downgrade object_store dependencies
working-directory: object_store
# Necessary because tokio 1.30.0 updates MSRV to 1.63
# and url 2.5.1, updates to 1.67
run: |
cargo update -p tokio --precise 1.29.1
cargo update -p url --precise 2.5.0
- name: Check object_store
working-directory: object_store
run: cargo msrv --log-target stdout verify
- name: Check all packages
Copy link
Contributor

Choose a reason for hiding this comment

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

This is awesome ❤️

run: |
find . -name Cargo.toml | while read -r dir
do
cargo msrv --log-target stdout verify --manifest-path "$dir" || exit 1
done
# If no packages are using the workspace's rust-version, then it's out of date
Copy link
Contributor

Choose a reason for hiding this comment

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

Given that cargo msrv can't currently check a crate that uses the workspace MSRV, maybe we should just remove the workspace MSRV in favor of explicit versions in all the crates 🤔

- name: Verify workspace rust-version is used
run: |
grep -r '^rust-version *= *{ *workspace *= *true *}' -q --exclude-dir '*target*' --exclude-dir .git .
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ include = [
"Cargo.toml",
]
edition = "2021"
rust-version = "1.62"
rust-version = "1.70"

[workspace.dependencies]
arrow = { version = "53.2.0", path = "./arrow", default-features = false }
Expand Down
1 change: 0 additions & 1 deletion arrow-avro/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,3 @@ crc = { version = "3.0", optional = true }


[dev-dependencies]

2 changes: 1 addition & 1 deletion arrow-flight/gen/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ name = "gen"
description = "Code generation for arrow-flight"
version = "0.1.0"
edition = { workspace = true }
rust-version = { workspace = true }
rust-version = "1.56"
authors = { workspace = true }
homepage = { workspace = true }
repository = { workspace = true }
Expand Down
2 changes: 1 addition & 1 deletion arrow-integration-testing/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ authors = { workspace = true }
license = { workspace = true }
edition = { workspace = true }
publish = false
rust-version = { workspace = true }
rust-version = "1.75.0"

[lib]
crate-type = ["lib", "cdylib"]
Expand Down
1 change: 0 additions & 1 deletion arrow-json/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -60,4 +60,3 @@ rand = { version = "0.8", default-features = false, features = ["std", "std_rng"
[[bench]]
name = "serde"
harness = false

2 changes: 1 addition & 1 deletion arrow-pyarrow-integration-testing/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ authors = ["Apache Arrow <[email protected]>"]
license = "Apache-2.0"
keywords = [ "arrow" ]
edition = "2021"
rust-version = "1.62"
rust-version = "1.70"
publish = false

[lib]
Expand Down
1 change: 0 additions & 1 deletion arrow-row/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,3 @@ arrow-ord = { workspace = true }
rand = { version = "0.8", default-features = false, features = ["std", "std_rng"] }

[features]

2 changes: 1 addition & 1 deletion arrow-schema/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ license = { workspace = true }
keywords = { workspace = true }
include = { workspace = true }
edition = { workspace = true }
rust-version = { workspace = true }
rust-version = "1.64"

[lib]
name = "arrow_schema"
Expand Down
2 changes: 1 addition & 1 deletion arrow/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ include = [
"Cargo.toml",
]
edition = { workspace = true }
rust-version = "1.70.0"
rust-version = { workspace = true }

[lib]
name = "arrow"
Expand Down
2 changes: 1 addition & 1 deletion object_store/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ readme = "README.md"
description = "A generic object store interface for uniformly interacting with AWS S3, Google Cloud Storage, Azure Blob Storage and local files."
keywords = ["object", "storage", "cloud"]
repository = "https://github.com/apache/arrow-rs/tree/master/object_store"
rust-version = "1.64.0"
rust-version = "1.62.1"

[package.metadata.docs.rs]
all-features = true
Expand Down
2 changes: 1 addition & 1 deletion parquet/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ authors = { workspace = true }
keywords = ["arrow", "parquet", "hadoop"]
readme = "README.md"
edition = { workspace = true }
rust-version = "1.70.0"
rust-version = { workspace = true }

[target.'cfg(target_arch = "wasm32")'.dependencies]
ahash = { version = "0.8", default-features = false, features = ["compile-time-rng"] }
Expand Down
Loading