ThomasV
0ef7235147
swaps: ignore exceptions in publish_offers
...
nostr may temporarily raise an exception; we don't want to kill the taskgroup
2025-01-16 09:51:26 +01:00
ThomasV
4672681c0c
Merge pull request #9435 from f321x/debugging_gossip_toggle
...
Add fallback list of signet nodes and use it for ln peer discovery
2025-01-16 08:44:50 +01:00
f321x
b1e1a39997
add fallback list of signet nodes
2025-01-15 16:40:30 +01:00
ThomasV
d6630640ce
Merge pull request #9432 from f321x/increase_pay_to_node_attempts
...
Increase attempts when forwarding trampoline payment
2025-01-15 13:48:34 +01:00
ThomasV
2ac17d0633
Merge pull request #9433 from f321x/change_onion_message
...
Change OnionFailureCode returned when failing trampoline forwarding
2025-01-15 13:46:41 +01:00
f321x
c921100de3
return TRAMPOLINE_FEE_INSUFFICIENT instead of UNKNOWN_NEXT_PEER on payment failure in forwarding
2025-01-15 13:18:11 +01:00
ThomasV
dffdebf778
Merge pull request #9431 from f321x/fix_trampoline_onion_index
...
Fix trampoline onion construction by selecting correct last hop
2025-01-15 12:30:16 +01:00
f321x
8f94261fc3
increase attempts when forwarding trampoline payment
2025-01-15 11:48:51 +01:00
ThomasV
b0886d2a4d
Merge pull request #9427 from f321x/limit_pay_to_node_attempts
...
Limit payment attempts if client uses trampoline
2025-01-15 11:36:58 +01:00
f321x
39b56fa922
change hops_data index in trampoline onion construction
2025-01-15 11:36:09 +01:00
f321x
48c53053d6
don't inline logic and add comment
2025-01-15 10:44:01 +01:00
ThomasV
4f9f4351b8
Merge pull request #9428 from f321x/remove_lnd_signet_node
...
Remove wakiyamap lnd node from signet trampoline nodes
2025-01-14 12:40:08 +01:00
f321x
3034df61c7
remove wakiyamap lnd node from signet nodes
2025-01-14 11:21:33 +01:00
f321x
4c93c9a26c
limit payment attempts if client uses trampoline
...
revert line break
limit payment attempts if client uses trampoline
2025-01-14 11:18:21 +01:00
SomberNight
8f5b395ddc
lnworker.open_channel: move max funding_sat check deeper in call stack
...
open_channel_with_peer was missing this check
2025-01-13 14:53:16 +00:00
ghost43
68a2e4e399
Merge pull request #9418 from SomberNight/202501_bump_min_python
...
bump min python to 3.10
2025-01-13 12:01:57 +00:00
ThomasV
ef08fb37a6
json_db: add StoredList.clear() method
2025-01-12 10:32:00 +01:00
ThomasV
3ffcac87ac
maybe_forward_htlc: 'already_forwarded' must be passed to the recursive call.
...
if we are a trampoline and chain tip is stale, we must not fail the htlc.
2025-01-11 09:44:03 +01:00
SomberNight
450768ee6c
sdist build: bump base image to debian 12 to have py3.10+
...
- debian 11 only has python 3.9, deb12 has py3.11
- pip install pip is no longer needed, atm apt has new enough pip
- and on deb12, started getting "error: externally-managed-environment"
- faketime does not seem to work properly on debian 12
(getting reproducibility issues for the tarball)
- so instead we untar, fix the timestamps manually, and re-tar
2025-01-10 18:58:02 +00:00
SomberNight
be2cd02e54
some clean-ups now that we require python 3.10
2025-01-10 18:52:53 +00:00
SomberNight
fb5a1af666
bump min required Python version to 3.10
2025-01-10 18:52:49 +00:00
SomberNight
3aac8ff0b8
sdist build: simplify sourceonly handling
2025-01-10 18:51:04 +00:00
ThomasV
0efe7e9bc8
swaps: make the zeroconf option non-persisted
...
Since we allow swaps with random servers, we should not persist that setting.
2025-01-10 16:19:01 +01:00
SomberNight
c43a691eee
qt gui: qrreader: lower strong_count in qtmultimedia based reader
...
The qtmultimedia-based qrreader has the concept of "strong_count":
before the scanner returns a decoded qr code result, it waits until
it has seen at least "strong_count" (e.g. 10) frames in which the qr code was seen and successfully decoded.
I think the idea might have been to reduce false positives, mis-decoding qr codes from bad frames.
However in practice it makes scanning even moderately sized qr codes really difficult for the user:
it takes several seconds (at least on my laptop cam) to obtain enough "clear" frames that count into the strong_count.
So I am lowering the strong_count to 2, down from CAMERA_FPS/3,
which makes it easier to scan, and I still haven't seen false positives even with this value.
2025-01-10 12:59:56 +00:00
SomberNight
838490fea4
adb.add_transaction: try to ser-deser tx early
...
Previously calling add_transaction with a malformed Transaction obj could
result in an exception late in the flow, after the walletdb was already side-effected.
Rollback of such side-effects is not implemented :/
but this small patch should at least cover and prevent some common cases.
```
File "/opt/electrum/electrum/address_synchronizer.py", line 358, in add_transaction
self.db.add_transaction(tx_hash, tx)
File "/opt/electrum/electrum/json_db.py", line 42, in wrapper
return func(self, *args, **kwargs)
File "/opt/electrum/electrum/wallet_db.py", line 1434, in add_transaction
tx = tx_from_any(str(tx))
File "/opt/electrum/electrum/transaction.py", line 1339, in tx_from_any
raise SerializationError(f"Failed to recognise tx encoding, or to parse transaction. "
```
2025-01-10 12:24:26 +00:00
SomberNight
ce843fd454
Merge branch 'pr/9417': fix: add extra check to script_GetOp
...
manual merge of squashed https://github.com/spesmilo/electrum/pull/9417
2025-01-10 12:01:33 +00:00
SomberNight
043be2439e
follow-up prev: add testcase and minor formatting
...
(minor reshuffling of check so that it matches following line
and is more clear it is a bounds check)
2025-01-10 11:59:15 +00:00
thecockatiel
ddb67d9bca
fix: transaction.py: add extra check to script_GetOp
2025-01-10 11:59:11 +00:00
ThomasV
fefd123275
wallet: always include wanted_height (for future tx)
2025-01-10 10:41:54 +01:00
ghost43
2547ac4e30
Merge pull request #9412 from f321x/plugin_hash
...
Add filehash of external plugins to PluginDialog
2025-01-09 17:54:24 +00:00
f321x
ea10c7cfc1
add filehash of external plugins to PluginDialog
...
remove hashlib import
add filehash of external plugins to PluginDialog
add emptyline
add filehash of external plugins to PluginDialog
2025-01-09 18:15:12 +01:00
SomberNight
30028520e0
qml/qeinvoice.py: show error details when scanning e.g. lnurl-withdraw
...
saying the lnurl type is not supported is more informative than "could not resolve"
2025-01-09 16:10:46 +00:00
SomberNight
01c913ddc8
build: update pinned deps: add nostr related stuff
...
follow-up https://github.com/spesmilo/electrum/pull/9260
7fdf1e0669
2025-01-09 14:57:33 +00:00
SomberNight
264a5fe421
qt gui: add command for console use: "scan_qr()"
...
try
```
>>> scan_qr().data
```
to read a qr code from the screen
2025-01-09 12:18:10 +00:00
ThomasV
c4443b841f
Merge pull request #9410 from f321x/fix_user_cancelled_swap
...
Catch UserCancelled exception in main window on user swap cancellation
2025-01-09 11:15:08 +01:00
f321x
c4fe8433c0
catch UserCancelled exception in main window
2025-01-09 11:12:30 +01:00
ThomasV
d2fa65b9aa
fix qt wizard (follow-up 693210edbe)
2025-01-06 11:46:20 +01:00
ThomasV
ebff5b545d
lnpeer: replace assert active_forwarding with if. force both incoming and outgoing MPP in test_mpp_consolidation
2025-01-06 11:09:45 +01:00
ThomasV
33d0e6dbec
Attach labels to outpoints instead of txids.
...
Move labels logic from lnworker to wallet.
Due to batching, a single transaction may have several labels attached to it.
2025-01-03 10:54:11 +01:00
ThomasV
4d9c33c33f
Qt: disable swapserver dialog if we are using http
2025-01-03 10:39:24 +01:00
ThomasV
29a8c41025
move watchtower to a plugin.
...
remove watchtower dialog in qt
2024-12-20 15:34:26 +01:00
ThomasV
7113cec4c7
minor fix, follow-up ee42e09387
2024-12-20 15:33:47 +01:00
ThomasV
ac1c9f088d
Anchor channels: require deterministic wallet with software keystore.
...
This ends LN support in hardware and watching-only wallets.
2024-12-20 10:17:51 +01:00
ThomasV
ee42e09387
anchor channels: unlock wallet on startup if the wallet has channels
2024-12-20 10:10:07 +01:00
ThomasV
693210edbe
Qt: stop support for password-protected wallets without
...
storage encryption.
The password will be needed on startup with anchor channels.
Note that it remains possible to use non-encrypted storage
and keystore encryption with the command line.
2024-12-20 09:24:45 +01:00
ThomasV
692a777da8
coins tab: if we do not know whether we can swap a utxo, assume we can
2024-12-17 17:43:43 +01:00
ThomasV
77ec49ac67
make_unsigned_transaction: ensure coins and inputs do not overlap
...
(follow-up 8bec974a39 )
2024-12-17 10:54:21 +01:00
ThomasV
bae2bbf35d
lnsweep: sweep anchor outputs
2024-12-16 12:13:39 +01:00
ThomasV
67470b92b7
lnchannel: fix extract_preimage for MPP.
...
- enforce MPP in the corresponding regtest.
- fix get_invoice_status returning inflight if it was settled onchain
2024-12-15 10:46:18 +01:00
ThomasV
62af1ee887
fixes for txin.make_witness:
...
- add witness_sizehint
- fix make_unsigned_transaction
- do not remove witness_script in tx.finalize()
2024-12-13 14:44:35 +01:00