lnd/docs/release-notes/release-notes-0.17.0.md
2023-07-24 13:07:01 +02:00

9.0 KiB

Release Notes

DB

Watchtowers

Misc

RPC

  • SendOutputs now adheres to the anchor channel reserve requirement.

  • Enforce provided fee rate is no less than the relay or minimum mempool fee when calling OpenChannel, CloseChannel, SendCoins, and SendMany.

  • The UpdateNodeAnnouncement API can no longer be used to set/unset protocol features that are defined by LND.

  • Neutrinorpc getblockhash has been deprecated. Endpoint has been moved to the chainrpc sub-server.

    Custom node announcement feature bits can also be specified in config using the dev build tag and --protocol.custom-nodeann, --protocol.custom-init and --protocol.custom-invoice flags to set feature bits for various feature "sets", as defined in BOLT 9.

  • OpenChannel now accepts an optional memo argument for specifying a helpful note-to-self containing arbitrary useful information about the channel.

  • PendingOpenChannel now has the field funding_expiry_blocks that indicates the number of blocks until the funding transaction is considered expired.

  • gRPC keepalive parameters can now be set in the configuration. The lnd configuration settings grpc.server-ping-time and grpc.server-ping-timeout configure how often lnd pings its clients and how long a pong response is allowed to take. The default values for there settings are improved over the gRPC protocol internal default values, so most users won't need to change those. The grpc.client-ping-min-wait setting defines how often a client is allowed to ping lnd to check for connection healthiness. The lnd default value of 5 seconds is much lower than the previously used protocol internal value, which means clients can now check connection health more often. For this to be activated on the client side, gRPC clients are encouraged to set the keepalive setting on their end as well (using the grpc.keepalive_time_ms option in JavaScript or Python, or the equivalent setting in the gRPC library they are using, might be an environment variable or a different syntax depending on the programming language used) when creating long open streams over a network topology that might silently fail connections. A value of grpc.keepalive_time_ms=5100 is recommended on the client side (adding 100ms to account for slightly different clock speeds).

  • Fixed a bug where we didn't check for correct networks when submitting onchain transactions.

  • Fix non-deterministic behaviour in RPC calls for custom accounts. In theory, it should be only one custom account with a given name. However, due to a lack of check, users could have created custom accounts with various key scopes. The non-deterministic behaviours linked to this case are fixed, and users can no longer create two custom accounts with the same name.

  • OpenChannel adds a new utxo flag that allows the specification of multiple UTXOs as a basis for funding a channel opening.

Misc

Code Health

Testing

lncli

  • Added ability to use ENV variables to override lncli global flags. Flags will have preference over ENVs.

  • The lncli sendcoins command now asks for manual confirmation when invoked on the command line. This can be skipped by adding the --force (or -f) flag, similar to how lncli payinvoice works. To not break any existing scripts the confirmation is also skipped if stdout is not a terminal/tty (e.g. when capturing the output in a shell script variable or piping the output to another program).

Bug Fix

Tooling and documentation

Contributors (Alphabetical Order)

  • Aljaz Ceru
  • BhhagBoseDK
  • Carla Kirk-Cohen
  • Daniel McNally
  • Elle Mouton
  • Erik Arvstedt
  • ErikEk
  • gabbyprecious
  • Guillermo Caracuel
  • Hampus Sjöberg
  • hieblmi
  • Jordi Montes
  • Keagan McClelland
  • Konstantin Nick
  • Lele Calo
  • Matt Morehouse
  • Maxwell Sayles
  • Michael Street
  • MG-ng
  • Oliver Gugger
  • Pierre Beugnet
  • Satarupa Deb
  • Shaurya Arora
  • Torkel Rogstad
  • Yong Yu
  • ziggie1984
  • zx9r