From 49b1cb3e69218bd559cc8ead84a3c692cc0e8ef9 Mon Sep 17 00:00:00 2001 From: Jack Grigg Date: Thu, 19 Jan 2023 23:48:24 +0000 Subject: [PATCH 1/2] Bump MSRV for `zcash_primitives` and dependents to 1.60 The MSRVs of the component crates are left as-is, partly because our dependencies don't require us to bump them, and partly because those crates have no pending changes and are relatively stable. We also plan to split the component crates out into a separate repository, where it will be easier to have a separate MSRV. Closes zcash/librustzcash#759. --- .github/workflows/ci.yml | 16 ++++++++-------- rust-toolchain | 1 - rust-toolchain.toml | 2 ++ zcash_client_backend/CHANGELOG.md | 1 + zcash_client_backend/Cargo.toml | 2 +- zcash_client_sqlite/CHANGELOG.md | 2 ++ zcash_client_sqlite/Cargo.toml | 2 +- zcash_extensions/CHANGELOG.md | 2 +- zcash_extensions/Cargo.toml | 2 +- zcash_history/CHANGELOG.md | 2 ++ zcash_history/Cargo.toml | 2 +- zcash_primitives/CHANGELOG.md | 1 + zcash_primitives/Cargo.toml | 2 +- zcash_proofs/CHANGELOG.md | 1 + zcash_proofs/Cargo.toml | 2 +- 15 files changed, 24 insertions(+), 16 deletions(-) delete mode 100644 rust-toolchain create mode 100644 rust-toolchain.toml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 73a85cfea..11be28d7f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,7 +14,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions-rs/toolchain@v1 with: - toolchain: 1.56.1 + toolchain: 1.60.0 override: true - name: Fetch path to Zcash parameters @@ -58,7 +58,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions-rs/toolchain@v1 with: - toolchain: 1.56.1 + toolchain: 1.60.0 override: true - name: Add target run: rustup target add ${{ matrix.target }} @@ -81,7 +81,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions-rs/toolchain@v1 with: - toolchain: 1.56.1 + toolchain: 1.60.0 override: true # Build benchmarks to prevent bitrot - name: Build benchmarks @@ -91,20 +91,20 @@ jobs: args: --all --benches clippy: - name: Clippy (1.56.1) + name: Clippy (1.60.0) timeout-minutes: 30 runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: actions-rs/toolchain@v1 with: - toolchain: 1.56.1 + toolchain: 1.60.0 components: clippy override: true - name: Run clippy uses: actions-rs/clippy-check@v1 with: - name: Clippy (1.56.1) + name: Clippy (1.60.0) token: ${{ secrets.GITHUB_TOKEN }} args: --all-features --all-targets -- -D warnings @@ -177,7 +177,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions-rs/toolchain@v1 with: - toolchain: 1.56.1 + toolchain: 1.60.0 override: true - name: cargo fetch uses: actions-rs/cargo@v1 @@ -200,7 +200,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions-rs/toolchain@v1 with: - toolchain: 1.56.1 + toolchain: 1.60.0 override: true # Ensure all code has been formatted with rustfmt diff --git a/rust-toolchain b/rust-toolchain deleted file mode 100644 index 43c989b55..000000000 --- a/rust-toolchain +++ /dev/null @@ -1 +0,0 @@ -1.56.1 diff --git a/rust-toolchain.toml b/rust-toolchain.toml new file mode 100644 index 000000000..948d27daa --- /dev/null +++ b/rust-toolchain.toml @@ -0,0 +1,2 @@ +[toolchain] +channel = "1.60.0" diff --git a/zcash_client_backend/CHANGELOG.md b/zcash_client_backend/CHANGELOG.md index 8adb70606..57116fb77 100644 --- a/zcash_client_backend/CHANGELOG.md +++ b/zcash_client_backend/CHANGELOG.md @@ -8,6 +8,7 @@ and this library adheres to Rust's notion of ## [Unreleased] ### Changed +- MSRV is now 1.60.0. - `zcash_client_backend::data_api::wallet::shield_transparent_funds` now takes a `shielding_threshold` argument that can be used to specify the minimum value allowed as input to a shielding transaction. Previously diff --git a/zcash_client_backend/Cargo.toml b/zcash_client_backend/Cargo.toml index a965a3917..d8e73af23 100644 --- a/zcash_client_backend/Cargo.toml +++ b/zcash_client_backend/Cargo.toml @@ -11,7 +11,7 @@ repository = "https://github.com/zcash/librustzcash" readme = "README.md" license = "MIT OR Apache-2.0" edition = "2021" -rust-version = "1.56.1" +rust-version = "1.60" # Exclude proto files so crates.io consumers don't need protoc. exclude = ["*.proto"] diff --git a/zcash_client_sqlite/CHANGELOG.md b/zcash_client_sqlite/CHANGELOG.md index 19c171bb3..841873d2c 100644 --- a/zcash_client_sqlite/CHANGELOG.md +++ b/zcash_client_sqlite/CHANGELOG.md @@ -6,6 +6,8 @@ and this library adheres to Rust's notion of [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Changed +- MSRV is now 1.60.0. ## [0.4.2] - 2022-12-13 ### Fixed diff --git a/zcash_client_sqlite/Cargo.toml b/zcash_client_sqlite/Cargo.toml index c8cb5c48a..7588fa3cc 100644 --- a/zcash_client_sqlite/Cargo.toml +++ b/zcash_client_sqlite/Cargo.toml @@ -11,7 +11,7 @@ repository = "https://github.com/zcash/librustzcash" readme = "README.md" license = "MIT OR Apache-2.0" edition = "2021" -rust-version = "1.56.1" +rust-version = "1.60" [dependencies] zcash_client_backend = { version = "0.6", path = "../zcash_client_backend" } diff --git a/zcash_extensions/CHANGELOG.md b/zcash_extensions/CHANGELOG.md index 980b98cc4..e047fd137 100644 --- a/zcash_extensions/CHANGELOG.md +++ b/zcash_extensions/CHANGELOG.md @@ -7,4 +7,4 @@ and this library adheres to Rust's notion of ## [Unreleased] Initial release. -MSRV is 1.56.1 +MSRV is 1.60.0. diff --git a/zcash_extensions/Cargo.toml b/zcash_extensions/Cargo.toml index 73b6d95b1..ceeeda22f 100644 --- a/zcash_extensions/Cargo.toml +++ b/zcash_extensions/Cargo.toml @@ -7,7 +7,7 @@ homepage = "https://github.com/zcash/librustzcash" repository = "https://github.com/zcash/librustzcash" license = "MIT OR Apache-2.0" edition = "2021" -rust-version = "1.56.1" +rust-version = "1.60" [dependencies] blake2b_simd = "1" diff --git a/zcash_history/CHANGELOG.md b/zcash_history/CHANGELOG.md index 206e854a9..0116eb9de 100644 --- a/zcash_history/CHANGELOG.md +++ b/zcash_history/CHANGELOG.md @@ -6,6 +6,8 @@ and this library adheres to Rust's notion of [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Changed +- MSRV is now 1.60.0. ## [0.3.0] - 2022-05-11 ### Added diff --git a/zcash_history/Cargo.toml b/zcash_history/Cargo.toml index 2cec07fdb..0050ac7b4 100644 --- a/zcash_history/Cargo.toml +++ b/zcash_history/Cargo.toml @@ -3,7 +3,7 @@ name = "zcash_history" version = "0.3.0" authors = ["NikVolf "] edition = "2021" -rust-version = "1.56.1" +rust-version = "1.60" license = "MIT/Apache-2.0" documentation = "https://docs.rs/zcash_history/" description = "Library for Zcash blockchain history tools" diff --git a/zcash_primitives/CHANGELOG.md b/zcash_primitives/CHANGELOG.md index af969f624..a61fb4525 100644 --- a/zcash_primitives/CHANGELOG.md +++ b/zcash_primitives/CHANGELOG.md @@ -11,6 +11,7 @@ and this library adheres to Rust's notion of values and value commitments. ### Changed +- MSRV is now 1.60.0. - `zcash_primitives::transaction::components::sapling::builder`: - `SaplingBuilder::add_output` now takes a `zcash_primitives::sapling::value::NoteValue`. diff --git a/zcash_primitives/Cargo.toml b/zcash_primitives/Cargo.toml index 41f7ae208..2d6626b1f 100644 --- a/zcash_primitives/Cargo.toml +++ b/zcash_primitives/Cargo.toml @@ -11,7 +11,7 @@ repository = "https://github.com/zcash/librustzcash" readme = "README.md" license = "MIT OR Apache-2.0" edition = "2021" -rust-version = "1.56.1" +rust-version = "1.60" categories = ["cryptography::cryptocurrencies"] [package.metadata.docs.rs] diff --git a/zcash_proofs/CHANGELOG.md b/zcash_proofs/CHANGELOG.md index d32522a1f..39665a384 100644 --- a/zcash_proofs/CHANGELOG.md +++ b/zcash_proofs/CHANGELOG.md @@ -12,6 +12,7 @@ and this library adheres to Rust's notion of - A `value_commitment_opening` field on `Spend` and `Output`. ### Changed +- MSRV is now 1.60.0. - Value commitments now use `zcash_primitives::sapling::value::ValueCommitment` instead of `jubjub::ExtendedPoint` in `zcash_proofs::sapling`: - `SaplingProvingContext::{spend_proof, output_proof}` diff --git a/zcash_proofs/Cargo.toml b/zcash_proofs/Cargo.toml index 26e379c62..aad9c67a0 100644 --- a/zcash_proofs/Cargo.toml +++ b/zcash_proofs/Cargo.toml @@ -10,7 +10,7 @@ repository = "https://github.com/zcash/librustzcash" readme = "README.md" license = "MIT OR Apache-2.0" edition = "2021" -rust-version = "1.56.1" +rust-version = "1.60" categories = ["cryptography::cryptocurrencies"] [package.metadata.docs.rs] From 809427f6bd55354733a0e6021ef6587de20b6ed2 Mon Sep 17 00:00:00 2001 From: Jack Grigg Date: Fri, 20 Jan 2023 00:03:10 +0000 Subject: [PATCH 2/2] criterion 0.4 --- zcash_primitives/Cargo.toml | 4 ++-- zcash_proofs/Cargo.toml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/zcash_primitives/Cargo.toml b/zcash_primitives/Cargo.toml index 2d6626b1f..9111a3d15 100644 --- a/zcash_primitives/Cargo.toml +++ b/zcash_primitives/Cargo.toml @@ -86,14 +86,14 @@ features = ["pre-zip-212"] [dev-dependencies] chacha20poly1305 = "0.10" -criterion = "0.3" +criterion = "0.4" proptest = "1.0.0" assert_matches = "1.3.0" rand_xorshift = "0.3" orchard = { version = "0.3", features = ["test-dependencies"] } [target.'cfg(unix)'.dev-dependencies] -pprof = { version = "0.9", features = ["criterion", "flamegraph"] } # MSRV 1.56 +pprof = { version = "0.11", features = ["criterion", "flamegraph"] } # MSRV 1.56 [features] transparent-inputs = ["hdwallet", "ripemd", "secp256k1"] diff --git a/zcash_proofs/Cargo.toml b/zcash_proofs/Cargo.toml index aad9c67a0..8e89fe802 100644 --- a/zcash_proofs/Cargo.toml +++ b/zcash_proofs/Cargo.toml @@ -39,11 +39,11 @@ wagyu-zcash-parameters = { version = "0.2", optional = true } [dev-dependencies] byteorder = "1" -criterion = "0.3" +criterion = "0.4" rand_xorshift = "0.3" [target.'cfg(unix)'.dev-dependencies] -pprof = { version = "0.9", features = ["criterion", "flamegraph"] } # MSRV 1.56 +pprof = { version = "0.11", features = ["criterion", "flamegraph"] } # MSRV 1.56 [features] default = ["local-prover", "multicore"]