Alekos Filini
c90c752f21
[wallet] Add force_non_witness_utxo()
to TxBuilder
2020-08-10 17:18:15 +02:00
Alekos Filini
8d9ccf8d0b
[wallet] Allow limiting the use of internal utxos in TxBuilder
2020-08-10 17:18:13 +02:00
Alekos Filini
85090a28eb
[wallet] Add RBF and custom versions in TxBuilder
2020-08-10 17:18:11 +02:00
Alekos Filini
0665c9e854
[wallet] TxOrdering, shuffle/bip69 support
2020-08-10 17:18:09 +02:00
Alekos Filini
7005a26fc5
[wallet] Nicer interface for WalletExport
2020-08-10 13:20:48 +02:00
Alekos Filini
f7f99172fe
Add a feature to enable the async interface on non-wasm32 platforms
...
Follow-up to: #28
2020-08-10 11:41:19 +02:00
Alekos Filini
f0a1e670df
[examples] Use MemoryDatabase
in the compiler example
2020-08-08 09:37:25 +02:00
Alekos Filini
a5188209b2
Update .travis.ci to test the miniscriptc
example
2020-08-08 09:27:52 +02:00
Dominik Spicher
462d413b02
[examples] Fix Miniscript variants issue in compiler example
...
miniscript has extended the `Miniscript` struct to be generic
over a `ScriptContext`. This context is different for the `Sh`
variant (`Legacy`) than for the `Wsh` and `ShWsh` variants
(`Segwitv0`). Therefore, Rust is not happy with the single
`compiled` variable if it is used as an argument for all three
variants.
2020-08-07 16:08:23 +02:00
Dominik Spicher
a581457ba8
[examples] Add missing dependency for compiler example
2020-08-07 16:02:32 +02:00
Dominik Spicher
796a3a5c91
[examples] Fix renamed thresh_m descriptor
...
In miniscript 1.0, `thresh_m` has been renamed to `multi`
2020-08-07 15:17:59 +02:00
Alekos Filini
08792b2fcd
[wallet] Add a type convert fee units, add Wallet::estimate_fee()
2020-08-07 11:23:46 +02:00
Alekos Filini
5f80950971
[export] Implement the wallet import/export format from FullyNoded
...
This commit closes #31
2020-08-07 10:19:06 +02:00
Alekos Filini
82c7e11bd5
Improve .travis.ci
2020-08-06 19:30:17 +02:00
Alekos Filini
b67bbeb202
[wallet] Refill the address pool whenever necessary
2020-08-06 18:11:07 +02:00
Alekos Filini
7a23b2b558
[wallet] Abstract coin selection in a separate trait
2020-08-06 16:56:41 +02:00
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