From: Leonardo Lima Date: Thu, 2 Oct 2025 04:42:28 +0000 (+1000) Subject: chore(msrv): bump MSRV to `1.85.0` X-Git-Url: http://internal-gitweb-vhost/script/%22https:/database/scripts/struct.SatisfactionMaterial.html?a=commitdiff_plain;h=8c153080e7afc05a4bf02367dfa4955e10adab78;p=bdk chore(msrv): bump MSRV to `1.85.0` - update all references to previous 1.63.0 MSRV. - update the rust-version to 1.85.0. - update the CI to not exclude bdk_electrum anymore. - update the ci/pin-msrv.sh to 1.85.0. --- diff --git a/.github/workflows/cont_integration.yml b/.github/workflows/cont_integration.yml index d6e5d9ef..4786d5e0 100644 --- a/.github/workflows/cont_integration.yml +++ b/.github/workflows/cont_integration.yml @@ -28,8 +28,7 @@ jobs: rust: - version: ${{ needs.prepare.outputs.rust_version }} clippy: true - - version: 1.63.0 # Overall MSRV - - version: 1.75.0 # Specific MSRV for `bdk_electrum` + - version: 1.85.0 # Overall MSRV features: - --no-default-features --features miniscript/no-std,bdk_chain/hashbrown - --all-features @@ -46,31 +45,15 @@ jobs: profile: minimal - name: Rust Cache uses: Swatinem/rust-cache@v2.7.8 - - name: Pin dependencies for 1.75 - if: matrix.rust.version == '1.75.0' - run: | - cargo update -p home --precise "0.5.9" - cargo update -p native-tls --precise "0.2.13" - cargo update -p idna_adapter --precise "1.1.0" - cargo update -p base64ct --precise "1.6.0" - cargo update -p minreq --precise "2.13.2" - cargo update -p rayon --precise "1.10.0" - cargo update -p rayon-core --precise "1.12.1" - cargo update -p time --precise "0.3.41" - name: Pin dependencies for MSRV - if: matrix.rust.version == '1.63.0' + if: matrix.rust.version == '1.85.0' run: ./ci/pin-msrv.sh - name: Build + Test env: MATRIX_RUST_VERSION: ${{ matrix.rust.version }} run: | - if [ $MATRIX_RUST_VERSION = '1.63.0' ]; then - cargo build --workspace --exclude 'example_*' --exclude 'bdk_electrum' ${{ matrix.features }} - cargo test --workspace --exclude 'example_*' --exclude 'bdk_electrum' ${{ matrix.features }} - else cargo build --workspace --exclude 'example_*' ${{ matrix.features }} cargo test --workspace --exclude 'example_*' ${{ matrix.features }} - fi check-no-std: needs: prepare diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b7778f78..a9a90465 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -46,7 +46,7 @@ Every new feature should be covered by functional tests where possible. When refactoring, structure your PR to make it easy to review and don't hesitate to split it into multiple small, focused PRs. -The Minimum Supported Rust Version is **1.63.0** (enforced by our CI). +The Minimum Supported Rust Version is **1.85.0** (enforced by our CI). Commits should cover both the issue fixed and the solution's rationale. These [guidelines](https://chris.beams.io/posts/git-commit/) should be kept in mind. Commit messages follow the ["Conventional Commits 1.0.0"](https://www.conventionalcommits.org/en/v1.0.0/) to make commit histories easier to read by humans and automated tools. All commits must be [GPG signed](https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits). diff --git a/README.md b/README.md index 635489d8..472222ad 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ MIT or Apache-2.0 Licensed CI Status - Rustc Version 1.63.0+ + Rustc Version 1.85.0+ Chat on Discord

@@ -58,15 +58,14 @@ Fully working examples of how to use these components are in `/examples`: ## Minimum Supported Rust Version (MSRV) -The following BDK crates maintains a MSRV of 1.63.0. To build these crates with the MSRV of 1.63.0 you will need to pin dependencies by running the [`pin-msrv.sh`](./ci/pin-msrv.sh) script. +The following BDK crates maintains a MSRV of 1.85.0. To build these crates with the MSRV of 1.85.0 you will need to pin dependencies by running the [`pin-msrv.sh`](./ci/pin-msrv.sh) script. - `bdk_core` - `bdk_chain` - `bdk_bitcoind_rpc` - `bdk_esplora` - `bdk_file_store` - -The MSRV of the `bdk_electrum` crate is 1.75.0. +- `bdk_electrum` ## Just diff --git a/ci/pin-msrv.sh b/ci/pin-msrv.sh index 421a6837..0384cc45 100755 --- a/ci/pin-msrv.sh +++ b/ci/pin-msrv.sh @@ -8,27 +8,4 @@ set -euo pipefail # To pin deps, switch toolchain to MSRV and execute the below updates # cargo clean -# rustup override set 1.63.0 - -cargo update -p zstd-sys --precise "2.0.8+zstd.1.5.5" -cargo update -p time --precise "0.3.20" -cargo update -p home --precise "0.5.5" -cargo update -p proptest --precise "1.2.0" -cargo update -p url --precise "2.5.0" -cargo update -p tokio --precise "1.38.1" -cargo update -p reqwest --precise "0.12.4" -cargo update -p security-framework-sys --precise "2.11.1" -cargo update -p csv --precise "1.3.0" -cargo update -p unicode-width --precise "0.1.13" -cargo update -p native-tls --precise "0.2.13" -cargo update -p flate2 --precise "1.0.35" -cargo update -p bzip2-sys --precise "0.1.12" -cargo update -p ring --precise "0.17.12" -cargo update -p once_cell --precise "1.20.3" -cargo update -p base64ct --precise "1.6.0" -cargo update -p minreq --precise "2.13.2" -cargo update -p tracing-core --precise "0.1.33" -cargo update -p webpki-roots@1.0.3 --precise "1.0.1" -cargo update -p rayon --precise "1.10.0" -cargo update -p rayon-core --precise "1.12.1" -cargo update -p socket2@0.6.0 --precise "0.5.10" +# rustup override set 1.85.0 diff --git a/clippy.toml b/clippy.toml index 69478cea..730b7f37 100644 --- a/clippy.toml +++ b/clippy.toml @@ -1 +1 @@ -msrv="1.63.0" +msrv="1.85.0" diff --git a/crates/bitcoind_rpc/Cargo.toml b/crates/bitcoind_rpc/Cargo.toml index 2b8e03d2..572d1f52 100644 --- a/crates/bitcoind_rpc/Cargo.toml +++ b/crates/bitcoind_rpc/Cargo.toml @@ -2,7 +2,7 @@ name = "bdk_bitcoind_rpc" version = "0.22.0" edition = "2021" -rust-version = "1.63" +rust-version = "1.85.0" homepage = "https://bitcoindevkit.org" repository = "https://github.com/bitcoindevkit/bdk" documentation = "https://docs.rs/bdk_bitcoind_rpc" diff --git a/crates/chain/Cargo.toml b/crates/chain/Cargo.toml index dd7d2bb3..895045e2 100644 --- a/crates/chain/Cargo.toml +++ b/crates/chain/Cargo.toml @@ -2,7 +2,7 @@ name = "bdk_chain" version = "0.23.2" edition = "2021" -rust-version = "1.63" +rust-version = "1.85.0" homepage = "https://bitcoindevkit.org" repository = "https://github.com/bitcoindevkit/bdk" documentation = "https://docs.rs/bdk_chain" diff --git a/crates/core/Cargo.toml b/crates/core/Cargo.toml index 4fc71c50..a56863d9 100644 --- a/crates/core/Cargo.toml +++ b/crates/core/Cargo.toml @@ -2,7 +2,7 @@ name = "bdk_core" version = "0.6.2" edition = "2021" -rust-version = "1.63" +rust-version = "1.85.0" homepage = "https://bitcoindevkit.org" repository = "https://github.com/bitcoindevkit/bdk" documentation = "https://docs.rs/bdk_core" diff --git a/crates/electrum/Cargo.toml b/crates/electrum/Cargo.toml index 8fdd7823..4a6dc4d5 100644 --- a/crates/electrum/Cargo.toml +++ b/crates/electrum/Cargo.toml @@ -2,6 +2,7 @@ name = "bdk_electrum" version = "0.23.2" edition = "2021" +rust-version = "1.85.0" homepage = "https://bitcoindevkit.org" repository = "https://github.com/bitcoindevkit/bdk" documentation = "https://docs.rs/bdk_electrum" diff --git a/crates/esplora/Cargo.toml b/crates/esplora/Cargo.toml index e4c553f7..a052916a 100644 --- a/crates/esplora/Cargo.toml +++ b/crates/esplora/Cargo.toml @@ -2,6 +2,7 @@ name = "bdk_esplora" version = "0.22.1" edition = "2021" +rust-version = "1.85.0" homepage = "https://bitcoindevkit.org" repository = "https://github.com/bitcoindevkit/bdk" documentation = "https://docs.rs/bdk_esplora" diff --git a/crates/file_store/Cargo.toml b/crates/file_store/Cargo.toml index 714c40e1..8fbdc358 100644 --- a/crates/file_store/Cargo.toml +++ b/crates/file_store/Cargo.toml @@ -2,6 +2,7 @@ name = "bdk_file_store" version = "0.22.0" edition = "2021" +rust-version = "1.85.0" license = "MIT OR Apache-2.0" repository = "https://github.com/bitcoindevkit/bdk" documentation = "https://docs.rs/bdk_file_store" diff --git a/crates/testenv/Cargo.toml b/crates/testenv/Cargo.toml index eff58a41..2a707fe3 100644 --- a/crates/testenv/Cargo.toml +++ b/crates/testenv/Cargo.toml @@ -2,7 +2,7 @@ name = "bdk_testenv" version = "0.13.1" edition = "2021" -rust-version = "1.63" +rust-version = "1.85.0" homepage = "https://bitcoindevkit.org" repository = "https://github.com/bitcoindevkit/bdk" documentation = "https://docs.rs/bdk_testenv"