# Ray 2.48.0 — Ray-2.48.0 - Product: Ray (https://whatsnew.fyi/product/ray) - Vendor: Anyscale - Date: 2025-07-18 - Version: 2.48.0 - Original notes: https://github.com/ray-project/ray/releases/tag/ray-2.48.0 - Permalink: https://whatsnew.fyi/product/ray/releases/2.48.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 reading from Delta Lake tables and Unity Catalog integration - **added** — Enhanced pin_memory support in iter_torch_batches - **added** — Added broadcast_from_rank_zero and barrier collective operations - **added** — Enhanced hardware metrics integration with Grafana dashboards - **added** — Added support for dynamically loading callbacks via environment variables - **added** — Added RouterConfig field to DeploymentConfig for custom RequestRouter configuration - **added** — Added support for implementing custom request routing algorithms - **added** — Support separate deployment config for PDProxy in PrefixAwareReplicaSet - **added** — Support for prefix-aware request router - **changed** — Enhanced handling of mismatched columns and pandas.NA values - **changed** — Improved read_text trailing newline semantics - **changed** — Optimized backpressure handling with policy-based resource management - **changed** — Enhanced write_parquet with support for both partition_by and row limits - **changed** — Improved execution performance for One Hot encoding in preprocessors - **changed** — Improved checkpoint population from before_init_train_context - **changed** — Enhanced controller state logging and metrics - **changed** — Enhanced FastAPI ingress deployment validation for multiple deployments - **changed** — Optimized get_live_deployments performance - **fixed** — Fixed map_groups issues - **fixed** — Prevented Op fusion for streaming repartition to avoid performance degradation - **fixed** — Fixed ActorPool autoscaler scaling up logic - **fixed** — Resolved empty dataset repartitioning issues #### Release Highlights - **Ray Data**: This release features a new Delta Lake and Unity Catalog integration and performance improvements to various reading/writing operators. - **Ray Core**: Enhanced GPU object support with intra-process communication and improved Autoscaler v2 functionality - **Ray Train**: Improved hardware metrics integration with Grafana and enhanced collective operations support - **Ray Serve LLM**: This release features early proof of concept for prefill-decode disaggregation deployment and LLM-aware request routing such as prefix-cache aware routing. - **Ray Data LLM**: Improved throughput and CPU memory utilization for ray data workers. #### Ray Libraries ##### Ray Data 🎉 New Features: - Add reading from Delta Lake tables and Unity Catalog integration (#53701) - Enhanced pin_memory support in iter_torch_batches (#53792) - Add pin_memory to iter_torch_batches (#53792) 💫 Enhancements: - Re-enabled sorting in Ray Data tests with performance improvements (#54475) - Enhanced handling of mismatched columns and pandas.NA values (#53861, #53859) - Improved read_text trailing newline semantics (#53860) - Optimized backpressure handling with policy-based resource management (#54376) - Enhanced write_parquet with support for both partition_by and row limits (#53930) - Prevent filename collisions on write operations (#53890) - Improved execution performance for One Hot encoding in preprocessors (#54022) 🔨 Fixes: - Fixing map_groups issues (#54462) - Prevented Op fusion for streaming repartition to avoid performance degradation (#54469) - Fixed ActorPool autoscaler scaling up logic (#53983) - Resolved empty dataset repartitioning issues (#54107) - Fixed PyArrow overflow handling in data processing (#53971, #54390) - Fixed IcebergDatasink to properly generate individual file uuids (#52956) - Avoid OOMs with read_json(..., lines=True) (#54436) - Handle HuggingFace parquet dataset resolve URLs (#54146) - Fixed BlockMetadata derivation for Read operator (#53908) 📖 Documentation: - Updated AggregateFnV2 documentation to clarify finalize method (#53835) - Improved preprocessor and vectorizer API documentation ##### Ray Train 🎉 New Features: - Added broadcast_from_rank_zero and barrier collective operations (#54066) - Enhanced hardware metrics integration with Grafana dashboards (#53218) - Added support for dynamically loading callbacks via environment variables (#54233) 💫 Enhancements: - Improved checkpoint population from before_init_train_context (#54453) - Enhanced controller state logging and metrics (#52805) - Added structured logging environment variable support (#52952) - Improved handling of Noop scaling decisions for smoother scaling logic (#53180) - Logging of controller state transitions to aid in debugging and analysis (#53344) 🔨 Fixes: - Fixed GPU tensor reporting in ray.train.report (#53725) - Enhanced move_tensors_to_device utility for complex tensor structures (#53109) - Improved worker health check error handling with trace information (#53626) - Fixed GPU transfer support for non-contiguous tensors (#52548) - Force abort on SIGINT spam and do not abort finished runs (#54188) 📖 Documentation: - Updated beginner PyTorch example (#54124) - Added documentation for ray.train.collective APIs (#54340) - Added a note about PyTorch DataLoader's multiprocessing and forkserver usage (#52924) - Fixed various docstring format and indentation issues (#52855, #52878) - Added note that ray.train.report API docs should mention optional checkpoint_dir_name (#54391) 🏗 Architecture refactoring: - Removed subclass relationship between RunConfig and RunConfigV1 (#54293) - Enhanced error handling for finished training runs (#54188) - Deduplicated ML doctest runners in CI for efficiency (#53157) - Converted isort configuration to Ruff for consistency (#52869) ##### Ray Tune 💫 Enhancements: - Updated tes _[Truncated at 4000 characters — full notes: https://github.com/ray-project/ray/releases/tag/ray-2.48.0]_