0.9.0 (2026-03-16)
- detect stale columnar indexes with partial trust (#81) (cf99bff)
- mcp: add full_content option to skip line truncation (#80) (f8431c5)
- tui: add line wrap mode (#82) (8708b4f)
- index: harden columnar index against corruption and crash recovery (#83) (64be910)
- perf: resolve 1.2s/frame render freeze on large files with partial index (3828b4f)
- resolve clippy warnings breaking CI on master (#85) (a47d803)
- source: refresh status of ended sources so new captures show as online (1d30b9b)
- strip carriage return from version in install script (61b1d37)
- use jq for JSON config manipulation in install script (#78) (b2c3aaf)
- viewport: eliminate O(N) freeze when opening large files (950c3a4)
0.8.2 (2026-03-03)
- eliminate render bottleneck and reduce combined reader overhead (6f3eca9)
0.8.1 (2026-03-03)
- ci: add actions:write permission to release-pr workflow (c798853)
- logfmt exclude bypass, URL decoding, safety docs, dead code, bounds checks (#71) (a1b4e39)
- reduce unnecessary work in event loop and combined reader reload (c7d8918)
0.8.0 (2026-03-02)
- bench: add filter benchmarking CLI subcommand (#50) (a45ca20)
- bench: compare generic and SIMD paths for plain text benchmarks (#65) (017188b)
- clipboard: add y keybinding to copy selected line (#44) (f7dd854)
- combined-view: add merged chronological view for source categories (#48) (8d5ff18)
- combined-view: per-category combined tabs with follow mode fix (#49) (40861db)
- filter: add count-by aggregation with TUI view and MCP support (#46) (331e2ae)
- filter: add explicit Query filter mode via Tab cycling (#47) (136d779)
- help: add scrollable help overlay with j/k navigation (#43) (75ee3f4)
- mcp: add since_line parameter to get_tail for incremental polling (bd88113)
- mouse: add mouse click support for side panel and log view (#45) (e459bfc)
- remember last opened source and fix tab shortcut mapping (#62) (22e822c)
- renderer: add capture rendering, theme-aware styles, and external presets (#61) (84ff261)
- renderer: add field paths, style maps, max width, and compound styles (#55) (2f12eee)
- renderer: add MCP rendering, field formatting, and conditional styling (#59) (2038433)
- renderer: add MCP rendering, field formatting, and conditional styling (#59) (6dd34ac)
- renderer: add YAML-configurable rendering presets for structured log lines (#52) (960529b)
- renderer: wire discovered sources to config renderers and add conversation preset (f96224b)
- theme: add {project_root}/themes/ to theme search paths (#57) (ed0e890)
- theme: add configurable color scheme system with built-in themes (#53) (4b751cc)
- theme: add external theme file loading, inheritance, and CLI (#54) (ecee32c)
- theme: add multi-format import and remove project_root/themes/ path (#63) (46698fe)
- theme: apply palette.background as TUI background color (#58) (6bd8127)
- tui: add raw mode toggle to bypass preset and ANSI rendering (#66) (9819e41)
- index: detect and reject stale columnar indexes on file replacement (#56) (d7f62f6)
- index: validate index freshness in
get_statsbefore returning metadata (#64) (4ebc16e) - install script fails due to GitHub API rate limiting (#39) (9cfd015)
- renderer: prevent empty lines from mismatched preset auto-detection (4dd1703)
- surface filter errors, recover from mutex poisoning, bail on index lock failure (#69) (0c80187)
- tui: prevent expanded lines from clipping at screen bottom (#51) (14f2bec)
- tui: unify sidebar selection background color for overflow overlay (bf6327b)
- tui: use normal background for metadata in sidebar overflow overlay (39b53b4)
- watcher: TUI not refreshing on macOS due to missed file events (#41) (f28c44d)
0.7.0 (2026-02-23)
- cli: add a simple web client (#30) (26afdbe)
- severity line-number coloring, live stats, and ingestion rate (9734a72)
- update: add self-update with CLI subcommand and background check (#36) (c0d4fd7)
- ci: auto-trigger release builds when release-please creates releases (97ace90)
- examples: add lz4_flex dev-dep and bench_compression example (662ddd8)
- harden atomicity, error handling, and safety across codebase (b48b719)
- index: add writer lock and truncate orphaned entries on resume (2a6c286)
- perf: resolve TUI freeze during active capture streams (dd72e63)
- source: show global sources alongside project sources (d8fc3bd)
0.6.0 (2026-02-19)
- index: add columnar index system (#34) (2d1d4e5)
- ui: show line count and file size per source in side panel (#33) (15830dd)
- ci: trigger release build on tag push instead of workflow dispatch (#26) (a435292)
- source: check project-local markers for TUI source status (#29) (08a07bf)
0.5.3 (2026-02-13)
- ci: resolve empty PR number in release notes step (8b66287)
- source: handle EPERM in macOS PID liveness check (#25) (cf87b07)
0.5.2 (2026-02-13)
0.5.1 (2026-02-13)
0.5.0 (2026-02-11)
- add config system with discovery, loading, and CLI commands (#11) (6afaf66)
- mcp: accept source names instead of file paths in tool API (cd064b6)
- mcp: accept source names instead of file paths in tool API (2ace327)
- mcp: accept source names instead of file paths in tool API (#18) (cd064b6)
- mcp: add plain text output format to reduce JSON escaping (#13) (2792865)
- mcp: wire query language into search tool (#19) (727bb22)
- ui: add close confirmation dialog for tabs (#15) (d8f3dfd)
- ui: display file path in header and add y to copy source path (#17) (c2c4995)
0.4.0 (2026-01-31)
- add filter progress percentage and streaming filter (0b2e1e3)
- add get_tail MCP tool and fix parameter schemas (1fecd64)
- add list_sources MCP tool (fb6aea0)
- add MCP server support (a11401d)
- add source discovery and capture mode (9ab50c2)
- add source discovery and capture mode (Phase 2 & 3) (cba0796)
- add tree-like source panel with category navigation (5dd3903)
- background loading for pipes and stdin (b440ba1)
- delete ended sources when closing tab (d7896d0)
- enable MCP feature by default (7d11c03)
- highlight focused panel border (1ecf14d)
- mcp: add MCP server for AI assistant integration (439383b)
- optimize MCP search with streaming filter and fix lines_searched tracking (4add1d4)
- tree-like source panel with Tab navigation (d058405)
- allow dead_code for FilterProgress to fix CI without MCP feature (861489a)
- comprehensive bug fixes from code review (a45926a)
- handle edge cases in is_pid_running for macOS (5dae000)
- make is_pid_running cross-platform for macOS (ef48663)
- multiple filtering and input handling improvements (628d36a)
- prevent results blink when changing filter (d6a0e13)
- process one key event per iteration for multi-key sequences (cb8a2f6)
- refresh source status on each render cycle (0d2301f)
- remove redundant libc import (9ff9144)
- resolve clippy warnings for newer Rust versions (c7e8f2a)
0.3.0 (2026-01-26)
- add advanced filter modes with regex support and cursor navigation (bbb12c8)
- add Ctrl+E/Ctrl+Y viewport scrolling and major refactor (f14563f)
- add expandable log entries and default follow mode (293fb9b)
- add stats panel showing line counts in side panel (d6fadbf)
- persist filter history to disk (d6eded9)
0.2.0 (2026-01-23)
- add filter history with arrow key navigation (0136352)
- add help overlay with keyboard shortcuts (eda6d1f)
- add mouse scroll support (b65f482)
- add multi-tab support with side panel UI (c20926c)
- add stdin support with auto-detection (b90ce34)
- add viewport system for stable filter selection (28e7837)
- add vim-style line jump with :number command (4bfdb92)
- add vim-style z commands for view positioning (5883c41)
- multi-tab support with stdin and improved filtering UX (3678c7d)
- clear help overlay background to prevent text bleed-through (c022e4c)
- make mouse scroll follow selection like vim (3aad03b)
- prevent adjust_scroll interference with mouse scrolling (409d710)
- remap gray text colors for visibility on selection background (6c588a0)
- trigger live filter when navigating history (5453e4e)
- add automated release PR workflow (603ceed)
- add tempfile dev dependency for tests (a519f79)
- address high-priority code review issues (bf6122b)
- preserve selection when clearing filter (aeb5445)
- resolve all clippy warnings (178dcee)
0.1.0 - 2026-01-19
- Initial release of LazyTail - universal terminal-based log viewer
- Lazy file reading for efficient handling of large log files
- TUI interface with keyboard navigation
- Live filtering with instant results
- Background filtering (non-blocking regex and string matching)
- File watching with auto-reload
- Follow mode (auto-scroll to latest logs)
- ANSI color support for colored application logs
- Incremental filtering for improved performance
- Viewport-based rendering for low memory usage
- Works with any text-based log files (application, system, container, etc.)
- Navigation: Arrow keys, Page Up/Down, g/G for first/last line
- Filtering: Live filter mode with instant results
- Follow mode: Auto-scroll to new logs (like
tail -f) - Universal: Works with logs from any source (Docker, Kubernetes, web servers, applications)
- Colored logs: Full ANSI escape code support