# 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]_