ThomasV
d493dd1953
add pycryptodomex to requirements
2019-08-20 09:03:11 +02:00
Janus
133e5ec8c3
use gossip_timestamp_filter instead of request_initial_sync
2019-08-20 09:03:11 +02:00
Janus
864d910888
qt: channel_details: add more info: sent/received, channel id, funding tx, short channel id, node id
2019-08-20 09:03:11 +02:00
Janus
762d8be84f
lnaddr: make it possible to use lnaddr to decode arbitrary invoices on the cmd line
2019-08-20 09:03:11 +02:00
SomberNight
9256472485
rm 'cryptography' as dependency; use new pycryptodomex version
...
pycryptodomex 3.7 implemented chacha20_poly1305 and chacha20,
and it is already used (although optionally) to speed up AES,
so we can remove cryptography and make pycryptodomex mandatory for LN
2019-08-20 09:03:11 +02:00
ThomasV
c0a1af2032
fix channel closure:
...
- add 'CLOSING' state
- wait until channel has no inflight HTLC
- end fee negocitation when both parties agree on the fee
(previously code ended it only when the other party had broadcast)
- broadcast the closing transaction
2019-08-20 09:03:11 +02:00
ThomasV
5bc74772a2
follow up 'replace properties with functions'
2019-08-20 09:03:11 +02:00
ThomasV
0e3270a1d6
further simplify lnwatcher
2019-08-20 09:03:11 +02:00
SomberNight
dbc4549c0e
lnchan: restore process_new_offchain_ctx
2019-08-20 09:03:11 +02:00
SomberNight
0070ae1fb1
fix prev
2019-08-20 09:03:11 +02:00
SomberNight
595cfcbb65
move sweeping methods from lnchan.py to new file
...
also sweep "received" htlcs from "our" ctx
also sweep htlcs from their ctx (non-breach)
extract ctn; included_htlcs_in_their_latest_ctxs
2019-08-20 09:03:11 +02:00
SomberNight
bc72966442
lnchan: follow-up "replace properties with functions"
2019-08-20 09:03:11 +02:00
ThomasV
88c6eeb966
make LNWatcher inherit AddressSynchronizer
2019-08-20 09:03:11 +02:00
ThomasV
78896897cb
lnchan: replace properties with functions
2019-08-20 09:03:11 +02:00
Janus
c339eabd31
qt: channel_details: remove demo code
2019-08-20 09:03:11 +02:00
Janus
e3409d32ef
channel details with list of htlcs
2019-08-20 09:03:11 +02:00
Janus
9d32031ca2
Kivy: Lightning support in Receive tab
2019-08-20 09:03:11 +02:00
Janus
ecac8f2880
tests/lnbase: stub on_channels_updated
2019-08-20 09:03:11 +02:00
Janus
7db9a22d63
Kivy: open channel dialog
2019-08-20 09:03:11 +02:00
ThomasV
3430d1aaa3
follow-up prev commit
2019-08-20 09:03:11 +02:00
ThomasV
5422de90a2
lightning: do not handle more than one fee update at a time
2019-08-20 09:03:11 +02:00
Janus
1352b0ce9f
Kivy: Support Lightning in Send tab
2019-08-20 09:03:11 +02:00
Janus
f803bb571d
kivy: restore channel list to working state, add [force-]closing functionality
2019-08-20 09:03:11 +02:00
Janus
1520338f37
fix ln tests
2019-08-20 09:03:11 +02:00
SomberNight
521fadb8cb
lnutil: restructure channel config namedtuples (local/remote config)
2019-08-20 09:03:11 +02:00
Janus
1425628604
add command for listing invoices and their progress, fix list_channels
2019-08-20 09:03:11 +02:00
Janus
783cac1f23
function that returns map from commitment number to list of HTLCs
2019-08-20 09:03:11 +02:00
SomberNight
5b7c801ca4
after rebase fixes
2019-08-20 09:03:11 +02:00
Janus
8a98810df1
do not co-op close channels with pending htlcs
2019-08-20 09:03:11 +02:00
Janus
9cf7aa054d
call force_close_channel on LNWorker, not Peer
2019-08-20 09:03:11 +02:00
Janus
c570bc5fb1
avoid leaving FORCE_CLOSING state, rebroadcast closing tx if reorged out
2019-08-20 09:03:11 +02:00
Janus
0ea87278fb
move force_close_channel to lnbase, test it, add FORCE_CLOSING state
2019-08-20 09:03:11 +02:00
Janus
6211e656a8
lnwatcher: do not get_transaction before broadcast
...
this workaround was inserted to avoid losing the interface
when rebroadcasting a transaction already in the mempool
many times. but since the network should make sure we always
have a interface ready, and this problem shouldn't happen on
mainnet, remove the workaround
2019-08-20 09:03:11 +02:00
Janus
c8dcf0b471
lnwatcher: more detailed logging, support notifying test suite of txs
2019-08-20 09:03:11 +02:00
Janus
795ba1f99d
lnwatcher: ensure probable spendability of prev_tx
...
previously, we would try to publish the second_stage
even if we couldn't, because a conflicting transaction
was published (like an htlc success when we close with
htlcs pending with a 1-hop payment and an online
counterparty)
2019-08-20 09:03:11 +02:00
Janus
f9f1805cdf
use IntEnum for TxMinedDepth
2019-08-20 09:03:11 +02:00
ThomasV
632f11d5da
watchtower: add watch_channel rpc
2019-08-20 09:03:11 +02:00
Janus
39fa13b938
lnchan: use NamedTuple for logs instead of dict with static keys (adds, locked_in, settles, fails)
2019-08-20 09:03:10 +02:00
Janus
72187a4341
lnchan: make sign_next_commitment revert state
2019-08-20 09:03:10 +02:00
Janus
001bb4ca09
remove incorrect docstrings, attribute docstring sources where applicable
2019-08-20 09:03:10 +02:00
SomberNight
c0ae7b5534
after rebase clean-up
2019-08-20 09:03:10 +02:00
Janus
7e76e82152
test_lnbase: add test that pays to another local electrum
2019-08-20 09:03:10 +02:00
SomberNight
ce2b572fa5
lnbase: more type annotations, and minor fix
2019-08-20 09:03:10 +02:00
SomberNight
449ec013fe
add licence headers to more files
2019-08-20 09:03:10 +02:00
Janus
f5201327d1
add lnd copyright boilerplate to lnchan, test_lnchan
2019-08-20 09:03:10 +02:00
Janus
85789d8a09
lnbase: mark initialized later, add tests, etc
...
- consistent node_id sorting
- require OPTION_DATA_LOSS_PROTECT and test it
2019-08-20 09:03:10 +02:00
Janus
a42c1067ab
lnworker: fix listchannels
2019-08-20 09:03:10 +02:00
Janus
578faeb91a
lnbase: do not assert only one htlc in commitment
2019-08-20 09:03:10 +02:00
Janus
a5a7c1406e
lightning channels reserves: use pretty balance in Qt, fix bugs, add tests
2019-08-20 09:03:10 +02:00
ThomasV
eb4e6b2e54
use WaitingDialog to close channels
2019-08-20 09:03:10 +02:00