Skip to content

v0.4.6 — SQLite v0.35/wasm-v3 migration

Choose a tag to compare

@a-radwan-20 a-radwan-20 released this 17 Jun 15:13
· 30 commits to main since this release

SQLite upgrade — go-sqlite3 v0.35 / wasm v3 (with the FTS5 fix)

A patch release that lands the SQLite dependency upgrade Dependabot proposed but couldn't merge safely, plus the migration work that makes it actually pass.

Dependency bumps

  • github.com/ncruces/go-sqlite3 0.34.2 → 0.35.0
  • github.com/ncruces/go-sqlite3-wasm v2 → v3 (major)
  • golang.org/x/crypto 0.51.0 → 0.53.0
  • golang.org/x/text 0.37.0 → 0.38.0 (+ indirect x/sys, x/term)

The fix that the bare bump was missing

As of go-sqlite3 v0.35 / wasm v3, FTS5 is no longer compiled into the default WASM build — it must be registered per connection via the new go-sqlite3/ext/fts5 extension. The memory layer (full-text search, migration 6) depends on it, so the raw Dependabot bump broke ~11 database-backed tests with no such module: fts5.

This release registers ext/fts5 in the existing driver.Open connection hook (internal/db), right next to the pure-Go vector functions — the one place every connection is initialized. It also drops the now-deprecated go-sqlite3/embed blank imports (a no-op in v0.35 that printed a noise line on every run).

Verification

Full repo go test -race -count=1 ./... passes across all 130 packages — including the ~11 that failed on the bare bump. Cross-compiles clean for linux/arm64 + windows/amd64 under CGO_ENABLED=0 (zero-CGO preserved). govulncheck ./... reports no vulnerabilities.

No behaviour change for users — same FTS5-backed memory, same on-disk format.

Full changelog: https://github.com/LumabyteCo/aibutler/blob/main/CHANGELOG.md