Skip to content

release: create v0.19.2-rc1 branch #9986

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 96 commits into from
Jul 4, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
96 commits
Select commit Hold shift + click to select a range
21ed136
htlcswitch: exit early if no adds are in the fwd pkg
ziggie1984 Jun 6, 2025
b27f401
Merge branch '0-19-2-branch-rc1-9911' into 0-19-2-branch-rc1
Roasbeef Jun 20, 2025
43f8bf2
htlcswitch+channeldb: add htlcidx to fwding log
Abdulkbk May 15, 2025
768911c
lnd+lnrpc: update fwdinghistory message
Abdulkbk May 15, 2025
4732405
docs: add release note
Abdulkbk May 15, 2025
6e8d552
Merge branch '0-19-2-branch-rc1-9813' into 0-19-2-branch-rc1
Roasbeef Jun 20, 2025
938d78a
lnwallet+channeldb: use `BigSizeT` to save space
yyforyongyu May 21, 2025
6947e0a
channeldb: add customized encoding for `HtlcIndex`
yyforyongyu May 23, 2025
f326fbb
docs: add release note entry
yyforyongyu Jun 3, 2025
0608cc0
channeldb+lnwallet: fix typo
yyforyongyu Jun 6, 2025
ff95646
Merge branch '0-19-2-branch-rc1-9889' into 0-19-2-branch-rc1
Roasbeef Jun 20, 2025
2ffcefc
channeldb: perform init of top level buckets first
djkazic Mar 27, 2025
270981e
Merge branch '0-19-2-branch-rc1-9653' into 0-19-2-branch-rc1
Roasbeef Jun 20, 2025
a806323
chainntnfs: patch debug logs and fix `StartHeight`
yyforyongyu Jun 9, 2025
732cd71
chainntnfs: use spent height as height hint if found
yyforyongyu Jun 9, 2025
1d2217e
docs: update release notes
yyforyongyu Jun 9, 2025
ff6ea78
Merge branch '0-19-2-branch-rc1-9921' into 0-19-2-branch-rc1
Roasbeef Jun 20, 2025
6bf9a38
chainio: use package logger instead of instance logger
yyforyongyu Jun 18, 2025
6e6901e
Merge branch '0-19-2-branch-rc1-9962' into 0-19-2-branch-rc1
Roasbeef Jun 20, 2025
1304182
protofsm: add new ConfMapper similar to SpendMapper for conf events
Roasbeef Apr 17, 2025
f11d1d7
protofsm: add unit tests for SpendMapper
Roasbeef Apr 17, 2025
6cee18f
protofsm: add generic type assertion to state machine tests
Roasbeef Apr 17, 2025
fd03675
Merge branch '0-19-2-branch-rc1-9725' into 0-19-2-branch-rc1
Roasbeef Jun 20, 2025
3e29342
protofsm: add option to allow conf resp to return full back
Roasbeef Apr 17, 2025
14ce4f1
protofsm: add test for new full block conf behavior
Roasbeef Apr 17, 2025
2b3c04c
Merge branch '0-19-2-branch-rc1-9726' into 0-19-2-branch-rc1
Roasbeef Jun 20, 2025
cb00911
htlcswitch: skip checking replays for reforwarded packets
yyforyongyu Jun 11, 2025
c8ff379
htlcswitch: exit early if the `fwdPkg` is already completed
yyforyongyu Jun 11, 2025
1330864
htlcswitch: remove `batchReplayBkt`
yyforyongyu Jun 11, 2025
69df66f
htlcswitch: skip decoding hop if the htlc is already acked
yyforyongyu Jun 11, 2025
68cc4bc
docs: update release notes
yyforyongyu Jun 11, 2025
ba94755
Merge branch '0-19-2-branch-rc1-9929' into 0-19-2-branch-rc1
Roasbeef Jun 20, 2025
7981b3b
lncfg: fix typo
yyforyongyu May 30, 2025
5dfc5f4
lncfg+lnd: add new dev config `unsafeconnect`
yyforyongyu May 30, 2025
b527f19
accessman: skip restriction for existing peers
yyforyongyu May 30, 2025
a043915
accessman+lnd: check if a peer is found in `peerScores`
yyforyongyu May 30, 2025
89a819d
accessman: reduce lock span by excluding ctx
yyforyongyu May 30, 2025
bc6008f
lnd: move peer perms assignment into `peerConnected`
yyforyongyu May 30, 2025
bd99924
lnd: only restrict slots for inbound connections
yyforyongyu Jun 3, 2025
d170ef3
lnd: add string representation for `peerAccessStatus`
yyforyongyu Jun 3, 2025
d9e3412
accessman: skip incrementing num of slots for existing peer
yyforyongyu Jun 3, 2025
0b0513d
accessman: make sure to decrement `PendingOpenCount`
yyforyongyu Jun 3, 2025
c4116e1
itest+lntest: add more itest for `accessman`
yyforyongyu May 30, 2025
c23c90e
docs: add release notes for improved `accessman`
yyforyongyu Jun 3, 2025
107b74d
accessman+lnd: rename `checkIncomingConnBanScore` for clarity
yyforyongyu Jun 17, 2025
a8d1985
funding+lnd: make sure `accessman` won't interrupt funding flow
yyforyongyu Jun 17, 2025
ceeb123
channeldb+lnd: rename `peerCounts` to `peerChanInfo` for clarity
yyforyongyu Jun 19, 2025
da13c7a
lnd: remove peer from `peerChanInfo` when necessary
yyforyongyu Jun 19, 2025
f7af970
config: update docs for `num-restricted-slots`
yyforyongyu Jun 19, 2025
bcd854c
Merge branch '0-19-2-branch-rc1-9880' into 0-19-2-branch-rc1
Roasbeef Jun 20, 2025
ef5ae79
channeldb: add migration34
ziggie1984 Jun 12, 2025
684da27
channeldb: update optional migration code for multiple versions
ziggie1984 Jun 17, 2025
988e781
multi: Add decayedlog db migration code
ziggie1984 Jun 17, 2025
970f789
docs: add release-notes
ziggie1984 Jun 12, 2025
a50a528
Merge branch '0-19-2-branch-rc1-9945' into 0-19-2-branch-rc1
Roasbeef Jun 23, 2025
b48e276
docs/release-notes: update release notes w/ all contributors and notes
Roasbeef Jun 23, 2025
397984a
sqldb: clarify native sql options
Jun 20, 2025
4afa5e4
Merge branch '0-19-2-branch-rc1-9973' into 0-19-2-branch-rc1
guggero Jun 24, 2025
4f72354
routerrpc: add log line for probing the invoice request
ziggie1984 Jun 24, 2025
3565df8
routerrpc: rename var and add more comments
ziggie1984 Jun 25, 2025
911fbae
Merge branch '0-19-2-branch-rc1-9991' into 0-19-2-branch-rc1
guggero Jun 25, 2025
2937837
chainfee: method to round up the fee for a given transaction weight
hieblmi Jun 24, 2025
45b26cf
docs: update release notes
hieblmi Jun 25, 2025
ddbd2e0
Merge branch '0-19-2-branch-rc1-9989' into 0-19-2-branch-rc1
guggero Jun 25, 2025
67e7e29
multi: fix deadlock in p2p race condition
ziggie1984 Jun 22, 2025
a656f2c
docs: add release-notes
ziggie1984 Jun 22, 2025
78313e3
lnd: rename removePeer to removePeerUnsafe
ziggie1984 Jun 24, 2025
d7b79ef
lnd: improve code comment
ziggie1984 Jun 24, 2025
bc98249
Merge branch '0-19-2-branch-rc1-9978' into 0-19-2-branch-rc1
guggero Jun 26, 2025
09bcce5
chainreg: use new lseed service
calvinrzachman Jun 25, 2025
a3e3613
docs: update release notes
calvinrzachman Jun 25, 2025
d90781e
Merge branch '0-19-2-branch-rc1-9996' into 0-19-2-branch-rc1
guggero Jun 27, 2025
4efcb07
discovery: fix log line panic
ellemouton Jun 30, 2025
72d4ae0
Merge branch '0-19-2-branch-rc1-10009' into 0-19-2-branch-rc1
guggero Jul 1, 2025
9b877b9
multi: use the "errors" package everywhere
ellemouton Jun 30, 2025
2a57873
server: ensure newer node announcement timestamp
ellemouton Jun 29, 2025
5398229
Merge branch '0-19-2-branch-rc1-10004' into 0-19-2-branch-rc1
guggero Jul 1, 2025
f6c4156
accessman: fix structured logging formatting
ellemouton Jul 1, 2025
6bbc438
server: make use of structured logging for peer connections
ellemouton Jul 1, 2025
c91753e
Merge branch '0-19-2-branch-rc1-10016' into 0-19-2-branch-rc1
guggero Jul 1, 2025
ab03699
routing+htlcswitch: ProduceHtlcExtraData uses first hop pub key
GeorgeTsagk Jun 23, 2025
128b23e
htlcswitch+routing: PaymentBandwidth accepts channel peer pubkey argu…
GeorgeTsagk Jun 26, 2025
2460bd1
docs: add release note
GeorgeTsagk Jul 2, 2025
99ef37f
Merge branch '0-19-2-branch-rc1-9980' into 0-19-2-branch-rc1
guggero Jul 2, 2025
a68dec8
discovery: add comments
ziggie1984 Jul 2, 2025
db7e9e1
brontide: remove async goroutine to process gossip process result
ziggie1984 Jul 2, 2025
be7c2b0
docs: add release-notes
ziggie1984 Jul 1, 2025
1cd42b6
Merge branch '0-19-2-branch-rc1-10012' into 0-19-2-branch-rc1
guggero Jul 3, 2025
8a185a1
server: fix rebase issue
guggero Jul 3, 2025
9345eb2
chainntnfs: export NotifierOptions and internal field for interface use
ffranr Jul 2, 2025
acac2a1
Merge branch '0-19-2-branch-rc1-10028' into 0-19-2-branch-rc1
guggero Jul 4, 2025
775a6dd
build: bump version to v0.19.2-beta.rc1
guggero Jul 4, 2025
11bdccc
docs: fix release notes, add contributors
guggero Jul 4, 2025
81e4160
switch: unlock mutex lock earlier
ziggie1984 Jul 4, 2025
d59036b
docs: add release-notes
ziggie1984 Jul 4, 2025
1f336a0
Merge branch '0-19-2-branch-rc1-10035' into 0-19-2-branch-rc1
guggero Jul 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
274 changes: 189 additions & 85 deletions accessman.go

Large diffs are not rendered by default.

452 changes: 435 additions & 17 deletions accessman_test.go

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions build/version.go
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,11 @@ const (
AppMinor uint = 19

// AppPatch defines the application patch for this binary.
AppPatch uint = 1
AppPatch uint = 2

// AppPreRelease MUST only contain characters from semanticAlphabet per
// the semantic versioning spec.
AppPreRelease = "beta"
AppPreRelease = "beta.rc1"
)

func init() {
Expand Down
8 changes: 8 additions & 0 deletions chainio/dispatcher.go
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,14 @@ func (b *BlockbeatDispatcher) Stop() {
}

func (b *BlockbeatDispatcher) log() btclog.Logger {
// There's no guarantee that the `b.beat` is initialized when the
// dispatcher shuts down, especially in the case where the node is
// running as a remote signer, which doesn't have a chainbackend. In
// that case we will use the package logger.
if b.beat == nil {
return clog
}

return b.beat.logger()
}

Expand Down
12 changes: 10 additions & 2 deletions chainntnfs/bitcoindnotify/bitcoind.go
Original file line number Diff line number Diff line change
Expand Up @@ -833,8 +833,16 @@ func (b *BitcoindNotifier) RegisterSpendNtfn(outpoint *wire.OutPoint,
return nil, err
}

if uint32(blockHeight) > ntfn.HistoricalDispatch.StartHeight {
ntfn.HistoricalDispatch.StartHeight = uint32(blockHeight)
spentHeight := uint32(blockHeight)
chainntnfs.Log.Debugf("Outpoint(%v) has spent at height %v",
outpoint, spentHeight)

// Since the tx has already been spent at spentHeight, the
// heightHint specified by the caller is no longer relevant. We
// now update the starting height to be the spent height to make
// sure we won't miss it in the rescan.
if spentHeight != ntfn.HistoricalDispatch.StartHeight {
ntfn.HistoricalDispatch.StartHeight = spentHeight
}
}

Expand Down
14 changes: 12 additions & 2 deletions chainntnfs/btcdnotify/btcd.go
Original file line number Diff line number Diff line change
Expand Up @@ -933,15 +933,25 @@ func (b *BtcdNotifier) RegisterSpendNtfn(outpoint *wire.OutPoint,
"block %v: %v", blockHash, err)
}

if uint32(blockHeader.Height) > ntfn.HistoricalDispatch.StartHeight {
spentHeight := uint32(blockHeader.Height)
chainntnfs.Log.Debugf("Outpoint(%v) has spent at height %v",
outpoint, spentHeight)

// Since the tx has already been spent at spentHeight, the
// heightHint specified by the caller is no longer relevant. We
// now update the starting height to be the spent height to make
// sure we won't miss it in the rescan.
if spentHeight != ntfn.HistoricalDispatch.StartHeight {
startHash, err = b.chainConn.GetBlockHash(
int64(blockHeader.Height),
int64(spentHeight),
)
if err != nil {
return nil, fmt.Errorf("unable to get block "+
"hash for height %d: %v",
blockHeader.Height, err)
}

ntfn.HistoricalDispatch.StartHeight = spentHeight
}
}

Expand Down
22 changes: 11 additions & 11 deletions chainntnfs/interface.go
Original file line number Diff line number Diff line change
Expand Up @@ -70,28 +70,28 @@ func (t TxConfStatus) String() string {
}
}

// notifierOptions is a set of functional options that allow callers to further
// NotifierOptions is a set of functional options that allow callers to further
// modify the type of chain event notifications they receive.
type notifierOptions struct {
// includeBlock if true, then the dispatched confirmation notification
type NotifierOptions struct {
// IncludeBlock if true, then the dispatched confirmation notification
// will include the block that mined the transaction.
includeBlock bool
IncludeBlock bool
}

// defaultNotifierOptions returns the set of default options for the notifier.
func defaultNotifierOptions() *notifierOptions {
return &notifierOptions{}
// DefaultNotifierOptions returns the set of default options for the notifier.
func DefaultNotifierOptions() *NotifierOptions {
return &NotifierOptions{}
}

// NotifierOption is a functional option that allows a caller to modify the
// events received from the notifier.
type NotifierOption func(*notifierOptions)
type NotifierOption func(*NotifierOptions)

// WithIncludeBlock is an optional argument that allows the calelr to specify
// WithIncludeBlock is an optional argument that allows the caller to specify
// that the block that mined a transaction should be included in the response.
func WithIncludeBlock() NotifierOption {
return func(o *notifierOptions) {
o.includeBlock = true
return func(o *NotifierOptions) {
o.IncludeBlock = true
}
}

Expand Down
6 changes: 3 additions & 3 deletions chainntnfs/txnotifier.go
Original file line number Diff line number Diff line change
Expand Up @@ -559,7 +559,7 @@ func NewTxNotifier(startHeight uint32, reorgSafetyLimit uint32,
// and register a confirmation notification.
func (n *TxNotifier) newConfNtfn(txid *chainhash.Hash,
pkScript []byte, numConfs, heightHint uint32,
opts *notifierOptions) (*ConfNtfn, error) {
opts *NotifierOptions) (*ConfNtfn, error) {

// An accompanying output script must always be provided.
if len(pkScript) == 0 {
Expand Down Expand Up @@ -593,7 +593,7 @@ func (n *TxNotifier) newConfNtfn(txid *chainhash.Hash,
n.CancelConf(confRequest, confID)
}),
HeightHint: heightHint,
includeBlock: opts.includeBlock,
includeBlock: opts.IncludeBlock,
numConfsLeft: numConfs,
}, nil
}
Expand All @@ -616,7 +616,7 @@ func (n *TxNotifier) RegisterConf(txid *chainhash.Hash, pkScript []byte,
default:
}

opts := defaultNotifierOptions()
opts := DefaultNotifierOptions()
for _, optFunc := range optFuncs {
optFunc(opts)
}
Expand Down
18 changes: 13 additions & 5 deletions chainreg/chainregistry.go
Original file line number Diff line number Diff line change
Expand Up @@ -878,8 +878,8 @@ var (
ChainDNSSeeds = map[chainhash.Hash][][2]string{
BitcoinMainnetGenesis: {
{
"nodes.lightning.directory",
"soa.nodes.lightning.directory",
"nodes.lightning.wiki",
"soa.nodes.lightning.wiki",
},
{
"lseed.bitcoinstats.com",
Expand All @@ -888,14 +888,22 @@ var (

BitcoinTestnetGenesis: {
{
"test.nodes.lightning.directory",
"soa.nodes.lightning.directory",
"test.nodes.lightning.wiki",
"soa.nodes.lightning.wiki",
},
},

BitcoinTestnet4Genesis: {
{
"test4.nodes.lightning.wiki",
"soa.nodes.lightning.wiki",
},
},

BitcoinSignetGenesis: {
{
"ln.signet.secp.tech",
"signet.nodes.lightning.wiki",
"soa.nodes.lightning.wiki",
},
},
}
Expand Down
Loading
Loading