ThomasV
23ece8b33b
lnpeer: initialize new channel storage with lnworker db
4 years ago
ThomasV
5598b04c8b
fix regtest/start_bitcoind.sh: createwallet needs to be called
4 years ago
ThomasV
7619949b2f
fix #6674 : raise exceptions if dscancel or cpfp create dust or negative output.
4 years ago
ThomasV
be438bdd60
check_password_for_directory: skip non-files
4 years ago
ThomasV
1e4fa83098
Kivy: use the same password for all wallets
When the app is started, the password is checked against all
wallets in the directory.
If the test passes:
- subsequent wallet creations will use the same password
- subsequent password updates will be performed on all wallets
- wallets that are not storage encrypted will encrypted
on the next password update (even if they are watching-only)
This behaviour is restricted on Android, with a 'single_password' config variable.
Wallet creation without password is disabled if single_password is set
4 years ago
ThomasV
9406541456
kivy wizard: verify seed extension
4 years ago
ThomasV
620a6aaf99
kivy: fix confirm_seed_dialog (broken in 77e0d3745e
)
4 years ago
ThomasV
3cb68b10b9
remove broken payment requests. fixes #6350
4 years ago
ThomasV
66d31305e4
kivy: minor fix (follow-up 94708f63e4
)
4 years ago
ThomasV
641968fcf8
Wizard: do not ask seed type, default to segwit
segwit addresses are widely supported today.
4 years ago
ThomasV
94708f63e4
invoices and requests: rm 3 seconds delay
4 years ago
ThomasV
a2122a8c19
auto-remove paid invoices from GUI
- delay 3 seconds in GUI
- kivy remove 'delete' buttons from send/receive screens
4 years ago
ThomasV
90abfda12b
add unconfirmed state for onchain invoices and requests
4 years ago
ThomasV
d50a8d1b84
Qt: rename incoming/outgoing payments to send/receive queue. fixes #6711
4 years ago
ThomasV
b2be29b508
follow-up previous commit (variable name)
4 years ago
ThomasV
ad91257729
pass blacklist to lnrouter.find_route, so that lnrouter is stateless (see #6778 )
4 years ago
ThomasV
9d7a317404
fix tests (follow-up 3f5c1a0171
)
4 years ago
ThomasV
d5c360a958
simplify lnrouter API
4 years ago
ThomasV
805c5a2120
upfront_shutdown_script: rm dead code, fix test
4 years ago
bitromortac
bd178fbed5
lnpeer: remove unused imports, code cleanup
4 years ago
bitromortac
e555ea650e
lnpeer: add unit test for upfront shutdown script
4 years ago
bitromortac
673f89f0d2
scripts: add Lightning feature analysis script
4 years ago
bitromortac
5a72df2bb4
lnrater: suggest nodes compatible with our LN features
4 years ago
bitromortac
f7e5c2d3b0
lnworker: enable upfront shutdown script
4 years ago
bitromortac
6b90a2d36c
lnpeer: implement upfront shutdown script logic
Upfront shutdown script is a script provided on channel opening,
which will be used by the peer to enforce us closing to this script
on collaborative channel close.
4 years ago
bitromortac
e5458bb534
wallet_db: migrate to upfront shutdown scripts
4 years ago
bitromortac
cf6e3e4efa
lnwire: add upfront shutdown script tlvs
4 years ago
bitromortac
863fe031f0
lnpeer: await on_message handlers to raise exceptions
4 years ago
SomberNight
2eb02931ae
hw plugins: log exception at import time (but only if interesting)
related: https://github.com/spesmilo/electrum/issues/6928
4 years ago
ThomasV
de903103da
pass daemon to Commands instance in qt console. fixes #6926
4 years ago
SomberNight
2ec548dda3
ChannelDB: avoid duplicate (host,port) entries in ChannelDB._addresses
before:
node_id -> set of (host, port, ts)
after:
node_id -> NetAddress -> timestamp
Look at e.g. add_recent_peer; we only want to store
the last connection time, not all of them.
4 years ago
SomberNight
9a803cd1d6
ChannelDB: fix get_last_good_address
4 years ago
Peter D. Gray
e829f2a0bc
plugins/coldcard/coldcard.py: include derivation path for each part of multisig (for v3.2.1 of firmware)
4 years ago
Peter D. Gray
a810bc50be
plugins/coldcard/README.md: updates and cleanup
4 years ago
SomberNight
d86138a1a5
storage: speed up write() by using faster compression setting
Re total runtime of WalletDB.write() and file size on disk,
for a large encrypted wallet, compare:
before (zlib level=6):
file size 16_670 KB
JsonDB.dump 0.5099 sec
zlib.compress 1.3280 sec
ECPubkey.encrypt_message 0.1720 sec
after change (zlib level=1):
file size 17_527 KB
JsonDB.dump 0.5344 sec
zlib.compress 0.5320 sec
ECPubkey.encrypt_message 0.1837 sec
4 years ago
Malcolm Smith
67ae678137
storage/db: use faster JSON encoder settings when wallet is encrypted
The standard json module has an optimized C encoder, but that doesn't
currently support indentation. So if you request indentation, it falls
back on the slower Python encoder.
Readability doesn't matter for encrypted wallets, so this disables
indentation when the wallet is encrypted.
-----
based on b2399b6a3e
For a large encrypted wallet, compare:
before change:
JsonDB.dump 1.3153 sec
zlib.compress 1.281 sec
ECPubkey.encrypt_message 0.1744 sec
after change:
JsonDB.dump 0.5059 sec
zlib.compress 1.3120 sec
ECPubkey.encrypt_message 0.1630 sec
Co-authored-by: SomberNight <somber.night@protonmail.com>
4 years ago
SomberNight
13c45bd798
qt send tab: mention frozen balance if "not enough funds" in more cases
fixes #6912
4 years ago
SomberNight
4b5616ff14
qt BlockingWaitingDialog: try harder to get label drawn (refresh bug)
4 years ago
SomberNight
85f76523b6
qt tx dialog: use WaitingDialog for network requests in __init__
4 years ago
SomberNight
422f7ad110
qt tx dialog: fix visual artifact when opening (widget parenting issue)
4 years ago
ThomasV
177766ac37
lnpeer: fix a comment
4 years ago
ThomasV
07b08738a8
kivy wizard: checkum bip39 seeds, because the virtual keyboard imposes the English wordlist
4 years ago
ThomasV
b2ab2a9f6a
wizard: call on_restore_seed, on_restore_bip39 through self.run. fixes #6895
4 years ago
ThomasV
77e0d3745e
fix #4326
4 years ago
ThomasV
7e36770a06
fix #6605
4 years ago
ThomasV
eb6eac9254
fix reserve_sat in local_config. see #6896
4 years ago
ThomasV
d70431c0e7
lnchannel.available_to_spend: return zero if frozen or not active. Without this, the channel details window displays can_send/can_receive values that are inconsistent with the main window
4 years ago
ThomasV
b29cdc02da
Require gossip_queries in LNWallet (follow-up f83d2d9fee
)
- workaround lnd bug https://github.com/lightningnetwork/lnd/issues/3651
- also reduces bandwidth usage
4 years ago
ThomasV
c478f3bb91
channel backups: fix exception in raised after channel is force closed
Traceback (most recent call last):
File "/opt/electrum/electrum/util.py", line 1056, in wrapper
return await func(*args, **kwargs)
File "/opt/electrum/electrum/lnwatcher.py", line 183, in on_network_update
await callback()
File "/opt/electrum/electrum/lnwatcher.py", line 200, in check_onchain_situation
keep_watching = await self.do_breach_remedy(funding_outpoint, closing_tx, spenders)
File "/opt/electrum/electrum/lnwatcher.py", line 377, in do_breach_remedy
sweep_info_dict = chan.sweep_ctx(closing_tx)
File "/opt/electrum/electrum/lnchannel.py", line 227, in sweep_ctx
our_sweep_info = self.create_sweeptxs_for_our_ctx(ctx)
File "/opt/electrum/electrum/lnchannel.py", line 216, in create_sweeptxs_for_our_ctx
return create_sweeptxs_for_our_ctx(chan=self, ctx=ctx, sweep_address=self.sweep_address)
File "/opt/electrum/electrum/lnchannel.py", line 321, in sweep_address
assert self.lnworker.wallet.is_mine(addr)
AssertionError
4 years ago
ThomasV
39fc72dad6
add paste button to qt payto_e. fixes #6878
4 years ago