Skip to content

v1.2.0

Compare
Choose a tag to compare
@ashvardanian ashvardanian released this 24 Aug 07:48
· 0 commits to 55e4b05710a0f48846dd2ac92533975baf0b289e since this release

1.2.0 (2023-08-24)

Add

  • Clustering class for recursive exploration (4570ee3)
  • distance_between and cluster APIs (492b181)
  • growing_hash_set_gt for faster construction (6415283)
  • pairwise_distance and clustering fixes (f6f12fe)
  • unfair_shared_mutex_t for C++ 11 compat. (40e803c)
  • Clustering functionality (ddf1afa)
  • Clustering limited to number of clusters (5e50f6b)
  • Error handling for remove and rename (619d9f1)
  • impl. of rename and remove funcs (ae82b65)
  • Rename, remove, count and check in batches (1227ff0)
  • Support multiple vectors per key (7e5f6a7)

Docs

  • Add Arxiv dataset for benchmarks (d17a8e0)
  • Add links to packages (e463a94)
  • Change sections order (623e279)
  • Fix JavaScript documentation (b935fe3)
  • Mention integratiosn (1b3ae10)
  • section on "Clustering" (c99d528)

Fix

  • bitset_t type alias for Pyhton (eb3f91d)
  • match_t constructors and type names (7ec4699)
  • nd.array(index.keys) type (9fe5735)
  • shared_lock_gt for C++11 (f988fc3)
  • stream_length to include levels length (7fbf72f)
  • Argument name in self_recall (21f144e)
  • Cast keys on Index.get (c960180)
  • Close file descriptor before removing (361f0fa)
  • Clustering tests (b7a59ad)
  • Concurrent interruptions & error handling (bc26b4e)
  • Concurrent interruptions & error handling (9163d79)
  • Counting nodes per level (531d2bc)
  • Default initialization (7741f56)
  • FAISS banchmarks compatibility (da771e6)
  • Loading empty index (e686a3d), closes #195
  • MetricKind name collision (7723ce5)
  • Missing #endif (1e86a31)
  • Multi-vector keys (da9f3a9)
  • Normalizing path type in Python (a0c705b)
  • Persisting the flag for multi-indexes (9fd2767)
  • Pretty-printing metadata (a823d06)
  • Printing top layer of graph (a01fc6d)
  • Revert DLL exports for MSVC/MinGW interop (a142c9d)
  • Spinning through empty set (052b837)
  • Support platforms without 16-byte atomic store (f3d56fa)
  • Type-casting in Python retrieval (e6ed1a7)

Improve

  • clustering API (d678810)
  • Index finalizer method (5ace138)
  • Lower asymptotics for clustering (593f688)
  • Multi-threading and error handling (4b17ded)
  • Parallel cluster refinement (a415971)
  • Pass specific keys to self_recall (4ce7f5b)
  • Reporting connectivity in repr (58b043c)

Make

  • Avoid OpenMP flags when not needed (962990e)
  • Drop Pandas dependency (e89aa8e)
  • Freeze Sphinx version (c428f54)
  • GoLang tests (4463f0d)
  • Override Clang flags (be4c87d)
  • Remove robin-map dependency (89a0b75)
  • Test python macOS builds without docker setup (1190f83)
  • Update version in README.md (27b214f)

Refactor

  • multi support in C 99 bindings (9ede10f)
  • Args to top-level interface (d9bc92b)
  • Avoid typename collision on Windows (f18bd56)
  • Bindings settgins and docs (886e29f)
  • Black formatting (4d2fccd)
  • Consistent multi in bindings (9b724da)
  • Enable temporary disabled jobs (f72e418)
  • Placeholder for #206 (d1fd90a), closes #206
  • Prepare to move GoLang builds (a1b9b38)
  • Split Index tests for key collisions (f2f6b46)
  • Updating eval scripts (3355e64)
  • use result error as error message (552e1b7)

Hashes

  • Source code (zip) : 3a4c6dbb59c270246c53afd0843a8de00ecad7b84da422094cfc56ac32388ff1
  • Source code (tar.gz) : 92044929c09c282eb899f985b00461ccb0bb295845501ad4c661e496a4d693b9