lnd/docs/release-notes/release-notes-0.16.0.md
yyforyongyu 39b972afe0
golangci: update version to v1.50.1
This commit updates the tool `golangci-lint` to the latest version that
has fixed a bug in the linter `paralleltest`. Also `go mod tidy` is run
inside `tool`, and `nosnakecase` is disabled as it's deprecated.
2022-11-18 19:42:38 +08:00

12 KiB

Release Notes

BOLT Specs

  • Warning messages from peers are now recognized and logged by lnd.

RPC

  • The RegisterConfirmationsNtfn call of the chainnotifier RPC sub-server now optionally supports returning the entire block that confirmed the transaction.

  • Add macaroon_root_key field to InitWalletRequest to allow specifying a root key for macaroons during wallet init rather than having lnd randomly generate one for you.

  • A new SignedInputs field is added to SignPsbtResponse that returns the indices of inputs that were signed by our wallet. Prior to this change SignPsbt didn't indicate whether the Psbt held any inputs for our wallet to sign.

  • Add list addresses RPC.

  • Add TrackPayments method to the RPC to allow subscribing to updates from any inflight payment. Similar to TrackPaymentV2, but for any inflight payment.

  • Catch and throw an error during openchannel if the local funding amount given is zero.

  • Extend the HTLC interceptor server implementation with watchdog functionality to cancel back HTLCs for which an interceptor client does not provide a resolution in time. If an HTLC expires, the counterparty will claim it back on-chain and the receiver will lose it. Therefore the receiver can just as well fail off-chain a few blocks before so that the channel is saved.

  • Make remote channel reserve amount configurable for openchannel

  • ForwardingHistory now enriches each forwarding event with inbound and outbound peer alias names if the new flag PeerAliasLookup in ForwardingHistoryRequest is set to true. lncli fwdinghistory enables this feature by default but adds a new flag skip_peer_alias_lookup to skip the lookup.

  • The graph lookups method DescribeGraph, GetNodeInfo and GetChanInfo now expose tlv data that is broadcast over the gossip network.

  • Add new HTLC notifier event and lookup RPC for the final settlement of incoming HTLCs. This allows applications to wait for the HTLC to actually disappear from all valid commitment transactions, rather than assume that it will. With the new extensions, situations can be avoided where the application considers an HTLC settled, but in reality the HTLC has timed out.

    Final resolution data will only be available for htlcs that are resolved after upgrading lnd.

  • Zero-amount private invoices now provide hop hints, up to maxHopHints (20 currently).

Wallet

Build

The project has updated to Go 1.19! Go 1.18 is now the minimum version needed to build the project.

The minimum recommended version of the Go 1.19.x series is 1.19.2 because 1.19.1 contained a bug that affected lnd and resulted in a crash.

Use Go's runtime/debug package to get information about the build

A wire parsing bug has been fixed that would cause lnd to be unable decode certain large transactions.

Misc

lncli

Code Health

Watchtowers

Tooling and documentation

Integration test

The lntest has been refactored to provide a better testing suite for writing integration tests. A new defined structure is implemented, please refer to README for more details. Along the way, several PRs(6776, 6822) have been made to refactor the itest for code health and maintenance.

Contributors (Alphabetical Order)

  • Alejandro Pedraza
  • andreihod
  • Antoni Spaanderman
  • Carla Kirk-Cohen
  • Conner Babinchak
  • cutiful
  • Daniel McNally
  • Elle Mouton
  • ErikEk
  • Eugene Siegel
  • Graham Krizek
  • hieblmi
  • Jesse de Wit
  • Joost Jager
  • Jordi Montes
  • lsunsi
  • Matt Morehouse
  • Michael Street
  • Jordi Montes
  • Olaoluwa Osuntokun
  • Oliver Gugger
  • Priyansh Rastogi
  • Roei Erez
  • Yong Yu