1839 Commits

Author SHA1 Message Date
Michael Mallan
0f09be151c
gui(installer): don't change values while waiting for ping result 2024-09-05 16:02:09 +01:00
Michael Mallan
c93aa88d74
gui(installer): add electrum node option 2024-09-05 16:02:07 +01:00
Michael Mallan
341e4467db
gui(installer): allow for different node types 2024-09-05 16:02:05 +01:00
Michael Mallan
83172c7bc5
gui(installer): add general node definition 2024-09-05 16:02:04 +01:00
Michael Mallan
046b54e6a9
gui(installer): define bitcoind from general node struct 2024-09-05 16:02:02 +01:00
Michael Mallan
c5d9d007fb
gui: move bitcoind to new node module 2024-09-05 16:02:01 +01:00
Michael Mallan
4536eff561
gui(installer): extract logic for try ping bitcoind 2024-09-05 16:01:59 +01:00
Michael Mallan
ef44cf329a
gui(installer): add module for node step 2024-09-05 16:01:58 +01:00
jp1ac4
f74f071b8a
gui: upgrade liana dependency 2024-09-05 16:01:56 +01:00
Antoine Poinsot
6f73347383
Merge #1222: Add Electrum backend
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
2024-09-05 16:09:05 +02:00
Michael Mallan
341f940664
func test: prevent disconnects when using mocktime
Thanks to pythcoiner for providing this fix.
2024-09-05 14:56:01 +01:00
Michael Mallan
b630d46770
func test: wait for block heights to match
This is copied from darosior's changes in
https://github.com/wizardsardine/liana/pull/1222#issuecomment-2324894986.
2024-09-05 14:56:00 +01:00
Michael Mallan
ada89c5c56
doc: update with electrum info 2024-09-05 14:55:58 +01:00
Michael Mallan
177dfc46c3
lib: expose BDK's electrum client 2024-09-05 14:55:56 +01:00
jp1ac4
72c6314898
ci: add electrs to func tests 2024-09-05 14:55:55 +01:00
jp1ac4
371e31e3f3
func test: allow to run using electrs backend 2024-09-05 14:55:53 +01:00
jp1ac4
a85d4887e9
func test: allow for different bitcoin backends 2024-09-05 14:55:50 +01:00
jp1ac4
1b04b29491
func test: fix min rbf feerate
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.
2024-09-05 14:55:48 +01:00
jp1ac4
c7ee862020
bitcoin: add electrum backend
This includes changes from darosior's comment in
https://github.com/wizardsardine/liana/pull/1222#issuecomment-2324894986.
2024-09-05 14:55:45 +01:00
edouardparis
6826aa034a
Merge #1266: gui: filter out logs for cosmic_text
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
2024-09-05 14:20:47 +02:00
edouardparis
360aac5a4f
Merge #1263: Use different msg for reloading or extending history tx list
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
2024-09-05 10:48:45 +02:00
edouardparis
b44fad6715
Merge #1268: Fix RemoteBackend::Undefined panic because of skipped step
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
2024-09-05 10:25:21 +02:00
edouardparis
877b95e52d Fix RemoteBackend::Undefined panic because of skipped step
Because Testnet and regtest do not ask user the choice of backend
the install panic as the RemoteBackend enum stays to undefined

close #1264
2024-09-05 09:56:28 +02:00
pythcoiner
7c571370bd gui: filter out logs for cosmic_text 2024-09-05 06:12:30 +02:00
edouardparis
1d720d12a4 Use different msg for reloading or extending history tx list
After reorg last payments were not removed as the reloading
message was handle as an extension of the list.

close #1260
2024-09-04 18:19:21 +02:00
edouardparis
e11529be56
Merge #1262: Change remote backend wording
d497c4dfe330b759cffe7f2e06b1a1fe90b58da1 Change name displayed in launcher (edouardparis)
2c79e618ce33120d63459d8be179c34807411bfc Use Liana Connect terminology (edouardparis)

Pull request description:

  ![20240904_16h27m37s_grim](https://github.com/user-attachments/assets/066dfcdb-df75-4457-826f-92bf75f61a9e)
  ![20240904_16h28m01s_grim](https://github.com/user-attachments/assets/cd983c09-cdd8-4f2b-805b-aac85390c79b)

  discussed in #1240 and discord

ACKs for top commit:
  edouardparis:
    Self-ACK d497c4dfe330b759cffe7f2e06b1a1fe90b58da1

Tree-SHA512: 49e61b47e1eb13dbde3195819f845ae715d3ee2b6f84136c5ace53a77fef8b6fda4a05c940d6c6d7e0148690c1ce87bbc8e166d31aa6d710216a8379a938000a
2024-09-04 17:19:38 +02:00
edouardparis
d497c4dfe3 Change name displayed in launcher 2024-09-04 16:03:09 +02:00
edouardparis
2c79e618ce Use Liana Connect terminology 2024-09-04 15:12:54 +02:00
jp1ac4
c4c2424f24
bitcoin: expose MempoolEntryFees 2024-09-04 11:49:30 +01:00
jp1ac4
5011ad9290
bitcoin: return spent block height & time separately 2024-09-04 11:49:27 +01:00
jp1ac4
689442c2c9
bitcoin: allow to store UTXO deriv index 2024-09-04 11:49:25 +01:00
Michael Mallan
4c02b0d431
bitcoin: use mut ref for start_rescan 2024-09-04 11:49:24 +01:00
jp1ac4
69259c1236
poller: sync wallet before checking updates
This includes changes from darosior's comment in
https://github.com/wizardsardine/liana/pull/1222#issuecomment-2324894986.
2024-09-04 11:49:21 +01:00
jp1ac4
89e004d4fd
bitcoin: add sync_wallet method to interface
This includes changes from darosior's comment in
https://github.com/wizardsardine/liana/pull/1222#issuecomment-2324894986.
2024-09-04 11:49:18 +01:00
jp1ac4
34b9a49328
config: add general bitcoin backend option 2024-09-04 11:49:17 +01:00
jp1ac4
e267f66be6
descriptors: allow to get underlying public key 2024-09-04 11:49:14 +01:00
Antoine Poinsot
5ee71d9df1
Merge #1235: ci: run spend functional tests
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
2024-09-04 12:47:00 +02:00
edouardparis
140b31b21b
Merge #1254: Separate login from choose backend step
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
2024-09-04 11:41:19 +02:00
Antoine Poinsot
1b7bb9485a
Merge #1257: qa: pipe stderr to stdout, not PIPE
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
2024-09-04 11:31:18 +02:00
Antoine Poinsot
26ade7ebdd
qa: pipe stderr to stdout, not PIPE
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.
2024-09-04 11:22:51 +02:00
edouardparis
c75f909dc9 Separate login from choose backend step 2024-09-03 16:46:09 +02:00
edouardparis
e6c592955e
Merge #1246: fix hard coded network signet for remote backend
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
2024-08-30 15:58:11 +02:00
edouardparis
a331f9fd70 fix hard coded network signet for remote backend
remote backend supports now also mainnet.
2024-08-30 15:46:43 +02:00
edouardparis
e1e5860a26
Merge #1245: Merge launcher and first installer step
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.

  ![20240830_10h55m36s_grim](https://github.com/user-attachments/assets/ecd7d085-f72b-450d-8e46-c37b8535ebc1)
  ![20240830_10h55m53s_grim](https://github.com/user-attachments/assets/126b6e1b-07cc-4ba7-9684-0cc846503ee6)

ACKs for top commit:
  jp1ac4:
    Tested ACK c99df6ccfa.

Tree-SHA512: 5a43c543373cbce4aac8f1ead932b7858f8906b005eaca0a07270488b0eb9e8181c58d87400bc512889bb1d258496587da6269889b16e2afd94ef4b03445b76b
2024-08-30 12:21:26 +02:00
edouardparis
c99df6ccfa Merge launcher and first installer step
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.
2024-08-30 11:00:01 +02:00
edouardparis
f2e8e11a12
Merge #1236: Display details of wallet policy in installer
59e7131aeef4478933c6923155ed59535e218c96 Display wallet policy in wallet settings (edouardparis)
52755ed8129041433e3d9695a3c5f93b094c80ed Display details of wallet policy in installer (edouardparis)

Pull request description:

  ![20240827_14h53m19s_grim](https://github.com/user-attachments/assets/e639813c-9fcb-4623-8ed7-a656a7af4154)
  ![20240827_14h56m31s_grim](https://github.com/user-attachments/assets/ac683af1-2c77-4276-8be3-6cd90383cfbc)

  close #620

ACKs for top commit:
  edouardparis:
    Self-ACK 59e7131aeef4478933c6923155ed59535e218c96

Tree-SHA512: 2c272b22cbed496648d8c16c8f5639f6dfa174ca6c5891036d91e9a568e0ada4c5db69576f6d1bc08f44fbae172ba66714e6278ed87fd3cf51e95f00135e63b6
2024-08-29 18:34:38 +02:00
edouardparis
59e7131aee Display wallet policy in wallet settings 2024-08-29 18:24:34 +02:00
edouardparis
52755ed812 Display details of wallet policy in installer 2024-08-29 18:24:34 +02:00
edouardparis
969046c25b
Merge #1237: Change remote backend server url
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
2024-08-28 17:19:59 +02:00
edouardparis
abeeddc1a8
Merge #1239: Add Liana-Version header to remote backend client
9473d4b9280cd62e89c70a1085904ece448ad6f9 Add Liana-Version header to remote backend client (edouardparis)

Pull request description:

  close #1216

ACKs for top commit:
  edouardparis:
    Self-ACK 9473d4b9280cd62e89c70a1085904ece448ad6f9

Tree-SHA512: 708c4c739c8ea17fd0fb5847490b59205744cbc13e274b9699b22ec247657a47264d0979d2f0dcea7b65d35e09ac67d4c30cd00f1f51e1cdc800098b1bdd1261
2024-08-28 17:17:47 +02:00