发布日期: 2026-08-13
版本号: v4.2.4

Helm v4.2.4 是一个补丁版本,建议用户升级以获得最佳体验。该版本包含多项错误修复和改进,例如改进了 helm template --debug 配合 --show-only 时的错误报告、修复了获取测试 Pod 所有容器日志的问题、检查了 Digest 和 encodeRelease 的错误返回、修复了重复调用 IsReachable 时的 panic、设置了推送到使用令牌认证的注册表时的作用域、修复了服务端应用缺失的冲突重试、正确格式化了 gzipped 包中的 extra 字段、修复了消失的空行、在升级中向 downloader.Manager 传递注册表客户端,以及升级了 gRPC 和 OpenTelemetry 等依赖项。安装方面,提供了适用于 macOS、Linux 和 Windows 多架构的二进制包下载链接及校验和,安装包使用指定的 GPG 密钥签名。此发布同时预告了下一个次要版本 4.3.0 和 3.22.0 预计于 2026 年 9 月 9 日发布,并包含完整的变更日志记录。

更新内容 (中文)

Helm v4.2.4 是一个补丁版本。建议用户升级以获得最佳体验。

社区持续壮大,我们期待您的加入!

  • Kubernetes Slack 参与讨论:
    • 用于提问和日常交流
    • 用于讨论 PR、代码和错误
  • 参加公共开发者会议:每周四太平洋时间 9:30,通过 Zoom 参与
  • 测试、调试和贡献图表:ArtifactHub/packages

重要变更

  • 修复:改进 helm template --debug--show-only 时的错误报告 - #31185 由 @kyokuping 贡献
  • 修复:从测试 Pod 的所有容器中获取日志 - #32099 由 @SebTardif 贡献
  • 修复(provenance):检查 Digest 和 encodeRelease 中的错误返回 - #32136 由 @SebTardif 贡献
  • 修复重复调用 IsReachable 导致的 panic - #32184 由 @atkrad 贡献
  • 修复:helm push 到注册表(使用令牌认证)时设置 [pull,push] 作用域 - v4 - #3211 由 @kimsungmin1 贡献
  • 修复服务端应用缺少冲突重试 - #32088 由 @Kajot-dev 贡献
  • 正确格式化 gzipped 包中的 extra 字段 - #31884 由 @ouillie 贡献
  • 修复消失的空行 - #32327 由 @matheuscscp 贡献
  • 修复:在升级中将注册表客户端传递给 downloader.Manager - #32400 由 @SetagGnaw 贡献
  • 依赖更新:将 google.golang.org/grpc 从 1.80.0 升级至 1.82.1 - 针对 GO-2026-6061 #32450
  • 修复:将 go.opentelemetry.io/otel 升级至 v1.44.0 针对 GO-2026-5158 - #32521 由 @TerryHowe 贡献

安装与升级

下载 Helm v4.2.4。通用平台二进制文件在此处:

此版本使用 208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155 签名,可在 @scottrigby 的 keybase 账户 找到。请使用附加的签名通过 gpg 验证此版本。

快速入门指南将帮助您上手。有关升级说明或详细安装说明,请查阅安装指南。您也可以使用安装脚本在任何具有 bash 的系统上安装。

下一步计划

  • 4.3.0 和 3.22.0 是计划于 2026 年 9 月 9 日发布的下一个次版本

更新日志

  • 针对 #31211 导致构建失败的最小修复。3900f434fd3ef2b84065dc04508df48f288dba00 (Scott Rigby)
  • 修复:将 go.opentelemetry.io/otel 升级至 v1.44.0 针对 GO-2026-5158 (#32521) f7c6e8f0f1e0e649e8d03b1535db4f3b8d0c9af2 (Terry Howe)
  • 依赖更新:将 google.golang.org/grpc 从 1.80.0 升级至 1.82.1 035a2c38e9a75ca0988c8449c0b7257f30d04064 (dependabot[bot])
  • 修复:在升级中将注册表客户端传递给 downloader.Manager f76a5f46a952f731cc1543f348121297c8b3f6cc (Gates Wang)
  • 应用建议 5a7c6c7c732b04ad6517b452d538da9e18993d67 (Will Noble)
  • 正确格式化 gzipped 包中的 extra 字段 22818486ce0fc18d92e01ba39faf65f70ffa8865 (Will Noble)
  • 修复服务端应用缺少冲突重试 (#32088) 2c979a17ac6b6d7bfe2d6650b69fa9effe963d4d (Jakub Jaruszewski)
  • 针对拉取请求发现的潜在修复 2bd2c66544634e419ede3cfa18952cce5a5acd08 (kimsungmin1)
  • 修复(注册表):解决令牌认证测试中的 golangci-lint 问题 183a5402291c553898b9c404bc17c95c81ea1c6c (kimsm28)
  • 杂务:在 rebase 到 main 后执行 go mod tidy 08d8da1aa9080772e57ab5bf5b00b3c13364af00 (kimsm28)
  • 修复(注册表):在令牌认证作用域测试中使用普通 HTTP 注册表 9655b5aecc0d36142d0620ff5ed762065a997739 (kimsm28)
  • 更新 pkg/registry/client.go 430dfac3eeab03886f511761e3969f738f760364 (Terry Howe)
  • 测试:改进 client_scope_test.go 以避免数据竞争和脆弱断言 9569605eccf8318fe25bf78c46c4eb462ce8fc3f (kimsm28)
  • 修复 withScopeHint 函数注释中的拼写错误 63f2b6809919e5e8e3e04f52064a536a14f1ff9b (kimsm28)
  • 通过调整 DockerRegistryHost 和认证服务器监听器管理来修复注册表测试失败 f7488c0be8c65dd16386c215cac4332900667278 (kimsm28)
  • 修复变量命名 requestUrl -> requestURL 8fe78fbe46eb2db5c75ab1cc89699c750017dca6 (kimsm28)
  • 修复拼写错误,移除不必要的代码,修复以避免在 http 处理程序中使用断言 d0670d2fb2c3426cde4b41927b5e9b8b4370df93 (kimsm28)
  • 将 suite.Nil, suite.NotNill 更改为更合适的函数 (suite.NoError, suite.Error) 804256ef659226f26b2222ccb8f9cf18ef1b1946 (kimsungmin1)
  • 更改 client_scope_test.go 以使用 httptest d79bceb807692512461d8007040c41bcd1547041 (kimsungmin1)
  • 修复拼写错误 d34fcd9264225a1e6296c4b0ee124dc69f3b3ecc (kimsungmin1)
  • 移除 freeport 依赖 9fbd190c30addb4786e4fe930a0fe98bf354116a (kimsungmin1)
  • 在许可证头添加换行符 9275661357afdfe12b8ce561e8103673f16cca8d (kimsungmin1)
  • 修复 helm push 到使用令牌认证的注册表时的作用域 fef91f3e6942a20148542461eaebfb24f2c09584 (kimsungmin1)
  • 修复重复调用 IsReachable 导致的 panic e89ce68bc5fec430bc1e2f0aef1aca6a2e71f795 (Mohammad Abdolirad)
  • 修复(provenance):检查 Digest 中的错误返回 ff1ac83bfb1246cdf1b57a4db0042085cc8b265d (Sebastien Tardif)
  • 修复:处理审查反馈 4b4dedb2bdcfac886c124a361a5126e3c5e3c5df (Sebastien Tardif)
  • 修复:从测试 Pod 的所有容器中获取日志 7c8010322b8639cdf7844ac1ae5f8d444db43935 (Sebastien Tardif)
  • 杂务:重命名 savedErr 以明确其特定用途 ecc9cd2f1b5b53dadcd12395c032bc5b3ca02937 (Jeaeun Kim)
  • 杂务:修复 lint f6211ba49bfbf5768ea44be3a1402869a4709b37 (Jeaeun Kim)
  • 杂务:为清晰起见单独存储 err 3507ea5bfdbad921684ac131896b6968c76e9ca6 (Jeaeun Kim)
  • 杂务:改进 helm template --debug--show-only 时的错误报告 211ffae93d2d741a2dbcd74b4aa2a1bc2fc27d5f (Jeaeun Kim)
  • 处理审查意见 51a9837ba177812c381515886c4f0cd0b7a633e6 (Matheus Pimenta)
  • 修复消失的空行 83a8b70ffc1bcf97bb293cf6b35bd3b5093e8c30 (Matheus Pimenta)

完整更新日志:https://github.com/helm/helm/compare/v4.2.3…v4.2.4

更新内容 (原始)

Helm v4.2.4 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:
    • 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
  • Test, debug, and contribute charts: ArtifactHub/packages

Notable Changes

  • fix: Improve error reporting for helm template –debug with –show-only- #31185 by @kyokuping
  • fix: fetch logs from all containers in test pods- #32099 by @SebTardif
  • fix(provenance): check error return in Digest and encodeRelease- #32136 by @SebTardif
  • fix panic on repeated IsReachable calls- #32184 by @atkrad
  • fix: set [pull,push] scope when helm push to a registry(use token auth) - v4- #31211 by @kimsungmin1
  • Fix missing conflict retry with server-side apply- #32088 by @Kajot-dev
  • Properly format the extra field in gzipped packages- #31884 by @ouillie
  • Fix vanishing empty lines- #32327 by @matheuscscp
  • fix: pass registry client to downloader.Manager in upgrade- #32400 by @SetagGnaw
  • chore(deps): bump google.golang.org/grpc from 1.80.0 to 1.82.1- for GO-2026-6061 #32450
  • fix: bump go.opentelemetry.io/otel to v1.44.0 for GO-2026-5158- #32521 by @TerryHowe

Installation and Upgrading

Download Helm v4.2.4. The common platform binaries are here:

This release was signed with 208D D36E D5BB 3745 A167 43A4 C7C6 FBB5 B91C 1155 and can be found at @scottrigby keybase account. Please use the attached signatures for verifying this release using gpg.

The Quickstart Guide will get you going from there. For upgrade instructions or detailed installation notes, check the install guide. You can also use a script to install on any system with bash.

What’s Next

  • 4.3.0 and 3.22.0 are the next minor releases scheduled for September 9, 2026

Changelog

  • Minimal fix to build failure from #31211. 3900f434fd3ef2b84065dc04508df48f288dba00 (Scott Rigby)
  • fix: bump go.opentelemetry.io/otel to v1.44.0 for GO-2026-5158 (#32521) f7c6e8f0f1e0e649e8d03b1535db4f3b8d0c9af2 (Terry Howe)
  • chore(deps): bump google.golang.org/grpc from 1.80.0 to 1.82.1 035a2c38e9a75ca0988c8449c0b7257f30d04064 (dependabot[bot])
  • fix: pass registry client to downloader.Manager in upgrade f76a5f46a952f731cc1543f348121297c8b3f6cc (Gates Wang)
  • Apply suggestions 5a7c6c7c732b04ad6517b452d538da9e18993d67 (Will Noble)
  • Properly format the extra field in gzipped packages 22818486ce0fc18d92e01ba39faf65f70ffa8865 (Will Noble)
  • Fix missing conflict retry with server-side apply (#32088) 2c979a17ac6b6d7bfe2d6650b69fa9effe963d4d (Jakub Jaruszewski)
  • Potential fix for pull request finding 2bd2c66544634e419ede3cfa18952cce5a5acd08 (kimsungmin1)
  • fix(registry): resolve golangci-lint issues in token-auth tests 183a5402291c553898b9c404bc17c95c81ea1c6c (kimsm28)
  • chore: go mod tidy after rebase on main 08d8da1aa9080772e57ab5bf5b00b3c13364af00 (kimsm28)
  • fix(registry): use plain-http registry in token-auth scope test 9655b5aecc0d36142d0620ff5ed762065a997739 (kimsm28)
  • Update pkg/registry/client.go 430dfac3eeab03886f511761e3969f738f760364 (Terry Howe)
  • test: improve client_scope_test.go to avoid data races and brittle assertions 9569605eccf8318fe25bf78c46c4eb462ce8fc3f (kimsm28)
  • fix typos in withScopeHint function comment 63f2b6809919e5e8e3e04f52064a536a14f1ff9b (kimsm28)
  • fix registry test failures by adjusting DockerRegistryHost and auth server listener management f7488c0be8c65dd16386c215cac4332900667278 (kimsm28)
  • fix variable naming requestUrl -> requestURL 8fe78fbe46eb2db5c75ab1cc89699c750017dca6 (kimsm28)
  • fix typo, remove unnecessary code, fix to avoid to use the assertion in http hanlder d0670d2fb2c3426cde4b41927b5e9b8b4370df93 (kimsm28)
  • change suite.Nil, suite.NotNill to more proper function(suite.NoError, suite.Error) 804256ef659226f26b2222ccb8f9cf18ef1b1946 (kimsungmin1)
  • change client_scope_test.go to use httptest d79bceb807692512461d8007040c41bcd1547041 (kimsungmin1)
  • fix typo d34fcd9264225a1e6296c4b0ee124dc69f3b3ecc (kimsungmin1)
  • remove freeport dependency 9fbd190c30addb4786e4fe930a0fe98bf354116a (kimsungmin1)
  • add newline in license header 9275661357afdfe12b8ce561e8103673f16cca8d (kimsungmin1)
  • fix scope when helm push to a registry that use token auth fef91f3e6942a20148542461eaebfb24f2c09584 (kimsungmin1)
  • fix panic on repeated IsReachable calls e89ce68bc5fec430bc1e2f0aef1aca6a2e71f795 (Mohammad Abdolirad)
  • fix(provenance): check error return in Digest ff1ac83bfb1246cdf1b57a4db0042085cc8b265d (Sebastien Tardif)
  • fix: address review feedback 4b4dedb2bdcfac886c124a361a5126e3c5e3c5df (Sebastien Tardif)
  • fix: fetch logs from all containers in test pods 7c8010322b8639cdf7844ac1ae5f8d444db43935 (Sebastien Tardif)
  • chore: rename savedErr to clear its specific purpose ecc9cd2f1b5b53dadcd12395c032bc5b3ca02937 (Jeaeun Kim)
  • chore: fix lint f6211ba49bfbf5768ea44be3a1402869a4709b37 (Jeaeun Kim)
  • chore: store err separately for clarity 3507ea5bfdbad921684ac131896b6968c76e9ca6 (Jeaeun Kim)
  • chore: Improve error reporting for helm template --debug with --show-only 211ffae93d2d741a2dbcd74b4aa2a1bc2fc27d5f (Jeaeun Kim)
  • Address review comments 51a9837ba177812c381515886c4f0cd0b7a633e6 (Matheus Pimenta)
  • Fix vanishing empty lines 83a8b70ffc1bcf97bb293cf6b35bd3b5093e8c30 (Matheus Pimenta)

Full Changelog: https://github.com/helm/helm/compare/v4.2.3...v4.2.4

下载链接