]> Untitled Git - bdk/commitdiff
Rename the library to `bdk`
authorAlekos Filini <alekos.filini@gmail.com>
Mon, 14 Sep 2020 12:25:38 +0000 (14:25 +0200)
committerSteve Myers <steve@notmandatory.org>
Mon, 14 Sep 2020 22:13:43 +0000 (15:13 -0700)
21 files changed:
Cargo.toml
README.md
examples/address_validator.rs
examples/compiler.rs
examples/parse_descriptor.rs
examples/repl.rs
macros/Cargo.toml
src/blockchain/compact_filters/mod.rs
src/blockchain/electrum.rs
src/blockchain/esplora.rs
src/descriptor/policy.rs
src/lib.rs
src/wallet/address_validator.rs
src/wallet/coin_selection.rs
src/wallet/export.rs
src/wallet/mod.rs
src/wallet/signer.rs
src/wallet/tx_builder.rs
testutils-macros/Cargo.toml
testutils-macros/src/lib.rs
testutils/Cargo.toml

index 64fdae0e3c4d38d699d6c1a3fe72ab1403c7f220..8005ed8e88d140133d76d686345d3d26742d710c 100644 (file)
@@ -1,11 +1,11 @@
 [package]
-name = "magical"
+name = "bdk"
 version = "0.1.0"
 edition = "2018"
 authors = ["Alekos Filini <alekos.filini@gmail.com>", "Riccardo Casatta <riccardo@casatta.it>"]
 
 [dependencies]
-magical-macros = { version = "0.1.0-beta.1", path = "./macros" }
+bdk-macros = { version = "0.1.0-beta.1", path = "./macros" }
 log = "^0.4"
 bitcoin = { version = "0.23", features = ["use-serde"] }
 miniscript = { version = "1.0" }
@@ -49,13 +49,13 @@ cli-utils = ["clap", "base64"]
 async-interface = ["async-trait"]
 
 # Debug/Test features
-debug-proc-macros = ["magical-macros/debug", "magical-testutils-macros/debug"]
+debug-proc-macros = ["bdk-macros/debug", "bdk-testutils-macros/debug"]
 test-electrum = ["electrum"]
 test-md-docs = ["base64", "electrum"]
 
 [dev-dependencies]
-magical-testutils = { version = "0.1.0-beta.1", path = "./testutils" }
-magical-testutils-macros = { version = "0.1.0-beta.1", path = "./testutils-macros" }
+bdk-testutils = { version = "0.1.0-beta.1", path = "./testutils" }
+bdk-testutils-macros = { version = "0.1.0-beta.1", path = "./testutils-macros" }
 serial_test = "0.4"
 lazy_static = "1.4"
 rustyline = "6.0"
index 545e968a6bf1a2247a63f6f4d89ee32a467be919..b52905fba5c5bf6a331a63cd6bc1bd76fdb1838a 100644 (file)
--- a/README.md
+++ b/README.md
@@ -36,13 +36,13 @@ The `magical` library aims to be the core building block for Bitcoin wallets of
 ### Sync the balance of a descriptor
 
 ```no_run
-use magical::Wallet;
-use magical::database::MemoryDatabase;
-use magical::blockchain::{noop_progress, ElectrumBlockchain};
+use bdk::Wallet;
+use bdk::database::MemoryDatabase;
+use bdk::blockchain::{noop_progress, ElectrumBlockchain};
 
-use magical::electrum_client::Client;
+use bdk::electrum_client::Client;
 
-fn main() -> Result<(), magical::Error> {
+fn main() -> Result<(), bdk::Error> {
     let client = Client::new("ssl://electrum.blockstream.info:60002", None)?;
     let wallet = Wallet::new(
         "wpkh([c258d2e4/84h/1h/0h]tpubDDYkZojQFQjht8Tm4jsS3iuEmKjTiEGjG6KnuFNKKJb5A6ZUCUZKdvLdSDWofKi4ToRCwb9poe1XdqfUnP4jaJjCB2Zwv11ZLgSbnZSNecE/0/*)",
@@ -63,10 +63,10 @@ fn main() -> Result<(), magical::Error> {
 ### Generate a few addresses
 
 ```
-use magical::{Wallet, OfflineWallet};
-use magical::database::MemoryDatabase;
+use bdk::{Wallet, OfflineWallet};
+use bdk::database::MemoryDatabase;
 
-fn main() -> Result<(), magical::Error> {
+fn main() -> Result<(), bdk::Error> {
     let wallet: OfflineWallet<_> = Wallet::new_offline(
         "wpkh([c258d2e4/84h/1h/0h]tpubDDYkZojQFQjht8Tm4jsS3iuEmKjTiEGjG6KnuFNKKJb5A6ZUCUZKdvLdSDWofKi4ToRCwb9poe1XdqfUnP4jaJjCB2Zwv11ZLgSbnZSNecE/0/*)",
         Some("wpkh([c258d2e4/84h/1h/0h]tpubDDYkZojQFQjht8Tm4jsS3iuEmKjTiEGjG6KnuFNKKJb5A6ZUCUZKdvLdSDWofKi4ToRCwb9poe1XdqfUnP4jaJjCB2Zwv11ZLgSbnZSNecE/1/*)"),
@@ -85,15 +85,15 @@ fn main() -> Result<(), magical::Error> {
 ### Create a transaction
 
 ```no_run
-use magical::{FeeRate, TxBuilder, Wallet};
-use magical::database::MemoryDatabase;
-use magical::blockchain::{noop_progress, ElectrumBlockchain};
+use bdk::{FeeRate, TxBuilder, Wallet};
+use bdk::database::MemoryDatabase;
+use bdk::blockchain::{noop_progress, ElectrumBlockchain};
 
-use magical::electrum_client::Client;
+use bdk::electrum_client::Client;
 
 use bitcoin::consensus::serialize;
 
-fn main() -> Result<(), magical::Error> {
+fn main() -> Result<(), bdk::Error> {
     let client = Client::new("ssl://electrum.blockstream.info:60002", None)?;
     let wallet = Wallet::new(
         "wpkh([c258d2e4/84h/1h/0h]tpubDDYkZojQFQjht8Tm4jsS3iuEmKjTiEGjG6KnuFNKKJb5A6ZUCUZKdvLdSDWofKi4ToRCwb9poe1XdqfUnP4jaJjCB2Zwv11ZLgSbnZSNecE/0/*)",
@@ -123,12 +123,12 @@ fn main() -> Result<(), magical::Error> {
 ### Sign a transaction
 
 ```no_run
-use magical::{Wallet, OfflineWallet};
-use magical::database::MemoryDatabase;
+use bdk::{Wallet, OfflineWallet};
+use bdk::database::MemoryDatabase;
 
 use bitcoin::consensus::deserialize;
 
-fn main() -> Result<(), magical::Error> {
+fn main() -> Result<(), bdk::Error> {
     let wallet: OfflineWallet<_> = Wallet::new_offline(
         "wpkh([c258d2e4/84h/1h/0h]tprv8griRPhA7342zfRyB6CqeKF8CJDXYu5pgnj1cjL1u2ngKcJha5jjTRimG82ABzJQ4MQe71CV54xfn25BbhCNfEGGJZnxvCDQCd6JkbvxW6h/0/*)",
         Some("wpkh([c258d2e4/84h/1h/0h]tprv8griRPhA7342zfRyB6CqeKF8CJDXYu5pgnj1cjL1u2ngKcJha5jjTRimG82ABzJQ4MQe71CV54xfn25BbhCNfEGGJZnxvCDQCd6JkbvxW6h/1/*)"),
index 0b2c72d8925b8eda102a81b0a5562784172365b5..f5b3d3cce8147bb917273c76896c03f7ee5a021a 100644 (file)
 
 use std::sync::Arc;
 
-use magical::bitcoin;
-use magical::database::MemoryDatabase;
-use magical::descriptor::HDKeyPaths;
-use magical::wallet::address_validator::{AddressValidator, AddressValidatorError};
-use magical::ScriptType;
-use magical::{OfflineWallet, Wallet};
+use bdk::bitcoin;
+use bdk::database::MemoryDatabase;
+use bdk::descriptor::HDKeyPaths;
+use bdk::wallet::address_validator::{AddressValidator, AddressValidatorError};
+use bdk::ScriptType;
+use bdk::{OfflineWallet, Wallet};
 
 use bitcoin::hashes::hex::FromHex;
 use bitcoin::util::bip32::Fingerprint;
@@ -57,7 +57,7 @@ impl AddressValidator for DummyValidator {
     }
 }
 
-fn main() -> Result<(), magical::Error> {
+fn main() -> Result<(), bdk::Error> {
     let descriptor = "sh(and_v(v:pk(tpubDDpWvmUrPZrhSPmUzCMBHffvC3HyMAPnWDSAQNBTnj1iZeJa7BZQEttFiP4DS4GCcXQHezdXhn86Hj6LHX5EDstXPWrMaSneRWM8yUf6NFd/*),after(630000)))";
     let mut wallet: OfflineWallet<_> =
         Wallet::new_offline(descriptor, None, Network::Regtest, MemoryDatabase::new())?;
index d1f9c3322ff6b2f597347e1d63112e4d5b1fe857..0f412190a55a6446e0e6860da97c3256934134d2 100644 (file)
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 // SOFTWARE.
 
+extern crate bdk;
 extern crate bitcoin;
 extern crate clap;
 extern crate log;
-extern crate magical;
 extern crate miniscript;
 extern crate serde_json;
 
@@ -39,8 +39,8 @@ use bitcoin::Network;
 use miniscript::policy::Concrete;
 use miniscript::Descriptor;
 
-use magical::database::memory::MemoryDatabase;
-use magical::{OfflineWallet, ScriptType, Wallet};
+use bdk::database::memory::MemoryDatabase;
+use bdk::{OfflineWallet, ScriptType, Wallet};
 
 fn main() {
     env_logger::init_from_env(
index bd34de8ba025a0860a0b94d069bd18b7c989944d..73161c6045fb11aee28a0b01e4e263b18559ce8f 100644 (file)
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 // SOFTWARE.
 
-extern crate magical;
+extern crate bdk;
 extern crate serde_json;
 
 use std::sync::Arc;
 
-use magical::bitcoin::util::bip32::ChildNumber;
-use magical::bitcoin::*;
-use magical::descriptor::*;
+use bdk::bitcoin::util::bip32::ChildNumber;
+use bdk::bitcoin::*;
+use bdk::descriptor::*;
 
 fn main() {
     let desc = "wsh(or_d(\
index e6dc4859a74bfd8817d9d52a87e9b6ba2b5e8649..857d6abdf2acfc3534f27091a28618afbd05f7ec 100644 (file)
@@ -36,17 +36,17 @@ use log::{debug, error, info, trace, LevelFilter};
 
 use bitcoin::Network;
 
-use magical::bitcoin;
-use magical::blockchain::ElectrumBlockchain;
-use magical::cli;
-use magical::electrum_client::Client;
-use magical::sled;
-use magical::Wallet;
+use bdk::bitcoin;
+use bdk::blockchain::ElectrumBlockchain;
+use bdk::cli;
+use bdk::electrum_client::Client;
+use bdk::sled;
+use bdk::Wallet;
 
 fn prepare_home_dir() -> PathBuf {
     let mut dir = PathBuf::new();
     dir.push(&dirs::home_dir().unwrap());
-    dir.push(".magical-bitcoin");
+    dir.push(".bdk-bitcoin");
 
     if !dir.exists() {
         info!("Creating home directory {}", dir.as_path().display());
index 5d086aee9969fde44589f6dcae80c96e39689ce5..dac85ca957835422707856da685af2045ed2fb47 100644 (file)
@@ -1,5 +1,5 @@
 [package]
-name = "magical-macros"
+name = "bdk-macros"
 version = "0.1.0-beta.1"
 authors = ["Alekos Filini <alekos.filini@gmail.com>"]
 edition = "2018"
index f27137b1a85d05873a716358df5c80446dbf0d9e..9c357fc5788e7402d230ef050f01d4b07b36e478 100644 (file)
@@ -42,8 +42,8 @@
 //! ```no_run
 //! # use std::sync::Arc;
 //! # use bitcoin::*;
-//! # use magical::*;
-//! # use magical::blockchain::compact_filters::*;
+//! # use bdk::*;
+//! # use bdk::blockchain::compact_filters::*;
 //! let num_threads = 4;
 //!
 //! let mempool = Arc::new(Mempool::default());
@@ -55,7 +55,7 @@
 //!     ))
 //!     .collect::<Result<_, _>>()?;
 //! let blockchain = CompactFiltersBlockchain::new(peers, "./wallet-filters", Some(500_000))?;
-//! # Ok::<(), magical::error::Error>(())
+//! # Ok::<(), bdk::error::Error>(())
 //! ```
 
 use std::collections::HashSet;
index 7d62e5be6fce7aacab9ff57b4ea0c7db98097d7d..33cd72a99fd280c74b363f846aff754d547f14a7 100644 (file)
 //! ## Example
 //!
 //! ```no_run
-//! # use magical::blockchain::electrum::ElectrumBlockchain;
+//! # use bdk::blockchain::electrum::ElectrumBlockchain;
 //! let client = electrum_client::Client::new("ssl://electrum.blockstream.info:50002", None)?;
 //! let blockchain = ElectrumBlockchain::from(client);
-//! # Ok::<(), magical::Error>(())
+//! # Ok::<(), bdk::Error>(())
 //! ```
 
 use std::collections::HashSet;
@@ -60,7 +60,7 @@ pub struct ElectrumBlockchain(Client);
 
 #[cfg(test)]
 #[cfg(feature = "test-electrum")]
-#[magical_blockchain_tests(crate)]
+#[bdk_blockchain_tests(crate)]
 fn local_electrs() -> ElectrumBlockchain {
     ElectrumBlockchain::from(Client::new(&testutils::get_electrum_url(), None).unwrap())
 }
index 214852efdd5219d8f457a454100694208ab1cf6e..916c5df442243fd5b257a968c4da3f8501c75358 100644 (file)
@@ -30,9 +30,9 @@
 //! ## Example
 //!
 //! ```no_run
-//! # use magical::blockchain::esplora::EsploraBlockchain;
+//! # use bdk::blockchain::esplora::EsploraBlockchain;
 //! let blockchain = EsploraBlockchain::new("https://blockstream.info/testnet/api");
-//! # Ok::<(), magical::Error>(())
+//! # Ok::<(), bdk::Error>(())
 //! ```
 
 use std::collections::{HashMap, HashSet};
index 479454e6bca40bb6ba0ecdebe5f2ab632ebe75da..ec1232217fb100c91f847345e21e663b9a5c5825 100644 (file)
@@ -31,7 +31,7 @@
 //!
 //! ```
 //! # use std::sync::Arc;
-//! # use magical::descriptor::*;
+//! # use bdk::descriptor::*;
 //! let desc = "wsh(and_v(v:pk(cV3oCth6zxZ1UVsHLnGothsWNsaoxRhC6aeNi5VbSdFpwUkgkEci),or_d(pk(cVMTy7uebJgvFaSBwcgvwk8qn8xSLc97dKow4MBetjrrahZoimm2),older(12960))))";
 //!
 //! let (extended_desc, key_map) = ExtendedDescriptor::parse_secret(desc)?;
@@ -40,7 +40,7 @@
 //! let signers = Arc::new(key_map.into());
 //! let policy = extended_desc.extract_policy(signers)?;
 //! println!("policy: {}", serde_json::to_string(&policy)?);
-//! # Ok::<(), magical::Error>(())
+//! # Ok::<(), bdk::Error>(())
 //! ```
 
 use std::cmp::max;
index 9f2e05ade7d2e6a8826da94f1f7d1cdb7a3c74b6..b1e3d5a9f7beb801b1cc237abaace467ef8c2840 100644 (file)
@@ -40,7 +40,7 @@ extern crate serde_json;
 #[macro_use]
 extern crate async_trait;
 #[macro_use]
-extern crate magical_macros;
+extern crate bdk_macros;
 
 #[cfg(any(test, feature = "compact_filters"))]
 #[macro_use]
index a88feaedd7821a61bae6719db2f6190ad1185fd1..385977d785905ff40340e037c7a79980d2a40e02 100644 (file)
@@ -42,9 +42,9 @@
 //! ```
 //! # use std::sync::Arc;
 //! # use bitcoin::*;
-//! # use magical::address_validator::*;
-//! # use magical::database::*;
-//! # use magical::*;
+//! # use bdk::address_validator::*;
+//! # use bdk::database::*;
+//! # use bdk::*;
 //! struct PrintAddressAndContinue;
 //!
 //! impl AddressValidator for PrintAddressAndContinue {
@@ -71,7 +71,7 @@
 //!
 //! let address = wallet.get_new_address()?;
 //! println!("Address: {}", address);
-//! # Ok::<(), magical::Error>(())
+//! # Ok::<(), bdk::Error>(())
 //! ```
 
 use std::fmt;
index e37a5ef8fa769ca90e77922985b993bda3a10aa7..c60d49135d361f2d91b19637f2782620b7d879a3 100644 (file)
@@ -43,8 +43,8 @@
 //! # use std::str::FromStr;
 //! # use bitcoin::*;
 //! # use bitcoin::consensus::serialize;
-//! # use magical::wallet::coin_selection::*;
-//! # use magical::*;
+//! # use bdk::wallet::coin_selection::*;
+//! # use bdk::*;
 //! #[derive(Debug)]
 //! struct AlwaysSpendEverything;
 //!
@@ -57,7 +57,7 @@
 //!         amount_needed: u64,
 //!         input_witness_weight: usize,
 //!         fee_amount: f32,
-//!     ) -> Result<CoinSelectionResult, magical::Error> {
+//!     ) -> Result<CoinSelectionResult, bdk::Error> {
 //!         let selected_amount = utxos.iter().fold(0, |acc, utxo| acc + utxo.txout.value);
 //!         let all_utxos_selected = utxos
 //!             .into_iter()
@@ -77,7 +77,7 @@
 //!         let additional_fees = additional_weight as f32 * fee_rate.as_sat_vb() / 4.0;
 //!
 //!         if (fee_amount + additional_fees).ceil() as u64 + amount_needed > selected_amount {
-//!             return Err(magical::Error::InsufficientFunds);
+//!             return Err(bdk::Error::InsufficientFunds);
 //!         }
 //!
 //!         Ok(CoinSelectionResult {
@@ -88,7 +88,7 @@
 //!     }
 //! }
 //!
-//! # let wallet: OfflineWallet<_> = Wallet::new_offline("", None, Network::Testnet, magical::database::MemoryDatabase::default())?;
+//! # let wallet: OfflineWallet<_> = Wallet::new_offline("", None, Network::Testnet, bdk::database::MemoryDatabase::default())?;
 //! // create wallet, sync, ...
 //!
 //! let to_address = Address::from_str("2N4eQYCbKUHCCTUjBJeHcJp9ok6J2GZsTDt").unwrap();
@@ -99,7 +99,7 @@
 //!
 //! // inspect, sign, broadcast, ...
 //!
-//! # Ok::<(), magical::Error>(())
+//! # Ok::<(), bdk::Error>(())
 //! ```
 
 use bitcoin::consensus::encode::serialize;
index 42d94f306e880fb19521e2a7d1b7940a05a18b33..73ab9ca966bd1937b558237e655800050408ee29 100644 (file)
@@ -33,9 +33,9 @@
 //! ```
 //! # use std::str::FromStr;
 //! # use bitcoin::*;
-//! # use magical::database::*;
-//! # use magical::wallet::export::*;
-//! # use magical::*;
+//! # use bdk::database::*;
+//! # use bdk::wallet::export::*;
+//! # use bdk::*;
 //! let import = r#"{
 //!     "descriptor": "wpkh([c258d2e4\/84h\/1h\/0h]tpubDD3ynpHgJQW8VvWRzQ5WFDCrs4jqVFGHB3vLC3r49XHJSqP8bHKdK4AriuUKLccK68zfzowx7YhmDN8SiSkgCDENUFx9qVw65YyqM78vyVe\/0\/*)",
 //!     "blockheight":1782088,
 //!
 //! let import = WalletExport::from_str(import)?;
 //! let wallet: OfflineWallet<_> = Wallet::new_offline(&import.descriptor(), import.change_descriptor().as_deref(), Network::Testnet, MemoryDatabase::default())?;
-//! # Ok::<_, magical::Error>(())
+//! # Ok::<_, bdk::Error>(())
 //! ```
 //!
 //! ### Export a `Wallet`
 //! ```
 //! # use bitcoin::*;
-//! # use magical::database::*;
-//! # use magical::wallet::export::*;
-//! # use magical::*;
+//! # use bdk::database::*;
+//! # use bdk::wallet::export::*;
+//! # use bdk::*;
 //! let wallet: OfflineWallet<_> = Wallet::new_offline(
 //!     "wpkh([c258d2e4/84h/1h/0h]tpubDD3ynpHgJQW8VvWRzQ5WFDCrs4jqVFGHB3vLC3r49XHJSqP8bHKdK4AriuUKLccK68zfzowx7YhmDN8SiSkgCDENUFx9qVw65YyqM78vyVe/0/*)",
 //!     Some("wpkh([c258d2e4/84h/1h/0h]tpubDD3ynpHgJQW8VvWRzQ5WFDCrs4jqVFGHB3vLC3r49XHJSqP8bHKdK4AriuUKLccK68zfzowx7YhmDN8SiSkgCDENUFx9qVw65YyqM78vyVe/1/*)"),
 //! )?;
 //! let export = WalletExport::export_wallet(&wallet, "exported wallet", true)
 //!     .map_err(ToString::to_string)
-//!     .map_err(magical::Error::Generic)?;
+//!     .map_err(bdk::Error::Generic)?;
 //!
 //! println!("Exported: {}", export.to_string());
-//! # Ok::<_, magical::Error>(())
+//! # Ok::<_, bdk::Error>(())
 //! ```
 
 use std::str::FromStr;
index d0a7ed621f113687e4fc39afa0cf397e8848ecea..e45b97c753c7bccb3c6a3846260731f3d3676cee 100644 (file)
@@ -229,8 +229,8 @@ where
     /// ```no_run
     /// # use std::str::FromStr;
     /// # use bitcoin::*;
-    /// # use magical::*;
-    /// # use magical::database::*;
+    /// # use bdk::*;
+    /// # use bdk::database::*;
     /// # let descriptor = "wpkh(tpubD6NzVbkrYhZ4Xferm7Pz4VnjdcDPFyjVu5K4iZXQ4pVN8Cks4pHVowTBXBKRhX64pkRyJZJN5xAKj4UDNnLPb5p2sSKXhewoYx5GbTdUFWq/*)";
     /// # let wallet: OfflineWallet<_> = Wallet::new_offline(descriptor, None, Network::Testnet, MemoryDatabase::default())?;
     /// # let to_address = Address::from_str("2N4eQYCbKUHCCTUjBJeHcJp9ok6J2GZsTDt").unwrap();
@@ -238,7 +238,7 @@ where
     ///     TxBuilder::with_recipients(vec![(to_address.script_pubkey(), 50_000)])
     /// )?;
     /// // sign and broadcast ...
-    /// # Ok::<(), magical::Error>(())
+    /// # Ok::<(), bdk::Error>(())
     /// ```
     pub fn create_tx<Cs: coin_selection::CoinSelectionAlgorithm>(
         &self,
@@ -453,8 +453,8 @@ where
     /// ```no_run
     /// # use std::str::FromStr;
     /// # use bitcoin::*;
-    /// # use magical::*;
-    /// # use magical::database::*;
+    /// # use bdk::*;
+    /// # use bdk::database::*;
     /// # let descriptor = "wpkh(tpubD6NzVbkrYhZ4Xferm7Pz4VnjdcDPFyjVu5K4iZXQ4pVN8Cks4pHVowTBXBKRhX64pkRyJZJN5xAKj4UDNnLPb5p2sSKXhewoYx5GbTdUFWq/*)";
     /// # let wallet: OfflineWallet<_> = Wallet::new_offline(descriptor, None, Network::Testnet, MemoryDatabase::default())?;
     /// let txid = Txid::from_str("faff0a466b70f5d5f92bd757a92c1371d4838bdd5bc53a06764e2488e51ce8f8").unwrap();
@@ -463,7 +463,7 @@ where
     ///     TxBuilder::new().fee_rate(FeeRate::from_sat_per_vb(5.0)),
     /// )?;
     /// // sign and broadcast ...
-    /// # Ok::<(), magical::Error>(())
+    /// # Ok::<(), bdk::Error>(())
     /// ```
     // TODO: support for merging multiple transactions while bumping the fees
     // TODO: option to force addition of an extra output? seems bad for privacy to update the
@@ -691,13 +691,13 @@ where
     /// ```no_run
     /// # use std::str::FromStr;
     /// # use bitcoin::*;
-    /// # use magical::*;
-    /// # use magical::database::*;
+    /// # use bdk::*;
+    /// # use bdk::database::*;
     /// # let descriptor = "wpkh(tpubD6NzVbkrYhZ4Xferm7Pz4VnjdcDPFyjVu5K4iZXQ4pVN8Cks4pHVowTBXBKRhX64pkRyJZJN5xAKj4UDNnLPb5p2sSKXhewoYx5GbTdUFWq/*)";
     /// # let wallet: OfflineWallet<_> = Wallet::new_offline(descriptor, None, Network::Testnet, MemoryDatabase::default())?;
     /// # let (psbt, _) = wallet.create_tx(TxBuilder::new())?;
     /// let (signed_psbt, finalized) = wallet.sign(psbt, None)?;
-    /// # Ok::<(), magical::Error>(())
+    /// # Ok::<(), bdk::Error>(())
     pub fn sign(&self, mut psbt: PSBT, assume_height: Option<u32>) -> Result<(PSBT, bool), Error> {
         // this helps us doing our job later
         self.add_input_hd_keypaths(&mut psbt)?;
index 838fd74f4a54c23c92c7bd519da254e82d2e2f75..c290126c5f2bde65cc630f20397c66a616a8ab18 100644 (file)
@@ -33,9 +33,9 @@
 //! # use bitcoin::*;
 //! # use bitcoin::util::psbt;
 //! # use bitcoin::util::bip32::Fingerprint;
-//! # use magical::signer::*;
-//! # use magical::database::*;
-//! # use magical::*;
+//! # use bdk::signer::*;
+//! # use bdk::database::*;
+//! # use bdk::*;
 //! # #[derive(Debug)]
 //! # struct CustomHSM;
 //! # impl CustomHSM {
@@ -85,7 +85,7 @@
 //!     Arc::new(Box::new(custom_signer))
 //! );
 //!
-//! # Ok::<_, magical::Error>(())
+//! # Ok::<_, bdk::Error>(())
 //! ```
 
 use std::cmp::Ordering;
index 5dc88803c7f944994db61a7e514dab00a9f57635..d24bd435deb32297019666b1fe2840eed566b636 100644 (file)
@@ -29,7 +29,7 @@
 //! ```
 //! # use std::str::FromStr;
 //! # use bitcoin::*;
-//! # use magical::*;
+//! # use bdk::*;
 //! # let to_address = Address::from_str("2N4eQYCbKUHCCTUjBJeHcJp9ok6J2GZsTDt").unwrap();
 //! // Create a transaction with one output to `to_address` of 50_000 satoshi, with a custom fee rate
 //! // of 5.0 satoshi/vbyte, only spending non-change outputs and with RBF signaling
index 8443c3eb392b865a941fafaa93b6acce202e115e..bbae76e9ae2b7c5fcbab222ccb8ce899cea01d7a 100644 (file)
@@ -1,5 +1,5 @@
 [package]
-name = "magical-testutils-macros"
+name = "bdk-testutils-macros"
 version = "0.1.0-beta.1"
 authors = ["Alekos Filini <alekos.filini@gmail.com>"]
 edition = "2018"
index 25622d1390aa6d53b5a06260cc5af81ebd6f3372..18268c9b1f11d0e30d8df04cce52144f4b0aa2e0 100644 (file)
@@ -31,7 +31,7 @@ use syn::spanned::Spanned;
 use syn::{parse, parse2, Ident, ReturnType};
 
 #[proc_macro_attribute]
-pub fn magical_blockchain_tests(attr: TokenStream, item: TokenStream) -> TokenStream {
+pub fn bdk_blockchain_tests(attr: TokenStream, item: TokenStream) -> TokenStream {
     let root_ident = if !attr.is_empty() {
         match parse::<syn::ExprPath>(attr) {
             Ok(parsed) => parsed,
@@ -44,12 +44,12 @@ pub fn magical_blockchain_tests(attr: TokenStream, item: TokenStream) -> TokenSt
             }
         }
     } else {
-        parse2::<syn::ExprPath>(quote! { magical }).unwrap()
+        parse2::<syn::ExprPath>(quote! { bdk }).unwrap()
     };
 
     match parse::<syn::ItemFn>(item) {
         Err(_) => (quote! {
-            compile_error!("#[magical_blockchain_tests] can only be used on `fn`s")
+            compile_error!("#[bdk_blockchain_tests] can only be used on `fn`s")
         })
         .into(),
         Ok(parsed) => {
index 08470e01ae5d90afe46832c8a284b5accc9de9ab..40e87eb99ca026e98dc878ec3334ea5f91818f38 100644 (file)
@@ -1,5 +1,5 @@
 [package]
-name = "magical-testutils"
+name = "bdk-testutils"
 version = "0.1.0-beta.1"
 authors = ["Alekos Filini <alekos.filini@gmail.com>"]
 edition = "2018"