Releases: alibaba/zvec
v0.2.1
🚀 Zvec v0.2.1 Release Notes
A feature-rich update focused on build and CI improvements, platform expansion, performance optimization, and developer ecosystem enhancements.
📦 Core Features & Improvements
- Added support for Jina Embeddings v5 integration (#156)
- Added custom HTTP embedding example for LM Studio / Ollama (#149)
- Added Python API function overloads for improved usability (#197)
- Added support for Python 3.13 and 3.14 (#164)
- Added support for Android cross-platform builds (#90)
- Enabled Ice Lake optimization and L2 batch distance for int8 quantization (#213)
- Increased index size limit for sparse vectors (#229)
⚡ Performance & Build Optimization
- Optimized IVF implementation for better stability and performance (#169)
- Reorganized architecture-specific
-marchhandling for cleaner build behavior (#193) - Disabled RocksDB
-march=nativeto improve build portability (#183) - Improved default source build behavior around
-march=native(#184) - Automatically disabled math
marchoptimization when CPU features cannot be detected (#220) - Replaced
std::mapwithstd::unordered_mapforkey_id_mapping(#153) - Accelerated third-party dependency downloads via OSS mirror support (#194)
- Added configurable Clang stdlib support and improved default build behavior (#210)
- Fixed subproject build issues by replacing
CMAKE_SOURCE_DIRwithPROJECT_ROOT_DIR(#195)
🐞 Bug Fixes
- Updated ANTLR4
CMAKE_POLICYfromOLDtoNEWfor compatibility with CMake 3.31+ (#145) - Improved MSVC compatibility and stack safety by replacing VLAs with
std::vector(#190) - Fixed
uint8conversion overflow issue (#215) - Fixed compilation issues in several build environments (#218)
- Fixed crash residue cleanup logic (#208)
- Added a new validator for cosine metric handling (#209)
- Fixed MIPS Euclidean distance implementation (#226)
- Replaced
std::vectorwithstd::arrayin distance implementation where appropriate (#201) - Switched to static array usage in related low-level logic (#222)
- Fixed query filtering behavior to use per-block filter instead of per-segment filter (#223)
- Fixed unit tests for sparse builder dump timing (#237)
- Fixed random float behavior in unit tests (#182)
- Fixed compilation warning in crash recovery unit tests (#217)
🔧 Developer Experience
- Added installation instructions for the Node.js package (#103)
- Added package repository links for easier dependency access (#104)
- Improved README and CONTRIBUTING documentation, including repository URL, align attribute typo, Python version notes, and join-us section updates (#139, #150, #168, #231)
- Added project badges and trend badge updates (#132, #228)
- Added recall-related test improvements (#196)
- Fixed minor typos in documentation and code comments (#225)
🤖 CI/CD & Tooling
- Added macOS CI with GitHub runner support (#94)
- Added CI workflow using GitHub-hosted runners (#171)
- Added buildwheel support in GitHub runner workflows (#221)
- Added continuous benchmarking support (#110)
- Added Dependabot for automated dependency updates (#181)
- Upgraded GitHub Actions for Node 24 compatibility and to latest versions (#129, #130)
- Updated workflow Python version to 3.10 (#186)
- Fixed main CI workflow to correctly trigger beyond Linux x64 only (#187)
- Bumped GitHub Actions dependencies:
- Improved conventional pre-commit integration and upgraded to latest version (#111)
👋 New Contributors
Thanks to all first-time contributors in this release:
- @Junio243 (#139)
- @cluster2600 (#150)
- @salmanmkc (#129)
- @hanxiao (#156)
- @aashish-thapa (#145)
- @longway-code (#153)
- @liututu12 (#196)
- @dependabot (#202)
- @luoxiaojian (#213)
- @Abdur-rahmaanJ (#225)
Full Changelog: v0.2.0...v0.2.1
Upgrade Recommendation: ✅ Recommended for all users — especially for those who need broader platform support, improved build compatibility, and CI/tooling enhancements.
v0.2.0
🚀 Zvec v0.2.0 Release Notes
A major update focused on optimization, platform expansion, and developer experience improvements.
📦 Core Features & Improvements
- Support AI extension framework for on-device embedding workflows (#88)
- Auto-scalable segment metadata in MMap storage files (#67)
- Unified search invocation interface in core (#15)
- Linux ARM64 build support (#71)
- Silent failure on repeated initialization attempts (#79)
🐞 Bug Fixes
- Fixed
delete_by_filterlogic using key instead of index (#84, #87) - Corrected quantized int unit tests (#47)
- Removed unnecessary
column_nameparam fromAddColumnAPI (#59) - Fixed typos in HNSW index implementation (#50)
- Removed redundant error expectations in tests (#82)
- Cleaned up unused
ailegomodule (#85)
🔧 Developer Experience
- Replaced
typing_extensionswith standardtyping(Python ≥3.10) (#99) - Improved C++ error logging via
LOG_ERRORinstead ofcerr(#80) - Updated docstrings and
.pyistubs for Python bindings (#41) - Removed obsolete
IndexMeta::MetricTypedefinition (#53) - Added C++ examples to macOS/Linux CI matrix (#86)
🤖 CI/CD & Tooling
- Support CI runs for forked PRs (#52)
- Skip CI on Markdown-only changes (#55)
- Added issue templates for better community support (#46)
- Updated CMake minimum version requirement (#44, #57)
- Bench tool documentation refresh (#77)
📚 Documentation
👋 New Contributors
Full Changelog: v0.1.1...v0.2.0
Upgrade Recommendation: ✅ Recommended for all users — includes critical performance and stability improvements.
v0.1.1
Breaking Changes
Rebuild Required: After updating to this version, all indexes must be rebuilt.
- refactor: clarify HNSW 'm' as max neighbors of upper layer by @JalinWang in #12
- refactor: set HNSW 'scaling_factor' default to 'm' instead of 50 by @iaojnh in #17
- refactor: flat param string cleanup by @JalinWang in #28
- fix: flat support more segments by @JalinWang in #32
What's Changed
- Chore/add codecov badge by @Cuiyus in #9
- fix(sqlengine): reduce memory reserve size when topk is too big by @egolearner in #10
- fix: fix cpu detect by @richyreachy in #14
- chore(ci): fix ci serurity and add build wheels for test pypi by @Cuiyus in #16
- minor: update Readme with discord link and benchmarks by @zhourrr in #19
- chore(ci): modify setuptools cm for test pypi and support cancel in progress by @Cuiyus in #21
- fix: fix default m by @egolearner in #20
- chore: support build arrow with debug by @egolearner in #11
- upd mmap segment_meta_capacity by @iaojnh in #24
- fix: fix and refact segment fetch perf by @chinaux in #26
- feat: refact cpp sdk by @feihongxu0824 in #27
- minor: fix some debug strings by @zhourrr in #31
- fix: remove empty files by @richyreachy in #33
- fix(docs): update discord invite link in readme by @Cuiyus in #35
- refactor: flat param string cleanup by @JalinWang in #28
- fix: flat support more segments by @JalinWang in #32
- fix: local_builder DisableIdMap=true auto set streamer params by @JalinWang in #34
- hot fix: local builder should use new flat param string by @JalinWang in #37
- feat: support core cpp sdk by @feihongxu0824 in #30
- Update README.md by @zhourrr in #36
- fix: fix MemoryReadStorage read by MemoryBlock by @egolearner in #38
- hotfix: ci will build tools & fix local_builder by @JalinWang in #39
New Contributors
- @egolearner made their first contribution in #10
- @richyreachy made their first contribution in #14
- @JalinWang made their first contribution in #12
- @iaojnh made their first contribution in #17
- @chinaux made their first contribution in #26
Full Changelog: v0.1.0...v0.1.1
v0.1.0
What's Changed
- minor: update readme by @zhourrr in #2
- chore:add git commit msg and branch name in pre-commit and modify org by @Cuiyus in #1
- feat(core): support cpu flag detect & dispatch by @feihongxu0824 in #3
- chore(cmake): auto detect cpu arch flag in cmake and rm redundant option by @feihongxu0824 in #5
- chore: release to pypi by @Cuiyus in #6
- chore: add pypi badge by @Cuiyus in #7
New Contributors
- @zhourrr made their first contribution in #2
- @Cuiyus made their first contribution in #1
- @feihongxu0824 made their first contribution in #3
Full Changelog: https://github.com/alibaba/zvec/commits/v0.1.0