Skip to content

release: create v0.16.1-beta.rc1 branch #7611

Merged
Roasbeef merged 66 commits intolightningnetwork:v0-16-1-branch-rc1from
Roasbeef:v0-16-1-branch-rc1
Apr 19, 2023
Merged

release: create v0.16.1-beta.rc1 branch #7611
Roasbeef merged 66 commits intolightningnetwork:v0-16-1-branch-rc1from
Roasbeef:v0-16-1-branch-rc1

Conversation

bjarnemagnussen and others added 30 commits April 18, 2023 18:19
Allows to define a maximum amount to provision a channel
opening with using a new field `FundUpToMaxAmt` on the
`Request` struct. Also adds a new coin select function
`CoinSelectUpToAmount` to select coins up to a maximum
amount respecting a minimum amount.
Adds handling of the `FundMax` field when parsing an
`OpenChannelRequest` with `rpcServer.parseOpenChannelReq`.
In this commit, we fix a bug that would cause the walletrpc on the
simnet chain to not be able to respond to all RPC calls. The issue is
that for the SimNet backend, within chainparams.go:
https://github.com/lightningnetwork/lnd/blob/6e0a67d05bd375c4b39db53dc45df74157227a57/chainreg/chainparams.go#L45-L51,
we set a new CoinType for Simnet in order to match the RegTest value.

Later on, when we go to verify the on disk accounts against the
in-memory cointype, we fall through to an error case as the in-memory
cointype is 115, while the on disk cointype is 1.

To fix this, when we know we're doing simnet mode, we'll override the
cointype similar to the way we did/do for LTC.

Fixes lightningnetwork#6807.
With this commit we update the docs according to the latest changes that
were necessary to support loop and pool (which requires all 255
internally used accounts to be imported at wallet creation time).

Fixes lightningnetwork#7567.
The default allocation of 500 bytes for the script that is
used in NewScriptBuilder is way too much for most of our scripts.
With the new functional option we can tune the allocation to exactly
what we need.
guggero and others added 22 commits April 18, 2023 18:27
With this commit we give the funding manager the ability to inform the
switch about custom channel policies, right after we've announced the
channel to the network.
This change is necessary because before lightningnetwork#6753 a channel could only be
opened with the default forwarding policies, so the switch automatically
had the "correct" default values. Since lightningnetwork#6753 added the ability to
specify forwarding policies at channel open time, we announced those
policies to the network but never updated the switch to inform it about
the changed policies (previously changing the policies was only possible
through the UpdateChannelPolicy RPC which did call the switch).
This recently added file didn't follow the golang naming convention for
tests.
This commit enhances the custom fee policy channel open test by adding a
second channel and testing forwarding payments through the channel with
the custom forwarding policies.
This was able to reproduce the bug reported in lightningnetwork#5796 which was fixed in
a previous commit of this PR.
The right way to solve the problem of the link not being up to date with
custom user set forwarding policies once the channel is announced would
be to pass in those custom values when the link is created initially.
This requires a bit more of a refactor and is not addressed in this bug
fix.
This commit adds a mempool notifier which notifies the subscriber the
spending event found in the mempool for a given input.
This commit changes the `subscribedInputs` to store a map of subscribers
so multiple subscribers are allowed to receive events from the same
outpoint.
This commit adds the method `UnsubscribeEvent` to cancel a single
subscription.
This commit adds the mempool watcher to bitcoind notifier to allow the
notifier managing the starting and stopping of the watcher.
This commit adds the mempool watcher to btcd notifier to allow the
notifier managing the starting and stopping of the watcher.
This commit adds the interface `MempoolWatcher` and uses it in the chain
registry.
Also fixes the docs and rename `isSuccessSpend` to `isPreimageSpend`.
This commit extends the current htlc timeout resolver to also watch for
preimage spend in mempool for a full node backend.

If mempool enabled, the resolver will watch the spend of the htlc output
in mempool and blocks **concurrently**, as if they are independent.

Ideally, a transaction will first appear in mempool then in a block.
However, there's no guarantee it will appear in **our** mempool since
there's no global mempool, thus we need to watch the spend in two places
in case it doesn't go through our mempool.

The current design favors the spend event found in blocks, that is, when
the tx is confirmed, we'd abort the monitoring and conitnue since the
outpoint cannot be double spent and re-appear in mempool again. This is
not true in the rare case of reorg, and we will handle reorg seperately.
This commit removes the subscribed inputs from mempool notifier when the
relevant transaction is confirmed.
This commit adds more debug logs for witness beacon and channel
arbitrator.
Copy link
Copy Markdown
Member

@yyforyongyu yyforyongyu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM🙏

Copy link
Copy Markdown
Collaborator

@guggero guggero left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🎉

Just leaving a note here that #7442 didn't add any functionality (docs only) and added their release notes to the 0.16.0 file. Maybe we should move those notes to 0.16.1 to avoid confusion?

Also, we might want to include #7613 as well (or could also be in RC2).

ellemouton and others added 3 commits April 19, 2023 11:29
In this commit, a bug is fixed in the funding manager that could result
in the funding process erroring out if the persisted initial forwarding
policy is not found. This could occur if a node restarts after opening a
channel that is not yet fully confirmed and also upgrades their node
from a pre-0.16 version to 0.16 since the values are only expected to be
persisted after 0.16.
@Roasbeef Roasbeef merged commit e808e91 into lightningnetwork:v0-16-1-branch-rc1 Apr 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants