# Ray 1.7.0 — Ray-1.7.0 - Product: Ray (https://whatsnew.fyi/product/ray) - Vendor: Anyscale - Date: 2021-10-07 - Version: 1.7.0 - Original notes: https://github.com/ray-project/ray/releases/tag/ray-1.7.0 - Permalink: https://whatsnew.fyi/product/ray/releases/1.7.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** — Ray SGD v2 is now available in alpha with new APIs focused on ease of use and composability - **added** — Ray Workflows is now available in alpha for large-scale data science, ML, and long-running business workflows - **added** — Major enhancements to C++ API with new distributed system building capabilities - **changed** — Ray Autoscaler now defaults head node type to 0 max_workers - **added** — Ray Client now forwards ray.init() args to remote server - **added** — Ray Client now allows multiple client connections from one driver - **added** — gRPC channel credentials can now be configured from ray.init in Ray Client - **added** — Ray Client will attempt to recover connections on certain gRPC failures - **changed** — Ray Client now uses a single RPC to fetch ClientObjectRefs passed in a list - **fixed** — Fixed syncing files with Docker head node - **fixed** — Fixed mismatched debug log ID formats in Ray Client - **added** — Add support for reading partitioned Parquet datasets - **added** — Add dataset unioning capability - **added** — Add support for splitting a dataset at row indices - **added** — Add from_numpy() and to_numpy() APIs for Ray Data Processing - **added** — Add support for splitting a dataset pipeline at row indices - **added** — Add Modin integration with from_modin() and to_modin() APIs - **added** — Add support for datasets with tensor columns - **added** — Add RayDP (Spark-on-Ray) integration with from_spark() and to_spark() APIs - **added** — RLlib now supports multi-GPU for DDPG ##### Highlights - Ray SGD v2 is now in alpha! The v2 version introduces APIs that focus on ease of use and composability. Check out the docs [here](https://docs.ray.io/en/releases-1.7.0/raysgd/v2/raysgd.html), and the migration guide from v1 to v2 [here](https://docs.ray.io/en/releases-1.7.0/raysgd/v2/migration-guide.html). - If you are using Ray SGD v2, we’d love to hear your feedback [here](https://forms.gle/PXFcJmHwszCwQhqX7)! - Ray Workflows is now in alpha! Check out the docs [here](https://docs.ray.io/en/releases-1.7.0/workflows/concepts.html) and try it out for your large-scale data science, ML, and long-running business workflows. Thanks to our early adopters for the feedback so far and the ongoing contributions from IBM Research. - We have made major enhancements to C++ API! While we are still busy hardening the feature for production usage, please check out the docs [here](https://docs.ray.io/en/latest/index.html#getting-started-with-ray), try it out, and help provide feedback! ##### Ray Autoscaler 💫Enhancements: - Improvement to logging and code structure #18180 - Default head node type to 0 max_workers #17757 - Modifications to accommodate custom node providers #17312 🔨 Fixes: - Helm chart configuration fixes #17678 #18123 - GCP autoscaler config fix #18653 - Allow attaching to uninitialized head node for debugging #17688 - Syncing files with Docker head node fixed #16515 ##### Ray Client 🎉 New Features: - `ray.init()` args can be forwarded to remote server (#17776) - Allow multiple client connections from one driver (#17942) - gRPC channel credentials can now be configured from ray.init (#18425, #18365) - Ray Client will attempt to recover connections on certain gRPC failures (#18329) 💫Enhancements - Less confusing client RPC errors (#18278) - Use a single RPC to fetch ClientObjectRefs passed in a list (#16944) - Increase timeout for ProxyManager.get_channel (#18350) 🔨 Fixes: - Fix mismatched debug log ID formats (#17597) - Fix confusing error messages when client scripts exit (#17969) ##### Ray Core 🎉 New Features: - Major enhancements in the C++ API! - This API library enables you to build a C++ distributed system easily, just like the Python API and the Java API. - Run `pip install -U ray[cpp]` to install Ray with C++ API support. - Run `ray cpp --help` to learn how to use it. - For more details, check out the docs [here](https://docs.ray.io/en/latest/index.html#getting-started-with-ray) and see the tab “C++”. 🔨 Fixes: - Bug fixes for thread-safety / reference count issues / placement group (#18401, #18746, #18312, #17802, #18526, #17863, #18419, #18463, #18193, #17774, #17772, #17670, #17620, #18584, #18646, #17634, #17732) - Better format for object loss errors / task & actor logs (#18742, #18577, #18105, #18292, #17971, #18166) - Improved the ray status output for placement groups (#18289, #17892) - Improved the function export performance (#18284) - Support more Ray core metrics such as RPC call latencies (#17578) - Improved error messages and logging for runtime environments (#18451, #18092, #18088, #18084, #18496, #18083) ##### Ray Data Processing 🎉 New Features: - Add support for reading partitioned Parquet datasets (#17716) - Add dataset unioning (#17793) - Add support for splitting a dataset at row indices (#17990) - Add from_numpy() and to_numpy() APIs (#18146) - Add support for splitting a dataset pipeline at row indices (#18243) - Add Modin integration (from_modin() and to_modin()) (#18122) - Add support for datasets with tensor columns (#18301) - Add RayDP (Spark-on-Ray) integration (from_spark() and to_spark()) (#17340) 💫Enhancements - Drop empty tables when read Parquet fragments in order to properly support filter expressions when reading partitioned Parquet datasets (#18098) - Retry application-level errors in Datasets (#18296) - Create a directory on write if it doesn’t exist (#18435) - URL encode paths if _[Truncated at 4000 characters — full notes: https://github.com/ray-project/ray/releases/tag/ray-1.7.0]_