Alekos Filini 
							
						 
					 
					
						
						
						
						
							
						
						
							d7ee38cc52 
							
						 
					 
					
						
						
							
							Rename the library to bdk  
						
						
						
						
					 
					
						2020-09-14 15:13:43 -07:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							efdd11762c 
							
						 
					 
					
						
						
							
							[blockchain] Simplify the architecture of blockchain traits  
						
						... 
						
						
						
						Instead of having two traits, `Blockchain` and `OnlineBlockchain` that need
to be implemented by the user, only the relevant one (`OnlineBlockchain`, here
renamed to `Blockchain`) will need to be implemented, since we provide a
blanket implementation for the "marker" trait (previously `Blockchain`, here
renamed to `BlockchainMarker`).
Users of the library will probably never need to implement `BlockchainMarker`
by itself, since we expose the `OfflineBlockchain` type that already does
that and should be good for any "offline" wallet. Still, it's exposed since
they might need to import it to define types with generics. 
						
						
					 
					
						2020-09-10 10:45:07 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							43cb0331bf 
							
						 
					 
					
						
						
							
							Rename the crate to just "magical"  
						
						
						
						
					 
					
						2020-09-04 17:01:33 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ac06e35c49 
							
						 
					 
					
						
						
							
							Add docs for Wallet  
						
						
						
						
					 
					
						2020-09-04 16:29:25 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							eee75219e0 
							
						 
					 
					
						
						
							
							Write more docs, make TxBuilder::with_recipients take Scripts  
						
						
						
						
					 
					
						2020-09-04 16:07:41 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7065c1fed6 
							
						 
					 
					
						
						
							
							Write more docs  
						
						
						
						
					 
					
						2020-09-04 11:44:49 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c0867a6adc 
							
						 
					 
					
						
						
							
							General cleanup for the docs  
						
						
						
						
					 
					
						2020-08-31 15:04:27 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							d61e974dbe 
							
						 
					 
					
						
						
							
							Add the license to every file  
						
						
						
						
					 
					
						2020-08-31 11:48:25 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7a127d0275 
							
						 
					 
					
						
						
							
							[wallet] Add tests for Wallet::sign()  
						
						
						
						
					 
					
						2020-08-30 20:38:24 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ff50087de5 
							
						 
					 
					
						
						
							
							[wallet] Support signing the whole tx instead of individual inputs  
						
						
						
						
					 
					
						2020-08-30 20:38:22 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							991db28170 
							
						 
					 
					
						
						
							
							[wallet] Add explicit ordering for the signers  
						
						
						
						
					 
					
						2020-08-30 20:38:20 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							557f7ef8c9 
							
						 
					 
					
						
						
							
							[wallet] Add AddressValidators  
						
						
						
						
					 
					
						2020-08-30 20:36:25 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							5777431135 
							
						 
					 
					
						
						
							
							Use miniscript::DescriptorPublicKey  
						
						... 
						
						
						
						This allows us to remove all our custom "ExtendedDescriptor" implementation since that is
now built directly in miniscript. 
						
						
					 
					
						2020-08-30 20:36:19 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							77c95b93ac 
							
						 
					 
					
						
						
							
							Compact Filters blockchain implementation  
						
						
						
						
					 
					
						2020-08-30 17:23:33 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c12aa3d327 
							
						 
					 
					
						
						
							
							Implement RBF and add a few tests  
						
						
						
						
					 
					
						2020-08-14 12:48:07 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							53b5f23fb2 
							
						 
					 
					
						
						
							
							[tests] Add tests for Wallet::create_tx()  
						
						
						
						
					 
					
						2020-08-11 11:31:11 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							9e5023670e 
							
						 
					 
					
						
						
							
							[tests] Add a proc macro to generate tests for OnlineBlockchain types  
						
						
						
						
					 
					
						2020-08-10 17:18:17 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c90c752f21 
							
						 
					 
					
						
						
							
							[wallet] Add force_non_witness_utxo() to TxBuilder  
						
						
						
						
					 
					
						2020-08-10 17:18:15 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							8d9ccf8d0b 
							
						 
					 
					
						
						
							
							[wallet] Allow limiting the use of internal utxos in TxBuilder  
						
						
						
						
					 
					
						2020-08-10 17:18:13 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							85090a28eb 
							
						 
					 
					
						
						
							
							[wallet] Add RBF and custom versions in TxBuilder  
						
						
						
						
					 
					
						2020-08-10 17:18:11 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							0665c9e854 
							
						 
					 
					
						
						
							
							[wallet] TxOrdering, shuffle/bip69 support  
						
						
						
						
					 
					
						2020-08-10 17:18:09 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7005a26fc5 
							
						 
					 
					
						
						
							
							[wallet] Nicer interface for WalletExport  
						
						
						
						
					 
					
						2020-08-10 13:20:48 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							08792b2fcd 
							
						 
					 
					
						
						
							
							[wallet] Add a type convert fee units, add Wallet::estimate_fee()  
						
						
						
						
					 
					
						2020-08-07 11:23:46 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							5f80950971 
							
						 
					 
					
						
						
							
							[export] Implement the wallet import/export format from FullyNoded  
						
						... 
						
						
						
						This commit closes  #31  
						
						
					 
					
						2020-08-07 10:19:06 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							b67bbeb202 
							
						 
					 
					
						
						
							
							[wallet] Refill the address pool whenever necessary  
						
						
						
						
					 
					
						2020-08-06 18:11:07 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7a23b2b558 
							
						 
					 
					
						
						
							
							[wallet] Abstract coin selection in a separate trait  
						
						
						
						
					 
					
						2020-08-06 16:56:41 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							499e579824 
							
						 
					 
					
						
						
							
							[wallet] Add a TxBuilder struct to simplify create_tx()'s interface  
						
						
						
						
					 
					
						2020-08-06 14:28:22 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							927c2f37b9 
							
						 
					 
					
						
						
							
							[wallet] Abstract, multi-platform datetime utils  
						
						
						
						
					 
					
						2020-08-06 14:28:20 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							0954049df0 
							
						 
					 
					
						
						
							
							[wallet] Cleanup, remove unnecessary mutable references  
						
						
						
						
					 
					
						2020-08-06 14:28:12 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4fcf7ac89e 
							
						 
					 
					
						
						
							
							Make the blockchain interface async again on wasm32-unknown-unknown  
						
						... 
						
						
						
						The procedural macro `#[maybe_async]` makes a method or every method of a trait
"async" whenever the target_arch is `wasm32`, and leaves them untouched on
every other platform.
The macro `maybe_await!($e:expr)` can be used to call `maybe_async` methods on
multi-platform code: it expands to `$e` on non-wasm32 platforms and to
`$e.await` on wasm32.
The macro `await_or_block!($e:expr)` can be used to contain async code as much
as possible: it expands to `tokio::runtime::Runtime::new().unwrap().block_on($e)`
on non-wasm32 platforms, and to `$e.await` on wasm32. 
						
						
					 
					
						2020-07-20 20:02:24 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							123984e99d 
							
						 
					 
					
						
						
							
							Remove async, upgrade electrum-client  
						
						
						
						
					 
					
						2020-07-17 09:44:01 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c3923b66f8 
							
						 
					 
					
						
						
							
							Remove unused file  
						
						
						
						
					 
					
						2020-06-30 17:21:56 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ea62337f0d 
							
						 
					 
					
						
						
							
							[database] Replace DerivationPaths with single u32s  
						
						
						
						
					 
					
						2020-06-30 15:21:14 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							2fb104824a 
							
						 
					 
					
						
						
							
							[wallet] Add hd_keypaths to outputs  
						
						
						
						
					 
					
						2020-06-30 14:01:38 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4f865ab2c0 
							
						 
					 
					
						
						
							
							[cli] Add a few commands to handle psbts  
						
						
						
						
					 
					
						2020-05-17 18:01:52 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							fb4abfb99c 
							
						 
					 
					
						
						
							
							[wallet] Specify the policy branch with a map  
						
						
						
						
					 
					
						2020-05-16 16:48:31 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c1b01e4d8c 
							
						 
					 
					
						
						
							
							[descriptors] Transform a descriptor into its "public" version  
						
						
						
						
					 
					
						2020-05-10 17:46:54 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							1ff9852cff 
							
						 
					 
					
						
						
							
							[wasm] Fix SystemTime for wasm and refactor the cli part  
						
						
						
						
					 
					
						2020-05-08 23:30:45 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							0cc9e1cdea 
							
						 
					 
					
						
						
							
							[blockchain] Use async I/O in the various blockchain impls  
						
						
						
						
					 
					
						2020-05-07 17:36:45 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							e32559a06a 
							
						 
					 
					
						
						
							
							[wallet] Add an option to change the assumed current height  
						
						
						
						
					 
					
						2020-05-06 17:17:14 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							75a9c30c9a 
							
						 
					 
					
						
						
							
							Add a generalized "Blockchain" interface  
						
						
						
						
					 
					
						2020-05-03 18:16:11 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							aa93a82904 
							
						 
					 
					
						
						
							
							Add a miniscript compiler CLI  
						
						
						
						
					 
					
						2020-04-29 12:16:58 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							04d04fd0b2 
							
						 
					 
					
						
						
							
							[wallet] Add assume_height_reached in PSBTSatisfier  
						
						
						
						
					 
					
						2020-04-28 16:59:15 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							3895b30083 
							
						 
					 
					
						
						
							
							[repl] Add broadcast command  
						
						
						
						
					 
					
						2020-04-21 16:39:00 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							f605f4b34d 
							
						 
					 
					
						
						
							
							Contribution improvements  
						
						
						
						
					 
					
						2020-04-07 11:19:38 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							2a7c7d5272 
							
						 
					 
					
						
						
							
							Policy and contribution  
						
						
						
						
					 
					
						2020-04-07 11:17:46 +02:00 
						 
				 
			
				
					
						
							
							
								Daniela Brozzoni 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7df3b4844e 
							
						 
					 
					
						
						
							
							Small fix in sync  
						
						
						
						
					 
					
						2020-04-07 11:16:55 +02:00 
						 
				 
			
				
					
						
							
							
								Alekos Filini 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							1a4e1bd96c 
							
						 
					 
					
						
						
							
							Wallet logic  
						
						
						
						
					 
					
						2020-04-07 11:16:53 +02:00