Skip to content

Release history

chroma releases

Data infrastructure for AI

All releases

16 shown

1.5.9 New feature
Notable features
  • Scaffold foundation CLI project
  • Add login, logout, and whoami commands to foundation‑cli
Full changelog

Version: 1.5.9
Git ref: refs/tags/1.5.9
Build Date: 2026-05-05T05:55
PIP Package: chroma-1.5.9.tar.gz
Github Container Registry Image: :1.5.9
DockerHub Image: :1.5.9

What's Changed

  • ENH: block functions on topology dbs by @rescrv in https://github.com/chroma-core/chroma/pull/6836
  • ENH: Add Tilt fault injection CLI by @rescrv in https://github.com/chroma-core/chroma/pull/6881
  • [CHORE] Debug TimeoutError in test_add.py by @rescrv in https://github.com/chroma-core/chroma/pull/6905
  • [ENH]: Enable rebuilds for sharded collections by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6916
  • [ENH]: Group by support with sharding by @sanketkedia in https://github.com/chroma-core/chroma/pull/6909
  • [CHORE]: Denormalize tenant and database into collection_compaction_cursors table by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6940
  • [CHORE] Use normalized record sets for test add by @rescrv in https://github.com/chroma-core/chroma/pull/6935
  • [ENH]: Add workflow to build and publish service container images by @jasonvigil in https://github.com/chroma-core/chroma/pull/6944
  • [ENH] - Updates language around Chroma Cloud to be more representative. by @tjkrusinskichroma in https://github.com/chroma-core/chroma/pull/6952
  • [ENH]: Add change stream to collection compaction cursors by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6955
  • [BUG] Switch to storing DOCKERHUB_USERNAME as var by @jasonvigil in https://github.com/chroma-core/chroma/pull/6962
  • [CHORE]: Standardize Tilt CI image build on root docker-bake.hcl by @jasonvigil in https://github.com/chroma-core/chroma/pull/6958
  • [BUG]: Rename database on soft delete by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6943
  • Revert "[CHORE]: Standardize Tilt CI image build on root docker-bake.hcl" by @jasonvigil in https://github.com/chroma-core/chroma/pull/6965
  • ENH: name and size all worker threads by @rescrv in https://github.com/chroma-core/chroma/pull/6936
  • BUG: simplify flaky indexing progress test by @rescrv in https://github.com/chroma-core/chroma/pull/6968
  • [CHORE] stabilize Tilt dev environment configs by @rescrv in https://github.com/chroma-core/chroma/pull/6937
  • BUG: use correct version file per collection in ancestor walk by @rescrv in https://github.com/chroma-core/chroma/pull/6970
  • [ENH] Add SparsePostingBlock by @HammadB in https://github.com/chroma-core/chroma/pull/6823
  • [ENH] Add basic maxscore writer/reader by @HammadB in https://github.com/chroma-core/chroma/pull/6825
  • [ENH] Add maxscore lazy cursor by @HammadB in https://github.com/chroma-core/chroma/pull/6829
  • [ENH] Add SIMD for maxscore by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6865
  • [ENH] Benchmark maxscore by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6866
  • [ENH] Add maxscore option in schema by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6878
  • [ENH] Add maxscore index to metadata segment by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6880
  • [ENH] Wire maxscore reader in search by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6899
  • [PERF] Batch load lazy cursor by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6974
  • ENH: add MCMR support for log GC by @rescrv in https://github.com/chroma-core/chroma/pull/6946
  • ENH: parameterize multi-region config by @rescrv in https://github.com/chroma-core/chroma/pull/6951
  • [CHORE] fix merge conflict in main by @rescrv in https://github.com/chroma-core/chroma/pull/6986
  • [ENH]: Refactor offset_id to be a mutable AtomicU32 in record by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6922
  • ENH: add spanner-cli wrapper binary by @rescrv in https://github.com/chroma-core/chroma/pull/6959
  • BUG: preserve legacy hnsw: metadata keys by @rescrv in https://github.com/chroma-core/chroma/pull/6953
  • [TST] refactor repair collection log offset test by @rescrv in https://github.com/chroma-core/chroma/pull/6954
  • TST: add MCMR hard delete test by @rescrv in https://github.com/chroma-core/chroma/pull/6947
  • ENH: defer Spanner init to first use by @rescrv in https://github.com/chroma-core/chroma/pull/6915
  • [CHORE]: Denormalize is_deleted in mcmr by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6989
  • [BUG] Reject NaN/Infinity in base64-encoded embeddings by @philipithomas in https://github.com/chroma-core/chroma/pull/6664
  • Revert "TST: add MCMR hard delete test" by @rescrv in https://github.com/chroma-core/chroma/pull/6992
  • [ENH] Verify file path for compaction by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6991
  • [DOC]: Document file-upload sync API, AWS credential reuse, and EU region by @philipithomas in https://github.com/chroma-core/chroma/pull/6988
  • [ENH]: Seal redistributes lower offset ids to prev active shard by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6923
  • [TST] add multi_region_test to more tests by @rescrv in https://github.com/chroma-core/chroma/pull/6956
  • TST: add MCMR hard delete integration test by @rescrv in https://github.com/chroma-core/chroma/pull/6997
  • ENH: Add read-only backend failover by @rescrv in https://github.com/chroma-core/chroma/pull/6985
  • ENH: GC empty MCMR collections by @rescrv in https://github.com/chroma-core/chroma/pull/6961
  • [ENH] scaffold foundation CLI project by @davedash in https://github.com/chroma-core/chroma/pull/6999
  • ENH: move foundation/ to top-level so rust/** filters skip it by @davedash in https://github.com/chroma-core/chroma/pull/7008
  • [BLD] Add foundation CLI install script by @davedash in https://github.com/chroma-core/chroma/pull/7005
  • [DOC] Add CLAUDE.md, AGENTS.md, scoped Rust rule by @davedash in https://github.com/chroma-core/chroma/pull/7010
  • ENH: Add login, logout, and whoami commands by @davedash in https://github.com/chroma-core/chroma/pull/7007
  • [CHORE]: Remove foundation/ from chroma by @davedash in https://github.com/chroma-core/chroma/pull/7017
  • [ENH]: add client header to Gemini embedding functions by @markmcd in https://github.com/chroma-core/chroma/pull/6990
  • [RELEASE] CLI 1.4.4 Python 1.5.9 JS 3.4.5 by @itaismith in https://github.com/chroma-core/chroma/pull/7018

Full Changelog: https://github.com/chroma-core/chroma/compare/1.5.8...1.5.9

1.5.8 Maintenance
Notable features
  • Sharding enhancements: materialize_logs awareness, seal operator integration, and per-tenant compactor config
  • Performance optimizations: buffered_unordered with limits in block loads and per-shard prefetching
  • Configurable RPC timeouts for admin and compaction clients
Full changelog

Version: 1.5.8
Git ref: refs/tags/1.5.8
Build Date: 2026-04-16T23:35
PIP Package: chroma-1.5.8.tar.gz
Github Container Registry Image: :1.5.8
DockerHub Image: :1.5.8

What's Changed

  • [ENH]: Make materialize_logs aware of sharding by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6833
  • [ENH]: retry per shard instead of every shard by @sanketkedia in https://github.com/chroma-core/chroma/pull/6841
  • [ENH]: Integrate seal operator for sharded collections by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6842
  • [ENH]: Merge, sort and truncate in FE by @sanketkedia in https://github.com/chroma-core/chroma/pull/6846
  • [CHORE]: Prefetch per shard by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6850
  • [CHORE]: Create per-tenant config in the compactor for shard sizes by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6847
  • ENH: support partial manifest scans by @rescrv in https://github.com/chroma-core/chroma/pull/6799
  • [ENH]: Replace join_all with buffered_unordered with a limit in block loads by @sanketkedia in https://github.com/chroma-core/chroma/pull/6854
  • [ENH] Add pod anti-affinity support to StatefulSet helm templates by @jasonvigil in https://github.com/chroma-core/chroma/pull/6859
  • [CHORE] Disable stall protection for reads. by @rescrv in https://github.com/chroma-core/chroma/pull/6858
  • [CHORE]: Remove fanout in writer by @sanketkedia in https://github.com/chroma-core/chroma/pull/6861
  • [BUG] Make the most recent log spanner-migration idempotent. by @rescrv in https://github.com/chroma-core/chroma/pull/6863
  • ENH: make admin RPC timeout configurable by @rescrv in https://github.com/chroma-core/chroma/pull/6864
  • [ENH] Add CLI I/O terminal for testing by @itaismith in https://github.com/chroma-core/chroma/pull/6860
  • [DOC] Fix missing word in manage-collections documentation by @gshahbazian in https://github.com/chroma-core/chroma/pull/6873
  • [ENH]: Composite rules for tiering by @sanketkedia in https://github.com/chroma-core/chroma/pull/6876
  • [ENH] Add I/O abstraction to CLI commands by @itaismith in https://github.com/chroma-core/chroma/pull/6877
  • [ENH]: Add member_id to node_name lookup in ClientAssigner by @davedash in https://github.com/chroma-core/chroma/pull/6875
  • [BUG]: get_prefix use buffer ordered by @sanketkedia in https://github.com/chroma-core/chroma/pull/6893
  • [CHORE]: Revert "[CLN] Remove compaction_client binary (#6744)" by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6901
  • [ENH] Add config store abstraction to CLI by @itaismith in https://github.com/chroma-core/chroma/pull/6879
  • [DOC] Add Superlinked embedding function integration by @fm1320 in https://github.com/chroma-core/chroma/pull/6897
  • [ENH] add MCMR property tests and fix dirty log detection by @rescrv in https://github.com/chroma-core/chroma/pull/6835
  • [ENH] Update stars/followers count by @gshahbazian in https://github.com/chroma-core/chroma/pull/6908
  • [ENH]: Make compaction client grpc timeout configurable by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6902
  • ENH: add fault injection control plane by @rescrv in https://github.com/chroma-core/chroma/pull/6795
  • [ENH]: Change retry rate limits in s3 client by @sanketkedia in https://github.com/chroma-core/chroma/pull/6917
  • ENH: add optional upload fault injector by @rescrv in https://github.com/chroma-core/chroma/pull/6849
  • [ENH] Use the official Rust client in the CLI by @itaismith in https://github.com/chroma-core/chroma/pull/6906
  • [ENH] Add IndexAndBoundedWal read level by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6914
  • [ENH] Add IndexAndAdaptiveWal to clients by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6918
  • [RELEASE] Python 1.5.8 JS 3.4.4 Rust 0.14.0 by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6921

New Contributors

  • @fm1320 made their first contribution in https://github.com/chroma-core/chroma/pull/6897

Full Changelog: https://github.com/chroma-core/chroma/compare/1.5.7...1.5.8

1.5.7 Mixed
Notable features
  • getCollectionById API added across all client SDKs and server
  • put_stream for streaming S3 uploads in chroma-storage
  • Stdout-only tracing support enabled
Full changelog

Version: 1.5.7
Git ref: refs/tags/1.5.7
Build Date: 2026-04-08T07:49
PIP Package: chroma-1.5.7.tar.gz
Github Container Registry Image: :1.5.7
DockerHub Image: :1.5.7

What's Changed

  • [CHORE] Update Rust setup for CLI workflows by @itaismith in https://github.com/chroma-core/chroma/pull/6818
  • [ENH] Add getCollectionById API across all client SDKs and server by @HammadB in https://github.com/chroma-core/chroma/pull/6805
  • [ENH]: Pass down shard_index, num_shards and log_upper_bound_offset to query by @sanketkedia in https://github.com/chroma-core/chroma/pull/6810
  • [ENH]: Change routing + add a helper by @sanketkedia in https://github.com/chroma-core/chroma/pull/6811
  • [ENH]: FE sets log upper bound from scount logs + gate by flag by @sanketkedia in https://github.com/chroma-core/chroma/pull/6813
  • [ENH]: Use log_upper_bound_offset in query by @sanketkedia in https://github.com/chroma-core/chroma/pull/6815
  • [ENH]: Plumb num_shards and shard_index to orchestrator by @sanketkedia in https://github.com/chroma-core/chroma/pull/6822
  • [CLN]: Remove indirect hnsw path by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6820
  • [ENH]: Helpers for log partitioning for non active and active shards by @sanketkedia in https://github.com/chroma-core/chroma/pull/6824
  • [ENH] Add put_stream to chroma-storage for streaming S3 uploads by @philipithomas in https://github.com/chroma-core/chroma/pull/6806
  • [ENH]: Partition logs + plumb shard index everywhere by @sanketkedia in https://github.com/chroma-core/chroma/pull/6831
  • [ENH]: Added SegmentWriter and Flusher abstractions over shards by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6814
  • [ENH]: Merge shard results in FE by @sanketkedia in https://github.com/chroma-core/chroma/pull/6834
  • [ENH] Enable stdout only tracing by @itaismith in https://github.com/chroma-core/chroma/pull/6839
  • [BUG] Return client sigint handler for CLI by @itaismith in https://github.com/chroma-core/chroma/pull/6840
  • [RELEASE] CLI 1.4.3 Python 1.5.7 JS 3.4.3 by @itaismith in https://github.com/chroma-core/chroma/pull/6845

Full Changelog: https://github.com/chroma-core/chroma/compare/1.5.6...1.5.7

1.5.6 Maintenance
Notable features
  • Bloom filter abstraction for existence checks
  • Spanner index for database listing by tenant
  • ClientFactory for CompactorClient
Full changelog

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

New Contributors

  • @LLay made their first contribution in https://github.com/chroma-core/chroma/pull/6570
  • @matrn made their first contribution in https://github.com/chroma-core/chroma/pull/6676

Full Changelog: https://github.com/chroma-core/chroma/compare/1.5.5...1.5.6

1.5.5 Mixed
Notable features
  • Use buffer_unordered for lazy fragment fetch concurrency
  • Deduplicate and filter disabled collections before sysdb enrichment
  • Warn on missing API key for JS embeddings functions
Full changelog

Version: 1.5.5
Git ref: refs/tags/1.5.5
Build Date: 2026-03-10T09:30
PIP Package: chroma-1.5.5.tar.gz
Github Container Registry Image: :1.5.5
DockerHub Image: :1.5.5

What's Changed

  • [RELEASE] Rust v0.13.2 by @HammadB in https://github.com/chroma-core/chroma/pull/6583
  • [ENH] Use buffer_unordered for lazy fragment fetch concurrency by @rescrv in https://github.com/chroma-core/chroma/pull/6584
  • [DOC] chroma configuration reference by @kylediaz in https://github.com/chroma-core/chroma/pull/6592
  • [PERF]: Dedup + filter out disbled collections before sysdb enrichment by @sanketkedia in https://github.com/chroma-core/chroma/pull/6566
  • [TST] Fix test_cross_version_persist by @kylediaz in https://github.com/chroma-core/chroma/pull/6604
  • [ENH] Warn on no API key set on JS EFs by @itaismith in https://github.com/chroma-core/chroma/pull/6599
  • [ENH] Add a GoogleGemini EF name alias by @itaismith in https://github.com/chroma-core/chroma/pull/6620
  • [RELEASE] Python 1.5.5 by @itaismith in https://github.com/chroma-core/chroma/pull/6602

Full Changelog: https://github.com/chroma-core/chroma/compare/1.5.4...1.5.5

1.5.3 Breaking risk
Breaking changes
  • Dropped Pydantic v1 compatibility layer
Notable features
  • Python 3.14 support
  • Parallelized segment reader initialization
Full changelog

Version: 1.5.3
Git ref: refs/tags/1.5.3
Build Date: 2026-03-07T19:07
PIP Package: chroma-1.5.3.tar.gz
Github Container Registry Image: :1.5.3
DockerHub Image: :1.5.3

What's Changed

  • [ENH] Thread topology name through purge-dirty pipeline by @rescrv in https://github.com/chroma-core/chroma/pull/6503
  • [CHORE] Tighten down k8s resources in test. by @rescrv in https://github.com/chroma-core/chroma/pull/6509
  • [ENH] Purge dirty via Spanner when topology is specified by @rescrv in https://github.com/chroma-core/chroma/pull/6504
  • [BUG]: Drop pydantic v1 compatibility layer for Python 3.14 support by @basnijholt in https://github.com/chroma-core/chroma/pull/6356
  • [PERF] Parallelize segment reader initialization in filter and idf operators by @HammadB in https://github.com/chroma-core/chroma/pull/6522
  • [ENH]: Preallocate during pull log parsing by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6528
  • [TST] Make pytest use importlib by @kylediaz in https://github.com/chroma-core/chroma/pull/6483
  • [CLN] Make telemetry a no-op and remove posthog as a dependency by @kylediaz in https://github.com/chroma-core/chroma/pull/6489
  • [DOC] fix forking numbers by @kylediaz in https://github.com/chroma-core/chroma/pull/6530
  • BUG: retry batch fetch on channel closure by @rescrv in https://github.com/chroma-core/chroma/pull/6526
  • [BUG] CAS on version during reassignment by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6529
  • [ENH] use ResourceExhausted error code for log backpressure by @rescrv in https://github.com/chroma-core/chroma/pull/6527
  • [ENH] Ordered sparse vector writer by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6495
  • [DOC] update docs for s3 sync by @philipithomas in https://github.com/chroma-core/chroma/pull/6515
  • [BUG] avoid redundant manifest load in pull_logs_inner by @rescrv in https://github.com/chroma-core/chroma/pull/6544
  • [ENH] Skip record load when only id is requested by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6540
  • ENH add pointer-based log fetch via ScoutLogFragments by @rescrv in https://github.com/chroma-core/chroma/pull/6533
  • [ENH] Add ReadLevel to count in be by @HammadB in https://github.com/chroma-core/chroma/pull/6539
  • [ENH]: Add a gauge metric in sysdb to track compaction_failure_count by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6550
  • [DOC] Fix query param by @kylediaz in https://github.com/chroma-core/chroma/pull/6557
  • [DOC] Move search dict syntax to reference by @kylediaz in https://github.com/chroma-core/chroma/pull/6558
  • [ENH]: ListInProgressJobs endpoint for compactor by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6552
  • [CHORE] Set query service replica count to 1 in dev values by @rescrv in https://github.com/chroma-core/chroma/pull/6554
  • [DOC] Add EF API to docs by @kylediaz in https://github.com/chroma-core/chroma/pull/6561
  • [ENH]: Compaction endpoint to return where a collection would be assigned by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6564
  • [PERF] Projection downgrade to loop when delete-where by @HammadB in https://github.com/chroma-core/chroma/pull/6567
  • [ENH] add tracing spans to log fetch path by @rescrv in https://github.com/chroma-core/chroma/pull/6556
  • ENH add OpenTelemetry metrics to system crate by @rescrv in https://github.com/chroma-core/chroma/pull/6537
  • [ENH] Add dedicated fragment_storage config for fragment fetcher by @rescrv in https://github.com/chroma-core/chroma/pull/6563
  • [ENH][worker] Re-add the fetch_log_concurrency semaphore. by @rescrv in https://github.com/chroma-core/chroma/pull/6574
  • [ENH] Delete with limit in server by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6573
  • [ENH] Update Gemini EFs by @itaismith in https://github.com/chroma-core/chroma/pull/6577
  • [ENH] Delete with limit in clients by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6578
  • [RELEASE] Python 1.5.3, JS 3.3.2 by @itaismith in https://github.com/chroma-core/chroma/pull/6581

New Contributors

  • @basnijholt made their first contribution in https://github.com/chroma-core/chroma/pull/6356

Full Changelog: https://github.com/chroma-core/chroma/compare/1.5.2...1.5.3

1.5.2 New feature
Notable features
  • Quantized spann segment writer, reader, compaction, and orchestrator support added
  • Live cloud tests replaced with Kubernetes integration tests
  • Dispatcher configuration defaults set to reasonable values
1.5.1 New feature
Notable features
  • Added quantized spann segment writer, reader, and compaction for efficient storage.
  • Improved query speed by using cluster average as embedding center.
  • Enabled MCMR-aware metrics and multi-region fork collection rejection.
1.5.0 New feature
Notable features
  • Rust-based collection management improves speed and reliability.
  • Multi-region and per-topology configuration enables scalable deployments across regions.
  • S3 read preallocation and write-on-eviction enhancements boost storage performance.
1.4.1 Maintenance

Minor fixes and improvements.

Full changelog

Version: 1.4.1
Git ref: refs/tags/1.4.1
Build Date: 2026-01-14T19:19
PIP Package: chroma-1.4.1.tar.gz
Github Container Registry Image: :1.4.1
DockerHub Image: :1.4.1

What's Changed

  • [ENH]: Sysdb + migration service connect to real spanner in gcp by @sanketkedia in https://github.com/chroma-core/chroma/pull/6084
  • [CHORE]: Update google cloud spanner dependency + update rust version by @sanketkedia in https://github.com/chroma-core/chroma/pull/6086
  • [CHORE]: Remove unstable feature by @sanketkedia in https://github.com/chroma-core/chroma/pull/6087
  • [BUG]: Scorecard before stateful quotas by @sanketkedia in https://github.com/chroma-core/chroma/pull/6089
  • [ENH]: e2e tenant and database operations in rust sysdb by @sanketkedia in https://github.com/chroma-core/chroma/pull/6088
  • [ENH] Drop block ref when copy to end by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6101
  • [ENH]: Make hashes in spanner migrations rolling by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6097
  • [CHORE] move spanner-migrations to rust/ top level by @rescrv in https://github.com/chroma-core/chroma/pull/6085
  • [BUG] await auth on delete_database in single-node Chroma by @philipithomas in https://github.com/chroma-core/chroma/pull/6106
  • [ENH][spanner-migrations]: add clap CLI and support for multiple migration directories by @rescrv in https://github.com/chroma-core/chroma/pull/6091
  • [ENH] Commit eagerly in ordered blockfile writer by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6109
  • [BUG]: Fix service name extraction logic in go by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6111
  • [ENH]: fixes broken llama index links by @tjkrusinskichroma in https://github.com/chroma-core/chroma/pull/6112
  • [ENH]: Fixes typo by @tjkrusinskichroma in https://github.com/chroma-core/chroma/pull/6113
  • [ENH]: fixes missing $ in operator example by @tjkrusinskichroma in https://github.com/chroma-core/chroma/pull/6114
  • [BUG]: Collection affinity not working by @sanketkedia in https://github.com/chroma-core/chroma/pull/6115
  • [ENH] Add a catch to purge cursors that have been reinserted a suspicious number of times. by @rescrv in https://github.com/chroma-core/chroma/pull/6094
  • [ENH] Multi-region, multi-cloud configuration. by @rescrv in https://github.com/chroma-core/chroma/pull/6092
  • [ENH][wal3]: add quorum_writer for parallel future coordination by @rescrv in https://github.com/chroma-core/chroma/pull/6095
  • [ENH]: Add frontend logic for indexing status by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6127
  • [CHORE][spanner-migrations]: extract core logic into library by @rescrv in https://github.com/chroma-core/chroma/pull/6125
  • [ENH] Add the schema for Rust Log Service in Spanner. by @rescrv in https://github.com/chroma-core/chroma/pull/6096
  • [CHORE] Bump version of tonic to 0.14 and shake out the damage. by @rescrv in https://github.com/chroma-core/chroma/pull/6100
  • [CHORE] Fix the MCMR memberlists in Tilt. by @rescrv in https://github.com/chroma-core/chroma/pull/6099
  • [ENH] Explicitly define docs site metadata for Google by @kylediaz in https://github.com/chroma-core/chroma/pull/6136
  • [CHORE] configure gtm on docs by @philipithomas in https://github.com/chroma-core/chroma/pull/6139
  • Revert "[CHORE] configure gtm on docs" by @philipithomas in https://github.com/chroma-core/chroma/pull/6140
  • [ENH] add gtm to docs by @philipithomas in https://github.com/chroma-core/chroma/pull/6141
  • [ENH]: Python client changes for indexing status by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6130
  • [ENH] Eventual consistency in query nodes by @HammadB in https://github.com/chroma-core/chroma/pull/5945
  • [CHORE][wal3] encapsulate fragment reading in FragmentConsumer trait by @rescrv in https://github.com/chroma-core/chroma/pull/6107
  • [ENH]: Database and Tenant Crud enhancements by @sanketkedia in https://github.com/chroma-core/chroma/pull/6119
  • [ENH]: Metering for indexing_status by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6128
  • [ENH]: Globalize dead letter queue in SysDB by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6003
  • [ENH]: Spanner collection and segments Schemas by @sanketkedia in https://github.com/chroma-core/chroma/pull/6123
  • [ENH] Add eventual consistency to the frontend by @HammadB in https://github.com/chroma-core/chroma/pull/5946
  • [ENH] wal3 replicated interfaces by @rescrv in https://github.com/chroma-core/chroma/pull/6102
  • [CHORE] Bump rust client version to 0.11.x by @rescrv in https://github.com/chroma-core/chroma/pull/6150
  • [ENH]: Add indexing_status changes to typescript and rust clients by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6143
  • [CHORE] Make spanner optional for types by @rescrv in https://github.com/chroma-core/chroma/pull/6151
  • [ENH]: Wrap spanner Row to a new type by @sanketkedia in https://github.com/chroma-core/chroma/pull/6152
  • [ENH] Add support for indexing status to rust by @HammadB in https://github.com/chroma-core/chroma/pull/6153
  • [TST] Add basic readlevel test by @HammadB in https://github.com/chroma-core/chroma/pull/6154
  • [CHORE] Set version numbers for 0.12 client release by @rescrv in https://github.com/chroma-core/chroma/pull/6156
  • [RELEASE] CLI 1.3.1 Python 1.4.1 JS 3.2.1 by @itaismith in https://github.com/chroma-core/chroma/pull/6155

Full Changelog: https://github.com/chroma-core/chroma/compare/1.4.0...1.4.1

Beta — feedback welcome: [email protected]