Skip to content

Commit 606e000

Browse files
vlaskyclaude
andcommitted
Bump version to v0.2.4-alpha
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent b2698b6 commit 606e000

File tree

5 files changed

+33
-12
lines changed

5 files changed

+33
-12
lines changed

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,17 @@
22

33
All notable changes to this community fork will be documented in this file.
44

5+
## [0.2.4-alpha] - 2026-01-03
6+
7+
### Added
8+
9+
- **Lua binding with IEEE 754 compliant float serialization** ([#237](https://github.com/asg017/sqlite-vec/pull/237))
10+
- `bindings/lua/sqlite_vec.lua` provides `load()`, `serialize_f32()`, and `serialize_json()` functions
11+
- Lua 5.1+ compatible with lsqlite3
12+
- IEEE 754 single-precision float encoding with round-half-to-even (banker's rounding)
13+
- Proper handling of special values: NaN, Inf, -Inf, -0.0, subnormals
14+
- Example script and runner in `/examples/simple-lua/`
15+
516
## [0.2.3-alpha] - 2025-12-29
617

718
### Added

CLAUDE.md

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
77
> [!NOTE]
88
> This is a community fork of [`asg017/sqlite-vec`](https://github.com/asg017/sqlite-vec) created to merge pending upstream PRs and provide continued support while the original author is unavailable.
99
10-
`sqlite-vec` is a lightweight, fast vector search SQLite extension written in pure C with no dependencies. It's a pre-v1 project (current: v0.2.2-alpha) that provides vector similarity search capabilities for SQLite databases across all platforms where SQLite runs.
10+
`sqlite-vec` is a lightweight, fast vector search SQLite extension written in pure C with no dependencies. It's a pre-v1 project (current: v0.2.4-alpha) that provides vector similarity search capabilities for SQLite databases across all platforms where SQLite runs.
1111

1212
Key features:
1313
- Supports float, int8, and binary vector types via `vec0` virtual tables
1414
- Pure C implementation with optional SIMD optimizations (AVX on x86_64, NEON on ARM)
15-
- Multi-language bindings (Python, Node.js, Ruby, Go, Rust)
15+
- Multi-language bindings (Python, Node.js, Ruby, Go, Rust, Lua)
1616
- Runs anywhere: Linux/MacOS/Windows, WASM, embedded devices
1717
- Distance constraints for KNN queries (enables pagination and range queries)
1818
- Optimize command for space reclamation after deletes
@@ -134,6 +134,13 @@ All bindings wrap the core C extension:
134134
- Crate configuration in `Cargo.toml`
135135
- Exports `sqlite3_vec_init()` in `src/lib.rs`
136136

137+
- **Lua** (`bindings/lua/`): Lua 5.1+ compatible binding
138+
- Requires `lsqlite3` module
139+
- `load()` function to load the extension
140+
- `serialize_f32()` for IEEE 754 binary format
141+
- `serialize_json()` for JSON format
142+
- Example in `examples/simple-lua/`
143+
137144
### Documentation Site
138145

139146
Built with VitePress (Vue-based static site generator):
@@ -203,6 +210,8 @@ Code uses preprocessor directives to select implementations. Distance calculatio
203210
- Vector format: JSON arrays `'[1,2,3]'` or raw bytes via helper functions
204211

205212
**Fork-specific notes:**
213+
- Version v0.2.4-alpha includes: Lua binding with IEEE 754 compliant float serialization (#237)
214+
- Version v0.2.3-alpha includes: Android 16KB page support (#254), LDFLAGS support, documentation fixes (#208, #209)
206215
- Version v0.2.2-alpha includes: GLOB operator for text metadata (#191), IS/IS NOT/IS NULL/IS NOT NULL operators (#190), all compilation warnings fixed (including critical logic bug)
207216
- Version v0.2.1-alpha includes: LIKE operator for text metadata (#197), locale-independent JSON parsing (#241), musl libc compilation fix
208217
- Version v0.2.0-alpha merged upstream PRs: #166 (distance constraints), #210 (optimize), #203 (ALTER TABLE RENAME), #212 (cosine distance for binary), #243 (delete memory leak fix), #228 (CI/CD updates)

README.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -71,11 +71,12 @@ Install directly from GitHub to get the latest features from this community fork
7171

7272
| Language | Install Latest (main branch) | Install Specific Version |
7373
|----------|------------------------------|--------------------------|
74-
| **Go** | `go get github.com/vlasky/sqlite-vec/bindings/go/cgo@main` | `go get github.com/vlasky/sqlite-vec/bindings/go/cgo@v0.2.0-alpha` |
75-
| **Python** | `pip install git+https://github.com/vlasky/sqlite-vec.git` | `pip install git+https://github.com/vlasky/sqlite-vec.git@v0.2.0-alpha` |
76-
| **Rust** | `cargo add sqlite-vec --git https://github.com/vlasky/sqlite-vec` | `cargo add sqlite-vec --git https://github.com/vlasky/sqlite-vec --tag v0.2.0-alpha` |
77-
| **Node.js** | `npm install vlasky/sqlite-vec` | `npm install vlasky/sqlite-vec#v0.2.0-alpha` |
78-
| **Ruby** | `gem 'sqlite-vec', git: 'https://github.com/vlasky/sqlite-vec'` | `gem 'sqlite-vec', git: 'https://github.com/vlasky/sqlite-vec', tag: 'v0.2.0-alpha'` |
74+
| **Go** | `go get github.com/vlasky/sqlite-vec/bindings/go/cgo@main` | `go get github.com/vlasky/sqlite-vec/bindings/go/cgo@v0.2.4-alpha` |
75+
| **Lua** | `luarocks install lsqlite3` then copy [`sqlite_vec.lua`](bindings/lua/) to your project. See [Lua example](/examples/simple-lua/) | Download [`sqlite_vec.lua` at v0.2.4-alpha](https://github.com/vlasky/sqlite-vec/blob/v0.2.4-alpha/bindings/lua/sqlite_vec.lua) |
76+
| **Python** | `pip install git+https://github.com/vlasky/sqlite-vec.git` | `pip install git+https://github.com/vlasky/sqlite-vec.git@v0.2.4-alpha` |
77+
| **Rust** | `cargo add sqlite-vec --git https://github.com/vlasky/sqlite-vec` | `cargo add sqlite-vec --git https://github.com/vlasky/sqlite-vec --tag v0.2.4-alpha` |
78+
| **Node.js** | `npm install vlasky/sqlite-vec` | `npm install vlasky/sqlite-vec#v0.2.4-alpha` |
79+
| **Ruby** | `gem 'sqlite-vec', git: 'https://github.com/vlasky/sqlite-vec'` | `gem 'sqlite-vec', git: 'https://github.com/vlasky/sqlite-vec', tag: 'v0.2.4-alpha'` |
7980

8081
**Python Note:** Requires Python built with loadable extension support (`--enable-loadable-sqlite-extensions`). If you encounter an error about extension support not being available:
8182
- Use `uv` to create virtual environments (automatically uses system Python which typically has extension support)

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.2.3-alpha
1+
0.2.4-alpha

sqlite-vec.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,15 @@
1717
#endif
1818
#endif
1919

20-
#define SQLITE_VEC_VERSION "v0.2.3-alpha"
20+
#define SQLITE_VEC_VERSION "v0.2.4-alpha"
2121
// TODO rm
22-
#define SQLITE_VEC_DATE "2025-12-29T11:22:41Z+1100"
23-
#define SQLITE_VEC_SOURCE "d12d763eb2170ccdfd7418b9af3febd46fb33a85"
22+
#define SQLITE_VEC_DATE "2026-01-04T19:18:13Z+1100"
23+
#define SQLITE_VEC_SOURCE "c4ec0fc3a6254789d84cfa288313723fb6f2015d"
2424

2525

2626
#define SQLITE_VEC_VERSION_MAJOR 0
2727
#define SQLITE_VEC_VERSION_MINOR 2
28-
#define SQLITE_VEC_VERSION_PATCH 3
28+
#define SQLITE_VEC_VERSION_PATCH 4
2929

3030
#ifdef __cplusplus
3131
extern "C" {

0 commit comments

Comments
 (0)