SomberNight
51b7fc04ef
walletdb: fix convert_version_58 for partial local txs
...
The transaction dict can also contain PSBTs (in addition to complete raw hex txs).
This is the case if the user has saved a partial (e.g. unsigned) tx as local into the history.
fixes https://github.com/spesmilo/electrum/issues/8913
2024-02-26 18:54:21 +00:00
ThomasV
777c2ffb23
create a trampoline onion when directly paying a trampoline node
2024-02-24 16:01:31 +01:00
SomberNight
85ea2dfc48
trezor: add_slip_19_ownership_proofs_to_tx to not skip complete inputs
...
closes https://github.com/spesmilo/electrum/issues/8910
2024-02-23 12:50:25 +00:00
Sander van Grieken
d0c37c6e33
qml: refactor help text in CpfpBumpFeeDialog, move most to help text popup
2024-02-23 11:11:12 +01:00
Sander van Grieken
b0227c7e03
qml: add HelpDialog and HelpButton for showing additional info
2024-02-23 10:28:11 +01:00
SomberNight
5e472117df
gui: more hardcoded bytes vs vbytes strings
...
follow-up a9a8ed2eb4
2024-02-22 17:40:35 +00:00
SomberNight
d01582d58c
fix tests (follow-up)
...
follow-up 197979063a
2024-02-22 12:26:25 +00:00
Sander van Grieken
70b9ea2639
prepare release 4.5.3
2024-02-22 12:15:01 +00:00
SomberNight
197979063a
lnworker: log gossip_db status in pay_invoice
2024-02-22 12:11:23 +00:00
SomberNight
b4712397cc
logging: (trivial) use repr() of seed_type
...
for more obvious empty string
related: https://github.com/spesmilo/electrum/issues/4326#issuecomment-1903747632
2024-02-22 11:45:18 +00:00
SomberNight
4be90eb15a
update block header checkpoints
2024-02-22 11:31:06 +00:00
ThomasV
7ff3a0feff
submarine swaps: fail htlc with INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS
...
If the sender uses trampoline, UNKNOWN_NEXT_PEER causes them to
retry, while INCORRECT_OR_UNKNOWN_PAYMENT_DETAILS breaks the loop.
2024-02-22 10:11:34 +01:00
ghost43
7da3613b12
Merge pull request #8906 from accumulator/old_2fa_passphrase
...
wizard: skip/hide passphrase option for 'old' and '2fa' seeds (see #4326 )
2024-02-21 17:03:43 +00:00
accumulator
d52e36e29e
Merge pull request #8846 from SomberNight/202401_gui_text_vendor_pyperclip
...
dependencies: vendor "pyperclip" pkg, used by text gui
2024-02-21 17:30:19 +01:00
Sander van Grieken
8ce1e6453b
wizard: skip/hide passphrase option for 'old' and '2fa' seeds (see #4326 )
2024-02-21 17:15:10 +01:00
SomberNight
8ab3dcce5d
keystore: API changes for from_seed/from_bip43_rootseed/bip39_to_seed
...
- force kwargs
- add type hints
2024-02-21 15:08:19 +00:00
SomberNight
96f28607f2
keystore: "old"-type seeds cannot have a passphrase
...
related: https://github.com/spesmilo/electrum/pull/8906
2024-02-21 14:30:13 +00:00
Sander van Grieken
da1727b2f7
trustedcoin: validate numeric format of OTP user entry ( fixes #8905 )
2024-02-21 13:33:46 +01:00
ThomasV
9799603779
Merge pull request #8888 from SomberNight/202402_jsonrpc_errors
...
cli/rpc: nicer error messages and error-passing
2024-02-21 13:20:28 +01:00
ThomasV
e2db5ca2ef
Merge pull request #8871 from SomberNight/202402_slip19_trezor
...
support SLIP-19 ownership proofs, for trezor-based Standard_Wallets
2024-02-21 13:06:28 +01:00
SomberNight
a749fd7789
qt tx_dialog: share btn: add option to add slip-19 ownership proofs
2024-02-21 11:58:52 +00:00
SomberNight
b7ed016f3c
qt tx_dialog: share btn: replace nested menus with checkboxes
...
Incidentally, the checkboxes are using the config, so their state is persisted.
2024-02-21 11:56:18 +00:00
SomberNight
0925f15280
wallet/keystore: add apis for "add_slip_19_ownership_proofs_to_tx"
...
- implement it specifically for the "singlesig trezor" case
- aimed to be generic enough that support for more complex scripts
and other keystores could be added later
2024-02-21 11:56:13 +00:00
Sander van Grieken
dc3ff908b8
followup prev
2024-02-21 12:03:37 +01:00
Sander van Grieken
d12ce00417
followup prev
2024-02-21 11:28:42 +01:00
Sander van Grieken
6d2dfc9759
android: limit size of text pasted from clipboard, to avoid TransactionTooLargeException
...
https://developer.android.com/reference/android/os/TransactionTooLargeException.html
2024-02-21 11:22:00 +01:00
Sander van Grieken
de9c0249c7
qml: icons, styling
2024-02-19 14:38:29 +01:00
accumulator
d968c6245c
Merge pull request #8897 from accumulator/move_tests_to_root
...
tests: move /electrum/tests to /tests
2024-02-19 10:51:42 +01:00
Sander van Grieken
2b95223e2b
qml: handle invoice removed from backend from qeinvoicelistmodel status update timer ( fixes #8898 )
2024-02-19 10:48:24 +01:00
Sander van Grieken
ef87fbd3e5
payment_identifier: return onchain invoice when GUI requests MAX amount ( fixes #8900 )
2024-02-19 10:35:55 +01:00
Sander van Grieken
73fee69f5c
tests: move /electrum/tests to /tests
2024-02-16 15:40:45 +01:00
ghost43
e11d7b37f2
Merge pull request #8865 from SomberNight/202402_server_bookmarks
...
network: implement basic "add server as bookmark" functionality
2024-02-16 12:06:18 +00:00
accumulator
1b75e3883e
Merge pull request #8845 from accumulator/feepicker
...
qml: consolidate fee slider ui in various places to a single FeePicker control
2024-02-16 13:01:34 +01:00
Sander van Grieken
016e500993
qml: FeePicker parameterize enable display of tx info and picker, use this for CPFP
...
to put picker in Total section
2024-02-16 12:56:18 +01:00
Sander van Grieken
c0b892720e
qml: consolidate fee slider ui in various places to a single FeePicker control
2024-02-16 10:09:56 +01:00
Sander van Grieken
57270e3bf3
tests: qt_util: disable timer in qt testcases
2024-02-15 16:27:01 +01:00
Sander van Grieken
d8654361af
peer_wire.csv: remove msgtype gossip_queries options, as the extract-formats.py tool
...
does not generate these anymore since aad959a297
2024-02-15 16:10:25 +01:00
ghost43
5582b753e5
Merge pull request #8881 from accumulator/qobject_test
...
add a simple test framework for testing QObjects and their signal/slot mechanism
2024-02-15 14:46:50 +00:00
SomberNight
79d88dcb5f
lnpeer: fix timing issue in reest_chan, for replaying unacked updates
...
We must not process incoming updates for a given channel until we ~finished reestablishing it.
Consider both parties have some unacked updates they want to replay during reestablish.
If Bob reacts to Alice's replayed stuff before he himself replays his stuff, madness ensues.
I think this should fix the remaining part of https://github.com/spesmilo/electrum/pull/8778
(timing issues when running the unit tests with py3.12)
2024-02-15 14:12:03 +00:00
Sander van Grieken
a626d1bf42
tests: add test for QEAmount(from_invoice=..) and (m)satsStr properties
2024-02-15 13:36:10 +01:00
SomberNight
45e08ada61
lnpeer: make process_message async
...
This allows making any message handler async in lnpeer.
Note: `process_message` is only called from `_message_loop`.
There are(would be) basically three types of message handlers:
1. "traditional blocking msg handlers". non-async ones. When these handlers are called, `process_message` naturally blocks until the handler returns, which means `_message_loop` also blocks until the message is fully processed before starting the next iteration.
2. "async blocking msg handlers". async ones where we want the previous property, i.e. we want the `_message_loop` to wait until the handler finishes. We await the handler inside `process_message`, and `_message_loop` awaits `process_message`.
3. "async non-blocking msg handlers". async message handlers that can be spawned e.g. onto `Peer.taskgroup` and the loop is free to start processing subsequent messages. e.g. msg handlers that start a negotiation, such as `on_shutdown` and `on_open_channel`.
Any non-async message handler (`def on_...`) automatically goes into category 1.
An async message handler, by default, goes into category 2, "blocking";
to go into category 3 ("non-blocking"), we use the `runs_in_taskgroup` function decorator.
2024-02-15 11:20:49 +00:00
Sander van Grieken
643fbecc15
wizard: fix co-signing hardware wallets data incorrectly referenced
2024-02-14 12:42:15 +01:00
SomberNight
6172898a03
trezor: minor things for better model "safe 3" support
2024-02-14 09:48:13 +00:00
SomberNight
fffbc178cd
qt wizard: hww dialogs: log some exceptions more aggressively
...
sort of related: https://github.com/spesmilo/electrum/issues/8892
2024-02-14 09:05:21 +00:00
SomberNight
130baf13c8
trezor: show descriptive error if trying to init device without fw
...
closes https://github.com/spesmilo/electrum/issues/8892
2024-02-14 08:52:23 +00:00
SomberNight
46ce5d0f3d
wizard: (trivial) follow-up prev
2024-02-13 14:52:52 +00:00
SomberNight
638fdf114e
wizard: don't log sensitive values: replace blacklist with whitelist
...
- blacklist was missing yet another item "multisig_master_pubkey"
- let's just do a whitelist. a blacklist is too risky for my liking here.
2024-02-13 13:51:53 +00:00
SomberNight
7cf22d4b9f
coldcard: wallet info dlg: fix missing "Export for Coldcard" btn
...
regression from 711a325085
```
47.97 | E | plugin | Plugin error. plugin: coldcard, hook: wallet_info_buttons
Traceback (most recent call last):
File "...\electrum\electrum\plugin.py", line 261, in run_hook
r = f(*args)
File "...\electrum\electrum\plugins\hw_wallet\plugin.py", line 344, in wrapper
return func(self, *args, **kwargs)
File "...\electrum\electrum\plugins\coldcard\qt.py", line 51, in wallet_info_buttons
wallet = main_window.wallet
AttributeError: 'WalletInfoDialog' object has no attribute 'wallet'
```
2024-02-13 13:35:19 +00:00
Sander van Grieken
66af6e6239
send_tab: set tab changes focus for multiline edit
...
ref #8889
2024-02-13 13:00:11 +01:00
Sander van Grieken
b3bce0299f
send_tab: fix tab order #8889
2024-02-13 12:49:08 +01:00