Skip to content

fix(deps): update go-dependencies (major)#1258

Open
renovate[bot] wants to merge 1 commit intomainfrom
renovate/major-go-dependencies
Open

fix(deps): update go-dependencies (major)#1258
renovate[bot] wants to merge 1 commit intomainfrom
renovate/major-go-dependencies

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Nov 12, 2025

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
github.com/charmbracelet/lipgloss v1.1.0v2.0.1 age confidence
helm.sh/helm/v3 v3.19.4v4.1.1 age confidence

Release Notes

charmbracelet/lipgloss (github.com/charmbracelet/lipgloss)

v2.0.1

Compare Source

A small release to properly set style underline colors, as well as handling partial reads while querying the terminal.

Changelog

Fixed
Docs
Other stuff

The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on X, Discord, Slack, The Fediverse, Bluesky.

v2.0.0

Compare Source

lipgloss-v2-block

Do you think you can handle Lip Gloss v2?

We’re really excited for you to try Lip Gloss v2! Read on for new features and a guide to upgrading.

If you (or your LLM) just want the technical details, take a look at Upgrade Guide.

[!NOTE]
We take API changes seriously and strive to make the upgrade process as simple as possible. We believe the changes bring necessary improvements as well as pave the way for the future. If something feels way off, let us know.

What’s new?

The big changes are that Styles are now deterministic (λipgloss!) and you can be much more intentional with your inputs and outputs. Why does this matter?

Playing nicely with others

v2 gives you precise control over I/O. One of the issues we saw with the Lip Gloss and Bubble Tea v1s is that they could fight over the same inputs and outputs, producing lock-ups. The v2s now operate in lockstep.

Querying the right inputs and outputs

In v1, Lip Gloss defaulted to looking at stdin and stdout when downsampling colors and querying for the background color. This was not always necessarily what you wanted. For example, if your application was writing to stderr while redirecting stdout to a file, the program would erroneously think output was not a TTY and strip colors. Lip Gloss v2 gives you control over this.

Going beyond localhost

Did you know TUIs and CLIs can be served over the network? For example, Wish allows you to serve Bubble Tea and Lip Gloss over SSH. In these cases, you need to work with the input and output of the connected clients as opposed to stdin and stdout, which belong to the server. Lip Gloss v2 gives you flexibility around this in a more natural way.

🧋 Using Lip Gloss with Bubble Tea?

Make sure you get all the latest v2s as they’ve been designed to work together.

# Collect the whole set.
go get charm.land/bubbletea/v2
go get charm.land/bubbles/v2
go get charm.land/lipgloss/v2

🐇 Quick upgrade

If you don't have time for changes and just want to upgrade to Lip Gloss v2 as fast as possible? Here’s a quick guide:

Use the compat package

The compat package provides adaptive colors, complete colors, and complete adaptive colors:

import "charm.land/lipgloss/v2/compat"

// Before
color := lipgloss.AdaptiveColor{Light: "#f1f1f1", Dark: "#cccccc"}

// After
color := compat.AdaptiveColor{Light: lipgloss.Color("#f1f1f1"), Dark: lipgloss.Color("#cccccc")}

compat works by looking at stdin and stdout on a global basis. Want to change the inputs and outputs? Knock yourself out:

import (
	"charm.land/lipgloss/v2/compat"
	"github.com/charmbracelet/colorprofile"
)

func init() {
	// Let’s use stderr instead of stdout.
	compat.HasDarkBackground = lipgloss.HasDarkBackground(os.Stdin, os.Stderr)
	compat.Profile = colorprofile.Detect(os.Stderr, os.Environ())
}
Use the new Lip Gloss writer

If you’re using Bubble Tea with Lip Gloss you can skip this step. If you're using Lip Gloss in a standalone fashion, however, you'll want to use lipgloss.Println (and lipgloss.Printf and so on) when printing your output:

s := someStyle.Render("Fancy Lip Gloss Output")

// Before
fmt.Println(s)

// After
lipgloss.Println(s)

Why? Because lipgloss.Println will automatically downsample colors based on the environment.

That’s it!

Yep, you’re done. All this said, we encourage you to read on to get the full benefit of v2.

👀 What’s changing?

Only a couple main things that are changing in Lip Gloss v2:

  • Color downsampling in non-Bubble-Tea uses cases is now a manual proccess (don't worry, it's easy)
  • Background color detection and adaptive colors are manual, and intentional (but optional)
🪄 Downsampling colors with a writer

One of the best things about Lip Gloss is that it can automatically downsample colors to the best available profile, stripping colors (and ANSI) entirely when output is not a TTY.

If you're using Lip Gloss with Bubble Tea there's nothing to do here: downsampling is built into Bubble Tea v2. If you're not using Bubble Tea you now need to use a writer to downsample colors. Lip Gloss writers are a drop-in replacement for the usual functions found in the fmt package:

s := someStyle.Render("Hello!")

// Downsample and print to stdout.
lipgloss.Println(s)

// Render to a variable.
downsampled := lipgloss.Sprint(s)

// Print to stderr.
lipgloss.Fprint(os.Stderr, s)
🌛 Background color detection and adaptive colors

Rendering different colors depending on whether the terminal has a light or dark background is an awesome power. Lip Gloss v2 gives you more control over this progress. This especially matters when input and output are not stdin and stdout.

If that doesn’t matter to you and you're only working with stdout you skip this via compat above, though we encourage you to explore this new functionality.

With Bubble Tea

In Bubble Tea, request the background color, listen for a BackgroundColorMsg in your update, and respond accordingly.

// Query for the background color.
func (m model) Init() tea.Cmd {
	return tea.RequestBackgroundColor
}

// Listen for the response and initialize your styles accordigly.
func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
	switch msg := msg.(type) {
	case tea.BackgroundColorMsg:
		// Initialize your styles now that you know the background color.
		m.styles = newStyles(msg.IsDark())
		return m, nil
	}
}

type styles {
    myHotStyle lipgloss.Style
}

func newStyles(bgIsDark bool) (s styles) {
	lightDark := lipgloss.LightDark(bgIsDark) // just a helper function
	return styles{
		myHotStyle := lipgloss.NewStyle().Foreground(lightDark("#f1f1f1", "#​333333"))
	}
}
Standalone

If you're not using Bubble Tea you simply can perform the query manually:

// Detect the background color. Notice we're writing to stderr.
hasDarkBG, err := lipgloss.HasDarkBackground(os.Stdin, os.Stderr)
if err != nil {
    log.Fatal("Oof:", err)
}

// Create a helper for choosing the appropriate color.
lightDark := lipgloss.LightDark(hasDarkBG)

// Declare some colors.
thisColor := lightDark("#C5ADF9", "#​864EFF")
thatColor := lightDark("#​37CD96", "#​22C78A")

// Render some styles.
a := lipgloss.NewStyle().Foreground(thisColor).Render("this")
b := lipgloss.NewStyle().Foreground(thatColor).Render("that")

// Print to stderr.
lipgloss.Fprintf(os.Stderr, "my fave colors are %s and %s...for now.", a, b)

🥕 Other stuff

Colors are now color.Color

lipgloss.Color() now produces an idiomatic color.Color, whereas before colors were type lipgloss.TerminalColor. Generally speaking, this is more of an implementation detail, but it’s worth noting the structural differences.

// Before
type TerminalColor interface{/* ... */}
type Color string

// After
func Color(string) color.Color
type RGBColor struct{R, G, B uint8}

func LightDark(isDark bool) LightDarkFunc
type LightDarkFunc func(light, dark color.Color) color.Color
func Complete(colorprofile.Profile) CompleteFunc
type CompleteFunc func(ansi, ansi256, truecolor color.Color) color.Color

Changelog

New!
  • b259725e46e9fbb2af6673d74f26917ed42df370: feat(blending): early return when steps <= num stops (#​566) (@​lrstanley)
  • 71dd8ee66ac1f4312844a792952789102513c9c5: feat(borders): initial border blend implementation (#​560) (@​lrstanley)
  • 2166ce88ec1cca66e8a820a86baafd7cfd34bcd0: feat(canvas): accept any type as layer content (@​aymanbagabas)
  • 0303864674b37235e99bc14cd4da17c409ec448e: feat(colors): refactor colors sub-package into root package (@​lrstanley)
  • 9c86c1f950fbfffd6c56a007de6bd3e61d67a1ea: feat(colors): switch from int to float64 for inputs (@​lrstanley)
  • 0334bb4562ca1f72a684c1c2a63c848ac21fffc6: feat(tree): support width and indenter styling (#​446) (@​dlvhdr)
  • 9a771f5a242df0acf862c7acd72124469eb4635a: feat: BlendLinear* -> Blend* (@​lrstanley)
  • 34443e82a7ddcbe37b9dc0d69b84385e400b8a5c: feat: add brightness example, misc example tweaks (@​lrstanley)
  • c95c5f3c5b27360d344bf82736a8ce9257aaf71e: feat: add hyperlink support (#​473) (@​aymanbagabas)
  • 5e542b8c69a0f20ea62b2caa422bbee5337fbb48: feat: add underline style and color (@​aymanbagabas)
  • d3032608aa74f458a7330e17cc304f1ebb5fa1b9: feat: add wrap implementation preserving styles and links (#​582) (@​aymanbagabas)
  • 7bf18447c8729839ca7e79aa3ba9aa00ecb8f963: feat: further simplify colors in examples (@​lrstanley)
  • 27a8cf99a81d1bd5ab875cd773ac8647320b02ba: feat: implement uv Drawable for Canvas and Layer (@​aymanbagabas)
  • c4c08fc4f8a107b00bc54407ad9094b9642dd103: feat: implement uv.Drawable for *Layer (#​607) (@​ayn2op)
  • 18b4bb86c515f93eede5720fe66b0d9ba83fa489: feat: initial implementation of color blending & brightness helpers (@​lrstanley)
  • 63610090044b782caa8ce8b1b53cc81b98264eaa: feat: update examples/layout to use colors.BlendLinear1D (@​lrstanley)
  • de4521b8baa33c49a96e9458e9d9213c7ba407bd: feat: update examples/list/sublist to use colors.BlendLinear1D (@​lrstanley)
  • 1b3716cc53b5cc29c2b1b0c655a684b797fef075: feat: use custom hex parsing for increased perf (@​lrstanley)
Fixed
  • 06ca257e382fa107afcfe147c9cda836b3cdb4be: fix(canvas): Hit method should return Layer ID as string instead of *Layer (@​aymanbagabas)
  • d1fa8790efbd70df8b0dd8bd139434f3ac6e063b: fix(canvas): handle misc edge cases (#​588) (@​lrstanley)
  • 7869489d8971e2e3a8de8e0a4a1e1dfe4895a352: fix(canvas): simplify Render handling (@​aymanbagabas)
  • 68f38bdee72b769ff9c137a4097d9e64d401b703: fix(ci): use local golangci config (@​aymanbagabas)
  • ff11224963a33f6043dfb3408e67c7fea7759f34: fix(color): update deprecated types (@​aymanbagabas)
  • 3f659a836c78f6ad31f5652571007cb4ab9d1eb8: fix(colors): update examples to use new method locations (@​lrstanley)
  • 3248589b24c9894694be6d1862817acb77e119cc: fix(layers): allow recursive rendering for layers that only contain children (#​589) (@​lrstanley)
  • 6c33b19c3f0a1e7d50ce9028ef4bda3ca631cd68: fix(lint): remove nolint:exhaustive comments and ignore var-naming rule for revive (@​aymanbagabas)
  • d267651963ad3ba740b30ecf394d7a5ef86704fc: fix(style): use alias for Underline type from ansi package (@​aymanbagabas)
  • 76690c6608346fc7ef09db388ee82feaa7920630: fix(table): fix wrong behavior of headers regarding margins (#​513) (@​andreynering)
  • 41ff0bf215ea2a444c5161d0bd7fa38b4a70af27: fix(terminal): switch to uv.NewCancelReader for Windows compatibility (@​aymanbagabas)
  • 5d69c0e790f24cbfaa94f8f8b2b64d1bb926c96d: fix: ensure we strip out \r\n from strings when getting lines (@​aymanbagabas)
  • 2e570c2690b61bac103e7eef9da917d1dfc6512d: fix: linear-2d example (@​lrstanley)
  • 0d6a022f7d075e14d61a755b3e9cab9d97519f21: fix: lint issues (@​aymanbagabas)
  • 832bc9d6b9d209e002bf1131938ffe7dbba07652: fix: prevent infinite loop with zero-width whitespace chars (#​108) (#​604) (@​calobozan)
  • 354e70d6d0762e6a54cfc45fe8d019d6087a4c00: fix: rename underline constants to be consistent with other style properties (@​raphamorim)
Docs
  • 60df47f8000b6cb5dfec46af37bceb2c9050bef0: docs(readme): cleanup badges (@​meowgorithm)
  • 881a1ffc54b6afb5f22ead143d10f8dce05e7e66: docs(readme): update art (@​meowgorithm)
  • ee74a03efa8363cf3b17ee7a128b9825c8f3791e: docs(readme): update footer art and copyright date (@​meowgorithm)
  • 8863cc06da67b8ef9f4b6f80c567738fa53bd090: docs(readme): update header image (@​meowgorithm)
  • 4e8ca2d9f045d6bca78ee0150420e26cda8bcccf: docs: add underline styles and colors caveats (@​aymanbagabas)
  • a8cfc26d7de7bdb335a8c7c2f0c8fc4f18ea8993: docs: add v2 upgrade and changes guide (#​611) (@​aymanbagabas)
  • 454007a0ad4e8b60afc1f6fdc3e3424e4d3a4c16: docs: update comments in for GetPaddingChar and GetMarginChar (@​aymanbagabas)
  • 95f30dbdc90cc409e8645de4bd2296a33ba37c70: docs: update mascot header image (@​aymanbagabas)
  • a06a847849dbd1726c72047a98ab8cce0f73a65f: docs: update readme in prep for v2 (#​613) (@​aymanbagabas)
Other stuff
  • 5ca0343ec7be2e85521e79734f4392cdb19e4949: Fix(table): BorderRow (#​514) (@​bashbunni)
  • f2d1864a58cd455ca118e04123feae177d7d2eef: Improve performance of maxRuneWidth (#​592) (@​clipperhouse)
  • 10c048e361129dd601eb6ff8c0c2458814291156: Merge v2-uv-canvas into v2-exp (@​aymanbagabas)
  • d02a007bb19e14f6bf351ed71a47beb6bee9cae3: ci: sync dependabot config (#​521) (@​charmcli)
  • 8708a8925b60c610e68b9aa6e509ebd513a8244e: ci: sync dependabot config (#​561) (@​charmcli)
  • 7d1b622c64d1a68cdc94b30864ae5ec3e6abc2dd: ci: sync dependabot config (#​572) (@​charmcli)
  • 19a4b99cb3bbbd2ab3079adc500faa1875da87e8: ci: sync golangci-lint config (@​aymanbagabas)
  • a6c079dc8a3fc6e68a00214a767627ec8447adb5: ci: sync golangci-lint config (@​aymanbagabas)
  • 350edde4903bcc2eee5a8ce1552dd90c3b89c125: ci: sync golangci-lint config (#​553) (@​github-actions[bot])
  • 1e3ee3483a907facd98ca0a56f6694a0e9365f26: ci: sync golangci-lint config (#​598) (@​github-actions[bot])
  • e729228ac14e63057e615a2241ce4303d59fef08: lint: fix lint for newer go versions (#​540) (@​andreynering)
  • 66093c8cf3b79596597c1e39fd4c67a954010fb3: perf: remove allocations from getFirstRuneAsString (#​578) (@​clipperhouse)
  • ad876c4132d61951d091a1a535c27237f6a90ad6: refactor: new Canvas, Compositor, and Layer API (#​591) (@​aymanbagabas)
  • 3aae2866142214f5b8ce9cbfc1939645928dcb8f: refactor: update imports to use charm.land domain (@​aymanbagabas)

🌈 Feedback

That's a wrap! Feel free to reach out, ask questions, and let us know how it's going. We'd love to know what you think.


Part of Charm.

The Charm logo

Charm热爱开源 • Charm loves open source • نحنُ نحب المصادر المفتوحة

helm/helm (helm.sh/helm/v3)

v4.1.1: Helm v4.1.1

Compare Source

Helm v4.1.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:
    • 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: fine-grained context options for waiting #​31735
  • fix: kstatus do not wait forever on failed resources #​31730
  • fix: Revert "Consider GroupVersionKind when matching resources" #​31772
  • fix: handle nil elements in slice copying #​31751
Installation and Upgrading

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

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.

This release was signed by @​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 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.2.0 and 3.21.0 are the next minor releases and will be on May 13, 2026
  • 4.1.2 and 3.20.2 are the next patch releases and will be on March 11, 2026
Changelog
  • feat(kstatus): fine-grained context options for waiting 5caf004 (Matheus Pimenta)
  • bugfix(kstatus): do not wait forever on failed resources 2519a88 (Matheus Pimenta)
  • Revert "Consider GroupVersionKind when matching resources" b2c487c (Matheus Pimenta)
  • fix(copystructure): handle nil elements in slice copying 261387a (Philipp Born)

v4.1.0: Helm v4.1.0

Compare Source

Helm v4.1.0 is a feature 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
  • Feature: added chart name to dependency logs, namespace to resource waiting logs, and confirmation message when all resources are ready #​31530
  • Feature: improved plugin name validation error messages and field name detection #​31491
  • Feature: improved the --wait flag by allowing explicit strategy selection (including explicit --wait=hookOnly) and preventing SDK timeout errors when timeout is not specified #​31421
  • Feature: allow concurrent dependency build with atomic file write #​30984
  • Feature: added a --no-headers flag to the 'helm repo list' command, allowing users to suppress table headers in the output. Useful for scripting and automation #​31448
  • SDK feature: added a LoadArchive to common loader #​31462
  • SDK feature: introduced support for custom kstatus readers #​31706
  • Fixed bug where a plugin name could already be used by another command #​31427
  • Fixed bug where --server-side flag was not passed to install when using upgrade --install #​31635
  • Fixed bug where HELM_ environment variables were not passed to plugins. this fixes a regression which was blocking some getter plugins #​31613
  • Fixed bug where Helm test --logs failed with hook-delete-policy "hook-failed" or "hook-succeed" #​31579
  • Fixed kube client logging issue #​31560
  • Fixed regression where vendor-specific suffixes were stripped from .Capabilities.KubeVersion.GitVersion, breaking charts that detect managed Kubernetes platforms #​31528
  • Fixed a bug where helm uninstall with --keep-history did not suspend previous deployed releases #​12564
  • SDK: bump k8s API versions to v0.35.0
  • docs: updated helm template help text to document --api-versions #​31683
  • docs: fixed documentation about default wait strategy
Installation and Upgrading

Download Helm v4.1.0. 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.1.1 and 3.20.1 are the next patch releases, scheduled for March 11, 2026
  • 4.2.0 and 3.21.0 are the next minor releases, scheduled for May 13, 2026
Changelog
  • Update pkg/kube/statuswait.go f46f1ce (Evans Mungai)
  • pkg/kube: introduce support for custom kstatus readers 59ece92 (Matheus Pimenta)
  • chore(deps): bump golang.org/x/term from 0.38.0 to 0.39.0 de0becd (dependabot[bot])
  • chore(deps): bump golang.org/x/text from 0.32.0 to 0.33.0 46e5264 (dependabot[bot])
  • fix(release): fix test compilation error e751a70 (Evans Mungai)
  • Suppress SC2154 without changing behavior 9125b84 (Sarfraj Khan)
  • chore(deps): bump github.com/foxcpp/go-mockdns from 1.1.0 to 1.2.0 0e0c02e (dependabot[bot])
  • Lint sync-repo.sh with ShellCheck d4a2787 (sarfraj89)
  • chore: move Evans Mungai from triage to maintainers fd090cc (Evans Mungai)
  • Replace reflect.Ptr with reflect.Pointer 2d6d9c0 (Mads Jensen)
  • fix: typo in the function names 138f730 (Gergely Brautigam)
  • Add documentation for --api-versions flag in template command c7cc77b (majiayu000)
  • Fixing failing tests for cli-tools update fe1c749 (Matt Farina)
  • chore(deps): bump github.com/fluxcd/cli-utils 5e82698 (dependabot[bot])
  • Replace deprecated NewSimpleClientset a15db7f (George Jenkins)
  • docs(README): add mise alternate installation documentation 04198dc (jylenhof)
  • enable exhaustive linter 9a898af (Brenden Ehlers)
  • fix: add default casess to switch statements 1c119bc (Brenden Ehlers)
  • build: set kube version via debug.BuildInfo c6d9a5b (Branch Vincent)
  • chore(deps): bump github.com/tetratelabs/wazero from 1.10.1 to 1.11.0 97cde79 (dependabot[bot])
  • chore(deps): bump github.com/BurntSushi/toml from 1.5.0 to 1.6.0 9123143 (dependabot[bot])
  • doc: update based on review suggestion 55a4aed (Deepak Chethan)
  • test(statuswait): fix Copilot code review suggestion for goroutine in tests d6b35ce (Mohsen Mottaghi)
  • test(statuswait): add more tests suggested by Copilot code review a1543d5 (Mohsen Mottaghi)
  • test(statuswait): add some tests for statuswait dd44f4e (Mohsen Mottaghi)
  • fix: use namespace-scoped watching to avoid cluster-wide LIST permissions 3dd54ed (Mohsen Mottaghi)
  • fix(doc): Update default wait strategy f92ae18 (Deepak)
  • Update to use slog 9772037 (tison)
  • Fix TestCliPluginExitCode 3c6557d (tison)
  • Check plugin name is not used 5196b84 (tison)
  • chore(deps): bump github.com/fluxcd/cli-utils 364a7aa (dependabot[bot])
  • Fix TestConcurrencyDownloadIndex typo 592815e (George Jenkins)
  • Use errors.Is to check for io.EOF and gzip.ErrHeader a490bb3 (Mads Jensen)
  • chore(deps): bump actions/upload-artifact from 4.6.2 to 6.0.0 09ae0d4 (dependabot[bot])
  • chore(deps): bump the k8s-io group with 7 updates 1f8e84d (dependabot[bot])
  • chore(deps): bump golang.org/x/crypto from 0.45.0 to 0.46.0 e9a0510 (dependabot[bot])
  • chore: fix some comments to improve readability 858cf31 (wangjingcun)
  • chore(deps): bump golang.org/x/text from 0.31.0 to 0.32.0 7fb1728 (dependabot[bot])
  • feat: move TerryHowe triage to maintainers e900a25 (Terry Howe)
  • Use latest patch release of Go in releases 8f636b5 (Matt Farina)
  • chore(deps): bump github.com/rubenv/sql-migrate from 1.8.0 to 1.8.1 ea52f87 (dependabot[bot])
  • fix(upgrade): pass --server-side flag to install when using upgrade --install 2dc581d (Evans Mungai)
  • chore(deps): bump github.com/spf13/cobra from 1.10.1 to 1.10.2 a9bbffb (dependabot[bot])
  • chore(deps): bump golang.org/x/term from 0.37.0 to 0.38.0 d195cfa (dependabot[bot])
  • Run the vulnerability check on PR that change the file 24a8258 (Matt Farina)
  • Fix govulncheck in CI bc9462f (Matt Farina)
  • Update the govulncheck.yml to run on change b825a18 (Matt Farina)
  • Enable the sloglint linter a18e59e (Mads Jensen)
  • fix(cli): handle nil config in EnvSettings.Namespace() 8534663 (Zadkiel AHARONIAN)
  • fix(getter): pass settings environment variables 119341d (Zadkiel AHARONIAN)
  • fixes comment in install.go a109ac2 (Stephanie Hohenberg)
  • chore(deps): bump actions/stale from 10.1.0 to 10.1.1 581ab1a (dependabot[bot])
  • chore(deps): bump golangci/golangci-lint-action from 9.1.0 to 9.2.0 e62bf7f (dependabot[bot])
  • fixes tests after merge 2f598ff (Stephanie Hohenberg)
  • fixes lint issue bb9356e (Stephanie Hohenberg)
  • updates tests after rebase from master 8cf4ad7 (Stephanie Hohenberg)
  • Add tests to action package to improve coverage 31131cf (Stephanie Hohenberg)
  • chore(deps): bump actions/checkout from 6.0.0 to 6.0.1 e6b2068 (dependabot[bot])
  • Inform we use a different golangci-lint version than the CI faa8912 (Benoit Tigeot)
  • Deal with golint warning with private executeShutdownFunc 45c5f3a (Benoit Tigeot)
  • Use length check for MetaDependencies instead of nil comparison b33d4ae (Calvin Bui)
  • Code review 70fc5f9 (Benoit Tigeot)
  • Fix linting issue 9f1c8a2 (Benoit Tigeot)
  • Update pkg/action/hooks.go 6bb5bcc (Michelle Fernandez Bieber)
  • added check for nil shutdown d930144 (Michelle Fernandez Bieber)
  • cleaned up empty line 7a61ebf (Michelle Fernandez Bieber)
  • updated comment and made defer of shutdown function return errors as before and not the possible shutdown error 1071477 (Michelle Fernandez Bieber)
  • added shutdown hook that is executed after the logs have been retrieved 7a55758 (Michelle Fernandez Bieber)
  • chore: fix typo in pkg/downloader/chart_downloader.go e71a29c (megha1906)
  • Bump required go version (go.mod version) b859163 (George Jenkins)
  • Use modernize to use newer Golang features. 6cceead (Mads Jensen)
  • Remove two redundant if-checks. 380abe2 (Mads Jensen)
  • Fix kube client logging 936cd32 (Matt Farina)
  • chore(deps): bump golangci/golangci-lint-action from 9.0.0 to 9.1.0 cb35947 (dependabot[bot])
  • chore(deps): bump actions/checkout from 5.0.1 to 6.0.0 4fddc64 (dependabot[bot])
  • chore(deps): bump actions/setup-go from 5.5.0 to 6.1.0 b87f2da (dependabot[bot])
  • fix: prevent segmentation violation on empty yaml in multidoc 81d244c (Benoit Tigeot)
  • fix: prevent reporting fallback on version when none specified 40e22de (Benoit Tigeot)
  • chore(deps): bump golang.org/x/crypto from 0.44.0 to 0.45.0 c2405ce (dependabot[bot])
  • chore(deps): bump github.com/cyphar/filepath-securejoin 28baa97 (dependabot[bot])
  • bump version to 4.1 63e060f (Matt Farina)
  • fix: add missing context to debug logs 2dc5864 (shuv0id)
  • fix: preserve vendor suffixes in KubeVersion.GitVersion ce273ee (Benoit Tigeot)
  • chore(deps): bump actions/checkout from 5.0.0 to 5.0.1 f6ceae9 (dependabot[bot])
  • fixup test f8a49f1 (George Jenkins)
  • logs a9cdc78 (George Jenkins)
  • fix b1a9760 (George Jenkins)
  • chore: add warning for registry login with namespace 5f3c617 (Terry Howe)
  • style: linting 71591ee (Benoit Tigeot)
  • test: split tests between valid and invalid b296cbe (Benoit Tigeot)
  • test: convert tests to table drive tests 9b242dd (Benoit Tigeot)
  • test: refactor TestMetadataLegacyValidate to be more generic c81a09b (Benoit Tigeot)
  • update tests 8c87024 (yxxhero)
  • fix: Use server-side apply for object create during update 18616e6 (George Jenkins)
  • Copy adopted resource info 855ebb6 (George Jenkins)
  • Refactor environment variable expansion in PrepareCommands and update tests 2d49f0c (yxxhero)
  • fix: correct LDFLAGS path for default Kubernetes version b6a8c65 (Benoit Tigeot)
  • fix: improve plugin name validation err messages early via unmarshalling acf331a (Benoit Tigeot)
  • fix: Make invalid name error message more similar and move tests 9e1e3d2 (Benoit Tigeot)
  • fix: focus only on plugin name but give more info about what we get cf077ce (Benoit Tigeot)
  • Make validation error similar and explicit for both metadatas f4b139a (Benoit Tigeot)
  • fix: improve plugin name validation error messages c04e18e (Benoit Tigeot)
  • Fix syntax errors in the document faa0adc (Fish-pro)
  • chore(deps): bump the k8s-io group with 7 updates c81e267 (dependabot[bot])
  • docs: Fix LFX Health Score badge URL in README.md 40856bf (Michael Crenshaw)
  • chore(deps): bump golang.org/x/crypto from 0.43.0 to 0.44.0 fb82e0e (dependabot[bot])
  • chore(deps): bump github.com/tetratelabs/wazero from 1.9.0 to 1.10.1 72a84fb (dependabot[bot])
  • Publish Helm v4 -> helm-latest-version e4353dc (George Jenkins)
  • Adding script to download Helm v4 5ae8586 (Matt Farina)
  • chore(deps): bump golang.org/x/term from 0.36.0 to 0.37.0 6cd0bf8 (dependabot[bot])
  • refactor: use strings.Builder to improve performance d8c4040 (promalert)
  • chore(deps): bump sigs.k8s.io/kustomize/kyaml from 0.20.1 to 0.21.0 0089a07 (dependabot[bot])
  • chore(deps): bump golangci/golangci-lint-action from 8.0.0 to 9.0.0 7a85358 (dependabot[bot])
  • Update pkg/cmd/flags.go 02312a1 (Benoit Tigeot)
  • Error strategy list match help 277c140 (Benoit Tigeot)
  • Prevent surprising failure with SDK when timeout is not set 5f6fa43 (Benoit Tigeot)
  • Do not change the default waiting strategy when --wait is not set 52a2828 (Benoit Tigeot)
  • Provide more help for SDK user when setting up WaitStrategy 1112865 (Benoit Tigeot)
  • Avoid confusion between --wait (watcher) and no --wait (hookOnly) 8535e9f (Benoit Tigeot)
  • The default is not HookOnlyStrategy but WaitStrategy 1836f37 (Benoit Tigeot)
  • Make wait strategy selection more obvious a5e110f (Benoit Tigeot)
  • Update pkg/cmd/flags.go e8b0cff (Benoit Tigeot)
  • Increase documentation of --wait flag 95e1ee1 (Benoit Tigeot)
  • While testing SDK features for v4. I was surprised with the error: 5cbd9b3 (Benoit Tigeot)
  • fix: do not run release workflow on forks d93ef03 (Terry Howe)
  • Convert pkg/cmd/load_plugins.go to slog 6de83c5 (saimanojk1)
  • Rename copilot-instructions.md to AGENTS.md caff03f (Yarden Shoham)
  • fix(rollback): errors.Is instead of string comp d158708 (Hidde Beydals)
  • fix(uninstall): supersede deployed releases 2f1ecc7 (Hidde Beydals)
  • for remaining local variable case inconsistency 4576a81 (tison)
  • Properly test error messages on pull command's test ed6cf0e (Benoit Tigeot)
  • Adding a LoadArchive to common loader 0f5eda7 (Matt Farina)
  • for all other similar cases 90d0191 (tison)
  • chore(deps): bump github.com/cyphar/filepath-securejoin 21af58b (dependabot[bot])
  • chore(deps): bump sigs.k8s.io/controller-runtime from 0.22.3 to 0.22.4 60aaa8a (dependabot[bot])
  • chore: increase logging package test coverage 558cea7 (Evans Mungai)
  • feat(repo): add --no-headers option to 'helm repo list' 6ef79bb (Paul Van Laer)
  • chore: fix typo of public field 0d6de28 (tison)
  • rename interface{} to any ffb3940 (Terry Howe)
  • test: protect unknown hook delete policies 269a32a (Marcin Owsiany)
  • chore: replace github.com/mitchellh/copystructure bee9c1a (Terry Howe)
  • fix: Fix Helm v4 release distribtion/get-helm-3 script d5d1ea3 (George Jenkins)
  • fix test ae4af69 (Artem Vdovin)
  • Make test scripts run without /bin/bash 6181e0a (Tom Wieczorek)
  • Ignore duplicated URN in logs 8025a39 (Benoit Tigeot)
  • jsonschema: warn and ignore unresolved URN $ref to match v3.18.4 03bb62f (Benoit Tigeot)
  • chore: delete unused var in installer.go 8068578 (zyfy29)
  • fix: assign KUBECONFIG environment variable value to env.Kubeconfig b25fa86 (LinPr)
  • add concurrency test on write & load index file 118d0eb (Artem Vdovin)
  • update writing index files to writeAtomicFile 314bd19 (Artem Vdovin)
  • fix index concurrency 351bb78 (Artem Vdovin)

v4.0.5: Helm v4.0.5

Compare Source

Helm v4.0.5 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

  • Fixed bug where helm uninstall with --keep-history did not suspend previous deployed releases #​12556
  • Fixed rollback error when a manifest is removed in a failed upgrade #​13437
  • Fixed check to ensure CLI plugin does not load with the same name as an existing Helm command
  • Fixed helm test --logs failure with hook-delete-policy "hook-failed" or "hook-succeed" #​9098
  • Fixed a bug where empty dependency lists were incorrectly treated as present
  • Fixed a bug where the watch library did not only watch namespaces associated with the objects
  • Fixed regression in downloader plugins environment variables #​31612
  • Fixed bug where --server-side flag is not respected with helm upgrade --install #​31627
  • For SDK users: exposed KUBECONFIG to env

Installation and Upgrading

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


Configuration

📅 Schedule: 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.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot requested a review from a team as a code owner November 12, 2025 16:07
@renovate renovate bot force-pushed the renovate/major-go-dependencies branch from 2c8744d to 614c8c2 Compare November 14, 2025 02:07
@renovate renovate bot force-pushed the renovate/major-go-dependencies branch from 614c8c2 to 278c708 Compare November 24, 2025 22:03
@renovate renovate bot force-pushed the renovate/major-go-dependencies branch 4 times, most recently from e8ae8ba to dc367f6 Compare December 13, 2025 03:11
@renovate renovate bot force-pushed the renovate/major-go-dependencies branch 2 times, most recently from cdbc4d8 to 75bd4db Compare January 6, 2026 22:31
@renovate renovate bot force-pushed the renovate/major-go-dependencies branch 2 times, most recently from 9141966 to b09bbe0 Compare January 21, 2026 22:47
@renovate renovate bot requested a review from a team as a code owner January 21, 2026 22:47
@renovate renovate bot force-pushed the renovate/major-go-dependencies branch 2 times, most recently from e855458 to 0b97ed8 Compare February 2, 2026 15:46
@renovate renovate bot force-pushed the renovate/major-go-dependencies branch 3 times, most recently from 5e2f6bc to b96cdc7 Compare February 12, 2026 12:42
@renovate renovate bot force-pushed the renovate/major-go-dependencies branch 2 times, most recently from 5c64175 to d7a9023 Compare February 24, 2026 17:03
@renovate renovate bot changed the title fix(deps): update go dependencies to v4 fix(deps): update go-dependencies (major) Feb 24, 2026
@renovate
Copy link
Contributor Author

renovate bot commented Feb 24, 2026

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: go.sum
Command failed: go get -t ./...
go: github.com/charmbracelet/lipgloss/v2@v2.0.1: parsing go.mod:
	module declares its path as: charm.land/lipgloss/v2
	        but was required as: github.com/charmbracelet/lipgloss/v2

@renovate renovate bot force-pushed the renovate/major-go-dependencies branch 2 times, most recently from 47361b4 to 9a64145 Compare March 5, 2026 16:57
| datasource | package                           | from    | to     |
| ---------- | --------------------------------- | ------- | ------ |
| go         | github.com/charmbracelet/lipgloss | v1.1.0  | v2.0.1 |
| go         | helm.sh/helm/v3                   | v3.19.4 | v4.1.1 |
@renovate renovate bot force-pushed the renovate/major-go-dependencies branch from 9a64145 to b4d4b17 Compare March 9, 2026 11:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants