# Ray 2.8.0 — Ray-2.8.0 - Product: Ray (https://whatsnew.fyi/product/ray) - Vendor: Anyscale - Date: 2023-11-03 - Version: 2.8.0 - Original notes: https://github.com/ray-project/ray/releases/tag/ray-2.8.0 - Permalink: https://whatsnew.fyi/product/ray/releases/2.8.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 support for shuffling input files in Ray Data - **added** — Support streaming read of PyTorch dataset - **added** — Add BigQuery datasource for Ray Data - **added** — Add Databricks table and SQL datasource for Ray Data - **added** — Add inverse transform functionality to LabelEncoder - **added** — Add function arg params to Dataset.map and Dataset.flat_map - **added** — Add initial support for scheduling workers on neuron_cores in Ray Train - **added** — Add new Java APIs that aligns with the Ray Serve 2.x APIs - **added** — Add new metrics for Ray Data in the Metrics tab on the Ray Dashboard - **added** — Ray Core now supports profiling GPU tasks or actors using Nvidia Nsight - **changed** — Update PyTorch Lightning import path to support both pytorch_lightning and lightning - **changed** — Propagate driver DataContext to RayTrainWorkers - **changed** — The Serve REST API is now accessible through the dashboard port which defaults to 8265 - **changed** — Hard deprecate DatasetPipeline - **changed** — Remove BulkExecutor code path - **changed** — Remove legacy iteration code path in Ray Data - **fixed** — Fix child process leak issue from Ray worker that leaks GPU memory - **fixed** — Fix job page excessive loading time issue when Ray HA cluster restarts a head node - **fixed** — Fix bug where _StatsActor errors with PandasBlock - **deprecated** — Python 3.7 support is officially deprecated from Ray - **deprecated** — Deprecate previously experimental DAG API for deployment graphs in Ray Serve - **deprecated** — Deprecate single-application config file format in Ray Serve - **deprecated** — Deprecate accessing the Serve REST API through the dashboard agent port - **deprecated** — Deprecate LightningTrainer, AccelerateTrainer, TransformersTrainer - **deprecated** — Deprecate legacy DatasetConfig in Ray Train - **removed** — Remove deprecated Ray Serve 1.x APIs including Deployment.deploy, Deployment.delete, and Deployment.get_handle - **removed** — Move 24 algorithms into rllib_contrib #### Release Highlights This release features stability improvements and API clean-ups across the Ray libraries. - In Ray Serve, we are deprecating the previously experimental DAG API for deployment graphs. Model composition will be supported through [deployment handles](https://docs.ray.io/en/latest/serve/model_composition.html) providing more flexibility and stability. The previously deprecated Ray Serve 1.x APIs have also been removed. We’ve also added a new Java APIs that aligns with the Ray Serve 2.x APIs. More API changes in the release notes below. - In RLlib, we’ve moved 24 algorithms into `rllib_contrib` (still available within RLlib for Ray 2.8). - We’ve added support for PyTorch-compatible input files shuffling for Ray Data. This allows users to randomly shuffle input files for better model training accuracy. This release also features new Ray Data datasources for Databricks and BigQuery. - On the Ray Dashboard, we’ve added new metrics for Ray Data in the Metrics tab. This allows users to monitor Ray Data workload including real time metrics of cluster memory, CPU, GPU, output data size, etc. See [the doc](https://docs.ray.io/en/master/data/performance-tips.html#monitoring-your-application) for more details. - Ray Core now supports profiling GPU tasks or actors using Nvidia Nsight. See [the documentation](https://docs.ray.io/en/master/ray-observability/user-guides/profiling.html?highlight=nsight#nsight-system-profiler) for instructions. - We fixed 2 critical bugs raised by many kuberay / ML library users, including a child process leak issue from Ray worker that leaks the GPU memory (#40182) and an job page excessive loading time issue when Ray HA cluster restarts a head node (#40742) - Python 3.7 support is officially deprecated from Ray. #### Ray Libraries ##### Ray Data 🎉 New Features: - Add support for shuffling input files (#40154) - Support streaming read of PyTorch dataset (#39554) - Add BigQuery datasource (#37380) - Add Databricks table / SQL datasource (#39852) - Add inverse transform functionality to LabelEncoder (#37785) - Add function arg params to `Dataset.map` and `Dataset.flat_map` (#40010) 💫Enhancements: - Hard deprecate `DatasetPipeline` (#40129) - Remove `BulkExecutor` code path (#40200) - Deprecate extraneous `Dataset` parameters and methods (#40385) - Remove legacy iteration code path (#40013) - Implement streaming output backpressure (#40387) - Cap op concurrency with exponential ramp-up (#40275) - Store ray dashboard metrics in `_StatsActor` (#40118) - Slice output blocks to respect target block size (#40248) - Drop columns before grouping by in `Dataset.unique()` (#40016) - Standardize physical operator runtime metrics (#40173) - Estimate blocks for limit and union operator (#40072) - Store bytes spilled/restored after plan execution (#39361) - Optimize `sample_boundaries` in `SortTaskSpec` (#39581) - Optimization to reduce ArrowBlock building time for blocks of size 1 (#38833) 🔨 Fixes: - Fix bug where `_StatsActor` errors with `PandasBlock` (#40481) - Remove deprecated `do_write` (#40422) - Improve error message when reading HTTP files (#40462) - Add flag to skip `get_object_locations` for metrics (#39884) - Fall back to fetch files info in parallel for multiple directories (#39592) - Replace deprecated `.pieces` with updated `.fragments` (#39523) - Backwards compatibility for `Preprocessor` that have been fit in older versions (#39173) - Removing unnecessary data copy in `convert_udf_returns_to_numpy` (#39188) - Do not eagerly free root `RefBundles` (#39016) 📖Documentation: - Remove out-of-date Data examples (#40127) - Remove unused and outdated source examples (#40271) ##### Ray Train 🎉 New Features: - Add initial support for scheduling workers on neuron_cores (#39091) 💫Enhancements: - Update PyTorch Lightning import path to support both `pytorch_lightning` and `lightning` (#39841, #40266) - Propagate driver `DataConte _[Truncated at 4000 characters — full notes: https://github.com/ray-project/ray/releases/tag/ray-2.8.0]_