From: merge-script Date: Tue, 11 Nov 2025 02:46:46 +0000 (+0100) Subject: Merge bitcoindevkit/bdk-cli#180: Adding descriptor generator X-Git-Url: http://internal-gitweb-vhost/?a=commitdiff_plain;h=HEAD;p=bdk-cli Merge bitcoindevkit/bdk-cli#180: Adding descriptor generator 7d3720e382410af5ebe18aa48c5c819bf21a1ec3 feat(desc): remove generate subcommand (Vihiga Tyonum) 32a2c8847f1574fa7659a568a29ecf180b175d52 feat(desc):update descriptors gen to use templates (Vihiga Tyonum) c8f23ba5138a5c9c2e2f8df88d5913ab458a4b8f feat(descriptors): fix descriptor generation (Vihiga Tyonum) 550e81628779968bdbfedebc54debf8a6e20869e feat(descriptors): add multipath descs and pretty (Vihiga Tyonum) 1f77842ee7b415af581ca482de07cddf8cd5968c fix descriptors generation (Vihiga Tyonum) 6c9c3a1bb13eada4af00e41be1ccded2928a6ba2 feat: add descriptor generation (AmosOO7) Pull request description: # Pull Request: Add `descriptor` Subcommand ## Description This PR introduces a new `descriptor` subcommand to the BDK CLI that enable users to generate and inspect **Bitcoin wallet descriptors** for internal and external paths, supporting common types (pkh, sh, wpkh, wsh, tr). It includes support for both **single-path** descriptors from extended keys (`xprv`/`xpub` or `tprv`/`tpub`). This resolves issue https://github.com/bitcoindevkit/bdk-cli/issues/175 ## Features Implemented - Adds new `descriptor` subcommand with: - `generate` – generate new descriptors - Supports BIP44, BIP49, BIP84, and BIP86 script types - Generates **internal and external descriptors** - Reasonable defaults: - `--type` defaults to `wsh` and a short `t` - `--network` default `testnet` --- ## Usage Examples ### 1. Generate Descriptors from an Extended Private Key ```bash cargo run -- --network testnet descriptor generate --type wsh ``` ### 2. Generate Descriptors from a Mnemonic (no key provided) ```bash cargo run -- --network testnet descriptor generate --type tr ``` * [x] I've signed all my commits * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk-cli/blob/master/CONTRIBUTING.md) * [x] I ran `cargo fmt` and `cargo clippy` before committing #### New Features: * [ ] I've added tests for the new feature * [ ] I've added docs for the new feature * [ ] I've updated `CHANGELOG.md` ACKs for top commit: notmandatory: tACK 7d3720e382410af5ebe18aa48c5c819bf21a1ec3 tvpeter: ACK 7d3720e382410af5ebe18aa48c5c819bf21a1ec3 Tree-SHA512: 38182e657ffeaec89c84c601f8c41482eee9962a1847eaf6a3ad8b55d01858e0d2a056248d5bd4090734787caedf1c11232bb56337c90d5451c2664ff3571b50 --- 7df419af0ff08aef555af570d5a87a91fb69d479