From 56b8eea64330044fd7761cb2439d7dcca05106f2 Mon Sep 17 00:00:00 2001 From: Daniela Brozzoni Date: Tue, 25 Jul 2023 13:15:47 +0200 Subject: [PATCH 1/2] ci: No need to add the llvm repository for wasm Adding it fails with "The repository'http://apt.llvm.org/focal llvm-toolchain-focal Release' does not have a Release file.", and for some reason it's not needed anymore. --- .github/workflows/cont_integration.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/cont_integration.yml b/.github/workflows/cont_integration.yml index e5771dd1c..d29f81c23 100644 --- a/.github/workflows/cont_integration.yml +++ b/.github/workflows/cont_integration.yml @@ -71,7 +71,6 @@ jobs: uses: actions/checkout@v2 # Install a recent version of clang that supports wasm32 - run: wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - || exit 1 - - run: sudo apt-add-repository "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-10 main" || exit 1 - run: sudo apt-get update || exit 1 - run: sudo apt-get install -y libclang-common-10-dev clang-10 libc6-dev-i386 || exit 1 - name: Install Rust toolchain From ffb7c795e15d2d879f2d857e7607729ca4a53155 Mon Sep 17 00:00:00 2001 From: Daniela Brozzoni Date: Mon, 24 Jul 2023 12:44:48 +0200 Subject: [PATCH 2/2] ci: Avoid pinning dependencies, use --precise Fixes #1035 --- .github/workflows/cont_integration.yml | 3 +++ README.md | 12 ++++++++++++ crates/bdk/Cargo.toml | 2 +- 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/.github/workflows/cont_integration.yml b/.github/workflows/cont_integration.yml index d29f81c23..d03ce9436 100644 --- a/.github/workflows/cont_integration.yml +++ b/.github/workflows/cont_integration.yml @@ -27,6 +27,9 @@ jobs: profile: minimal - name: Rust Cache uses: Swatinem/rust-cache@v2.2.1 + - name: Pin dependencies for MSRV + if: matrix.rust.version == '1.57.0' + run: cargo update -p log --precise "0.4.18" && cargo update -p tempfile --precise "3.6.0" - name: Build run: cargo build ${{ matrix.features }} - name: Test diff --git a/README.md b/README.md index e50de4b84..565212754 100644 --- a/README.md +++ b/README.md @@ -52,3 +52,15 @@ Fully working examples of how to use these components are in `/example-crates` [`rust-bitcoin`]: https://github.com/rust-bitcoin/rust-bitcoin [`esplora-client`]: https://docs.rs/esplora-client/0.3.0/esplora_client/ [`electrum-client`]: https://docs.rs/electrum-client/0.13.0/electrum_client/ + +## Minimum Supported Rust Version (MSRV) +This library should compile with any combination of features with Rust 1.57.0. + +To build with the MSRV you will need to pin dependencies as follows: + +``` +# log 0.4.19 has MSRV 1.60.0+ +cargo update -p log --precise "0.4.18" +# tempfile 3.7.0 has MSRV 1.63.0 +cargo update -p tempfile --precise "3.6.0" +``` diff --git a/crates/bdk/Cargo.toml b/crates/bdk/Cargo.toml index 29b478d13..344fb3e55 100644 --- a/crates/bdk/Cargo.toml +++ b/crates/bdk/Cargo.toml @@ -13,7 +13,7 @@ edition = "2021" rust-version = "1.57" [dependencies] -log = "=0.4.18" +log = "0.4" rand = "^0.8" miniscript = { version = "9", features = ["serde"], default-features = false } bitcoin = { version = "0.29", features = ["serde", "base64", "rand"], default-features = false }