244 Commits

Author SHA1 Message Date
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
5683a83288
[repl] Expose list_transactions() in the REPL 2020-07-21 18:37:15 +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
4a51d50e1f
Update miniscript to version 1.0 2020-07-19 19:31:40 +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
0e432f3b26
[wallet] Fix potential overflow when adding block heights 2020-05-09 00:03:55 +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
e5ff696e73
[database] fix deletion on batch objects 2020-05-08 23:29:16 +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
95b2cd4c32
[blockchain] add the Esplora backend 2020-05-07 15:21:54 +02:00
Alekos Filini
de4a6a47e6
[readme] link to docs 2020-05-06 17:27:40 +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
45aa001e10
[blockchain] add Error::OfflineClient 2020-05-06 16:50:03 +02:00
Alekos Filini
75a9c30c9a
Add a generalized "Blockchain" interface 2020-05-03 18:16:11 +02:00
Alekos Filini
0988c8b8d5
[database] Add an in-memory database 2020-04-29 18:06:09 +02:00
Alekos Filini
aa93a82904
Add a miniscript compiler CLI 2020-04-29 12:16:58 +02:00
Alekos Filini
ada3ef3aa6
[cargo] Explicit Cargo.toml examples 2020-04-28 17:28:15 +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
Daniela Brozzoni
914719ccf4
Fix path calculation, fix test 2020-04-07 11:17:48 +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
Alekos Filini
d01e4369df
Add a LICENSE file 2020-02-07 12:28:29 +01:00
Alekos Filini
4919ff148b
Move everything in the root 2020-02-07 12:27:10 +01:00
Alekos Filini
a4c6005c7b
Improve the database interface, add a few tests for the keyvalue database 2020-02-07 12:12:41 +01:00
Alekos Filini
6ab29fcec5
Add a generalized database trait and a Sled-based implementation 2020-02-07 12:12:25 +01:00
Alekos Filini
2c179dd1b8
Create a PSBT signer from an ExtendedDescriptor 2020-02-07 11:48:01 +01:00
Alekos Filini
fa9a62fbee
Wrap Miniscript descriptors to support xpubs 2020-02-07 11:46:05 +01:00
Alekos Filini
94ca008a90
Add travis-ci 2020-02-07 11:42:59 +01:00
Alekos Filini
5828289805
Use the published electrum-client crate 2020-02-06 18:33:51 +01:00
Alekos Filini
c4dc741310
electrum: add rustls as the default ssl implementation 2020-02-06 17:22:14 +01:00
Alekos Filini
f5a201b98d
Missing test file 2020-02-03 10:23:00 +01:00
Alekos Filini
52fd04dd4c
Lightweight Electrum client with SSL/SOCKS5 support 2020-01-27 23:44:30 +01:00
Alekos Filini
96c87ea5ed
Initial commit 2020-01-22 23:13:11 +01:00