What Is New in Helm 3.14 (summary table)
| Category | Key Additions |
|---|---|
| New Features |
|
| CLI Enhancements |
|
| Bug Fixes |
|
| Other Changes |
|
What are the headline new features in Helm 3.14?
Search command now fails fast
The helm search command accepts --fail-on-no-result. If no chart matches, the CLI exits with a non‑zero status, making CI pipelines easier to guard.
Nested template definitions are reachable
When a tpl call is nested inside another, it can now reference define blocks from the outer template. This removes a long‑standing limitation for complex chart compositions.
Client‑side QPS control
Setting the HELM_QPS environment variable lets you throttle API calls, useful when Helm runs in high‑frequency automation.
Lint can target a specific Kubernetes version
The new --kube-version flag tells helm lint which version’s deprecation rules to apply, helping you catch version‑specific issues early.
Which improvements boost performance and compatibility?
- The
tplfunction has been re‑engineered for faster rendering, noticeable in large charts. - Binary releases now include RISC‑V and additional Linux architectures, expanding Helm’s reach on edge devices.
- Upgrading to Go 1.21 and Kubernetes 1.29 libraries reduces runtime overhead and aligns Helm with the latest ecosystem.
- The
ignorepackage is public again, allowing chart authors to reuse ignore logic across projects.
What bugs were addressed in this release?
- Generation readiness checks now correctly evaluate resource updates, preventing false‑positive failures.
- Post‑install hook deletion respects the
before-hook-creationpolicy, avoiding accidental resource loss. - Anonymous pull problems with the Helm registry have been fixed, restoring smooth chart downloads.
- Various lint and test regressions were resolved, including proper handling of
--kube-versionand value import precedence. - Multiple dependency updates (containerd, grpc, etc.) close security and stability gaps in the underlying libraries.
FAQ
How does --fail-on-no-result affect CI pipelines?
The command now exits with status 1 when no chart matches, allowing a simple helm search step to act as a gate without extra scripting.
Can I still use tpl inside another tpl?
Yes, nested calls can now see define blocks from the outer template, which simplifies reusable snippets.
What is the recommended way to set the new QPS limit?
Export HELM_QPS=10 (or another value) before invoking Helm; the client respects this setting for all subsequent API calls.
Do I need to change my existing charts for the --kube-version lint flag?
No changes are required; the flag merely tells the linter which version’s rules to apply, making it safe to adopt incrementally.
Are there any breaking changes I should watch for?
The release is fully backward compatible; the only notable shift is the public ignore package, which does not impact existing chart behavior.
For more details, see the Helm Quickstart Guide.