277 Commits

Author SHA1 Message Date
thunderbiscuit
2cbb314d0b
Remove BdkError type alias 2022-10-17 16:43:37 -04:00
thunderbiscuit
535fc70433
Upgrade bdk dependency to v0.23 2022-10-17 16:19:35 -04:00
thunderbiscuit
10fa276bec
Update uniffi-rs to 0.20.0 2022-10-17 16:03:27 -04:00
thunderbiscuit
1cc9afaeb3
Rename DescriptorSecretKey.secret_bytes() to mirror upstream API 2022-10-03 14:54:01 -04:00
thunderbiscuit
6f5e621561
Remove changelog entry to follow workflow defined in #202 2022-10-03 14:54:00 -04:00
thunderbiscuit
1dd6f2d9f8
Add test for DescriptorSecretKey.secret_key_bytes() 2022-10-03 14:53:58 -04:00
thunderbiscuit
f92b45db6a
Add ability to retrieve private keys as bytes
This feature is needed for compatibility with LDKLite, where the
initial entropy given to LDK is the private key of the root of
the BIP32 derivation tree.

Closes #188
2022-10-03 14:53:25 -04:00
thunderbiscuit
c971d54aea
Fix warnings 2022-09-30 19:37:19 -04:00
thunderbiscuit
2abccafb8f
Add combine() method on PSBT
Closes #198
2022-09-30 19:37:12 -04:00
Steve Myers
75d0415bec
Add release templates and dev cycle docs, update changelog process 2022-09-29 11:18:27 -05:00
thunderbiscuit
485f4f72ce
Bump version to 0.9.0 v0.9.0 2022-09-08 15:18:48 -04:00
thunderbiscuit
37dddd05f6
Update changelog for 0.9.0 release 2022-09-08 15:17:35 -04:00
Steve Myers
dfb350e206
Merge bitcoindevkit/bdk-ffi#193: Update bdk dependency to 0.22
3c6075ad96afa238dc3ceca71ba82cb10088bb90 Add Balance struct and conversion from BdkBalance (thunderbiscuit)
4e15badb14d34db4911641f345e99987d132a81c Update BDK to version 0.22 (thunderbiscuit)

Pull request description:

  The bindings do not build when attempting this upgrade because `get_balance()` now returns a `Balance` struct (this was merged in bitcoindevkit/bdk#640)

  ```sh
  error[E0308]: mismatched types
     --> src/lib.rs:433:9
      |
  432 |     fn get_balance(&self) -> Result<u64, Error> {
      |                              ------------------ expected `Result<u64, bdk::Error>` because of return type
  433 |         self.get_wallet().get_balance()
      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found struct `Balance`
      |
      = note: expected enum `Result<u64, _>`
                 found enum `Result<Balance, _>`

  For more information about this error, try `rustc --explain E0308`.
  error: could not compile `bdk-ffi` due to previous error
  ```

  When we upgrade to `0.22.0` we could decide to add the `Balance` struct to the bindings, or simply return the total by calling `get_total()`, which returns a `u64` (same as we have now).

ACKs for top commit:
  notmandatory:
    ACK 3c6075ad96afa238dc3ceca71ba82cb10088bb90

Tree-SHA512: 13d2f83f992735f4f9619ae339d7834df08385129edf06bac830c298b433571af3f211e92a6da1f4f9646dec27dbd2c6133a035f26eac8757b7a1c94b54b463d
2022-09-08 13:58:27 -05:00
thunderbiscuit
3c6075ad96
Add Balance struct and conversion from BdkBalance 2022-09-08 08:35:10 -05:00
thunderbiscuit
4e15badb14
Update BDK to version 0.22 2022-09-08 08:34:56 -05:00
Steve Myers
f05a6648a7
Refactor TransactionDetails to include confirmation_time (#190) 2022-09-05 14:02:29 -04:00
thunderbiscuit
297680b7c2
Merge pull request #194 from thunderbiscuit/update/uniffi-bindgen
Update uniffi-bindgen to 0.19.5
2022-09-05 13:36:07 -04:00
Steve Myers
8166f820b4
Add README info badges for MSRV and other links 2022-09-05 12:04:08 -05:00
Steve Myers
4f20966ddd
Update CI test rust versions to 1.61 and 1.63 2022-09-05 11:46:26 -05:00
thunderbiscuit
d447aac9ae
Update uniffi-bindgen to 0.19.5 2022-09-02 13:11:31 -04:00
thunderbiscuit
159e7ab4af
Pin version of uniffi-bindgen in bdk-ffi-bindgen tool (#189) 2022-08-29 22:08:38 -04:00
thunderbiscuit
bfe03b91b2
Add inline documentation (#171)
* Add docs for AddressInfo and AddressIndex structs

* Add docs for DatabaseConfig and ElectrumConfig

* Add docs for EsploraConfig struct

* Add docs for TransactionDetails struct

* Add docs for OutPoint struct

* Add docs for TxOut struct

* Add docs for TxBuilder
2022-08-29 15:47:37 -04:00
Pedro
3b028ecab1
Expose set_recipients API from TxBuiler (#186) 2022-08-29 09:58:46 -04:00
thunderbiscuit
aa004201b2
Fix method names to mirror Rust bdk API (#185)
* Fix method names to mirror Rust bdk API

* Fix method names to mirror Rust bdk API
2022-08-18 14:35:17 -04:00
thunderbiscuit
eed5554551
Merge pull request #184 from thunderbiscuit/block-height-hash
Add `get_height` and `get_block_hash` methods on blockchain
2022-08-18 14:14:03 -04:00
thunderbiscuit
88427e4a05
Update CHANGELOG.md
Co-authored-by: Steve Myers <github@notmandatory.org>
2022-08-18 14:04:31 -04:00
thunderbiscuit
8248660c52
Merge branch 'master' into block-height-hash 2022-08-18 13:43:18 -04:00
thunderbiscuit
25963ec982
Add get_height and get_block_hash methods on blockchain 2022-08-18 13:39:00 -04:00
Steve Myers
7da28658a5
Merge bitcoindevkit/bdk-ffi#154: Add child key pair generation api
5944756b780968588e97886d888bb854aa2053ad Added tests for DescriptorSecretKey and DescriptorPublicKey (dhruvbaliyan)
58fea6b2050d9f10b1c5429cce4f4969c155e9e3 Added interfaces DescriptorSecretKey and DescriptorPublicKey (dhruvbaliyan)
4977cb6d68830accf036b192dba3c524253e53f2 Added interface DerivationPath (dhruvbaliyan)
930a1f1eb4a64bf447dec2493edd9948be67f119 Added generate_mnemonic method (dhruvbaliyan)
973013cbdfb0093c9d0bc8d2f5176c981160e060 Removed ExtendedKeyInfo & related methods (dhruvbaliyan)

Pull request description:

  Would like to know if anything can be improved. Completes #87

Top commit has no ACKs.

Tree-SHA512: a480535c8965015d860336c717ec3c394778ac08194b0336eeba4209f3e3eff2072873a190dd8c9e4fac1e2f712c7040c838dc1c1a757d53c28866f118c99c17
2022-08-18 12:14:35 -05:00
dhruvbaliyan
5944756b78
Added tests for DescriptorSecretKey and DescriptorPublicKey 2022-08-18 04:24:03 +05:30
dhruvbaliyan
58fea6b205
Added interfaces DescriptorSecretKey and DescriptorPublicKey 2022-08-18 04:24:02 +05:30
dhruvbaliyan
4977cb6d68
Added interface DerivationPath 2022-08-18 04:24:02 +05:30
dhruvbaliyan
930a1f1eb4
Added generate_mnemonic method 2022-08-18 04:24:02 +05:30
dhruvbaliyan
973013cbdf
Removed ExtendedKeyInfo & related methods 2022-08-18 04:24:01 +05:30
thunderbiscuit
d38737669d
Fix bdk-python link in readme (#182) 2022-08-17 17:20:20 -04:00
thunderbiscuit
6896097eb7
Release/0.8 (#177)
* Update changelog to reflect 0.8.0 additions

* Bump version to 0.8.0
2022-07-29 14:08:23 -04:00
Steve Myers
7d95433c28
Merge bitcoindevkit/bdk-ffi#175: Set project MSRV to 1.57.0
6d53cbeb2502602d1bab0fd11f63d203f61b507a Fix fmt error (Steve Myers)
1a12f37a2f1c5f99e3b590b3ba070859120a9f8e Set MSRV to 1.57.0 (Steve Myers)

Pull request description:

  ### Description

  The `master` branch is currently not passing the new github checks.

  A required dependency of `bdk-ffi-bindgen` is `uniffi_bindgen` and it depends on `os_str_bytes` v6.2.0 which has a MSRV of 1.57.0. I therefore had to make the MSRV of `bdk-ffi` also 1.57.0 and update the github actions. This PR also fixes a small `cargo fmt` warning.

  ### Notes to the reviewers

  ```shell
  % cargo +1.56.1 build
  error: package `os_str_bytes v6.2.0` cannot be built because it requires rustc 1.57.0 or newer, while the currently active rustc version is 1.56.1
  ```

  ```shell
  % cargo tree -i os_str_bytes
  os_str_bytes v6.2.0
  └── clap_lex v0.2.4
      └── clap v3.1.18
          └── uniffi_bindgen v0.19.3
              └── bdk-ffi-bindgen v0.2.0 (/Users/steve/git/notmandatory/bdk-ffi/bdk-ffi-bindgen)
  ```

  ### Checklists

  #### All Submissions:

  * [x] I've signed all my commits
  * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md)
  * [x] I ran `cargo fmt` and `cargo clippy` before committing

Top commit has no ACKs.

Tree-SHA512: 87ad4a02d91184b421871354b1f5c31d906bf7460fe992db15666da32a65f13d8fbaf4ae53928f410a7206b195c8dff76af07210c144a4d02854ceb6af265f7e
2022-07-29 09:43:16 -07:00
Steve Myers
6d53cbeb25
Fix fmt error 2022-07-26 12:36:07 -07:00
Steve Myers
1a12f37a2f
Set MSRV to 1.57.0 2022-07-26 12:35:41 -07:00
Steve Myers
04022787c4
Merge bitcoindevkit/bdk-ffi#174: Add github workflows for audit, test and fmt
46850ed4710a18bc2db785d6816b6acddcfced5f Add github issue templates and PR template (Steve Myers)
49da6fcbaeaf3f3b437a3f2f58823c5aeba3ef14 Fix clippy warnings (Steve Myers)
075510d6e452522bef113568a895233ffc229410 Add github workflows for audit, test and fmt (Steve Myers)

Pull request description:

  1. Copied and updated github workflows from BDK project.
  2. Fixed clippy warnings.
  3. Added github issue templates and PR templates from BDK project.

  Fixes #88

Top commit has no ACKs.

Tree-SHA512: 7aaca6be0f05d12f4561e165ebc45b52e40200b231b55326732756d45116f371f2da4c5d7cc590cd0af9450c344530f815a357fa979a34d0181efc2149ffccb3
2022-07-26 12:25:25 -07:00
Steve Myers
46850ed471
Add github issue templates and PR template 2022-07-25 13:17:52 -07:00
Steve Myers
49da6fcbae
Fix clippy warnings 2022-07-25 13:17:52 -07:00
Steve Myers
075510d6e4
Add github workflows for audit, test and fmt 2022-07-25 13:17:38 -07:00
thunderbiscuit
fa5c67cd05
Bump uniffi-rs to 0.19.3 (#173) 2022-07-25 15:15:23 -04:00
thunderbiscuit
1a20d0a6c2
Merge pull request #164 from zoedberg/coin_selection
Add coin selection methods
2022-07-21 15:39:55 -04:00
Zoe Faltibà
a3ae4635eb
Post review fixes 2022-07-21 21:04:57 +02:00
Zoe Faltibà
5f12900c6d
Add TxBuilder coin selection methods 2022-07-21 16:59:16 +02:00
thunderbiscuit
1a5a628a5d
Merge pull request #170 from thunderbiscuit/bump/bdk-0.20.0
Update BDK to version 0.20.0
2022-07-20 11:49:21 -04:00
thunderbiscuit
d8c8261e44
Update BDK to version 0.20.0 2022-07-15 12:03:19 -04:00
thunderbiscuit
692904df1e
Merge pull request #158 from zoedberg/list_unspent
Add Wallet list_unspent method
2022-07-12 12:07:52 -04:00