{"id":"SUSE-SU-2026:24282-1","summary":"Security update for helm","details":"This update for helm fixes the following issues:\n\n- CVE-2026-33814: golang.org/x/net/http2: infinite loop in HTTP/2 transport when given bad SETTINGS_MAX_FRAME_SIZE\n  (bsc#1265758).\n- CVE-2026-35204: github.com/helm/helm: helm.sh/helm/v4: Helm: Arbitrary file write via specially crafted plugin\n  (bsc#1261939).\n- CVE-2026-35205: github.com/helm/helm: helm.sh/helm/v4: Helm: Arbitrary code execution due to insufficient plugin\n  provenance verification (bsc#1261935).\n- CVE-2026-35206: github.com/helm/helm: Helm: Files written to unexpected directory via specially crafted Chart\n  (bsc#1261938).\n- CVE-2026-41178: go.opentelemetry.io/otel/baggage,go.opentelemetry.io/otel/propagation: no rejection of raw-length\n  headers in baggage parsing allows for DoS via oversized inputs (bsc#1276510).\n- CVE-2026-41888: github.com/distribution/distribution/v3: tag deletion bypasses the storage.delete.enabled\n  configuration (bsc#1265428).\n- CVE-2026-48978: oras.land/oras-go/v2/registry/remote/auth: Malicious registry can hijack Bearer token realm to\n  exfiltrate credentials and refresh tokens (bsc#1270127).\n- CVE-2026-50151: oras-go: Credential forwarding via unvalidated Location header during blob upload (bsc#1271660).\n- CVE-2026-50163: oras-go: Information disclosure and arbitrary file access via crafted tarball hardlinks (bsc#1276327).\n- CVE-2026-56852: golang.org/x/text/unicode/norm: infinite loop on truncated/invalid UTF-8 input (bsc#1271997).\n- CVE-2026-56854,CVE-2026-56855,CVE-2026-78662: golang.org/x/crypto/ssh: authentication bypass and deadlocks in the\n  crypto/ssh library (bsc#1281426).\n- CVE-2026-56864: x/mod/sumdb: ignore unrelated, unauthenticated hashes in Lookup (bsc#1275025).\n- CVE-2026-56865: x/mod/sumdb/tlog: fix transparency log tile verification bypass (bsc#1275024).\n- CVE-2026-63209: github.com/klauspost/compress: signed integer overflow in s2.NewDict() allows an attacker to bypass\n  repeat index validation and cause a process crash (bsc#1283642).\n- CVE-2026-81870: OpenTelemetry-Go: Information disclosure via exporter (bsc#1284104).\n- CVE-2026-81871: go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc: OpenTelemetry-Go: TLS certificate bypass\n  allows log telemetry interception and alteration (bsc#1281468).\n- CVE-2026-81872: go.opentelemetry.io/otel/sdk/log: OpenTelemetry-Go: Denial of Service via attacker-driven log emission\n  (bsc#1281469).\n- CVE-2026-85732: oras.land/oras-go/v2: blind SSRF via unvalidated Link header URL in pagination allows internal network\n  probing (bsc#1281112).\n- gRPC-Go: several issues affecting the xDS RBAC authorization engine and the HTTP/2 transport server implementation\n  (bsc#1276514).\n\nChanges for helm:\n\n- update to 4.3.0:\n * feat: Add duration functions\n * feat(engine): add debug logging when lookup returns empty\n * feat: add ownership verification before deleting resources\n * feat: honor SOURCE_DATE_EPOCH for chart archives\n * feat(rollback): add --description flag to provide rollback\n reason\n * fix (internal/plugin): remove zero-width spaces from plugin\n name comment\n * fix(loader): do not drop values files ending at a 4096-byte\n boundary\n * fix(chart): normalize StampModTimes timestamp to UTC/truncate\n + Chart.lock reproducibility test\n * fix(provenance): support GnuPG keybox (pubring.kbx) keyrings\n * fix(template): regression - route registry messages to stderr\n in template and show\n * refactor: lower resync period from one hour to 3 minutes\n * perf: enable concurrent status computation to prevent\n multi-minute delays\n * fix: Improve error reporting for helm template --debug with\n --show-only- #31185\n * fix: fetch logs from all containers in test pods- #32099\n * fix(provenance): check error return in Digest and\n encodeRelease- #32136\n * fix panic on repeated IsReachable calls- #32184\n * fix: set [pull,push] scope when helm push to a registry(use\n token auth) - v4- #31211\n * Fix missing conflict retry with server-side apply- #32088\n * Properly format the extra field in gzipped packages- #31884\n * Fix vanishing empty lines- #32327\n * fix: pass registry client to downloader.Manager in upgrade-\n #32400\n * chore(deps): bump google.golang.org/grpc from 1.80.0 to 1.82.1-\n #32450\n * fix: bump go.opentelemetry.io/otel to v1.44.0 for GO-2026-5158-\n #32521\n * chore(deps): bump golang.org/x/crypto from 0.53.0 to 0.54.0\n 43e8b7f (Terry Howe)\n * bump golang.org/x/text to v.0.40.0\n * Revert: Fixed a race condition in WaitForDelete where the status\n observer canceled the watch too early, causing intermittent\n failures when running a full test suite #32214\n * Fixed data race detected by -race flag when concurrent\n goroutines (upgrade + rollback, install + uninstall) both call\n GetWaiterWithOptions on the same FailingKubeClient instance\n #31925\n * Fixed helm command success messages writing to stderr instead\n of stdout. Now correctly outputing to stdout #32056\n * Fixed Helm 4 emitting \"unable to find exact version\" when using\n version range constraints #31757\n * Fixed a race condition in WaitForDelete where the status\n failures when running a full test suite #32081\n #32153\n * Fixed SDK errors by upgrading dependencies: cli-utils 1.2.1,\n controller-runtime 0.24.1 and k8s 1.36.1 #32128\n * Dependency updates\n * Bump to version v4.2 0646808 (George Jenkins)\n * build: Clean up Goreleaser change (#32098) e23bf3a (Scott\n Rigby)\n * fix: add -extldflags -static to dist target to match\n build-cross f60ab7c (Terry Howe)\n * build: use goreleaser build with manual archive creation\n 64aa46f (Terry Howe)\n * chore: remove build-cross dependency from test-acceptance\n d199a1a (Terry Howe)\n * ci: add fetch-depth 0 to canary checkout for goreleaser 8289940\n * fix: address goreleaser build issues flagged in review c075022\n (Terry Howe)\n * fix: pass VERSION as GORELEASER_CURRENT_TAG to preserve\n v-prefix in archive names 04885dd (Terry Howe)\n * fix: disable goreleaser checksums.txt and restrict zip to\n windows only 93103ce (Terry Howe)\n * fix: use index for optional env var in version_template e49a1dc\n * fix: canary build file names eaa0910 (Terry Howe)\n * Fix archive name 5a75279 (Terry Howe)\n * fix goreleaser archive 37284a9 (Terry Howe)\n * add support for loong64 45336cc (Terry Howe)\n * fix artifact directory a9659b0 (Terry Howe)\n * update configuration to v2 e368f17 (Terry Howe)\n * remove GOTOOLCHAIN e7bea85 (Terry Howe)\n * chore: replace mitchellh/gox with goreleaser 075c096 (Terry\n Howe)\n * chore(deps): bump github.com/distribution/distribution/v3\n 12f2c41 (dependabot[bot])\n * chore(deps): bump github/codeql-action from 4.35.2 to 4.35.3\n 58e8ffd (dependabot[bot])\n * chore(deps): bump github.com/Masterminds/semver/v3 from 3.4.0\n to 3.5.0 e61bbfb (dependabot[bot])\n * Upgrade kstatus to 1.2 and controller-runtime to 0.24 081c6df\n (Matheus Pimenta)\n * fix: adds topLevel permissions to improve openSSF scores\n 277d970 (Gagan H R)\n * Upgrade Go to 1.26, Kubernetes to 1.36, kstatus to 1.1 a4a9cc7\n * fix(templating): hooks conflicting with templates in\n post-renderers (#32049) 8f56f24 (Matheus Pimenta)\n * docs: fix grammar and spacing in CONTRIBUTING.md db40adb\n (Mohit)\n * chore(deps): bump the k8s-io group with 7 updates 775e794\n (dependabot[bot])\n * chore(deps): bump github/codeql-action from 4.35.1 to 4.35.2\n 934ace3 (dependabot[bot])\n * fix(templating): SplitManifests must preserve line endings for\n downstream YAML parsers (#31952) 265c5eb (Matheus Pimenta)\n * chore(deps): bump github.com/mattn/go-shellwords from 1.0.12 to\n 1.0.13 48e2b7d (dependabot[bot])\n * Update pkg/chart/common/util/coalesce.go a8e2497 (Evans Mungai)\n * test(values): Add test for nil cleanup in partially overridden\n subchart maps 52fc971 (Johannes Lohmer)\n * fix(values): do not copy chart-default nils into coalesced\n values 0063877 (Johannes Lohmer)\n * test(values): add test for subchart nil producing %!s() 6eb4ebf\n (Johannes Lohmer)\n * test(values): add tests for subchart nil value regressions\n 5cb4e7d (Johannes Lohmer)\n * chore(deps): bump actions/upload-artifact from 7.0.0 to 7.0.1\n b5c7c80 (dependabot[bot])\n * fix(templating): fix wrong YAML separator parsing for\n post-renderers (#31941) a27f1ad (Matheus Pimenta)\n * fix: add debug logging to HTTP getter for helm pull c26be60\n (Cairon)\n * chore(deps): bump golang.org/x/crypto from 0.49.0 to 0.50.0\n 953f5f0 (dependabot[bot])\n * chore(deps): bump golang.org/x/term from 0.41.0 to 0.42.0\n 10fc5f3 (dependabot[bot])\n * chore(deps): bump golang.org/x/text from 0.35.0 to 0.36.0\n d89e7c6 (dependabot[bot])\n * chore: Update release notes script for Helm v4 8a95461 (George\n Jenkins)\n * refactor(cli): share RetryingRoundTripper via pkg/kubeenv\n 213c869 (Sumit Solanki)\n * chore(deps): bump github.com/lib/pq from 1.12.2 to 1.12.3\n bd5027a (dependabot[bot])\n * fix: unnecessary-format lint issues from merge 087736b (George\n * fix: Plugin missing provenance bypass 586eb57 (George Jenkins)\n * chore(deps): bump github.com/fluxcd/cli-utils c8c5dfa\n * chore(deps): bump\n go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp\n 998466c (dependabot[bot])\n go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp\n b0cec58 (dependabot[bot])\n go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp\n 6ebfb29 (dependabot[bot])\n * test(kube): fix flaky WaitForDelete test by avoiding informer\n sync race a7f8443 (Terry Howe)\n * test(kube): fix flaky WaitForDelete timing in status wait tests\n 4c0d21f (Terry Howe)\n 08dea9c (dependabot[bot])\n * Minor nit: fix import instructions to comply with canonical\n import paths de58531 (Anmol Virdi)\n 9b1ad4c (dependabot[bot])\n * fix(action): return correct error variable in prepareUpgrade\n 8ef2d45 (Rhys McNeill)\n * chore(deps): bump github.com/lib/pq from 1.12.1 to 1.12.2\n cd7cf76 (dependabot[bot])\n * chore(deps): bump github/codeql-action from 4.30.7 to 4.35.1\n 45ee55b (dependabot[bot])\n * chore(deps): bump github.com/lib/pq from 1.12.0 to 1.12.1\n 9a06741 (dependabot[bot])\n * chore(deps): bump actions/setup-go from 6.2.0 to 6.4.0 d1e31ca\n * fix(kube): clarify server-side apply patch errors f257c95\n (abhay1999)\n workflow 7025480 (Terry Howe)\n * refactor(cli): decouple EnvSettings from pkg/kube 64f1d0a\n (Sumit Solanki)\n * docs(registry): fix incorrect and improve clarity of comments\n in client.go 85bf56e (Debasish Mohanty)\n * refactor(cli): decouple EnvSettings from pkg/kube to avoid\n import cycles 1549937 (Sumit Solanki)\n * chore(deps): bump github.com/ProtonMail/go-crypto from 1.3.0 to\n 1.4.1 c7a75b1 (dependabot[bot])\n * chore(deps): bump github.com/lib/pq from 1.11.2 to 1.12.0\n 3a7573a (dependabot[bot])\n * chore(deps): bump github.com/fatih/color from 1.18.0 to 1.19.0\n 0229da1 (dependabot[bot])\n * docs(engine): fix misleading toTOML doc comment c1a5a6e (Ilya\n Kiselev)\n * feat(engine): add mustToToml template function b075f7a (Ilya\n * chore: fix unnecessary-format issues from revive 7edfff3\n (Matthieu MOREL)\n * chore(deps): bump google.golang.org/grpc from 1.78.0 to 1.79.3\n 37185d2 (dependabot[bot])\n * chore: fix bool-compare issues from testifylint 071558d\n * chore: enable perfsprint linter 6249489 (Matthieu MOREL)\n * ignore error plugin loads (cli, getter) 47a0840 (George\n * chore(deps): bump golang.org/x/crypto from 0.48.0 to 0.49.0\n 3d06fd1 (dependabot[bot])\n * fix(kube): remove legacy import comments from test files\n e64d628 (Terry Howe)\n * pkg/kube: remove legacy import comments d7cdc9e (abhay1999)\n * fix: Plugin version path traversal 36dcc27 (George Jenkins)\n * chore(deps): bump golang.org/x/term from 0.40.0 to 0.41.0\n c4be7af (dependabot[bot])\n * chore: fix some minor issues in the comments 259f181 (tsinglua)\n * fix: Chart dot-name path bug 6018499 (George Jenkins)\n * chore(deps): bump sigs.k8s.io/controller-runtime from 0.23.1 to\n 0.23.3 74e7cf8 (dependabot[bot])\n * fix: insert newline after doc separators glued to content by\n template trimming af94abf (Matheus Pimenta)\n * chore(deps): bump github.com/cloudflare/circl from 1.6.1 to\n 1.6.3 16073b1 (dependabot[bot])\n * chore: enable modernize linter (#31860) e31a078 (Matthieu\n MOREL)\n * Restored --atomic flag on install command 16573f8 (Travis\n Leeden)\n * fix: bump go.opentelemetry.io/otel/sdk to v1.40.0 for\n GO-2026-4394 b550ce9 (Terry Howe)\n * fix: bump fluxcd/cli-utils to v0.37.2-flux.1 1dfa77e (Terry\n * Update pkg/cmd/status.go 5d40f17 (Matthieu MOREL)\n * chore(internal): enable perfsprint linter (#31871) d4f6193\n * chore(deps): bump actions/upload-artifact from 6.0.0 to 7.0.0\n 82d9bed (dependabot[bot])\n * chore(pkg): fix perfsprint linter issues part 6 dc0e3f1\n * chore(pkg): enable perfsprint linter e3c74fd (Matthieu MOREL)\n * chore(pkg): enable perfsprint linter 1d2d63c (Matthieu MOREL)\n * chore(pkg): enable perfsprint linter 63f03c0 (Matthieu MOREL)\n * chore(pkg): enable perfsprint linter c25c988 (Matthieu MOREL)\n * chore(pkg): enable perfsprint linter 0fecfd0 (Matthieu MOREL)\n * chore(internal): enable perfsprint linter 6524162 (Matthieu\n * chore(pkg): enable perfsprint linter 6c2cb2f (Matthieu MOREL)\n * chore(internal): enable perfsprint linter 9409226 (Matthieu\n * Replace unneeded use of t.Fatalf with t.Fatal 36cb3a2 (Mads\n Jensen)\n * fix: enable nolinlint linter 5b6c6bb (Matthieu MOREL)\n * fixup strings.Cut variables b667317 (George Jenkins)\n * chore: Improve AGENTS.md 956c724 (George Jenkins)\n * chore: fixes 92b64e8 (George Jenkins)\n * fix: correct import comment in statuswait.go from v3 to v4\n c59c140 (rohansood10)\n * fix: handle OCI digest algorithm prefix in chart downloader\n (#31601) ee01860 (Evans Mungai)\n * chore(deps): bump actions/stale from 10.1.1 to 10.2.0 304d25f\n * chore(deps): bump the k8s-io group with 7 updates 0b13436\n * feat(release): add internal/release/v2 package for chart v3\n support (#31709) 4a91f3a (Evans Mungai)\n 7823853 (dependabot[bot])\n aec7ace (dependabot[bot])\n a23b638 (dependabot[bot])\n 5cddc95 (dependabot[bot])\n * chore(deps): bump sigs.k8s.io/kustomize/kyaml from 0.21.0 to\n 0.21.1 2e266c3 (dependabot[bot])\n * fix(pkg): errorlint linter 259f76a (Matthieu MOREL)\n * fix(internal): errorlint linter 0254182 (Matthieu MOREL)\n * fix(pkg): errorlint linter 6d1490e (Matthieu MOREL)\n * fix(pkg): errorlint linter 4d0ae7f (Matthieu MOREL)\n * fix(internal): errorlint linter abecafa (Matthieu MOREL)\n * fix(pkg): errorlint linter 4330bde (Matthieu MOREL)\n * fix(pkg): errorlint linter c8989d9 (Matthieu MOREL)\n * fix(cmd): errorlint linter edbd705 (Matthieu MOREL)\n * chore: new KEYS entry for George Jenkins 5638c35 (George\n * fix(downloader): safely handle concurrent file writes on\n Windows 76eb37c (Orgad Shaneh)\n * fix(install): check nil for restClientGetter and fix tests\n 9817a68 (Manuel Alonso)\n * feat(create): add --chart-api-version flag (when\n HELM_EXPERIMENTAL_CHART_V3 env var is set) (#31592) 5aac320\n (Evans Mungai)\n * chore(pkg): fix modernize linter 0d75d86 (Matthieu MOREL)\n * chore(internal): fix modernize linter 859292e (Matthieu MOREL)\n * chore(pkg): fix modernize linter 5cc2e55 (Matthieu MOREL)\n * chore(pkg): fix modernize linter ba38159 (Matthieu MOREL)\n * chore(internal): fix modernize linter e2d184c (Matthieu MOREL)\n * chore(pkg): fix modernize linter 111d4e6 (Matthieu MOREL)\n * add image index test e8f386b (Pedro Torres)\n * fix pulling charts from OCI indices d983696 (Pedro Torres)\n 9c9c3a6 (dependabot[bot])\n * Revert \"Consider GroupVersionKind when matching resources\"\n 787b61c (Matheus Pimenta)\n * chore(deps): bump sigs.k8s.io/controller-runtime from 0.23.0 to\n 0.23.1 becf9bf (dependabot[bot])\n * fix(template): deprecate unused --hide-notes and\n --render-subchart-notes flags 6d5f56f (Scott Rigby)\n * chore(deps): bump github.com/fluxcd/cli-utils b53198e\n * chore(deps): bump actions/checkout from 6.0.1 to 6.0.2 b59e533\n * whitespace ec07265 (Austin Abro)\n * fix(copystructure): handle nil elements in slice copying\n e3829eb (Philipp Born)\n * use logger with waiter 63b40a7 (Austin Abro)\n * feat(kstatus): fine-grained context options for waiting b0b35f1\n * Apply suggestions from code review 26e28e8 (George Jenkins)\n * Remove legacy sync-repo.sh script 97fd007 (Jeevan Yewale)\n * chore(deps): bump sigs.k8s.io/controller-runtime from 0.22.4 to\n 0.23.0 5262007 (dependabot[bot])\n * docs: document uninstall using cascade foreground flag e70d59d\n * bugfix(kstatus): do not wait forever on failed resources\n bbec77c (Matheus Pimenta)\n * Modernize Helm v3 CONTRIBUTING.md 443a2a6 (George Jenkins)\n * chore(defaults): server-side apply SDK defaults should always\n match the CLI defaults c1cc625 (Matheus Pimenta)\n * chore: clarify --wait flag help text 828038a (Evans Mungai)\n * chore(deps): bump actions/setup-go from 6.1.0 to 6.2.0 e223771\n * chore(refactor): better testing and functionality for\n installing crd 6501ef4 (Manuel Alonso)\n * bugfix(storage): fix storage not getting logger from driver\n a8eb527 (Matheus Pimenta)\n da1d68a (dependabot[bot])\n * fix(test): fix tests and check nil for restclient 0f949a9\n (Manuel Alonso)\n * fix(test): merge fix correctly 561410a (Manuel Alonso Gonzalez)\n * Remove refactorring changes from coalesce_test.go 0298b2f\n * Fix import b8937ad (Evans Mungai)\n * Update pkg/chart/common/util/coalesce_test.go a333bba (Evans\n Mungai)\n * Fix rollback for missing resources 374aeb4 (Feruzjon\n Muyassarov)\n * fix(install): add more tests and check nil file data 00f0a48\n * fix(test): no check empty resources 0357e8d (Manuel Alonso)\n * fix(install): check lenght and file nil, add tests 52235cc\n * fix(action): crd resources can be empty 268593b (Manuel Alonso)\n * fix: casing issue fixed 1709114 (Mujib Ahasan)\n * fix: error handled correctly 9486062 (Mujib Ahasan)\n * fix: doc string added 12e8b71 (Mujib Ahasan)\n * Fix lint warning 3416dd5 (Evans Mungai)\n * Preserve nil values in chart already 679f051 (Evans Mungai)\n * fix(values): preserve nil values when chart default is empty\n map 292fe70 (Evans Mungai)\n * update: test coverage added for helper function\n validateNameAndGenerateName 1154099 (Mujib Ahasan)\n * update: helper function added for the business logic 522d2fe\n (Mujib Ahasan)\n * generateName is also considered in logic 6769fb6 (Mujib Ahasan)\n * fxi: test concurrency download index 64bae71 (Terry Howe)\n * update: business logic respected for skipping object missing\n name b357bca (Mujib Ahasan)\n * fixed: --dry-run=server now respect generateName 2820ebe (Mujib\n Ahasan)\n * Make error message instructional for the case of lock file\n being out of date 1836c59 (Andreas Sommer)\n - GHSA-q5jf-9vfq-h4h7 Plugin verification fails open when .prov\n is missing, allowing unsigned plugin install\n - GHSA-vmx8-mqv2-9gmg Path traversal in plugin metadata version\n enables arbitrary file write outside Helm plugin directory\n - fix: Plugin missing provenance bypass 05fa379 (George\n - fix: Chart dot-name path bug 4e7994d (George Jenkins)\n - ignore error plugin loads (cli, getter) 2581943 (George\n - fix: Plugin version path traversal 36c8539 (George Jenkins)\n scorecards workflow c61e086 (Terry Howe)\n * Fixed a bug where --dry-run=server was not respecting\n generateName #31563\n * Fixed a bug where empty CRD resources caused a crash. Now it\n prints an error #31578\n * Fixed a bug where OCI references with tag+digest failed with\n \"invalid byte\" error #31601\n * Fixed a bug where user-provided nil value was not preserved\n when chart has an empty map or no default for a key #31644\n * Fixed a regression since Helm 3.18.0 where Pulling charts\n from OCI repositories that use an index to store both\n Container Images and Helm Charts under the same tag failed\n #31776\n * Fixed a Helm 4 regression where gotemplate white space\n trimming directly after YAML doc separators, when present\n after postrendering, caused YAML file corruption #31868\n * Fixed a bug where `FailedStatus` is treated as a terminal\n state, causing upgrades to fail prematurely when cluster\n autoscalers needed time to provision nodes, or when pods were\n being deleted during rolling updates #31897\n * Fixed broken backwards compatibility for deprecated\n `--atomic` flag on install command #31901\n * SDK: Fixed a Windows 'Access Deined' error if multiple\n processes try to download the same chart version concurrently\n #31128\n * SDK: Fixed a bug where users did not receive any logs from\n the waiter, causing confusion as several minutes could pass\n with no user feedback #31717\n * SDK: Fixed a bug where server-side apply defaults did not\n always match the CLI defaults #31732\n * SDK: Fixed a Go import issue when downstream tooling\n attempted to vendor helm.sh/helm/v4/pkg/kube #31852\n - Fixed a bug where --dry-run=server was not respecting\n - Fixed a bug where empty CRD resources caused a crash. Now it\n - Fixed a bug where OCI references with tag+digest failed with\n - Fixed a bug where user-provided nil value was not preserved\n - Fixed a regression since Helm 3.18.0 where Pulling charts\n - Fixed a Helm 4 regression where gotemplate white space\n - Fixed a bug where FailedStatus is treated as a terminal\n - Fixed broken backwards compatibility for deprecated --atomic\n flag on install command #31901\n - SDK: Fixed a Windows 'Access Deined' error if multiple\n - SDK: Fixed a bug where users did not receive any logs from\n - SDK: Fixed a bug where server-side apply defaults did not\n - SDK: Fixed a Go import issue when downstream tooling\n- Update to version 4.1.1:\n - fix: fine-grained context options for waiting #31735\n - fix: kstatus do not wait forever on failed resources #31730\n - fix: Revert \"Consider GroupVersionKind when matching\n resources\" #31772\n - fix: handle nil elements in slice copying #31751\n - Feature: added chart name to dependency logs, namespace to\n resource waiting logs, and confirmation message when all\n resources are ready #31530\n - Feature: improved plugin name validation error messages and\n field name detection #31491\n - Feature: improved the --wait flag by allowing explicit\n strategy selection (including explicit --wait=hookOnly) and\n preventing SDK timeout errors when timeout is not specified\n #31421\n - Feature: allow concurrent dependency build with atomic file\n write #30984\n - Feature: added a --no-headers flag to the 'helm repo list'\n command, allowing users to suppress table headers in the\n output. Useful for scripting and automation #31448\n - SDK feature: added a LoadArchive to common loader #31462\n - SDK feature: introduced support for custom kstatus readers\n #31706\n - Fixed bug where a plugin name could already be used by\n another command #31427\n - Fixed bug where --server-side flag was not passed to install\n when using upgrade --install #31635\n - Fixed bug where HELM_ environment variables were not passed\n to plugins. this fixes a regression which was blocking some\n getter plugins #31613\n - Fixed bug where Helm test --logs failed with\n hook-delete-policy \"hook-failed\" or \"hook-succeed\" #31579\n - Fixed kube client logging issue #31560\n - Fixed regression where vendor-specific suffixes were stripped\n from .Capabilities.KubeVersion.GitVersion, breaking charts\n that detect managed Kubernetes platforms #31528\n - Fixed a bug where helm uninstall with --keep-history did not\n suspend previous deployed releases #12564\n - docs: updated helm template help text to document\n --api-versions #31683\n - docs: fixed documentation about default wait strategy\n - Update pkg/kube/statuswait.go\n - pkg/kube: introduce support for custom kstatus readers\n - chore(deps): bump golang.org/x/text from 0.32.0 to 0.33.0\n - fix(release): fix test compilation error\n - Suppress SC2154 without changing behavior\n - Lint sync-repo.sh with ShellCheck\n - chore: move Evans Mungai from triage to maintainers\n - Replace reflect.Ptr with reflect.Pointer\n - fix: typo in the function names\n - Add documentation for --api-versions flag in template command\n - Fixing failing tests for cli-tools update\n - chore(deps): bump github.com/fluxcd/cli-utils\n - Replace deprecated `NewSimpleClientset`\n - docs(README): add mise alternate installation documentation\n - enable exhaustive linter\n - fix: add default casess to switch statements\n - build: set kube version via `debug.BuildInfo`\n - chore(deps): bump github.com/tetratelabs/wazero from 1.10.1\n to 1.11.0\n - doc: update based on review suggestion\n - test(statuswait): fix Copilot code review suggestion for\n goroutine in tests\n - test(statuswait): add more tests suggested by Copilot code\n review\n - test(statuswait): add some tests for statuswait\n - fix: use namespace-scoped watching to avoid cluster-wide LIST\n permissions\n - fix(doc): Update default wait strategy\n - Update to use slog\n - Fix TestCliPluginExitCode\n - Check plugin name is not used\n - Fix `TestConcurrencyDownloadIndex` typo\n - Use errors.Is to check for io.EOF and gzip.ErrHeader\n - chore(deps): bump actions/upload-artifact from 4.6.2 to 6.0.0\n - chore: fix some comments to improve readability\n - feat: move TerryHowe triage to maintainers\n - Use latest patch release of Go in releases\n - fix(upgrade): pass --server-side flag to install when using\n upgrade --install\n - chore(deps): bump github.com/spf13/cobra from 1.10.1 to\n 1.10.2\n - chore(deps): bump golang.org/x/term from 0.37.0 to 0.38.0\n - Run the vulnerability check on PR that change the file\n - Fix govulncheck in CI\n - Update the govulncheck.yml to run on change\n - Enable the sloglint linter\n - fix(cli): handle nil config in EnvSettings.Namespace()\n - fix(getter): pass settings environment variables\n - fixes comment in install.go\n - chore(deps): bump actions/stale from 10.1.0 to 10.1.1\n - chore(deps): bump golangci/golangci-lint-action from 9.1.0 to\n 9.2.0\n - fixes tests after merge\n - fixes lint issue\n - updates tests after rebase from master\n - Add tests to action package to improve coverage\n - chore(deps): bump actions/checkout from 6.0.0 to 6.0.1\n - Inform we use a different golangci-lint version than the CI\n - Deal with golint warning with private executeShutdownFunc\n - Use length check for MetaDependencies instead of nil\n comparison\n - Code review\n - Fix linting issue\n - Update pkg/action/hooks.go\n - added check for nil shutdown\n - cleaned up empty line\n - updated comment and made defer of shutdown function return\n errors as before and not the possible shutdown error\n - added shutdown hook that is executed after the logs have been\n retrieved\n - chore: fix typo in pkg/downloader/chart_downloader.go\n - Bump required go version (`go.mod` version)\n - Use modernize to use newer Golang features.\n - Remove two redundant if-checks.\n - Fix kube client logging\n - chore(deps): bump golangci/golangci-lint-action from 9.0.0 to\n 9.1.0\n - chore(deps): bump actions/checkout from 5.0.1 to 6.0.0\n - chore(deps): bump actions/setup-go from 5.5.0 to 6.1.0\n - fix: prevent segmentation violation on empty yaml in multidoc\n - fix: prevent reporting fallback on version when none\n specified\n - fix: add missing context to debug logs\n - fix: preserve vendor suffixes in KubeVersion.GitVersion\n - chore(deps): bump actions/checkout from 5.0.0 to 5.0.1\n - fixup test\n - logs\n - fix\n - chore: add warning for registry login with namespace\n - style: linting\n - test: split tests between valid and invalid\n - test: convert tests to table drive tests\n - test: refactor TestMetadataLegacyValidate to be more generic\n - update tests\n - fix: Use server-side apply for object create during update\n - Copy adopted resource info\n - Refactor environment variable expansion in PrepareCommands\n and update tests\n - fix: correct LDFLAGS path for default Kubernetes version\n - fix: improve plugin name validation err messages early via\n unmarshalling\n - fix: Make invalid name error message more similar and move\n tests\n - fix: focus only on plugin name but give more info about what\n we get\n - Make validation error similar and explicit for both metadatas\n - fix: improve plugin name validation error messages\n - Fix syntax errors in the document\n - docs: Fix LFX Health Score badge URL in README.md\n - chore(deps): bump github.com/tetratelabs/wazero from 1.9.0 to\n 1.10.1\n - Publish Helm v4 -\u003e `helm-latest-version`\n - Adding script to download Helm v4\n - refactor: use strings.Builder to improve performance\n - chore(deps): bump sigs.k8s.io/kustomize/kyaml from 0.20.1 to\n 0.21.0\n - chore(deps): bump golangci/golangci-lint-action from 8.0.0 to\n 9.0.0\n - Update pkg/cmd/flags.go\n - Error strategy list match help\n - Prevent surprising failure with SDK when timeout is not set\n - Do not change the default waiting strategy when --wait is not\n set\n - Provide more help for SDK user when setting up WaitStrategy\n - Avoid confusion between `--wait` (watcher) and no --wait\n (hookOnly)\n - The default is not HookOnlyStrategy but WaitStrategy\n - Make wait strategy selection more obvious\n - Increase documentation of --wait flag\n - While testing SDK features for v4. I was surprised with the\n error:\n - fix: do not run release workflow on forks\n - Convert pkg/cmd/load_plugins.go to slog\n - Rename copilot-instructions.md to AGENTS.md\n - fix(rollback): `errors.Is` instead of string comp\n - fix(uninstall): supersede deployed releases\n - for remaining local variable case inconsistency\n - Properly test error messages on pull command's test\n - Adding a LoadArchive to common loader\n - for all other similar cases\n - chore(deps): bump sigs.k8s.io/controller-runtime from 0.22.3\n to 0.22.4\n - chore: increase logging package test coverage\n - feat(repo): add --no-headers option to 'helm repo list'\n - chore: fix typo of public field\n - rename interface{} to any\n - test: protect unknown hook delete policies\n - chore: replace github.com/mitchellh/copystructure\n - fix: Fix Helm v4 release distribtion/get-helm-3 script\n - fix test\n - Make test scripts run without /bin/bash\n - Ignore duplicated URN in logs\n - chore: delete unused var in installer.go\n - fix: assign KUBECONFIG environment variable value to\n env.Kubeconfig\n - add concurrency test on write & load index file\n - update writing index files to writeAtomicFile\n - fix index concurrency\n- Update to version 4.0.5:\n - Fixed rollback error when a manifest is removed in a failed\n upgrade #13437\n - Fixed check to ensure CLI plugin does not load with the same\n name as an existing Helm command\n - Fixed helm test --logs failure with hook-delete-policy\n \"hook-failed\" or \"hook-succeed\" #9098\n - Fixed a bug where empty dependency lists were incorrectly\n treated as present\n - Fixed a bug where the watch library did not only watch\n namespaces associated with the objects\n - Fixed regression in downloader plugins environment variables\n #31612\n - Fixed bug where --server-side flag is not respected with helm\n upgrade --install #31627\n - For SDK users: exposed KUBECONFIG to env\n upgrade --install 1b6053d (Evans Mungai)\n 1e3ee1d (Zadkiel AHARONIAN)\n - fix(getter): pass settings environment variables 31bd995\n (Zadkiel AHARONIAN)\n goroutine in tests 41a6b36 (Mohsen Mottaghi)\n review 2a2e6f7 (Mohsen Mottaghi)\n - test(statuswait): add some tests for statuswait 3818c02\n (Mohsen Mottaghi)\n permissions 66cab24 (Mohsen Mottaghi)\n comparison abf2007 (Calvin Bui)\n 4b3de18 (Benoit Tigeot)\n - Code review 3212770 (Benoit Tigeot)\n - Fix linting issue 417aae9 (Benoit Tigeot)\n - Update pkg/action/hooks.go 6c838b4 (Michelle Fernandez\n Bieber)\n - added check for nil shutdown c5d87f2 (Michelle Fernandez\n - cleaned up empty line 53175b7 (Michelle Fernandez Bieber)\n errors as before and not the possible shutdown error d2df1ab\n (Michelle Fernandez Bieber)\n retrieved 5b223de (Michelle Fernandez Bieber)\n - Fix TestCliPluginExitCode e845b68 (tison)\n - Check plugin name is not used 30bfd57 (tison)\n - Fix rollback for missing resources 0fd2c41 (Feruzjon\n env.Kubeconfig b456e27 (LinPr)\n - fix(rollback): errors.Is instead of string comp e2021f8\n - fix(uninstall): supersede deployed releases af7c153 (Hidde\n- Update to version 4.0.4 (4.0.3 was not released):\n * Bump v4.0.2 CVE deps cd700e0 (George Jenkins)\n * Use latest patch release of Go in releases 9db13ee (Matt\n- Update to version 4.0.2:\n * fix: prevent reporting fallback on version when none specified\n * fix: prevent segmentation violation on empty yaml in multidoc\n * Ignore duplicated URN in logs\n * jsonschema: warn and ignore unresolved URN $ref to match\n v3.18.4\n * Publish Helm v4 -\u003e `helm-latest-version`\n * fix: Fix Helm v4 release distribtion/get-helm-3 script\n * Copy adopted resource info 12500dd (George Jenkins)\n * fixup test 1cf3841 (George Jenkins)\n * logs 32e2d08 (George Jenkins)\n * fix 4b6472f (George Jenkins)\n * fix: Use server-side apply for object create during update\n 9dfe3b3 (George Jenkins)\n * Fix kube client logging 861adc2 (Matt Farina)\n * update tests b2f7872 (yxxhero)\n * Refactor environment variable expansion in PrepareCommands and\n update tests 77f97a1 (yxxhero)\n * Fix syntax errors in the document a156195 (Fish-pro)\n * fix: correct LDFLAGS path for default Kubernetes version\n 2c0dcda (Benoit Tigeot)\n * New Features\n Helm 4 has numerous new features, but a few deserve\n highlighting here:\n - Redesigned plugin system that supports Web Assembly based\n plugins\n - Post-renderers are now plugins\n - Server side apply is now supported\n - Improved resource watching, to support waiting, based on\n kstatus\n - Local Content-based caching (e.g. for charts)\n - Logging via slog enabling SDK logging to integrate with\n modern loggers\n - Reproducible builds of chart archives\n - Updated SDK API including support for multiple chart API\n versions (new experimental v3 chart API version coming soon)\n * Compatibility with Helm v3\n Helm v4 is a major version with backward incompatible changes\n including to the flags and output of the Helm CLI and to the\n SDK.\n Please evaluate the changes to your workflows. The changes are\n not as extensive as those from Helm v2 to v3, with the goal\n that the majority of workflows remain compatible between Helm\n v3 and v4.\n Helm charts apiVersion v2 (majority of today's charts) will\n continue to be supported in Helm v4. Existing charts should\n continue to install, upgrade, and otherwise work. Please test\n the installation and upgrade of charts to ensure it works as\n expected. Changes (e.g., server side apply) may impact the\n experience.\n * Breaking Changes\n - Post-renderers implemented as plugins\n Post-renderers are implemented as plugins. With this change,\n it is no longer possible to pass an executable directly to\n helm render --post-renderer, but a plugin name must be\n passed. This might require updates to existing any\n post-renderer workflows.\n","modified":"2026-10-27T17:23:10.855975840Z","published":"2026-10-19T09:48:48Z","related":["CVE-2026-33814","CVE-2026-35204","CVE-2026-35205","CVE-2026-35206","CVE-2026-41178","CVE-2026-41888","CVE-2026-48978","CVE-2026-50151","CVE-2026-50163","CVE-2026-56852","CVE-2026-56854","CVE-2026-56855","CVE-2026-56864","CVE-2026-56865","CVE-2026-63209","CVE-2026-78662","CVE-2026-81870","CVE-2026-81871","CVE-2026-81872","CVE-2026-85732"],"upstream":["CVE-2026-33814","CVE-2026-35204","CVE-2026-35205","CVE-2026-35206","CVE-2026-41178","CVE-2026-41888","CVE-2026-48978","CVE-2026-50151","CVE-2026-50163","CVE-2026-56852","CVE-2026-56854","CVE-2026-56855","CVE-2026-56864","CVE-2026-56865","CVE-2026-63209","CVE-2026-78662","CVE-2026-81870","CVE-2026-81871","CVE-2026-81872","CVE-2026-85732"],"references":[{"type":"ADVISORY","url":"https://www.suse.com/support/update/announcement/2026/suse-su-202624282-1/"},{"type":"REPORT","url":"https://bugzilla.suse.com/1261935"},{"type":"REPORT","url":"https://bugzilla.suse.com/1261938"},{"type":"REPORT","url":"https://bugzilla.suse.com/1261939"},{"type":"REPORT","url":"https://bugzilla.suse.com/1265428"},{"type":"REPORT","url":"https://bugzilla.suse.com/1265758"},{"type":"REPORT","url":"https://bugzilla.suse.com/1270127"},{"type":"REPORT","url":"https://bugzilla.suse.com/1271660"},{"type":"REPORT","url":"https://bugzilla.suse.com/1271997"},{"type":"REPORT","url":"https://bugzilla.suse.com/1275024"},{"type":"REPORT","url":"https://bugzilla.suse.com/1275025"},{"type":"REPORT","url":"https://bugzilla.suse.com/1276327"},{"type":"REPORT","url":"https://bugzilla.suse.com/1276510"},{"type":"REPORT","url":"https://bugzilla.suse.com/1276514"},{"type":"REPORT","url":"https://bugzilla.suse.com/1281112"},{"type":"REPORT","url":"https://bugzilla.suse.com/1281426"},{"type":"REPORT","url":"https://bugzilla.suse.com/1281468"},{"type":"REPORT","url":"https://bugzilla.suse.com/1281469"},{"type":"REPORT","url":"https://bugzilla.suse.com/1283642"},{"type":"REPORT","url":"https://bugzilla.suse.com/1284104"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-33814"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-35204"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-35205"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-35206"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-41178"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-41888"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-48978"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-50151"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-50163"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-56852"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-56854"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-56855"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-56864"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-56865"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-63209"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-78662"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-81870"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-81871"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-81872"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-85732"}],"affected":[{"package":{"name":"helm","ecosystem":"SUSE:Linux Micro 6.1","purl":"pkg:rpm/suse/helm&distro=SUSE%20Linux%20Micro%206.1"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.3.0-slfo.1.1_1.1"}]}],"ecosystem_specific":{"binaries":[{"helm-bash-completion":"4.3.0-slfo.1.1_1.1","helm":"4.3.0-slfo.1.1_1.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2026:24282-1.json"}}],"schema_version":"1.9.2"}