fix: route registry client output to stdout instead of stderr#32056
Conversation
Commands like 'helm registry login', 'helm push', and 'helm pull' were
writing success messages ("Login Succeeded", "Pushed:", "Pulled:",
"Digest:") to stderr instead of stdout. The root cause was that
newDefaultRegistryClient and newRegistryClientWithTLS hard-coded
os.Stderr as the registry client writer, ignoring the out io.Writer
that main() passes as os.Stdout.
Thread out io.Writer through newRegistryClient, newDefaultRegistryClient,
and newRegistryClientWithTLS, and update all call sites in pkg/cmd.
Fixes helm#13464
Signed-off-by: Terry Howe <[email protected]>
There was a problem hiding this comment.
Pull request overview
This PR updates Helm’s CLI wiring so OCI registry client “success” messages (e.g., Login Succeeded, Pulled:, Pushed:, Digest:) are written to the out io.Writer passed into command construction (typically stdout), rather than being hard-coded to stderr.
Changes:
- Thread
out io.Writerthrough the registry client factory functions inpkg/cmd/root.go. - Update multiple
pkg/cmd/*commands to passoutintonewRegistryClient(...). - Update
show’s helper to acceptoutand propagate it to the registry client creation.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| pkg/cmd/root.go | Adds out io.Writer plumbed into registry client constructors and sets actionConfig.RegistryClient using it. |
| pkg/cmd/template.go | Passes out into newRegistryClient(...) for OCI chart operations during helm template. |
| pkg/cmd/show.go | Passes out into newRegistryClient(...) for OCI chart operations during helm show *. |
| pkg/cmd/upgrade.go | Passes out into newRegistryClient(...) for OCI chart operations during helm upgrade. |
| pkg/cmd/install.go | Passes out into newRegistryClient(...) for OCI chart operations during helm install. |
| pkg/cmd/pull.go | Passes out into newRegistryClient(...) for OCI pulls. |
| pkg/cmd/push.go | Passes out into newRegistryClient(...) for OCI pushes. |
| pkg/cmd/package.go | Passes out into newRegistryClient(...) when packaging with OCI-related chart paths/options. |
| pkg/cmd/dependency_build.go | Passes out into newRegistryClient(...) for OCI dependency fetching. |
| pkg/cmd/dependency_update.go | Passes out into newRegistryClient(...) for OCI dependency fetching. |
Comments suppressed due to low confidence (4)
pkg/cmd/template.go:93
- Passing
out(stdout) to the registry client will cause OCI pull status lines (e.g., "Pulled:" / "Digest:") emitted byregistry.Clientto be written to the same stream as the rendered manifests, which breakshelm templateoutput for piping/automation. Consider routing registry client output tocmd.ErrOrStderr()(or another stderr writer) here so the manifest output onoutstays clean.
registryClient, err := newRegistryClient(out, client.CertFile, client.KeyFile, client.CaFile,
client.InsecureSkipTLSVerify, client.PlainHTTP, client.Username, client.Password)
if err != nil {
return fmt.Errorf("missing registry client: %w", err)
}
client.SetRegistryClient(registryClient)
pkg/cmd/install.go:151
helm installsupports machine-readable output modes via--output(outfmt.Write(out, ...)). If the chart is an OCI reference, the registry client will write status lines ("Pulled:" / "Digest:") to its writer; usingouthere can corrupt JSON/YAML output. Consider sending registry client output tocmd.ErrOrStderr()(or another stderr writer) instead ofoutso formatted output remains valid.
registryClient, err := newRegistryClient(out, client.CertFile, client.KeyFile, client.CaFile,
client.InsecureSkipTLSVerify, client.PlainHTTP, client.Username, client.Password)
if err != nil {
return fmt.Errorf("missing registry client: %w", err)
}
client.SetRegistryClient(registryClient)
pkg/cmd/upgrade.go:113
helm upgradesupports formatted outputs (table/json/yaml viaoutfmt). For OCI charts, the registry client writes status lines ("Pulled:" / "Digest:") to its configured writer; passingouthere can break machine-readable output by mixing in those lines. Consider routing registry client output tocmd.ErrOrStderr()(or another stderr writer) instead ofout.
registryClient, err := newRegistryClient(out, client.CertFile, client.KeyFile, client.CaFile,
client.InsecureSkipTLSVerify, client.PlainHTTP, client.Username, client.Password)
if err != nil {
return fmt.Errorf("missing registry client: %w", err)
}
client.SetRegistryClient(registryClient)
pkg/cmd/root.go:264
- This change alters user-visible stream routing by wiring the registry client’s writer to the provided
out. There doesn’t appear to be cmd-level test coverage asserting that registry success messages (e.g., "Login Succeeded" / "Pulled:" / "Pushed:") land on the intended stream; current helpers generally merge stdout/stderr into one buffer. Adding a focused test that keeps stdout/stderr separate would help prevent regressions in output redirection behavior.
registryClient, err := newDefaultRegistryClient(out, false, "", "")
if err != nil {
return nil, err
}
actionConfig.RegistryClient = registryClient
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| func addRegistryClient(out io.Writer, client *action.Show) error { | ||
| registryClient, err := newRegistryClient(out, client.CertFile, client.KeyFile, client.CaFile, |
There was a problem hiding this comment.
helm show writes chart contents to out (often consumed programmatically), but the registry client also writes OCI pull status lines ("Pulled:" / "Digest:") to its writer. Passing out here will interleave those status lines with the chart output. Consider using stderr (e.g., cmd.ErrOrStderr() from each subcommand) for the registry client writer, and keep out only for the command’s primary output.
| func addRegistryClient(out io.Writer, client *action.Show) error { | |
| registryClient, err := newRegistryClient(out, client.CertFile, client.KeyFile, client.CaFile, | |
| func addRegistryClient(errOut io.Writer, client *action.Show) error { | |
| registryClient, err := newRegistryClient(errOut, client.CertFile, client.KeyFile, client.CaFile, |
Documentation UpdateI've prepared a documentation update for this change: helm/helm-www#2079 - Adds upgrade guidance noting that scripts capturing registry command output (like This helps users migrating to Helm 4 understand they may need to update scripts that rely on the previous stderr behavior. 🤖 Generated by Promptless |
scottrigby
left a comment
There was a problem hiding this comment.
This lgtm. Function signature changes are all internal. non-error CLI output moving from stderr to stdout is expected, so this is a bug fix.
|
Routing to stdout will break any "structured" output. But I don't believe these commands have any? |
Commands like 'helm registry login', 'helm push', and 'helm pull' were
writing success messages ("Login Succeeded", "Pushed:", "Pulled:",
"Digest:") to stderr instead of stdout. The root cause was that
newDefaultRegistryClient and newRegistryClientWithTLS hard-coded
os.Stderr as the registry client writer, ignoring the out io.Writer
that main() passes as os.Stdout.
Thread out io.Writer through newRegistryClient, newDefaultRegistryClient,
and newRegistryClientWithTLS, and update all call sites in pkg/cmd.
Fixes #13464
Signed-off-by: Terry Howe <[email protected]>
(cherry picked from commit c2f1b23)
Helm < 4.2.1 prints registry success messages (Login Succeeded, Pushed, Pulled, Digest) to stderr (helm/helm#13464); Helm >= 4.2.1 moves them to stdout (helm/helm#32056). The modules key on the return code, so logic is unaffected, but the RETURN docs and integration assertions assumed stderr. - helm_registry_auth: note the version-dependent output stream in the RETURN documentation. - helm_registry_auth integration tests: assert success messages against the stdout+stderr union so they pass on both old and new Helm. Fixes: ansible-collections#1146 Co-Authored-By: Claude Opus 4.8
Helm < 4.2.1 prints registry success messages (Login Succeeded, Pushed, Pulled, Digest) to stderr (helm/helm#13464); Helm >= 4.2.1 moves them to stdout (helm/helm#32056). The modules key on the return code, so logic is unaffected, but the RETURN docs and integration assertions assumed stderr. - helm_registry_auth: note the version-dependent output stream in the RETURN documentation. - helm_registry_auth integration tests: assert success messages against the stdout+stderr union so they pass on both old and new Helm. Fixes: ansible-collections#1146 Co-Authored-By: Claude Opus 4.8
That's exactly what it did now for Was this regression intended? ( see also #13464 (comment) , #31191 ) |
As I've just stumbled over your comment and we are facing the same problem, I've just raised issue #32215 to track this |
This PR contains the following updates: | Package | Update | Change | |---|---|---| | [helm/helm](https://github.com/helm/helm) | patch | `4.2.0` → `4.2.1` | --- ### Release Notes <details> <summary>helm/helm (helm/helm)</summary> ### [`v4.2.1`](https://github.com/helm/helm/releases/tag/v4.2.1): Helm v4.2.1 [Compare Source](helm/helm@v4.2.0...v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#​31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#​32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#​31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#​32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#​32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#​32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@​scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#​31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#​32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1> </details> --- ### Configuration 📅 **Schedule**: (in timezone Europe/Berlin) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzIuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMi4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=--> Reviewed-on: https://git.luzifer.io/luzifer-docker/action-env/pulls/172
When pulling an OCI chart, the registry client prints "Pulled: ..." and "Digest: ..." status lines (and deprecation/underscore warnings) to its configured output writer. Since v4.2.1 (introduced by helm#32056), these messages leaked into the stdout output of helm template and helm show, breaking downstream consumers such as cdk8s and other YAML parsers. Fix by passing the command's stderr to the registry client in the template and show commands instead of stdout. This keeps stdout clean for machine-readable YAML while still surfacing registry warnings and status messages on stderr for troubleshooting, rather than discarding them. The pull/push commands continue to print these messages on their normal output writer. The show command's addRegistryClient writer parameter is renamed to registryOut and wired through to the registry client, so it is no longer a no-op. Fixes helm#32215 Signed-off-by: Aaron <[email protected]>
When pulling an OCI chart, the registry client prints "Pulled: ..." and "Digest: ..." status lines (and deprecation/underscore warnings) to its configured output writer. Since v4.2.1 (introduced by helm#32056), these messages leaked into the stdout output of helm template and helm show, breaking downstream consumers such as cdk8s and other YAML parsers. Fix by passing the command's stderr to the registry client in the template and show commands instead of stdout. This keeps stdout clean for machine-readable YAML while still surfacing registry warnings and status messages on stderr for troubleshooting, rather than discarding them. The pull/push commands continue to print these messages on their normal output writer. The show command's addRegistryClient writer parameter is renamed to registryOut and wired through to the registry client, so it is no longer a no-op. Fixes helm#32215 Signed-off-by: Aaron Mark <[email protected]>
…s (Helm 4.2.1) (#1147) * helm: document/test stdout for registry success messages (Helm 4.2.1) Helm < 4.2.1 prints registry success messages (Login Succeeded, Pushed, Pulled, Digest) to stderr (helm/helm#13464); Helm >= 4.2.1 moves them to stdout (helm/helm#32056). The modules key on the return code, so logic is unaffected, but the RETURN docs and integration assertions assumed stderr. - helm_registry_auth: note the version-dependent output stream in the RETURN documentation. - helm_registry_auth integration tests: assert success messages against the stdout+stderr union so they pass on both old and new Helm. Fixes: #1146 Co-Authored-By: Claude Opus 4.8 * ci: empty commit to re-trigger ci
…s (Helm 4.2.1) (#1147) (#1156) * helm: document/test stdout for registry success messages (Helm 4.2.1) Helm < 4.2.1 prints registry success messages (Login Succeeded, Pushed, Pulled, Digest) to stderr (helm/helm#13464); Helm >= 4.2.1 moves them to stdout (helm/helm#32056). The modules key on the return code, so logic is unaffected, but the RETURN docs and integration assertions assumed stderr. - helm_registry_auth: note the version-dependent output stream in the RETURN documentation. - helm_registry_auth integration tests: assert success messages against the stdout+stderr union so they pass on both old and new Helm. Fixes: #1146 Co-Authored-By: Claude Opus 4.8 * ci: empty commit to re-trigger ci (cherry picked from commit ae90b60) Co-authored-by: Yuriy Novostavskiy <[email protected]>
|
Thank god for AI code review. Now we just have to get somebody to actually read it. |
Raise a PR? |
Hey @TerryHowe just FYI - I've raised issue #32215 couple of days ago. |
##### [\`v4.2.2\`](https://github.com/helm/helm/releases/tag/v4.2.2) Helm v4.2.2 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) ##### Notable Changes - Revert: Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32214](helm/helm#32214) ##### Installation and Upgrading Download Helm v4.2.2. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz.sha256sum) / 10c1e36ee8c5f2e2ee25a16599cb03ab74c0953cd889cacb980a49ba4b6574ba) - [MacOS arm64](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz.sha256sum) / 5410a0dae3d5d91f45653b161260d9301aabc4ae80ae50a6605d66884b6df8ea) - [Linux amd64](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz.sha256sum) / 9adafecab4d406853bba163a70e9f104f47dbbf65ce24b7653bae7e36150bcb6) - [Linux arm](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz.sha256sum) / 7e9490169874695e04ab1af47c5620621fc13c84219a258fcc1afdcd40ca7438) - [Linux arm64](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz.sha256sum) / 78803142087a0069fa4b50d3f32a84d3ef25c14d1ee8a40fbccf86a6216d2f36) - [Linux i386](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz.sha256sum) / 8e1fdcda4a476ffc5d1179c7f16d33a3d54267efa08fd720f7678277d68bc2d5) - [Linux loong64](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz.sha256sum) / b8bfe96b8b0b0e2af51af4a00ef521cc5a7e03793aea3568cf8500a63ae05041) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz.sha256sum) / 814a80fd98eb9e4c5a9d610f3b9c15ffe120c2f5e39df16a2f491723ebc90126) - [Linux s390x](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz.sha256sum) / d84cdf1123f20cfbef19a2af1cd6afe8b00626bd9846bccb9dae978c810c8274) - [Linux riscv64](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz.sha256sum) / f07c105180dff2619ab45134b9b47b7845387e8f3299e12ebe0efb87c7548717) - [Windows amd64](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip.sha256sum) / 5fad8562e98c34fa5af3ef904086a5874a6701050f9bf36e30238c975df94dcd) - [Windows arm64](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip.sha256sum) / 2e993d6a1dd8197a33e65d8e90b26df9d248ff3501701dea401856aa265a2dab) This release was signed by [@gjenkins8](https://github.com/gjenkins8) with key BF88 8333 D96A 1C18 E268 2AAE D79D 67C9 EC01 6739, which can be found at <https://keys.openpgp.org/vks/v1/by-fingerprint/BF888333D96A1C18E2682AAED79D67C9EC016739>. Please use the attached signatures for verifying this release using gpg. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. ##### What's Next - 4.2.3 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 ##### Changelog - Revert "fix(kube): prevent spurious early exit in WaitForDelete during informer sync" [`b05881c`](helm/helm@b05881c) (George Jenkins) **Full Changelog**: <helm/helm@v4.2.1...v4.2.2> --- ##### [\`v4.2.1\`](https://github.com/helm/helm/releases/tag/v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1>
##### [\`v4.2.2\`](https://github.com/helm/helm/releases/tag/v4.2.2) Helm v4.2.2 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) ##### Notable Changes - Revert: Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32214](helm/helm#32214) ##### Installation and Upgrading Download Helm v4.2.2. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz.sha256sum) / 10c1e36ee8c5f2e2ee25a16599cb03ab74c0953cd889cacb980a49ba4b6574ba) - [MacOS arm64](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz.sha256sum) / 5410a0dae3d5d91f45653b161260d9301aabc4ae80ae50a6605d66884b6df8ea) - [Linux amd64](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz.sha256sum) / 9adafecab4d406853bba163a70e9f104f47dbbf65ce24b7653bae7e36150bcb6) - [Linux arm](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz.sha256sum) / 7e9490169874695e04ab1af47c5620621fc13c84219a258fcc1afdcd40ca7438) - [Linux arm64](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz.sha256sum) / 78803142087a0069fa4b50d3f32a84d3ef25c14d1ee8a40fbccf86a6216d2f36) - [Linux i386](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz.sha256sum) / 8e1fdcda4a476ffc5d1179c7f16d33a3d54267efa08fd720f7678277d68bc2d5) - [Linux loong64](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz.sha256sum) / b8bfe96b8b0b0e2af51af4a00ef521cc5a7e03793aea3568cf8500a63ae05041) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz.sha256sum) / 814a80fd98eb9e4c5a9d610f3b9c15ffe120c2f5e39df16a2f491723ebc90126) - [Linux s390x](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz.sha256sum) / d84cdf1123f20cfbef19a2af1cd6afe8b00626bd9846bccb9dae978c810c8274) - [Linux riscv64](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz.sha256sum) / f07c105180dff2619ab45134b9b47b7845387e8f3299e12ebe0efb87c7548717) - [Windows amd64](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip.sha256sum) / 5fad8562e98c34fa5af3ef904086a5874a6701050f9bf36e30238c975df94dcd) - [Windows arm64](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip.sha256sum) / 2e993d6a1dd8197a33e65d8e90b26df9d248ff3501701dea401856aa265a2dab) This release was signed by [@gjenkins8](https://github.com/gjenkins8) with key BF88 8333 D96A 1C18 E268 2AAE D79D 67C9 EC01 6739, which can be found at <https://keys.openpgp.org/vks/v1/by-fingerprint/BF888333D96A1C18E2682AAED79D67C9EC016739>. Please use the attached signatures for verifying this release using gpg. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. ##### What's Next - 4.2.3 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 ##### Changelog - Revert "fix(kube): prevent spurious early exit in WaitForDelete during informer sync" [`b05881c`](helm/helm@b05881c) (George Jenkins) **Full Changelog**: <helm/helm@v4.2.1...v4.2.2> --- ##### [\`v4.2.1\`](https://github.com/helm/helm/releases/tag/v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1>
##### [\`v4.2.2\`](https://github.com/helm/helm/releases/tag/v4.2.2) Helm v4.2.2 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) ##### Notable Changes - Revert: Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32214](helm/helm#32214) ##### Installation and Upgrading Download Helm v4.2.2. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz.sha256sum) / 10c1e36ee8c5f2e2ee25a16599cb03ab74c0953cd889cacb980a49ba4b6574ba) - [MacOS arm64](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz.sha256sum) / 5410a0dae3d5d91f45653b161260d9301aabc4ae80ae50a6605d66884b6df8ea) - [Linux amd64](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz.sha256sum) / 9adafecab4d406853bba163a70e9f104f47dbbf65ce24b7653bae7e36150bcb6) - [Linux arm](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz.sha256sum) / 7e9490169874695e04ab1af47c5620621fc13c84219a258fcc1afdcd40ca7438) - [Linux arm64](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz.sha256sum) / 78803142087a0069fa4b50d3f32a84d3ef25c14d1ee8a40fbccf86a6216d2f36) - [Linux i386](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz.sha256sum) / 8e1fdcda4a476ffc5d1179c7f16d33a3d54267efa08fd720f7678277d68bc2d5) - [Linux loong64](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz.sha256sum) / b8bfe96b8b0b0e2af51af4a00ef521cc5a7e03793aea3568cf8500a63ae05041) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz.sha256sum) / 814a80fd98eb9e4c5a9d610f3b9c15ffe120c2f5e39df16a2f491723ebc90126) - [Linux s390x](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz.sha256sum) / d84cdf1123f20cfbef19a2af1cd6afe8b00626bd9846bccb9dae978c810c8274) - [Linux riscv64](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz.sha256sum) / f07c105180dff2619ab45134b9b47b7845387e8f3299e12ebe0efb87c7548717) - [Windows amd64](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip.sha256sum) / 5fad8562e98c34fa5af3ef904086a5874a6701050f9bf36e30238c975df94dcd) - [Windows arm64](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip.sha256sum) / 2e993d6a1dd8197a33e65d8e90b26df9d248ff3501701dea401856aa265a2dab) This release was signed by [@gjenkins8](https://github.com/gjenkins8) with key BF88 8333 D96A 1C18 E268 2AAE D79D 67C9 EC01 6739, which can be found at <https://keys.openpgp.org/vks/v1/by-fingerprint/BF888333D96A1C18E2682AAED79D67C9EC016739>. Please use the attached signatures for verifying this release using gpg. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. ##### What's Next - 4.2.3 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 ##### Changelog - Revert "fix(kube): prevent spurious early exit in WaitForDelete during informer sync" [`b05881c`](helm/helm@b05881c) (George Jenkins) **Full Changelog**: <helm/helm@v4.2.1...v4.2.2> --- ##### [\`v4.2.1\`](https://github.com/helm/helm/releases/tag/v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1>
##### [\`v4.2.2\`](https://github.com/helm/helm/releases/tag/v4.2.2) Helm v4.2.2 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) ##### Notable Changes - Revert: Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32214](helm/helm#32214) ##### Installation and Upgrading Download Helm v4.2.2. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz.sha256sum) / 10c1e36ee8c5f2e2ee25a16599cb03ab74c0953cd889cacb980a49ba4b6574ba) - [MacOS arm64](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz.sha256sum) / 5410a0dae3d5d91f45653b161260d9301aabc4ae80ae50a6605d66884b6df8ea) - [Linux amd64](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz.sha256sum) / 9adafecab4d406853bba163a70e9f104f47dbbf65ce24b7653bae7e36150bcb6) - [Linux arm](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz.sha256sum) / 7e9490169874695e04ab1af47c5620621fc13c84219a258fcc1afdcd40ca7438) - [Linux arm64](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz.sha256sum) / 78803142087a0069fa4b50d3f32a84d3ef25c14d1ee8a40fbccf86a6216d2f36) - [Linux i386](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz.sha256sum) / 8e1fdcda4a476ffc5d1179c7f16d33a3d54267efa08fd720f7678277d68bc2d5) - [Linux loong64](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz.sha256sum) / b8bfe96b8b0b0e2af51af4a00ef521cc5a7e03793aea3568cf8500a63ae05041) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz.sha256sum) / 814a80fd98eb9e4c5a9d610f3b9c15ffe120c2f5e39df16a2f491723ebc90126) - [Linux s390x](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz.sha256sum) / d84cdf1123f20cfbef19a2af1cd6afe8b00626bd9846bccb9dae978c810c8274) - [Linux riscv64](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz.sha256sum) / f07c105180dff2619ab45134b9b47b7845387e8f3299e12ebe0efb87c7548717) - [Windows amd64](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip.sha256sum) / 5fad8562e98c34fa5af3ef904086a5874a6701050f9bf36e30238c975df94dcd) - [Windows arm64](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip.sha256sum) / 2e993d6a1dd8197a33e65d8e90b26df9d248ff3501701dea401856aa265a2dab) This release was signed by [@gjenkins8](https://github.com/gjenkins8) with key BF88 8333 D96A 1C18 E268 2AAE D79D 67C9 EC01 6739, which can be found at <https://keys.openpgp.org/vks/v1/by-fingerprint/BF888333D96A1C18E2682AAED79D67C9EC016739>. Please use the attached signatures for verifying this release using gpg. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. ##### What's Next - 4.2.3 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 ##### Changelog - Revert "fix(kube): prevent spurious early exit in WaitForDelete during informer sync" [`b05881c`](helm/helm@b05881c) (George Jenkins) **Full Changelog**: <helm/helm@v4.2.1...v4.2.2> --- ##### [\`v4.2.1\`](https://github.com/helm/helm/releases/tag/v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1>
##### [\`v4.2.2\`](https://github.com/helm/helm/releases/tag/v4.2.2) Helm v4.2.2 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) ##### Notable Changes - Revert: Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32214](helm/helm#32214) ##### Installation and Upgrading Download Helm v4.2.2. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz.sha256sum) / 10c1e36ee8c5f2e2ee25a16599cb03ab74c0953cd889cacb980a49ba4b6574ba) - [MacOS arm64](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz.sha256sum) / 5410a0dae3d5d91f45653b161260d9301aabc4ae80ae50a6605d66884b6df8ea) - [Linux amd64](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz.sha256sum) / 9adafecab4d406853bba163a70e9f104f47dbbf65ce24b7653bae7e36150bcb6) - [Linux arm](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz.sha256sum) / 7e9490169874695e04ab1af47c5620621fc13c84219a258fcc1afdcd40ca7438) - [Linux arm64](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz.sha256sum) / 78803142087a0069fa4b50d3f32a84d3ef25c14d1ee8a40fbccf86a6216d2f36) - [Linux i386](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz.sha256sum) / 8e1fdcda4a476ffc5d1179c7f16d33a3d54267efa08fd720f7678277d68bc2d5) - [Linux loong64](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz.sha256sum) / b8bfe96b8b0b0e2af51af4a00ef521cc5a7e03793aea3568cf8500a63ae05041) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz.sha256sum) / 814a80fd98eb9e4c5a9d610f3b9c15ffe120c2f5e39df16a2f491723ebc90126) - [Linux s390x](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz.sha256sum) / d84cdf1123f20cfbef19a2af1cd6afe8b00626bd9846bccb9dae978c810c8274) - [Linux riscv64](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz.sha256sum) / f07c105180dff2619ab45134b9b47b7845387e8f3299e12ebe0efb87c7548717) - [Windows amd64](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip.sha256sum) / 5fad8562e98c34fa5af3ef904086a5874a6701050f9bf36e30238c975df94dcd) - [Windows arm64](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip.sha256sum) / 2e993d6a1dd8197a33e65d8e90b26df9d248ff3501701dea401856aa265a2dab) This release was signed by [@gjenkins8](https://github.com/gjenkins8) with key BF88 8333 D96A 1C18 E268 2AAE D79D 67C9 EC01 6739, which can be found at <https://keys.openpgp.org/vks/v1/by-fingerprint/BF888333D96A1C18E2682AAED79D67C9EC016739>. Please use the attached signatures for verifying this release using gpg. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. ##### What's Next - 4.2.3 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 ##### Changelog - Revert "fix(kube): prevent spurious early exit in WaitForDelete during informer sync" [`b05881c`](helm/helm@b05881c) (George Jenkins) **Full Changelog**: <helm/helm@v4.2.1...v4.2.2> --- ##### [\`v4.2.1\`](https://github.com/helm/helm/releases/tag/v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1>
##### [\`v4.2.2\`](https://github.com/helm/helm/releases/tag/v4.2.2) Helm v4.2.2 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) ##### Notable Changes - Revert: Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32214](helm/helm#32214) ##### Installation and Upgrading Download Helm v4.2.2. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz.sha256sum) / 10c1e36ee8c5f2e2ee25a16599cb03ab74c0953cd889cacb980a49ba4b6574ba) - [MacOS arm64](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz.sha256sum) / 5410a0dae3d5d91f45653b161260d9301aabc4ae80ae50a6605d66884b6df8ea) - [Linux amd64](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz.sha256sum) / 9adafecab4d406853bba163a70e9f104f47dbbf65ce24b7653bae7e36150bcb6) - [Linux arm](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz.sha256sum) / 7e9490169874695e04ab1af47c5620621fc13c84219a258fcc1afdcd40ca7438) - [Linux arm64](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz.sha256sum) / 78803142087a0069fa4b50d3f32a84d3ef25c14d1ee8a40fbccf86a6216d2f36) - [Linux i386](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz.sha256sum) / 8e1fdcda4a476ffc5d1179c7f16d33a3d54267efa08fd720f7678277d68bc2d5) - [Linux loong64](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz.sha256sum) / b8bfe96b8b0b0e2af51af4a00ef521cc5a7e03793aea3568cf8500a63ae05041) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz.sha256sum) / 814a80fd98eb9e4c5a9d610f3b9c15ffe120c2f5e39df16a2f491723ebc90126) - [Linux s390x](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz.sha256sum) / d84cdf1123f20cfbef19a2af1cd6afe8b00626bd9846bccb9dae978c810c8274) - [Linux riscv64](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz.sha256sum) / f07c105180dff2619ab45134b9b47b7845387e8f3299e12ebe0efb87c7548717) - [Windows amd64](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip.sha256sum) / 5fad8562e98c34fa5af3ef904086a5874a6701050f9bf36e30238c975df94dcd) - [Windows arm64](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip.sha256sum) / 2e993d6a1dd8197a33e65d8e90b26df9d248ff3501701dea401856aa265a2dab) This release was signed by [@gjenkins8](https://github.com/gjenkins8) with key BF88 8333 D96A 1C18 E268 2AAE D79D 67C9 EC01 6739, which can be found at <https://keys.openpgp.org/vks/v1/by-fingerprint/BF888333D96A1C18E2682AAED79D67C9EC016739>. Please use the attached signatures for verifying this release using gpg. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. ##### What's Next - 4.2.3 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 ##### Changelog - Revert "fix(kube): prevent spurious early exit in WaitForDelete during informer sync" [`b05881c`](helm/helm@b05881c) (George Jenkins) **Full Changelog**: <helm/helm@v4.2.1...v4.2.2> --- ##### [\`v4.2.1\`](https://github.com/helm/helm/releases/tag/v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1>
##### [\`v4.2.2\`](https://github.com/helm/helm/releases/tag/v4.2.2) Helm v4.2.2 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) ##### Notable Changes - Revert: Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32214](helm/helm#32214) ##### Installation and Upgrading Download Helm v4.2.2. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz.sha256sum) / 10c1e36ee8c5f2e2ee25a16599cb03ab74c0953cd889cacb980a49ba4b6574ba) - [MacOS arm64](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz.sha256sum) / 5410a0dae3d5d91f45653b161260d9301aabc4ae80ae50a6605d66884b6df8ea) - [Linux amd64](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz.sha256sum) / 9adafecab4d406853bba163a70e9f104f47dbbf65ce24b7653bae7e36150bcb6) - [Linux arm](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz.sha256sum) / 7e9490169874695e04ab1af47c5620621fc13c84219a258fcc1afdcd40ca7438) - [Linux arm64](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz.sha256sum) / 78803142087a0069fa4b50d3f32a84d3ef25c14d1ee8a40fbccf86a6216d2f36) - [Linux i386](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz.sha256sum) / 8e1fdcda4a476ffc5d1179c7f16d33a3d54267efa08fd720f7678277d68bc2d5) - [Linux loong64](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz.sha256sum) / b8bfe96b8b0b0e2af51af4a00ef521cc5a7e03793aea3568cf8500a63ae05041) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz.sha256sum) / 814a80fd98eb9e4c5a9d610f3b9c15ffe120c2f5e39df16a2f491723ebc90126) - [Linux s390x](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz.sha256sum) / d84cdf1123f20cfbef19a2af1cd6afe8b00626bd9846bccb9dae978c810c8274) - [Linux riscv64](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz.sha256sum) / f07c105180dff2619ab45134b9b47b7845387e8f3299e12ebe0efb87c7548717) - [Windows amd64](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip.sha256sum) / 5fad8562e98c34fa5af3ef904086a5874a6701050f9bf36e30238c975df94dcd) - [Windows arm64](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip.sha256sum) / 2e993d6a1dd8197a33e65d8e90b26df9d248ff3501701dea401856aa265a2dab) This release was signed by [@gjenkins8](https://github.com/gjenkins8) with key BF88 8333 D96A 1C18 E268 2AAE D79D 67C9 EC01 6739, which can be found at <https://keys.openpgp.org/vks/v1/by-fingerprint/BF888333D96A1C18E2682AAED79D67C9EC016739>. Please use the attached signatures for verifying this release using gpg. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. ##### What's Next - 4.2.3 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 ##### Changelog - Revert "fix(kube): prevent spurious early exit in WaitForDelete during informer sync" [`b05881c`](helm/helm@b05881c) (George Jenkins) **Full Changelog**: <helm/helm@v4.2.1...v4.2.2> --- ##### [\`v4.2.1\`](https://github.com/helm/helm/releases/tag/v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1>
##### [\`v4.2.2\`](https://github.com/helm/helm/releases/tag/v4.2.2) Helm v4.2.2 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) ##### Notable Changes - Revert: Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32214](helm/helm#32214) ##### Installation and Upgrading Download Helm v4.2.2. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz.sha256sum) / 10c1e36ee8c5f2e2ee25a16599cb03ab74c0953cd889cacb980a49ba4b6574ba) - [MacOS arm64](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz.sha256sum) / 5410a0dae3d5d91f45653b161260d9301aabc4ae80ae50a6605d66884b6df8ea) - [Linux amd64](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz.sha256sum) / 9adafecab4d406853bba163a70e9f104f47dbbf65ce24b7653bae7e36150bcb6) - [Linux arm](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz.sha256sum) / 7e9490169874695e04ab1af47c5620621fc13c84219a258fcc1afdcd40ca7438) - [Linux arm64](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz.sha256sum) / 78803142087a0069fa4b50d3f32a84d3ef25c14d1ee8a40fbccf86a6216d2f36) - [Linux i386](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz.sha256sum) / 8e1fdcda4a476ffc5d1179c7f16d33a3d54267efa08fd720f7678277d68bc2d5) - [Linux loong64](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz.sha256sum) / b8bfe96b8b0b0e2af51af4a00ef521cc5a7e03793aea3568cf8500a63ae05041) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz.sha256sum) / 814a80fd98eb9e4c5a9d610f3b9c15ffe120c2f5e39df16a2f491723ebc90126) - [Linux s390x](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz.sha256sum) / d84cdf1123f20cfbef19a2af1cd6afe8b00626bd9846bccb9dae978c810c8274) - [Linux riscv64](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz.sha256sum) / f07c105180dff2619ab45134b9b47b7845387e8f3299e12ebe0efb87c7548717) - [Windows amd64](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip.sha256sum) / 5fad8562e98c34fa5af3ef904086a5874a6701050f9bf36e30238c975df94dcd) - [Windows arm64](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip.sha256sum) / 2e993d6a1dd8197a33e65d8e90b26df9d248ff3501701dea401856aa265a2dab) This release was signed by [@gjenkins8](https://github.com/gjenkins8) with key BF88 8333 D96A 1C18 E268 2AAE D79D 67C9 EC01 6739, which can be found at <https://keys.openpgp.org/vks/v1/by-fingerprint/BF888333D96A1C18E2682AAED79D67C9EC016739>. Please use the attached signatures for verifying this release using gpg. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. ##### What's Next - 4.2.3 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 ##### Changelog - Revert "fix(kube): prevent spurious early exit in WaitForDelete during informer sync" [`b05881c`](helm/helm@b05881c) (George Jenkins) **Full Changelog**: <helm/helm@v4.2.1...v4.2.2> --- ##### [\`v4.2.1\`](https://github.com/helm/helm/releases/tag/v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1>
##### [\`v4.2.2\`](https://github.com/helm/helm/releases/tag/v4.2.2) Helm v4.2.2 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) ##### Notable Changes - Revert: Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32214](helm/helm#32214) ##### Installation and Upgrading Download Helm v4.2.2. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz.sha256sum) / 10c1e36ee8c5f2e2ee25a16599cb03ab74c0953cd889cacb980a49ba4b6574ba) - [MacOS arm64](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz.sha256sum) / 5410a0dae3d5d91f45653b161260d9301aabc4ae80ae50a6605d66884b6df8ea) - [Linux amd64](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz.sha256sum) / 9adafecab4d406853bba163a70e9f104f47dbbf65ce24b7653bae7e36150bcb6) - [Linux arm](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz.sha256sum) / 7e9490169874695e04ab1af47c5620621fc13c84219a258fcc1afdcd40ca7438) - [Linux arm64](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz.sha256sum) / 78803142087a0069fa4b50d3f32a84d3ef25c14d1ee8a40fbccf86a6216d2f36) - [Linux i386](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz.sha256sum) / 8e1fdcda4a476ffc5d1179c7f16d33a3d54267efa08fd720f7678277d68bc2d5) - [Linux loong64](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz.sha256sum) / b8bfe96b8b0b0e2af51af4a00ef521cc5a7e03793aea3568cf8500a63ae05041) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz.sha256sum) / 814a80fd98eb9e4c5a9d610f3b9c15ffe120c2f5e39df16a2f491723ebc90126) - [Linux s390x](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz.sha256sum) / d84cdf1123f20cfbef19a2af1cd6afe8b00626bd9846bccb9dae978c810c8274) - [Linux riscv64](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz.sha256sum) / f07c105180dff2619ab45134b9b47b7845387e8f3299e12ebe0efb87c7548717) - [Windows amd64](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip.sha256sum) / 5fad8562e98c34fa5af3ef904086a5874a6701050f9bf36e30238c975df94dcd) - [Windows arm64](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip.sha256sum) / 2e993d6a1dd8197a33e65d8e90b26df9d248ff3501701dea401856aa265a2dab) This release was signed by [@gjenkins8](https://github.com/gjenkins8) with key BF88 8333 D96A 1C18 E268 2AAE D79D 67C9 EC01 6739, which can be found at <https://keys.openpgp.org/vks/v1/by-fingerprint/BF888333D96A1C18E2682AAED79D67C9EC016739>. Please use the attached signatures for verifying this release using gpg. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. ##### What's Next - 4.2.3 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 ##### Changelog - Revert "fix(kube): prevent spurious early exit in WaitForDelete during informer sync" [`b05881c`](helm/helm@b05881c) (George Jenkins) **Full Changelog**: <helm/helm@v4.2.1...v4.2.2> --- ##### [\`v4.2.1\`](https://github.com/helm/helm/releases/tag/v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1>
##### [\`v4.2.2\`](https://github.com/helm/helm/releases/tag/v4.2.2) Helm v4.2.2 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) ##### Notable Changes - Revert: Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32214](helm/helm#32214) ##### Installation and Upgrading Download Helm v4.2.2. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz.sha256sum) / 10c1e36ee8c5f2e2ee25a16599cb03ab74c0953cd889cacb980a49ba4b6574ba) - [MacOS arm64](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz.sha256sum) / 5410a0dae3d5d91f45653b161260d9301aabc4ae80ae50a6605d66884b6df8ea) - [Linux amd64](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz.sha256sum) / 9adafecab4d406853bba163a70e9f104f47dbbf65ce24b7653bae7e36150bcb6) - [Linux arm](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz.sha256sum) / 7e9490169874695e04ab1af47c5620621fc13c84219a258fcc1afdcd40ca7438) - [Linux arm64](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz.sha256sum) / 78803142087a0069fa4b50d3f32a84d3ef25c14d1ee8a40fbccf86a6216d2f36) - [Linux i386](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz.sha256sum) / 8e1fdcda4a476ffc5d1179c7f16d33a3d54267efa08fd720f7678277d68bc2d5) - [Linux loong64](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz.sha256sum) / b8bfe96b8b0b0e2af51af4a00ef521cc5a7e03793aea3568cf8500a63ae05041) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz.sha256sum) / 814a80fd98eb9e4c5a9d610f3b9c15ffe120c2f5e39df16a2f491723ebc90126) - [Linux s390x](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz.sha256sum) / d84cdf1123f20cfbef19a2af1cd6afe8b00626bd9846bccb9dae978c810c8274) - [Linux riscv64](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz.sha256sum) / f07c105180dff2619ab45134b9b47b7845387e8f3299e12ebe0efb87c7548717) - [Windows amd64](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip.sha256sum) / 5fad8562e98c34fa5af3ef904086a5874a6701050f9bf36e30238c975df94dcd) - [Windows arm64](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip.sha256sum) / 2e993d6a1dd8197a33e65d8e90b26df9d248ff3501701dea401856aa265a2dab) This release was signed by [@gjenkins8](https://github.com/gjenkins8) with key BF88 8333 D96A 1C18 E268 2AAE D79D 67C9 EC01 6739, which can be found at <https://keys.openpgp.org/vks/v1/by-fingerprint/BF888333D96A1C18E2682AAED79D67C9EC016739>. Please use the attached signatures for verifying this release using gpg. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. ##### What's Next - 4.2.3 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 ##### Changelog - Revert "fix(kube): prevent spurious early exit in WaitForDelete during informer sync" [`b05881c`](helm/helm@b05881c) (George Jenkins) **Full Changelog**: <helm/helm@v4.2.1...v4.2.2> --- ##### [\`v4.2.1\`](https://github.com/helm/helm/releases/tag/v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1>
##### [\`v4.2.2\`](https://github.com/helm/helm/releases/tag/v4.2.2) Helm v4.2.2 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) ##### Notable Changes - Revert: Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32214](helm/helm#32214) ##### Installation and Upgrading Download Helm v4.2.2. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz.sha256sum) / 10c1e36ee8c5f2e2ee25a16599cb03ab74c0953cd889cacb980a49ba4b6574ba) - [MacOS arm64](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz.sha256sum) / 5410a0dae3d5d91f45653b161260d9301aabc4ae80ae50a6605d66884b6df8ea) - [Linux amd64](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz.sha256sum) / 9adafecab4d406853bba163a70e9f104f47dbbf65ce24b7653bae7e36150bcb6) - [Linux arm](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz.sha256sum) / 7e9490169874695e04ab1af47c5620621fc13c84219a258fcc1afdcd40ca7438) - [Linux arm64](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz.sha256sum) / 78803142087a0069fa4b50d3f32a84d3ef25c14d1ee8a40fbccf86a6216d2f36) - [Linux i386](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz.sha256sum) / 8e1fdcda4a476ffc5d1179c7f16d33a3d54267efa08fd720f7678277d68bc2d5) - [Linux loong64](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz.sha256sum) / b8bfe96b8b0b0e2af51af4a00ef521cc5a7e03793aea3568cf8500a63ae05041) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz.sha256sum) / 814a80fd98eb9e4c5a9d610f3b9c15ffe120c2f5e39df16a2f491723ebc90126) - [Linux s390x](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz.sha256sum) / d84cdf1123f20cfbef19a2af1cd6afe8b00626bd9846bccb9dae978c810c8274) - [Linux riscv64](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz.sha256sum) / f07c105180dff2619ab45134b9b47b7845387e8f3299e12ebe0efb87c7548717) - [Windows amd64](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip.sha256sum) / 5fad8562e98c34fa5af3ef904086a5874a6701050f9bf36e30238c975df94dcd) - [Windows arm64](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip.sha256sum) / 2e993d6a1dd8197a33e65d8e90b26df9d248ff3501701dea401856aa265a2dab) This release was signed by [@gjenkins8](https://github.com/gjenkins8) with key BF88 8333 D96A 1C18 E268 2AAE D79D 67C9 EC01 6739, which can be found at <https://keys.openpgp.org/vks/v1/by-fingerprint/BF888333D96A1C18E2682AAED79D67C9EC016739>. Please use the attached signatures for verifying this release using gpg. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. ##### What's Next - 4.2.3 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 ##### Changelog - Revert "fix(kube): prevent spurious early exit in WaitForDelete during informer sync" [`b05881c`](helm/helm@b05881c) (George Jenkins) **Full Changelog**: <helm/helm@v4.2.1...v4.2.2> --- ##### [\`v4.2.1\`](https://github.com/helm/helm/releases/tag/v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1>
##### [\`v4.2.2\`](https://github.com/helm/helm/releases/tag/v4.2.2) Helm v4.2.2 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) ##### Notable Changes - Revert: Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32214](helm/helm#32214) ##### Installation and Upgrading Download Helm v4.2.2. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-amd64.tar.gz.sha256sum) / 10c1e36ee8c5f2e2ee25a16599cb03ab74c0953cd889cacb980a49ba4b6574ba) - [MacOS arm64](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-darwin-arm64.tar.gz.sha256sum) / 5410a0dae3d5d91f45653b161260d9301aabc4ae80ae50a6605d66884b6df8ea) - [Linux amd64](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-amd64.tar.gz.sha256sum) / 9adafecab4d406853bba163a70e9f104f47dbbf65ce24b7653bae7e36150bcb6) - [Linux arm](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm.tar.gz.sha256sum) / 7e9490169874695e04ab1af47c5620621fc13c84219a258fcc1afdcd40ca7438) - [Linux arm64](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-arm64.tar.gz.sha256sum) / 78803142087a0069fa4b50d3f32a84d3ef25c14d1ee8a40fbccf86a6216d2f36) - [Linux i386](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-386.tar.gz.sha256sum) / 8e1fdcda4a476ffc5d1179c7f16d33a3d54267efa08fd720f7678277d68bc2d5) - [Linux loong64](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-loong64.tar.gz.sha256sum) / b8bfe96b8b0b0e2af51af4a00ef521cc5a7e03793aea3568cf8500a63ae05041) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-ppc64le.tar.gz.sha256sum) / 814a80fd98eb9e4c5a9d610f3b9c15ffe120c2f5e39df16a2f491723ebc90126) - [Linux s390x](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-s390x.tar.gz.sha256sum) / d84cdf1123f20cfbef19a2af1cd6afe8b00626bd9846bccb9dae978c810c8274) - [Linux riscv64](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.2-linux-riscv64.tar.gz.sha256sum) / f07c105180dff2619ab45134b9b47b7845387e8f3299e12ebe0efb87c7548717) - [Windows amd64](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-amd64.zip.sha256sum) / 5fad8562e98c34fa5af3ef904086a5874a6701050f9bf36e30238c975df94dcd) - [Windows arm64](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.2-windows-arm64.zip.sha256sum) / 2e993d6a1dd8197a33e65d8e90b26df9d248ff3501701dea401856aa265a2dab) This release was signed by [@gjenkins8](https://github.com/gjenkins8) with key BF88 8333 D96A 1C18 E268 2AAE D79D 67C9 EC01 6739, which can be found at <https://keys.openpgp.org/vks/v1/by-fingerprint/BF888333D96A1C18E2682AAED79D67C9EC016739>. Please use the attached signatures for verifying this release using gpg. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. ##### What's Next - 4.2.3 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 ##### Changelog - Revert "fix(kube): prevent spurious early exit in WaitForDelete during informer sync" [`b05881c`](helm/helm@b05881c) (George Jenkins) **Full Changelog**: <helm/helm@v4.2.1...v4.2.2> --- ##### [\`v4.2.1\`](https://github.com/helm/helm/releases/tag/v4.2.1) Helm v4.2.1 is a patch release. Users are encouraged to upgrade for the best experience. The community keeps growing, and we'd love to see you there! - Join the discussion in [Kubernetes Slack](https://kubernetes.slack.com): - for questions and just to hang out - for discussing PRs, code, and bugs - Hang out at the Public Developer Call: Thursday, 9:30 Pacific via [Zoom](https://zoom.us/j/696660622) - Test, debug, and contribute charts: [ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0) #### Notable Changes - Fixed data race detected by -race flag when concurrent goroutines (upgrade + rollback, install + uninstall) both call GetWaiterWithOptions on the same FailingKubeClient instance [#31925](helm/helm#31925) - Fixed helm command success messages writing to stderr instead of stdout. Now correctly outputing to stdout [#32056](helm/helm#32056) - Fixed Helm 4 emitting "unable to find exact version" when using version range constraints [#31757](helm/helm#31757) - Fixed a race condition in WaitForDelete where the status observer canceled the watch too early, causing intermittent failures when running a full test suite [#32081](helm/helm#32081) - Bumped golang.org/x/net to v0.55.0 to address GO-2026-5026 [#32153](helm/helm#32153) - Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [#32128](helm/helm#32128) - Dependency updates #### Installation and Upgrading Download Helm v4.2.1. The common platform binaries are here: - [MacOS amd64](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-amd64.tar.gz.sha256sum) / 2a21c9f368d608bcf6eb794ebc06514eb6b529a846b60fe4a43dea7bcce65228) - [MacOS arm64](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-darwin-arm64.tar.gz.sha256sum) / 896472d2ec0740c60f64a9df0fc30d478beee38a1a2a6ed91aa6e6ee177c1575) - [Linux amd64](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-amd64.tar.gz.sha256sum) / 479dca836e5b45e8bd222400c5591b0e3a647378f03ff96597180db97c17fdae) - [Linux arm](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm.tar.gz.sha256sum) / 49e8f7856de6eab170dc09671cfb0578cc455d820df5b0f54e6453058dc0e3f3) - [Linux arm64](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-arm64.tar.gz.sha256sum) / 596b9a73d366c1e72ce67d595c22805480e30914593aafbc9f547694e72814db) - [Linux i386](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-386.tar.gz.sha256sum) / e038eab680f22b1cebe68fd0536cf2397b0c10798dcb23c28e500e0804ec1a55) - [Linux loong64](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-loong64.tar.gz.sha256sum) / 8ae26f15638d951c4ed21d0d3018b8800a137646e5e5151a3856cf324c2852ae) - [Linux ppc64le](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-ppc64le.tar.gz.sha256sum) / 6f34eca5e314e941577a07be6c8b356f66b9cdefbed1175da1e7916368febcfc) - [Linux s390x](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-s390x.tar.gz.sha256sum) / e6355691887d4185b7e077f058483c04f353229feb7d4a72edc3ebe0b8738a6a) - [Linux riscv64](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz) ([checksum](https://get.helm.sh/helm-v4.2.1-linux-riscv64.tar.gz.sha256sum) / 16a4299f14ff1ffa79bb22115051911c662fa2ecdd90e85b65d7d143e8de9d02) - [Windows amd64](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-amd64.zip.sha256sum) / 6e7fa7839444b8ddc407c5bcdb1edd1024f57d09c2db971dec511ee2f2616eb0) - [Windows arm64](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip) ([checksum](https://get.helm.sh/helm-v4.2.1-windows-arm64.zip.sha256sum) / ae4c9acd0d9acd1f9e9da2f60105f793f65fd49ab7c03c6c7d13804c3b885657) This release was signed with `208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155` and can be found at [@scottrigby](https://github.com/scottrigby) [keybase account](https://keybase.io/r6by). Please use the attached signatures for verifying this release using `gpg`. The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get you going from there. For **upgrade instructions** or detailed installation notes, check the [install guide](https://helm.sh/docs/intro/install/). You can also use a [script to install](https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-4) on any system with `bash`. #### What's Next - 4.2.2 and 3.21.2 are the next patch releases scheduled for July 8, 2026 - 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026 #### Changelog - fix: protect FailingKubeClient.RecordedWaitOptions from data race ([#31925](helm/helm#31925)) [`d591a19`](helm/helm@d591a19) (Terry Howe) - fix: route registry client output to stdout instead of stderr ([#32056](helm/helm#32056)) [`2a9fcae`](helm/helm@2a9fcae) (Terry Howe) - chore(deps): bump oras.land/oras-go/v2 from 2.6.0 to 2.6.1 [`ffa5bd6`](helm/helm@ffa5bd6) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.52.0 to 0.53.0 [`9f9dbaf`](helm/helm@9f9dbaf) (dependabot\[bot]) - chore(deps): bump golang.org/x/term from 0.43.0 to 0.44.0 [`64a2891`](helm/helm@64a2891) (dependabot\[bot]) - chore(deps): bump golang.org/x/text from 0.37.0 to 0.38.0 [`e54a4a2`](helm/helm@e54a4a2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.1 to 4.36.2 [`acb762b`](helm/helm@acb762b) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.36.0 to 4.36.1 [`768586d`](helm/helm@768586d) (dependabot\[bot]) - fix(version): avoid false range detection on prerelease x/X [`eabfae5`](helm/helm@eabfae5) (Benoit Tigeot) - fix(version): version range || can has no space [`e3fd51f`](helm/helm@e3fd51f) (Benoit Tigeot) - feat: report in debug the version we select with version range arg [`1e47395`](helm/helm@1e47395) (Benoit Tigeot) - fix: prevent warning when using version range constraints [`a33e239`](helm/helm@a33e239) (Benoit Tigeot) - fix(kube): always propagate context.Canceled in WaitForDelete [`fa06d44`](helm/helm@fa06d44) (Terry Howe) - fix(kube): prevent spurious early exit in WaitForDelete during informer sync [`360d483`](helm/helm@360d483) (Terry Howe) - chore(deps): bump github.com/tetratelabs/wazero from 1.11.0 to 1.12.0 [`7651edf`](helm/helm@7651edf) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0 [`b132e7e`](helm/helm@b132e7e) (dependabot\[bot]) - fix(deps): bump golang.org/x/net to v0.55.0 to address GO-2026-5026 [`eee491a`](helm/helm@eee491a) (Terry Howe) - chore(deps): bump golangci/golangci-lint-action from 9.2.0 to 9.2.1 [`3e3c575`](helm/helm@3e3c575) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 [`c4ce2bb`](helm/helm@c4ce2bb) (dependabot\[bot]) - chore(deps): bump actions/stale from 10.2.0 to 10.3.0 [`3892dc2`](helm/helm@3892dc2) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.4 to 4.35.5 [`c4bbb62`](helm/helm@c4bbb62) (dependabot\[bot]) - chore(deps): bump golang.org/x/crypto from 0.50.0 to 0.51.0 [`a0d7f16`](helm/helm@a0d7f16) (dependabot\[bot]) - chore(deps): bump github/codeql-action from 4.35.3 to 4.35.4 [`8a3de05`](helm/helm@8a3de05) (dependabot\[bot]) - fix(upstream): upgrade to cli-utils 1.2.1, controller-runtime 0.24.1 and k8s 1.36.1 [`57a4803`](helm/helm@57a4803) (Matheus Pimenta) - chore(deps): bump github.com/fluxcd/cli-utils from 1.2.0 to 1.2.1 [`b33ae02`](helm/helm@b33ae02) (dependabot\[bot]) **Full Changelog**: <helm/helm@v4.2.0...v4.2.1>
Summary
helm registry login,helm push, andhelm pullwere writing success messages (Login Succeeded,Pushed:,Pulled:,Digest:) to stderr instead of stdoutnewDefaultRegistryClientandnewRegistryClientWithTLSinpkg/cmd/root.gohard-codedos.Stderras the registry client writer, ignoring theout io.Writer(os.Stdout) passed frommain()out io.Writerthrough the three registry client factory functions and update all call sites inpkg/cmd/Debug/warning output via
slogremains on stderr. Only user-facing success messages move to stdout.Test plan
helm registry login <host> -u user -p pass > stdout.log 2> stderr.log— verifyLogin Succeededappears instdout.loghelm push chart.tgz oci://... > stdout.log 2> stderr.log— verifyPushed:andDigest:appear instdout.loghelm pull oci://... > stdout.log 2> stderr.log— verifyPulled:andDigest:appear instdout.loggo test ./pkg/cmd/...Closes: #13464
🤖 Generated with Claude Code