v0.11.9
What's Changed
Added
- llmosafe v0.7.2 — Upgraded from 0.7.1. Spin-loop DoS fix, Python bindings mirror, u128 FFI fixes, generation counter for handle reuse.
- Python feature mirror —
ix-pynow ships withfullfeature set (notify + decompress + archive) in PyPI wheels. - 5 new regression tests — delta-only keyword search, regex delta-only search, PostingCache oversized entry rejection, PostingCache evict_fraction FIFO semantics, daemon_sock
from_notify_kind()rename mapping.
Fixed
- Stale detection timestamp —
check_stale()now displayseffective_created_at(max of header + delta mtime) instead of stale headercreated_at. - Delta search - tombstoned files — Tombstoned delta files no longer appear in candidate set.
- Delta search - literal intersection — Literal search delta candidates no longer eliminated by base-index intersection.
- Delta search - regex merge — Regex indexed search now merges delta postings during fragment intersection.
- Planner non-UTF-8 regex — Non-UTF-8 regex literals now use raw bytes for trigram extraction instead of
from_utf8_lossy(). - Builder stream position — Error propagation for stream position (no more silent
unwrap_or(0)). - Builder offset chunking — Trigram entries with >10,000 offsets now chunked into multiple PostingEntry records.
- PostingCache oversized entries — Entries exceeding memory ceiling now rejected instead of violating budget.
- Daemon
from_notify_kind()— Rename events now correctly map toFileOp::Rename. - Daemon beacon write errors — 10
beacon.write_to()calls now emiteprintln!warnings on failure. - Daemon idle double-count —
idle.record_change()no longer called twice in compaction path. - Watcher race condition — Events accumulated during
build()are now drained to prevent duplicate delta entries. - Watcher
.ixpath filter — Now usesstarts_with(ix_dir)instead of component matching to prevent false exclusion of paths likesrc/.ix_utils/. - CLI flag gaps —
--archivewarns without--no-index;--max-file-sizewarns in scanner mode;--daemonerrors on non-Unix with notify feature.
Full Changelog: https://github.com/moeshawky/ix/blob/main/CHANGELOG.md