Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v24.11rc1 #7868

Merged
merged 2 commits into from
Nov 26, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
24.08.1
24.11rc1
195 changes: 195 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,201 @@ All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## v24.11rc1 - 2024-11-26

This release named by Dusty Daemon.

### Added

- Documentation: Test script generates all RPC documentation examples now (so they should now stay accurate and complete). ([#7756])
- JSON-RPC: `listaddresses` to list issued addresses from the node. ([#7800])
- Config: `autoconnect-seeker-peers`, allowing seeker to reach out to new nodes for additional gossip (default: 10). ([#7798])
- Protocol: `option_quiesce` enabled by default. ([#7586])
- JSON-RPC: `fetchinvoice` allows setting invreq_metadata via `payer_metadata` parameter. ([#7786])
- hsmtool: generatehsm can run non-interactive, taking options on the cmdline. ([#7102])
- Plugins: `pay` now has tracing support for various payment steps. ([#7803])
- JSON-RPC: `exposesecret` command for encouraging hsm_secret backups. ([#7647])
- JSON-RPC: `listpays` has `index`, `start` and `limit` parameters for listing control. ([#7385])
- Plugins: bookkeeper has a new RPC `bkpr-editdescriptionbypaymentid` which will update the description for any event with matching payment_id ([#7604])
- Config: `grpc-host` option for grpc plugin ([#7479])
- JSON-RPC: A new magic `dev-splice` command is added that can take a ‘splice script’ or json payload and perform any complex splice across multiple channels merging the result into a single transaction. Some features are disabled and will be added in time. ([#6980])
- JSON-RPC: low-level RPC command `addpsbtinput` to fund PSBTs directly and help with complex splices & dual-opens. ([#6980])
- JSON-RPC: `stfu_channels` and `abort_channels` are added for bulk multi-channel splice commands. These allow the user to pause (and resume) multiple channels in place. ([#6980])
- JSON-RPC: `injectpaymentonion` for initiating an HTLC like a peer would do. ([#7749])
- Documentation: Example documentation on generating custom gRPC ([#7731])
- Installation: Nix users can now install CLN from the new flake. ([#7656])
- JSON-RPC: `decode` now used modern BOLT 4 language for blinded paths, `first_path_key`. ([#7586])
- Plugins: `onion_message_recv` and `onion_message_recv_secret` hooks now used modern BOLT 4 language for blinded paths, `first_path_key`. ([#7586])
- JSON-RPC: keysend `maxfee` parameter for consistency with pay. ([#7227]) ([#7653])
- `hsmtool`: `getnodeid` command derives the node id from the hsm_secret, to verify it's the correct secret. ([#7644])

## v24.11rc1 - 2024-11-26

This release named by Dusty Daemon.

### Added

- JSON-RPC: `listaddresses` to list issued addresses from the node. ([#7800])
- Config: `autoconnect-seeker-peers`, allowing seeker to reach out to new nodes for additional gossip (default: 10). ([#7798])
- Protocol: `option_quiesce` enabled by default. ([#7586])
- JSON-RPC: `fetchinvoice` allows setting invreq_metadata via `payer_metadata` parameter. ([#7786])
- hsmtool: generatehsm can run non-interactive, taking options on the cmdline. ([#7102])
- Plugins: `pay` now has tracing support for various payment steps. ([#7803])
- JSON-RPC: `exposesecret` command for encouraging hsm_secret backups. ([#7647])
- JSON-RPC: `listpays` has `index`, `start` and `limit` parameters for listing control. ([#7385])
- Plugins: bookkeeper has a new RPC `bkpr-editdescriptionbypaymentid` which will update the description for any event with matching payment_id ([#7604])
- Config: `grpc-host` option for grpc plugin ([#7479])
- JSON-RPC: A new magic `dev-splice` command is added that can take a ‘splice script’ or json payload and perform any complex splice across multiple channels merging the result into a single transaction. Some features are disabled and will be added in time. ([#6980])
- JSON-RPC: low-level RPC command `addpsbtinput` to fund PSBTs directly and help with complex splices & dual-opens. ([#6980])
- JSON-RPC: `stfu_channels` and `abort_channels` are added for bulk multi-channel splice commands. These allow the user to pause (and resume) multiple channels in place. ([#6980])
- JSON-RPC: `injectpaymentonion` for initiating an HTLC like a peer would do. ([#7749])
- Documentation: Example documentation on generating custom gRPC ([#7731])
- Installation: Nix users can now install CLN from the new flake. ([#7656])
- JSON-RPC: `decode` now used modern BOLT 4 language for blinded paths, `first_path_key`. ([#7586])
- Plugins: `onion_message_recv` and `onion_message_recv_secret` hooks now used modern BOLT 4 language for blinded paths, `first_path_key`. ([#7586])
- JSON-RPC: keysend `maxfee` parameter for consistency with pay. ([#7227]) ([#7653])
- `hsmtool`: `getnodeid` command derives the node id from the hsm_secret, to verify it's the correct secret. ([#7644])


### Changed

- Plugins: grpc now starts on port 9736 by default (localhost, see `grpc-host`) ([#7479])
- Config: bolt12 now enabled by default (finally!) ([#7833])
- Protocol: we now connect to additional nodes for improved gossip (see `autoconnect-seeker-peers`) ([#7798])
- Protocol: we now create a low-priority (2016 down to 12 blocks fee target) anchor for low-fee unilateral closes even if there's no urgency. ([#7832])
- Protocol: splicing moved from test numbers to spec numbers. ([#7719])
- Protocol: Support added for peers that wish to rotate their funding pubkey during a splice. ([#7719])
- Startup: reconnecting to peers at startup should be significantly faster (dependent on machine speed). ([#7630])
- Protocol: we remember the last successful address we connected to for important peers. ([#7630])
- Protocol: Gossipd requests a full sync from a random peer every hour. ([#7768])
- JSON-RPC: Improved error messaging for splice commands. ([#7719])
- JSON-RPC: built-in plugins can now be stopped using "plugin stop". ([#7799])
- Wallet: Taproot addresses are used for unilateral-close change addresses. ([#7800])
- JSON-RPC: `close` now outputs txs & txids of all closing transactions (splice candidates can cause there to be multiple). ([#7466])
- JSON-RPC: `splice_update` can in some cases now return the remotely partiall signed psbt to the user, if so `signtures_secured` will be true. ([#6980])
- JSON-RPC: `splice_signed` parameters are switched in order to make `channel_id` an optional parameter, enabling multi-splice-signatures. ([#6980])
- `pay`: Discarding an overly long or expensive route does not blocklist channels anymore. ([#7494])
- Plugins: `cln-grpc` Upgrade tonic version and ([#7598])


### Deprecated

Note: You should always set `allow-deprecated-apis=false` to test for changes.

- Config: `experimental-offers` (it's now the default). ([#7833])
- Config: `experimental-quiesce`: it's now the default. ([#7586])
- JSON-RPC: `close` `tx` and `txid` field (use `txs` and `txids`) ([#7466])
- JSON-RPC: `decodepay`: use `decode`. ([#7551])
- JSON-RPC: `decode` `blinding` in blinded path: use `first_path_key`. ([#7586])
- JSON-RPC: `onion_message_recv` and `onion_message_recv_secret` hooks `blinding` in blinded path: use `first_path_key`. ([#7586])


### Fixed

- JSON-RPC: `listforwards` `received-time` is always present (it could be missing for ancient nodes, now it will be 0) ([#7744])
- Plugins: `cln-grpc` now understands channel type `anchors/even` ([#7628])
- Plugins: `cln-grpc` no longer logs a warning if a notification does not have a handler ([#7867])
- JSON-RPC: `close` now correctly reports the txid of the remote onchain unilateral tx if it races with a peer close. ([#7593])
- Protocol: we no longer try to spend anchors if a commitment tx is already mined (reported by @niftynei). ([#7593])
- pyln-client: plugins now compatible with CLN <= 24.05 (broken in 24.08) ([#7852])
- Protocol: Receiving bolt12 payments where we have no public channels would fail a few blocks after startup. ([#7839])
- Protocol: entry to blinded paths returns more useful errors (e.g if it's the final node, you get a real error, otherwise you get invalid_onion_blinding). ([#7839])
- build: fix overzealous warning from clang 19. ([#7829])
- `gossipd` will no longer miss some channel closes on restart. ([#7343])
- `onchaind` can miss conclusion of final txs in some cases, will now replay independently. ([#7343])
- Plugins: `autoclean` is now gentler on the node when doing giant cleans. ([#7805])
- Plugins: libplugin plugins can now intercept `rpc_command` hook without deadlocking. ([#7750])
- Plugins: `pay`: debug logging now uses correct JSON ids. ([#7750])
- Tools: Fixed regtest directory location for giantnode script. ([#7791])
- JSON-RPC: `fetchinvoice` typo fixed about parameters name in err str ([#7787])
- Performance: `connectd` and `gossipd` message queues are much more efficient. ([#7767])
- Documentation: version strings in documentation should now be correvt ([#7694])
- Protocol: we could get confused on restart and not re-transmit our own channel_updates. ([#7737])
- connectd: crash on erroneous timeout. ([#7736])
- Performance: `pay` now only calls listpeerchannels once ([#7705])
- gossipd: crash errors with large gossip_store (>4MB) growth on longer-running nodes. ([#7729])
- Performance: `pay` pathfinding speedups for large nodes. ([#7726])
- Performance: `listchannels` performance improved on large nodes if deprecated options disabled (omitting call to `listpeerchannels`) ([#7704])
- pyln-testing: Fix file descriptor leak in bitcoind fixture. ([#7130]) ([#7669])
- JSON-RPC: `listpeerchannels` (and thus, pay) sped up on very large nodes. ([#7679])
- lightningd: no longer crash if a plugin dies during lightningd startup. ([#7673])
- cln-plugin: Change default log level filter back to INFO ([#7668])
- Logging: removed bogus "**BROKEN** plugin-topology: DEPRECATED API USED: listchannels.include_private" message. ([#7663])
- Documentation: schemas: Make description in `Wait(any)invoiceResponse` optional to handle BOLT12 ([#7667])
- Fixed intermittant bug where hsmd (particularly, but also lightningd) could use 100% CPU. ([#7661])
- Docker image created via github actions correctly reads the tag available on the HEAD. ([#7625])
- Build: Core lightning's version will not be suffixed with -modded anymore. ([#7625])


### EXPERIMENTAL

- Plugins: `cln-xpay`, with associated `xpay` command for payments (plans to replace `pay` in future). ([#7799])
- Config: option `xpay-handle-pay` can be used to call xpay when pay is used in many cases (but output is different from pay!) ([#7799])
- Plugins: `askrene` which provides `getroutes` and a complete API for adding information in layers. ([#7782])


[#7694]: https://github.com/ElementsProject/lightning/pull/7694
[#7644]: https://github.com/ElementsProject/lightning/pull/7644
[#7803]: https://github.com/ElementsProject/lightning/pull/7803
[#7782]: https://github.com/ElementsProject/lightning/pull/7782
[#7479]: https://github.com/ElementsProject/lightning/pull/7479
[#7705]: https://github.com/ElementsProject/lightning/pull/7705
[#7839]: https://github.com/ElementsProject/lightning/pull/7839
[#7551]: https://github.com/ElementsProject/lightning/pull/7551
[#7798]: https://github.com/ElementsProject/lightning/pull/7798
[#7647]: https://github.com/ElementsProject/lightning/pull/7647
[#7744]: https://github.com/ElementsProject/lightning/pull/7744
[#7832]: https://github.com/ElementsProject/lightning/pull/7832
[#7767]: https://github.com/ElementsProject/lightning/pull/7767
[#7768]: https://github.com/ElementsProject/lightning/pull/7768
[#7656]: https://github.com/ElementsProject/lightning/pull/7656
[#7604]: https://github.com/ElementsProject/lightning/pull/7604
[#7707]: https://github.com/ElementsProject/lightning/pull/7707
[#7750]: https://github.com/ElementsProject/lightning/pull/7750
[#7628]: https://github.com/ElementsProject/lightning/pull/7628
[#7343]: https://github.com/ElementsProject/lightning/pull/7343
[#7102]: https://github.com/ElementsProject/lightning/pull/7102
[#7731]: https://github.com/ElementsProject/lightning/pull/7731
[#7679]: https://github.com/ElementsProject/lightning/pull/7679
[#7673]: https://github.com/ElementsProject/lightning/pull/7673
[#7749]: https://github.com/ElementsProject/lightning/pull/7749
[#7668]: https://github.com/ElementsProject/lightning/pull/7668
[#7494]: https://github.com/ElementsProject/lightning/pull/7494
[#7786]: https://github.com/ElementsProject/lightning/pull/7786
[#7466]: https://github.com/ElementsProject/lightning/pull/7466
[#7787]: https://github.com/ElementsProject/lightning/pull/7787
[#7625]: https://github.com/ElementsProject/lightning/pull/7625
[#7800]: https://github.com/ElementsProject/lightning/pull/7800
[#7829]: https://github.com/ElementsProject/lightning/pull/7829
[#6980]: https://github.com/ElementsProject/lightning/pull/6980
[#7653]: https://github.com/ElementsProject/lightning/pull/7653
[#7734]: https://github.com/ElementsProject/lightning/pull/7734
[#7867]: https://github.com/ElementsProject/lightning/pull/7867
[#7630]: https://github.com/ElementsProject/lightning/pull/7630
[#7667]: https://github.com/ElementsProject/lightning/pull/7667
[#7799]: https://github.com/ElementsProject/lightning/pull/7799
[#7736]: https://github.com/ElementsProject/lightning/pull/7736
[#7719]: https://github.com/ElementsProject/lightning/pull/7719
[#7593]: https://github.com/ElementsProject/lightning/pull/7593
[#7833]: https://github.com/ElementsProject/lightning/pull/7833
[#7770]: https://github.com/ElementsProject/lightning/pull/7770
[#7737]: https://github.com/ElementsProject/lightning/pull/7737
[#7586]: https://github.com/ElementsProject/lightning/pull/7586
[#7726]: https://github.com/ElementsProject/lightning/pull/7726
[#7805]: https://github.com/ElementsProject/lightning/pull/7805
[#7598]: https://github.com/ElementsProject/lightning/pull/7598
[#7791]: https://github.com/ElementsProject/lightning/pull/7791
[#7385]: https://github.com/ElementsProject/lightning/pull/7385
[#7669]: https://github.com/ElementsProject/lightning/pull/7669
[#7663]: https://github.com/ElementsProject/lightning/pull/7663
[#7661]: https://github.com/ElementsProject/lightning/pull/7661
[#7729]: https://github.com/ElementsProject/lightning/pull/7729
[#7852]: https://github.com/ElementsProject/lightning/pull/7852
[#7740]: https://github.com/ElementsProject/lightning/pull/7740
[#7704]: https://github.com/ElementsProject/lightning/pull/7704
[#7756]: https://github.com/ElementsProject/lightning/pull/7756
[24.11rc1]: https://github.com/ElementsProject/lightning/releases/tag/v24.11rc1


## [24.08.2] - 2024-10-18: "Steel Backed-up Channels"

Expand Down
2 changes: 1 addition & 1 deletion contrib/pyln-client/pyln/client/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
from .gossmap import Gossmap, GossmapNode, GossmapChannel, GossmapHalfchannel, GossmapNodeId, LnFeatureBits
from .gossmapstats import GossmapStats

__version__ = "24.08.2"
__version__ = "24.11rc1"

__all__ = [
"LightningRpc",
Expand Down
2 changes: 1 addition & 1 deletion contrib/pyln-client/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "pyln-client"
version = "24.08.2"
version = "24.11rc1"
description = "Client library and plugin library for Core Lightning"
authors = ["Christian Decker <decker.christian@gmail.com>"]
license = "BSD-MIT"
Expand Down
2 changes: 1 addition & 1 deletion contrib/pyln-proto/pyln/proto/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from .onion import OnionPayload, TlvPayload, LegacyOnionPayload
from .wire import LightningConnection, LightningServerSocket

__version__ = "24.08.2"
__version__ = "24.11rc1"

__all__ = [
"Invoice",
Expand Down
2 changes: 1 addition & 1 deletion contrib/pyln-proto/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "pyln-proto"
version = "24.08.2"
version = "24.11rc1"
description = "This package implements some of the Lightning Network protocol in pure python. It is intended for protocol testing and some minor tooling only. It is not deemed secure enough to handle any amount of real funds (you have been warned!)."
authors = ["Christian Decker <decker.christian@gmail.com>"]
license = "BSD-MIT"
Expand Down
2 changes: 1 addition & 1 deletion contrib/pyln-testing/pyln/testing/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
__version__ = "24.08.2"
__version__ = "24.11rc1"

__all__ = [
"__version__",
Expand Down
2 changes: 1 addition & 1 deletion contrib/pyln-testing/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "pyln-testing"
version = "24.08.2"
version = "24.11rc1"
description = "Test your Core Lightning integration, plugins or whatever you want"
authors = ["Christian Decker <decker.christian@gmail.com>"]
license = "BSD-MIT"
Expand Down
2 changes: 1 addition & 1 deletion plugins/clnrest/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "clnrest"
version = "24.08.2"
version = "24.11rc1"
description = "Transforms RPC calls into REST APIs"
authors = ["ShahanaFarooqui <sfarooqui@blockstream.com>"]

Expand Down
2 changes: 1 addition & 1 deletion plugins/wss-proxy/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "wss-proxy"
version = "24.08.2"
version = "24.11rc1"
description = "Web secure socket proxy"
authors = ["ShahanaFarooqui <sfarooqui@blockstream.com>"]

Expand Down
6 changes: 3 additions & 3 deletions poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading