Skip to content

Commit cddc0f2

Browse files
committed
chore: remove bdk_wallet and update readme and ci workflow
1 parent 5817ed0 commit cddc0f2

File tree

42 files changed

+23
-22481
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+23
-22481
lines changed

.github/workflows/cont_integration.yml

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -89,10 +89,6 @@ jobs:
8989
working-directory: ./crates/chain
9090
# TODO "--target thumbv6m-none-eabi" should work but currently does not
9191
run: cargo check --no-default-features --features miniscript/no-std,hashbrown
92-
- name: Check bdk wallet
93-
working-directory: ./crates/wallet
94-
# TODO "--target thumbv6m-none-eabi" should work but currently does not
95-
run: cargo check --no-default-features --features miniscript/no-std,bdk_chain/hashbrown
9692
- name: Check esplora
9793
working-directory: ./crates/esplora
9894
# TODO "--target thumbv6m-none-eabi" should work but currently does not
@@ -123,9 +119,6 @@ jobs:
123119
target: "wasm32-unknown-unknown"
124120
- name: Rust Cache
125121
uses: Swatinem/[email protected]
126-
- name: Check bdk wallet
127-
working-directory: ./crates/wallet
128-
run: cargo check --target wasm32-unknown-unknown --no-default-features --features miniscript/no-std,bdk_chain/hashbrown
129122
- name: Check esplora
130123
working-directory: ./crates/esplora
131124
run: cargo check --target wasm32-unknown-unknown --no-default-features --features bdk_core/hashbrown,async
@@ -183,10 +176,6 @@ jobs:
183176
- example_bitcoind_rpc_polling
184177
- example_electrum
185178
- example_esplora
186-
- example_wallet_electrum
187-
- example_wallet_esplora_async
188-
- example_wallet_esplora_blocking
189-
- example_wallet_rpc
190179
steps:
191180
- name: checkout
192181
uses: actions/checkout@v4

Cargo.toml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
[workspace]
22
resolver = "2"
33
members = [
4-
"crates/wallet",
54
"crates/chain",
65
"crates/core",
76
"crates/file_store",
@@ -13,10 +12,6 @@ members = [
1312
"example-crates/example_electrum",
1413
"example-crates/example_esplora",
1514
"example-crates/example_bitcoind_rpc_polling",
16-
"example-crates/example_wallet_electrum",
17-
"example-crates/example_wallet_esplora_blocking",
18-
"example-crates/example_wallet_esplora_async",
19-
"example-crates/example_wallet_rpc",
2015
]
2116

2217
[workspace.package]

README.md

Lines changed: 23 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,73 +1,72 @@
11
# The Bitcoin Dev Kit
22

33
<div align="center">
4-
<h1>BDK</h1>
54

65
<img src="./static/bdk.png" width="220" />
76

87
<p>
9-
<strong>A modern, lightweight, descriptor-based wallet library written in Rust!</strong>
8+
<strong>A suite of libraries for building modern, lightweight, descriptor-based wallets written in Rust!</strong>
109
</p>
1110

1211
<p>
13-
<a href="https://crates.io/crates/bdk_wallet"><img alt="Crate Info" src="https://img.shields.io/crates/v/bdk_wallet.svg"/></a>
1412
<a href="https://github.com/bitcoindevkit/bdk/blob/master/LICENSE"><img alt="MIT or Apache-2.0 Licensed" src="https://img.shields.io/badge/license-MIT%2FApache--2.0-blue.svg"/></a>
1513
<a href="https://github.com/bitcoindevkit/bdk/actions?query=workflow%3ACI"><img alt="CI Status" src="https://github.com/bitcoindevkit/bdk/workflows/CI/badge.svg"></a>
1614
<a href="https://coveralls.io/github/bitcoindevkit/bdk?branch=master"><img src="https://coveralls.io/repos/github/bitcoindevkit/bdk/badge.svg?branch=master"/></a>
17-
<a href="https://docs.rs/bdk_wallet"><img alt="Wallet API Docs" src="https://img.shields.io/badge/docs.rs-bdk_wallet-green"/></a>
1815
<a href="https://blog.rust-lang.org/2022/08/11/Rust-1.63.0.html"><img alt="Rustc Version 1.63.0+" src="https://img.shields.io/badge/rustc-1.63.0%2B-lightgrey.svg"/></a>
1916
<a href="https://discord.gg/d7NkDKm"><img alt="Chat on Discord" src="https://img.shields.io/discord/753336465005608961?logo=discord"></a>
2017
</p>
2118

2219
<h4>
2320
<a href="https://bitcoindevkit.org">Project Homepage</a>
24-
<span> | </span>
25-
<a href="https://docs.rs/bdk_wallet">Documentation</a>
2621
</h4>
2722
</div>
2823

2924
## About
3025

31-
The `bdk` libraries aims to provide well engineered and reviewed components for Bitcoin based applications.
32-
It is built upon the excellent [`rust-bitcoin`] and [`rust-miniscript`] crates.
26+
The `bdk` libraries aim to provide well engineered and reviewed components for Bitcoin wallets and other applications.
27+
They are built upon the excellent [`rust-bitcoin`] and [`rust-miniscript`] crates.
3328

3429
## Architecture
3530

36-
The project is split up into several crates in the `/crates` directory:
31+
The workspace in this repository contains several crates in the `/crates` directory:
3732

38-
- [`wallet`](./crates/wallet): Contains the central high level `Wallet` type that is built from the low-level mechanisms provided by the other components
39-
- [`chain`](./crates/chain): Tools for storing and indexing chain data
40-
- [`file_store`](./crates/file_store): Persistence backend for storing chain data in a single file. Intended for testing and development purposes, not for production.
41-
- [`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.
42-
- [`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.
33+
| Sub-Directory | Description | Badges |
34+
|---------------|-------------|--------|
35+
| [`chain`](./crates/chain) | Tools for storing and indexing chain data. | ![Chain Crate Info](https://img.shields.io/crates/v/bdk_chain.svg) ![Chain API Docs](https://img.shields.io/badge/docs.rs-bdk_chain-green) |
36+
| [`core`](./crates/core) | A collection of core structures used by the [`bdk_chain`], [`bdk_wallet`], and bdk chain data source crates. | ![Core Crate Info](https://img.shields.io/crates/v/bdk_core.svg) ![Core API Docs](https://img.shields.io/badge/docs.rs-bdk_core-green) |
37+
| [`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. | ![Esplora Crate Info](https://img.shields.io/crates/v/bdk_esplora.svg) ![Esplora API Docs](https://img.shields.io/badge/docs.rs-bdk_esplora-green) |
38+
| [`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. | ![Electrum Crate Info](https://img.shields.io/crates/v/bdk_electrum.svg) ![Electrum API Docs](https://img.shields.io/badge/docs.rs-bdk_electrum-green) |
39+
| [`bitcoind_rpc`](./crates/bitcoind_rpc) | Extends [`bitcoincore-rpc`] for emitting blockchain data from the `bitcoind` RPC interface. | ![BitcoinD RPC Crate Info](https://img.shields.io/crates/v/bdk_bitcoind_rpc.svg) ![BitcoinD RPC API Docs](https://img.shields.io/badge/docs.rs-bdk_bitcoind_rpc-green) |
40+
| [`file_store`](./crates/file_store) | Persistence backend for storing chain data in a single file. Intended for testing and development purposes, not for production. | ![File Store Crate Info](https://img.shields.io/crates/v/bdk_file_store.svg) ![File Store API Docs](https://img.shields.io/badge/docs.rs-bdk_file_store-green) |
41+
42+
The [`bdk_wallet`] repository and crate contains a higher level `Wallet` type that depends on the above lower-level mechanism crates.
4343

4444
Fully working examples of how to use these components are in `/example-crates`:
45+
4546
- [`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 `Wallet`.
4647
- [`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_wallet` library.
4748
- [`example_esplora`](./example-crates/example_esplora): A command line Bitcoin wallet application built on top of `example_cli` and the `esplora` crate. It shows the power of the bdk tools (`chain` + `file_store` + `esplora`), without depending on the main `bdk_wallet` library.
4849
- [`example_bitcoind_rpc_polling`](./example-crates/example_bitcoind_rpc_polling): A command line Bitcoin wallet application built on top of `example_cli` and the `bitcoind_rpc` crate. It shows the power of the bdk tools (`chain` + `file_store` + `bitcoind_rpc`), without depending on the main `bdk_wallet` library.
49-
- [`example_wallet_esplora_blocking`](./example-crates/example_wallet_esplora_blocking): Uses the `Wallet` to sync and spend using the Esplora blocking interface.
50-
- [`example_wallet_esplora_async`](./example-crates/example_wallet_esplora_async): Uses the `Wallet` to sync and spend using the Esplora asynchronous interface.
51-
- [`example_wallet_electrum`](./example-crates/example_wallet_electrum): Uses the `Wallet` to sync and spend using Electrum.
5250

5351
[`rust-miniscript`]: https://github.com/rust-bitcoin/rust-miniscript
5452
[`rust-bitcoin`]: https://github.com/rust-bitcoin/rust-bitcoin
5553
[`esplora-client`]: https://docs.rs/esplora-client/
5654
[`electrum-client`]: https://docs.rs/electrum-client/
55+
[`bitcoincore-rpc`]: https://docs.rs/bitcoincore-rpc/
5756
[`bdk_chain`]: https://docs.rs/bdk-chain/
57+
[`bdk_wallet`]: https://github.com/bitcoindevkit/bdk_wallet
5858

5959
## Minimum Supported Rust Version (MSRV)
60-
The BDK library maintains a MSRV of 1.63.0. This includes the following crates:
60+
61+
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.
6162

6263
- `bdk_core`
6364
- `bdk_chain`
64-
- `bdk_bitcoind_rpc`.
65-
- `bdk_esplora`.
66-
- `bdk_wallet`.
67-
68-
The MSRV of `bdk_electrum` is 1.75.0.
65+
- `bdk_bitcoind_rpc`
66+
- `bdk_esplora`
67+
- `bdk_file_store`
6968

70-
To build with the MSRV of 1.63.0 you will need to pin dependencies by running the [`pin-msrv.sh`](./ci/pin-msrv.sh) script.
69+
The MSRV of the `bdk_electrum` crate is 1.75.0.
7170

7271
## License
7372

0 commit comments

Comments
 (0)