Repository navigation
Releases: axllent/ftail
Releases · axllent/ftail
Release list
1.0.1
1.0.0
Changed
- Incremental filtering: typing more characters into a plain-text filter now narrows the previous result set instead of re-scanning every entry, keeping large buffers responsive while typing
- Filter tokens are lowercased once during parsing, eliminating repeated per-line
strings.ToLowerallocations in the match and highlight hot paths - Trimming old entries when the buffer cap is reached now releases the dropped lines' bytes to the garbage collector immediately rather than retaining them until the backing array is reallocated
- Filter result slice is pre-sized for the common empty-query case, avoiding repeated regrowth on startup and when clearing the filter
- History modal no longer re-runs the filter on navigation, delete, or close — only when an entry is actually applied
- Per-entry footprint reduced by removing an unused
matchedflag
Fixed
- A trailing line written without a newline is no longer emitted prematurely and then re-emitted as a separate line once the writer completes it
- Lines longer than 64 KB were silently truncated by the underlying scanner; the limit is now 1 MB for piped stdin and effectively unbounded for tailed files
0.0.8
Changed
- Filtering is now performed asynchronously in a goroutine, keeping the UI responsive while typing against large datasets; the search bar updates instantly on every keypress
Fixed
- Initial line load with multiple files could exceed the
--limitvalue; per-file quota is now distributed evenly across files and the combined result is trimmed to the limit before display - Upgraded to Bubble Tea v2 and Lip Gloss v2
0.0.7
0.0.6
Added
Ctrl+Ropens a history picker modal (↑/↓ to select, Enter to apply and save to history, Esc/q to cancel)Ctrl+/replacesCtrl+Rfor toggling regex mode; prompt prefix changed fromr/toregex/- History entries now store regex state; picker displays
r/indicator for regex entries and restores mode on selection - History file format updated to prefix each line with
p(plain) orr(regex); existing unprefixed files load as plain
Changed
- Filter counter now shows
filtered/totalwhen a filter is active, andtotal/limit(ortotal/∞) when idle
Fixed
- Duplicate
hasNewDataflag assignment removed
0.0.5
- Persistent query history saved to
~/.ftailhstbetween sessions -l/--limitflag replacing-n/--linesand-m/--max; sets the maximum number of lines to process (0 = unlimited); counter shows∞when unlimited-n/--nameflag (renamed from--filename) to prefix each line with the source filenameCtrl+Nshortcut to toggle filename prefix at runtimeCtrl+Tshortcut to toggle timestamp prefix at runtime
0.0.4
0.0.3
0.0.2
Added
- Help modal (
Ctrl+H) displaying all keyboard shortcuts with scrollable interface - Horizontal scrolling support (
Shift+Left/Shift+Right) for viewing long lines - Word deletion with
Ctrl+W(traditional Unix/Emacs word-delete binding) - Word navigation with
Ctrl+Left/Ctrl+Rightfor filter and save prompts - Visual indicator (↓ New) in separator line when new data arrives while scrolled up
- Increased default buffer limits (10,000 entries)
Fixed
- Scrolling offset now correctly maintained when buffer fills and old entries are trimmed
- View position stays pinned to same content when new entries arrive while scrolled up