347 Commits

Author SHA1 Message Date
Antoine Poinsot
a69fb625ea
qa: use a CSV of 10 for recovery 2022-12-09 12:27:49 +01:00
Antoine Poinsot
a78f46fa2f
[refactoring] jsonrpc: sort command names alphabetically 2022-12-09 12:27:48 +01:00
Antoine Poinsot
c09ae3f87b
commands, jsonrpc: add a new 'createrecovery' command
This is a new command dedicated to the recovery usecase. For now it's
dead simple: sweep all coins that are available through the recovery
path to a given address.
2022-12-09 12:27:47 +01:00
Antoine Poinsot
3d5d0134b4
commands: fix the capacity of input vectors in create_spend
They were based on the expected size of the outputs vector...
2022-12-09 12:20:39 +01:00
Antoine Poinsot
f2312593da
commands: check for dust outputs in the PSBT sanity checks 2022-12-09 12:19:02 +01:00
Antoine Poinsot
9f23161a53
commands: correct the max feerate value
We should have a functional test for this...
2022-12-09 12:19:02 +01:00
Antoine Poinsot
54410cd9c4
database: allow to query coins by their spending status 2022-12-09 12:19:01 +01:00
Antoine Poinsot
b3337193a4
Merge #153: Fill in non_witness_utxo when creating Spend PSBTs
07e5ea3fd2afae4e1b84abc57b0937c6e74ab3b0 commands: fill non_witness_utxo field in PSBT inputs for createspend (Antoine Poinsot)

Pull request description:

  Fixes #133.

ACKs for top commit:
  edouardparis:
    ACK 07e5ea3fd2afae4e1b84abc57b0937c6e74ab3b0

Tree-SHA512: 57a211482e138d55c95494a070e67e2f353a8688cf0f546b71de18c5ea6c2b752231c84c6281b8ed59487cb057fc8265139b59598b3bed79bb6482a5cdd00a7c
2022-12-09 12:18:43 +01:00
Antoine Poinsot
07e5ea3fd2
commands: fill non_witness_utxo field in PSBT inputs for createspend
We are still in segwit v0, so signers need it!!
2022-12-09 10:49:49 +01:00
edouard
ca771e3e00
Merge #183: fix installer: import_descriptor next button
2d788d5bffc1b237dc6be3c09ca2e13afcdeca67 fix installer: import_descriptor next button (edouard)

Pull request description:

  Next button was grey although the descriptor form
  is not empty.

ACKs for top commit:
  edouardparis:
    Self-ACK 2d788d5bffc1b237dc6be3c09ca2e13afcdeca67

Tree-SHA512: ad98aa33691c24e65ca0c04af47b007f4c9a5abcfd376f9a84c9a2de40a39f34f24aceebdd209ad9dd92d5ec7a7d3806ff61063ec45eb7c00a5f4b986e8c97ba
2022-12-09 09:03:12 +01:00
edouard
abe69a1f8f
Merge #184: gui: bump ledger_bitcoin_client 0.1.1
2a609a8eb69fc14d6bb9f58e0043a95ca9713d04 gui: bump ledger_bitcoin_client 0.1.1 (edouard)

Pull request description:

  This version of the client contains a fix
  required for the no inputs recognized warning.

ACKs for top commit:
  edouardparis:
    Self-ACK 2a609a8eb69fc14d6bb9f58e0043a95ca9713d04

Tree-SHA512: 39cff0aee6c66909948cdef9354e71c204f0e03696e71c641919d9f749463316da470b296197c794940e412cf13cf43139f48cda76b010652e8c6dc309f227f3
2022-12-09 08:57:05 +01:00
edouard
d0abaec485
Merge #175: gui: bump liana for release
9fa3cde2991a9ea66ba0f5e2b1da3f40e3d8165e bump liana:master (edouard)

Pull request description:

  TODO: bump this branch again, after milestone is done

ACKs for top commit:
  edouardparis:
    Self-ACK 9fa3cde2991a9ea66ba0f5e2b1da3f40e3d8165e

Tree-SHA512: 55941cba40ffc1ff82ea43a7b46fca40e424a529a76c727ae25a276b88fca2b5a45c9481d43cb30298662b4b1b04a121969cee6407b92b91db7b8dec012e6eb0
2022-12-09 08:08:47 +01:00
edouard
2a609a8eb6 gui: bump ledger_bitcoin_client 0.1.1
This version of the client contains a fix
required for the no inputs recognized warning.
2022-12-08 18:08:10 +01:00
edouard
2d788d5bff fix installer: import_descriptor next button
Next button was grey although the descriptor form
is not empty.
2022-12-08 17:30:28 +01:00
Antoine Poinsot
f03b617490
Merge #176: Friendlier bitcoind startup error handling
0306773cdca15009d3bf2c6eb0c3ebd8e7fb7989 daemon: log and exit 1 on startup error, don't panic (Antoine Poinsot)
13b2b8eef4dd5deafe04b2330b469067afd0b12c bitcoind: immediately set the default retry limit (Antoine Poinsot)
b0ef121e91209e1c69ddefa0765d7a93d1dfb569 bitcoind: accurate connection sanity checks at startup (Antoine Poinsot)

Pull request description:

  We were not properly treating warming up errors when bitcoind was starting up. Also, better to just log as error and `exit` with `1` instead of panic'ing on a daemon startup error.

  See the commit messages for details.

  Fixes #134
  Fixes #163

ACKs for top commit:
  edouardparis:
    ACK 0306773cdca15009d3bf2c6eb0c3ebd8e7fb7989

Tree-SHA512: e14a72456104682ccff30d88e21303447065d371aed7279461595795eb938ba823578f05cc47704d996dbe570d12f467b91a88d58363511864e6a1f10eb76004
2022-12-08 17:23:11 +01:00
edouard
9fa3cde299 bump liana:master 2022-12-08 15:49:04 +01:00
Antoine Poinsot
d385e99726
Merge #179: gui: cleanup the README.
f1e072bb5f59e0bffb6d39b340bb5be85c132be4 gui: cleanup the README. (Antoine Poinsot)

Pull request description:

  Fixes #105.

ACKs for top commit:
  darosior:
    self-ACK f1e072bb5f59e0bffb6d39b340bb5be85c132be4 -- trivial

Tree-SHA512: a1ef68eacdca0c40ac9ff701b29016ee50cbca15528d8cb028f33532369c109e214ca31be9ec89a9ff59baebd1f3e9d706f9e64303df00462471f64f7f487899
2022-12-08 15:02:53 +01:00
Antoine Poinsot
4479ff91d2
Merge #178: Cargo: fix the rust-miniscript patched dependency for downstream
293c28570ca28e1375d424245a907c8d0b7e2f85 Cargo: fix the rust-miniscript patched dependency for downstream (Antoine Poinsot)

Pull request description:

  This new syntax would actually force all downstream users to apply the patch section in their Cargo.toml! Revert to the previous syntax of specifying the git repo directly.

ACKs for top commit:
  darosior:
    self-ACK 293c28570ca28e1375d424245a907c8d0b7e2f85

Tree-SHA512: ddddf7e680c13f2b8b3d64ca01d928e9ce64af18f21bc8eaecc009f4c6aee8aae85cecd027173ed13505035506dff659b11a5d8595d838d09098b213c5a43c99
2022-12-08 15:01:48 +01:00
Antoine Poinsot
4aeae407c7
Merge #177: Check for key duplicates when creating a descriptor
9cc748cd2acb3338f230378b827104fee4e56318 descriptors: make the satisfaction size helpers part of the multi desc (Antoine Poinsot)
929c79a56a82566359bb9c19587d4ddf9ed2e04d descriptors: check for duplicates when creating a descriptor (Antoine Poinsot)

Pull request description:

  Fixes #149.

  Also contains a drive-by fix for the sat size API in the second commit.

ACKs for top commit:
  darosior:
    self-ACK 9cc748cd2acb3338f230378b827104fee4e56318

Tree-SHA512: 72be90ff49895546d5c83060650418243d43d48c19d781a209dc12cb6bcff0d880ffe0aa34b8f124b9fea6c0629c7e20328579e72072cad8e39a45be4b176471
2022-12-08 15:00:50 +01:00
Antoine Poinsot
0306773cdc
daemon: log and exit 1 on startup error, don't panic 2022-12-08 14:59:50 +01:00
Antoine Poinsot
13b2b8eef4
bitcoind: immediately set the default retry limit
We were previously adding it later on to fail early on startup error.
This didn't handle well "warming up" errors.

Now that it was reachable and listening to requests already, we can just
use the real retry limit from the get-go.
2022-12-08 14:59:49 +01:00
Antoine Poinsot
b0ef121e91
bitcoind: accurate connection sanity checks at startup
The current checks were only testing whether a bitcoind was at all
reachable. We need to make sure it is also listening to requests (and
not warming up) in order for the assumptions made later on (we panic on
requests if we retried for too long) to hold.

This makes the startup sanity checks also wait for bitcoind to get out
of warming up mode.
2022-12-08 14:59:49 +01:00
Antoine Poinsot
f1e072bb5f
gui: cleanup the README. 2022-12-08 12:21:44 +01:00
Antoine Poinsot
293c28570c
Cargo: fix the rust-miniscript patched dependency for downstream
This new syntax would actually force all downstream users to apply the
patch section in their Cargo.toml! Revert to the previous syntax of
specifying the git repo directly.
2022-12-08 12:06:19 +01:00
edouard
ec407b3f32
Merge #167: gui: add sat/vbyte label in feerate form
4783dc0f1b72b1c516e6ddb81f895217a292cd88 gui: add sat/vbyte label in feerate form (edouard)

Pull request description:

  Feedback from Kevin, it is not clear for the user which units the feerate form requires.

ACKs for top commit:
  edouardparis:
    Self-ACK 4783dc0f1b72b1c516e6ddb81f895217a292cd88

Tree-SHA512: 477fc2b88812e1ab4013d13e79bd8e484ed17400d29d447adf8f1ea3c8a271611bfd60e68516026c8f0b19b130fa23522c35142a68a1f9bcdf93efa8a7675ff5
2022-12-08 11:58:36 +01:00
Antoine Poinsot
9cc748cd2a
descriptors: make the satisfaction size helpers part of the multi desc
Otherwise caller would have to call "receive_desc()" or "change_desc()"
before being able to call that which is unnecessary and an awkward API.
2022-12-08 11:57:47 +01:00
Antoine Poinsot
929c79a56a
descriptors: check for duplicates when creating a descriptor 2022-12-08 11:54:23 +01:00
edouard
4783dc0f1b gui: add sat/vbyte label in feerate form 2022-12-08 11:38:35 +01:00
Antoine Poinsot
9ba5f67308
Merge #168: ci: re-enable ci on non-1.48 for MacOS
0cf6f3214763109a2e2f7096945a40e8397be9a6 ci: re-enable ci on non-1.48 for MacOS (Antoine Poinsot)

Pull request description:

  So we at least have one MacOS job. Because it looks like #69 isn't going anywhere.

ACKs for top commit:
  darosior:
    self-ACK 0cf6f3214763109a2e2f7096945a40e8397be9a6 -- trivial.

Tree-SHA512: 0551558af9b948590de7ad43c08aa19a16ab1553059f3a421dbd527faf7394752fb781b43199ddfed8b3594a6c5425cf0d544c9238586c65445cafc01cafcf94
2022-12-08 10:39:15 +01:00
Antoine Poinsot
066994dddb
Merge #161: daemon: update rust-miniscript to 0.9
3224f08ba083e384f55abb690770d8dd09f8ea3d daemon: update rust-miniscript to 0.9 (Antoine Poinsot)

Pull request description:

  This also updates the multipaths descriptor patch to the review PR https://github.com/rust-bitcoin/rust-miniscript/pull/470 (rebased on 0.9)

  Fixes #123.

ACKs for top commit:
  darosior:
    self-ACK 3224f08ba083e384f55abb690770d8dd09f8ea3d -- trivial.

Tree-SHA512: 03c8b181e96df8d73953cefadfbb090049859f01e6c8d03cf8417ad4d46795dc295b097f8df6c0f683fb9da03b78f39e824cb7768376d1d5718bdce177edcb6d
2022-12-08 10:09:50 +01:00
Antoine Poinsot
801efa3440
Merge #160: commands: remove discrepancy between blockheight and block_height
dc61a1c3bdc1b77a6dfd857bec65db687709bc55 commands: remove discrepancy between blockheight and block_height (Antoine Poinsot)

Pull request description:

  This removes one inconsistencies. Quickly skimming through the doc i didn't find any other.

  Fixes #64.

ACKs for top commit:
  edouardparis:
    utACK dc61a1c3bdc1b77a6dfd857bec65db687709bc55

Tree-SHA512: dccff594673ffe34048ab5ad931005c7927e0835501b8377e0b0c8fac9a8d3e5a5f8b3372bd89b3ec33b5f377aecd47164f54ee1a622c9cb375227f4c2009f1b
2022-12-08 10:09:10 +01:00
Antoine Poinsot
0cf6f32147
ci: re-enable ci on non-1.48 for MacOS
So we at least have one MacOS job. Because it looks like #69 isn't going anywhere.
2022-12-08 10:08:24 +01:00
edouard
295e5a31a0
Merge #164: Check for duplicate recipient addresses
950dd105e3e638af3714cac817b20bbde88e20ec fix spend view layout (edouard)
c222dfba95152b9a52e2d2318f8ff11e18e15d70 Check for duplicate recipient addresses (edouard)

Pull request description:

ACKs for top commit:
  edouardparis:
    Self-ACK 950dd105e3e638af3714cac817b20bbde88e20ec

Tree-SHA512: e482ffc5eac8d9e7e718154eecb6c01f8425b49372245dde9e4694fbebea58a04d044f4721107196bc8ac0e57ccee91386c341931e8b5559b065d1b74a91a232
2022-12-07 18:04:58 +01:00
edouard
950dd105e3 fix spend view layout 2022-12-07 17:33:51 +01:00
edouard
c222dfba95 Check for duplicate recipient addresses 2022-12-07 16:46:17 +01:00
edouard
2aede0bc76
Merge #143: fix installer register descriptor error and add info
e01fd9b26facc2d01ed0ff0c4098dc93cfee7915 installer: make only xpub editable (edouard)
0969565b7ed0f1a08baa289f722a49c83f64003c fix installer register error (edouard)

Pull request description:

  - [x] fix register descriptor error
  - [x] ask only for xpub without wildcard

ACKs for top commit:
  edouardparis:
    Self-ACK e01fd9b26facc2d01ed0ff0c4098dc93cfee7915

Tree-SHA512: 4874f0ebfe5530590760f10debe5546c588e21124e6088dab9b60a2a8449a673cec80da0ca9de58250307a60acc9823c0957ea05f94cd5d28ff03b44e2cf6574
2022-12-07 15:51:48 +01:00
edouard
e01fd9b26f installer: make only xpub editable 2022-12-07 12:55:55 +01:00
Antoine Poinsot
1705581bd4
Merge #162: doc: quicktry: pkg-config isn't a runtime dependency!
f48ae69a9b3c1e5adf305a5fde8baff5811c345c doc: quicktry: pkg-config isn't a runtime dependency! (Antoine Poinsot)

Pull request description:

  Sigh.. I just copied what was in gui/README.md

ACKs for top commit:
  darosior:
    ACK f48ae69a9b3c1e5adf305a5fde8baff5811c345c

Tree-SHA512: 4d08677946dd40615b16a75f1cdd1049cc970a4742dbda39fdd359a48ab2ed50b076339e6240b9146385a95695ac85c6612baaf9b7fa8c24e963b10346aabc24
2022-12-07 12:09:43 +01:00
Antoine Poinsot
f48ae69a9b
doc: quicktry: pkg-config isn't a runtime dependency!
Sigh.. I just copied what was in gui/README.md
2022-12-07 12:09:03 +01:00
edouard
0969565b7e fix installer register error 2022-12-07 12:02:40 +01:00
Antoine Poinsot
3224f08ba0
daemon: update rust-miniscript to 0.9
This also updates the multipaths descriptor patch to the review PR https://github.com/rust-bitcoin/rust-miniscript/pull/470 (rebased on 0.9)
2022-12-07 11:58:36 +01:00
Antoine Poinsot
dc61a1c3bd
commands: remove discrepancy between blockheight and block_height 2022-12-07 11:42:17 +01:00
Antoine Poinsot
8c206b0351
Merge #156: doc: small improvements to the quicktry document
8c9ce67aa43117c999943ffc6f52fb9b13453a66 doc: small improvements to the quicktry document (Antoine Poinsot)

Pull request description:

ACKs for top commit:
  darosior:
    self-ACK 8c9ce67aa43117c999943ffc6f52fb9b13453a66

Tree-SHA512: 3ddc4c932b7bf8f60908c591bf16dc41785b49b356a5b8fac62baf873d16d75b887b1d90e0fcab1143922c4575bc3b4e9492945ed56625e6ca37714c45761fc1
2022-12-07 11:29:19 +01:00
Antoine Poinsot
8c9ce67aa4
doc: small improvements to the quicktry document 2022-12-07 11:28:23 +01:00
Antoine Poinsot
40eb605aea
Merge #128: More documentation
2cfcae286c760791011c03c7d9a58fec99fb0595 doc: add a guide for quickly trying out Liana (Antoine Poinsot)
973405c6798d0cf7aacaae7ab1d453395c2c2972 README: tiny cleanup to the installing section (Antoine Poinsot)
9b29c2e0aa65ef1301334466690e15b4d12ce506 doc: document how to build the project from source (Antoine Poinsot)

Pull request description:

  This adds instructions for building from source, as well as a guide to quickly try out the software on Signet.

ACKs for top commit:
  darosior:
    ACK 2cfcae286c760791011c03c7d9a58fec99fb0595 -- it's only doc, we can iterate later on.

Tree-SHA512: 5e2a2af4905bf17c6e3c05957c551ee7ccfb527c231c84ee26a5f74010c674530a36c995ef54ccd1a225c661d3bebedd68e253cd9c48bc810687d3ff28ce5e5c
2022-12-06 16:18:49 +01:00
Antoine Poinsot
2cfcae286c
doc: add a guide for quickly trying out Liana 2022-12-06 15:47:47 +01:00
Antoine Poinsot
973405c679
README: tiny cleanup to the installing section 2022-12-06 15:25:26 +01:00
Antoine Poinsot
9b29c2e0aa
doc: document how to build the project from source 2022-12-06 15:25:25 +01:00
edouard
6572b2fa4a
Merge #154: gui: cleanup the "amount left to select" calculation
493dbde666b73097848a5a4c7d10ee1ad7cfeab2 gui: cleanup the "amount left to select" calculation (Antoine Poinsot)

Pull request description:

  It don't think it was blatantly wrong, but neither was it entirely correct. And it was seriously lacking comments explaining what was going on for such a tricky calculation.

  In order to make sure it's correct, and make this more code more maintainable (and readable to future contributors), clean it up by using a more obviously-correct approach: a transaction template that is filled with inputs depending on the coins that were selected.

  I DID NOT TEST IT!

ACKs for top commit:
  edouardparis:
    ACK 493dbde666b73097848a5a4c7d10ee1ad7cfeab2

Tree-SHA512: b8094326f42ed86a4fcd4e16961a7cb77b07d423215665248dd20db66e2c2eb5500fd7cbdb58d0febae5beb3a40f7b531ec24d1c3e7d7a16a45686ac40a89e9b
2022-12-06 15:10:28 +01:00
edouard
aaf489dbdf
Merge #152: installer: change default xpub derivation path
2342923fc274dcdcc012b227c5955ebf3dbc28c3 installer: change default xpub derivation path (edouard)

Pull request description:

ACKs for top commit:
  edouardparis:
    Self-ACK 2342923fc274dcdcc012b227c5955ebf3dbc28c3

Tree-SHA512: c25516c744c2f4b1869fd02b424723d8f2cc0da5b1ae407ccedf325add2c75dceced16a0137ded25140fe8ca84a7945842fe867b72bde2596d3441021e8589a1
2022-12-06 13:38:35 +01:00