6a6a72408fe105c278b9e66d885d30310b92dd8a grammar: USAGE.md download it there -> download it here (Ben Westgate)
80fddb20f3522e4baf917468ebacef6aa4dd9718 grammar fixes: loader.rs (Ben Westgate)
b821896f7792c6f5b7e101666751a50e71b93c5d installer/prompt: improve grammar and fix typos (Ben Westgate)
Pull request description:
Closes https://github.com/wizardsardine/liana/issues/1283
back up is a verb, backup is a noun.
Other words had improper plurality to match the verbs used or the verb had the wrong conjugation or adjectives were placed outside of normal locations. More descriptive pronouns used.
ACKs for top commit:
darosior:
ACK 6a6a72408fe105c278b9e66d885d30310b92dd8a
Tree-SHA512: dffa8158c0c59045cccac9b124f60dbfe0489cf0e6cf43be462aaf38e4ebdcb418a26cfc7d7c7e813d30e4e0c35bc6a563a985437e882b376f6b14c10bd07d4d
87593befd4a85accbab7e7417b322ea74393b69d electrum: don't roll the tip forward upon reorg (Michael Mallan)
Pull request description:
For Electrum, we detect reorgs while syncing based on our local chain.
When a user requests a rescan, we roll the DB back to genesis block, but leave the local chain as it is. If there's then a reorg, we would find the common ancestor with respect to our local chain, which would be later than the DB's tip. In order not to miss any updates, we shouldn't roll the DB tip forward in that case.
ACKs for top commit:
darosior:
utACK 87593befd4a85accbab7e7417b322ea74393b69d.
Tree-SHA512: d89f95d15a55b21479ace2757d2f343bbff8919dd31733d9bff3165d0cfdcb1256e0894dab414f57d363331ef81c15fb4efdae572394640fbc620bcea8c8c57c
74a53baa39c409d8a39a27affc5ebac34128cb24 spend: add 10 sats to fee for 1 sat/vb txs (Michael Mallan)
Pull request description:
This is a quick change to address #1322.
It adds 10 sats to the fee for a non-replacement transaction targeted at 1 sat/vb.
ACKs for top commit:
darosior:
utACK 74a53baa39c409d8a39a27affc5ebac34128cb24. Looking forward to a real fix.
Tree-SHA512: c8ef2a49be67b94c2198a246a82f92f16661308151540197a7831a06e1eca277fa3dafe733b53a97dc3c9fc6639f4b724237863f186e4ffeb0bf61c74a1e9c0b
6349df95d3a690ac35be6dc18e5c6e0843d6c940 gui(installer): implement Default for DefineElectrum (pythcoiner)
530a8c50f5d96123880443e3bdb8886f51235815 gui(settings): do not switch between backend types (pythcoiner)
Pull request description:
22ed096 fixes#1306
2bd22b4 fixes#1305
fd50913 in order to make clippy happy
ACKs for top commit:
jp1ac4:
ACK 6349df95d3a690ac35be6dc18e5c6e0843d6c940.
Tree-SHA512: 55fcac1a6e2129269e54106b354d22d6ddd4eae68034ecca030f7eb17adf1d7e6cb3cd3118dd877df3b934d26f61c6f7b5af0f354dc1000fa0c1fc6c6d833df5
b73193ae77dccde519d43e5042324742dbee5523 Deserialize error from create_spend http response (edouardparis)
Pull request description:
Instead of having an unclear and ugly message like:
data did not match any variant of untagged enum DraftPsbtResult
ACKs for top commit:
edouardparis:
Self-ACK b73193ae77dccde519d43e5042324742dbee5523
Tree-SHA512: 8182c01ce4067b30dc821dc8f13243b3df4a85fa8f146d779bd9922fedd26f0eabd7fca07c47fdc517b0d958cbe0185c7003e09d6d28f32312e6cb4d4fb9ba52
ff3d497fe12a70c606e9953cfb29fa4af0520859 gui(settings): fix daemon reload handling for electrum (Michael Mallan)
Pull request description:
In case of error reloading daemon for Electrum, set edited to false (same handling as for bitcoind).
ACKs for top commit:
darosior:
tested ACK ff3d497fe12a70c606e9953cfb29fa4af0520859. Not bulletproof as i need to get back to the settings and re-click save with the previous settings for the daemon to be restarted, but still helps a lot to have the previous-working-config ready to be saved.
Tree-SHA512: c9c6aad38a8a834d51a6642b42c560107e503afa820db971a2af23c979681ee8487ff4c1c635d99ac740351fab0fe9c3b0119d0d3326193b5aea81f7dfe6598b
f67ee76f57b199b7b826348143e40cba61f81c8d gui: update liana dependency commit hash (Michael Mallan)
bf25103fadfdef7912b0ef4e155000d65acd3ccc gui(settings): add sanity check on electrum wallet address (pythcoiner)
Pull request description:
This is the first commit from #1303.
ACKs for top commit:
edouardparis:
ACK f67ee76f57b199b7b826348143e40cba61f81c8d
Tree-SHA512: 02c52039c42af1fbae549862a3c8971b8561ce6285674461a40b04ede5d7704b001b93705874ea466b0176b6a43c849b6070be0dbb0d32205abc1389ccbd2b4e
3d7b3e44734ec859e37d1ac4005f25678f0cbc94 qa: correct reorg_shit function to use given `height` (Antoine Poinsot)
193f38a7c7258978e590f54aa55e048adb45e9ef ci: lower overall timeout (Antoine Poinsot)
59ba0ad8ef3f3a7203b1d0587ebf07e8642767f2 electrum: log local and updated chains after polling Electrum (Antoine Poinsot)
d3082a63050a9ee7fdc2f50153f161432e9b2989 electrum: make sure chain updates connect on rescan (Antoine Poinsot)
Pull request description:
The `from_chain_tip` command takes a `CheckPoint` of our current chain tip for purposes of providing a chain update which connects to it, including in case of a reorg.
This is not a point from which to rescan the chain.
The current code made it so in case a rescan was performed while there was too much progress on the backend (>8 blocks), or when there was a deep enough reorg, the chain update could not unambiguously connect to our local chain. Here is an instance (logs were adapted to debug this issue):
```
2024-09-10T15:19:48.258728Z DEBUG liana::bitcoin::electrum:196: Full local chain: LocalChain { tip: CheckPoint(CPInner { block: BlockId { height: 618, hash: 0x6c6f30d76e1ce1bee2157d271300b93e968c501685c20e8466635310a4622efe }, prev: Some(CPInner { block: BlockId { height: 617, hash: 0x3ed1127ea206b672f47c6dfc984c63c229264f618015865057de9a75e7a6f8b0 }, prev: Some(CPInner { block: BlockId { height: 616, hash: 0x6ffe4d528
b5689802c46c86a1bd0acc9ecb35abf0bf73d2ccce72935b333c29e }, prev: Some(CPInner { block: BlockId { height: 615, hash: 0x433f6d69da936c29fdf02d43aeca9e0cfce0ce877f628743ada38e566dff1d73 }, prev: Some(CPInner { block: BlockId { height: 614, hash: 0x12a64d6416e196618154c34ad58f5c7342b59a752dbc4686af668e987f38dc28 }, prev: Some(CPInner { block: BlockId { height: 613, hash: 0x539942c4bb38f94e9ae35f0d120c8e250edd7a56930e130fe079 59d179dd2c0a }, prev: Some(CPInner { block: BlockId { height: 612, hash: 0x12ab45ad9c2dc246e450f98831cf2e6c5b3c9c5a0ab4af46c8a8cd915680d728 }, prev: Some(CPInner { block: BlockId { height: 611, hash: 0x21c890e0885f4672e22dbb6d17b110863bdd6b0464e0f5e731072d63f45a12d7 }, prev: Some(CPInner { block: BlockId { height: 515, hash: 0x021e3c76fbe92630214b1b23b85d44a9b443c6b1d01b336b7d1994a18944ebb1 }, prev: Some(CPInner { block:
BlockId { height: 0, hash: 0x0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206 }, prev: None }) }) }) }) }) }) }) }) }) }) }
2024-09-10T15:19:48.259058Z DEBUG liana::bitcoin::electrum:197: Full chain update: CheckPoint(CPInner { block: BlockId { height: 633, hash: 0x41ce59abb80de83d165501a1f9ba7acc98ed0ce4af7fde512fd2491905e777bd }, prev: Some(CPInner { block: BlockId { height: 632, hash: 0x4e812e2a98150c5da85efa44d792feed64e76ffbd0bf31ac5925a1b798bad959 }, prev: Some(CPInner { block: BlockId { height: 631, hash: 0x1379b6c609ce9adb0e2123dd36
629e71a5011dc0e9f6aa3935f2f6c5c9ed28b2 }, prev: Some(CPInner { block: BlockId { height: 630, hash: 0x4bb4f27e5cefd3ef2d9707af6ed933c6bb049a48081250d365fdb1bd3a10da4d }, prev: Some(CPInner { block: BlockId { height: 629, hash: 0x64bf474cde129b6b9a45c7f697d57c9514ef33de02cda3df1f65543f0b111366 }, prev: Some(CPInner { block: BlockId { height: 628, hash: 0x60c205d56d5a244da352867c7db48a696fe9ecfe04d0fd4f105c7663afdf5717 }, p
rev: Some(CPInner { block: BlockId { height: 627, hash: 0x70b8d4091481295e39582d82f5c72ca5cb62505861a6d804afc1b1a0caa25c2b }, prev: Some(CPInner { block: BlockId { height: 626, hash: 0x15ad17258b32d87b8719e6ee911e4b54e8095a3429d05617d391f262a4e8b8c1 }, prev: Some(CPInner { block: BlockId { height: 0, hash: 0x0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206 }, prev: None }) }) }) }) }) }) }) }) })
```
I think this is the root cause of the issue we are seeing in the `rescan_edge_cases` functional test when ran in CI, and also of the crash Pyth reported.
Fixes#1280.
Fixes#1270.
ACKs for top commit:
jp1ac4:
ACK 3d7b3e44734ec859e37d1ac4005f25678f0cbc94.
Tree-SHA512: 0ed89722af4aa014877406f47543779ebcb23d28827fe87b48e6593fd8283bfa92fa22f9862dd0b6f34a367e01609aad07bd5df339988b1054091492d65ec312
It was using the passed height for all other calculation, except for the
invalidation itself where it was using the wider-scope-initial-tip! This
is probably a mistake due to moving it to its own, inner, function.
55de4d95a0769bdbf4a63986e56467699026e0db gui settings: display fingerprint if no alias (edouardparis)
Pull request description:
close#1310
ACKs for top commit:
edouardparis:
Self-ACK 55de4d95a0769bdbf4a63986e56467699026e0db
Tree-SHA512: 34bb0cf699f227663395d3822ddf442dc16e960e8cec8f96d44e9e00c20608805dca90b14d4727e0e10d1256a2a7ad66660e31cf8253f1893c0fdd4211f625d3
4567e3280c2a3238249ae7f7d2ce862aa8493a98 electrum: reduce load on server (Michael Mallan)
Pull request description:
Changing values as discussed in #1292.
ACKs for top commit:
darosior:
utACK 4567e3280c2a3238249ae7f7d2ce862aa8493a98
Tree-SHA512: 71fca18026d3e6bca95fda82f0018b1073ac2a122ffa08294ff01d335fb34a348039e5aaab95de15c359ebd8e38ddfda07ba895e0e0e2550c6a2ec0531847135
537ebb2fb3301e82a297a5c8c4c5043d8d0938e4 func test: check electrs has started (Michael Mallan)
7612eda78874b879aefaaa790aab56429c33473c electrum: ping server before returning client (Michael Mallan)
Pull request description:
Ping server as an extra connectivity check.
ACKs for top commit:
darosior:
utACK 537ebb2fb3301e82a297a5c8c4c5043d8d0938e4
Tree-SHA512: 77186595acdabe878a4158847e878e0e004c58dd9476b9e5b4d99f4a79bb6fa552edb0b8b42f25a353bd6028505e66f6e7c6ffebfc7b1c252ad0b89db475bc23
d551aeeeacf5356a0ba25f4929230dd099b01c32 electrum: consider invalidated blocks for reorgs (Michael Mallan)
86965c188e29191b60da51ce7d998157e1d50f77 electrum: common ancestor is before first changed block (Michael Mallan)
Pull request description:
The common ancestor is the highest block that is strictly lower than the first change.
When finding the point of change, we can take the first height with any change (including an invalidated block) rather than the first height with a new block, which avoids a loop. The height found in both cases (loop vs no loop) should be almost always the same as we apply the update to our local chain before finding the common ancestor, but perhaps in a test if there's a reorg down to 0 and the chain update only contains invalidated blocks and no new blocks, then checking for the first invalidated block would be better as there would be no new blocks to find and the reorg would be undetected.
ACKs for top commit:
darosior:
utACK d551aeeeacf5356a0ba25f4929230dd099b01c32
Tree-SHA512: 96f59d87e6a89f49a371219cac78505d1ae8edcf2b1789f134f526b7f627d4355e036a8af1584e3076cb58a41bc9c2a0c8b81a48f81157986aae2af33f236dbd
c2a8cf809267cb6f4dc11b9b16d8b03d7ef786e2 Reset hws watch list at each installer step (edouardparis)
Pull request description:
Because of flaky connection, we drop the connection list to reconstruct it at each step of the installer
close#1307
ACKs for top commit:
edouardparis:
ACK c2a8cf809267cb6f4dc11b9b16d8b03d7ef786e2
Tree-SHA512: 6b3bf655550c03a823d7b4e82cb8ee470f819d3b73453cfd132002761131fb01447c12ec93d6a28dad31ed464924514b98108b95a379e302aca969767373aa0e
d1ba7c2dc82c2d8db4e422a98b4161ec228532da bump async-hwi 0.0.23 (edouardparis)
Pull request description:
This async-hwi version has a fix about the
wrong fetched version of the coldcard Q device.
ACKs for top commit:
edouardparis:
Self-ACK d1ba7c2dc82c2d8db4e422a98b4161ec228532da
Tree-SHA512: 5e126aca919fdb729de275451b52ba6519b44c9ea1b4bddcc47b9c694757e90beddfa6fce43741fa3cd2023a17f61c4e6deb15d0f32c97469abb00c11528385c
32fa86d663f008ca6083dcd0f964cc04297816ab electrum: check in db if rescan required (Michael Mallan)
Pull request description:
This Michael's last commit from #1285.
ACKs for top commit:
darosior:
ACK 32fa86d663f008ca6083dcd0f964cc04297816ab
Tree-SHA512: 940f5828aff3fb58ad60ce93ea8e16a7ec43325a79d64ea6e887bb92d99df1a41c27bde903c6d969dd7156bf3a4a4833d9321b8570ccfa37ffc869a8079542c5
887b71367bebe277740443ff4e2d0f1470d2c0ab Order history txs in home state (edouardparis)
Pull request description:
ACKs for top commit:
edouardparis:
Self-ACK 887b71367bebe277740443ff4e2d0f1470d2c0ab
Tree-SHA512: f091f29b1c0b96b80fbacc40ece131edce2d2bfd571cc239b84295c59880e796cb787c3c086b37adb67bef2a0ae428dd86d4a274b1b51208fe90bde77aceb858
0f48db7a88b1dcaee68190a6a6ee5e73b5630f01 electrum: check connectivity before creating client (Michael Mallan)
Pull request description:
This is to resolve https://github.com/wizardsardine/liana/issues/1276.
Tested that this change stops GUI freezing in https://github.com/wizardsardine/liana/pull/1241 when using invalid address in Electrum settings.
ACKs for top commit:
darosior:
utACK 0f48db7a88b1dcaee68190a6a6ee5e73b5630f01
Tree-SHA512: b176ceafda887c4ef97110c6a87807787136da6fd67fb8a2af0b63c102a7d0145f46df5d75b61a10b45cf4cbc91ad27535de7abaf13409e259d1c75881abcef3
819eb920c0210b9d95689f40cfbeba65c03280af gui(settings): allow to change node type (Michael Mallan)
2381227216663a6a2336ee79905646fb2a3aadca gui(settings): view & edit Electrum settings (Michael Mallan)
b570039ff8e740be43c6aebdc62910f4ab4eac05 gui(settings): rename Bitcoin Core to Node (Michael Mallan)
db20ae4b677cf4ffdf19ad0df6f50ea983b34a02 gui(installer): reduce empty space height (Michael Mallan)
0993905879629c58da24a1145acbb49faf31da3a gui(installer): update wording to include Electrum (Michael Mallan)
f40af570bccecf9361410df334ad30e45f57659b gui(installer): split long string and run cargo fmt (Michael Mallan)
0f09be151ca3ba1353d23b170805c845fc8ab5cc gui(installer): don't change values while waiting for ping result (Michael Mallan)
c93aa88d74620a555bd442bc3504e12af198f00a gui(installer): add electrum node option (Michael Mallan)
341e4467dbf727d78f31690b8dbc405995ab4088 gui(installer): allow for different node types (Michael Mallan)
83172c7bc584283d7dd4b93f3f18ec0f2d9a1ad0 gui(installer): add general node definition (Michael Mallan)
046b54e6a9337aaf478ea6e61f2d28d73f1b15c1 gui(installer): define bitcoind from general node struct (Michael Mallan)
c5d9d007fb908308592635b8f85236a1b7a4b5ae gui: move bitcoind to new node module (Michael Mallan)
4536eff561459648cbf0666ec757db95ac29de4f gui(installer): extract logic for try ping bitcoind (Michael Mallan)
ef44cf329adc0eed01451950454edfb7e54be515 gui(installer): add module for node step (Michael Mallan)
f74f071b8a3e4eda77cc5b468f891b21c5e4e2a4 gui: upgrade liana dependency (jp1ac4)
Pull request description:
This is for #1223.
For now, it's possible to edit the node's settings but not to change node type.
Remaining tasks:
- [x] Revert Cargo.toml once #1222 is merged.
- [x] Update wording as per https://github.com/wizardsardine/liana/issues/1223#issuecomment-2286483134.
ACKs for top commit:
pythcoiner:
ACK 819eb920c0210b9d95689f40cfbeba65c03280af
Tree-SHA512: 362a14d32c2e13ba286d252d9f8a1106d63e5c40198776653b0623b433435329663126307e17da017fdbbd8a8ad273b703cc3ba54fd13fa5a0afd7dd9179089a
cc02ac043b647b22b0533dec3f99cbcf62e7ee8f installer: Go directly to next step once login (edouardparis)
Pull request description:
Once the user is connected we redirect him to
the next step in the install process, but
we keep the Connected state in case the user
want to edit email after clicking on Previous
As discussed in #1240
ACKs for top commit:
edouardparis:
Self-ACK cc02ac043b647b22b0533dec3f99cbcf62e7ee8f
Tree-SHA512: c2b65288fd8fcb07edf021ad45391fc1761d185b7da48985a2108be5dce5a1f744fa37da8c667cb140df21ce2c4403492fab58c11098a3695c5c4b3496219346
Once the user is connected we redirect him to
the next step in the install process, but
we keep the Connected state in case the user
want to edit email after clicking on Previous
As discussed in #1240