]> Untitled Git - bdk-cli/log
bdk-cli
5 years ago[wallet] Stop implicitly enforcing manaul selection by .add_utxo
LLFourn [Thu, 22 Oct 2020 01:07:51 +0000 (12:07 +1100)]
[wallet] Stop implicitly enforcing manaul selection by .add_utxo

This makes it possible to choose a UTXO manually without having to
choose them *all* manually. I introduced the `manually_selected_only`
option to enforce that only manually selected utxos can be used.

To stop the cli semantics changing I made the `utxos` keep the old
behaviour by calling `manually_selected_only`.

5 years agoBump rust-bitcoin to 0.25, fix Cargo dependencies
Alekos Filini [Fri, 9 Oct 2020 10:03:47 +0000 (12:03 +0200)]
Bump rust-bitcoin to 0.25, fix Cargo dependencies

Closes #112, closes #113, closes #124

5 years agoFix the recovery of a descriptor given a PSBT
Alekos Filini [Tue, 29 Sep 2020 16:18:50 +0000 (18:18 +0200)]
Fix the recovery of a descriptor given a PSBT

This commit upgrades `rust-miniscript` with a fix to only return the prefix that
matches a `hd_keypath` instead of the full derivation path, and then adapts the
signer code accordingly.

This commit closes #108 and #109.

5 years ago[descriptor] Add descriptor templates, add `DerivableKey`
Alekos Filini [Tue, 22 Sep 2020 14:12:09 +0000 (16:12 +0200)]
[descriptor] Add descriptor templates, add `DerivableKey`

5 years ago[keys] Add BIP39 support
Alekos Filini [Fri, 18 Sep 2020 15:26:58 +0000 (17:26 +0200)]
[keys] Add BIP39 support

5 years agoAdd CONTRIBUTING.md
willcl-ark [Wed, 23 Sep 2020 08:25:02 +0000 (09:25 +0100)]
Add CONTRIBUTING.md

Add a CONTRIBUTING.md file based on a template taken from the
rust-lightning project.

5 years ago[cargo] Add the required `rand` features for `wasm32`
Alekos Filini [Wed, 16 Sep 2020 15:30:11 +0000 (17:30 +0200)]
[cargo] Add the required `rand` features for `wasm32`

5 years ago[blockchain] Add a trait to create `Blockchain`s from a configuration
Alekos Filini [Thu, 10 Sep 2020 16:08:37 +0000 (18:08 +0200)]
[blockchain] Add a trait to create `Blockchain`s from a configuration

This is the first set of changes for #42

5 years ago[cargo] Remove the `magic` alias for `repl`
Alekos Filini [Mon, 14 Sep 2020 12:26:19 +0000 (14:26 +0200)]
[cargo] Remove the `magic` alias for `repl`

5 years agoRename the library to `bdk`
Alekos Filini [Mon, 14 Sep 2020 12:25:38 +0000 (14:25 +0200)]
Rename the library to `bdk`

5 years ago[blockchain] Simplify the architecture of blockchain traits
Alekos Filini [Wed, 9 Sep 2020 16:17:49 +0000 (18:17 +0200)]
[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.

5 years ago[repl] Revert back the repl example to use Electrum
Alekos Filini [Wed, 9 Sep 2020 15:04:40 +0000 (17:04 +0200)]
[repl] Revert back the repl example to use Electrum

5 years agoBump version to 0.1.0-beta.1 0.1.0-beta.1
Alekos Filini [Mon, 7 Sep 2020 15:13:54 +0000 (17:13 +0200)]
Bump version to 0.1.0-beta.1

5 years agoImprove the README, add examples
Alekos Filini [Mon, 7 Sep 2020 09:16:41 +0000 (11:16 +0200)]
Improve the README, add examples

5 years agoRename the crate to just "magical"
Alekos Filini [Fri, 4 Sep 2020 15:01:33 +0000 (17:01 +0200)]
Rename the crate to just "magical"

5 years agoWrite more docs, make `TxBuilder::with_recipients` take Scripts
Alekos Filini [Fri, 4 Sep 2020 13:45:11 +0000 (15:45 +0200)]
Write more docs, make `TxBuilder::with_recipients` take Scripts

5 years agoGeneral cleanup for the docs
Alekos Filini [Mon, 31 Aug 2020 08:49:44 +0000 (10:49 +0200)]
General cleanup for the docs

5 years agoAdd the license to every file
Alekos Filini [Mon, 31 Aug 2020 09:26:36 +0000 (11:26 +0200)]
Add the license to every file

5 years ago[wallet] Add AddressValidators
Alekos Filini [Sat, 15 Aug 2020 21:21:13 +0000 (23:21 +0200)]
[wallet] Add AddressValidators

5 years ago[cli] Make the REPL return JSON
Alekos Filini [Sat, 15 Aug 2020 18:16:34 +0000 (20:16 +0200)]
[cli] Make the REPL return JSON

5 years agoUse `miniscript::DescriptorPublicKey`
Alekos Filini [Wed, 12 Aug 2020 10:51:50 +0000 (12:51 +0200)]
Use `miniscript::DescriptorPublicKey`

This allows us to remove all our custom "ExtendedDescriptor" implementation since that is
now built directly in miniscript.

5 years ago[compact_filters] Add support for Tor
Alekos Filini [Sat, 29 Aug 2020 17:40:45 +0000 (19:40 +0200)]
[compact_filters] Add support for Tor

5 years agoCompact Filters blockchain implementation
Alekos Filini [Tue, 25 Aug 2020 14:07:26 +0000 (16:07 +0200)]
Compact Filters blockchain implementation

5 years agoImplement RBF and add a few tests
Alekos Filini [Thu, 13 Aug 2020 14:51:27 +0000 (16:51 +0200)]
Implement RBF and add a few tests

5 years ago[tests] Add a proc macro to generate tests for `OnlineBlockchain` types
Alekos Filini [Mon, 10 Aug 2020 08:49:34 +0000 (10:49 +0200)]
[tests] Add a proc macro to generate tests for `OnlineBlockchain` types

5 years ago[wallet] Add `force_non_witness_utxo()` to TxBuilder
Alekos Filini [Sat, 8 Aug 2020 10:06:40 +0000 (12:06 +0200)]
[wallet] Add `force_non_witness_utxo()` to TxBuilder

5 years agoAdd a feature to enable the async interface on non-wasm32 platforms
Alekos Filini [Mon, 10 Aug 2020 09:41:19 +0000 (11:41 +0200)]
Add a feature to enable the async interface on non-wasm32 platforms

Follow-up to: #28

5 years ago[examples] Add missing dependency for compiler example
Dominik Spicher [Fri, 7 Aug 2020 14:02:32 +0000 (16:02 +0200)]
[examples] Add missing dependency for compiler example

5 years ago[wallet] Add a type convert fee units, add `Wallet::estimate_fee()`
Alekos Filini [Fri, 7 Aug 2020 09:23:01 +0000 (11:23 +0200)]
[wallet] Add a type convert fee units, add `Wallet::estimate_fee()`

5 years ago[wallet] Refill the address pool whenever necessary
Alekos Filini [Thu, 6 Aug 2020 16:11:07 +0000 (18:11 +0200)]
[wallet] Refill the address pool whenever necessary

5 years ago[wallet] Abstract coin selection in a separate trait
Alekos Filini [Thu, 6 Aug 2020 14:56:41 +0000 (16:56 +0200)]
[wallet] Abstract coin selection in a separate trait

5 years ago[wallet] Add a `TxBuilder` struct to simplify `create_tx()`'s interface
Alekos Filini [Thu, 6 Aug 2020 11:09:39 +0000 (13:09 +0200)]
[wallet] Add a `TxBuilder` struct to simplify `create_tx()`'s interface

5 years ago[wallet] Abstract, multi-platform datetime utils
Alekos Filini [Thu, 6 Aug 2020 09:12:15 +0000 (11:12 +0200)]
[wallet] Abstract, multi-platform datetime utils

5 years ago[repl] Expose list_transactions() in the REPL
Alekos Filini [Tue, 21 Jul 2020 16:37:15 +0000 (18:37 +0200)]
[repl] Expose list_transactions() in the REPL

5 years agoMake the blockchain interface async again on wasm32-unknown-unknown
Alekos Filini [Mon, 20 Jul 2020 13:51:57 +0000 (15:51 +0200)]
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.

5 years agoUpdate miniscript to version 1.0
Alekos Filini [Sun, 19 Jul 2020 17:24:05 +0000 (19:24 +0200)]
Update miniscript to version 1.0

5 years agoRemove async, upgrade electrum-client
Alekos Filini [Wed, 15 Jul 2020 16:49:24 +0000 (18:49 +0200)]
Remove async, upgrade electrum-client

5 years ago[cli] Add a few commands to handle psbts
Alekos Filini [Sun, 17 May 2020 16:01:52 +0000 (18:01 +0200)]
[cli] Add a few commands to handle psbts

5 years ago[wallet] Specify the policy branch with a map
Alekos Filini [Sat, 16 May 2020 14:48:31 +0000 (16:48 +0200)]
[wallet] Specify the policy branch with a map

5 years ago[descriptors] Transform a descriptor into its "public" version
Alekos Filini [Sun, 10 May 2020 15:42:02 +0000 (17:42 +0200)]
[descriptors] Transform a descriptor into its "public" version

5 years ago[wasm] Fix SystemTime for wasm and refactor the cli part
Alekos Filini [Fri, 8 May 2020 21:30:45 +0000 (23:30 +0200)]
[wasm] Fix SystemTime for wasm and refactor the cli part

5 years ago[blockchain] Use async I/O in the various blockchain impls
Alekos Filini [Thu, 7 May 2020 15:36:45 +0000 (17:36 +0200)]
[blockchain] Use async I/O in the various blockchain impls

5 years ago[blockchain] add the Esplora backend
Alekos Filini [Thu, 7 May 2020 13:14:05 +0000 (15:14 +0200)]
[blockchain] add the Esplora backend

5 years ago[wallet] Add an option to change the assumed current height
Alekos Filini [Wed, 6 May 2020 15:17:14 +0000 (17:17 +0200)]
[wallet] Add an option to change the assumed current height

5 years agoAdd a generalized "Blockchain" interface
Alekos Filini [Sun, 3 May 2020 14:15:11 +0000 (16:15 +0200)]
Add a generalized "Blockchain" interface

5 years agoAdd a miniscript compiler CLI
Alekos Filini [Wed, 29 Apr 2020 09:52:45 +0000 (11:52 +0200)]
Add a miniscript compiler CLI

5 years ago[cargo] Explicit Cargo.toml examples
Alekos Filini [Tue, 28 Apr 2020 15:28:15 +0000 (17:28 +0200)]
[cargo] Explicit Cargo.toml examples

5 years ago[repl] Add broadcast command
Alekos Filini [Tue, 21 Apr 2020 14:39:00 +0000 (16:39 +0200)]
[repl] Add broadcast command

5 years agoContribution improvements
Alekos Filini [Mon, 17 Feb 2020 13:22:53 +0000 (14:22 +0100)]
Contribution improvements

5 years agoPolicy and contribution
Alekos Filini [Sat, 15 Feb 2020 20:27:51 +0000 (21:27 +0100)]
Policy and contribution

5 years agoWallet logic
Alekos Filini [Fri, 7 Feb 2020 22:22:28 +0000 (23:22 +0100)]
Wallet logic

5 years agoAdd a LICENSE file
Alekos Filini [Fri, 7 Feb 2020 11:28:29 +0000 (12:28 +0100)]
Add a LICENSE file

5 years agoMove everything in the root
Alekos Filini [Fri, 7 Feb 2020 11:27:10 +0000 (12:27 +0100)]
Move everything in the root

5 years agoInitial commit
Alekos Filini [Wed, 22 Jan 2020 22:13:11 +0000 (23:13 +0100)]
Initial commit