1.3.6
📦 chromaView on GitHub →
✨ 31 features🐛 9 fixes🔧 17 symbols
Summary
This release introduces significant enhancements to embedding functions, compactor architecture (including backfill capabilities), and sparse vector handling. Several bug fixes address issues related to soft deletes, authorization, and error propagation.
Migration Steps
- If you rely on S3heap service, note that it has been disabled and nonce-related logic removed.
- Review changes related to AttachedFunction orchestration, specifically the refactoring into chained orchestrators and the modification to return a FunctionContext instead of individual fields from AttachedFunctionOrchestrator.
✨ New Features
- Use GCS with aws-sdk-go-v2.
- Refactor compactor into three chained orchestrators.
- Add blank task support for ChromaCloudQwenEmbeddingFunction.
- Make admission controlled client generic.
- Modified AttachFunction to do 2PC on a new is_ready column.
- Let Chroma Cloud EFs get API key from client.
- Add getCollectionByCrn api support in js client.
- Execute task with no backfill or incremental.
- Try shoe-horning sparse vector tokens into the metadata value.
- Put both token id and token str in the statistics.
- Introduce backfill capabilities in compactor.
- Persist a backfill record on log to trigger backfill.
- Add HTTP endpoint for get_attached_function.
- Add Python wrapper API for statistics function.
- Sparse vector labels in python client.
- Add k8s multidisk support.
- Make cache types configurable.
- Add ASAN support to OSS.
- Cleanup a warning on AVX512+SSE where both are imported.
- Cargo cult the ASAN from hosted.
- Make sure a collection can have at most one attached function.
- Add blacklist for collections that can run functions.
- For chroma cloud efs, extract api key from header if available to authenticate.
- Separate schema errors on read/write path to give 400 on user errors, 500 for internal errors.
- Added a key parameter to filter stats in get_statistics.
- Add token storage for chroma cloud splade sparse vectors.
- Prefetch on materialize.
- SPANN - Delete empty PLs.
- Support cloud env variables for sample apps.
- Add collection metadata to output collection to identify source attached function.
- Delete attached function when output collection is deleted.
🐛 Bug Fixes
- Fix test flake in test_task_api.py.
- Make sure an input collection soft delete cascades to attached functions.
- Fix authorization calls for functions API.
- Have stats function paginate through output collection.
- wal3 Sometimes returns an "Internal" when it should return "LogContentionFailure".
- Propagate flush failures to upstream with direct_hnsw.
- Fix chart values reference.
- Prevent hnsw cleanup if use_direct_hnsw is true.
- spann flusher should flush the cleaned up hnsw if applicable.
🔧 Affected Symbols
aws-sdk-go-v2compactorS3heap serviceattached_functionsChromaCloudQwenEmbeddingFunctionadmission controlled clientAttachFunctionwal3::Error::Internalget_attached_function (HTTP endpoint)statistics function (Python wrapper)foyerget_statisticsdirect_hnswuse_direct_hnswCollection soft deletefunctions APIoutput collection