Commit Graph

5309 Commits

Author SHA1 Message Date
Sander van Grieken
95b2f6fd63 qml: use Lightning, URI and Address for type names in ReceiveDialog 2022-09-29 11:57:34 +02:00
Sander van Grieken
8437e13666 add initial lnurl-pay 2022-09-28 18:21:07 +02:00
Sander van Grieken
2778a1bc20 fix dialog stack handling when closing from outside 2022-09-28 18:21:07 +02:00
Sander van Grieken
d65a7e7efc change address-only handling: create amount=0 onchain invoice
invoicedialog auto enables edit mode when amount is 0
2022-09-28 18:21:07 +02:00
Sander van Grieken
fb68931a8d allow zero amount invoices, add edit amount option for invoices 2022-09-28 18:21:07 +02:00
Sander van Grieken
5f9068d7b0 add default request expiry to preferences/config 2022-09-28 18:21:07 +02:00
Sander van Grieken
dd58328534 ui, fix payment failed 2022-09-28 18:21:07 +02:00
Sander van Grieken
d50d83e186 icons, buttons, receivedialog lifecycle 2022-09-28 18:21:07 +02:00
Sander van Grieken
10a1f11a53 re-add copy and share buttons 2022-09-28 18:21:07 +02:00
Sander van Grieken
b963c48238 remove old Send and Receive pages 2022-09-28 18:21:07 +02:00
Sander van Grieken
58e3e0c235 add manual input option 2022-09-28 18:21:07 +02:00
Sander van Grieken
cabf8e0644 support stacking dialogs 2022-09-28 18:21:07 +02:00
Sander van Grieken
d4df633f22 move request details into separate dialog 2022-09-28 18:21:07 +02:00
Sander van Grieken
15c76114c6 replace swipeview, send & receive now dialogs
send mostly working, though no user entered payment yet
2022-09-28 18:21:07 +02:00
Sander van Grieken
0f02c54c77 qml: fix qerequestdetails.py signal, remove qr scan loop logging 2022-09-27 10:01:20 +02:00
SomberNight
d94c934e47 qt main_window: _coroutines_scheduled needs locking
window.run_coroutine_from_thread starts a coroutine on the asyncio loop,
which, when finishing, pops from the dict.
The for loop in clean_up is running on the Qt thread.

fixes https://github.com/spesmilo/electrum/issues/7983
2022-09-26 20:10:44 +00:00
ThomasV
e138b02bac prepare release 4.3.2 2022-09-26 20:13:45 +02:00
ThomasV
60e2ad4316 follow-up 444dc7fb7f 2022-09-26 18:28:02 +02:00
Arian Ventura Rodríguez
7de1c604c6 Add yadio.io api to exchange rate 2022-09-26 17:11:08 +02:00
ThomasV
444dc7fb7f wallet: fix race condition that inhibits proper call of set_up_to_date 2022-09-26 17:02:30 +02:00
SomberNight
1478d9d878 Qt CompletionTextEdit: cast KeyboardModifiers to int
closes https://github.com/spesmilo/electrum/issues/7979
2022-09-23 17:08:16 +00:00
SomberNight
9ed5b092e4 coinchooser: (trivial) add some type hints 2022-09-23 16:37:35 +00:00
SomberNight
c43e0000ce Qt ConfirmTxDialog: disconnect timer when closing dialog
fixes https://github.com/spesmilo/electrum/issues/6791
2022-09-23 16:36:17 +00:00
ghost43
6bdabb8579 Merge pull request #7977 from JamieDriver/update_jade_api
jade: update Jade api to 0.1.37
2022-09-23 14:04:11 +00:00
ThomasV
6e429ebf9a test_lnpeer: instead of sleeping for 0.2s, wait until peers are initialized
this should fix https://cirrus-ci.com/task/6585628493086720
2022-09-23 12:42:15 +02:00
ThomasV
e8a4e287e9 cleanup old non-static_remotekey code (follow-up 1f403d1ca1) 2022-09-23 11:25:49 +02:00
ThomasV
028916b447 fix #7988 2022-09-23 09:41:46 +02:00
ThomasV
fe6a83d6c1 fix test_fail_pending_htlcs_on_shutdown: poll number of htlcs 2022-09-22 18:26:02 +02:00
ThomasV
30dfecc5dc wallet: check whether address can be reused in get_request_by_addr 2022-09-22 17:37:11 +02:00
Sander van Grieken
5681311fc2 fix request_status callback not passing the correct request key 2022-09-22 11:54:14 +02:00
ThomasV
79bcedd064 test_lnpeer: reset electrum.trampoline._TRAMPOLINE_NODES_UNITTESTS in tearDown 2022-09-20 19:17:32 +02:00
Sander van Grieken
11b8d5e2f0 qml: work around qeamount copy from None 2022-09-20 19:14:36 +02:00
SomberNight
e5f21fb7b5 lnurl: better handle unimplemented lnurl subtypes
fixes https://github.com/spesmilo/electrum/issues/7971
2022-09-20 16:00:20 +00:00
ThomasV
20bcb15480 Factorize code in create_routes_for_payment.
Calling suggest_splits with exclude_single_part_payments=False
2022-09-20 13:55:22 +02:00
ThomasV
b8cb561d1a test_mpp_split: add tests for exclude_single_part_payments=False 2022-09-20 13:49:16 +02:00
ThomasV
ead886781a create_routes_for_payment: fix 'we atomically loop'
Before this commit, partial results were yielded before we had
examined the whole split configuration.

I think the correct behaviour is to create all the routes for the
current configuration, then to yield them. If there is an exception,
we should try the next one.
2022-09-20 12:52:36 +02:00
ThomasV
5e77886b98 trampoline MPP: handle direct payment to trampoline node 2022-09-20 11:44:23 +02:00
ThomasV
9251f482b5 test_lnpeer: add unit test for direct payment to trampoline node 2022-09-20 11:28:51 +02:00
ThomasV
478046289a follow-up c6f940d092 2022-09-20 10:55:19 +02:00
ThomasV
2af59e32b2 lnworker: define use_trampoline() for code clarity 2022-09-19 17:43:13 +02:00
ThomasV
68bf714ae6 Trampoline: Remember failed routes (fixes #7967).
Upon receiving UNKNOWN_NEXT_PEER, TEMPORARY_NODE_FAILURE
or TEMPORARY_CHANNEL_FAILURE, remember the trampoline route
that was used, and try other routes before raising the
trampoline fee.

Before this commit, we used to raise the trampoline fee
upon receiving any error message, in order to ensure
termination of the payment loop.

Note that we will still retry failing routes after we have
raised the trampoline fee. This choice is questionable, it
is unclear if doing so significantly increases the probability
of success.

Tests: add a test for trampoline handling of UNKNOWN_NEXT_PEER
2022-09-19 16:42:46 +02:00
Jamie C. Driver
68f320041a jade: update Jade api to 0.1.37 2022-09-15 11:54:42 +01:00
Sander van Grieken
a488be61db qml: fix open channel 2022-09-14 16:07:03 +02:00
Sander van Grieken
6bbd18dc78 qml: fix flake errors 2022-09-09 19:58:48 +02:00
Sander van Grieken
27999a9583 qml: clean up, generalize plugin gui base, enumerate plugins in gui
(still quite crude impl, dynamic enable/disable plugin gui is misaligned
with backend)
2022-09-08 15:15:46 +02:00
Sander van Grieken
32a81d8ee7 qml: initial plugin support, with labelsync mostly implemented 2022-09-08 12:19:38 +02:00
ThomasV
082a50f2bd trampolines_by_id must return dict (follow-up previous commit) 2022-09-07 17:48:13 +02:00
ThomasV
99c4c75c9d hardcoded trampolines: do not mix testnet nodes and unitests.
(This was added in 3a7f5373ac. Not sure what the reason is, but
it triggers UNKNOWN_NEXT_PEER errors, that in turn affect routing
choices, e.g. fallback to single trampoline route)
2022-09-07 17:17:13 +02:00
ThomasV
92b21df843 Trampoline: if possible, do not add second trampoline for e2e payments.
This should fix #7967
2022-09-04 09:39:42 +02:00
ThomasV
2c57a8c394 lnworker: fix maybe_raise_trampoline_level.
That function was a no-op due to wrong indentation level
2022-09-03 18:32:05 +02:00