]> Untitled Git - bdk/log
bdk
4 years agoBump version to 0.9.1-dev github/release/0.9.0
Alekos Filini [Thu, 8 Jul 2021 13:20:28 +0000 (15:20 +0200)]
Bump version to 0.9.1-dev

4 years agoBump version to 0.9.0 v0.9.0
Alekos Filini [Thu, 8 Jul 2021 11:37:19 +0000 (13:37 +0200)]
Bump version to 0.9.0

4 years agoUpdate version in `src/lib.rs`
Alekos Filini [Thu, 8 Jul 2021 11:37:05 +0000 (13:37 +0200)]
Update version in `src/lib.rs`

4 years agoUpdate CHANGELOG
Alekos Filini [Thu, 8 Jul 2021 11:36:20 +0000 (13:36 +0200)]
Update CHANGELOG

4 years agoMerge commit 'refs/pull/383/head' of github.com:bitcoindevkit/bdk into release/0.9.0
Alekos Filini [Tue, 6 Jul 2021 07:58:40 +0000 (09:58 +0200)]
Merge commit 'refs/pull/383/head' of github.com:bitcoindevkit/bdk into release/0.9.0

4 years agoMerge commit 'refs/pull/385/head' of github.com:bitcoindevkit/bdk into release/0.9.0
Alekos Filini [Tue, 6 Jul 2021 07:57:22 +0000 (09:57 +0200)]
Merge commit 'refs/pull/385/head' of github.com:bitcoindevkit/bdk into release/0.9.0

4 years agorustfmt
Evgenii P [Sat, 3 Jul 2021 07:08:38 +0000 (14:08 +0700)]
rustfmt

4 years agodsl: add regression test for and_or() descriptor
Evgenii P [Sat, 3 Jul 2021 06:52:05 +0000 (13:52 +0700)]
dsl: add regression test for and_or() descriptor

4 years agodsl: fix descriptor macro when and_or() used
Evgenii P [Sat, 3 Jul 2021 06:51:43 +0000 (13:51 +0700)]
dsl: fix descriptor macro when and_or() used

4 years agoBuild the `rpc` feature on docs.rs
Alekos Filini [Fri, 2 Jul 2021 08:09:09 +0000 (10:09 +0200)]
Build the `rpc` feature on docs.rs

4 years ago[rpc] Mark the RPC backend as experimental
Alekos Filini [Fri, 2 Jul 2021 08:07:44 +0000 (10:07 +0200)]
[rpc] Mark the RPC backend as experimental

4 years agoBuild the `rpc` feature on docs.rs
Alekos Filini [Fri, 2 Jul 2021 08:09:09 +0000 (10:09 +0200)]
Build the `rpc` feature on docs.rs

4 years ago[rpc] Mark the RPC backend as experimental
Alekos Filini [Fri, 2 Jul 2021 08:07:44 +0000 (10:07 +0200)]
[rpc] Mark the RPC backend as experimental

4 years agoBump version to 0.9.0-rc.1
Alekos Filini [Fri, 2 Jul 2021 08:06:31 +0000 (10:06 +0200)]
Bump version to 0.9.0-rc.1

4 years ago[verify] Build the `verify` feature on docs.rs
Alekos Filini [Fri, 18 Jun 2021 11:22:50 +0000 (13:22 +0200)]
[verify] Build the `verify` feature on docs.rs

4 years ago[verify] Use `impl_error!()` whenever possible
Alekos Filini [Fri, 18 Jun 2021 11:21:21 +0000 (13:21 +0200)]
[verify] Use `impl_error!()` whenever possible

4 years ago[verify] Add documentation
Alekos Filini [Fri, 18 Jun 2021 11:16:58 +0000 (13:16 +0200)]
[verify] Add documentation

4 years ago[verify] Cache txs to avoid multiple db/network lookups
Alekos Filini [Fri, 18 Jun 2021 11:13:45 +0000 (13:13 +0200)]
[verify] Cache txs to avoid multiple db/network lookups

4 years ago[wallet] Verify unconfirmed transactions after syncing
Alekos Filini [Thu, 1 Jul 2021 14:31:11 +0000 (16:31 +0200)]
[wallet] Verify unconfirmed transactions after syncing

Verify the unconfirmed transactions we download against the consensus
rules. This is currently exposed as an extra `verify` feature, since it
depends on a pre-release version of `bitcoinconsensus`.

Closes #352

4 years ago[wallet] Verify unconfirmed transactions after syncing
Alekos Filini [Thu, 27 May 2021 14:58:42 +0000 (16:58 +0200)]
[wallet] Verify unconfirmed transactions after syncing

Verify the unconfirmed transactions we download against the consensus
rules. This is currently exposed as an extra `verify` feature, since it
depends on a pre-release version of `bitcoinconsensus`.

Closes #352

4 years agoadd Copy trait to Progress types github/copy2
William Casarin [Sun, 30 May 2021 15:50:02 +0000 (08:50 -0700)]
add Copy trait to Progress types

4 years agoBump CI stable version to `1.53`
Alekos Filini [Mon, 21 Jun 2021 09:56:37 +0000 (11:56 +0200)]
Bump CI stable version to `1.53`

Fixes #374

4 years agoFix clippy warnings on `1.53`
Alekos Filini [Mon, 21 Jun 2021 09:54:56 +0000 (11:54 +0200)]
Fix clippy warnings on `1.53`

Fix `clippy::inconsistent_struct_constructor`: the constructor field
order was inconsistent with the struct declaration.

4 years agoFix CHANGELOG
Alekos Filini [Mon, 21 Jun 2021 07:07:15 +0000 (09:07 +0200)]
Fix CHANGELOG

The `Rpc` backend is not part of the release but it accidentally ended
up there during the merge

4 years agoMerge commit 'refs/pull/370/head' of github.com:bitcoindevkit/bdk
Alekos Filini [Fri, 18 Jun 2021 10:54:11 +0000 (12:54 +0200)]
Merge commit 'refs/pull/370/head' of github.com:bitcoindevkit/bdk

4 years ago[ci] Revert change to run_blockchain_tests.sh back to using container id
Steve Myers [Tue, 15 Jun 2021 22:57:14 +0000 (15:57 -0700)]
[ci] Revert change to run_blockchain_tests.sh back to using container id

4 years ago[ci] Change blockchain tests to use bitcoind rpc cookie authentication
Steve Myers [Fri, 11 Jun 2021 23:03:01 +0000 (16:03 -0700)]
[ci] Change blockchain tests to use bitcoind rpc cookie authentication

4 years agoMerge branch 'release/0.8.0'
Steve Myers [Mon, 14 Jun 2021 18:47:39 +0000 (11:47 -0700)]
Merge branch 'release/0.8.0'

4 years agoFix CHANGELOG unreleased link github/release/0.8.0
Steve Myers [Mon, 14 Jun 2021 18:43:48 +0000 (11:43 -0700)]
Fix CHANGELOG unreleased link

4 years agoAdd CHANGELOG v0.8.0 link
Steve Myers [Mon, 14 Jun 2021 18:40:50 +0000 (11:40 -0700)]
Add CHANGELOG v0.8.0 link

4 years agomake fee in TransactionDetails Option, add confirmation_time field as Option
Riccardo Casatta [Sat, 12 Jun 2021 13:01:44 +0000 (15:01 +0200)]
make fee in TransactionDetails Option, add confirmation_time field as Option

confirmation_time contains both a block height and block timestamp and is
Some only for confirmed transaction

4 years agoMerge commit 'refs/pull/348/head' of github.com:bitcoindevkit/bdk
Alekos Filini [Fri, 11 Jun 2021 09:41:23 +0000 (11:41 +0200)]
Merge commit 'refs/pull/348/head' of github.com:bitcoindevkit/bdk

4 years agoBump version to 0.8.1-dev
Alekos Filini [Fri, 11 Jun 2021 09:29:42 +0000 (11:29 +0200)]
Bump version to 0.8.1-dev

4 years agoBump version to 0.8.0 v0.8.0
Alekos Filini [Thu, 10 Jun 2021 14:00:01 +0000 (16:00 +0200)]
Bump version to 0.8.0

4 years agoUpdate CHANGELOG
Alekos Filini [Thu, 10 Jun 2021 13:59:24 +0000 (15:59 +0200)]
Update CHANGELOG

4 years agoBump version in `src/lib.rs`
Alekos Filini [Thu, 10 Jun 2021 13:59:08 +0000 (15:59 +0200)]
Bump version in `src/lib.rs`

4 years agoUse bitcoin's base64 feature for Psbts
Riccardo Casatta [Thu, 10 Jun 2021 13:14:00 +0000 (15:14 +0200)]
Use bitcoin's base64 feature for Psbts

4 years agoRemove redundant borrows
Tobin Harding [Tue, 8 Jun 2021 03:57:55 +0000 (13:57 +1000)]
Remove redundant borrows

Clippy emits:

  warning: this expression borrows a reference

As suggested remove the borrows from the front of vars that are already references.

4 years agoMerge commit 'refs/pull/365/head' of github.com:bitcoindevkit/bdk into release/0.8.0
Alekos Filini [Wed, 9 Jun 2021 14:05:16 +0000 (16:05 +0200)]
Merge commit 'refs/pull/365/head' of github.com:bitcoindevkit/bdk into release/0.8.0

4 years agoUse no_run instead of ignore
Tobin Harding [Tue, 11 May 2021 01:10:54 +0000 (11:10 +1000)]
Use no_run instead of ignore

We have an attribute `no_run` that builds but does not run example code
in Rustdocs, this keeps the examples building as the codebase evolves.

use `no_run` and fix example code so it builds cleanly during test run.

Some examples that require the `electrum` feature to be available have
been feature-gated to make sure they aren't accidentally compiled when
that feature is not enabled.

Co-authored-by: Alekos Filini <alekos.filini@gmail.com>
4 years agoRemove explicit `feature(external_doc)`
Alekos Filini [Wed, 9 Jun 2021 09:09:57 +0000 (11:09 +0200)]
Remove explicit `feature(external_doc)`

It looks like this is now enabled by default as of `cargo 1.54.0-nightly (0cecbd673 2021-06-01)`

4 years agoFix example/doctests format
Alekos Filini [Fri, 4 Jun 2021 13:53:15 +0000 (15:53 +0200)]
Fix example/doctests format

4 years ago[ci] Check fmt for examples/doctests
Alekos Filini [Fri, 4 Jun 2021 12:55:25 +0000 (14:55 +0200)]
[ci] Check fmt for examples/doctests

4 years agoadd details to TODO, format doc example
Riccardo Casatta [Fri, 4 Jun 2021 13:05:35 +0000 (15:05 +0200)]
add details to TODO, format doc example

4 years agoBump version to 0.8.0-rc.1
Alekos Filini [Fri, 4 Jun 2021 07:42:14 +0000 (09:42 +0200)]
Bump version to 0.8.0-rc.1

4 years agomove scan in setup
Riccardo Casatta [Thu, 3 Jun 2021 13:10:31 +0000 (15:10 +0200)]
move scan in setup

4 years agoupdate bitcoind dep
Riccardo Casatta [Thu, 3 Jun 2021 09:07:39 +0000 (11:07 +0200)]
update bitcoind dep

4 years agouse storage address instead of satoshi's
Riccardo Casatta [Thu, 3 Jun 2021 09:06:24 +0000 (11:06 +0200)]
use storage address instead of satoshi's

4 years agoalways ask node for tx no matter capabilities
Riccardo Casatta [Wed, 2 Jun 2021 08:06:05 +0000 (10:06 +0200)]
always ask node for tx no matter capabilities

4 years agocorrectly initialize UTXO keychain kind
Riccardo Casatta [Tue, 1 Jun 2021 14:19:32 +0000 (16:19 +0200)]
correctly initialize UTXO keychain kind

4 years agochange feature to execute sync from rpc to test-rpc
Riccardo Casatta [Tue, 1 Jun 2021 12:18:40 +0000 (14:18 +0200)]
change feature to execute sync from rpc to test-rpc

4 years agorename struct to CallResult
Riccardo Casatta [Tue, 1 Jun 2021 12:17:37 +0000 (14:17 +0200)]
rename struct to CallResult

4 years agomatch also on signet
Riccardo Casatta [Tue, 1 Jun 2021 12:15:46 +0000 (14:15 +0200)]
match also on signet

4 years agoupdate changelog with rpc feature
Riccardo Casatta [Mon, 31 May 2021 11:35:58 +0000 (13:35 +0200)]
update changelog with rpc feature

4 years agoImplements RPC Backend
Riccardo Casatta [Mon, 17 May 2021 15:20:32 +0000 (17:20 +0200)]
Implements RPC Backend

4 years agoUse AddressInfo in private methods
Paul Miller [Tue, 18 May 2021 15:09:11 +0000 (11:09 -0400)]
Use AddressInfo in private methods

4 years agoreturn AddressInfo from get_address
Paul Miller [Mon, 17 May 2021 20:31:18 +0000 (16:31 -0400)]
return AddressInfo from get_address

4 years ago[signer] Add an option to explicitly allow using non-`ALL` sighashes
Alekos Filini [Wed, 26 May 2021 08:34:25 +0000 (10:34 +0200)]
[signer] Add an option to explicitly allow using non-`ALL` sighashes

Instead of blindly using the `sighash_type` set in a psbt input, we
now only sign `SIGHASH_ALL` inputs by default, and require the user to
explicitly opt-in to using other sighashes if they desire to do so.

Fixes #350

4 years agoMerge commit 'refs/pull/347/head' of github.com:bitcoindevkit/bdk
Alekos Filini [Wed, 26 May 2021 06:56:38 +0000 (08:56 +0200)]
Merge commit 'refs/pull/347/head' of github.com:bitcoindevkit/bdk

4 years agoInitialize env_logger at start of blockchain tests
LLFourn [Fri, 21 May 2021 03:21:59 +0000 (13:21 +1000)]
Initialize env_logger at start of blockchain tests

4 years agorun_blockchain_tests.sh improvements
LLFourn [Fri, 21 May 2021 03:21:41 +0000 (13:21 +1000)]
run_blockchain_tests.sh improvements

4 years agoUppercase 'Test' so that github can see what's up
LLFourn [Thu, 20 May 2021 04:33:02 +0000 (14:33 +1000)]
Uppercase 'Test' so that github can see what's up

It is expecting something named 'Test electrum'

4 years agoAdd script for running the blockchain tests locally
LLFourn [Wed, 19 May 2021 06:22:11 +0000 (16:22 +1000)]
Add script for running the blockchain tests locally

4 years agoFix clippy warnings inside testutils macro
LLFourn [Wed, 19 May 2021 06:10:06 +0000 (16:10 +1000)]
Fix clippy warnings inside testutils macro

Now that it's inside the main repo clippy is having a go at me.

4 years agoRemove testutils feature so doctests worka again
LLFourn [Wed, 19 May 2021 06:09:01 +0000 (16:09 +1000)]
Remove testutils feature so doctests worka again

I wanted to only conditionally compile testutils but it's needed in
doctests which we can't conditionally compile for:

https://github.com/rust-lang/rust/issues/67295

4 years agoMove blockchain related stuff to blockchain_tests
LLFourn [Wed, 19 May 2021 05:52:51 +0000 (15:52 +1000)]
Move blockchain related stuff to blockchain_tests

4 years agoMerge testutils crate into the main crate
LLFourn [Wed, 19 May 2021 03:04:32 +0000 (13:04 +1000)]
Merge testutils crate into the main crate

This avoids having to keep the apis in sync between the macros and the
main project.

4 years agoRun blockchain tests on esplora
LLFourn [Tue, 18 May 2021 05:21:48 +0000 (15:21 +1000)]
Run blockchain tests on esplora

They were only being run on electrum before.

4 years agoMerge commit 'refs/pull/338/head' of github.com:bitcoindevkit/bdk
Steve Myers [Tue, 18 May 2021 23:41:45 +0000 (16:41 -0700)]
Merge commit 'refs/pull/338/head' of github.com:bitcoindevkit/bdk

4 years agoRoll blockchain tests proc macro into normal macro
LLFourn [Sun, 16 May 2021 05:07:55 +0000 (15:07 +1000)]
Roll blockchain tests proc macro into normal macro

This means one less crate in the repo. Had to do a Default on TestClient
to satisfy clippy.

4 years agoMerge commit 'refs/pull/346/head' of github.com:bitcoindevkit/bdk
Steve Myers [Fri, 14 May 2021 17:49:30 +0000 (10:49 -0700)]
Merge commit 'refs/pull/346/head' of github.com:bitcoindevkit/bdk

4 years agoFix changelog github/release/0.7.0
Alekos Filini [Wed, 12 May 2021 13:11:20 +0000 (15:11 +0200)]
Fix changelog

4 years agoBump version to 0.7.1-dev
Alekos Filini [Wed, 12 May 2021 13:10:28 +0000 (15:10 +0200)]
Bump version to 0.7.1-dev

4 years agoBump version to 0.7.0 v0.7.0
Alekos Filini [Wed, 12 May 2021 12:20:58 +0000 (14:20 +0200)]
Bump version to 0.7.0

4 years agoUse the released `testutils-macros`
Alekos Filini [Wed, 12 May 2021 12:20:23 +0000 (14:20 +0200)]
Use the released `testutils-macros`

4 years agoBump version in `src/lib.rs`
Alekos Filini [Wed, 12 May 2021 12:19:58 +0000 (14:19 +0200)]
Bump version in `src/lib.rs`

4 years agoBump `testutils-macros` to `v0.6.0`
Alekos Filini [Wed, 12 May 2021 12:19:00 +0000 (14:19 +0200)]
Bump `testutils-macros` to `v0.6.0`

4 years agoUpdate changelog in preparation of `v0.7.0`
Alekos Filini [Wed, 12 May 2021 12:17:46 +0000 (14:17 +0200)]
Update changelog in preparation of `v0.7.0`

4 years agoUpdate create transaction example code
Tobin Harding [Thu, 6 May 2021 06:11:06 +0000 (16:11 +1000)]
Update create transaction example code

The transaction builder changed a while ago, looks like some of the
example code did not get updated.

Update the transaction creation code to use a mutable builder.

4 years agoRemove stale comments
Tobin Harding [Tue, 11 May 2021 03:29:22 +0000 (13:29 +1000)]
Remove stale comments

The two fields this comment references are not `Option` type. This
comment seems to be stale.

4 years agoRemove unneeded unit expression
Tobin Harding [Tue, 11 May 2021 00:50:34 +0000 (10:50 +1000)]
Remove unneeded unit expression

Clippy emits:

  warning: unneeded unit expression

As suggested, remove the unneeded unit expression.

4 years agoClear clippy manual_map warning
Tobin Harding [Tue, 11 May 2021 00:47:18 +0000 (10:47 +1000)]
Clear clippy manual_map warning

The lint `manual_map` is new so we cannot explicitly allow it and
maintain backwards comparability. Instead, allow all lints for
`get_utxo_for` with a comment explaining why.

4 years agoUse consistent field ordering
Tobin Harding [Thu, 6 May 2021 04:34:22 +0000 (14:34 +1000)]
Use consistent field ordering

Clippy emits:

  warning: struct constructor field order is inconsistent with struct
  definition field order

As suggested, re-order the fields to be consistent with the struct
definition.

4 years agoUse !any() instead of find()...is_none()
Tobin Harding [Thu, 6 May 2021 04:32:08 +0000 (14:32 +1000)]
Use !any() instead of find()...is_none()

Clippy emits:

  warning: called `is_none()` after searching an `Iterator` with `find`

As suggested, use the construct: `!foo.iter().any(...)`

4 years agoRemove unnecessary clone
Tobin Harding [Thu, 6 May 2021 04:29:51 +0000 (14:29 +1000)]
Remove unnecessary clone

Clippy emits:

  warning: using `clone` on type `descriptor::policy::Condition` which
  implements the `Copy` trait

Remove the clone and rely on `Copy`.

4 years agoUse assert!(foo) instead of assert_eq!(foo, true)
Tobin Harding [Thu, 6 May 2021 04:22:30 +0000 (14:22 +1000)]
Use assert!(foo) instead of assert_eq!(foo, true)

It is redundant to pass true/false to `assert_eq!` since `assert!`
already asserts true/false.

This may, however, be controversial if someone thinks that

```
    assert_eq!(foo, false);
```

is more clear than

```
    assert!(!foo);
```

Use `assert!` directly instead of `assert_eq!` with true/false argument.

4 years agocontinue signing when finding already finalized inputs
Riccardo Casatta [Thu, 6 May 2021 15:11:43 +0000 (17:11 +0200)]
continue signing when finding already finalized inputs

4 years agoUse PsbtKey instead of PSBT
Tobin Harding [Fri, 7 May 2021 00:28:17 +0000 (10:28 +1000)]
Use PsbtKey instead of PSBT

We recently converted uses of `PSBT` -> `Psbt` inline with idiomatic
Rust acronym identifiers. Do the same to `PSBTKey`.

Use `PsbtKey` instead of `PSBTKey` when aliasing the import of
`psbt::raw::Key` from `bitcoin` library.

4 years agoUse Psbt instead of PSBT
Tobin Harding [Fri, 7 May 2021 00:25:45 +0000 (10:25 +1000)]
Use Psbt instead of PSBT

Idiomatic Rust uses lowercase for acronyms for all characters after the
first e.g. `std::net::TcpStream`. PSBT (Partially Signed Bitcoin
Transaction) should be rendered `Psbt` in Rust code if we want to write
idiomatic Rust.

Use `Psbt` instead of `PSBT` when aliasing the import of
`PartiallySignedTransaction` from `bitcoin` library.

4 years agocontinue signing when finding already finalized inputs
Riccardo Casatta [Thu, 6 May 2021 15:11:43 +0000 (17:11 +0200)]
continue signing when finding already finalized inputs

4 years agoMerge commit 'refs/pull/341/head' of github.com:bitcoindevkit/bdk into release/0.7.0
Alekos Filini [Fri, 7 May 2021 09:00:00 +0000 (11:00 +0200)]
Merge commit 'refs/pull/341/head' of github.com:bitcoindevkit/bdk into release/0.7.0

4 years agoMerge commit 'refs/pull/341/head' of github.com:bitcoindevkit/bdk
Alekos Filini [Fri, 7 May 2021 08:59:32 +0000 (10:59 +0200)]
Merge commit 'refs/pull/341/head' of github.com:bitcoindevkit/bdk

4 years agoUse `default: D` mirroring Rust documentation
Tobin Harding [Thu, 6 May 2021 03:54:52 +0000 (13:54 +1000)]
Use `default: D` mirroring Rust documentation

Currently we use `F: f` for the argument that is the default function
passed to `map_or_else` and pass a closure for the second argument. This
bent my brain while reading the documentation because the docs use
`default: D` for the first and `f: F` for the second. Although this is
totally trivial it makes deciphering the combinator chain easier if we
name the arguments the same way the Rust docs do.

Use `default: D` for the identifier of the default function passed into `map_or_else`.

4 years agoget psbt inputs with bounds check
Riccardo Casatta [Thu, 6 May 2021 13:55:58 +0000 (15:55 +0200)]
get psbt inputs with bounds check

4 years agoCheck index out of bound also for tx inputs not only for psbt inputs
Riccardo Casatta [Thu, 6 May 2021 12:41:30 +0000 (14:41 +0200)]
Check index out of bound also for tx inputs not only for psbt inputs

4 years agoBump version to 0.7.0-rc.1
Alekos Filini [Thu, 6 May 2021 11:56:38 +0000 (13:56 +0200)]
Bump version to 0.7.0-rc.1

4 years agoRewrite the `non_witness_utxo` check
Alekos Filini [Thu, 6 May 2021 09:35:58 +0000 (11:35 +0200)]
Rewrite the `non_witness_utxo` check

4 years ago[signer] Replace `force_non_witness_utxo` with `only_witness_utxo`
Alekos Filini [Tue, 20 Apr 2021 12:58:33 +0000 (14:58 +0200)]
[signer] Replace `force_non_witness_utxo` with `only_witness_utxo`

Instead of providing an opt-in option to force the addition of the
`non_witness_utxo`, we will now add them by default and provide the
option to disable them when they aren't considered necessary.

4 years ago[signer] Adjust signing behavior with `SignOptions`
Alekos Filini [Mon, 19 Apr 2021 12:16:39 +0000 (14:16 +0200)]
[signer] Adjust signing behavior with `SignOptions`

4 years ago[signer] Fix error variant
Alekos Filini [Fri, 16 Apr 2021 10:23:50 +0000 (12:23 +0200)]
[signer] Fix error variant