# Ray 0.8.7 - Product: Ray (https://whatsnew.fyi/product/ray) - Vendor: Anyscale - Date: 2020-08-13 - Version: 0.8.7 - Original notes: https://github.com/ray-project/ray/releases/tag/ray-0.8.7 - Permalink: https://whatsnew.fyi/product/ray/releases/0.8.7 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** — ObjectIDs are now called ObjectRefs - **changed** — Ray Autoscaler is now called Ray Cluster Launcher - **added** — Ray Cluster Launcher has a new colorful, concise output style available with the --log-new-style flag - **added** — Windows is now officially supported by RLlib - **added** — Add ray status debug tool and ray --version command - **added** — Add option for continuous sync of file mounts - **added** — Option to automatically reconstruct objects stored in plasma after a failure - **added** — Support Python type checking for Ray tasks - **added** — New algorithm: Model-Agnostic Meta-Learning (MAML) - **added** — New algorithm: Model-Based Meta-Policy-Optimization (MB-MPO) - **added** — Native TensorFlow 2.x support with framework="tf2" configuration option - **added** — DQN PyTorch support for full Rainbow setup including distributional DQN - **added** — Python type hints for Policy, Model, Offline, Evaluation, and Env classes in RLlib - **added** — Tune Function API now supports checkpointing and is usable with all search and scheduling algorithms - **added** — DistributedTrainableCreator wrapper for distributed parameter tuning with multi-node DistributedDataParallel models - **added** — Tune now provides a Scikit-learn compatible wrapper for hyperparameter tuning - **added** — Integration and tutorial for using Ray Tune with Weights and Biases - **added** — Serve now starts one HTTP server per Ray node for horizontal scalability - **added** — serve.shadow_traffic(endpoint, backend, fraction) duplicates and sends a fraction of incoming traffic to a specific backend - **added** — serve.shutdown() cleanup the current Serve instance in Ray cluster - **deprecated** — Deprecated Policy Optimizer package in favor of new distributed execution API Highlight --------- - Ray is moving towards 1.0! It has had several important naming changes. - `ObjectID`s are now called `ObjectRef`s because they are not just IDs. - The Ray Autoscaler is now called the Ray Cluster Launcher. The autoscaler will be a module of the Ray Cluster Launcher. - The Ray Cluster Launcher now has a much cleaner and concise output style. Try it out with `ray up --log-new-style`. The new output style will be enabled by default (with opt-out) in a later release. - Windows is now officially supported by RLlib. Multi node support for Windows is still in progress. Cluster Launcher/CLI (formerly autoscaler) -------------------------------------------- - **Highlight:** This release contains a new colorful, concise output style for `ray up` and `ray down`, available with the `--log-new-style` flag. It will be enabled by default (with opt-out) in a later release. Full output style coverage for Cluster Launcher commands will also be available in a later release. (#9322, #9943, #9960, #9690) - Documentation improvements (with guides and new sections) (#9687 - Improved Cluster launcher docker support (#9001, #9105, #8840) - Ray now has Docker images available on Docker hub. Please check out the [ray image](https://hub.docker.com/u/rayproject/ray) (#9732, #9556, #9458, #9281) - Azure improvements (#8938) - Improved on-prem cluster autoscaler (#9663) - Add option for continuous sync of file mounts (#9544) - Add `ray status` debug tool and `ray --version` (#9091, #8886). - `ray memory` now also supports redis_password (#9492) - Bug fixes for the Kubernetes cluster launcher mode (#9968) - __Various improvements:__ disabling the cluster config cache (#8117), Python API requires keyword arguments (#9256), removed fingerprint checking for SSH (#9133), Initial support for multiple worker types (#9096), various changes to the internal node provider interface (#9340, #9443) Core ----- - Support Python type checking for Ray tasks (#9574) - Rename ObjectID => ObjectRef (#9353) - New GCS Actor manager on by default (#8845, #9883, #9715, #9473, #9275) - Worker towards placement groups (#9039) - Plasma store process is merged with raylet (#8939, #8897) - Option to automatically reconstruct objects stored in plasma after a failure. See the [documentation](https://docs.ray.io/en/master/fault-tolerance.html#objects) for more information. (#9394, #9557, #9488) - Many bug fixes. RLlib ----- - New algorithm: __“Model-Agnostic Meta-Learning” (MAML)__. An algo that learns and generalizes well across a __distribution__ of environments. - New algorithm: __“Model-Based Meta-Policy-Optimization” (MB-MPO)__. Our first __model-based RL algo__. - __Windows__ is now __officially supported__ by RLlib. - __Native TensorFlow 2.x support__. Use framework=”tf2” in your config to tap into TF2’s full potential. Also: SAC, DDPG, DQN Rainbow, ES, and ARS now run in TF1.x Eager mode. - __DQN PyTorch__ support for full Rainbow setup (including distributional DQN). - __Python type hints__ for Policy, Model, Offline, Evaluation, and Env classes. - __Deprecated “Policy Optimizer”__ package (in favor of new distributed execution API). - Enhanced __test coverage__ and __stability__. - __Flexible multi-agent replay modes__ and `replay_sequence_length`. We now allow a) storing sequences (over time) in replay buffers and retrieving “lock-stepped” multi-agent samples. - Environments: __Unity3D soccer game__ (tuned example/benchmark) and __DM Control__ Suite wrapper and examples. - Various __Bug fixes__: QMIX not learning, DDPG torch bugs, IMPALA learning rate updates, PyTorch custom loss, PPO not learning MuJoCo due to action clipping bug, DQN w/o dueling layer error. Tune ----- - **API Changes**: - The Tune Function API now supports checkpointing and is now usable with all search and scheduling algorithms! (#8471, #9853, #9517) - The Trainable class API has renamed many of its methods to be _[Truncated at 4000 characters — full notes: https://github.com/ray-project/ray/releases/tag/ray-0.8.7]_