1
0
Commit Graph

18488 Commits

Author SHA1 Message Date
f321x
8870838834 raise instead of overwriting the config file on syntax error 2025-05-15 17:21:16 +02:00
ThomasV
660ffa2b8f fix test_txbatcher (follow-up 6e3f173a71) 2025-05-13 09:09:35 +02:00
ThomasV
6e3f173a71 SweepInfo: define csv_delay as property 2025-05-13 08:50:33 +02:00
ThomasV
0607a406ce Qt: add closing warning if we have an unconfirmed local commitment tx with htlcs
add htlc direction (offered, received) to the htlc sweep_info name
regtest: add test_reedeem_received_htlcs
2025-05-12 15:48:20 +02:00
ThomasV
7d6c21f233 txbatcher: fix wanted_height shown in GUI
if an input has both CSV and CLTV, we must display the highest value
2025-05-12 13:46:27 +02:00
ThomasV
8c31ed648a simplify default label of tx 2025-05-12 13:46:27 +02:00
ThomasV
a1db855c63 Merge pull request #9819 from f321x/fix_tui_crash
fix: text gui exceptions and and type errors
2025-05-12 13:18:13 +02:00
ThomasV
148518a1f2 txbatcher: sanity check csv_delay
follow-up 8319a855a9
2025-05-12 13:04:30 +02:00
ThomasV
8319a855a9 fix csv_delay for htlcs in sweep_our_ctx 2025-05-12 12:38:07 +02:00
f321x
5bfddad67c use daemon.load_wallet instead of constructing manually 2025-05-12 10:53:12 +02:00
f321x
6e21dac387 fix: tui contacts edit label and delete button
the edit label button did crash the application because get_string
returned bytes instead of a string. The delete button was not
implemented but shown in the tui.
2025-05-12 10:51:19 +02:00
ThomasV
e54d57bf73 Qt: improve closing warnings for submarine swaps 2025-05-12 10:21:46 +02:00
f321x
bfe895fc3e remove unused imports, fix type hint 2025-05-12 10:17:30 +02:00
f321x
b0fd126e1b fix: exception if payment amount is not set
if payment amount is not set and the user tried to pay, the application
would crash. This shows a message instead. Also uses show_message
instead of show_error, as show_error doesn't exist.
2025-05-12 10:08:52 +02:00
f321x
02232b227e fix IndexError if self.channel_ids is empty 2025-05-12 10:00:38 +02:00
accumulator
05e395018c Merge pull request #9782 from f321x/fix_qr_input_from_file
qt: add qr reading from file to ScanQRTextEdit and SendTab
2025-05-09 11:50:04 +02:00
SomberNight
351cc6abd9 Revert "interface: add padding and some noise to protocol messages"
Unforeseen issues. Needs more work..

This reverts commit 097eabed1f.
2025-05-08 18:34:07 +00:00
ThomasV
02914e444a txbatcher: add_info_from_wallet in _new_base_tx
37.23 | E | txbatcher.TxBatch | TxBatch error: AttributeError("'TxOutput' object has no attribute 'is_change'")
Traceback (most recent call last):
  File "/opt/electrum/electrum/txbatcher.py", line 248, in run
    await self.run_iteration()
  File "/opt/electrum/electrum/txbatcher.py", line 379, in run_iteration
    base_tx = self.find_base_tx()
  File "/opt/electrum/electrum/txbatcher.py", line 369, in find_base_tx
    self._new_base_tx(tx)
  File "/opt/electrum/electrum/json_db.py", line 48, in wrapper
    return func(self, *args, **kwargs)
  File "/opt/electrum/electrum/txbatcher.py", line 518, in _new_base_tx
    if tx.has_change():
  File "/opt/electrum/electrum/transaction.py", line 1276, in has_change
    return len(self.get_change_outputs()) > 0
  File "/opt/electrum/electrum/transaction.py", line 1273, in get_change_outputs
    return  [o for o in self._outputs if o.is_change]
  File "/opt/electrum/electrum/transaction.py", line 1273, in <listcomp>
    return  [o for o in self._outputs if o.is_change]
AttributeError: 'TxOutput' object has no attribute 'is_change'
2025-05-08 19:34:51 +02:00
SomberNight
097eabed1f interface: add padding and some noise to protocol messages
basic countermeasures against traffic analysis
2025-05-08 14:35:44 +00:00
SomberNight
2600a3bc74 requirements: bump max aiorpcx
and bump pinned aiorpcx and electrum-aionostr
2025-05-08 14:31:11 +00:00
SomberNight
c75b10fe69 requirements: add upper bounds for electrum_ecc and electrum_aionostr 2025-05-08 13:33:16 +00:00
ThomasV
db271d9b7d Fix get_pending_swaps: use both funding and spending tx heights
Also, do not show closing warnings if we are offline.
2025-05-08 14:58:13 +02:00
ThomasV
2b68f65aac fix typo 2025-05-08 09:34:48 +02:00
ThomasV
061460611c Merge pull request #9795 from f321x/followup_tos_qt
followup: qt terms of use scrollbar and regtest mode
2025-05-07 19:33:05 +02:00
f321x
39901c8872 fix: enable Agree button if scrollbar is not visible 2025-05-07 17:33:19 +02:00
ThomasV
9a61640243 move question text 2025-05-07 17:23:33 +02:00
f321x
c54f75b31f don't show ToU in regtest mode 2025-05-07 17:19:30 +02:00
ThomasV
45c7180536 Merge pull request #9715 from f321x/warning_on_close
gui: Add option to show warnings on wallet close, add warning for swaps
2025-05-07 17:17:59 +02:00
f321x
913f5ec6d8 add option to show warnings on wallet close, add warning for ongoing submarine swap 2025-05-07 17:11:08 +02:00
SomberNight
151b64da84 wizard: "terms of use": add version number
follow-up https://github.com/spesmilo/electrum/pull/9794
2025-05-07 13:59:00 +00:00
ThomasV
5300088ef8 Merge pull request #9794 from f321x/terms_of_use_separate
qt: show terms of use as first window on setup
2025-05-07 14:03:34 +02:00
f321x
802c316edb qt: show terms of use as first window on setup 2025-05-07 14:02:40 +02:00
ThomasV
0d1b6aa432 nwc plugin: improve dialog layout 2025-05-07 12:10:20 +02:00
ThomasV
cec2089917 revealer plugin: do not add icon to status bar
timelock_recovery: move help button to the top
2025-05-07 09:33:08 +02:00
SomberNight
0e6f8282e2 Merge branch 'hook_transaction_dialog_address_menu': hww show addr opt
hardware wallets: add "show address on device" option also to tx dialog context menu
2025-05-06 18:32:59 +00:00
SomberNight
46924381ed follow-up prev: fix for multisig 2025-05-06 18:22:11 +00:00
ThomasV
b86be552e7 hardware wallets: show address on device also from tx dialog 2025-05-06 18:22:07 +00:00
SomberNight
4640384b91 Merge branch 202505_choiceitem': refactor qt.util.ChoiceWidget
This introduces util.ChoiceItem, which makes query_choice()
and ChoiceWidget better type-able and hence statically analysable.
2025-05-06 18:16:12 +00:00
SomberNight
42d810bc7d refactor qt.util.ChoiceWidget: rename arg to default_key 2025-05-06 18:12:42 +00:00
SomberNight
ba3783f998 refactor qt.util.ChoiceWidget: introduce ChoiceItem 2025-05-06 18:12:37 +00:00
SomberNight
ef49bb2109 hw plugins: fix DeviceMgr.select_device
regression from ChoiceWidget refactor

follow-up f7749d62aa
2025-05-06 18:11:10 +00:00
f321x
63c224cb53 add qr reading from file to ScanQRTextEdit and SendTab
There was no ability to read qr codes contained in image files. This
could lead to confusion in some contexts, as `on_file_input()` of
ScanQRTextEdit will read the whole content of the file (instead of
looking for qr codes). The revealer plugin for example generates png
files containing qr codes and uses the `ScanQRTextEdit` to get user
input, for the user it would seem logical to click on 'Read from file'
to load the generated file, however this will result in the wrong data
being loaded. Having the option to explicitly load a QR from file makes
this clear. Also it seems useful, especially considering reading QR from
screenshots doesn't work on wayland.
2025-05-06 13:38:50 +02:00
ThomasV
dfb7a8ab5a Merge pull request #9791 from f321x/structured_plugin_storage
plugins: structure plugin storage in wallet db and prune uninstalled plugins data
2025-05-06 13:18:29 +02:00
f321x
e80551192b plugins: structure plugin storage in wallet
store all plugin data by plugin name in a root dictionary `plugin_data`
inside the wallet db so that plugin data can get deleted again.
Prunes the data of plugins from the wallet db on wallet stop if the
plugin is not installed anymore.
2025-05-06 13:16:49 +02:00
ThomasV
a4d88e307b Merge pull request #9751 from spesmilo/txbatcher_without_password_in_memory
Txbatcher without password in memory
2025-05-06 13:06:03 +02:00
ThomasV
7bcc7fb0c4 txbatcher: do not require password in memory
- if password is needed, await future and request it from GUI
 - run asyncio task for each TxBatch, so that batches can
   request the password concurrently
2025-05-06 13:04:19 +02:00
ThomasV
07ba0e6329 Qt: do not require password in memory
- do not require full encryption
 - do not store password on startup
 - add lock/unlock functions to qt GUI
2025-05-06 13:04:18 +02:00
ThomasV
1c3268c2ff submarine_swaps: make callback async (follow-up previous commit) 2025-05-06 13:03:38 +02:00
ThomasV
5be646dfd2 call lnwatcher callbacks in asyncio thread
This partially reverts fbebe7de1a
lnwatcher.trigger_callbacks is called manually in commands.py
2025-05-06 12:37:00 +02:00
ThomasV
855aff7c44 lnwatcher: cleanup unused code 2025-05-06 12:37:00 +02:00