From 11ac26f6b28b6694dfc04e9fc72c208e454632c7 Mon Sep 17 00:00:00 2001 From: Daniela Brozzoni Date: Mon, 21 Aug 2023 14:05:09 +0200 Subject: [PATCH 1/2] docs: Update README.md - Fixes the release timeline - Adds an explanation for the crates under `example-crates` --- README.md | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 5d018358..4edb716d 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ It is built upon the excellent [`rust-bitcoin`] and [`rust-miniscript`] crates. > ⚠ The Bitcoin Dev Kit developers are in the process of releasing a `v1.0` which is a fundamental re-write of how the library works. > See for some background on this project: https://bitcoindevkit.org/blog/road-to-bdk-1/ (ignore the timeline 😁) -> For a release timeline see the [`bdk_core_staging`] repo where a lot of the component work is being done. The plan is that everything in the `bdk_core_staging` repo will be moved into the `crates` directory here. +> For a release timeline see the [`BDK 1.0 project page`]. ## Architecture @@ -45,13 +45,19 @@ The project is split up into several crates in the `/crates` directory: - [`esplora`](./crates/esplora): Extends the [`esplora-client`] crate with methods to fetch chain data from an esplora HTTP server in the form that [`bdk_chain`] and `Wallet` can consume. - [`electrum`](./crates/electrum): Extends the [`electrum-client`] crate with methods to fetch chain data from an electrum server in the form that [`bdk_chain`] and `Wallet` can consume. -Fully working examples of how to use these components are in `/example-crates` +Fully working examples of how to use these components are in `/example-crates`: +- [`example_cli`](./example-crates/example_cli): Library used by the `example_*` crates. Provides utilities for syncing, showing the balance, generating addresses and creating transactions without using the bdk `Wallet`. +- [`example_electrum`](./example-crates/example_electrum): A command line Bitcoin wallet application built on top of `example_cli` and the `electrum` crate. It shows the power of the bdk tools (`chain` + `file_store` + `electrum`), without depending on the main `bdk` library. +- [`wallet_esplora`](./example-crates/wallet_esplora): Uses the `Wallet` to sync and spend using the Esplora blocking interface. +- [`wallet_esplora_async`](./example-crates/wallet_esplora_async): Uses the `Wallet` to sync and spend using the Esplora asynchronous interface. +- [`wallet_electrum`](./example-crates/wallet_electrum): Uses the `Wallet` to sync and spend using Electrum. -[`bdk_core_staging`]: https://github.com/LLFourn/bdk_core_staging +[`BDK 1.0 project page`]: https://github.com/orgs/bitcoindevkit/projects/14 [`rust-miniscript`]: https://github.com/rust-bitcoin/rust-miniscript [`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/ +[`esplora-client`]: https://docs.rs/esplora-client/ +[`electrum-client`]: https://docs.rs/electrum-client/ +[`bdk_chain`]: https://docs.rs/bdk-chain/ ## Minimum Supported Rust Version (MSRV) This library should compile with any combination of features with Rust 1.57.0. From 2263a58448f5f04a74e076132aea93f21c584bc0 Mon Sep 17 00:00:00 2001 From: Daniela Brozzoni Date: Tue, 22 Aug 2023 14:03:47 +0200 Subject: [PATCH 2/2] refactor: Rename `wallet_esplora` to... ...`wallet_esplora_blocking` --- Cargo.toml | 2 +- README.md | 2 +- .../{wallet_esplora => wallet_esplora_blocking}/Cargo.toml | 2 +- .../{wallet_esplora => wallet_esplora_blocking}/src/main.rs | 0 4 files changed, 3 insertions(+), 3 deletions(-) rename example-crates/{wallet_esplora => wallet_esplora_blocking}/Cargo.toml (91%) rename example-crates/{wallet_esplora => wallet_esplora_blocking}/src/main.rs (100%) diff --git a/Cargo.toml b/Cargo.toml index c5f2692d..9fafb8b7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,7 +8,7 @@ members = [ "example-crates/example_cli", "example-crates/example_electrum", "example-crates/wallet_electrum", - "example-crates/wallet_esplora", + "example-crates/wallet_esplora_blocking", "example-crates/wallet_esplora_async", "nursery/tmp_plan", "nursery/coin_select" diff --git a/README.md b/README.md index 4edb716d..ae230abb 100644 --- a/README.md +++ b/README.md @@ -48,7 +48,7 @@ The project is split up into several crates in the `/crates` directory: Fully working examples of how to use these components are in `/example-crates`: - [`example_cli`](./example-crates/example_cli): Library used by the `example_*` crates. Provides utilities for syncing, showing the balance, generating addresses and creating transactions without using the bdk `Wallet`. - [`example_electrum`](./example-crates/example_electrum): A command line Bitcoin wallet application built on top of `example_cli` and the `electrum` crate. It shows the power of the bdk tools (`chain` + `file_store` + `electrum`), without depending on the main `bdk` library. -- [`wallet_esplora`](./example-crates/wallet_esplora): Uses the `Wallet` to sync and spend using the Esplora blocking interface. +- [`wallet_esplora_blocking`](./example-crates/wallet_esplora_blocking): Uses the `Wallet` to sync and spend using the Esplora blocking interface. - [`wallet_esplora_async`](./example-crates/wallet_esplora_async): Uses the `Wallet` to sync and spend using the Esplora asynchronous interface. - [`wallet_electrum`](./example-crates/wallet_electrum): Uses the `Wallet` to sync and spend using Electrum. diff --git a/example-crates/wallet_esplora/Cargo.toml b/example-crates/wallet_esplora_blocking/Cargo.toml similarity index 91% rename from example-crates/wallet_esplora/Cargo.toml rename to example-crates/wallet_esplora_blocking/Cargo.toml index 1dcef389..f07f64e4 100644 --- a/example-crates/wallet_esplora/Cargo.toml +++ b/example-crates/wallet_esplora_blocking/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "wallet_esplora" +name = "wallet_esplora_blocking" version = "0.2.0" edition = "2021" publish = false diff --git a/example-crates/wallet_esplora/src/main.rs b/example-crates/wallet_esplora_blocking/src/main.rs similarity index 100% rename from example-crates/wallet_esplora/src/main.rs rename to example-crates/wallet_esplora_blocking/src/main.rs