Releases: vladimirvivien/ktop
Version 0.5.3
What's Changed
Net and Disk I/O Visualization updates
- Node network and disk IO metrics have been updated with better normalization logic to display metrics
- Pod detail view now shows disk read/write rates in the visualization
- Pod network visualization is disabled per-pod for now
Full Changelog: v0.5.2...v0.5.3
Version 0.5.2
Bug Fix
This release fixes UI issues and memory consumption that was reported in #141.
Fixes
- Internal refactor to better manage locks
- Introduction of scrape timeout to avoid freeze
- Reduce the number of metrics to only store 8 metrics that ktop actually uses
- Add string interning for metrics label deduplication
- Reduce Prom MaxSamples to 50
Full Changelog: v0.5.1...v0.5.2
Version 0.5.1
Bug Fix Release
This patch release fixes a critical startup hang that could occur when using Prometheus metrics.
Problem: ktop would sometime hang indefinitely when using Prometheus
metrics source and one or more nodes were slow or unresponsive.
Root Cause: The initial metrics collection blocked startup, waiting synchronously for
all nodes to respond. Sequential node scraping meant one slow node would block all others,
with no per-request timeout.
Solution:
- Test connectivity before starting collection (fails fast on RBAC issues)
- Non-blocking first collection with timeout
- Parallel node scraping instead of sequential
- Per-request timeout (30s) prevents indefinite blocking
Result: ktop now starts immediately and populates metrics in the background.
Full Changelog: v0.5.0...v0.5.1
Version 0.5.0
v0.5.0 Release Notes
This is a massive release that updates ktop in several major ways. First, this release introduces Prometheus as a (default) metrics source, providing richer metrics and better accuracy when available. Second, the UI has been significantly enhanced with new detail views, improved navigation, and polished visualizations to make ktop a tool you can use daily to watch over your Kubernetes clusters.
What's Changed
New Features
- Prometheus Metrics Support - Native Prometheus scraping from
kubelet,cAdvisor, andAPI serverendpoints - Prometheus as Default - Metrics source now defaults to Prometheus with graceful fallback
- Runtime Namespace Filtering - Filter pods by namespace at runtime
- Content Filtering - Search and filter content within views
- Column Sorting - Sort tables by clicking column headers
- Resource Detail Views - Drill-down detail pages for nodes, pods, and containers
- Context-Aware Navigation - Navigation hints adapt to current view
- Toast Notifications - User messages displayed via toast windows
Improvements
- Redesigned cluster summary panel
- Improved summary statistics display
- Enhanced health check reporting
- Enhanced sparkline visualizations
- Unified runtime storage backend for metrics
- Dynamic height adjustment on terminal resize
Documentation
- Updated documentation to reflect the new changes
- New GitHub Pages published at https://vladimirvivien.github.io/ktop/
Full Changelog: v0.4.1...v0.5.0
Version 0.4.1
This release is a minor release to fix how goreleaser configuration places Homebrew script in its default location.
Refer to release v0.4.0 for detail on major changes introduced in v0.4.0.
What's Changed
- Fix Homebrew cask placement by @vladimirvivien in #56
Full Changelog: v0.4.0...v0.4.1
Version 0.4.0
This release introduces new command-line options to filter which columns are displayed in nodes and pods tables.
Users can now customize the view by specifying columns with --node-columns and --pod-columns flags.
Column Filtering
You can now customize which columns are displayed in the nodes and pods tables. This is useful when you want to focus on specific metrics or when working with limited screen space.
To show only specific node columns:
ktop --node-columns NAME,CPU,MEMTo show only specific pod columns:
ktop --pod-columns NAMESPACE,POD,CPU,MEMORYYou can combine both filters:
ktop --node-columns NAME,CPU,MEM --pod-columns NAMESPACE,POD,STATUSAvailable node columns:
NAME
STATUS
AGE
VERSION
INT/EXT IPs
OS/ARC
PODS/IMGs
DISK
CPU
MEM
Available pod columns:
NAMESPACE
POD
READY
STATUS
RESTARTS
AGE
VOLS
IP
NODE
CPU
MEMORY
These enhancements improve the usability and customization of ktop, allowing users to tailor the displayed information to their needs. The updated automation scripts also ensure a smoother release workflow.
What's Changed
- Bump golang.org/x/net from 0.23.0 to 0.36.0 by @dependabot in #53
- Bump golang.org/x/net from 0.36.0 to 0.38.0 by @dependabot in #54
- Add column filtering options for nodes and pods in ktop by @rogosprojects in #51
- Update CI/release scripts by @vladimirvivien in #55
New Contributors
- @rogosprojects made their first contribution in #51
Full Changelog: v0.3.7...v0.4.0
Version 0.3.7
This release fixes issue with GoReleaser.
What's Changed
- Fixes/updates to Goreleaser and GitHub Actions by @vladimirvivien in #48
Full Changelog: v0.3.6...v0.3.7
v0.3.6
What's Changed
Security updates
- Bump gopkg.in/yaml.v3 from 3.0.0-20210107192922-496545a6307b to 3.0.0 by @dependabot in #41
- Bump golang.org/x/net from 0.7.0 to 0.17.0 by @dependabot in #42
- Bump golang.org/x/net from 0.17.0 to 0.23.0 by @dependabot in #45
- Bump google.golang.org/protobuf from 1.27.1 to 1.33.0 by @dependabot in #44
Full Changelog: v0.3.5...v0.3.6
Version 0.3.5
Metrics-API informer
This minor release introduces an informer for the metrics-api types. This change should reduce api server chatter by caching metrics data and allowing ktop to perform better when clusters have large number of workload components.
Launching ktop via containers
The GitHub Action has been update to release ktop as an OCI container at ghcr.io/vladimirvivien/ktop. You can now run ktop as follows:
export KUBECONFIG=/home/user/.kube/config
docker run --network=host --rm --platform="linux/arm64" -it -v $KUBECONFIG:/config -e KUBECONFIG=/config -e TERM=xterm-256color ghcr.io/vladimirvivien/ktop:latest
Changelog
- cb3a80f Implements an informer for metrics-api types
What's Changed
- Bump github.com/emicklei/go-restful from 2.9.5+incompatible to 2.16.0+incompatible by @dependabot in #29
- Bump golang.org/x/text from 0.3.7 to 0.3.8 by @dependabot in #32
- Bump golang.org/x/net from 0.0.0-20220127200216-cd36cc0744dd to 0.7.0 by @dependabot in #34
- Bump golang.org/x/crypto from 0.0.0-20220214200702-86341886e292 to 0.1.0 by @dependabot in #35
- Publish container image with Ko by @vladimirvivien in #30
Full Changelog: v0.3.0...v0.3.5
Version 0.3.0
This version fixes the following issues:
- Update the GUI to include additional information (i.e. context/user names, number of items in panels, etc)
- Fixes authorization - fail fast if current user does not have proper access rights
- Update GitHub actions for automatic krew and homebrew releases
- Doc update
Changelog
80d510b GitHub Action and release automation
80d510b GitHub Action and release automation
bfd4566 Fixes for authorization detection; client-go updates; UI updates
e0ddeb1 Refactor code to use typed clients and informers
d3ab44a GUI updates and doc adjustments
31ec998 Correction to README
da7d1d8 chore: Rename Nmspaces to Namespaces