1610 Commits

Author SHA1 Message Date
edouardparis
f8012daffc
Merge #1054: gui: remove descriptor backup in installer when participating in new wallet
52cbc3ee386973c12d002da3a688266994261312 gui: require valid network to proceed (jp1ac4)
2099866a60b5b9144bcb108ae17bfbb39d47fd90 gui: remove step to back up descriptor (jp1ac4)

Pull request description:

  This fixes #791 which is regarding the "Participate in new wallet" steps.

  The previous step requires the descriptor and so no need to back it up.

  I also fixed an issue where it was possible to click Next with an invalid network selected.

ACKs for top commit:
  edouardparis:
    ACK 52cbc3ee386973c12d002da3a688266994261312

Tree-SHA512: 762122b36260bca9e06b6971a941a91df23051affe1039ca74dc7c31ae96283f09f579fb4a8adbb71efe16bd4c64e96fbd5ae9f6dd3304addcaf142cdab3941b
2024-04-15 14:42:52 +02:00
Antoine Poinsot
8c55eeca1d
Merge #1076: Bump bdk_coin_select to 0.3.0
43ecd94a46a8abf82a6882e741aa1db2fd0abd7c spend: change parameter type for rbf (jp1ac4)
6376909ea1f9cb172558f8ae470a709b18757e20 commands: remove rbf rule 4 logic (jp1ac4)
936d7e958567608a46e91c21699d611ca5eced1d spend: bump bdk_coin_select to 0.3.0 (jp1ac4)

Pull request description:

  This is to resolve #923.

  The `score` method of the `LowestFee` metric has been fixed upstream and so our temporary partial fix from #867 is no longer required.

  The `min_fee` parameter of `select_coins_for_spend`, if positive, now ensures that RBF rule 4 is satisfied. Accordingly, it has been renamed to `replaced_fee` and made an `Option`. We could potentially have used the `SpendTxFees` enum as a parameter directly instead of `feerate_vb` and `replaced_fee`, but `feerate_vb` is currently `f32` rather than `u64` and so I kept them as separate parameters.

  Thanks to how the `replaced_fee` parameter works, the fee iteration approach used in `rbf_psbt` to ensure the replacement satisfies [RBF rule 4](https://github.com/bitcoin/bitcoin/blob/master/doc/policy/mempool-replacements.md#current-replace-by-fee-policy) is no longer required.

  `base_weight` is no longer stored in `CoinSelector` and instead the output weights are stored in `Target`. This means that the `output_weight` of `DrainWeights` no longer needs to take into account a potential change in output count varint as this is now handled by bdk_coin_select.

  The min value for change no longer includes the threshold itself and so we have to subtract 1 from our change policy's min value (see https://github.com/bitcoindevkit/coin-select/pull/14#discussion_r1439665103). We already have a [test](https://github.com/wizardsardine/liana/blob/master/src/commands/mod.rs#L1653-#L1654) that fails without this subtraction as it expects a change output of 5000 sats.

ACKs for top commit:
  darosior:
    ACK 43ecd94a46a8abf82a6882e741aa1db2fd0abd7c

Tree-SHA512: a064bafef13abefcb8c4b640cfc4017eb288c62891a8b486add33c1499e7061bf262d6aadabbdd4c191ed9b81e3931b382c8c8445e6bb9c1b052380caf14b3f9
2024-04-15 13:13:19 +02:00
jp1ac4
43ecd94a46
spend: change parameter type for rbf
The parameter has been renamed and changed to `Option` as it is
only required when creating a replacement transaction using RBF.
2024-04-05 21:56:17 +01:00
jp1ac4
6376909ea1
commands: remove rbf rule 4 logic
RBF rule 4 is now enforced by coin selection.
2024-04-05 21:54:08 +01:00
jp1ac4
936d7e9585
spend: bump bdk_coin_select to 0.3.0
The `score` method of the `LowestFee` metric has been fixed
and so our temporary fix is no longer required.

The `min_fee` parameter of `select_coins_for_spend`,
if positive, now ensures that RBF rule 4 is satisfied.

`base_weight` is no longer stored in `CoinSelector` and
instead the output weights are stored in `Target`. This
means that the `output_weight` of `DrainWeights` no longer needs
to take into account a potential change in output count varint.
2024-04-05 21:46:06 +01:00
edouardparis
1418e18842
Merge #1071: Use text size constant
d722ca1e4d9008df5bcf5cea3af531ed8de75209 Use text size constant (edouardparis)

Pull request description:

  this is preparatory work for #597

ACKs for top commit:
  edouardparis:
    Self-ACK d722ca1e4d9008df5bcf5cea3af531ed8de75209

Tree-SHA512: 882fefe1685e34b252e6ca0dba9e2519b4889448cb410c3df542b2ca111baccbd2697b6ca191caa069ffec55dbdc0182c76de75a36f321f4927b6e81229db07b
2024-04-02 17:20:49 +02:00
edouardparis
d722ca1e4d Use text size constant 2024-04-02 17:04:03 +02:00
Antoine Poinsot
21f2d593c7
Merge #1070: doc/USAGE: point to our website for download
744d8f856cdf0f3e3aa94f26e85e49202516244e doc/USAGE: point to our website for download (Antoine Poinsot)

Pull request description:

  No need to update this document for every single version anymore. Also, Github doesn't let us access how many people download the binaries.

ACKs for top commit:
  darosior:
    self-ACK 744d8f856cdf0f3e3aa94f26e85e49202516244e -- only doc

Tree-SHA512: 0204bf830026acbea84b1b7f456e1735fd1e951260b904f8b06fff47dc0f1a218efc155e014faaa6df34e2eaffd4b7742aa37e09aca3c4c97eeb27cf17f30f57
2024-04-01 17:02:40 +02:00
Antoine Poinsot
744d8f856c
doc/USAGE: point to our website for download
No need to update this document for every single version anymore.
2024-04-01 16:57:12 +02:00
Antoine Poinsot
a4d37e36ba
Merge #1064: gui: bump bitcoind to 26.1
3084808f0ce852040061b5ce392c53618367df64 gui: bump bitcoind to 26.1 (Antoine Poinsot)

Pull request description:

ACKs for top commit:
  jp1ac4:
    ACK 3084808f0c.

Tree-SHA512: 3d696999aefb4312517865ccaaaeac84ca74fc5eb77d69474663e72bc81253be3332733d4b58fd776df2680df1b1b808dedb3c3e77bdb012eb66051c903ab0eb
2024-04-01 12:20:43 +02:00
Antoine Poinsot
3084808f0c
gui: bump bitcoind to 26.1
This point release notably fixes an issue with the .cookie file.
2024-04-01 10:39:31 +02:00
Antoine Poinsot
7ef8d67abf
Merge #1055: gui: make max tooltip more legible
617845234c4e64e02b47d4e29971b094f38f5281 gui: make max tooltip more legible (jp1ac4)

Pull request description:

  This resolves an issue found by @kloaec. I've changed the tooltip position to `Bottom` instead of `Left` and added some blank spaces so that text is padded at screen edge.

  ![image](https://github.com/wizardsardine/liana/assets/121959000/871c0ba9-90de-4c3a-b7db-937ce62035c6)

  Full screen:
  ![image](https://github.com/wizardsardine/liana/assets/121959000/1bd90278-fc5d-4586-b486-d96511b1bad6)

ACKs for top commit:
  darosior:
    utACK 617845234c4e64e02b47d4e29971b094f38f5281

Tree-SHA512: 2af36699671b34087695f01e31c848d6f1b7e59dc84bc83e527d27a3c08de5ead21e67b89d301590403ea88a6a28ae25bfa0917c288b3222ffbd95bb401982dc
2024-04-01 10:28:56 +02:00
Antoine Poinsot
ae80af2296
Merge #1061: spend: reword warning messages
ed86696daf556533592b3285c70a2386a84ece71 tests: remove print statements (jp1ac4)
5d6ca97e4cf2e1778552d4980291eca1d2cc57c7 spend: reword warning messages (jp1ac4)
8078a2791a81eecd7f662e4fd43965e185c1737e tests: use function to calculate additional fee (jp1ac4)
deb75884bfe8a47c9143fd7006960c81d956d6d4 tests: run black (jp1ac4)
f14c3a7f75f4483e83da5a6dfd2dc0cb3624133a spend: fix typo in enum variant (jp1ac4)

Pull request description:

  As discussed with @kloaec, this PR rewords the warning messages when creating a spend.

  I didn't include the selected feerate value in the updated messages as that would have required more code changes, albeit fairly simple ones, beyond the message wording itself. I can add those here if required or otherwise in a follow-up.

  Here's a screenshot showing the new warnings:

  ![image](https://github.com/wizardsardine/liana/assets/121959000/7bd4ec6b-a878-4b25-950a-a4ea87175a6f)

ACKs for top commit:
  darosior:
    ACK ed86696daf556533592b3285c70a2386a84ece71

Tree-SHA512: e8f72206ccba74609e1a8b4a9dccd5975534de7a392d24e54ab8bb5ca6d4d38a75864e148e463e66ffda48fef1a68ab0e953c6fe24a4e6bf28eca9535135f7e4
2024-03-28 18:01:48 +01:00
jp1ac4
ed86696daf
tests: remove print statements 2024-03-28 12:38:09 +00:00
Antoine Poinsot
6d68a4323c
Merge #1058: Documentation improvements
f22f7291d09268108a52324d0e4f8547023f8570 doc: final cleanup on the README (Antoine Poinsot)
4bf54f19ae6bf1621f70af446b91f1c9241937e0 doc: expand a bit on starting using the software (Antoine Poinsot)
245aeb1e4cea351cbe5a23954d7eeac96a1e4fc0 README: mention LianaLite (Antoine Poinsot)
95391fc19f8f524f36c34f69a34dcb7dcfe592bc doc: split up the README in multiple documents (Antoine Poinsot)

Pull request description:

ACKs for top commit:
  darosior:
    self-ACK f22f7291d09268108a52324d0e4f8547023f8570 -- Kevin had a look

Tree-SHA512: dd0740b94e30565d85b93c81aee126d9c02abe7c48e1101bb7056ecd14748cc04cd096cae01944322ba512c4b7c100e62d564626ed28c62fecfbbdc34dfeb054
2024-03-28 12:52:49 +01:00
Antoine Poinsot
f22f7291d0
doc: final cleanup on the README 2024-03-28 12:48:40 +01:00
jp1ac4
5d6ca97e4c
spend: reword warning messages 2024-03-28 11:08:49 +00:00
jp1ac4
8078a2791a
tests: use function to calculate additional fee
This will reduce flakiness in case the ancestor size differs due
to changes in signature size.
2024-03-28 11:03:21 +00:00
jp1ac4
deb75884bf
tests: run black 2024-03-28 11:03:15 +00:00
Antoine Poinsot
4bf54f19ae
doc: expand a bit on starting using the software 2024-03-27 19:11:52 +01:00
Antoine Poinsot
245aeb1e4c
README: mention LianaLite 2024-03-27 19:09:09 +01:00
jp1ac4
f14c3a7f75
spend: fix typo in enum variant 2024-03-27 17:59:16 +00:00
Antoine Poinsot
95391fc19f
doc: split up the README in multiple documents 2024-03-27 18:44:26 +01:00
jp1ac4
617845234c
gui: make max tooltip more legible 2024-03-26 16:07:56 +00:00
jp1ac4
52cbc3ee38
gui: require valid network to proceed 2024-03-26 14:29:43 +00:00
jp1ac4
2099866a60
gui: remove step to back up descriptor 2024-03-26 14:28:34 +00:00
Antoine Poinsot
771bf16b58
Merge #1052: guix: use rust 1.63 for building lianad
2e191f3496285f0133a61ab7f0985489aa8406de guix: use rust 1.63 for building lianad (Antoine Poinsot)

Pull request description:

ACKs for top commit:
  darosior:
    self-ACK 2e191f3496285f0133a61ab7f0985489aa8406de

Tree-SHA512: 52f79ce71a1c61f966f4890149b169093f0ceeda35afb18980983557a05cb6892bafbdedd2f404d9f62c348b83524e9b20aa7beee66ee1ef2e53dcb2a3636925
2024-03-26 14:08:35 +01:00
Antoine Poinsot
2e191f3496
guix: use rust 1.63 for building lianad 2024-03-26 14:07:24 +01:00
Antoine Poinsot
8b6d1b1de6
Merge #1036: GUI: prepare v5 release
3d68582523103e73ff0bd4df44545248a35c431a gui: bump version to 5.0 (Antoine Poinsot)
fecaddb111366d55cb2a9f11662f550ba30397d4 gui: update to latest liana master (Antoine Poinsot)

Pull request description:

ACKs for top commit:
  darosior:
    ACK 3d68582523103e73ff0bd4df44545248a35c431a

Tree-SHA512: 2dbecc91c4f0494627a0510e8524fca526aa764dfd1197702befa90466b6cadebf42c3b5569dd04854ff99f676e55363e4cb47fa85710f574104d69234b4edf3
2024-03-25 16:56:41 +01:00
Antoine Poinsot
3d68582523
gui: bump version to 5.0 2024-03-25 16:55:41 +01:00
Antoine Poinsot
fecaddb111
gui: update to latest liana master 2024-03-25 16:34:36 +01:00
Antoine Poinsot
6d498db5e5
Merge #1034: Prepare v5 release
2dc8cb0d422d2f601c8662df71651c596d15ae36 README: add Coldcard as supported signing device (Antoine Poinsot)
abf15fea3c15ca5f0005417a1490e057d40e6c6b CHANGELOG: release notes for v5 (Antoine Poinsot)
b5c2375d0bb6bef6cd2f0d7534c303fe71118105 doc: update the signing devices compatibility documentation (Antoine Poinsot)
d9337121abe486389514c7b2336e39d2a1f0c8de Bump Liana version (Antoine Poinsot)
de05460ad01145df9bbf63ec58932a72dd1a14d3 doc/BUILD.md: correct MSRV (Antoine Poinsot)

Pull request description:

ACKs for top commit:
  darosior:
    self-ACK 2dc8cb0d422d2f601c8662df71651c596d15ae36 -- not code

Tree-SHA512: b84ea6dabf3ff41ac9b61c6ee8ef7cbbdb5942d13bff83b70e60c93e2f61a14db164b7987129cfde5fd59a667297e2832458f62f0e979d949667d0cc2c168f37
2024-03-25 16:33:51 +01:00
Antoine Poinsot
2dc8cb0d42
README: add Coldcard as supported signing device 2024-03-25 16:24:10 +01:00
Antoine Poinsot
abf15fea3c
CHANGELOG: release notes for v5 2024-03-25 16:24:09 +01:00
Antoine Poinsot
62efd33342
Merge #1001: commands: exclude immature coins from auto-selection
f9bae9cc0814d909a72a800d9f6d7ced2f99f06d database: add migration from db version 3 to 4 (jp1ac4)
2c96ef57bd606524223da037375ef351ea69e949 commands: exclude immature coins from coin selection (jp1ac4)
3a7c151674c487dd11f4f2d1db78d468f5f087a9 database: allow for coinbase transactions to change addresses (jp1ac4)

Pull request description:

  As a follow-up to #873, this ~~adds a comment to make clear that immature coins are not included as candidates for auto-selection~~ excludes immature coins from auto-selection.

  An unconfirmed coin could be both immature and marked as change, as the latter only depends on whether the address is derived from the wallet's change descriptor. I've also removed a corresponding assertion that may not always hold.

ACKs for top commit:
  darosior:
    ACK f9bae9cc0814d909a72a800d9f6d7ced2f99f06d -- this is very nice. Again, great catch. And thanks for adding a more extensive unit test.

Tree-SHA512: 12abe3dd18723db58ff701f664c6085e7fd29d39fefa7206e3e00fa5fb3e3b4320720c183a9719a3a0f3124896347ac74571b45a54bd504d674f779913466c16
2024-03-25 16:16:05 +01:00
Antoine Poinsot
53f9c72185
Merge #1035: fix receive panel: reset addresses on reload
65f4a7581359edd7d9a1a593273238485955a3e6 fix receive panel: reset addresses on reload (edouardparis)

Pull request description:

  We reintroduce previous behavior:
  Reset the list when user leave and come back to the receive panel.

  close #1026

ACKs for top commit:
  jp1ac4:
    ACK 65f4a75813.

Tree-SHA512: 23aa6f58d2759f8d39d5068ebaa45a1529fd5f2692f0147a2b42e70423eb7ac3d0be26c5a00af1394e0cea22bca5c4e6a49f85b033ff2abcd392bf9fbd43c58d
2024-03-25 15:57:25 +01:00
edouardparis
65f4a75813 fix receive panel: reset addresses on reload
We reintroduce previous behaviour:
Reset the list when user leave and come back to the receive panel.
2024-03-25 14:56:07 +01:00
Antoine Poinsot
b5c2375d0b
doc: update the signing devices compatibility documentation 2024-03-25 13:30:33 +01:00
jp1ac4
f9bae9cc08
database: add migration from db version 3 to 4 2024-03-25 11:49:48 +00:00
edouardparis
05e4e38e68
Merge #1031: gui: fix condition to create draft spend
68f8dbc43ba00de04b1ee33e0e8f2bd77242b127 gui: fix condition to create draft spend (jp1ac4)

Pull request description:

  This issue was encountered by @pythcoiner in https://github.com/wizardsardine/liana_manual_testing/blob/master/tests/v5/v5-pre-rc1/pyth.md#comments.

  The `balance_available` value was not being refreshed when new coins were received and so it was sometimes not possible to click Next.

  It's enough, however, to check the amount left to select is 0, and so both the `balance_available` and `total_amount` fields can be removed.

ACKs for top commit:
  edouardparis:
    ACK 68f8dbc43ba00de04b1ee33e0e8f2bd77242b127

Tree-SHA512: b50519beb094e2344273a44bcc21c077a568c31d9cd0d96a29117b42aef146919b18abf8cfea15c5b15962cdf553a547435d464feea4e87fdb33cfcab7394392
2024-03-25 11:48:03 +01:00
jp1ac4
68f8dbc43b
gui: fix condition to create draft spend
The `balance_available` value was not being refreshed when new
coins were received and so it was sometimes not possible to
click Next.

It's enough, however, to check the amount left to select is 0,
and so both the `balance_available` and `total_amount` fields
can be removed.
2024-03-25 08:46:44 +00:00
edouardparis
b10198d54c
Merge #1028: fix transaction update after label change
dff854a1adc25d5ac83d86267cfeee471d586641 fix transaction update after label change (edouardparis)

Pull request description:

  close #1027

ACKs for top commit:
  edouardparis:
    Self-ACK dff854a1adc25d5ac83d86267cfeee471d586641

Tree-SHA512: 9823ea97fc62a152f450645cf08fb24176356ed0f766eb17b5c6615dbabb6c3ca232b6c38aaaf60f80b4a1da8fb99862001d3f5d4d5c3d2c43600f3a411811a4
2024-03-25 09:03:17 +01:00
edouardparis
dff854a1ad fix transaction update after label change 2024-03-23 15:54:02 +01:00
Antoine Poinsot
d9337121ab
Bump Liana version 2024-03-22 16:42:33 +01:00
Antoine Poinsot
de05460ad0
doc/BUILD.md: correct MSRV
Point to contributing.md, so we only have a single place to modify.
2024-03-22 16:38:04 +01:00
Antoine Poinsot
3b31871514
Merge #1018: Gui handle poller error
a7f2bccb9a443c78a9788eedce06e2d753f7d11e gui: handle daemon stop error (edouardparis)
924df8e1d5440159306504c0ddbbee6f962cd7c5 bump liana:master (edouardparis)

Pull request description:

  based on #986

ACKs for top commit:
  darosior:
    ACK a7f2bccb9a443c78a9788eedce06e2d753f7d11e

Tree-SHA512: 24c48948f10eed7f04dcab0779b75d89c5fd40441c04dffb6f4e5b3e682ca2ca36de51cdc69e7679ed262c4e92691d789c29822972f5c99290c54d13c7dc3472
2024-03-22 15:21:12 +01:00
edouardparis
a5887f25dd
Merge #1025: fix wrong index in receive qrcode
615be66655f1a75e14122272ac9ec2dbc3a6a902 fix wrong index in receive qrcode (edouardparis)

Pull request description:

ACKs for top commit:
  pythcoiner:
    utACK 615be66655f1a75e14122272ac9ec2dbc3a6a902
  jp1ac4:
    ACK 615be66655. I checked that the index shown by the QR matched the index shown when verifying on hardware device.

Tree-SHA512: 89b8c40975bedd07170db30383f619d7f33752a9c27537f9bb9176038a4fc3473a6fb0ca47e48b932011de96ee315d9fc22ff7cad1f416b0be6ef0fd11e67295
2024-03-22 14:44:17 +01:00
edouardparis
615be66655 fix wrong index in receive qrcode 2024-03-22 13:57:08 +01:00
edouardparis
a7f2bccb9a gui: handle daemon stop error 2024-03-22 11:52:58 +01:00
edouardparis
924df8e1d5 bump liana:master 2024-03-22 11:52:58 +01:00