LLFourn
64b4cfe308
Use collect to avoid iter unwrapping Options
2020-10-15 13:41:36 +11:00
Alekos Filini
0caad5f3d9
[blockchain] Fix receiving a coinbase using Electrum/Esplora
...
Closes #107
2020-10-13 11:56:59 +02:00
Alekos Filini
848b52c50e
[keys]: Re-export tiny-bip39
...
Closes #104
2020-10-13 10:57:40 +02:00
Alekos Filini
100f0aaa0a
Bump rust-bitcoin to 0.25, fix Cargo dependencies
...
Closes #112 , closes #113 , closes #124
2020-10-13 10:39:48 +02:00
Steve Myers
69ef56cfed
[ci] Remove travis.yml
2020-10-12 09:30:20 -07:00
Steve Myers
070d481849
[ci] Fix clippy warnings for 1.47.0
2020-10-10 10:31:08 -07:00
Steve Myers
98803b2573
[ci] Use bitcoindevkit/electrs base image for electrum tests
2020-10-10 10:31:08 -07:00
Steve Myers
aea9abff8a
[ci] Fix clippy warnings, enable clippy checks
2020-10-10 10:31:07 -07:00
Steve Myers
6402fd07c2
[ci] Consolidate build, test, clippy jobs
2020-10-10 10:31:07 -07:00
Alekos Filini
8e7b195e93
Add a Discord badge to the README
2020-10-07 10:00:06 +02:00
Steve Myers
56bcbc4aff
[ci] add CI github actions
2020-10-05 09:35:54 -07:00
Alekos Filini
1faf0ed0a0
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 .
2020-10-02 17:52:11 +02:00
LLFourn
490c88934e
[keys] Less convoluted entropy generation
...
Since const generics aren't in rust yet you have to find some awkward
workarounds. This improves the workaround for specifying entropy length.
2020-09-30 20:05:17 +10:00
Steve Myers
eae15563d8
[descriptor] add ToWalletDescriptor trait tests
2020-09-25 22:21:11 -07:00
Alekos Filini
82251a8de4
[keys] Fix entropy generation
2020-09-24 15:59:46 +02:00
Alekos Filini
b294b11c54
[keys] Add a trait for keys that can be generated
2020-09-24 09:53:56 +02:00
Alekos Filini
c93cd1414a
[descriptor] Add descriptor templates, add DerivableKey
2020-09-24 09:53:54 +02:00
Alekos Filini
c51ba4a99f
[keys] Add a way to restrict the networks in which keys are valid
...
Thanks to the `ToWalletDescriptor` trait we can also very easily validate the checksum
for descriptors that are loaded from strings, if they contain one. Fixes #20 .
2020-09-24 09:53:51 +02:00
Alekos Filini
bc8acaf088
[keys] Take ScriptContext
into account when converting keys
2020-09-24 09:53:48 +02:00
Alekos Filini
ab9d964868
[keys] Add BIP39 support
2020-09-24 09:53:46 +02:00
Alekos Filini
751a553925
[descriptor] Improve the descriptor macro, add traits for key and descriptor types
2020-09-24 09:53:42 +02:00
Alekos Filini
9832ecb660
[descriptor] Add a macro to write descriptors from code
2020-09-24 09:53:41 +02:00
willcl-ark
4970d1e522
Add CONTRIBUTING.md
...
Add a CONTRIBUTING.md file based on a template taken from the
rust-lightning project.
2020-09-23 10:19:53 +01:00
willcl-ark
844820dcfa
Prettify README examples on github
2020-09-21 15:32:38 +01:00
Alekos Filini
33a5ba6cd2
[signer] Fix signing for ShWpkh
inputs
2020-09-16 17:50:54 +02:00
Alekos Filini
cf2a8bccac
[cargo] Add the required rand
features for wasm32
2020-09-16 17:30:11 +02:00
Alekos Filini
57ea653f1c
[database] Add AnyDatabase
and ConfigurableDatabase
...
This is related to #43
2020-09-15 15:39:15 +02:00
Alekos Filini
5b0fd3bba0
[blockchain] Document AnyBlockchain
and ConfigurableBlockchain
2020-09-15 15:38:59 +02:00
Alekos Filini
e5cc8d9529
[blockchain] Add an AnyBlockchain
enum to allow switching at runtime
...
This is related to #43
2020-09-15 12:03:07 +02:00
Alekos Filini
5eee18bed2
[blockchain] Add a trait to create Blockchain
s from a configuration
...
This is the first set of changes for #42
2020-09-15 12:03:04 +02:00
Alekos Filini
6094656a54
Update the README
2020-09-14 15:13:43 -07:00
Alekos Filini
10ab293e18
[cargo] Remove the magic
alias for repl
2020-09-14 15:13:43 -07:00
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
24fcb38565
[repl] Revert back the repl example to use Electrum
2020-09-09 17:06:35 +02:00
Alekos Filini
5d977bc617
Bump version to 0.1.0-beta.1
0.1.0-beta.1
2020-09-08 15:26:44 +02:00
Alekos Filini
cc07c61b47
Change docs link while we can't publish the crate
2020-09-08 15:24:44 +02:00
Alekos Filini
c4f4f20d8b
Improve the README, add examples
2020-09-07 16:33:08 +02:00
LLFourn
6a2d0db674
Remove assumed "/api" prefix from esplora
...
It is not necessary that esplora is hosted with a /api prefix
2020-09-05 14:00:50 +10:00
Alekos Filini
7b58a4ad6f
Fix the last_derivation_index
calculation
...
It should be set to `0` if not transactions are found during sync.
Closes #44
2020-09-04 21:53:31 +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
6b9c363937
Write the docs for blockchain::*
2020-09-03 11:36:07 +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