Skip to content

Releases: photostructure/sqlite-vec

v1.0.0

10 Feb 02:17
Immutable release. Only release title and notes can be modified.
v1.0.0
63a9c1e

Choose a tag to compare

v0.4.1

10 Feb 01:45
v0.4.1
3086893

Choose a tag to compare

Full Changelog: v0.4.0...v0.4.1

v0.4.0

07 Feb 08:50
v0.4.0
83664ac

Choose a tag to compare

Full Changelog: v0.3.3...v0.4.0

v0.3.3

05 Feb 04:26
v0.3.3
94a4563

Choose a tag to compare

Full Changelog: v0.3.2...v0.3.3

v0.3.2

04 Jan 23:35
v0.3.2
952874d

Choose a tag to compare

Added

  • Memory testing framework (c8654d0)
    • Valgrind and AddressSanitizer support via make test-memory
    • Catches memory leaks, use-after-free, and buffer overflows

Fixed

  • Memory leaks in KNN queries (e4d3340, df2c2fc, f05a360)

    • Fixed leaks in vec0Filter_knn metadata IN clause processing
    • Fixed leaks and potential crashes in vec_static_blob_entries filter
    • Ensured knn_data is freed on error paths
  • Memory leaks in vtab lifecycle (5f667d8, 49dcce7)

    • Fixed leaks in vec0_init and vec0Destroy error paths
    • Added NULL check before blob read to prevent crashes
    • vec0_free now properly frees partition, auxiliary, and metadata column names
  • Cosine distance with zero vectors (5d1279b)

    • Returns 1.0 (max distance) instead of NaN for zero-magnitude vectors

Commits

Full Changelog: v0.3.1...v0.3.2

v0.3.1

04 Jan 19:48
v0.3.1
0c023c3

Choose a tag to compare

Added

  • Lua binding with IEEE 754 compliant float serialization (1d3c258)

    • New bindings/lua/sqlite_vec.lua module for Lua 5.1+
    • serialize_f32() for IEEE 754 binary format
    • serialize_json() for JSON format
    • Example script in examples/simple-lua/
    • Incorporates upstream PR #237 with extensive bugfixes for float encoding
  • Safer automated release workflow (6d06b7d)

    • prepare-release job creates a release branch before building
    • All builds use the release branch with correct version baked in
    • Main branch only updated after successful npm publish
    • If any step fails, main is untouched

Fixed

  • Numpy header parsing: fixed &&|| logic bug (90e0099)

  • Go bindings patch updated for new SQLite source (ceb488c)

    • Updated bindings/go/ncruces/go-sqlite3.patch for compatibility with latest SQLite
  • npm-release workflow improvements

    • Synchronized VERSION file with package.json during version bump (c345dab, baffb9b )
    • Enhanced npm publish to handle prerelease tags (alpha, beta, etc.) (0b691fb)

Commits

Full Changelog: v0.3.0...v0.3.1

v0.3.0

04 Jan 16:55
v0.3.0
8acd007

Choose a tag to compare

Added

  • OIDC npm release workflow with bundled platform binaries (f7ae5c0)

    • Single npm package contains all platform builds (prebuildify approach)
    • Simpler, more secure, works offline and with disabled scripts
    • Platform binaries: linux-x64, linux-arm64, darwin-x64, darwin-arm64, win32-x64, win32-arm64
  • Alpine/MUSL support (f7ae5c0)

    • Added linux-x64-musl and linux-arm64-musl builds
    • Uses node:20-alpine Docker images for compilation

Fixed

  • MSVC-compatible __builtin_popcountl implementation (fab929b)
    • Added fallback for MSVC which lacks GCC/Clang builtins
    • Enables Windows ARM64 and x64 builds

Changed

  • Node.js package renamed to @mceachen/sqlite-vec (fe9f038)
    • Published to npm under scoped package name
    • Updated documentation to reflect new package name
    • All other language bindings will continue to reference upstream (vlasky/sqlite-vec)

Infrastructure

  • Updated GitHub Actions to pinned versions via pinact (b904a1d)
  • Added bash, curl and unzip to Alpine build dependencies (aa7f3e7, 9c446c8)
  • Documentation fixes (4d446f7, 3a5b6d7)

Commits

Full Changelog: https://github.com/mceachen/sqlite-vec/commits/v0.3.0