Commit Graph

7878 Commits

Author SHA1 Message Date
Sander van Grieken
7c8dfdecbb lnmsg: additional de/serialization support for onion messages
- add support for `subtype`/`subtypedata` type declarations
- add new primitive type `sciddir_or_pubkey`
- better assert message for cardinality errors
2025-02-19 14:27:47 +01:00
Sander van Grieken
00bba471ff onion_wire: use unqualified byte,... type for yet undefined nested tlv types 2025-02-19 14:27:45 +01:00
Sander van Grieken
dca6adcbf6 lnwire: add msg and tlv types for onion_message, including unknown_tags for test vectors 2025-02-19 14:27:36 +01:00
ThomasV
392c219913 simplify history-related commands:
- reduce number of methods
 - use nametuples instead of dicts
 - only two types: OnchainHistoryItem and LightningHistoryItem
 - channel open/closes are groups
 - move capital gains into separate RPC
2025-02-19 11:40:21 +01:00
SomberNight
ae8bfdcb51 qt: main_window: (trivial) fix typo on statusbar
a whitespace was missing
2025-02-18 15:36:27 +00:00
ghost43
3f9340270c Merge pull request #9568 from f321x/fix_node_ann_features
Ignore odd bits if even bit is set too in list_enabled_bits
2025-02-18 14:47:34 +00:00
f321x
9394b18b4e add method list_enabled_ln_feature_bits 2025-02-18 15:21:24 +01:00
Sander van Grieken
c740057bc7 lnworker: imports, whitespace 2025-02-17 14:41:32 +01:00
ThomasV
18baf003d4 submarine swaps: backport changes from batch_payment_manager
- add 'is_funded' method to SwapData
 - sign claim transactions using the 'make_witness' method
2025-02-15 10:29:19 +01:00
SomberNight
2d8c26f211 qt swaps: fix _spend_max_reverse_swap: round down msats
Clicking "max" btn for a reverse swap was setting the text field to a too high value.

```
>>> wallet.lnworker.num_sats_can_send()
Decimal('1242647.947')
>>> util.format_satoshis_plain(Decimal('1242647.947'))
'0.01242648'
```
2025-02-14 14:33:51 +00:00
SomberNight
6749468866 swaps: add base class for transports. move "get_recent_offers" logic
the "get_recent_offers" logic is now shared between the GUIs
2025-02-14 14:10:24 +00:00
ThomasV
6ddd0b95ca workaround grouping bug with dummy values 2025-02-14 13:46:38 +01:00
ThomasV
5600e79edd fix swaps-over-nostr qml:
- post-rebase fixes
 - await sm.is_initalized.wait() instead of waiting 1 second
 - fix max_amount computation if channel recv capacity is higher
   than the max: the value returned by get_send_amount was zero
 - fix indentation
2025-02-14 10:57:01 +01:00
Sander van Grieken
993a575b7f submarine_swaps: implement swaps-over-nostr for qml 2025-02-14 09:54:09 +01:00
ThomasV
22995b4a34 follow-up 912e1a3a5b: password may be None if wallet is not file encrypted 2025-02-13 11:52:46 +01:00
ThomasV
c3faadf23f If a transaction uses make_witness, also set script_sig.
Other methods (remove_signatures) may have set script_sig to None
during the lifetime of the tx object.
2025-02-13 11:01:03 +01:00
ThomasV
b097150806 Merge pull request #9551 from f321x/swap_nostr_event_type
Change nostr swap event type, add PoW, rebroadcast events
2025-02-12 10:31:54 +01:00
f321x
a47421490d increase nonce size to 32 byte and make it hex in event 2025-02-12 10:09:11 +01:00
f321x
947094c1b0 add pow, more default relays, new event type 2025-02-11 18:16:15 +01:00
SomberNight
72c664856d qt gui: qrcodewidget: default size smaller for large codes
and use default sizing when displaying PSBTs.

Prior to this, when displaying a large PSBT (that should still fit within a QR),
the default window size was too small, and the user had to manually resize the window.
2025-02-10 18:32:09 +00:00
Sander van Grieken
36efae3875 imports, whitespace 2025-02-10 14:22:50 +01:00
accumulator
7e5ad079b2 Merge pull request #9534 from scgbckbone/fix_msg_sign
fix Coldcard msg signing for segwit v0 address types
2025-02-10 13:46:46 +01:00
accumulator
9cca92d837 Merge pull request #9523 from accumulator/qt_expired_invoice
qt: show warning on expired invoice on send tab.
2025-02-10 11:43:27 +01:00
Sander van Grieken
9b520d31ab qt: fix defer eval of maybe_master_pubkey in case of electrum seed with seed extension 2025-02-10 11:28:41 +01:00
Sander van Grieken
c2456892b4 qt: show warning on expired invoice on send tab.
Also disables Save button when invoice has expired.
2025-02-10 10:36:28 +01:00
SomberNight
5b2068976c config: remove a footgun 2025-02-07 16:22:44 +00:00
SomberNight
ac20422fb7 lnpeer: log their_features in INIT msg 2025-02-06 17:26:26 +00:00
scgbckbone
4f5a732fef fix Coldcard msg signing for segwit v0 address types 2025-02-06 16:41:17 +01:00
ghost43
246a7294da Merge pull request #9522 from f321x/updated_mainnet_fallback_nodes
Update mainnet ln fallback nodes
2025-02-04 12:41:57 +00:00
Sander van Grieken
0debe6675a qt: whitespace, imports 2025-02-04 11:13:37 +01:00
f321x
2c67ed8491 update mainnet ln fallback nodes 2025-02-04 09:43:40 +01:00
ghost43
1cdb61d966 Merge pull request #9476 from accumulator/qml_calc_max_amount
qml: calculate max amount when max toggle is enabled
2025-02-03 13:37:07 +00:00
ThomasV
c725a29c4d Merge pull request #9466 from f321x/improved_trampoline_error
Separate between fee related NoPathFound and other causes when doing lightning payments/forwards
2025-02-03 12:22:31 +01:00
Sander van Grieken
605b511b43 qt,qml: move get_text_not_enough_funds_mentioning_frozen and get_frozen_balance_str to backend wallet
Note: the qt gui used to include FX in get_frozen_balance_str, but that is not replicated now.
2025-01-31 18:03:21 +01:00
ghost43
8ac27baba7 Merge pull request #9465 from f321x/locale_depreciation
Use getlocale() instead of getdefaultlocale() in crash reporter
2025-01-31 15:08:54 +00:00
f321x
5eb9aa074e change to separate exception class for too low fees
store exception in variable instead of using a bool flag

add default str to routing exceptions

Add separate exception class to handle fee related payment errors
2025-01-28 16:15:03 +01:00
f321x
41e32145a8 Add maybe_fee_related bool to NoPathFound and set it on instanciation in according places 2025-01-28 15:58:03 +01:00
SomberNight
172c3721bd follow-up prev: include chains/ folder in win and mac binaries 2025-01-27 14:21:34 +00:00
SomberNight
9bef4a5322 constants: move mainnet/testnet/regtest-specific json files to chains/
note: I find "chains" less ambiguous than "networks" or "net".
Though the codebase already uses "net"/"network" for the same meaning,
e.g. see `electrum.constants.net` or the `getinfo` cmd dict containing a "network" key.. :/
2025-01-27 13:40:41 +00:00
SomberNight
0779d9d7ae fallback ln nodes: simplify a bit
note: BitcoinRegtest subclasses BitcoinTestnet, so the FALLBACK_LN_NODES field should be overwritten

trivial follow-up of https://github.com/spesmilo/electrum/pull/9457
2025-01-27 13:19:29 +00:00
Sander van Grieken
25173b465f qml: network: show chain tips if > 1 2025-01-24 15:32:16 +01:00
Sander van Grieken
6a4b398209 qml: fix mixup help texts in ConfirmTxDialog, and take descriptions from config 2025-01-23 16:14:19 +01:00
Sander van Grieken
37f0069f2a qml: calculate max amount when max toggle is enabled 2025-01-23 16:00:01 +01:00
Sander van Grieken
01fcd2ee9a qml: remove .desktop suffix for QGuiApplication.setDesktopFileName 2025-01-23 15:34:40 +01:00
Sander van Grieken
19cd408f98 organize import, whitespace 2025-01-23 12:58:28 +01:00
ThomasV
373d875f08 Merge pull request #9457 from f321x/move_constants
Move fallback ln nodes in separate json files
2025-01-22 14:58:56 +01:00
f321x
e61dee2e65 remove zlib compression in query_short_channel_ids 2025-01-22 13:38:17 +01:00
Josh Geden
6331448860 qml: add config setting for max brightness on qr display 2025-01-22 09:47:10 +01:00
ThomasV
a084ccc74c lnworker: fix how lightning balance is affected when a channel is
force-closed. Assert final balance in lnworker.get_history().

If we offered some HTLCs, we do not know yet whether they will be
redeemed by us or by the remote.
2025-01-21 17:14:17 +01:00
f321x
94c540bebf change from getdefaultlocale() to getlocale() 2025-01-21 10:17:12 +01:00