# Ray 2.20.0 — Ray-2.20.0 - Product: Ray (https://whatsnew.fyi/product/ray) - Vendor: Anyscale - Date: 2024-05-01 - Version: 2.20.0 - Original notes: https://github.com/ray-project/ray/releases/tag/ray-2.20.0 - Permalink: https://whatsnew.fyi/product/ray/releases/2.20.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** — Deduplicate repeated schema during ParquetDatasource metadata prefetching - **changed** — Update map_groups implementation to better handle large outputs - **deprecated** — Deprecate prefetch_batches argument of iter_rows and change default value - **changed** — Add default behavior to false for creating directories on S3 writes - **changed** — Make internal UDF names more descriptive - **changed** — Make name a required argument for AggregateFn - **changed** — Setup XGBoost CommunicatorContext automatically - **added** — Track Train Run Info with TrainStateActor - **changed** — Remove trial table when running Ray Train in a Jupyter notebook - **changed** — Clean up temporary checkpoint directories for class Trainables - **changed** — Make handle push metric interval configurable with environment variable RAY_SERVE_HANDLE_METRIC_PUSH_INTERVAL_S - **changed** — Improve performance of developer API serve.get_app_handle - **fixed** — Fix memory leak in handles for autoscaling deployments when RAY_SERVE_COLLECT_AUTOSCALING_METRICS_ON_HANDLE=1 - **added** — Introduce MetricsLogger, a unified API for logging custom metrics and stats in all of RLlib's components - **added** — Introduce inference-only (slim) mode for RLModules that run inside an EnvRunner - **added** — Add MultiAgentEpisodeReplayBuffer for new API stack in preparation for multi-agent support - **changed** — Clean up AlgorithmConfig and rename properties and methods for better consistency and transparency - **changed** — Report GCS internal pubsub buffer metrics and cap message size - **fixed** — Fix task submission never returning when network partition happens - **fixed** — Fix incorrect use of SSH port forward option #### Ray Libraries ##### Ray Data 💫 Enhancements: - Dedupe repeated schema during `ParquetDatasource` metadata prefetching (#44750) - Update `map_groups` implementation to better handle large outputs (#44862) - Deprecate `prefetch_batches` arg of `iter_rows` and change default value (#44982) - Adding in default behavior to false for creating dirs on s3 writes (#44972) - Make internal UDF names more descriptive (#44985) - Make `name` a required argument for `AggregateFn` (#44880) 📖 Documentation: - Add key concepts to and revise "Data Internals" page (#44751) ##### Ray Train 💫 Enhancements: - Setup XGBoost `CommunicatorContext` automatically (#44883) - Track Train Run Info with `TrainStateActor` (#44585) 📖 Documentation: - Add documentation for `accelerator_type` (#44882) - Update Ray Train example titles (#44369) ##### Ray Tune 💫 Enhancements: - Remove trial table when running Ray Train in a Jupyter notebook (#44858) - Clean up temporary checkpoint directories for class Trainables (ex: RLlib) (#44366) 📖 Documentation: - Fix minor doc format issues (#44865) - Remove outdated ScalingConfig references (#44918) ##### Ray Serve 💫 Enhancements: - Handle push metric interval is now configurable with environment variable RAY_SERVE_HANDLE_METRIC_PUSH_INTERVAL_S (#32920) - Improve performance of developer API serve.get_app_handle (#44812) 🔨 Fixes: - Fix memory leak in handles for autoscaling deployments (the leak happens when - RAY_SERVE_COLLECT_AUTOSCALING_METRICS_ON_HANDLE=1) (#44877) ##### RLlib 🎉 New Features: - Introduce `MetricsLogger`, a unified API for users of RLlib to log custom metrics and stats in all of RLlib’s components (Algorithm, EnvRunners, and Learners). Rolled out for new API stack for Algorithm (`training_step`) and EnvRunners (custom callbacks). `Learner` (custom loss functions) support in progress. [#44888](https://github.com/ray-project/ray/pull/44888), [#44442](https://github.com/ray-project/ray/pull/44442) - Introduce “inference-only” (slim) mode for RLModules that run inside an EnvRunner (and thus don’t require value-functions or target networks): [#44797](https://github.com/ray-project/ray/pull/44797) 💫 Enhancements: - MultiAgentEpisodeReplayBuffer for new API stack (preparation for multi-agent support of SAC and DQN): [#44450](https://github.com/ray-project/ray/pull/44450) - AlgorithmConfig cleanup and renaming of properties and methods for better consistency/transparency: [#44896](https://github.com/ray-project/ray/pull/44896) 🔨 Fixes: - Various minor bug fixes: [#44989](https://github.com/ray-project/ray/pull/44989), [#44988](https://github.com/ray-project/ray/pull/44988), [#44891](https://github.com/ray-project/ray/pull/44891), [#44898](https://github.com/ray-project/ray/pull/44898), [#44868](https://github.com/ray-project/ray/pull/44868), [#44867](https://github.com/ray-project/ray/pull/44867), [#44845](https://github.com/ray-project/ray/pull/44845) ##### Ray Core and Ray Clusters 💫 Enhancements: - Report GCS internal pubsub buffer metrics and cap message size (#44749) 🔨 Fixes: - Fix task submission never return when network partition happens (#44692) - Fix incorrect use of ssh port forward option. (#44973) - Make sure dashboard will exit if grpc server fails (#44928) - Make sure dashboard agent will exit if grpc server fails (#44899) Thanks @can-anyscale, @hongchaodeng, @zcin, @marwan116, @khluu, @bewestphal, @scottjlee, @andrewsykim, @anyscalesam, @MortalHappiness, @justinvyu, @JoshKarpel, @woshiyyya, @rynewang, @Abirdcfly, @omatthew98, @sven1977, @marcelocarmona, @rueian, @mattip, @angelinalg, @aslonnie, @matthewdeng, @abizjakpro, @simonsays1980, @jjyao, @terraflops1048576, @hongpeng-guo, @stephanie-wang, @bw-matthew, @bveeramani, @ruisearch42, @ke _[Truncated at 4000 characters — full notes: https://github.com/ray-project/ray/releases/tag/ray-2.20.0]_