Release v2.1.7

Indexly v2.1.7 adds guarded local performance diagnostics and search-database maintenance, terminal search pagination, incremental filetype correctness, and managed optional-dependency overlays for Homebrew.

Release v2.1.7 (2026-09-26)

Indexly v2.1.7 strengthens local search and indexing operations while keeping maintenance actions explicit and reviewable. It also improves Homebrew support for optional features and follows up on Rename Watch recovery behavior.

Performance diagnostics and guarded maintenance

  • Collect local, privacy-conscious evidence about search-database health and performance.
  • Review conservative readiness status through indexly doctor before taking action.
  • Run only eligible maintenance actions, each with preconditions, a verified backup, and post-action checks.
  • planner-optimize is available only when the active Python SQLite library is version 3.46 or newer; other diagnostics remain available on supported lower SQLite versions.
  • Diagnostics and plan-only operations are cross-platform. Applied planner-optimize and fts-merge actions require a POSIX runtime with durable directory synchronization; on Windows Indexly fails closed before changing SQLite.

Search and indexing

  • Navigate terminal search results page by page with deterministic page ranges and next/previous controls.
  • Preserve --filetype filtering when performing incremental index updates.

Installation and operations

  • Manage optional feature groups in a Homebrew install with indexly extras list, indexly extras install <group>, and indexly extras status.
  • Homebrew overlays are scoped to the active Indexly version, Python ABI, and platform architecture; stale overlays are reported but never loaded.
  • The bundled Formula remains at v2.1.6 until the v2.1.7 package is published; Formula publication and a Homebrew install check are post-publish release steps.
  • Rename Watch more safely resolves interrupted moves and tolerates a transient monotonic-clock stall in once mode.

Compatibility

  • Python 3.11 or newer remains required.
  • Python 3.14 installs select a compatible PyArrow version for the analysis extra.
  • Rich 15 is supported for terminal output and current release tooling.
  • There are no breaking changes in this release.

Validation

  • Focused performance, search, incremental-indexing, Rename Watch, Doctor, and optional-extras tests pass on macOS.
  • The Rename Watch suite now isolates audit-log probes in pytest temporary directories, so validation does not rely on writable user-profile paths.
  • Linux compatibility is preserved through portable filesystem APIs and XDG runtime-path handling; the performance action path is validated on POSIX and continues to reject unsupported SQLite capabilities explicitly.