From 2f86533401b724417f2e12f54e4f3a9b1fe36454 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=86gir=20M=C3=A1ni=20Hauksson?= <54936225+sourcehawk@users.noreply.github.com> Date: Tue, 6 Oct 2026 22:28:19 +0100 Subject: [PATCH] docs(compatibility): test against controller-runtime v0.25 and Kubernetes 1.37 controller-runtime v0.25 with k8s.io v0.37 becomes the Primary combination. v0.24 with k8s.io v0.36 moves to Tested, and the compatibility workflow runs it weekly. The Go minimum stays at 1.26, because controller-runtime v0.25 also declares go 1.26.0. Co-Authored-By: Claude Opus 5.5 --- .github/workflows/compatibility.yml | 7 ++++++- docs/compatibility.md | 5 +++-- plugin/skills/structuring-operators/SKILL.md | 3 ++- .../structuring-operators/references/compatibility.md | 5 +++-- 4 files changed, 14 insertions(+), 6 deletions(-) diff --git a/.github/workflows/compatibility.yml b/.github/workflows/compatibility.yml index 1e4de4ae..e6eeaf23 100644 --- a/.github/workflows/compatibility.yml +++ b/.github/workflows/compatibility.yml @@ -18,11 +18,16 @@ jobs: fail-fast: false matrix: include: + - controller-runtime: "0.25" + cr-version: "v0.25.2" + k8s: "0.37" + k8s-version: "v0.37.1" + current: true - controller-runtime: "0.24" cr-version: "v0.24.1" k8s: "0.36" k8s-version: "v0.36.1" - current: true + current: false - controller-runtime: "0.23" cr-version: "v0.23.3" k8s: "0.35" diff --git a/docs/compatibility.md b/docs/compatibility.md index eae5ecd8..ddea0262 100644 --- a/docs/compatibility.md +++ b/docs/compatibility.md @@ -8,7 +8,7 @@ policy for tested combinations, and how compatibility is verified. The framework requires **Go 1.26 or later** (declared in `go.mod`). Consumer projects must use Go 1.26 or later to build against this framework. Go's toolchain version selection ensures the consumer project picks up the same minimum. -This minimum is inherited from controller-runtime v0.24, which itself declares `go 1.26.0`. It applies to every +This minimum is inherited from controller-runtime v0.25, which itself declares `go 1.26.0`. It applies to every combination in the matrix below, including the ones that pin older controller-runtime and `k8s.io/*` versions: pinning those dependencies down does not lower the framework's own Go requirement. @@ -18,7 +18,8 @@ The framework is tested against the following version combinations: | Framework | controller-runtime | k8s.io/\* | Kubernetes | Go | Status | | --------- | ------------------ | --------- | ---------- | ---- | ------- | -| main | v0.24.x | v0.36.x | 1.36 | 1.26 | Primary | +| main | v0.25.x | v0.37.x | 1.37 | 1.26 | Primary | +| main | v0.24.x | v0.36.x | 1.36 | 1.26 | Tested | | main | v0.23.x | v0.35.x | 1.35 | 1.26 | Tested | | main | v0.22.x | v0.34.x | 1.34 | 1.26 | Tested | diff --git a/plugin/skills/structuring-operators/SKILL.md b/plugin/skills/structuring-operators/SKILL.md index 4ec22f75..cd4b82e5 100644 --- a/plugin/skills/structuring-operators/SKILL.md +++ b/plugin/skills/structuring-operators/SKILL.md @@ -224,7 +224,8 @@ The framework requires Go 1.26 or later, and its own supported dependency combin | Framework | controller-runtime | k8s.io/\* | Kubernetes | Go | Status | | --------- | ------------------ | --------- | ---------- | ---- | ------- | -| main | v0.24.x | v0.36.x | 1.36 | 1.26 | Primary | +| main | v0.25.x | v0.37.x | 1.37 | 1.26 | Primary | +| main | v0.24.x | v0.36.x | 1.36 | 1.26 | Tested | | main | v0.23.x | v0.35.x | 1.35 | 1.26 | Tested | | main | v0.22.x | v0.34.x | 1.34 | 1.26 | Tested | diff --git a/plugin/skills/structuring-operators/references/compatibility.md b/plugin/skills/structuring-operators/references/compatibility.md index eae5ecd8..ddea0262 100644 --- a/plugin/skills/structuring-operators/references/compatibility.md +++ b/plugin/skills/structuring-operators/references/compatibility.md @@ -8,7 +8,7 @@ policy for tested combinations, and how compatibility is verified. The framework requires **Go 1.26 or later** (declared in `go.mod`). Consumer projects must use Go 1.26 or later to build against this framework. Go's toolchain version selection ensures the consumer project picks up the same minimum. -This minimum is inherited from controller-runtime v0.24, which itself declares `go 1.26.0`. It applies to every +This minimum is inherited from controller-runtime v0.25, which itself declares `go 1.26.0`. It applies to every combination in the matrix below, including the ones that pin older controller-runtime and `k8s.io/*` versions: pinning those dependencies down does not lower the framework's own Go requirement. @@ -18,7 +18,8 @@ The framework is tested against the following version combinations: | Framework | controller-runtime | k8s.io/\* | Kubernetes | Go | Status | | --------- | ------------------ | --------- | ---------- | ---- | ------- | -| main | v0.24.x | v0.36.x | 1.36 | 1.26 | Primary | +| main | v0.25.x | v0.37.x | 1.37 | 1.26 | Primary | +| main | v0.24.x | v0.36.x | 1.36 | 1.26 | Tested | | main | v0.23.x | v0.35.x | 1.35 | 1.26 | Tested | | main | v0.22.x | v0.34.x | 1.34 | 1.26 | Tested |