Breaking Changes
- String storage revamp (#387) — Optimized how strings are stored in RAM (packed byte layout, reduced
allocations) - SDK API renames (HEAD) — Renamed several options & added more flags to control behavior
New Features
- Directory search (#390) — Search directories and mixed files/directories
- Vim-mode input (#384) — Optional vim-mode in the prompt input
- Grep prefiltering (#361, #362) — Fuzzy prefilter for grep, regex, and multigrep queries
- trim_whitespace for grep (#356) — New option to trim whitespace in grep results
- Path prefix scoring (#372) — Correct bonuses for actual path prefix matches
- Quickfix list (#377) — Creates new qflist instead of replacing existing ones
Performance
- Fix performance regression (#376)
- Packed byte layout (#344) — Reduced RAM per file item
- -256KB RAM for persistent index
- Memory release hints (#348) — Hint allocator to release memory back to OS
- Cross-compile with thin LTO (#355)
Bug Fixes
- inotify (#391) — Watch files in newly created directories
- Close picker on in vim mode (#385)
- Unicode segmentation crash (#373)
- Excessive file watchers (#357)
- Crash on rescan during bigramming (#349)
- Indexing root dirs CPU/memory issue (#332)
- Preview ftplugin side effects (#335)
- Highlight application for termgui themes (#353)
- Single parenthesis error (#354)
- Scattered match filename bonus fix
- set paste suspend/restore in picker UI (#334)
- FFFClearCache command restored (#338)
- MCP float maxResults (#328)
- Various smaller fixes (grep highlight stripping, Blob coercion, notify tostring, added files not
greppable)