341f9406645dd26c7862ae7abe28aed5c7e9185d func test: prevent disconnects when using mocktime (Michael Mallan)
b630d46770319dce051c09133a528b1ff322a358 func test: wait for block heights to match (Michael Mallan)
ada89c5c56090338554cb8db0e078674798341ac doc: update with electrum info (Michael Mallan)
177dfc46c305ea7ab1c421e9a9d60535327fedff lib: expose BDK's electrum client (Michael Mallan)
72c63148984bc69ff7c4b04cfdc16a12994b2956 ci: add electrs to func tests (jp1ac4)
371e31e3f35ac5054fe2bd7dd04bcdd8790e8988 func test: allow to run using electrs backend (jp1ac4)
a85d4887e9efeaada6a1a79f4a35a32cf8444569 func test: allow for different bitcoin backends (jp1ac4)
1b04b294910d1cb65885f17dd266029771b476cf func test: fix min rbf feerate (jp1ac4)
c7ee8620204e72bcf990a994c1bdf89652f40c84 bitcoin: add electrum backend (jp1ac4)
c4c2424f244fcd4461cf5378f83e9abe4ba12866 bitcoin: expose MempoolEntryFees (jp1ac4)
5011ad929037af294dc471844d8bf5c799040383 bitcoin: return spent block height & time separately (jp1ac4)
689442c2c910ad5967651c0cc9f84bdc71cd0002 bitcoin: allow to store UTXO deriv index (jp1ac4)
4c02b0d43115f5d792908dd30580eaf241e8fc58 bitcoin: use mut ref for start_rescan (Michael Mallan)
69259c12362b2be8da8f210def1d3e338fa8ab00 poller: sync wallet before checking updates (jp1ac4)
89e004d4fdd88324da255bc85aeb8adbb90653b1 bitcoin: add sync_wallet method to interface (jp1ac4)
34b9a49328e7a3313ad6f4a0537ac5b349b54d76 config: add general bitcoin backend option (jp1ac4)
e267f66be6ce3bebac413ee9e4901d27e8cbe9df descriptors: allow to get underlying public key (jp1ac4)
Pull request description:
This is to add the Electrum backend as part of https://github.com/wizardsardine/liana/issues/56#issuecomment-2183063784.
This requires the database to be running version 5 following #1180. The migration from a previous DB version must be done using bitcoind. Thereafter, the daemon can be run using an Electrum backend by replacing the `[bitcoind_config]` section in the daemon.toml config file with:
```
[electrum_config]
addr = "127.0.0.1:50001" # adjust IP:port as required
```
Remaining tasks:
- [x] Include ancestors and descendants when getting a transaction's `MempoolEntry`
- [ ] Additional sanity checks, e.g. check Electrum version
- [x] Check if logic regarding ongoing rescan needs to be adjusted
- [x] Add Electrum backend to functional tests
- [x] Add Electrum backend to CI pipline functional tests
- [ ] Add unit tests
- [x] Update README & other docs
ACKs for top commit:
darosior:
re-ACK 341f9406645dd26c7862ae7abe28aed5c7e9185d
Tree-SHA512: dbbb375123cc5c566f5c8535d002ac4491b4be5ab2766845b5b7ab51d19e7e85eafc0097235e1ebc5c5a049bd2222ab5582264314e46c77b5fff8027da31b803
Here, the min RBF feerate is 1 more than that of the transaction
to be replaced.
The feerate of the transaction to be replaced may vary slightly
depending on the signature size and is calculated during the test.
As such, the min feerate should be set according to this
calculated value.
7c571370bd599e294b161812e6b8940c64012744 gui: filter out logs for `cosmic_text` (pythcoiner)
Pull request description:
Logs are litterally flooded by `cosmic_text` logs at DEBUG level, this PR filter out this target
ACKs for top commit:
edouardparis:
ACK 7c571370bd599e294b161812e6b8940c64012744
Tree-SHA512: 252490eafabe6e56dbe5e20d0f0721a9d068756d0443e47693c6448e50c2f11121b8c9d8c114bb4fa38bd0b746a118f7d3133e4236e0759d5b27b63ac9c3907e
1d720d12a48be082668570a0448a9e3fafcf230c Use different msg for reloading or extending history tx list (edouardparis)
Pull request description:
After reorg last payments were not removed as the reloading message was handle as an extension of the list.
close#1260
ACKs for top commit:
pythcoiner:
ACK 1d720d12a48be082668570a0448a9e3fafcf230c tested w/ bitcoind backend
Tree-SHA512: 8cdb68cec969bbc187e254e05f29a847e26cf6ba198f11c8d11ddccc64f19b3b38a8d4f3dff30eb60cf7779df378ed241986bc50daba8bfb11b9c22b2139b846
877b95e52ddb3871f0469253d121a157f028798d Fix RemoteBackend::Undefined panic because of skipped step (edouardparis)
Pull request description:
Because Testnet and regtest do not ask user the choice of backend the install panic as the RemoteBackend enum stays to undefined
close#1264
ACKs for top commit:
edouardparis:
Self-ACK 877b95e52ddb3871f0469253d121a157f028798d
Tree-SHA512: 80b3ca99e8848bb2025174874307e6931947548c5964c7a6dd46517becb40c7a9fdd5a51385d24167541374ce8219bb6d04d96a20a8b3d8aefcef6a936346025
d497c4dfe330b759cffe7f2e06b1a1fe90b58da1 Change name displayed in launcher (edouardparis)
2c79e618ce33120d63459d8be179c34807411bfc Use Liana Connect terminology (edouardparis)
Pull request description:


discussed in #1240 and discord
ACKs for top commit:
edouardparis:
Self-ACK d497c4dfe330b759cffe7f2e06b1a1fe90b58da1
Tree-SHA512: 49e61b47e1eb13dbde3195819f845ae715d3ee2b6f84136c5ace53a77fef8b6fda4a05c940d6c6d7e0148690c1ce87bbc8e166d31aa6d710216a8379a938000a
c30ce5909f44449f13fa98565cdbc8e82661b33c ci: run spend functional tests (Michael Mallan)
Pull request description:
This adds the spend functional tests to the CI pipeline.
ACKs for top commit:
darosior:
utACK c30ce5909f44449f13fa98565cdbc8e82661b33c
Tree-SHA512: a2ec8085c418cc8a1e3bb49e8016d9061148e226083c27205297cd58ab1fc7208803d6c156077709cc547a973138e3c9312693c3761ab8a4cdb1f1dab7263a1f
c75f909dc91968392eef71c42b7fe332435e8298 Separate login from choose backend step (edouardparis)
Pull request description:
From the issue https://github.com/wizardsardine/liana/issues/1240 It was decided to separate the installer step where user choose the backend and the login.
ACKs for top commit:
pythcoiner:
ACK c75f909dc91968392eef71c42b7fe332435e8298
jp1ac4:
Tested ACK c75f909dc9.
Tree-SHA512: 8cb098b1a8f2e7f5cb65c2bfc1bc94fed828bacca0093377f0f8a38c13b78983d5612714c7bb464c42c81a532e1f7a64763223dba826b8af558fb65449326885
26ade7ebdd3b35667e07ba34986c7e25dd857f89 qa: pipe stderr to stdout, not PIPE (Antoine Poinsot)
Pull request description:
It turns out that setting both to PIPE would result in stderr not being read for some reason. So follow
https://docs.python.org/3/library/subprocess.html and set stdout to PIPE and stderr to STDOUT.
Tested with a process (electrs) which logs on stderr.
ACKs for top commit:
darosior:
ACK 26ade7ebdd3b35667e07ba34986c7e25dd857f89 -- tested by running the functional tests in parallel for #1222 and could correctly get the logs to debug the issue.
Tree-SHA512: fb4303474411bb818a2743ab675af476d132eb25bb8138d691d6f205febf8c863716bc9c8f400ab30876c3f0b376531ba96932946847e9068e641fa9b5edf7d4
It turns out that setting both to PIPE would result in stderr not being
read for some reason. So follow
https://docs.python.org/3/library/subprocess.html and set stdout to PIPE
and stderr to STDOUT.
Tested with a process (electrs) which logs on stderr.
a331f9fd706c34ba8ab639ca1c7b16a2a80a4fc3 fix hard coded network signet for remote backend (edouardparis)
Pull request description:
remote backend supports now also mainnet, we have to load downstream the chosen network.
ACKs for top commit:
edouardparis:
Self-ACK a331f9fd706c34ba8ab639ca1c7b16a2a80a4fc3
Tree-SHA512: a8ea2d349e647f766ecd3283eb72c3897b0e73799e17f602b563609d6258290da7347dd3f76d18f6f6e0ee7736a30e2c59ff3775fcded19f914846077bbe82ae
c99df6ccfa88a75ab31ae1edb2b17ef771f50b42 Merge launcher and first installer step (edouardparis)
Pull request description:
When the gui launches, it checks if there is
a wallet in the network datadirs with bitcoin mainnet in priority, then other networks as fallbacks. If it is the case, it tries to display information about the wallet by reading the settings.json file.
If no wallet was found, then the gui displays the choice to either create a wallet or add it.


ACKs for top commit:
jp1ac4:
Tested ACK c99df6ccfa.
Tree-SHA512: 5a43c543373cbce4aac8f1ead932b7858f8906b005eaca0a07270488b0eb9e8181c58d87400bc512889bb1d258496587da6269889b16e2afd94ef4b03445b76b
When the gui launches, it checks if there is
a wallet in the network datadirs with bitcoin mainnet in priority.
If it is the case, it tries to display information about
the wallet by reading the settings.json file.
If no wallet was found, then the gui displays the choice
to either create a wallet or add it.
eef55b41c97146476234bbd445e23d9f8f98cb20 Change remote backend server url (edouardparis)
Pull request description:
Remote backend has the auth service credentials.
We rely now uniquely on the following urls:
* https://api.signet.lianalite.com for signet
* https://api.lianalite.com for mainnet
ACKs for top commit:
edouardparis:
Self-ACK eef55b41c97146476234bbd445e23d9f8f98cb20
Tree-SHA512: fadc9f6c8454dc747ed22302ea33ae985460cc1b7c872010ef4845ced66c0468ba59d0e8e3296426427bea40c2d42ad2935b90fb4ecf6d2dc07d4c1d0c379fab