Releases: projectsyn/commodore
v1.25.0
⚠️ Performance issue ⚠️
We don't recommend installing Commodore v1.25.0 at this time. There's a performance regression in the Go compiler for Go 1.22.0 and newer (cf. golang/go#68587) which heavily affects gojsonnet performance. Note that this should be resolved once Go 1.23.4 and 1.22.10 are released.
Summary
We're pleased to announce Commodore v1.25.0.
Apart from some dependency updates, this release changes the Jsonnet implementation that's used by Commodore from C++ Jsonnet to Gojsonnet. This should significantly reduce compile times for Commodore components that make use of the kube-prometheus
Jsonnet library (directly or indirectly).
Users who install Commodore from PyPI will need a working Go compiler, since the gojsonnet Python package doesn't provide prebuilt wheels.
Changes
4 changes since v1.24.0
🚀 Features
- Use go-jsonnet in Commodore (#1046)
- Let Kapitan decide how many targets to compile in parallel (#1052)
📄 Documentation
- Add a prerequisite for the Go compiler for go-jsonnet (#1051)
🔗 Dependency Updates
v1.24.0
Summary
We're pleased to announce Commodore v1.24.0.
Aside from the usual assortment of dependency updates and bug fixes, this release updates Kapitan to 0.34.1. This is an exciting upgrade, since Kapitan now natively supports the Project Syn Reclass in Rust (reclass-rs) rewrite, so Commodore users don't need to patch Kapitan in order to enable reclass-rs anymore.
Additionally, this release raises the minimum required Python version to 3.10, since Kapitan has raised their minimum required Python version to 3.10. Note that we would have removed support for Python 3.8 in this release, since that version has become EOL at the start of October 2024.
We encourage users who still run Commodore on Python 3.8 or 3.9 to install a more recent Python version. We recommend using uv
to manage your Python versions and Commodore installation, since multiple Commodore developers use uv
to manage their production Commodore installations already.
Changes
16 changes since v1.23.0
🔎 Breaking Changes
- Update minimum required Python to 3.10 (#1020)
🚀 Features
🐛 Fixes
- Refresh expired API token before pushing compile metadata to Lieutenant (#1032)
🔗 Dependency Updates
- Update dependency PyGithub to v2.4.0 (#1017)
- Update dependency pytest to v8.3.3 (#1022)
- Update dependency importlib-metadata to v8.5.0 (#1023)
- Update dependency pylint to v3.3.1 (#1027)
- Update dependency black to v24.10.0 (#1030)
- Update dependency pyfakefs to v5.7.1 (#1034)
- Update dependency python-poetry/poetry to v1.8.4 (#1036)
- Update dependency kubernetes-sigs/kustomize to v5.5.0 (#1033)
- Update dependency reclass-rs to v0.5.0 (#1037)
- Update dependency pytest-cov to v6 (#1042)
- Update dependency pytest-benchmark to v5.1.0 (#1044)
- Update dependency kapitan to v0.34.1 (#1045)
v1.24.0-rc1
Summary
We're pleased to announce the first release candidate for Commodore v1.24.0.
Aside from the usual assortment of dependency updates and bug fixes, this release updates Kapitan to 0.34 which removes the need for manually patching the Kapitan installation to benefit from the performance benefits introduced via the reclass in Rust rewrite.
Additionally, this release removes support for Python 3.8 which has become EOL at the start of October and Python 3.9. Note that we already remove support for Python 3.9 because Kapitan 0.34 requires Python >= 3.10.
We encourage users who still run Commodore on Python 3.8 or 3.9 to install a more recent Python version.
Changes
13 changes since v1.23.0
🔎 Breaking Changes
- Update minimum required Python to 3.10 (#1020)
🚀 Features
- Support for Python 3.12 (#1039)
🐛 Fixes
- Refresh expired API token before pushing compile metadata to Lieutenant (#1032)
🔗 Dependency Updates
- Update dependency PyGithub to v2.4.0 (#1017)
- Update dependency pytest to v8.3.3 (#1022)
- Update dependency importlib-metadata to v8.5.0 (#1023)
- Update dependency pylint to v3.3.1 (#1027)
- Update dependency black to v24.10.0 (#1030)
- Update dependency pyfakefs to v5.7.1 (#1034)
- Update dependency python-poetry/poetry to v1.8.4 (#1036)
- Update dependency kubernetes-sigs/kustomize to v5.5.0 (#1033)
- Update dependency reclass-rs to v0.5.0 (#1037)
- Update dependency kapitan to v0.34.0 (#914)
v1.23.0
Summary
We're pleased to announce Commodore v1.23.0. Apart from dependency updates, this release updates the commodore inventory
commands (which are primarily used by commodore-renovate) to use reclass-rs
for rendering the Reclass inventory.
Changes
11 changes since v1.22.1
🚀 Features
- Refactor
commodore inventory
to use reclass-rs (#1012)
🐛 Fixes
- Fix tests to match that patch automerge now also automerges digest updates (#1011)
🔗 Dependency Updates
- Update dependency requests to v2.32.3 (#989)
- Update dependency pyfakefs to v5.6.0 (#998)
- Update dependency importlib-metadata to v8.2.0 (#1003)
- Update dependency pylint to v3.2.6 (#1001)
- Update dependency pytest to v8.3.2 (#1004)
- Update dependency pyjwt to v2.9.0 (#1007)
- Update mikepenz/release-changelog-builder-action action to v5 (#1005)
- Update dependency kubernetes-sigs/kustomize to v5.4.3 (#944)
- Update dependency black to v24.8.0 (#1008)
v1.22.1
Summary
We're pleased to announce Commodore v1.22.1. This release fixes a shortcoming in Commodore v1.22.0 which caused commodore component update
to fail for components that were generated from older component template versions and which weren't automatically updated to the latest template version via the template sync mechanism. We recommend that all users upgrade to Commodore v1.22.1 as soon as possible.
Changes
2 changes since v1.22.0
🐛 Fixes
- Ensure
component update
can update components without automerge settings (#987)
🔗 Dependency Updates
- Update dependency responses to v0.25.3 (#985)
v1.22.0
Summary
We're pleased to announce Commodore v1.22.0. This release introduces a number of new command line flags for commands component new
and component update
. These new command line flags allow users to customize which component dependency PRs will be automerged and autoreleased.
See the commands' help messages or the CLI reference documentation for details on the new commands.
Changes
10 changes since v1.21.0
🚀 Features
- Add options to configure dependency patch automerge behavior in components via
component new
andcomponent update
(#974) - Add command line flags for disabling automerging of patch updates for selected dependencies (#981)
- Add command line flags for configuring automerging of patch updates for selected v0.x dependencies (#982)
- Add command line flags for configuring automerging of minor updates for selected dependencies (#983)
- Add CLI flag to control autorelease config in
component new
andcomponent update
(#984)
🪛 Internal Changes
- Deduplicate options for
component new
andcomponent update
(#975)
🔗 Dependency Updates
v1.21.0
Summary
We're pleased to announce Commodore v1.21.0.
Apart from dependency updates, this release brings support for reporting compilation metadata to Lieutenant according to SDD 0031 - Central Component Version tracking.
Changes
17 changes since v1.20.1
🚀 Features
- Report compilation metadata to Lieutenant according to SDD-0031 (#971)
🔗 Dependency Updates
- Update dependency responses to v0.25.0 (#917)
- Update dependency reclass-rs to v0.4.0 (#922)
- Update dependency types-toml to v0.10.8.20240310 (#933)
- Update dependency importlib-metadata to v7.1.0 (#937)
- Update dependency pytest-mock to v3.14.0 (#938)
- Update dependency PyGithub to v2.3.0 (#939)
- Update dependency pytest-cov to v5 (#940)
- Update dependency gitpython to v3.1.43 (#942)
- Update dependency pytest-xdist to v3.6.1 (#953)
- Update paambaati/codeclimate-action action to v6 (#951)
- Update dependency pyfakefs to v5.5.0 (#958)
- Update dependency python-poetry/poetry to v1.8.3 (#957)
- Update dependency black to v24 (#960)
- Update dependency pytest to v8.2.1 (#964)
- Update dependency pylint to v3.2.2 (#963)
- Update docker.io/alpine Docker tag to v3.20 (#968)
v1.20.1
Summary
Apart from some dependency updates, this release fixes an inconsistency between creating the initial commit new catalog repositories and the fall back logic which detects the repository default branch when a user sets init.defaultBranch
to a value other than master
.
Changes
4 changes since v1.20.0
🐛 Fixes
- Ensure that cluster catalog is initialized with branch
master
(#915)
🔗 Dependency Updates
v1.20.0
Summary
We're pleased to announce Commodore v1.20.0. This is mostly a dependency update release.
Notably, we've updated reclass-rs to v0.2.0, to make the improved error messages for reference resolution errors available to Commodore users.
Additionally, PyGithub has been updated to v2, which brings improved automated backoff for GitHub's secondary rate limits.
Apart from dependency updates, we've also added explicit timeouts for all HTTP requests made by Commodore.
Changes
15 changes since v1.19.1
🚀 Features
- Add explicit HTTP request timeouts (#892)
🔗 Dependency Updates
- Update dependency pylint to v3 (#862)
- Update dependency PyGithub to v2 (#859)
- Update dependency pytest-mock to v3.12.0 (#874)
- Update dependency responses to v0.24.1 (#887)
- Update dependency python-poetry/poetry to v1.7.1 (#889)
- Update dependency pytest-xdist to v3.5.0 (#891)
- Update dependency pyfakefs to v5.3.2 (#894)
- Update dependency importlib-metadata to v7 (#896)
- Update dependency pytest to v7.4.4 (#904)
- Update dependency kubernetes-sigs/kustomize to v5.3.0 (#899)
- Update dependency black to v23.12.1 (#903)
- Update docker.io/alpine Docker tag to v3.19 (#900)
- Update dependency gitpython to v3.1.41 (#905)
- Update dependency reclass-rs to v0.2.0 (#906)
v1.19.1
Summary
This release updates jb
in the Commodore Docker image to v0.6.2 (from the Project Syn fork). This jb
version introduces more robust error handling when downloading dependencies.
Changes
3 changes since v1.19.0