# Ray 2.53.0 — Ray-2.53.0 - Product: Ray (https://whatsnew.fyi/product/ray) - Vendor: Anyscale - Date: 2025-12-20 - Version: 2.53.0 - Original notes: https://github.com/ray-project/ray/releases/tag/ray-2.53.0 - Permalink: https://whatsnew.fyi/product/ray/releases/2.53.0 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **added** — Add Kafka as a native datasource for data ingestion - **added** — Add Dataset.summary() API for quick dataset inspection - **added** — Add Iceberg schema evolution, upsert, and overwrite support - **added** — Add should_continue_on_error for graceful error handling in batch inference - **added** — Add datetime compute expressions support - **added** — Enable expressions for grouped with_column in Ray Data - **added** — Add new utilization-based cluster autoscaler for Ray Data workloads - **added** — Add deployment topology visibility in Serve REST API to visualize deployment dependency graphs - **added** — Add external_scaler_enabled flag to application config for third-party autoscaler integration - **added** — Add node rank and local rank support to replica rank system for multi-node deployments - **added** — Add custom batch size function support in @serve.batch - **added** — Add policy state persistence for custom autoscaling policies - **added** — Add Prometheus metrics for autoscaling decisions and router queue latency - **changed** — Parallelize DefaultCollateFn and arrow_batch_to_tensors - **changed** — Optimize autoscaler to support configurable step size for actor pool scaling - **changed** — Improve streaming repartition performance - **changed** — Add version support to read_lance() - **changed** — Add configurable batching for resolve_block_refs to speed up iter_batches - **fixed** — Fix support of list types for Unique aggregator - **fixed** — Fix reading from written parquet for numpy with NaNs - **removed** — Remove deprecated read_parquet_bulk API - **deprecated** — Ray plans to drop support for Pydantic V1 starting version 2.56.0 ##### Highlights * Ray plans to drop support for Pydantic V1 starting version 2.56.0. Please see [this RFC](https://github.com/ray-project/ray/issues/58876) for details. * Ray Data now has support for bounded reading from Kafka and improved Iceberg support. ##### Ray Data 🎉 New Features * **Autoscaling**: New utilization-based cluster autoscaler for Ray Data workloads (#59353, #59362, #59366). To use this new autoscaler set RAY\_DATA\_CLUSTER\_AUTOSCALER=V2. * **Kafka Datasource**: Add Kafka as a native datasource for data ingestion (#58592) * **Dataset summary API**: Add `Dataset.summary()` API for quick dataset inspection (#58862) * **Iceberg support**: Add Iceberg schema evolution, upsert, and overwrite support (#59210, #59335) * **Graceful error handling**: Add `should_continue_on_error` for graceful error handling in batch inference (#59212) * **Datetime compute expressions**: Add datetime compute expressions support (#58740) * **Grouped `with_column` expressions**: Enable expressions for grouped `with_column` in Ray Data (#58231) * **Parallelized collation**: Parallelize `DefaultCollateFn`, `arrow_batch_to_tensors` (#58821) 💫 Enhancements * **Optimized Autoscaler Step Size**: Optimize autoscaler to support configurable step size for actor pool scaling (#58726) * **Improved Streaming Repartition**: Improve streaming repartition performance (#58728) * **Actor init retry**: Add actor retry if there's a failure in `__init__` (#59105) * **Fused Repartition \+ MapBatches**: Fuse StreamingRepartition with MapBatches operators to scale collate (#59108) * **Combined repartitions**: Combine consecutive repartitions for efficiency (#59145) * **Prefetch buffering**: Handle prefetch buffering in `iter_batches` (#58657) * **HashShuffle block breakdown**: `HashShuffleAggregator` breaks down blocks on finalize (#58603) * **Backpressure tuning**: Tune concurrency cap backpressure object store budget ratio (#58813) * **Non-string ApproximateTopK**: Support non-string items for `ApproximateTopK` aggregator (#58659) * **Lance version support**: Add version support to `read_lance()` (#58895) * **Dashboard metrics**: Add `time_to_first_batch` and `get_ref_bundles` metrics to data dashboard (#58912) * **Iter prefetched bytes stats**: Add `iter_prefetched_bytes` statistics tracking (#58900) * **Configurable batching for `iter_batches`**: Add configurable batching for `resolve_block_refs` to speed up `iter_batches` (#58467) * **Improved dashboard metrics**: Improve Ray Data dashboard metrics display (#58667) * **Histogram percentiles**: Update Ray Data histograms to show percentiles in data dashboard (#58650) * **Deprecated API removal**: Remove deprecated `read_parquet_bulk` API (#58970) * **Block shaping option**: Add disable block shaping option to BlockOutputBuffer (#58757) * **Removed concurrency lock**: Remove concurrency lock for better performance (#56798) 🔨 Fixes * **Fixes to Unique**: Fix support of list types for Unique aggregator (#58916) * **Parquet NaN fix**: Fix reading from written parquet for numpy with NaNs (#59172) * **Hash Shuffle empty block**: Fix empty block sort in hash shuffle operator (#58836) * **Hive partitioning pushdown**: Fix pushdown optimizations with Hive partitioning (#58723) * **Object Store usage reporting**: Fix `obj_store_mem_max_pending_output_per_task` reporting (#58864) * **Pyarrow FileSystem serialization fix**: Handle filesystem serialization issue in `get_parquet_dataset` (#57047) * **Azure UC SAS**: Handle Azure UC user delegation SAS (#59393) * **Async UDF Thread Cleanup**: Close threads from async UDF after actor died (#59261) * **Object Locality Default**: Default return 0s for object locality instead of \-1s (#58754) 📖 Documentation * Added contributing guide to Ray Data documentation (#58589) * Added download expression to key user journeys in documentation (#59417) * Added Kafka user guide (#58881) * Added unstructured _[Truncated at 4000 characters — full notes: https://github.com/ray-project/ray/releases/tag/ray-2.53.0]_