Changes since v4.5.2
⚠️ Breaking Changes
- (go-v4): Upgrade controller-runtime from
v0.20.4
tov0.21.0
and Kubernetes version from1.32
to1.33
(#4813). For detailed changes, refer to the controller-runtime v0.21.0 release notes.
✨ New Features
- (go-v4): Enable
import-shadowing
linter (#4700) - (go-v4): Add new Makefile target to create a cluster name for e2e tests (#4673)
- (go-v4): Upgrade Go version to
v1.24.0
(#4585) - (go-v4): Update
golangci-lint
tov2.0.2
and GitHub Action tov8
(#4752,#4801) - (go-v4): Upgrade controller-tools from
v0.17.2
tov0.18.0
(#4804,#4770) - (API, CLI, go/v4): Add
cliVersion
field toPROJECT
file to track CLI binary version used in scaffolds (#4621, #4821)
🐛 Bug Fixes
- (go-v4): Wrap test command execution errors with
%w
for better error tracing (#4694) - (go-v4): Improve
main.go
scaffolding to reduceerr
scope using:=
(#4585) - (helm/v1-alpha): Add control-plane labels to metrics service and ServiceMonitor templates (#4777)
- (helm/v1-alpha): Append project name to webhook service name to avoid name collisions (#4808)
- (go-v4): Fix staticcheck linter issues (ST1005, QF1008) in scaffolds and tutorials (#4779)
- (go-v4): Fix incorrect Webhook import aliasing in
cmd/main.go
(#4781) - (go-v4): Revert unintended addition of explicit
docker.io
prefix in Dockerfile (#4818) - (go-v4): Improve comment in
/config/rbac/kustomization.yaml
by rendering project name instead of using template var (#4819) - (go-v4): Remove redundant/noisy
godebug
default lines in thego.mod
file (#4787)
Thanks to all our contributors! 🎉
What's Changed
- 📖 bump sigs.k8s.io/kubebuilder/v4 from 4.5.1 to 4.5.2 in /docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1 by @dependabot in #4683
- 🌱 (chore): add gofumpt to golangci-lint configuration by @kersten in #4672
- 🌱 (chore): unify import alias for network-policy by @kersten in #4684
- 🌱 (chore): normalize error messages and wrap errors using %w by @kersten in #4685
- 📖 Fix path for samples in the Getting Started tutorial by @fferrann in #4695
- 🌱 (chore): normalize error messages and wrap errors using %w by @kersten in #4686
- 🌱 (chore): wrap file and I/O errors with '%w' in 'pkg' by @kersten in #4689
- 🌱 (chore): remove unnecessary blank lines across plugin configuration and options by @kersten in #4690
- 📖 Improve error format in the design docs for API Versioning in Kubebuilder by @kersten in #4693
- 🌱 (chore): avoid shadowing of 'config' and 'resource' in golang/v4 plugins by @kersten in #4649
- 🌱 (chore): normalize error messages and wrap errors using %w by @kersten in #4687
- 🌱 (chore): wrap errors with '%w' and normalize formatting in 'kustomize/v2' by @kersten in #4688
- 🌱 (chore): wrap error with %w in test_context.go for improved diagnostics by @kersten in #4692
- 🐛 (go/v4): wrap test command execution errors with %w in test utils by @kersten in #4694
- 🌱 (chore): avoid shadowing of 'config', 'store', and 'resource' in cli/alpha/generate by @kersten in #4697
- 🌱 (chore) add comment to clarify usage context of ReplaceRegexInFile by @kersten in #4656
- 🌱 (chore): fix improper usage of errors.As in scaffold tests by @kersten in #4696
- 🌱 (chore): improve readability of test case for alternative delimiters by @kersten in #4698
- 🌱 (chore): enable shadow checks via import-shadowing linter by @kersten in #4661
- 🌱 (chore): refactor unit tests to isolate mutable test data in CLI spec to improve maintainability by @kersten in #4701
- 🌱 (chore): enable 'asciicheck' and 'bidichk' for improved code safety and clarity by @kersten in #4699
- ✨ (go/v4): enable 'import-shadowing' linter by @kersten in #4700
- 🌱 (chore): refactor unit tests to isolate mutable state with BeforeEach for pkg/cli by @kersten in #4702
- 🌱 (chore): refactor unit tests to isolate mutable state with BeforeEach for pkg/config/store by @kersten in #4703
- 🌱 (chore): refactor unit tests to isolate mutable state with BeforeEach in pkg/config by @kersten in #4704
- 🌱 (chore): refactor unit tests to isolate mutable state with BeforeEach in pkg/machinery tests by @kersten in #4705
- 🌱 (chore): refactor stage unit tests with Ginkgo conventions and simplify logic in stage_test.go by @kersten in #4706
- 🌱 (chore): refactor unit tests to isolate mutable state with BeforeEach in resource-related tests by @kersten in #4707
- 🌱 (chore): refactor shared setup logic in plugins into BeforeEach to isolate test state by @kersten in #4708
- 🌱 (chore): enable 'whitespace' linter in golangci-lint config by @kersten in #4691
- 🌱 (chore): refactor shared setup logic in plugin into BeforeEach to isolate test state by @kersten in #4709
- 🌱 fix (ci): fix lint issue: shadow: declaration of pluginCfg shadows declaration by @camilamacedo86 in #4725
- 📖 Updated 404 page details in TODO.md and updated the book by @Kuzuri247 in #4674
- 🐛 (go/v4) Update main.go scaffold to follow Go best practices by reducing the scope of err using short variable declarations (:=) by @koba1t in #4627
- 📖 Updated migration pages by @Kuzuri247 in #4676
- 🌱 Use dynamic controller-runtime version in doc generator to make easier update the version by @p-shah256 in #4713
- 🌱 (chore): enable ginkgolinter forbid-spec-pollution to enforce isolated test specs by @kersten in #4710
- 🌱 (chore): enable ginkgolinter forbid-focus-container by @nunnatsa in #4714
- 📖 Fixed grammatical errors in designs doc by @Kuzuri247 in #4716
- 🌱 (chore): replace errors.As() with MatchError() in error assertions by @kersten in #4723
- 🌱 Fix golangci-lint wrong configurations by @nunnatsa in #4726
- 🌱 (chore): simplify test variable declarations for CLI tests by @kersten in #4731
- 🌱 (chore): replace '%v' with '%w' in deploy-image v1alpha1 plugin errors by @kersten in #4732
- 🌱 (chore): wrap errors using '%w' and improve formatting in golang plugin by @kersten in #4729
- 🌱 (chore): improve error wrapping for external plugin discovery and config loading by @kersten in #4744
- 🌱 (chore): wrap plugin and util error returns for better context by @kersten in #4745
- 🌱 (chore): check and return error from os.WriteFile when writing litout.json by @kersten in #4746
- 🌱 (chore): wrap deploy-image plugin errors with contextual messages by @kersten in #4748
- ✨ (CLI, go/v4): Upgrade Golang version to v1.24.0 by @dongjiang1989 in #4585
- 🌱 (chore): add detailed error wrapping across Golang plugin commands by @kersten in #4735
- 🌱 (chore): replace empty slice literals with idiomatic var decls by @kersten in #4736
- 🌱 (chore): improve error wrapping for generate command execution by @kersten in #4737
- 🌱 (chore): consistently wrap and enrich error messages across helm plugin by @kersten in #4739
- 🌱 (chore): improve error context and wrapping in utility and test helpers by @kersten in #4740
- 🌱 (chore): improve error context in common kustomize plugin scaffolds by @kersten in #4741
- 🌱 (chore): add error context to golang scaffolder execution steps by @kersten in #4742
- 🌱 (chore): wrap config parsing and validation errors with contextual messages by @kersten in #4743
- 🌱 (chore): wrap plugin and util error returns for better context by @kersten in #4749
- 🌱 (chore): remove unnecessary string() and []byte conversions by @kersten in #4747
- 🌱 (chore): clean up and unify error messages in golang/v4 plugin by @kersten in #4738
- 🌱 (chore): use 'errors.As' and wrap exec errors in repository.go by @kersten in #4730
- 🌱 Bump github.com/onsi/gomega from 1.36.3 to 1.37.0 by @dependabot in #4751
- 📖 : Improve sample external plugin by adding error handling for flag parsing failures. by @kersten in #4728
- ✨ (API) add contextual error wrapping for external plugin helpers by @kersten in #4754
- 🌱 (chore): consistently wrap and enrich error messages across test utils by @kersten in #4755
- ✨ (API, CLI, go/v4) Add cliVersion field to the PROJECT file configuration to store the CLI binary version used to scaffold projects. by @vitorfloriano in #4621
- 🌱 Add kubernetesVendorVersion for binary builds with LD_FLAGS by @vitorfloriano in #4612
- 🌱 (chore): use pointer receiver for Validate and rename shadowed var by @kersten in #4763
- 🌱 (ci/verify)use
env:
to set variable. Otherwise quoting issues. by @guettli in #4764 - 📖 handle flag parsing errors in simple external plugin tutorial API scaffolder by @kersten in #4765
- 📖 Update versions_compatibility_supportability.md to fix link in the warning note by @possani in #4759
- 🌱 Bump github.com/onsi/ginkgo/v2 from 2.23.3 to 2.23.4 by @dependabot in #4768
- ✨ (go/v4): Add new makefile target to create a cluster name to run the e2e tests by @kersten in #4673
- ✨Update golangci-lint to v2.0.2 and adjust configuration by @dongjiang1989 in #4752
- ✨ Upgrade controller-tools from v0.17.2 to v0.17.3 by @camilamacedo86 in #4770
- 🌱 Bump golang.org/x/text from 0.23.0 to 0.24.0 by @dependabot in #4769
- 🌱 fix staticcheck lint issues - ST1008 and ST1008 by @camilamacedo86 in #4771
- 🌱 Bump golang.org/x/tools from 0.31.0 to 0.32.0 by @dependabot in #4772
- 🌱 (fix/enhance): correct GNU sed detection method for remove-spaces makefile target by @kersten in #4775
- 🐛 (Follow up of : #4752 - Upgrade GolangCI) - fix: address staticcheck linter issues (ST1005, QF1008) in scaffolds and tutorials by @camilamacedo86 in #4779
- 🐛Fix: Incorrect Webhook Import Aliasing in cmd/main.go Scaffold by @dongjiang1989 in #4781
- 🌱 (chore): wrap and contextualize errors across Grafana plugin by @kersten in #4753
- 🌱 (chore): Enable wrapcheck linter by @kersten in #4721
- 🌱 (Follow up of #4752 )Remove 'install-mode: goinstall' from the GitHub Action. This was added temporarily to allow us to move forward. (removed this temporary addition before any release.) by @Kuzuri247 in #4774
- 🐛 (helm/alpha-v1): Add control-plane labels to metrics service and ServiceMonitor templates by @sarthaksarthak9 in #4777
- 🐛 Remove redundant/noisy godebug default= lines from go.mod. by @ldemailly in #4787
- 🌱 (testdata): Upgrade version used in the samples under testdata by @camilamacedo86 in #4794
- 🌱 Removing calico - using default CNI from Kind by @irapandey in #4791
- 🌱 Bump golang.org/x/text from 0.24.0 to 0.25.0 by @dependabot in #4796
- 🌱 Bump golang.org/x/tools from 0.32.0 to 0.33.0 by @dependabot in #4797
- ✨Update golangci-lint to v2.1.0 and lint-action to v8 by @ansh-devs in #4801
- 🌱 Bump controller-tools to 0.18.0 by @Adembc in #4804
- 🐛 (helm/v1-alpha): Append project name to webhook service name by @fhirscher in #4808
- 📖 docs: fix make command and heading formatting in getting started guide by @Vaishnav88sk in #4811
⚠️ Upgrade controller-runtime (v0.20.4 to v0.21.0) and k8s version ( 1.32 => 1.33 ) by @camilamacedo86 in #4813- 🌱 Bump joelanford/go-apidiff from 0.8.2 to 0.8.3 by @dependabot in #4815
- 🐛 (go/v4) fix: revert accidental addition of explicit docker.io registry in Dockerfile by @camilamacedo86 in #4818
- 🐛 (go/v4) fix: improve role comment clarity in
/config/rbac/kustomization.yaml
by replacing{{ .ProjectName }}
with rendered project name by @camilamacedo86 in #4819 - 🐛 refactor: inline getKubebuilderVersion into cli.WithCliVersion setup by @camilamacedo86 in #4821
New Contributors
- @fferrann made their first contribution in #4695
- @Kuzuri247 made their first contribution in #4674
- @koba1t made their first contribution in #4627
- @p-shah256 made their first contribution in #4713
- @nunnatsa made their first contribution in #4714
- @dongjiang1989 made their first contribution in #4585
- @possani made their first contribution in #4759
- @ldemailly made their first contribution in #4787
- @irapandey made their first contribution in #4791
- @ansh-devs made their first contribution in #4801
- @fhirscher made their first contribution in #4808
- @Vaishnav88sk made their first contribution in #4811
Full Changelog: v4.5.2...v4.6.0