What changed, and why it matters
This commit is a routine version bump from a release candidate (25.09rc4) to the final release number (25.09). It only changes version strings in packaging files and contains no functional code changes. There is no security relevance.
No action required. This is a standard release-versioning commit with no security implications.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The commit updates version identifiers across the repository: .version, Python package init.py files, pyproject.toml files, tools/reckless, and uv.lock. All changes are string substitutions of ‘25.09rc4’ to ‘25.09’ (or ‘25.9’ in uv.lock’s normalized form). No logic, protocol handling, cryptography, networking, or permission code is modified.
Changed components
Version metadata files only: .version, contrib/pyln-client, contrib/pyln-proto, contrib/pyln-testing, tools/reckless, uv.lockInspect captured patch +11 / −11
diff --git a/.version b/.version
index f088cd15..834db75c 100644
--- a/.version
+++ b/.version
@@ -1 +1 @@
-25.09rc4
+25.09
diff --git a/contrib/pyln-client/pyln/client/__init__.py b/contrib/pyln-client/pyln/client/__init__.py
index bf294c05..c892ddf1 100644
--- a/contrib/pyln-client/pyln/client/__init__.py
+++ b/contrib/pyln-client/pyln/client/__init__.py
@@ -4,7 +4,7 @@ from .gossmap import Gossmap, GossmapNode, GossmapChannel, GossmapHalfchannel, G
from .gossmapstats import GossmapStats
from .version import NodeVersion
-__version__ = "25.09rc4"
+__version__ = "25.09"
__all__ = [
"LightningRpc",
diff --git a/contrib/pyln-client/pyproject.toml b/contrib/pyln-client/pyproject.toml
index 551aaa4c..79eccd66 100644
--- a/contrib/pyln-client/pyproject.toml
+++ b/contrib/pyln-client/pyproject.toml
@@ -1,6 +1,6 @@
[project]
name = "pyln-client"
-version = "25.09rc4"
+version = "25.09"
description = "Client library and plugin library for Core Lightning"
authors = [{ name = "Christian Decker", email = "decker.christian@gmail.com" }]
license = { text = "BSD-MIT" }
diff --git a/contrib/pyln-proto/pyln/proto/__init__.py b/contrib/pyln-proto/pyln/proto/__init__.py
index 921848f9..cd83c997 100644
--- a/contrib/pyln-proto/pyln/proto/__init__.py
+++ b/contrib/pyln-proto/pyln/proto/__init__.py
@@ -4,7 +4,7 @@ from .invoice import Invoice
from .onion import OnionPayload, TlvPayload, LegacyOnionPayload
from .wire import LightningConnection, LightningServerSocket
-__version__ = "25.09rc4"
+__version__ = "25.09"
__all__ = [
"Invoice",
diff --git a/contrib/pyln-proto/pyproject.toml b/contrib/pyln-proto/pyproject.toml
index 79f7d291..ac7f280f 100644
--- a/contrib/pyln-proto/pyproject.toml
+++ b/contrib/pyln-proto/pyproject.toml
@@ -1,6 +1,6 @@
[project]
name = "pyln-proto"
-version = "25.09rc4"
+version = "25.09"
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 = [
{name = "Christian Decker", email = "decker.christian@gmail.com"}
diff --git a/contrib/pyln-testing/pyln/testing/__init__.py b/contrib/pyln-testing/pyln/testing/__init__.py
index c3003923..ac1f7b60 100644
--- a/contrib/pyln-testing/pyln/testing/__init__.py
+++ b/contrib/pyln-testing/pyln/testing/__init__.py
@@ -1,4 +1,4 @@
-__version__ = "25.09rc4"
+__version__ = "25.09"
__all__ = [
"__version__",
diff --git a/contrib/pyln-testing/pyproject.toml b/contrib/pyln-testing/pyproject.toml
index 2dda8f2b..506fb782 100644
--- a/contrib/pyln-testing/pyproject.toml
+++ b/contrib/pyln-testing/pyproject.toml
@@ -1,6 +1,6 @@
[project]
name = "pyln-testing"
-version = "25.09rc4"
+version = "25.09"
description = "Test your Core Lightning integration, plugins or whatever you want"
authors = [{ name = "Christian Decker", email = "decker.christian@gmail.com" }]
license = { text = "BSD-MIT" }
diff --git a/tools/reckless b/tools/reckless
index 9747e5ec..2bfb68bd 100755
--- a/tools/reckless
+++ b/tools/reckless
@@ -21,7 +21,7 @@ from urllib.error import HTTPError
import venv
-__VERSION__ = '25.09rc4'
+__VERSION__ = '25.09'
logging.basicConfig(
level=logging.INFO,
diff --git a/uv.lock b/uv.lock
index 36a06263..b2d6d785 100644
--- a/uv.lock
+++ b/uv.lock
@@ -1830,7 +1830,7 @@ dev = [{ name = "pyln-proto", editable = "contrib/pyln-proto" }]
[[package]]
name = "pyln-client"
-version = "25.9rc4"
+version = "25.9"
source = { editable = "contrib/pyln-client" }
dependencies = [
{ name = "pyln-bolt7" },
@@ -1890,7 +1890,7 @@ dev = [
[[package]]
name = "pyln-proto"
-version = "25.9rc4"
+version = "25.9"
source = { editable = "contrib/pyln-proto" }
dependencies = [
{ name = "base58" },
@@ -1919,7 +1919,7 @@ dev = [{ name = "pytest", specifier = ">=7.0.0" }]
[[package]]
name = "pyln-testing"
-version = "25.9rc4"
+version = "25.9"
source = { editable = "contrib/pyln-testing" }
dependencies = [
{ name = "cheroot" },
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.