Releases: ElementsProject/lightning
v0.9.2 Now with 0-of-N Multisig
We're pleased to announce the 0.9.2 release of c-lightning, named by Sergi Delgado.
This is a significant release with new CLI-level notifications, better channel state reporting, and stable plugin-hook call ordering.
Note that as of this release c-lightning-generated PSBTs are only considered valid by bitcoind v0.20.1 and above.
Did you know: c-lightning deprecates features with 6 months warning, and you can set allow-deprecated-apis=false
to test?
Highlights for Users
- We now keep track of channel closure rationales. Wonder "why did my channel close" no more. All channel state changes are now listed in
listpeers
'sstate_changes
. - NEW CLI/RPC notifications! Tired of waiting for
close
to finish without getting any updates? With notifications, theclose
command will publish notifications (think CLI status updates) for slow closes. Must haveallow-deprecated-apis
set to false for these to work. - New optional argument
commitment_feerate
on themultifundchannel
command. This is useful for setting one feerate for the funding transaction and another for the channel commitment transactions. - Two new commands added to
hsmtool
!generatehsm
allows you to create an HSMhsm_secret
from a BIP39 pass phrase. (Note that due to c-lightning's current seed derivation process, wallet addresses aren't standard 'BIP39 to BIP32' compliant. Which is a fancy way of saying your pass phrase isn't portable to other, non-clightning wallets.)dumponchaindescriptors
will output the xpub for the HD wallet master key. This will let you track swept c-lightning wallet funds -- anchor outputs and unswept channel outputs won't be visible until swept.
- The starting feerate for mutual closes has been reduced to 'slow', to avoid overpayment.
- In-memory log buffer now is 10MB, down from 100MB.
Highlights for the Network
- We no longer support receiving full gossip from ancient LND nodes
- Fixed re-transmission order of multiple new HTLCS. This was causing channel closures with LND.
Highlights for Developers
- Plugin hook call ordering. Hooks can now specify that they must be called 'before' or 'after' other plugins.
- pyln-client will handle and send RPC command notifications.
- pyln-proto now includes a pure python implementation of the sphinx onion creation and processing.
- PostgresSQL key-value DSNs now supported.
- Plugin hook
htlc_accepted
can now return a customfailure_onion
.
More details can be found at https://github.com/ElementsProject/lightning/blob/v0.9.2/CHANGELOG.md
Thanks to everyone for their contributions and bug reports; please keep them coming.
Since 0.9.1, we've had 321 commits from 15 different authors over ~58 days, an average commit rate of 5.5344 commits per day.
A special thanks goes to the 4 first time contributors:
- YOSHIDA Masanori @siburu
- @grubles
- Jordi Montes @positiveblue
- @lakshit24
Cheers,
Lisa, Christian, Rusty, ZmnSCPxj
v0.9.1: The Antiguan BTC Maximalist Society
We're pleased to announce the 0.9.1 release of c-lightning, named by Jon Griffiths.
This is a significant release with major bugfixes to multi-part payments and various notable speedups and improvements across the board.
Did you know: c-lightning deprecates features with 6 months warning, and you can set allow-deprecated-apis=false
to test?
Highlights for Users
- The sending of multi-part payments has seen a lot of work, covering more corner cases and generally becoming much more robust.
- New official plugins create commands
multiwithdraw
andmultifundchannel
to easily produce a single transaction which does more than one thing; these use the PSBT plumbing created for v0.9.0. - We produce far less log spam when log-level is set to
debug
, so if you've avoided setting that before, I recommend trying now. - Startup checks that bitcoind is the correct version, and relays transactions
- Builtin plugins are now nominated as important, and you can nominate others as important too. The daemon will stop if these fail.
- You can now build a postgres-only installation, without sqlite3.
Highlights for the Network
- Our invoices now supply more than one routehint if we think you'll need to use multi-part-payments.
- We prune channels which are not updated in both directions every 2 weeks.
- Our default CTLV expiry has increased to 34 blocks, or 18 if we're the final node, as per updated specification recommendations (lightning/bolts#785)
Highlights for Developers
- PSBT APIs fleshed out with
utxopsbt
and locktime arguments. - Plugins can easily mark commands and options deprecated.
- The new
channel_state_changed
notification lets plugins easily track channel behavior.
More details can be found at https://github.com/ElementsProject/lightning/blob/v0.9.1/CHANGELOG.md
Thanks to everyone for their contributions and bug reports; please keep them coming.
Since 0.9.0, we've had 391 commits commits from 15 different authors.
A special thanks goes to the 3 first time contributors:
- Matt Whitlock @whitslack
- Sergi Delgado Segura @sr-gi
- Moller40 @Moller40
Cheers,
Christian, Rusty, ZmnSCPxj, and Lisa
v0.9.0-1: (Still) Rat Poison Squared on Steroids
This is a point release addressing some minor issues that slipped through with
the v0.9.0 release, mainly due to the rewrite of the pay
plugin for
multi-part payment support.
For details on the changes included in this point release please refer to the
tracking issue #3928. We suggest upgrading to this version if:
- You are using a wallet that shows incorrect information due to missing
fields in the RPC responses. - Larger payments above 10,000 satoshis to non-public nodes fail due to the
destination being unreachable.
We apologize for the inconvenience, and thank the community for the extensive
testing and feedback so far.
-- Christian
v0.9.0: Rat Poison Squared on Steroids
We're pleased to announce the 0.9.0 release of c-lightning, named by Sebastian Falbesoner.
This is a major release and includes new features, new integrations as well as
major internal refactorings facilitating extensions and future developments.
Highlights for Users
- We can now send multi-part payments as well as keysend spontaneous payments. This complements the support to receive these payments introduced in an earlier release.
- Large payments will now be split automatically into multiple parts that are more likely to succeed right away, and better protect your privacy.
- Should a payment not succeed at first we will adaptively split the amount and retry.
- We added support for watchtower plugins that help protect the node's funds while the node is not currently connected to the network.
Highlights for the Network
- Support for optional fields in some messages has been removed, reducing complexity and replacing them with the more modern TLV extensions
- Splitting payments into smaller parts with MPP increases the traffic on the network and improves privacy by making payments look more homogenous. The added traffic provides cover for other payments.
Highlights for Developers
- Extensible payment flow framework in
libplugin
allowing developers to write custom extensions without having to reinvent the wheel. - Added RPC methods to create, sign and send PSBT transactions allowing c-lightning to be better integrated with wallets and higher-level protocols, such as coin-join and dual-funding.
- Added RPC methods to reserve and unreserve outputs controlled by the node to complement the PSBT support, for multi-step protocols.
- Added extensive accounting support in the form of the
coin_movement
hook that reports any change in the funds controlled by the node. - Refactored the internals to use PSBT everywhere, leveraging
libwally
- A number of new hooks and notifications were added to the plugin interface to allow deeper integration with c-lightning
More details can be found at https://github.com/ElementsProject/lightning/blob/v0.9.0/CHANGELOG.md
Thanks to everyone for their contributions and bug reports; please keep them coming.
Since 0.8.2, we've had 523 commits from 21 different authors.
A special thanks goes to the 8 first time contributors:
- Aiden McClelland @dr-bonez
- Candle @CandleHater
- Joe Miyamoto @joe.miyamoto
- Michal Rostecki @mrostecki
- Reza @rbndg
- Sebastian Falbesoner @theStack
- Vincenzo Palazzo @vincenzopalazzo
- @mb300sd
Cheers,
Christian, Rusty, ZmnSCPxj, and Lisa
v0.9.0rc4
v0.9.0rc3
v0.9.0rc2
v0.9.0rc1
v0.8.2.1: (Still) Scaling the Ethereum Blockchain
This is a point release, with a single change: it makes large-channels
compatible with Eclair (and, incompatible with v0.8.2 c-lightning), as reported by @mb300sd in #3703.
- If you never enabled
large-channels
in your configuration file, this is exactly the same as v0.8.2. - If you did, you won't be able to open any channels with large-channel-supporting Eclair node (e.g. Bitrefill) using v0.8.2: they will get an error when they try to announce. You need to upgrade to v0.8.2.1.
- If you already have large channels (i.e. between c-lightning nodes), they'll continue to work just fine.
We apologize for the mistake, and we are (too slowly) developing protocol tests to ensure this kind of issue does not occur in future.
v0.8.2
v0.8.2 Scaling the Ethereum Blockchain
We're pleased to announce the 0.8.2 release of c-lightning, named by @arowser.
This is a minor release and includes a few new and experimental features, as well as bug-fixes and performance wins.
Highlights for Users
- New config option
--large-channels
(also known as 'wumbo') which enables opening channels of any size. (Note that your peer must also support large channels.) - This release includes a
keysend
plugin, which will enable receiving 'keysend' payments, as first introduced by Lightning Labs. Note that the included keysend plugin is receive only for this release. Nodes which do not want the hassle of spontaneous unrequested payments should add 'disable-plugin=keysend' to their config! - We'll now announce multiple connection endpoints for a single 'type', e.g. multiple IPv4 addresses.
- A new FAQ!
- Big performance improvment in the
pay
command (~1s speedup on average)
Highlights for the Network
- c-lightning nodes can now participate in creating larger channels (with the --large-channel config option).
- We now wait until the first payment through a channel before updating the feerate; this should help with some spurious closures at channel open or re-connect that were occurring against older versions of other implementations.
Highlights for Developers
- A new command
getsharedsecret
for getting the BOLT-compliant shared secret finding for a node and a point. - The API for the 'Bitcoin backend' plugin infrastructure has been documented!
- Facilities for building rendez-vous compatible onions has been added to the
onion
devtool - Plugin
options
will now respect the type they were given in the manifest. - Fixes with plugin cleanups and hangs.
- Python2 has been removed as a dependence.
More details can be found at https://github.com/ElementsProject/lightning/blob/v0.8.2/CHANGELOG.md
Thanks to everyone for their contributions and bug reports; please keep them coming.
Since 0.8.1, we've had 236 commits from 10 different authors, with 2 first time contributors:
- Dr. Maxim Orlovsky @dr-orlovsky
- Dave Scotese @dscotese
Cheers,
Lisa, Christian, Rusty, and ZmnSCPxj