Commit Graph

12361 Commits

Author SHA1 Message Date
eugene
2fbc35ca26 docs: update release notes for 0.14.0 2021-10-26 10:32:19 -04:00
eugene
ee2162b5d2 htlcswitch: remove 5 second timeout for data race unit tests 2021-10-26 10:32:13 -04:00
Oliver Gugger
6450f0c080 Merge pull request #5895 from LN-Zap/upstream/fix/sweeps-missing-label
sweep: add label to sweep transactions
2021-10-26 15:25:55 +02:00
Bjarne Magnussen
d342457ab2 release notes 0.14.0 2021-10-26 13:14:04 +02:00
Bjarne Magnussen
0fc17238cd sweep: add label to sweep transactions 2021-10-26 12:52:22 +02:00
Olaoluwa Osuntokun
0a3bc3ee3d Merge pull request #5840 from guggero/bolt-pathfinding-fallback
db: allow turning off in-memory graph cache for bbolt
2021-10-25 14:24:10 -07:00
Olaoluwa Osuntokun
11b157705c Merge pull request #5598 from champo/relax_channel_disabled
routing: relax penalties for channel disabled errors
2021-10-25 14:21:36 -07:00
Olaoluwa Osuntokun
60a1f2d8d9 Merge pull request #5874 from Roasbeef/chan-type-feature-bit-fix
lnwire: switch chan_type feature to bits 44/45
2021-10-25 14:19:29 -07:00
Oliver Gugger
8095901924 Merge pull request #5893 from guggero/waddrmgr-update
mod: update btcwallet dependency to fix crash
2021-10-25 15:13:55 +02:00
Oliver Gugger
f045ee5e96 Merge pull request #5881 from alexbosworth/patch-6
lnrpc: log channel point in coop close warning
2021-10-25 11:30:08 +02:00
Oliver Gugger
ad9c160bc9 Merge pull request #5845 from guggero/itest-fixes-rest
itest: fix build matrix, WebSocket test timeout and log file upload
2021-10-25 11:16:20 +02:00
Oliver Gugger
bdf787b248 Merge pull request #5879 from lightningnetwork/go-get-deprecated
lnrpc: migrate `go get` to `go install`
2021-10-25 09:52:42 +02:00
Oliver Gugger
47879d95e8 mod: update btcwallet dependency to fix crash
Fixes #5864.
Updates the btcwallet dependency to the version that fixes the
concurrent map access crash.
2021-10-25 09:50:58 +02:00
Juan Pablo Civile
04c0718401 routing: report success up to the failing node on FailChannelDisabled 2021-10-24 16:53:50 -03:00
Alex Bosworth
262992fbe3 include release note 2021-10-22 13:57:10 -07:00
Alex Bosworth
6a1283cf0b lnrpc: log channel point in coop close warning
Use `Warnf` to include the chanpoint in the warning message instead of printing `%v` to the log
2021-10-22 13:20:55 -07:00
positiveblue
416a96e2c1 lnrpc: migrate deprecated go get to go install
Starting in Go 1.17, installing executables with go get is deprecated.
Migrate our docker file for lnrpc protos.
2021-10-22 09:25:22 -07:00
Oliver Gugger
27632daa98 itest: test path finding without cache 2021-10-22 09:32:50 +02:00
Oliver Gugger
01015aced4 routing: run path finding tests against cache and DB
To make sure we don't hit any edge cases we refactor the path finding
tests to run both with and without the cache enabled.
2021-10-22 09:32:49 +02:00
Oliver Gugger
0a2ccfc52b multi: use single read transaction for path finding
This commit partially reverts bf27d05a.
To avoid creating multiple database transactions during a single path
finding operation, we create an explicit transaction when the cached
graph is instantiated.
We cache the source node to avoid needing to look that up for every path
finding session.
The database transaction will be nil in case of the in-memory graph.
2021-10-22 09:32:49 +02:00
Oliver Gugger
1fef2970cf channeldb: implement DB fallback for path finding
If the in-memory graph cache is disabled, we fall back to querying the
database.
2021-10-22 09:32:48 +02:00
Oliver Gugger
f216da32f3 lnd+channeldb: add graph cache option to channeldb
With this commit we forward the config option for disabling the channel
graph cache as a boolean to the channeldb. But we invert its meaning to
make the flag easier to understand.
2021-10-22 09:32:48 +02:00
Oliver Gugger
a2ad533136 docs+lncfg+sample-lnd.conf: add no-graph-cache option 2021-10-22 09:32:47 +02:00
Oliver Gugger
4e224fe0aa GitHub: fix matrix, package log files before upload
It turns out we were using the wrong matrix variable in the actual
make command and ran the same itest 6 times with no arguments, all
resulting in running the btcd test.

To avoid uploading too many files in individual requests, we zip them
first before uploading the zip itself.
2021-10-21 12:07:15 +02:00
Oliver Gugger
423de4d79a itest: defer close of done channel
The testing framework uses runtime.Goexit() when a test fails which
still allows the defer calls to execute. That's why we should use defer
to close the done channel to allow all goroutines to exit properly.
2021-10-21 11:09:52 +02:00
Olaoluwa Osuntokun
cac8da819f build: update go.mod with latest healthcheck version
We need a tag after the update to the sub-module, as otherwise projects
that depend on lnd (like `lndclient`) are broken.
2021-10-20 18:53:25 -07:00
Olaoluwa Osuntokun
7f656a2550 Merge pull request #5709 from Roasbeef/lease-script-enforce
Introduce new commitment format to enforce channel lease expirations in scripts
healthcheck/v1.2.0
2021-10-20 18:28:40 -07:00
Wilmer Paulino
08d93fd15b docs: add script enforced channel leases text to release notes 2021-10-19 18:30:58 -07:00
Wilmer Paulino
e891dd0fd3 itest: test backup restore of script enforced lease channel type 2021-10-19 18:30:53 -07:00
Wilmer Paulino
0b0dd65c93 chanbackup: support backup restore of script enforced leased channels 2021-10-19 18:30:50 -07:00
Wilmer Paulino
974fc346cf itest: update itests to use new script-enforced lease commitment type
We update several of our integration tests that exercise different
scenarios with regards to the broadcast of a channel commitment
transaction with HTLCs in-flight to use the new commitment type for
channel leases. We do this to ensure we have complete coverage of said
channel commitment type. This required changing several assumptions
throughout the tests based on when we should expect sweeps to happen.
2021-10-19 18:30:48 -07:00
Wilmer Paulino
e15ad026d4 chanacceptor: include commitment type in channel acceptor requests 2021-10-19 18:30:45 -07:00
Wilmer Paulino
c9f6d788e2 lnrpc: add new CommitmentType for script enforced leased channels 2021-10-19 18:30:43 -07:00
Wilmer Paulino
e1c269c7ed sweep: remove previous exclusive group upon re-offered inputs
This aims to cover an edge case and also serves as an optimization of
what happens when an input that was offered to the Sweeper with an
exclusive group is re-offered without one. This happens every time we
attempt to sweep the different possible anchors of a channel at the time
of broadcast, as we don't know which commitment transaction will end up
confirming in the chain. Once the commitment transaction confirms
however, we know which anchor output to act upon and re-offer it to the
Sweeper without an exclusive group. At this point, the Sweeper will
continue to attempt sweeping the other anchor output versions even know
we know they are not valid.
2021-10-19 18:30:40 -07:00
Wilmer Paulino
5faf3dc03b contractcourt: handle sweeping script-enforced leased channel outputs
In order to sweep the commitment and HTLC outputs belonging to a
script-enforced leased channel, each resolver must know whether the
additional CLTV clause on the channel initiator applies to them. To do
so, we retrieve the historical channel state stored within the database
and supplement it to the resolvers to provide them with what's needed in
order to sweep the necessary outputs and resolve their respective
contracts.
2021-10-19 18:30:37 -07:00
Wilmer Paulino
2f27fa370b input: add new constructor to support CSV and CLTV locked inputs 2021-10-19 18:30:35 -07:00
Wilmer Paulino
8cfb53f64a lnwallet: support transactions and scripts for new commitment type
This commit modifies the channel state machine to be able to derive the
proper commitment and second-level HTLC output scripts required by the
new script-enforced leased channel commitment type.
2021-10-19 18:30:32 -07:00
Wilmer Paulino
01e9bb2bff lnwallet: coalesce different supported output scripts into single method 2021-10-19 18:30:30 -07:00
Wilmer Paulino
652f841738 input: add witness gen and weight estimates for new commitment type
This witness generators and weight estimates added only apply for the
new script-enforced leased channel commitment type.
2021-10-19 18:30:27 -07:00
Wilmer Paulino
b84307e62e input: add scripts for new script enforced lease commitment type
The new commitment type consists of adding an additional CLTV
requirement to guarantee a leased channel's expiration on any commitment
and HTLC outputs that pay directly to the channel initiator.
2021-10-19 18:30:24 -07:00
Wilmer Paulino
564ec0fd9b funding+lnwallet: support funding new script enforced leased channels 2021-10-19 18:30:22 -07:00
Wilmer Paulino
f38c6d6662 channeldb: add new ChannelType bit for script enforced leased channels 2021-10-19 18:30:19 -07:00
Wilmer Paulino
6252563bc5 lnwire: add LeaseExpiry custom record for Open+AcceptChannel 2021-10-19 18:30:17 -07:00
Wilmer Paulino
6052a446dc lnwire+feature: add feature bit for script enforced lease support 2021-10-19 18:30:14 -07:00
Wilmer Paulino
35fd985118 lncfg: add protocol config option for script enforced lease support 2021-10-19 18:30:12 -07:00
Olaoluwa Osuntokun
287871401a docs/release-notes: add section for propr chan type feature bit 2021-10-19 18:25:58 -07:00
Olaoluwa Osuntokun
028fc86e5c lnwire: switch chan_type feature to bits 44/45
We were using an older feature bit that was just "selected". This commit
has us use the feature bit officially included in the spec.

See https://github.com/lightningnetwork/lightning-rfc/pull/906
2021-10-19 17:40:33 -07:00
Olaoluwa Osuntokun
e590abc7be Merge pull request #5813 from naveensrinivasan/naveen/feat/kvdv-1.16
Upgrade to go 1.16 for the left over packages
2021-10-19 16:40:47 -07:00
Olaoluwa Osuntokun
290b78e700 Merge pull request #5512 from carlaKC/5468-amountawarehint
routing: include htlc amount in bandwidth hint queries
2021-10-19 16:31:10 -07:00
carla
721ef7d367 release-notes: add amount sensitive bandwidth hints 2021-10-19 09:52:19 +02:00