Weaviate 1.35 Release
Weaviate v1.35 is now available open-source and on Weaviate Cloud.
This release introduces powerful new lifecycle management capabilities with Object Time-to-Live (TTL), and improved backup performance with zstd compression support. We're also excited to announce that flat index RQ quantization moves to general availability and the Java v6 client is officially released!
Additionally, v1.35 brings multimodal embeddings with Weaviate Embeddings, making it easier than ever to build document retrieval applications, along with runtime configurable OIDC certificates for enhanced security flexibility and database operational modes.
These improvements help make Weaviate more flexible, performant, and easier to operate at scale.
Here are the release ⭐️highlights⭐️!

- Object Time-to-Live (TTL)
- Java v6 Client - General Availability
- Flat Index RQ Quantization - General Availability
- Enhanced Backup Compression
- Weaviate Embeddings - Multimodal Support
- Runtime Configurable OIDC Certificates
- Database Operational Modes
- Multiple performance improvements and fixes
- Community contributions
Object Time-to-Live (TTL)
Weaviate v1.35 introduces Object Time-to-Live (TTL) as a technical preview, enabling automatic deletion of objects after a specified time period. This powerful lifecycle management feature helps you maintain clean data stores, comply with retention policies, and reduce storage costs.
TTL can be configured at the collection level in three ways:
Relative to Creation Time
Set objects to expire after a fixed duration from when they were created:
import datetime
from weaviate.classes.config import Configure, Property, DataType
client.collections.create(
name="SessionLogs",
properties=[
Property(name="data", data_type=DataType.TEXT),
],
object_ttl_config=Configure.ObjectTTL.delete_by_creation_time(
time_to_live=datetime.timedelta(hours=24), # Expire after 24 hours
filter_expired_objects=True, # Exclude expired objects from queries
),
)