551 Commits

Author SHA1 Message Date
edouard
f5de5e9734 gui: update liana#66e37a2 2023-02-06 12:08:25 +01:00
edouard
66e37a2cdf
Merge #314: gui: change path signature details
56d3522f8c74ff774cb3ecdbf76b48dd216497f9 gui: change path signature details (edouard)

Pull request description:

  ![2023-02-03T21:50:42,669968940+01:00](https://user-images.githubusercontent.com/6933020/216709669-81b18325-60ad-469f-a506-6717e997e72a.png)
  ![2023-02-03T21:50:50,459471889+01:00](https://user-images.githubusercontent.com/6933020/216709675-f48041dc-1e17-4723-9d24-0f65cd896cfa.png)
  ![2023-02-03T21:58:48,281389762+01:00](https://user-images.githubusercontent.com/6933020/216709676-977c845e-f1c2-4a6c-9e9c-49c345d20cf1.png)

ACKs for top commit:
  edouardparis:
    Self-ACK 56d3522f8c74ff774cb3ecdbf76b48dd216497f9

Tree-SHA512: 72c0ee502f8f8475b38cf3ee6619e02f9a0920373cc1542cdd37f7d79f83ac489cef444c1f4f79df45ffca4e8b3a1857606994392238ec77a8457d0af117ea63
2023-02-06 11:53:53 +01:00
Antoine Poinsot
9996483112
Merge #321: Descriptor spending policy inference fixes
fcc1c21dbb3a735407d0352c555f448ae80fac64 descriptors: use the origin as xpub UID in partial spend info, not the fingerprint (Antoine Poinsot)
4af1a12a2a239a25c3ab50e4943fa7897be40091 descriptors: fix the spending policy inference (Antoine Poinsot)

Pull request description:

  The analysis was assuming missing that a `thresh(2, older(x), thresh(k, key1, key2, ..)` policy could be normalized to `thresh(k + 1, older(x), key1, key2, ..)` when `k == the number of keys` (i.e. in case of a N-of-N multisig). This also merges the analysis logic with the parsing check to make sure we don't introduce any inconsistency.

ACKs for top commit:
  edouardparis:
    utACK fcc1c21dbb3a735407d0352c555f448ae80fac64

Tree-SHA512: d12db2ccf43d20fc85ea6f9fdfe2869948d2c63a2af22287c9133cf6f732fe92c7c0c63ba70ea3dfb0c910a93753ebd42cb168b4cf6bd6ccbed4e1cc7028b614
2023-02-06 11:43:12 +01:00
edouard
56d3522f8c gui: change path signature details 2023-02-06 11:09:30 +01:00
edouard
04862ec65d
Merge #319: fix: drop connections to hws in share xpub panel
42940f638598b02acf1cc4f175703725a2ef3cf2 fix: drop connections to hws in share xpub panel (edouard)

Pull request description:

  Use needs to be able to start new connections
  in the register descriptor step.

ACKs for top commit:
  edouardparis:
    Self-ACK 42940f638598b02acf1cc4f175703725a2ef3cf2

Tree-SHA512: 01b146209cb74e5db7819e7249b51881e0f773d32ae2b1400914e0751f702325447b304eeca0f4eadf50113c4ea0535d24c73ef8b311c9de453877659933650f
2023-02-06 09:23:15 +01:00
edouard
5b0aac1782
Merge #325: Gui wording nits
f545747080fdfc4a02216256a6b6da2e3d22078d gui: reword some warnings on invalid input (Antoine Poinsot)
c6127c41c99d9775ecc177928a2ec9fdc94e13a0 gui: wording nit on missing feerate when creating a spend. (Antoine Poinsot)
a7f2ca1cbee7030e9c51506a2c6e1136f6b3a463 gui: Remove redundant "or" when filling up xpub in installer. (Antoine Poinsot)

Pull request description:

  Some things i noticed while testing. Not perfect nor comprehensive, but still an improvement IMO.

ACKs for top commit:
  edouardparis:
    ACK f545747080fdfc4a02216256a6b6da2e3d22078d

Tree-SHA512: c1b098058cbff6617fb197d235ef6755702499b435414659317be2d0bfffe91e018d9069d1e5741c80b446fbee395cb4f6e7cbc4d457583a3bc04f66d9f3cbc6
2023-02-06 08:50:12 +01:00
Antoine Poinsot
f545747080
gui: reword some warnings on invalid input 2023-02-05 15:48:48 +01:00
Antoine Poinsot
c6127c41c9
gui: wording nit on missing feerate when creating a spend. 2023-02-05 15:48:47 +01:00
Antoine Poinsot
a7f2ca1cbe
gui: Remove redundant "or" when filling up xpub in installer. 2023-02-05 15:48:47 +01:00
Antoine Poinsot
e8d0f492b9
Merge #317: bitcoind: detect deposits from (mature) coinbase transactions
af058d59e3604cebb7384f4c0f65a2fd60cc5af4 bitcoind: detect deposits from (mature) coinbase transactions (Antoine Poinsot)

Pull request description:

  What if miners use Liana! 😁

ACKs for top commit:
  edouardparis:
    ⛏️  utACK af058d59e3604cebb7384f4c0f65a2fd60cc5af4

Tree-SHA512: 579e24b78d250c095e1073e6e1df46bbea77afdcde6ee8dcef7adc29ef276b6609ccc829809dd97c2da8679ffb6d7b60041572a017438cc7695acdc6afad5b71
2023-02-05 15:16:21 +01:00
Antoine Poinsot
fcc1c21dbb
descriptors: use the origin as xpub UID in partial spend info, not the fingerprint
We were using the fingerprint as a stable unique identifier for xpubs in
a descriptor. It's not. For instance, what if a single signer is used
both in the primary and recovery path? The same fingerprint would appear
in both paths and we would mix up the signatures for both paths (ie if a
signature for each was provided, we would count each path as having 2
signatures).
2023-02-05 14:31:24 +01:00
Antoine Poinsot
4af1a12a2a
descriptors: fix the spending policy inference
This also cleans it up as well as merging the checks in the parser with
the analysis in the info() helper to be more confident they are
consistent.
2023-02-05 13:43:40 +01:00
edouard
42940f6385 fix: drop connections to hws in share xpub panel
Use needs to be able to start new connections
in the register descriptor step.
2023-02-04 18:27:07 +01:00
edouard
33e698b774
Merge #318: fix gui: use address.is_valid_for_network
c7dd94b7488ddfbe96b91a9eb1f0430c7c0b3f3a fix gui: use address.is_valid_for_network (edouard)

Pull request description:

  Use this nice helper from rust-bitcoin, instead
  of wrong checks.

ACKs for top commit:
  edouardparis:
    Self-ACK c7dd94b7488ddfbe96b91a9eb1f0430c7c0b3f3a

Tree-SHA512: f71775c84bde155e6c30ef3b25a064feaf10b95ca9a50395afd0b1808eeb1a9739f66a657cf36754e7d0648324e08469d7ecf3d9bad427b151e6956ee68db7df
2023-02-04 15:34:10 +01:00
edouard
c7dd94b748 fix gui: use address.is_valid_for_network
Use this nice helper from rust-bitcoin, instead
of wrong checks.
2023-02-04 14:12:47 +01:00
Antoine Poinsot
af058d59e3
bitcoind: detect deposits from (mature) coinbase transactions 2023-02-04 13:21:20 +01:00
edouard
29a302bada
Merge #315: Add more information and checkbox to register descriptor step
697fb16db976d0bc643381b10342f2df650a4386 Add more information and checkbox to register descriptor step (edouard)

Pull request description:

  ![2023-02-04T10:04:29,401091329+01:00](https://user-images.githubusercontent.com/6933020/216759166-1a4fc04f-aa4a-480d-a568-8f60a7d33d16.png)
  close #297

ACKs for top commit:
  darosior:
    utACK 697fb16db976d0bc643381b10342f2df650a4386 -- text looks good to me.

Tree-SHA512: 2bfdad9e512612e8cdc5247d0d2a4b35686f97b31fea508f6674baa5e7b1beb5a7929377a9cb3b843644597d186bff67f0200c1d08b6bd2d335477dbcaa83456
2023-02-04 12:46:58 +01:00
edouard
697fb16db9 Add more information and checkbox to register descriptor step
close #297
2023-02-04 12:32:33 +01:00
edouard
c9238404d5
Merge #316: fix: spend minimal amount in btc
263f00150d37908d97bb491cd0dbc2180f36b654 fix: spend minimal amount in btc (edouard)

Pull request description:

  "> 5000 sats" message was confusing with the actual amount in btc requirement

ACKs for top commit:
  edouardparis:
    Self-ACK 263f00150d37908d97bb491cd0dbc2180f36b654

Tree-SHA512: 7846344af9e044db5431d583214c06cdbabfbb5a553be975531e76b5218bec3c7fd0467d11fe4fa2845226516cf09e45d0948df17b2a8c723a3cedb212fe34d0
2023-02-04 11:36:56 +01:00
edouard
263f00150d fix: spend minimal amount in btc 2023-02-04 11:11:51 +01:00
edouard
90c2a04eb4
Merge #313: gui: fix hws list reloading
ea4f02172824371ef162db9ee0b974ef4597a541 fix hws list reloading (edouard)

Pull request description:

  I wanted the refresh button to add more harware wallet to the list without erasing the previous list
  in order to not cut the existing communication channels.

  But with the new display of "unsupported wallet" this behaviour can corrupt the list. An "unsupported wallet" can become "supported" because user switch app or unlock.

  It is preferable to reset the full list and drop the objects after a refresh.

ACKs for top commit:
  edouardparis:
    Self-ACK ea4f02172824371ef162db9ee0b974ef4597a541

Tree-SHA512: 530cf6e82f5bfd325e45c0eb19af94a58e930ecc15a692e0d545ceec2105122ed539a9f671449d2bc05e87c0ba562a1f192076a5cd1a2264f322b5a9094c1d9a
2023-02-03 21:09:18 +01:00
edouard
ea4f021728 fix hws list reloading
I wanted the refresh button to add more harware wallet
to the list without erasing the previous list
in order to not cut the existing communication channels.

But with the new display of "unsupported wallet" this behaviour
can corrupt the list. An "unsupported wallet" can become
"supported" because user switch app or unlock.

It is preferable to reset the full list and drop the objects
after a refresh.
2023-02-03 19:42:23 +01:00
Antoine Poinsot
72d04e5a0f
Merge #312: descriptors: mention origin requirement in invalid key error
72fc42bc3834eeb03ee699e74096814aca553d4b descriptors: mention origin requirement in invalid key error (Antoine Poinsot)

Pull request description:

ACKs for top commit:
  darosior:
    self-ACK 72fc42bc3834eeb03ee699e74096814aca553d4b

Tree-SHA512: a022317a8303cc9bca0fe0fa565efd3db263b885bdf488fdf100fc4dbcf07d4e681b0d2c6a50a9f19d52f4147946aa0b653ed4ff8f5c2ef2d6bac0fc093435bf
2023-02-03 18:33:45 +01:00
Antoine Poinsot
72fc42bc38
descriptors: mention origin requirement in invalid key error 2023-02-03 18:32:05 +01:00
Antoine Poinsot
16951ca78c
Merge #311: Release 0.2 of the GUI
58a3d21eff766627bde45727f00e101408983602 contrib: update the package pins in the repro build Dockerfiles (Antoine Poinsot)
0bd3bd4d2ef8f88bde2f9abbeed8c1d68408801b Update Github links to wizardsardine/liana (Antoine Poinsot)
ca05bd3fbc2862d3f219491c396b7c1e21b83a99 gui: release 0.2 (Antoine Poinsot)

Pull request description:

  Based on #310. Needs to be updated once it is merged.

ACKs for top commit:
  darosior:
    self-ACK 58a3d21eff766627bde45727f00e101408983602 -- did a full release build on this branch.

Tree-SHA512: 3b7c5a9a5df154dbce5f3615143e8e251c3155a493dc62758ce21a59a640befe469445a171774dcd8e6e1166c9ca0613e9c076a7b073b5b847eb025c13ab56af
2023-02-03 18:30:33 +01:00
Antoine Poinsot
58a3d21eff
contrib: update the package pins in the repro build Dockerfiles 2023-02-03 18:00:34 +01:00
Antoine Poinsot
0bd3bd4d2e
Update Github links to wizardsardine/liana 2023-02-03 16:52:06 +01:00
Antoine Poinsot
ca05bd3fbc
gui: release 0.2 2023-02-03 16:14:50 +01:00
Antoine Poinsot
8cc6cb1f86
Merge #310: Release 0.2
d0de88bc016b2dcb181fd6f4ef88f9c36cc02f96 daemon: release 0.2 (Antoine Poinsot)
f4755ff803cd6f923eb342ae5f302513fb81b865 doc: add some warning re provider 4 to the Ledger doc (Antoine Poinsot)

Pull request description:

ACKs for top commit:
  darosior:
    self-ACK d0de88bc016b2dcb181fd6f4ef88f9c36cc02f96

Tree-SHA512: 14324cc29e3814057ac28d8d11c5cf75e788c03132eb3f7a0cda72abd073e0ecc751c5390403b4ff7075fe4fb21959451995f192df3f817aabbda105dff3cbfd
2023-02-03 16:13:41 +01:00
Antoine Poinsot
d0de88bc01
daemon: release 0.2 2023-02-03 16:10:20 +01:00
Antoine Poinsot
f4755ff803
doc: add some warning re provider 4 to the Ledger doc 2023-02-03 15:00:36 +01:00
Antoine Poinsot
83314edd7f
Merge #308: Handle unconfirmed deposits that were replaced
3a573b695e07d357e844dd9d573d578e05ecebed qa: test we discard RBF'd deposits (Antoine Poinsot)
f1532f8afcceb5ded299f5ddc425c0473de49871 bitcoin: track expired unconfirmed deposits, remove them from DB (Antoine Poinsot)
ed156543c95db2e6e1fd4712ec7dcb0dfc025c41 database: permit to remove coins from DB (Antoine Poinsot)
62c4b9a01c16c60f66db99abab967efa4e0429dd bitcoind: cleanup gettx cache and conflict detection in spent_coins (Antoine Poinsot)
201c9f21b60dbc5ff0afd9aa73c3a011c08e4459 bitcoin: cache calls to 'gettransaction' when checking for coins confirmation (Antoine Poinsot)
13214c887f373fbe953c01aa8d3a31ae9b65ee98 qa: test we discard RBF'd deposits when replacement is confirmed (Antoine Poinsot)

Pull request description:

  Previously we would not detect whether the transaction for an unconfirmed deposit was still in our mempool. For instance a deposit that was RBF'd would result in us storing two coins, the replaced and the replacement. Keeping the unconfirmed replaced coin forever.

  Fix this by dropping unconfirmed coins from our database if their transaction isn't in our mempool (anymore).

  Fixes #72.

ACKs for top commit:
  edouardparis:
    utACK 3a573b695e07d357e844dd9d573d578e05ecebed

Tree-SHA512: 677bedbf8024eb16e5f97264c2e01d733732673548772fc3a97868b9ca42a0429ad8c0d888b05d3bb2db9b85d309c418b916c9af578f54e499b5d0689376a1b0
2023-02-03 14:59:49 +01:00
edouard
431adb314b
Merge #307: Change HardwareWallet for (Un)Supported enum
2a9bcf92d031510e8c1953a80ef8cd3e13b39a7d Change HardwareWallet for (Un)Supported enum (edouard)

Pull request description:

  close #252

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

Tree-SHA512: dda4454a6f7ff515fef3d67ba1af09a35c3e039bfb5f5bca3d1b86f356bded8d16007e87969d7927990457db5cd130c1cf33186f0e5166bac61c460dea623846
2023-02-03 13:33:06 +01:00
Antoine Poinsot
bd6f84421a
Merge #299: Perform the bitcoind version sanity check before loading the watchonly wallet
9c7613fc141c2705525be85bbe28ee209109adb5 lib: perform node-related bitcoind sanity checks before loading the wallet (Antoine Poinsot)

Pull request description:

  Fixes #284.

ACKs for top commit:
  edouardparis:
    ACK 9c7613fc141c2705525be85bbe28ee209109adb5

Tree-SHA512: 3f2ec8ae7b1e426d214dbd693af90bebea305572a5c1dc903eff8c93de74cd964a7e463bfe65c7447bf9537f79c6b6d24354c93dd71374c9a8d8141adfce30a2
2023-02-03 13:25:45 +01:00
Antoine Poinsot
3a573b695e
qa: test we discard RBF'd deposits 2023-02-03 13:22:05 +01:00
edouard
2a9bcf92d0 Change HardwareWallet for (Un)Supported enum 2023-02-03 13:19:29 +01:00
Antoine Poinsot
f1532f8afc
bitcoin: track expired unconfirmed deposits, remove them from DB 2023-02-03 13:17:26 +01:00
Antoine Poinsot
ed156543c9
database: permit to remove coins from DB 2023-02-03 12:57:44 +01:00
Antoine Poinsot
62c4b9a01c
bitcoind: cleanup gettx cache and conflict detection in spent_coins
This is the same logic as the (cleaner) one we introduced in
confirmed_coins. Merge the two in a single CachedTxGetter, unfortunaly
at the expense of having to clone() the GetTxRes for now because i don't
want to fight with the borrow checker.
2023-02-03 12:57:43 +01:00
Antoine Poinsot
201c9f21b6
bitcoin: cache calls to 'gettransaction' when checking for coins confirmation 2023-02-03 12:57:42 +01:00
Antoine Poinsot
13214c887f
qa: test we discard RBF'd deposits when replacement is confirmed 2023-02-02 17:32:08 +01:00
edouard
d5baf1bd57
Merge #303: Add liana version in gui settings
0416a3645ab98971ba45eec9646b9934e33188f1 Add liana version in gui settings (edouard)

Pull request description:

  close #243

ACKs for top commit:
  edouardparis:
    Self-ACK 0416a3645ab98971ba45eec9646b9934e33188f1

Tree-SHA512: 7f3d516ef0c1784b0f6da7ceb0c026748db6ecd35147340ba88f66d520f89aba0dcad23b02804fb922de9ef204c54f86b007321d336d31cff58254a028140317
2023-02-02 16:11:58 +01:00
edouard
0416a3645a Add liana version in gui settings
close #243
2023-02-02 15:46:35 +01:00
edouard
bd6ecaeb28
Merge #298: gui: log off ledger_transport_hid
0e05ff5244276f3ae02d2bb264479106ccfc4222 gui: change log_level of ledger_transport_hid (edouard)

Pull request description:

  ledger hid apdu exchanges were displayed in the log because of ledger_transport_hid crate.
  This commit removes these log entries.

ACKs for top commit:
  edouardparis:
    Self-ACK 0e05ff5244276f3ae02d2bb264479106ccfc4222

Tree-SHA512: 3961e38dabfe850d10c9670dcb8e89c60bad4ee6267ff4ec93929901d32bd53ddbe0f328c18346297749921fd9e9dcc6ab46ba0aab4cc1476f530bbbb36540cd
2023-02-02 15:40:35 +01:00
edouard
94a2b72d96
Merge #305: Add patch to liana version
5e79c05c544a573a9030e64564c412d95ac34f57 Add patch to liana version (edouard)

Pull request description:

  The struct will be imported by the gui which
  may need one day to increase the patch version number.

ACKs for top commit:
  darosior:
    ACK 5e79c05c544a573a9030e64564c412d95ac34f57

Tree-SHA512: 8f129587c638107be31e9a1aa00387ba8d319338df1f3a1072386585901476dd677c85fa3fb8e7a985f11ea6cc2d5607279554ad5a2d651e2c14dda3842353a4
2023-02-02 15:38:17 +01:00
edouard
0e05ff5244 gui: change log_level of ledger_transport_hid
ledger_transport_hid logs should not appear if the log_level is the default
`info` level.
2023-02-02 15:01:49 +01:00
edouard
5e79c05c54 Add patch to liana version
The struct will be imported by the gui which
may need one day to increase the patch version number.
2023-02-02 14:43:04 +01:00
Antoine Poinsot
c4981fce5a
Merge #302: contrib: update the Iced patch for reproducible builds
7a3eeb741ea42e3af4d5414e6778bb3fa585f762 ci: test the GUI against it's current MSRV (Antoine Poinsot)
b2602e02046c21636c86b71247a1988ee71616bb contrib: use unpublished rustc 1.64 to build the GUI in Guix (Antoine Poinsot)
0a1c04db3625608522dba98bc4d2a070853cdd1a contrib: fixup patching in Guix build script (Antoine Poinsot)
3f49366b86dc4e2f10fd9e415576f794937a01dd contrib: update the Iced patch for reproducible builds (Antoine Poinsot)

Pull request description:

  The Iced dependency was updated, and the patch wasn't valid anymore.

ACKs for top commit:
  darosior:
    ACK 7a3eeb741ea42e3af4d5414e6778bb3fa585f762 -- tested a reproducible build with this.

Tree-SHA512: 4e79821f24d9be8b5b2db5f415372f6a0f54ebff616d6335f38569ff047786c3e38b3f34e9f85b5141451af13f86651e827d176f01b4f51d12dd4dcc69beb434
2023-02-02 14:35:10 +01:00
edouard
ada2d010c9
Merge #289: Gui multisig
ca39b15edd366d23d4bcf7433273663807fa2aab installer: generate multiple xpubs in participate step (edouard)
445ad733fbb6604f2b1acfc93db454eb4794baf7 Add signatures information to spend (edouard)
bf1e9e4b808a7c275766975467e637b883524236 gui: new module settings (edouard)
689f19a4f22009a9043a7308e00c96bf1de97a45 Edit key name in installer (edouard)
bcd223f3fb8cf7224eede75b5cfeb97ae8e93ef9 Add sigs number and threshold to spend list view (edouard)
1f3399bd0f78593a689f0ec50934b1cf4f34f692 Add PartialSpendInfo to SpendTx model (edouard)
9a1cda2f5ed80a66324b272b7cf4c3bd7202e953 Use spend state in recovery panel (edouard)
a2ac34e6b03ef92025ac0f9c9cb709719ea6375a installer: Participate in a new wallet section (edouard)
dfc10eba61818b87ef12f057507a9b9660851d61 Add multisig wallet creation in installer (edouard)

Pull request description:

ACKs for top commit:
  edouardparis:
    Self-ACK ca39b15edd366d23d4bcf7433273663807fa2aab

Tree-SHA512: 67898dd5cc9ddfe135ddd2e57c6f3d6a6a10cf63211fe44c35e36cd182d4023cdefb8b15d2bd07290d83d631e360b20114b60e85728f9bbdc8c0e0d16b37f746
2023-02-02 12:56:42 +01:00
edouard
ca39b15edd installer: generate multiple xpubs in participate step 2023-02-02 12:23:48 +01:00