Repository navigation
Releases: kdash-rs/kdash
Release list
v2.1.1
Fixed
- Selecting a namespace after filtering now jumps to the highlighted namespace instead of the first one in the unfiltered list. #551
- Updated the Kubernetes client to kube 4.2.0, so relative paths in a kubeconfig
execcredential command now resolve against the kubeconfig location. #541
Changed
- Updated dependencies: anyhow, async-trait, clap, regex, and serde-saphyr to their latest patch versions.
Contributors
Thanks to @mrpbennett for reporting the namespace filter bug (#551) and @Moulick for reporting the kubeconfig relative path issue (#541).
Full Changelog: v2.1.0...v2.1.1
v2.1.0
Added
--namespace/-nand--context/-cflags to pre-scope the TUI to a namespace and kubeconfig context at startup, matching the equivalent k9s flags. #545
Changed
- Replaced the deprecated
serde_yamlwithserde_saphyrfor config parsing and updated the Kubernetes client and other dependencies. Thanks to @tstenner for the contribution! #543
Contributors
Thanks to @tstenner for the serde_saphyr migration and Kubernetes dependency updates (#543), and to @fuleinist for requesting the startup scoping flags (#545) in this release.
Full Changelog: v2.0.2...v2.1.0
v2.0.2
Changed
- CLI version info is now gathered concurrently with
tokio::process, so a config with several slow custom probes no longer blocks startup. Regular expressions incli_info.customare also compiled when the configuration loads, so a broken regex is reported at startup instead of being silently ignored when parsing version output. #538
Fixed
kubectl describefailures now surface the underlying kubectl error, and the "make sure you have kubectl installed" hint only shows when kubectl is actually missing.
Security
- Updated vulnerable transitive dependencies to their patched versions:
rustls-webpki,ring,idna,eyre,rand, andtracing-subscriber.
Contributors
Thanks to @tstenner for the async CLI probing work (#538) in this release.
Full Changelog: v2.0.1...v2.0.2
v2.0.1
Added
- Official
install.shscript for Linux and macOS with SHA-256 checksum verification and--versionpinning, plus an AUR package for Arch Linux.
Fixed
- Context switching now applies to kubectl-backed actions. After switching context with
Shift+C, describe, shell exec, edit, and port-forward target the selected context instead of the kubeconfig's current context. #533
Full Changelog: v2.0.0...v2.0.1
v2.0.0
KDash 2.0 turns the dashboard from read-only into a tool you can act with. You can now manage resources, port-forward, and edit manifests without leaving the TUI, alongside a refreshed UI and faster rendering.
Added
- NEW: Resource management actions. KDash can now act on resources, not just observe them:
- Delete any resource (
Ctrl-d) - Edit any resource in your
$EDITOR(e); KDash suspends the UI while the editor is open and applies the result on save - Scale Deployments/StatefulSets/ReplicaSets/ReplicationControllers to a replica count via an inline input
- Rollout restart Deployments/StatefulSets/DaemonSets (
r) - View previous (restarted) container logs (
p) - Cordon/uncordon nodes and suspend/resume/trigger CronJobs
- Delete any resource (
- NEW: Port-forward a Pod or Service with
f, then list and stop active forwards withShift+F. Forwards run as tracked background processes and are stopped when you quit KDash. - NEW: Action menu (
m) lists every available action for the selected resource; the most-used actions also have dedicated hotkeys surfaced as hints. - NEW: More built-in themes and runtime theme cycling. Switch themes on the fly with
t(next) andAlt+t(previous) across Macchiato, Latte, Gruvbox Dark, Solarized Dark, and Mono, plus an optional custom theme. - Log view options to toggle timestamps (
t) and line wrap (w) while viewing container logs. - Cycle the main views in reverse with
Shift+Tab, reset the view-switch history withCtrl+H, and jump to the start/end of tables and text views withHome/End. - Impactful actions are guarded by a confirmation prompt before any change is applied.
Changed
- Refreshed the UI across hints, headers, help, notifications, and gauges for a cleaner, more consistent look.
- Help page now lays out keybindings in two balanced columns.
- Utilization view adds a cluster summary pane.
- Context info panel shows more detail, and the view-switch history is collapsed by default to reduce noise.
- Scrolling is unified across views with smoother behavior. Thanks to @tstenner for the contribution! #530
- Enabled the ratatui layout cache for faster redraws. Thanks to @tstenner for the contribution! #531
- Updated kubectl-view-allocations to 3.0.1 and ratatui to 0.30.1, plus chrono, serde_json, log, clap, strum, and human-panic bumps.
New Contributors
Full Changelog: v1.1.2...v2.0.0
v1.1.2
v1.1.1
Changed
- Add overflow indicators to the resource tabs
v1.1.0
Added
- NEW: Configurable CLI Info entries, including disabling built-in probes, custom commands, optional regex-based version extraction, and control over whether missing binaries are hidden or shown as
Not found. Fix #452 - NEW: More columns are shown if viewport is wide enough for most resources including a new 'w' keybind to show all.
- Dynamic resource menu counts now use cached results and show
?while a resource kind has not been loaded yet
Changed
- Resource tabs now auto-scroll to keep the selected tab visible, prefer showing neighboring tabs where possible, and hide zero-count badges for cleaner headers
- CLI Info defaults now include
podmanandcontainerd, whileistioctlis provided as a sample custom probe instead of a built-in entry - The More menu is now ordered by more commonly used resources first
- The filter UI is more consistent across different views
- Troubleshoot module is improved. Thanks to @sed-i for the contribution! #513
- UI draw efficiency improvements. Thanks to @sed-i for the contribution! #515
Fixed
- Batched redraw/event handling now coalesces queued ticks and clamps rendering windows to avoid empty tables and YAML slice panics on small or offset views
- Troubleshoot findings now sort deterministically, and follow-up cleanups improved readability in Pod, PVC, and ReplicaSet checks
v1.0.0
Added
- NEW: Shell into container directly from the UI with
skeybinding- Restore the KDash UI cleanly after leaving an interactive container shell
- Fall back from
/bin/bashto/bin/shautomatically when opening a pod shell
- NEW: Troubleshoot tab with diagnostics and recommendations for common Kubernetes issues across Pods, PVCs, and ReplicaSets, plus direct drill-down into containers, logs, describe, and YAML views. Thanks to @sed-i for the contribution! #505
- NEW: Inline filter/search across resource tables and views, including Contexts, Help, Utilization, Troubleshoot, More, and Dynamic resource menus
- NEW: Aggregate logs for workload resources, so you can view logs from all owned pods in one stream
- NEW: Deeper navigation from resource tables into child views such as Pods, Containers, Logs, Describe, and YAML
- NEW: Custom config support for keybinding overrides, theme overrides, and configurable initial log history via
log_tail_lines - NEW: In-app action to dump recent errors to a file for debugging
- Resource counts in resource tabs and menus
- Events tab with namespaced Kubernetes events, counts, ages, and describe/YAML views. Thanks to @sed-i for the contribution! #504
Changed
- Default dark/light themes now use Catppuccin Macchiato and Catppuccin Latte
- Enter-based navigation now drills into child resources where available and opens Describe on leaf resources
- Dynamic resource discovery now tolerates non-
v1preferred API group versions and reuses cached results - Kubeconfig changes are watched live so context and namespace state stay in sync without restarting
Fixed
- Log streaming, scrolling, and history handling improvements, including bounded buffers and faster follow behavior. Fix #6
- Reduced startup and UI lag with runtime, describe rendering, and resource-loading improvements
- Better error handling and friendlier messages, including fixes for #484
- Fixes for long-standing issues around namespace fallback and kubeconfig/context refresh (#89, #90, #315)
- HTTPS proxy support, pending pod ready counts, dynamic resource navigation, and other reliability improvements
- Dependency updates and test/CI stability fixes