Skip to content

Release v3.1.8

Choose a tag to compare

@github-actions github-actions released this 24 Oct 18:55
· 9 commits to main since this release

Concord 3.1.8 fixes #106: Turso key-only prefix and range pages read a covering metadata index without fetching or decoding stored values after database readiness. Pages preserve record metadata, lexical ordering, visibility, and truthful continuation.

Existing databases automatically backfill the projection in a one-time transaction that reads current records. Original record/history blobs and revision counters remain unchanged. Plan an upgrade window for large stores; before serving requests, Concord.Turso.list(prefix: "", limit: 1, keys_only: true, timeout: :infinity) can finish migration without a finite deadline. The extra projection and index add storage and write work proportional to metadata size.

All Turso list calls now return {:error, :timeout} promptly when the connection pool is busy, including with the default timeout or :infinity. Finite timeouts share a budget across readiness and querying; synchronous native work cannot be forcibly interrupted.

All three packages are published at 3.1.8:

Concord requires the exact companion versions. Native Turso remains 0.8.2.

Validation includes 751 tests plus 2 properties, 25 three-node E2E checks, strict compilation, format, Credo, Dialyzer, native Rust checks, standalone packaging, and the release workflow. Public archives and checksums are verified against the release commit. A fresh registry-only consumer verifies key-only reads and a real 3.1.7 database upgrade, including reopening and writing with 3.1.7 afterward.

{:concord, "3.1.8"}