# Ray 2.36.0 — Ray-2.36.0 - Product: Ray (https://whatsnew.fyi/product/ray) - Vendor: Anyscale - Date: 2024-09-17 - Version: 2.36.0 - Original notes: https://github.com/ray-project/ray/releases/tag/ray-2.36.0 - Permalink: https://whatsnew.fyi/product/ray/releases/2.36.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'. --- - **changed** — Remove limit on number of tasks launched per scheduling step in Ray Data - **added** — Allow user-defined Exception to be caught in Ray Data - **fixed** — Display pending actors separately in the progress bar and not count them towards running resources - **fixed** — Fix bug where arrow_parquet_args aren't used - **fixed** — Skip empty JSON files in read_json() - **fixed** — Remove remote call for initializing Datasource in read_datasource() - **added** — Decouple device-related modules and add Huawei NPU support to Ray Train - **fixed** — Update TORCH_NCCL_ASYNC_ERROR_HANDLING env var - **changed** — Mark proxy as unready when its routers are aware of zero replicas in Ray Serve - **added** — Setup default serve logger - **fixed** — Allow get_serve_logs_dir to run outside of Ray's context - **removed** — Remove support for nested DeploymentResponses - **added** — Add CQL algorithm to new API stack in RLlib - **added** — Enable GPU and multi-GPU support for DQN/SAC/CQL in new API stack - **changed** — Enhance offline RL in new API stack - **fixed** — Fix large batch size for synchronous algos after EnvRunner failures - **added** — Add torch.compile config options to old API stack - **added** — Add kwargs to torch.nn.parallel.DistributedDataParallel - **added** — Add PREPARED state for placement groups in GCS for better fault tolerance - **fixed** — Fix ray_unintentional_worker_failures_total to only count unintentional worker failures #### Ray Libraries ##### Ray Data 💫 Enhancements: - Remove limit on number of tasks launched per scheduling step (#47393) - Allow user-defined Exception to be caught. (#47339) 🔨 Fixes: - Display pending actors separately in the progress bar and not count them towards running resources (#46384) - Fix bug where `arrow_parquet_args` aren't used (#47161) - Skip empty JSON files in `read_json()` (#47378) - Remove remote call for initializing `Datasource` in `read_datasource()` (#47467) - Remove dead `from_*_operator` modules (#47457) - Release test fixes - Add `AWS ACCESS_DENIED` as retryable exception for multi-node Data+Train benchmarks (#47232) - Get AWS credentials with boto (#47352) - Use worker node instead of head node for `read_images_comparison_microbenchmark_single_node` release test (#47228) 📖 Documentation: - Add docstring to explain `Dataset.deserialize_lineage` (#47203) - Add a comment explaining the bundling behavior for `map_batches` with default batch_size (#47433) ##### Ray Train 💫 Enhancements: - Decouple device-related modules and add Huawei NPU support to Ray Train (#44086) 🔨 Fixes: - Update TORCH_NCCL_ASYNC_ERROR_HANDLING env var (#47292) 📖 Documentation: - Add missing Train public API reference (#47134) ##### Ray Tune 📖 Documentation: - Add missing Tune public API references (#47138) ##### Ray Serve 💫 Enhancements: - Mark proxy as unready when its routers are aware of zero replicas (#47002) - Setup default serve logger (#47229) 🔨 Fixes: - Allow get_serve_logs_dir to run outside of Ray's context (#47224) - Use serve logger name for logs in serve (#47205) 📖 Documentation: - [HPU] [Serve] [experimental] Add vllm HPU support in vllm example (#45893) 🏗 Architecture refactoring: - Remove support for nested DeploymentResponses (#47209) ##### RLlib 🎉 New Features: - New API stack: Add CQL algorithm. ([#47000](https://github.com/ray-project/ray/pull/47000), [#47402](https://github.com/ray-project/ray/pull/47402)) - New API stack: Enable GPU and multi-GPU support for DQN/SAC/CQL. ([#47179](https://github.com/ray-project/ray/pull/47179)) 💫 Enhancements: - New API stack: Offline RL enhancements: [#47195](https://github.com/ray-project/ray/pull/47195), [#47359](https://github.com/ray-project/ray/pull/47359) - Enhance new API stack stability: [#46324](https://github.com/ray-project/ray/pull/46324), [#47196](https://github.com/ray-project/ray/pull/47196), [#47245](https://github.com/ray-project/ray/pull/47245), [#47279](https://github.com/ray-project/ray/pull/47279) - Fix large batch size for synchronous algos (e.g. PPO) after EnvRunner failures. ([#47356](https://github.com/ray-project/ray/pull/47356)) - Add torch.compile config options to old API stack. ([#47340](https://github.com/ray-project/ray/pull/47340)[)](https://github.com/ray-project/ray/commit/78402bc1fde669cb4015f9393106acb144ac45bf) - Add kwargs to torch.nn.parallel.DistributedDataParallel ([#47276](https://github.com/ray-project/ray/pull/47276)) - Enhanced CI stability: [#47197](https://github.com/ray-project/ray/pull/47197), [#47249](https://github.com/ray-project/ray/pull/47249) 📖 Documentation: - New API stack example scripts: - Float16 training example script. ([#47362](https://github.com/ray-project/ray/pull/47362)) - Mixed precision training example script ([#47116](https://github.com/ray-project/ray/pull/47116)) - ModelV2 -> RLModule wrapper for migrating to new API stack. ([#47425](https://github.com/ray-project/ray/pull/47425)) - Remove "new API stack experimental" hint from docs. ([#47301](https://github.com/ray-project/ray/pull/47301)) 🏗 Architecture refactoring: - Remove 2nd Learner ConnectorV2 pass from PPO ([#47401](https://github.com/ray-project/ray/pull/47401)) - Add separate learning rates for policy a _[Truncated at 4000 characters — full notes: https://github.com/ray-project/ray/releases/tag/ray-2.36.0]_