Commit Graph

12762 Commits

Author SHA1 Message Date
acdcf322b1 lnd: require blocks to be synced in regtest/simnet 2021-09-14 07:34:09 +08:00
b0f3a08f2d Merge pull request #5465 from Crypt-iQ/spend_height_0702
chainntnfs: populate spendsByHeight during historical dispatch
2021-09-13 11:58:49 -07:00
868958d2bc docs: update release notes for 0.14 2021-09-13 13:29:51 -04:00
aeaa009e92 peer+chancloser: tryLinkShutdown during cooperative close process
Adds a new Brontide struct method tryLinkShutdown that attempts to
fetch the target link and calls ShutdownIfChannelClean on it. This
allows the coop close process to guarantee atomicity of the underlying
channel state. Also removes the UnregisterChannel method from the
chancloser's config as the link is shut down before the chancloser
is created.
2021-09-13 13:29:51 -04:00
608d11dcbc peer: add mockUpdateHandler for use in mockMessageSwitch 2021-09-13 13:29:50 -04:00
b2e90480ed htlcswitch: extend ChannelLink interface with ShutdownIfChannelClean
This allows a caller to ensure to optimistically shut down the link
if the channel is clean. If the channel is not clean, an error is
returned and the link continues functioning as normal. The caller
should also call RemoveLink to ensure that the link isn't seen as
usable within the switch.
2021-09-13 13:29:50 -04:00
7621d7f902 lnwallet: add IsChannelClean method and related tests
Adds a method to the LightningChannel struct called IsChannelClean
that returns a boolean telling the caller whether the channel state
is clean or not. Clean in this case means there are no lingering
updates to be signed for, no HTLC's active on either sides commitment
transaction, and no pending commitments on either side. This can be
used for dynamic commitments or during a strict cooperative close
process that ensures atomicity of the channel.
2021-09-13 13:29:43 -04:00
777abe5ff0 Merge pull request #5716 from guggero/fix-unit-tests
cluster: fix kvdb unit test
2021-09-13 15:59:31 +02:00
55b3802387 cluster: fix kvdb unit test
It looks like #5702 was merged prematurely and broke the kvdb unit
tests.
2021-09-13 14:57:42 +02:00
45343e4454 Merge pull request #5660 from LN-Zap/upstream/feat/delete-payment
add DeletePayment that allows to delete a specific payment or its failed HTLCs
2021-09-13 14:56:51 +02:00
91c3fb59ec docs: release notes for 0.14 2021-09-13 12:50:40 +02:00
7f53656753 lnd: add DeletePayment to the RPC
The RPC DeletePayment allows deleteing  single payment from its ID. When calling with `FailedHtlcsOnly` set in the request only failed HTLCs of this payment will be deleted.
2021-09-13 12:50:40 +02:00
a5641c5351 channeldb: add ability to delete a single payment from its ID
Adds `DeletePayment` to the channeldb, which allows to delete a single payment. If only failed HTLCs for this payment should be deleted it can be specified by the bool `failedHtlcsOnly`.
2021-09-13 12:50:40 +02:00
d5a87f8b5b channeldb: refactor fetching failed HTLC IDs inside DeletePayments 2021-09-13 12:16:17 +02:00
25a53f04f7 Merge pull request #5702 from bhandras/itest_etcd_logs
itest: save etcd logs along node logs in separate files
2021-09-13 11:50:35 +02:00
27b416935e Merge pull request #5695 from ErikEk/lncli-remove-error-log
lncli: remove error logs
2021-09-10 16:50:34 -07:00
400cc0eb96 docs: update release-notes-0.14.0.md 2021-09-10 14:40:58 +02:00
9bf04f9870 itest+etcd: save etcd logs along the node logs 2021-09-10 14:40:57 +02:00
6c2d8bb176 etcd: enable optional log file for embedded etcd log output
In this commit we add an extra config for enabling logging to an
external file when using embedded etcd. This can be useful when running
integration tests to see more details about etcd related issues.
2021-09-10 14:40:54 +02:00
cc939cfa5d Merge pull request #5706 from Liongrass/patch-1
trivial: link from readme to builder's guide [skip ci]
2021-09-10 10:23:44 +02:00
368fa02543 trivial: link from readme to builder's guide
This PR changes a link in the section Developer Resources from dev.lightning.community (unmaintained) to docs.lightning.engineering.
It also specifies more clearly what readers can expect to find there.
2021-09-10 05:42:26 +08:00
4337116bce Merge pull request #5697 from arshbot/export-selectHopHints
invoicesrpc: expose selectHopHints
2021-09-08 10:27:36 +02:00
75f5b407ea Merge pull request #5635 from bhandras/flatten-htlc-bucket
channeldb: flatten the htlc attempts bucket
2021-09-07 20:10:12 -07:00
8720b8f657 docs: update release-notes-0.14.0.md 2021-09-07 14:45:35 -07:00
f2cc783043 docs: update release-notes-0.14.0.md 2021-09-07 10:46:50 +02:00
204966db40 channeldb: migration to flatten the htlc attempts bucket 2021-09-07 10:46:49 +02:00
63d7f5fca7 channeldb: flatten the payment-htlcs-bucket 2021-09-07 10:46:46 +02:00
d50ee834e1 Merge pull request #5688 from bhandras/recovery_itest_flake
itest: fix on-chain recovery flake caused by short timeout/btcd on ARM
2021-09-07 10:44:43 +02:00
e4891a98fd invoicesrpc: expose selectHopHints
selectHopHints is the function which constructs hophints otherwise found
in an invoice created with the private flag.

In this commit, we expose that functionality a little more to workaround
needing to create an invoice to retrieve routing hints. Of course, this
is not a perfect solution as the functionality is exposed exclusively to
go users.
2021-09-06 15:39:53 -07:00
b1288ae233 docs: update release-notes-0.14.0.md 2021-09-06 21:46:23 +02:00
b07bcde482 ci: switch Travis ARM integration test to use bitcoind 2021-09-06 21:46:20 +02:00
195e57025b lncli: remove error logs 2021-09-06 19:12:43 +02:00
f901d450a5 Merge pull request #5692 from guggero/migration-guide-arm
docs: update safety warning in migration guide [skip ci]
2021-09-06 11:57:26 +02:00
8d7f5314a8 docs: update safety warning in migration guide [skip ci]
Fixes #5691.
With this commit we update the safety guidelines for migrating lnd data
between 32bit ARM and 64bit ARM devices.
2021-09-06 11:00:36 +02:00
e76c4c0e9b Merge pull request #5356 from guggero/batch-channel-open
Atomic batch channel funding
2021-09-03 19:56:56 +02:00
180fba056f docs: add BatchOpenChannel to PSBT doc and release notes 2021-09-03 18:39:45 +02:00
7a9ee48cf1 itest: add batch funding test 2021-09-03 18:39:45 +02:00
bb079f746b lncli: add batchopenchannel command 2021-09-03 18:39:44 +02:00
c5c956bbef lnrpc: add BatchOpenChannel RPC 2021-09-02 12:13:47 +02:00
37d0d651c4 rpcserver: extract abandonChan method
We'll want to re-use the abandon channel functionality for the batch
funding, as a cleanup in case the funding is aborted before publishing
any transaction.
2021-09-02 12:13:46 +02:00
ae2e9541a4 walletrpc: export wallet kit sub server name
We'll want to re-use the PSBT funding functionality from the wallet kit
sub server in the main RPC server. To be able to dynamically obtain an
instance of the wallet kit server we need to know its name under which
it registers itself in the list of sub server. We export the name so we
don't have to hard code it in the main server.
2021-09-02 12:13:46 +02:00
84035f1fb2 funding: add batch funding function 2021-09-02 12:13:42 +02:00
7c41d4b349 lnrpc: add batch channel open RPC types 2021-09-02 12:11:10 +02:00
74693ed491 docs: update release notes for 0.14.0 2021-09-01 16:49:28 -04:00
2fbee31c6e chainntnfs: populate spendsByHeight during historical dispatch
This commit fixes a buggy scenario where:
- a spend of the desired outpoint occurs
- RegisterSpend is called, not immediately notifying
- caller performs a historical dispatch, calling UpdateSpendDetails
- caller is notified on the Spend channel
- re-org occurs
- caller is not notified of the re-org
We fix this by correctly populating the spendsByHeight map when
dispatchSpendDetails is called. This mirrors the confirmation case.
2021-09-01 16:45:13 -04:00
d263a01a2d Merge pull request #5669 from Roasbeef/explicit-chan-type
lnwire+funding: introduce new protocol extension for explicit commitment type negotiation
2021-08-31 19:28:59 -07:00
26169e8e16 Merge pull request #5627 from Zero-1729/patch-3
trivial: minor grammar and typo fix [skip ci]
2021-08-30 19:23:43 -07:00
61a0112765 docs: add explicit channel negotiation text to release notes 2021-08-30 19:17:51 -07:00
3299af7919 lncli: add channel type flag to openchannel command 2021-08-30 19:17:45 -07:00
523eef5cf4 lntest: use explicit channel commitment negotiation for multi-hop itests 2021-08-30 19:17:42 -07:00