Version: 1.5.6
Git ref: refs/tags/1.5.6
Build Date: 2026-04-07T03:01
PIP Package: chroma-1.5.6.tar.gz
Github Container Registry Image: :1.5.6
DockerHub Image: :1.5.6
What's Changed
- [DOC] add concrete example for query/get response by @kylediaz in #6593
- [DOC] Make delete clearer by @kylediaz in #6596
- [DOC] Add multimodal example by @itaismith in #6622
- [ENH]: S3 client config improvements by @sanketkedia in #6618
- [BUG] Tests for garbage collector panic on zero-attached function. by @rescrv in #6616
- [ENH] 1 bit rabitq quantization implementation by @LLay in #6570
- [DOC] We don't collect product telemetry anymore by @kylediaz in #6594
- [DOC] misc doc improvements by @kylediaz in #6595
- [BUG] Fix sysdb OTEL metrics service name by @jasonvigil in #6565
- [ENH]Add ClientFactory for CompactorClient by @davedash in #6626
- ENH: handle AlreadyExists alongside Precondition errors by @rescrv in #6625
- TST: replace sleep-based waits with polling in read repair tests by @rescrv in #6624
- [PERF] Add Spanner index for listing databases by tenant by @rescrv in #6601
- [DOC] update quotas by @kylediaz in #6615
- [RELEASE] All JS EFs 0.1.14 by @itaismith in #6623
- [ENH]: Get database name from get_collections_to_gc mcmr endpoint by @tanujnay112 in #6392
- [ENH]: batch_get_collection_version_file_paths for MCMR by @tanujnay112 in #6417
- [ENH] JS Client - remove warnings when no EF is set by @itaismith in #6632
- [ENH]: Fix log gc db name threading by @tanujnay112 in #6418
- BUG: handle known dispatcher shutdown panic in tests by @rescrv in #6631
- [CHORE] Add tracing to the GetAllCollectionsToCompact path. by @rescrv in #6634
- [DOC] Add headless CLI login instructions by @kylediaz in #6571
- [ENH]: mark_version_to_gc in MCMR by @tanujnay112 in #6419
- [BUG] Commit block max for all dimension by @Sicheng-Pan in #6635
- [ENH]: delete_collection_versions in MCMR by @tanujnay112 in #6420
- [ENH] Default fallback for block max in sparse reader by @Sicheng-Pan in #6637
- [ENH]: finish_collection_deletion for MCMR by @tanujnay112 in #6421
- [ENH]: MCMR batch_get_collection_soft_delete_status by @tanujnay112 in #6422
- [ENH] Consolidate JS client packages into single chromadb package by @HammadB in #6650
- BUG: return not-found when requested log entries have been purged by @rescrv in #6657
- Revert "[ENH] Consolidate JS client packages into single chromadb package" by @HammadB in #6669
- [DOC] Add batch deletes to docs by @kylediaz in #6660
- [ENH] Add fork_count API endpoint to retrieve collection fork count by @HammadB in #6614
- ENH: add CPU and IO core affinity for worker threads by @rescrv in #6613
- ENH: improve scheduler job prioritization and capacity tracking by @rescrv in #6562
- BUG: handle AlreadyInitialized race in writer open by @rescrv in #6658
- [CHORE] move dirty log metrics to compaction info path by @rescrv in #6666
- BUG: skip mark_version_for_deletion for collections with zero deletions by @rescrv in #6679
- [CLN]: Remove ListDeadJobs endpoint by @tanujnay112 in #6633
- [ENH] Add HPA for rust-log-service by @jasonvigil in #6560
- [ENH] Add generic BloomFilter abstraction for existence checks by @sanketkedia in #6646
- [ENH] Wire BloomFilter into RecordSegmentWriter by @sanketkedia in #6647
- BUG: clear cursor cache on backpressure by @rescrv in #6678
- [ENH] Update bloom filter during apply_materialized_log_chunk by @sanketkedia in #6648
- [ENH] Logs for ListInProgress by @davedash in #6680
- [ENH]: BloomfilterManager abstraction by @sanketkedia in #6652
- [ENH] JS - get collection by ID by @itaismith in #6688
- [BLD] Better triggers for CI by @davedash in #6603
- [ENH] update readme by @jeffchuber in #6690
- [DOC] Update docs branding to "open-source data infrastructure for AI" by @philipithomas in #6693
- [RELEASE] JS 3.4.0 by @itaismith in #6691
- [CHORE] Add region and database_id to operational billing events by @philipithomas in #6672
- [BUG] Fix qwen EF return type by @kylediaz in #6692
- [ENH]: Pass Bloomfilter manager all the way to the writer by @sanketkedia in #6653
- [ENH]: Policy to use bloom filter on read path + materialize logs use bloom filter by @sanketkedia in #6671
- [ENH]: Use bloom filter during materialize in operators by @sanketkedia in #6677
- [CHORE] compute ready_uncompacted only for compaction-eligible collections by @rescrv in #6667
- BUG: return correct log contention error variants by @rescrv in #6701
- ENH: add timeout and threshold filtering for dirty logs by @rescrv in #6689
- BUG: increase queue sizes and add S3 timeouts by @rescrv in #6702
- [BUG]: Rebuilds should still refer to pre-existing record offset ids by @tanujnay112 in #6699
- [TST] Mark function tests as cluster only by @kylediaz in #6597
- [DOC] Document metadata array support in S3 sync by @philipithomas in #6712
- ENH: add UUID fragment cleanup to garbage collection by @rescrv in #6630
- [BUG] assertion in hnswlib integrity check. by @rescrv in #6706
- BUG: retry intrinsic cursor update on precondition error by @rescrv in #6703
- BUG: include inner errors in FlushCompactionError display by @rescrv in #6720
- ENH: add error logging for Status::unknown responses by @rescrv in #6718
- [ENH]: Bloom filter improvements and bug fixes by @sanketkedia in #6721
- [ENH] Add CHROMA_EMBED_URL env var override for embed endpoint by @philipithomas in #6727
- [ENH] Add memberlist metric by @Sicheng-Pan in #6724
- [BUG]: Create a new SourceRecordSegment operator for segment rebuild by @tanujnay112 in #6714
- [ENH] Improve timeout debug info for version tracking by @rescrv in #6725
- BUG: return AlreadyInitialized on duplicate init by @rescrv in #6733
- [RELEASE] JS EFs 03-25-26 by @itaismith in #6735
- BUG: set suggested compaction threshold by @rescrv in #6737
- [RELEASE] JS EF common 0.1.11 by @itaismith in #6738
- [BLD] Disable test-bench on each PR by @davedash in #6734
- ENH: Skip get_collections req logging by @rescrv in #6745
- [TST] Add Usearch files to GC proptest by @Sicheng-Pan in #6746
- [ENH]: Bloom filter improvements and bug fixes by @sanketkedia in #6742
- [CHORE] update hnswlib in lockfile. by @rescrv in #6754
- [BUG] Quantize as a string field in schema by @Sicheng-Pan in #6753
- BUG: Capture chroma2 logs by @rescrv in #6749
- [ENH] Re-export read level for rust client by @Sicheng-Pan in #6768
- [RELEASE] Rust client 0.13.3 by @HammadB in #6769
- [BUG] refactor dispatcher task rejection tests for determinism by @rescrv in #6759
- [CLN] Remove compaction_client binary by @davedash in #6744
- [CHORE] Set default read timeout ms to 15s by @rescrv in #6779
- [ENH] add pytest exit-on-first-failure flag to GitHub workflows by @rescrv in #6761
- [CHORE] Upgrade reqwest and spanner crates by @rescrv in #6705
- [BLD] Build images before matrix runs by @davedash in #6736
- BUG: classify transient errors for retry by @rescrv in #6731
- BUG: retry after orphan recovery by @rescrv in #6786
- TST: enforce 10 records between waits by @rescrv in #6790
- CHORE: pin usearch to 2.23 by @rescrv in #6789
- [ENH] Publish helm chart to GHCR and Artifact Hub by @jasonvigil in #6791
- [BUG] GoogleGeminiEmbeddingFunction cannot be used with Vertex AI enabled by @matrn in #6676
- BUG: install rustls crypto provider by @rescrv in #6804
- [CHORE]: Rename readers and writers to be per shard variants by @sanketkedia in #6801
- [ENH]: Introduce SegmentShard type + pass it in from_segment() calls by @sanketkedia in #6807
- [BUG] Allow sigint to shut down chroma run by @itaismith in #6808
- [RELEASE] CLI 1.4.2 Python 1.5.6 JS 3.4.1 by @itaismith in #6812
New Contributors
Full Changelog: 1.5.5...1.5.6