Releases: ElementsProject/lightning
v25.09.3 Hot Wallet Guardian
v25.09.3 Hot Wallet Guardian IV
Fixed
- Docker image was missing SQLite library
See the changelog for a full list.
Thank you to the valuable Core Lightning open source community for your ongoing contributions.
And as always, thank you to the Core Lightning team:
@rustyrussell, @ShahanaFarooqui, @endothermicdev, @sangbida, @cdecker, @nepet, @Lagrang3, @niftynei and @madelinevibes
v25.09.2 Hot Wallet Guardian
v25.09.2 Hot Wallet Guardian II
Bookkeeper and xpay users: please upgrade! This point release includes fixes for xpay, bookkeeper and optimisations for large nodes using bookkeeper.
Changed
- Bookkeeper reduced logging for large imports to increase speed.
- SQL initial load for tables is much faster (e.g 82 to 17 seconds for very large channelmoves table).
Fixed
- Core lightning builds for Ubuntu Focal, Jammy and Noble are deterministic again.
- Bookkeeper first invocation after migration from prior to 25.09 with very large databases will not crash.
- xpay payment parts status will not be pending in failure cases (as seen in listpays or listsendpays).
- Askrene would not enter an infinite loop.
- bcli would fail with "Argument list too long" when sending a giant tx.
- Dealing with giant PSBTs (700 inputs!) is now much faster.
- Assertion crash in bookkeeper when fresh records arrive while multiple queries in progress.
- Bookkeeper now correctly restores chain event blockheights it has derived.
See the changelog for a full list.
Thank you to the valuable Core Lightning open source community for your ongoing contributions.
And as always, thank you to the Core Lightning team:
@rustyrussell, @ShahanaFarooqui, @endothermicdev, @sangbida, @cdecker, @nepet, @Lagrang3 and @niftynei
v25.09.1 Hot Wallet Guardian
v25.09.1 Hot Wallet Guardian II
Several important fixes have been addressed in this release, please upgrade!
bookkeeper: failed reload of rebalances on restart- JSON-RPC:
listchainmovescould contain bogus duplicate entries after 25.09 bookkeeper migration - Fixed compilation on all target architectures; each had their own bugs (poetry, missing packages...)
lightningd: potential crash when we receive a malformed onion complain from our first peer when using sendonion / injectpaymentonion- Fixed the db: migration time to help with reasonable size account databases
- We now build on MacOS without errors on the latest Command Line Tools (macOS 15 SDK)
- Added gossip_store recovery for filesystems which do not synchronize read and write (e.g. ZFS on Linux), by disabling mmap reads and rewriting the last records in gossipd
- Improved build time and reduces the Docker image size
See the changelog for a full list.
Note: the clnrest plugin inside the Ubuntu binary builds are not reproducible, because of #8547 (which will be in the next release). The binary changes between builds are minimal and have been validated by hand for this release.
Thank you to the valuable Core Lightning open source community for your ongoing contributions.
And as always, thank you to the Core Lightning team:
@rustyrussell, @ShahanaFarooqui, @endothermicdev, @sangbida, @cdecker, @nepet, @Lagrang3 and @niftynei
v25.09 Hot Wallet Guardian
Core Lightning v25.09
This release has been named by @king-11.
Note: release schedule moved one month: this is v25.09, and all deprecations incremented accordingly
Highlights for Users
- bookkeeper has been migrated into core lightning, allowing visibility into payments, fees and channel activities.
xpaycan now directly pay BIP353 addresses (like ₿cln@blockstream.com) and simple offers without extra steps.fetchinvoiceis now more reliable.- Better feedback when channel creation fails due to capacity limits.
- New browser tool for viewing CLN log files.
- Rust-based wss-proxy with better multi-address support.
- Now limiting the number of parts a payment can be split on
xpayand askrene
Highlights for Developers
- bookkeeper plugin functionality is now integrated into Core Lightning with native listchainmoves and listchannelmoves commands, unified database storage, SQL query support, and real-time notifications for better financial auditability.
- Reckless now supports the modern uv package manager for Python plugins.
- Speaking of uv, we've transitioned away from poetry, now using uv.
- getroutes now accepts maxparts parameter to limit payment splitting for better route control.
- Flexible API responses - clnrest can return data in XML, YAML, or form-encoded formats beyond JSON.
- libplugin now allows synchronous calls at any time.
- Improvements to the rate of feasible solutions found in the main loop of the solver on askrene
- To increase the runtime, we've refactored the minimum cost flow solver, pruning some network arcs and reducing the internal unit of account.
Protocol Updates
- Splicing improvements allow for better compatibility with Eclair and continuous routing during channel modifications.
- Improve security by ensuring all peers must support channel type.
- Payment secrets now mandatory in BOLT11 invoices for better payment protection.
See the changelog for full details
Since 25.05 we’ve had 321 commits in 76 days by 16 authors
A special thanks to the four first time contributors:
@Chand-ra
@sangbida
@MicahMaphet
@longhutianjie
An enormous thanks to the Core Lightning team:
@rustyrussell, @ShahanaFarooqui, @endothermicdev, @cdecker, @nepet, @Lagrang3, @sangbida and @niftynei
v25.09rc4 Hot Wallet Guardian
Release Candidate 3 for Core Lightning v25.09
This release has been named by @king-11.
Note: release schedule moved one month: this is v25.09, and all deprecations incremented accordingly
Highlights for Users
- bookkeeper has been migrated into core lightning, allowing visibility into payments, fees and channel activities.
- xpay can now directly pay BIP353 addresses (like ₿user@domain.com) and simple offers without extra steps.
- fetchinvoice is now more reliable.
- Better feedback when channel creation fails due to capacity limits.
- New browser tool for viewing CLN log files.
- Rust-based wss-proxy with better multi-address support.
- Now limiting the number of parts a payment can be split on xpay and askrene
Highlights for Developers
- bookkeeper plugin functionality is now integrated into Core Lightning with native listchainmoves and listchannelmoves commands, unified database storage, SQL query support, and real-time notifications for better financial auditability.
- Reckless now supports the modern uv package manager for Python plugins.
- Speaking of uv, we've transitioned away from poetry, now using uv.
- getroutes now accepts maxparts parameter to limit payment splitting for better route control.
- Flexible API responses - clnrest can return data in XML, YAML, or form-encoded formats beyond JSON.
- libplugin now allows synchronous calls at any time.
- Improvements to the rate of feasible solutions found in the main loop of the solver on askrene
- To increase the runtime, we've refactored the minimum cost flow solver, pruning some network arcs and reducing the internal unit of account.
Protocol Updates
- Splicing improvements allow for better compatibility with Eclair and continuous routing during channel modifications.
- Improve security by ensuring all peers must support channel type.
- Payment secrets now mandatory in BOLT11 invoices for better payment protection.
Since 25.05 we’ve had 300 commits in 64 days by 16 authors
A special thanks to the four first time contributors:
@Chand-ra
@sangbida
@MicahMaphet
@longhutianjie
An enormous thanks to the Core Lightning team:
@rustyrussell, @ShahanaFarooqui, @endothermicdev, @cdecker, @nepet, @Lagrang3, @sangbida and @niftynei
v25.09rc3 Hot Wallet Guardian
Release Candidate 3 for Core Lightning v25.09
This release has been named by @king-11.
Note: release schedule moved one month: this is v25.09, and all deprecations incremented accordingly
Highlights for Users
- bookkeeper has been migrated into core lightning, allowing visibility into payments, fees and channel activities.
- xpay can now directly pay BIP353 addresses (like ₿user@domain.com) and simple offers without extra steps.
- fetchinvoice is now more reliable.
- Better feedback when channel creation fails due to capacity limits.
- New browser tool for viewing CLN log files.
- Rust-based wss-proxy with better multi-address support.
- Now limiting the number of parts a payment can be split on xpay and askrene
Highlights for Developers
- bookkeeper plugin functionality is now integrated into Core Lightning with native listchainmoves and listchannelmoves commands, unified database storage, SQL query support, and real-time notifications for better financial auditability.
- Reckless now supports the modern uv package manager for Python plugins.
- Speaking of uv, we've transitioned away from poetry, now using uv.
- getroutes now accepts maxparts parameter to limit payment splitting for better route control.
- Flexible API responses - clnrest can return data in XML, YAML, or form-encoded formats beyond JSON.
- libplugin now allows synchronous calls at any time.
- Improvements to the rate of feasible solutions found in the main loop of the solver on askrene
- To increase the runtime, we've refactored the minimum cost flow solver, pruning some network arcs and reducing the internal unit of account.
Protocol Updates
- Splicing improvements allow for better compatibility with Eclair and continuous routing during channel modifications.
- Improve security by ensuring all peers must support channel type.
- Payment secrets now mandatory in BOLT11 invoices for better payment protection.
Since 25.05 we’ve had 300 commits in 64 days by 16 authors
A special thanks to the four first time contributors:
@Chand-ra
@sangbida
@MicahMaphet
@longhutianjie
An enormous thanks to the Core Lightning team:
@rustyrussell, @ShahanaFarooqui, @endothermicdev, @cdecker, @nepet, @Lagrang3, @sangbida and @niftynei
v25.09rc2 Hot Wallet Guardian
Release Candidate 2 for Core Lightning v25.09
This release has been named by @king-11.
Note: release schedule moved one month: this is v25.09, and all deprecations incremented accordingly
Highlights for Users
- bookkeeper has been migrated into core lightning, allowing visibility into payments, fees and channel activities.
- xpay can now directly pay BIP353 addresses (like ₿user@domain.com) and simple offers without extra steps.
- fetchinvoice is now more reliable.
- Better feedback when channel creation fails due to capacity limits.
- New browser tool for viewing CLN log files.
- Rust-based wss-proxy with better multi-address support.
- Now limiting the number of parts a payment can be split on xpay and askrene
Highlights for Developers
- bookkeeper plugin functionality is now integrated into Core Lightning with native listchainmoves and listchannelmoves commands, unified database storage, SQL query support, and real-time notifications for better financial auditability.
- Reckless now supports the modern uv package manager for Python plugins.
- Speaking of uv, we've transitioned away from poetry, now using uv.
- getroutes now accepts maxparts parameter to limit payment splitting for better route control.
- Flexible API responses - clnrest can return data in XML, YAML, or form-encoded formats beyond JSON.
- libplugin now allows synchronous calls at any time.
- Improvements to the rate of feasible solutions found in the main loop of the solver on askrene
- To increase the runtime, we've refactored the minimum cost flow solver, pruning some network arcs and reducing the internal unit of account.
Protocol Updates
- Splicing improvements allow for better compatibility with Eclair and continuous routing during channel modifications.
- Improve security by ensuring all peers must support channel type.
- Payment secrets now mandatory in BOLT11 invoices for better payment protection.
Since 25.05 we’ve had 300 commits in 64 days by 16 authors
A special thanks to the four first time contributors:
@Chand-ra
@sangbida
@MicahMaphet
@longhutianjie
An enormous thanks to the Core Lightning team:
@rustyrussell, @ShahanaFarooqui, @endothermicdev, @cdecker, @nepet, @Lagrang3, @sangbida and @niftynei
v25.09rc1 Hot Wallet Guardian
Release Candidate for Core Lightning v25.09
This release has been named by @king-11.
Note: release schedule moved one month: this is v25.09, and all deprecations incremented accordingly
Highlights for Users
bookkeeperhas been migrated into core lightning, allowing visibility into payments, fees and channel activities.xpaycan now directly pay BIP353 addresses (like ₿user@domain.com) and simple offers without extra steps.fetchinvoiceis now more reliable.- Better feedback when channel creation fails due to capacity limits.
- New browser tool for viewing CLN log files.
- Rust-based
wss-proxywith better multi-address support. - Now limiting the number of parts a payment can be split on
xpayandaskrene
Highlights for Developers
bookkeeperplugin functionality is now integrated into Core Lightning with nativelistchainmovesandlistchannelmovescommands, unified database storage, SQL query support, and real-time notifications for better financial auditability.Recklessnow supports the modernuvpackage manager for Python plugins.- Speaking of
uv, we've transitioned away frompoetry, now usinguv. getroutesnow acceptsmaxpartsparameter to limit payment splitting for better route control.- Flexible API responses -
clnrestcan return data in XML, YAML, or form-encoded formats beyond JSON. libpluginnow allows synchronous calls at any time.- Improvements to the rate of feasible solutions found in the main loop of the solver on
askrene - To increase the runtime, we've refactored the minimum cost flow solver, pruning some network arcs and reducing the internal unit of account.
Protocol Updates
- Splicing improvements allow for better compatibility with Eclair and continuous routing during channel modifications.
- Improve security by ensuring all peers must support channel type.
- Payment secrets now mandatory in BOLT11 invoices for better payment protection.
Since 25.05 we’ve had 300 commits in 64 days by 16 authors
A special thanks to the four first time contributors:
@Chand-ra
@sangbida
@MicahMaphet
@longhutianjie
An enormous thanks to the Core Lightning team:
@rustyrussell, @ShahanaFarooqui, @endothermicdev, @cdecker, @nepet, @Lagrang3, @sangbida and @niftynei
v25.05 - Satoshi's OP_RETURN Opinion
This release named by @nepet.
WARNING: Due to experimental protocol upgrades, --experimental-splicing is incompatible with previous CLN versions! You will not be able to reestablish channels with older nodes at all, if this is enabled! If you have CLN peers with the experimental splicing feature, consider disabling this option until they upgrade to support the latest draft spec.
Features for Users
- Reduced latency of commit and revoke messages.
- Reckless can update existing reckless-installed plugins via
reckless update. - Fixed routing of AskRene via high capacity channels.
- More accurate anchor fees.
Features for Developers
listhtlcspagination support withindex,startandendparameters.- The
waitapi now supports thelisthtlcssubsystem. - The beginnings of LSPS client and server plugins so far implementing the LSPS0 transport protocol.
- New
signmessagewithkeyrpc to sign input messages with our wallet keys sendonionis now compatible withsendpaywith addition oftotal_amount_msatparameter.
Protocol Updates
- Peer storage graduates from experimental to default feature while bringing performance improvements.
- Splicing interoperability with Eclair and splice RBF capability.
Since 25.02, we've had 338 commits in 103 days by 22 authors, including five new ones:
- Erick Cestari
- Zen
- Jiri Jakes
- Boris Nagaev
- 21M4TW
See the changelog for full details.
Thank you from the Core Lightning Team:
@endothermicdev, @rustyrussell, @cdecker, @nepet, @ShahanaFarooqui, and @niftynei.
v25.05rc1
Release Candidate for Core Lightning v25.05
Features for Users
- Reduced latency of commit and revoke messages.
- Reckless can update existing reckless-installed plugins via
reckless update. - Fixed routing of AskRene via high capacity channels.
- More accurate anchor fees.
Features for Developers
listhtlcspagination support withindex,startandendparameters.- The
waitapi now supports thelisthtlcssubsystem. - The beginnings of LSPS client and server plugins so far implementing the LSPS0 transport protocol.
- New
signmessagewithkeyrpc to sign input messages with our wallet keys sendonionis now compatible withsendpaywith addition oftotal_amount_msatparameter.
Protocol Updates
- Peer storage graduates from experimental to default feature while bringing performance improvements.
- Splicing interoperability with Eclair and splice RBF capability.
See the changelog for full details.
Thank you from the Core Lightning Team:
@endothermicdev, @rustyrussell, @cdecker, @nepet, @ShahanaFarooqui, and @niftynei.