SomberNight
1380ed4ba7
lnpeer: rate-limit ordered_message_queues
2025-08-19 18:28:13 +00:00
SomberNight
b8d989e13b
lnpeer: rate-limit reply_channel_range
2025-08-19 18:28:09 +00:00
SomberNight
65d04dfbb7
lnpeer: slow down peers sending too much gossip
2025-08-19 18:28:01 +00:00
ghost43
da9b921f57
Merge pull request #10151 from spesmilo/dm_replies_no_defaultdict
...
submarine_swaps: use dict instead of defaultdict for dm_replies
2025-08-19 16:04:28 +00:00
ThomasV
eae6ddd773
submarine_swaps: use dict instead of defaultdict for dm_replies
2025-08-19 17:54:25 +02:00
ghost43
fc3aa2e8ee
Merge pull request #10150 from SomberNight/202508_swaps_parsing
...
swaps: more robust parsing
2025-08-19 14:35:57 +00:00
SomberNight
81be0554a3
swaps: more robust parsing
2025-08-19 13:42:21 +00:00
ghost43
5b8569e814
Merge pull request #10149 from f321x/improve_swaps_send_dm
...
swaps: make NostrTransport.send_direct_message() more robust
2025-08-19 13:35:47 +00:00
f321x
37614e9092
swaps: handle timeouts in send_direct_message
...
Adds logic to retry sending a direct message in
`NostrTransport.send_direct_message()` on `TimeoutError`.
Handles `TimeoutError` exception more gracefully by catching it and
returning `None`.
2025-08-19 15:29:58 +02:00
Sander van Grieken
e90534beaa
fee_policy: use FEERATE_PRECISION for .. precision
2025-08-19 14:16:32 +02:00
ThomasV
6ffaa55813
lnwatcher: early return in sweep_commitment_transaction if chan.need_to_subscribe returns False
2025-08-19 14:06:22 +02:00
SomberNight
74d2c6386a
wallet: sweep_preparations to raise UserFacingException on p2sh/etc
...
closes https://github.com/spesmilo/electrum/issues/10145
2025-08-18 17:02:34 +00:00
ghost43
e7c8377808
Merge pull request #10128 from f321x/fix_4111
...
fix: psbt_nostr: don't save tx without txid
2025-08-18 16:30:16 +00:00
ghost43
f68bea0b59
Merge pull request #10147 from SomberNight/202508_typehint_callables
...
type-hint some Callables
2025-08-18 16:12:36 +00:00
SomberNight
f8926b4957
type-hint some Callables
...
could not figure out how to type-hint coinchooser.sufficient_funds with typing.Protocol,
at least PyCharm complained on all my attempts
2025-08-18 15:38:25 +00:00
ghost43
0c6ff6ab62
Merge pull request #10122 from accumulator/qml_invoice_validation_error
...
qml: handle invoice validation errors on save
2025-08-18 14:32:57 +00:00
ghost43
8feaa4bb66
Merge pull request #10141 from SomberNight/202508_kswizard_multisig
...
wizard: enable_keystore: fix for multisig
2025-08-18 14:27:45 +00:00
ghost43
784a517a4b
Merge pull request #10146 from f321x/fix_10144
...
qt: invoice_list: only show invoice if it is not None
2025-08-18 14:26:18 +00:00
f321x
9fcf5f1581
qt: invoice_list: only show invoice if it is not None
...
Check if the invoice is not None when the user tries to open the
invoice details to prevent an Exception, update the list instead if the
invoice hasn't been found.
It can happen that the user deletes the invoice through the CLI
and then tries to open the details in the gui, which hasn't been
updated, at the same time.
Fixes #10144
2025-08-18 11:02:22 +02:00
f321x
a68bfab596
swaps: improve preimage extraction logic
2025-08-18 10:03:24 +02:00
ghost43
4c6d8166a4
Merge pull request #10143 from SomberNight/202508_fix_old_keystore_check_password
...
keystore: Old_KeyStore: fix check_password(None) if ks has password
2025-08-17 00:22:30 +00:00
SomberNight
2318cf7369
keystore: Old_KeyStore: fix check_password(None) if ks has password
...
check_password(None) should raise InvalidPassword when called on a keystore that has a password.
regression from f86bdc86a2
fixes https://github.com/spesmilo/electrum/issues/10142
2025-08-16 18:08:10 +00:00
SomberNight
dc999aa948
wizard: enable_keystore: fix for multisig
...
regression from 66c0fec1ea
2025-08-15 20:52:49 +00:00
SomberNight
14494c13dc
qt wizard: start: merge "start_viewstate" and "initial_data"
2025-08-15 20:46:24 +00:00
SomberNight
43987c5ca0
wizard: make start() kwarg-only
...
I want to see where initial_data arg is actually set from.
Looks like hardly anywhere(?)
It is really hard to see because the wizard is crazy-dynamic, there's polymorphism and mixins everywhere.
2025-08-15 20:35:29 +00:00
SomberNight
392400295e
wallet.get_tx_fee_warning: fix rounding error for sub-1 sat/vbyte fees
...
```
>>> Decimal("0.1") < 100/1000
True
```
ref https://bitcointalk.org/index.php?topic=5554840.msg65694417#msg65694417
2025-08-15 18:26:19 +00:00
ghost43
8a8ab26d44
Merge pull request #10140 from SomberNight/202508_test_keystore_wizard
...
wallet: enable/disable_keystore: some more fixes and tests
2025-08-15 18:16:38 +00:00
SomberNight
5997494c46
tests: wizard: add test "adding unrelated seed to xpub-only ks raises"
2025-08-15 17:39:57 +00:00
SomberNight
cd63be233b
wallet: disable_keystore() not to destroy get_key_origin_info()
2025-08-15 17:29:55 +00:00
SomberNight
f025a75356
tests: wizard: use real bip39 seeds
2025-08-15 17:19:22 +00:00
SomberNight
0ceb54b61f
wallet: enable/disable_keystore: rm functionality from 2fa wallets
...
was already not working, but does not even really make sense without larger changes
2025-08-15 16:18:13 +00:00
ghost43
1ae3d0a0bf
Merge pull request #10131 from SomberNight/202508_commands_onchain_history
...
commands: add back from_height/to_height params to onchain_history
2025-08-15 13:36:25 +00:00
Sander van Grieken
bd6dfc53a2
qml: avoid hue wrap-around for fees < 1sat/vbyte, limit precision.
2025-08-15 11:35:33 +02:00
Sander van Grieken
b4ffd3eeeb
qt: contacts: stretch address, not name
2025-08-15 10:44:31 +02:00
ghost43
5a9f54fba0
Merge pull request #10133 from f321x/qml_timestamp_precision
...
qml: reduce tx history timestamp precision
2025-08-14 17:26:08 +00:00
SomberNight
0fea61ac3a
tests: wizard: KeystoreWizard: also test disable_keystore()
2025-08-14 17:06:52 +00:00
SomberNight
6554ec674e
tests: wizard: KeystoreWizard: add test case for old seed
2025-08-14 16:44:57 +00:00
SomberNight
e3d1c6aefd
wallet: enable/disable_keystore: trivial clean-up
2025-08-14 16:16:31 +00:00
ghost43
5bfd5a858f
Merge pull request #10123 from accumulator/keystorewizard_scriptandderivation
...
wizard: add script and derivation to keystorewizard flow. fixes #10063
2025-08-14 16:10:47 +00:00
SomberNight
34f0450798
tests: commands: onchain_history: add test for "show_fiat" param
2025-08-14 15:26:59 +00:00
ghost43
094ca92518
Merge pull request #10134 from f321x/mutinynet
...
contants: add support for mutinynet signet
2025-08-14 15:13:57 +00:00
ghost43
33dd45a2d9
Merge pull request #10096 from SomberNight/202508_lower_minrelayfee
...
change minrelayfee clamps from `[1, 50]` to `[0.1, 50]` sat/vbyte
2025-08-14 14:53:28 +00:00
f321x
348ca667ca
contants: add support for mutinynet signet
...
Adds the mutinynet signet (https://github.com/MutinyWallet/mutiny-net/ )
to the supported networks so it's possible to
use it with Electrum. Mutinynet is similar to signet, except for a
shorter block interval (30 sec), a nice faucet
(faucet.mutinynet.com) and some extra features in its core fork.
It also has some lightning network nodes, see
the mempool instance on mutinynet.com.
2025-08-14 15:59:11 +02:00
Sander van Grieken
2ca9e1b686
plugin: fix translatable string, and organize whitespace/imports/type hints while weŕe at it.
2025-08-14 11:37:16 +02:00
f321x
292ade8953
tests: unittest QETransactionListModel date format
...
adds unittests for the date formatting and categorization in
QETransactionListModel
2025-08-14 10:10:42 +02:00
f321x
0c7d8646d4
qml: stop showing seconds in tx history timestamps
...
Reduces the precision of the date field in the qml transaction history
list to minutes. Seconds don't seem very useful in practice and add
clutter to the UI. This adapts the behaviour to the Qt GUI.
2025-08-14 09:57:48 +02:00
SomberNight
d7c76b991b
commands: add back from_height/to_height params to onchain_history
...
closes https://github.com/spesmilo/electrum/issues/10119
also:
- wallet.get_onchain_history was broken with from_height/to_height args
- "show_fees" param is and was non-existent. fees are always added to output
- MyEncoder(json.JSONEncoder) changed a bit:
- I am pretty sure cutting the last 3 chars was intended to cut off the seconds
- however that was making incorrect assumptions about what datetime.isoformat() returns
- which depends on whether microsecond precision is available or whether an explicit timezone is set
- this now makes it clear that we want minutes-resolution, but still leaves the timezone-ambiguity
2025-08-13 15:09:04 +00:00
Sander van Grieken
e1d5d803e9
wizard: fix missing 'wallet_password' and 'wallet_password_hardware' views on abstract KeystoreWizard
...
(these were implicitly defined by the Qt subclass) and test wallet keystore enable.
2025-08-13 16:25:01 +02:00
Sander van Grieken
0a2cd5fdad
hww: fix crash when disabling keystore for hww (was unimplemented for Hardware_Keystore)
...
also preserve derivation path and root fingerprint for watch-only keystore.
2025-08-13 15:57:07 +02:00
Sander van Grieken
0c5403b91e
wizard: add initial tests for KeystoreWizard for electrum and bip39 seeds, hww
2025-08-13 14:40:18 +02:00