All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Controller pod log viewer (#192):
:logsopens a submenu of the discovered Flux controller pods (:logs <pod|prefix>streams one directly). Logs are tailed and followed live in a bounded buffer; scrolling up pauses following andGjumps back to the newest line;/searches the buffer. The stream runs only while the view is open. - ResourceSet step visualization (#193): the detail view of a step-based ResourceSet lists its ordered steps with per-step phase (done / applying / failed / pending) derived from the status conditions, plus each step's resource count, template marker, and timeout.
- Restored SOCKS5 proxy support (#202): the
kube/socks5cargo feature was accidentally dropped in a dependency cleanup (#182), so kubeconfigs withproxy-url: socks5://…failed at startup withrequires the disabled feature "kube/socks5". Regression tests now build a client through both socks5 and http proxy configs so a missing proxy feature fails CI.
- Kubernetes Events support:
- The describe view (
d) now ends with a kubectl-style Events section showing the resource's recent events (Warnings highlighted; degrades to a notice when events are unavailable, e.g. RBAC). - New
:events(alias:ev) live events feed for the current namespace scope — cluster-wide with:ns all. Streams in real time, newest first, filterable with/;Enterjumps to the involved Flux resource. The events watcher runs only while the view is open.
- The describe view (
- Resource action keys now resolve their target from any view via a single
view_target()resolver:y/d(andt/g/h/operations for watched resources) act on the selected event's involved object in the events feed and on the focused node in the graph view — previously these keys only worked from the resource list, favorites, and detail views.y/dwork for non-Flux objects too (Pods, Deployments, …) via the API fetch path, and Back returns to the view you came from (events feed or graph). - Graph view keyboard navigation:
j/kmove a highlighted focus between nodes (the view auto-scrolls to keep it visible),Enteropens the focused resource's detail view, andEscreturns to the graph.
- Graph connectors are redrawn as consistent fan-outs (trunk → branch above the children → drop into each child) using proper box-drawing junctions, and nodes sit closer together for a tighter, clearer layout.
:allnow returns to the main resource list from the events feed (and stops the events watch), instead of only clearing filters while stuck in the view.- The events feed's "not a watched Flux resource" message now names the
involved object's namespace and points at
y/d, so namespace-scope mismatches are visible instead of just confusing.
- New generic
AsyncTask<K, T>owns the request/dispatch/poll lifecycle for view fetches, replacing the five copy-pasted*_pending/*_fetched/*_rxfield triplets and their hand-rolled trigger/poll methods. - YAML/describe fetch requests are now typed
ResourceKeys instead of"type:namespace:name"strings, removing the re-parse (and its can't-happen error branches) from the main loop. - The Kubernetes events watcher has an independent lifecycle from the resource watchers (started lazily, stopped without a full watcher teardown), and survives namespace switches.
- Single source of truth for graph node sizing (
GraphNode::render_width/render_height); connector geometry extracted into the testable,Frame-freefanout_routes(). - Per-view behavior consolidated onto
impl Viewhelpers (scroll_offset_mut,is_list_view,is_text_search_view,is_nested_view). :command handling is now data-driven viaCOMMAND_TABLEwith focusedcmd_*handlers, replacing the long string-matching chain inexecute_command.
- Added the
Describecommand
- Changed the
dcommand todescribe - Changed the
deletecommand
- Updated Flux CRDs to the latest versions (#146, #135)
- Added quit warning when using
qoresccommands (#143)
- Tweaked CRD workflow permissions (#137)
- Switched from
maketojustin CI (#136)
- Addressed a vulnerability found by cargo audit (#138)
- Updated documentation and README (#140)
- Adjusted release workflow permissions (#144)
- Added more fields to the Flux CRD to improve the functionality of the Flux resource.
- Improved the development kind cluster to better support the Flux resource.
- Added a new external service
rscinptprvdr
- Shortened the CI configuration in pull request #131
- Support for page up and page down scrolling keys (#125)
- Updated Flux CRDs to the latest versions (#126)
- Page up and page down scrolling functionality for line display
- Compatibility with flux9s lib
- Support for marking stateless resources as ready (#113)
- New configuration options for controller/operator namespace (#107)
- Reduced Cargo package size and refactored column code (#116)
- Updated documentation with new links and minor formatting changes (#111, #109, #108)
- Reverted an accidental version bump to 0.7.2 (#115)
- Improved code readability and maintainability through code cleanup
- Updated Flux version display to show the current version
- Ability to open skin submenu from skin UI
- Controller pod status information
- Enhanced controller functionality
- Addressed version warning issues (#96)
- Added a sub-menu to the commands, accessible through the
ctxcommand.
- Added backup fonts for documentation
- Refactored application structure, breaking up app struct (#91)
- Flux Webui features
- Version bumped to 0.6.0
- Added Flux WebUI features
- Added "unhealthy" and "health" filters to display percentage status on top
- Updated 2024 edition with status tweak
Here is a concise changelog summary for version 0.5.10:
Added:
- Support for specifying a Kubernetes configuration file via the
--kubeconfigoption
Here's a concise changelog summary for version 0.5.9:
- Resolved a bug that caused issues during application startup.
- New
:ctxfor context switching - Agent files for improved functionality
- Website tweaks and improvements
- Resolved issues with website and CI deployment
- Support for SOCKS proxy connections (#68)
- Compiled binary is statically linked
- Updated dependencies to address known security vulnerabilities
- Improved skin customization options
- Enhanced command-line interface (CLI)
- Resolved scrolling bug reported in issue #61
- Ability to filter namespaces by number
- Improvements to the help menu
- Various bug fixes and tweaks
- Bumped version to 0.5.2
- Resolved a CI issue
- Refactored codebase and improved overall code hygiene (#51)
- Better filtering
- Label and Annotation filtering
- Support for macOS 15 runners
- Support for building on Windows platforms
- Resolved an issue with the wrap bug
- Refined the CI workflow configuration
- Changed the CI agent model configuration (#40)
- Updated the CI workflow configuration (#38)
- Support for Flux operator CRDs (#33)
- Screenshot image to documentation (#31, #32)
- Fixed trace functionality (#28)
- Replaced hardcoded strings with configuration (#27)
- Default mode set to readOnly (#23)
- Workflow tweaks and improvements (#19)
- Code hygiene improvements (#16)
- Workflow release changes (#16)
- Version bump to 0.2.1
- ReadOnly mode support
- Configuration and config-cli functionality
- OpenSSL build issues (#10, #8)
- Windows temporary file handling (#9)
- OpenSSL support
- Debug logging (#7)
- Proxy support (#6)
- Homebrew support (#5)
- Homebrew macOS architecture support (#4)
- Homebrew macOS architecture support (#3)
- macOS M-chip (Apple Silicon) support (#2)
- Binstall support
0.1.0 - YYYY-MM-DD
- Initial release
- Real-time monitoring of Flux resources
- K9s-inspired terminal UI
- Support for all major Flux CRDs (Kustomization, GitRepository, HelmRelease, etc.)
- Resource operations (suspend, resume, reconcile, delete)
- YAML viewing
- Namespace switching
- Status indicators
- Comprehensive test suite