2247 Commits
Author SHA1 Message Date
Ricardo Ferreira e20d5eb66b fix(client): use the core group for ReplicationControllers so they can be scaled (#4326) 2026-10-27 21:40:04 +01:00
Ümüt Özalp 7c87d65015 fix(stale): update stale issue and PR thresholds to 180 days for staleness and 30 days for closure (#4340) 2026-10-27 13:02:04 +01:00
kevin 373c0761de fix(dp): flag a deployment whose pods were never created (#4332)
* fix(dp): flag a deployment whose pods were never created

* test(dp): assert the validation message for each replica case
2026-10-26 13:30:54 +01:00
Ümüt Özalp a4b712e89a fix(rs,job): flag a ReplicaSet with missing pods and stop flagging finished parallel jobs (#4334)
Signed-off-by: Ümüt Özalp <umut@ozalp.dk>
2026-10-26 09:24:30 +01:00
kevin 6e1dc5184c fix(pdb): flag unhealthy PDBs for percent minAvailable and maxUnavailable (#4323)
* fix(pdb): flag an unhealthy PDB whose minAvailable is a percentage

* fix(pdb): flag unhealthy PDBs of every kind by comparing desiredHealthy with currentHealthy

Signed-off-by: kevin9327 <5299031+kevin9327@users.noreply.github.com>

* fix(pdb): drop the no-budget guard; desiredHealthy is 0 when neither field is set

---------

Signed-off-by: kevin9327 <5299031+kevin9327@users.noreply.github.com>
2026-10-26 09:06:36 +01:00
Ümüt Özalp 6382557188 chore(dependabot): group anchore go modules (#4331) 2026-10-24 11:23:38 +02:00
dependabot[bot] 9ec85c3595 chore(deps): bump github.com/anchore/grype from 0.120.1 to 0.121.0 (#4330) 2026-10-24 07:52:41 +02:00
dependabot[bot] 0ab3b93596 chore(deps): bump helm.sh/helm/v3 from 3.22.0 to 3.22.1 (#4328) 2026-10-24 07:43:30 +02:00
kevin ac1bcc620c fix(pod): don't report Init:N/M for a started sidecar that is not ready (#4311)
* fix(pod): don't report Init:N/M for a started sidecar that is not ready

* test(pod): cover sidecars that have not started in checkInitContainerStatus
2026-10-22 18:12:49 +02:00
kevin c023c9dd97 fix(pod): show SchedulingGated for pods held by scheduling gates (#4313)
* fix(pod): show SchedulingGated for pods held by scheduling gates

* fix(pod): stop scanning conditions once SchedulingGated is found

* fix(pod): color SchedulingGated pods as pending, not error
2026-10-22 18:08:39 +02:00
Spicy Shark e51ac53cb4 fix(config): release the aliases lock when an aliases file fails to parse (#4318)
LoadFile returned on a YAML error before its deferred Unlock was
registered, so the next lookup on the same Aliases blocked forever.
Register the Unlock right after the Lock, like the other methods do.
2026-10-20 19:17:45 +02:00
kevin 31f772a97a fix(model1): don't panic sorting a capacity column holding n/a or other text (#4309) 2026-10-20 18:31:56 +02:00
dependabot[bot] af23e0cc1b chore(deps): bump golang from 1.27.1-alpine3.24 to 1.27.2-alpine3.24 (#4301)
Bumps golang from 1.27.1-alpine3.24 to 1.27.2-alpine3.24.

---
updated-dependencies:
- dependency-name: golang
  dependency-version: 1.27.2-alpine3.24
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-10-18 11:10:07 +02:00
Ümüt Özalp bdd5630104 refactor(Dockerfile): optimize build steps by separating go.mod and source file copies (#4305) 2026-10-18 11:03:03 +02:00
Ümüt Özalp aeecafaadc stash timestamp on rows for stable AGE column sorting (#4012) 2026-10-17 22:04:41 +02:00
dependabot[bot] 9fc37fc021 chore(deps): bump github.com/fvbommel/sortorder from 1.2.0 to 1.2.1 (#4302) 2026-10-17 12:16:50 +02:00
dependabot[bot] bc371f4e89 chore(deps): bump golang.org/x/text from 0.42.0 to 0.43.0 (#4303) 2026-10-17 12:16:16 +02:00
blinxen 6450b4055e Add build time flag to override rev check (#4110) 2026-10-15 08:58:42 +02:00
Mattias Sjölinder 24a0dfa2e4 Add configurable context logo (#4056)
* Add configurable context logo

* fix: address custom logo review findings

* fix: keep custom logo sizing within the header

* fix: preserve stock logo visibility on narrow terminals
2026-10-14 12:10:38 +02:00
Pujitha PaladuguandPujitha Paladugu fb8eb65848 fix(view): don't bind CronJob trigger and suspend keys in read-only mode (#4294)
Motivation:
With read-only mode enabled (--readonly, the readOnly setting, or a
per-context override), the CronJob view still bound T (Trigger) and
S (Suspend/Resume), so the confirmation dialogs appeared and the
actions could be performed. Other views (restart, scale, container,
pod, node, ...) skip their mutating key bindings when read-only.

Approach:
CronJob.bindKeys returns early when Config.IsReadOnly() is true, the
same guard used by RestartExtender and ScaleExtender. The keys are
then neither active nor shown in the menu hints.

Validation:
- Added TestCronJobBindKeysReadOnly (internal/view/cronjob_int_test.go),
  which checks T and S are bound only when not read-only. It fails
  without the change (read-only case) and passes with it.
- go test ./internal/view/... : ok
- golangci-lint run ./internal/view/... : 0 issues
- go build ./... could not be completed here because the local disk was
  full (module downloads/vet failed); the changed package builds and
  its tests pass. I did not run k9s against a live cluster.

Report: https://github.com/derailed/k9s/issues/4293

Assisted-by: claude-sonnet-5-5 (via Claude Code)

Signed-off-by: Pujitha Paladugu <10557236+pujitha24@users.noreply.github.com>
Co-authored-by: Pujitha Paladugu <10557236+pujitha24@users.noreply.github.com>
2026-10-13 13:57:43 +02:00
Uzair Aftab 8f29fba8c9 fix(ui): guard tree collapse toggle against a nil root (#4257) 2026-10-11 21:50:45 +02:00
dependabot[bot] cd74bcb9bf chore(deps): bump github.com/mattn/go-runewidth from 0.0.30 to 0.0.31 (#4291) 2026-10-11 20:51:20 +02:00
dependabot[bot] ac38228fd7 chore(deps): bump github.com/anchore/grype from 0.120.0 to 0.120.1 (#4289) 2026-10-11 20:50:51 +02:00
dependabot[bot] bda15fbdca chore(deps): bump github.com/mattn/go-colorable from 0.1.15 to 0.1.16 (#4288) 2026-10-11 20:45:53 +02:00
dependabot[bot] 0e357b5d5e chore(deps): bump github.com/anchore/syft from 1.54.0 to 1.54.1 (#4290) 2026-10-11 20:45:25 +02:00
Ümüt Özalp 233ee06133 chore(deps): add groups for kubernetes patterns in dependabot configuration (#4287) 2026-10-11 20:16:40 +02:00
Zeki Liu 7e97f9adf0 fix(config): plug file descriptor leak in SaveYAML (#4128) 2026-10-07 21:03:31 +02:00
kevin edb1c488f7 fix: preserve case of label selectors in command prompt (#4276) 2026-10-07 21:01:54 +02:00
dependabot[bot] 64304edcb6 chore(deps): bump github.com/lmittmann/tint from 1.2.0 to 1.2.1 (#4278) 2026-10-07 19:28:23 +02:00
dependabot[bot] 5c5f8bb938 chore(deps): bump github.com/anchore/grype from 0.119.0 to 0.120.0 (#4280) 2026-10-07 19:27:53 +02:00
Paul Laffitte dba3148f06 feat(plugins): add log-hl plugin (#4284) 2026-10-07 19:23:09 +02:00
Ümüt Özalp 7064f96f1e fix(tests): improve cancellation handling in log reading tests (#4270) 2026-09-30 09:59:38 +02:00
dependabot[bot] b77c8c24f0 chore(deps): bump k8s.io/apiextensions-apiserver from 0.37.0 to 0.37.1 (#4267)
Bumps [k8s.io/apiextensions-apiserver](https://github.com/kubernetes/apiextensions-apiserver) from 0.37.0 to 0.37.1.
- [Release notes](https://github.com/kubernetes/apiextensions-apiserver/releases)
- [Commits](https://github.com/kubernetes/apiextensions-apiserver/compare/v0.37.0...v0.37.1)

---
updated-dependencies:
- dependency-name: k8s.io/apiextensions-apiserver
  dependency-version: 0.37.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-29 09:04:35 +02:00
dependabot[bot] 739fdca11a chore(deps): bump golang from cf6fca6 to 8a5910f (#4262)
Bumps golang from `cf6fca6` to `8a5910f`.

---
updated-dependencies:
- dependency-name: golang
  dependency-version: 1.27.1-alpine3.24
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-29 09:03:04 +02:00
dependabot[bot] 0cb74d6c3f chore(deps): bump k8s.io/kubectl from 0.37.0 to 0.37.1 (#4265)
Bumps [k8s.io/kubectl](https://github.com/kubernetes/kubectl) from 0.37.0 to 0.37.1.
- [Commits](https://github.com/kubernetes/kubectl/compare/v0.37.0...v0.37.1)

---
updated-dependencies:
- dependency-name: k8s.io/kubectl
  dependency-version: 0.37.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-29 08:54:45 +02:00
Ümüt Özalp 9da9c50cfd feat(tmux): add tmux split pane plugins for horizontal and vertical splits (#4261) 2026-09-28 14:12:05 +02:00
Ümüt Özalp 9ef1901ccc fix(model1): batch delete with single reindex (#4253) 2026-09-25 23:20:26 +02:00
Ümüt Özalp fa95a07d40 fix(browser): load plugins/hotkeys from disk once per view (#4252) 2026-09-25 22:43:01 +02:00
dependabot[bot] 0ffea44639 chore(deps): bump github.com/containerd/containerd/v2 (#4250)
Bumps [github.com/containerd/containerd/v2](https://github.com/containerd/containerd) from 2.3.5 to 2.3.6.
- [Release notes](https://github.com/containerd/containerd/releases)
- [Changelog](https://github.com/containerd/containerd/blob/main/RELEASES.md)
- [Commits](https://github.com/containerd/containerd/compare/v2.3.5...v2.3.6)

---
updated-dependencies:
- dependency-name: github.com/containerd/containerd/v2
  dependency-version: 2.3.6
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-25 22:21:54 +02:00
Ümüt Özalp 2d88f793cd fix(ui): avoid full table rebuild on column navigation (#4251) 2026-09-25 21:52:22 +02:00
Nived Narayan a4585a141d fix: skip namespace validation when -n is explicitly provided (#4164) 2026-09-24 22:35:09 +02:00
dependabot[bot] 03aba124b2 chore(deps): bump github.com/anchore/grype from 0.110.0 to 0.119.0 (#4245) 2026-09-24 22:05:13 +02:00
dependabot[bot] de93995f13 chore(deps): bump github.com/olekukonko/tablewriter from 1.1.4 to 1.1.5 (#4243) 2026-09-22 20:34:52 +02:00
dependabot[bot] 5d5db7a96c chore(deps): bump alpine from 3.24.1 to 3.24.2 (#4242) 2026-09-22 20:34:18 +02:00
Ho-Nam Nguyen f26550f2e3 fix(plugins): resolve shortcut conflicts with built-in table keys (#4239) 2026-09-21 08:27:12 +02:00
Sobirjon fefa878f05 fix: clarify duplicate hotkey error and update flux plugin example (#3951) 2026-09-18 22:44:28 +02:00
Stéphane Loeuillet 271901deff fix(plugins/argocd): Shift-J is Jump Owner, so the whole plugin file fails to load (#4233) 2026-09-18 22:37:32 +02:00
ginavalent d44f6a47b3 chore: correct command parser naming (#4201) 2026-09-18 17:36:10 +02:00
dependabot[bot] 846122299c chore(deps): bump go.opentelemetry.io/otel/sdk from 1.44.0 to 1.45.0 (#4235) 2026-09-18 17:34:09 +02:00
Stéphane Loeuillet bb55b2ab51 fix(plugins/argocd): target the on-screen cluster and namespace, guard the mutations (#4229) 2026-09-15 18:50:43 +02:00