15430 Commits

Author SHA1 Message Date
Olaoluwa Osuntokun
d5b05d6930
Merge pull request #8241 from Roasbeef/v0-17-3-branch
release: create v0.17.3-beta.rc1 release branch
v0.17.3-beta.rc1
2023-12-01 14:17:21 -08:00
Olaoluwa Osuntokun
937fe6fda6
build: bump version to v0.17.3-beta.rc1 2023-11-30 15:08:20 -08:00
Olaoluwa Osuntokun
f550d04c7d Merge branch 'v0-17-3-branch-8232' into v0-17-3-branch 2023-11-30 15:06:14 -08:00
yyforyongyu
01eb7e539a gomod: update btcwallet version 2023-11-30 15:06:14 -08:00
Olaoluwa Osuntokun
b4425f6eea Merge branch 'v0-17-3-branch-8151' into v0-17-3-branch 2023-11-30 15:05:52 -08:00
Eugene Siegel
41e251b0d7 release-notes: update for 0.17.3 2023-11-30 15:05:52 -08:00
Eugene Siegel
dd2ead1022 routing: launch fetchFundingTx in goroutine so router can exit
This commit introduces a wrapper function fetchFundingTxWrapper
which calls fetchFundingTx in a goroutine. This is to avoid an issue
with pruned nodes where the router is attempting to stop, but the
prunedBlockDispatcher is waiting to connect to peers that can serve
the block. This can cause the shutdown process to hang until we
connect to a peer that can send us the block.
2023-11-30 15:05:52 -08:00
Olaoluwa Osuntokun
5565dffbd1 Merge branch 'v0-17-3-branch-8220' into v0-17-3-branch 2023-11-30 15:01:15 -08:00
yyforyongyu
87b4749d60 docs: add release notes for v0.17.3 2023-11-30 15:01:15 -08:00
yyforyongyu
bb27135477 lnwallet: make sure loop var is properly referenced 2023-11-30 15:01:15 -08:00
yyforyongyu
c6d52147e8 lnwallet: add unit test for extractPayDescs 2023-11-30 15:01:15 -08:00
yyforyongyu
8ac3480942 multi: enhance logging around channel reestablishment 2023-11-30 15:01:15 -08:00
Olaoluwa Osuntokun
97975098b9 Merge branch 'v0-17-3-branch-8224' into v0-17-3-branch 2023-11-30 14:58:52 -08:00
yyforyongyu
c6836d777e docs: add release notes for v0.17.3 2023-11-30 14:58:52 -08:00
yyforyongyu
dd8be9fc87 lntest: add verbose logging when node fails to shutdown 2023-11-30 14:58:52 -08:00
yyforyongyu
23e177514f input: use lnutils.SyncMap to store musig2 sessions 2023-11-30 14:58:52 -08:00
Olaoluwa Osuntokun
6744c64e62
build: bump version to v0.17.2-beta v0.17.2-beta 2023-11-20 14:31:32 -06:00
Olaoluwa Osuntokun
ceb8e8a109
Merge pull request #8187 from Roasbeef/v0-17-2-branch
release: create v0.17.2-beta release branch
v0.17.2-beta.rc1
2023-11-17 16:10:27 -08:00
Olaoluwa Osuntokun
0aaf144b76
build: bump version to v0.17.2-beta.rc2 2023-11-17 18:09:34 -06:00
Olaoluwa Osuntokun
01761ab99b
docs/release-notes: update release notes for v0.17.2 2023-11-17 18:09:17 -06:00
Olaoluwa Osuntokun
04e0c9bc39 Merge branch 'v0-17-2-branch-8198' into v0-17-2-branch 2023-11-17 18:05:43 -06:00
Matt Morehouse
a331308a02 peer: add test for startup race on writeMessage
The test reliably detects
https://github.com/lightningnetwork/lnd/issues/8184.
2023-11-17 18:05:43 -06:00
Matt Morehouse
a283fc62fa peer: enable mockMessageConn to detect data races
We use unsynchronized counters to trigger a report under the race
detector if multiple reads or writes happen concurrently.
2023-11-17 18:05:43 -06:00
Matt Morehouse
0f5e4077ba peer: add missing Close() method to mockMessageConn 2023-11-17 18:05:43 -06:00
Olaoluwa Osuntokun
2988c85479
docs/release-notes: add release notes for v0.17.2 2023-11-16 13:08:15 -08:00
Eugene Siegel
a41833c466 peer: send reestablish, shutdown messages before starting writeHandler
This is to avoid a potential race on WriteMessage and Flush internals.
Because there is no locking on WriteMessage and Flush, if we allow
writeMessage calls in Start after the writeHandler has started,
the writeMessage calls may call WriteMessage/Flush at the same time
that writeMessage calls from the writeHandler does. Since there is
no locking, internals like b.nextHeaderSend can race and cause
panics.
2023-11-16 13:05:16 -08:00
Olaoluwa Osuntokun
744feb04e2
build: bump version to v0.17.1-beta v0.17.1-beta 2023-11-13 11:13:18 -08:00
Olaoluwa Osuntokun
eea15f0952
Merge pull request #8162 from Roasbeef/v0-17-1-branch-rc3
build: create v0.17.1 rc3 release branch
v0.17.1-beta.rc3
2023-11-08 17:10:55 -08:00
Olaoluwa Osuntokun
18a5dda6a9
build: bump version to v0.17.1-beta.rc3 2023-11-08 15:00:20 -08:00
Olaoluwa Osuntokun
31791aadc8 Merge branch 'v0-17-1-branch-rc3-8158' into v0-17-1-branch-rc3 2023-11-08 14:58:41 -08:00
Eugene Siegel
8e8923c251 release-notes: update for 0.17.1 2023-11-08 14:58:41 -08:00
Eugene Siegel
f7e2db9687 peer: send messages in Start via writeMessage to bypass writeHandler
Without this the following could happen:

* InboundPeerConnected is called while we already have an inbound
connection with the peer. This calls removePeer which calls Disconnect.
* If the peer is starting up in Start, it may be sending messages
synchronously via SendMessage(true, ...). This eventually calls the
writeMessage function which will exit if disconnect is set to 1.
* Since Disconnect was called, disconnect will be 1 and writeMessage
will exit, causing writeHandler to exit.
* If there is more than 1 message being sent, later messages will
queue in queueHandler but be unable to get into sendQueue as the
writeHandler goroutine has exited.
* The synchronous sends will be waiting on the errChan indefinitely
and startReady will never get closed meaning Disconnect will never
proceed.

The end result is that the server's mutex will be held until shutdown.

Avoid this by using writeMessage to bypass the writeHandler goroutine.
2023-11-08 14:58:41 -08:00
Olaoluwa Osuntokun
0116d9bd0b
Merge pull request #8155 from Roasbeef/v0-17-1-branch-rc2
release: create v0.17.1 rc2 release branch
v0.17.1-beta.rc2
2023-11-07 16:25:20 -08:00
Olaoluwa Osuntokun
8ffd64b554
build: bump version to v0.17.1-beta.rc2 2023-11-06 16:10:55 -08:00
Olaoluwa Osuntokun
7dffad8e13 Merge branch 'v0-17-1-branch-rc2-8116' into v0-17-1-branch-rc2 2023-11-06 16:09:38 -08:00
Oliver Gugger
30fc8e96be GitHub: bump pinned versions in CI check 2023-11-06 16:09:38 -08:00
dependabot[bot]
cbccf61c7f build(deps): bump google.golang.org/grpc from 1.53.0 to 1.56.3
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.53.0 to 1.56.3.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.53.0...v1.56.3)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-06 16:09:38 -08:00
Olaoluwa Osuntokun
710545b829
Merge pull request #8138 from Roasbeef/v0-17-1-branch-rc1
build: create v0.17.1-rc1 branch
2023-11-01 15:27:51 -07:00
Olaoluwa Osuntokun
155f66b16f Merge branch 'v0-17-1-branch-rc1-8063' into v0-17-1-branch-rc1 v0.17.1-beta.rc1 2023-11-01 11:17:04 -07:00
Oliver Gugger
464ddb4206 cmd/lncli: fix linter complaint by running make fmt 2023-11-01 11:17:04 -07:00
Olaoluwa Osuntokun
c8409575bb
build: bump version to v0.17.1-beta.rc1 2023-10-31 16:49:13 -07:00
Olaoluwa Osuntokun
2c2ba34537 Merge branch 'v0-17-1-branch-rc1-8132' into v0-17-1-branch-rc1 2023-10-31 16:44:35 -07:00
Olaoluwa Osuntokun
76862ed10b macaroons: reject unknown macaroon versions
We've only ever made macaroons with the v2 versions, so we should
explicitly reject those that aren't actually v2. We add a basic test
along the way, and also add a similar check for the version encoded in
the macaroon ID.
2023-10-31 16:44:35 -07:00
Olaoluwa Osuntokun
948f8732d6 Merge branch 'v0-17-1-branch-rc1-8104' into v0-17-1-branch-rc1 2023-10-31 16:44:17 -07:00
Olaoluwa Osuntokun
6c7bca2a17 docs/release-notes: add entry for nonce init fix 2023-10-31 16:44:17 -07:00
Slyghtning
9fa2057cd4 itest: simple taproot channel status 2023-10-31 16:44:17 -07:00
Slyghtning
b2a5368846 itest: assertions to check channel status 2023-10-31 16:44:17 -07:00
Eugene Siegel
280a97cbaa multi: skip InitRemoteMusigNonces if we've already called it
Prior to this commit, taproot channels had a bug:

- If a disconnect happened before peer.AddNewChannel was called,
  then the subsequent reconnect would call peer.AddNewChannel and
  attempt the ChannelReestablish dance.

- peer.AddNewChannel would call NewLightningChannel with
  populated nonce ChannelOpts. This in turn would call
  InitRemoteMusigNonces which would create a new musig pair session
  and set the channel's pendingVerificationNonce to nil.

- During the reestablish dance, ProcessChanSyncMsg would be called.
  This would also call InitRemoteMusigNonces, except it would fail
  since pendingVerificationNonce was set to nil in the previous
  invocation.

To fix this, we add a new functional option to signal to the init logic
that it doesn't need to call InitRemoteMusigNonces in   in
ProcessChanSyncMsg.
2023-10-31 16:44:17 -07:00
Olaoluwa Osuntokun
db6acec141 Merge branch 'v0-17-1-branch-rc1-8111' into v0-17-1-branch-rc1 2023-10-31 16:43:15 -07:00
Jonathan Harvey-Buschel
452af8ffa1 doc: add release notes for 8111 2023-10-31 16:43:15 -07:00