Change8

Ray

Data & ML

Ray is an AI compute engine. Ray consists of a core distributed runtime and a set of AI Libraries for accelerating ML workloads.

Latest: ray-2.54.124 releases10 breaking changes23 common errorsView on GitHub

Release History

ray-2.54.11 fix
Mar 25, 2026

This patch release fixes a critical performance degradation issue by temporarily disabling the hanging issue detector which was causing blocking calls to the Ray State API.

ray-2.54.0Breaking30 fixes16 features
Feb 18, 2026

This release introduces significant new features in Ray Data, including checkpointing, expanded Compute Expressions, and Databricks UC credential support, alongside major enhancements to cluster autoscaling and performance optimizations. Ray Serve gains queue-based autoscaling for TaskConsumers and improved deployment observability.

ray-2.53.0Breaking13 fixes32 features
Dec 20, 2025

This release adds major new features such as a utilization‑based autoscaler, Kafka datasource, and deployment topology visibility, while dropping Pydantic V1 support and removing deprecated APIs.

ray-2.51.21 fix
Nov 29, 2025

This release addresses CVE-2025-62593 by rejecting Sec-Fetch-* and other browser-specific headers in the dashboard's browser rejection logic.

ray-2.52.11 fix
Nov 28, 2025

Security update adds more robust handling for CVE-2025-62593 by checking extra browser-specific headers in dashboard rejection logic.

ray-2.52.0Breaking17 fixes35 features
Nov 21, 2025

Ray 2.x introduces token authentication, extensive Iceberg enhancements, new expression capabilities, and numerous performance improvements, while dropping Python 3.9 support and adjusting several defaults that may require migration steps.

ray-2.51.11 feature
Nov 1, 2025

Added reuse of previous metadata for identical tensor list transfers using `nixl`.

ray-2.51.0Breaking17 fixes16 features
Oct 29, 2025

This release introduces Ray Train v2 as the default, adds application‑level autoscaling to Ray Serve, and brings numerous new features and fixes to Ray Data, Train, Tune, and Serve.

ray-2.50.11 fix
Oct 18, 2025

Fixed a deadlock that occurred when cancelling stale requests on in-order actors.

ray-2.50.0Breaking19 fixes32 features
Oct 10, 2025

This release adds major enhancements across Ray Data, Core, Train, Serve, and RLLib, including a new hash‑based shuffle, expression API, multi‑node LLM support, Direct Transport for GPU data, async inference in Serve, and extensive performance and memory optimizations.

ray-2.49.2
Sep 19, 2025

There are no functional changes between version 2.49.2 and 2.49.1; this release only increments the patch version for out-of-band reasons.

ray-2.49.12 fixes
Sep 3, 2025

This release addresses two bugs: GPU metrics missing in the Ray Dashboard and a regression in Ray Data handling large schemas.

ray-2.49.0Breaking16 fixes33 features
Aug 26, 2025

This release adds extensive performance enhancements, new features such as JaxTrainer, async inference, and custom autoscaling, while fixing numerous bugs; it also introduces a few breaking changes that may require migration steps.

ray-2.48.0Breaking27 fixes12 features
Jul 18, 2025

This release adds Delta Lake support, new collective operations, custom request routing, and offline policy evaluation, while also delivering numerous performance improvements and bug fixes across Ray Data, Train, Serve, Tune, and RLlib.

ray-2.47.11 fix
Jun 18, 2025

Ray 2.47.1 resolves a startup failure on macOS.

ray-2.47.0Breaking29 fixes22 features
Jun 12, 2025

This release adds major LLM serving capabilities, custom routing, and numerous performance and observability improvements across Ray Data, Train, Serve, RLlib, and the Dashboard, while also introducing several breaking changes such as non‑blocking pipelines, stricter Serve name validation, and default uv run integration.

ray-2.46.016 fixes11 features
May 7, 2025

Ray 2.46 adds hash‑shuffle support for Data, vLLM v1 compatibility for Serve LLM, a new Train Grafana dashboard, and numerous performance and bug‑fix improvements.

ray-2.45.021 fixes13 features
Apr 29, 2025

Ray 2.45 adds configurable object store fallback, new cgraph transport options, a ClickHouse sink and several dataset API enhancements, along with numerous stability fixes and an upgraded LightGBM version.

ray-2.44.1
Mar 27, 2025

There are no functional changes between version 2.44.1 and 2.44.0; this release only increments the patch version for out-of-band reasons.

ray-2.44.0Breaking21 fixes23 features
Mar 21, 2025

Ray 2.45 introduces the beta Ray Compiled Graph for ultra‑low‑overhead task graphs, adds Iceberg write support and LLM enhancements to Ray Data, a state export API to Ray Train, and numerous performance and usability improvements across Serve, RLlib, and other libraries, while deprecating Ray Workflows and removing the ray.storage dependency.

ray-2.43.013 fixes14 features
Feb 27, 2025

Ray 2.43 adds alpha LLM support in Ray Data and Serve, introduces experimental Ray Train V2, and brings uv run integration along with numerous enhancements and bug fixes.

ray-2.42.11 fix
Feb 11, 2025

This release fixes an incorrect assertion in Ray Data.

ray-2.42.08 fixes13 features
Feb 5, 2025

This release adds audio/video reading to Ray Data, introduces new Train and Tune callbacks, stabilizes the DeploymentHandle API, and brings numerous bug fixes and performance enhancements across Ray libraries including Serve, RLlib, and Core.

ray-2.41.0Breaking27 fixes34 features
Jan 23, 2025

This release adds extensive new features across Ray Data, Train, Tune, Serve, RLlib, and core components, upgrades key dependencies like Arrow, Dask, and Hudi, and includes numerous bug fixes and deprecations to prepare for future API changes.

Common Errors

EngineDeadError3 reports

EngineDeadError in Ray typically arises from a worker process crashing due to resource exhaustion, code errors, or external dependencies. Address this by checking resource limits (CPU, memory, GPU) and increasing them if necessary, thoroughly debugging your code to catch exceptions and prevent crashes, and ensuring any external libraries or services your code relies on are stable and accessible.

ObjectLostError3 reports

ObjectLostError usually means a Ray worker node holding an object died, causing the object to be lost from the object store. To fix this, ensure sufficient resources and stability in your Ray cluster to prevent worker node failures. Implement object spilling to disk or object replication across multiple nodes for fault tolerance to persist data even if a worker fails.

UnicodeDecodeError2 reports

UnicodeDecodeError in Ray often arises when strings are encoded using one encoding (e.g., UTF-8) but are incorrectly decoded using another (e.g., ASCII). To fix this, explicitly specify the correct encoding (usually UTF-8) when decoding bytes to strings, using `.decode('utf-8', errors='ignore')` to handle potentially malformed characters, and ensure consistent encoding throughout data serialization/deserialization within Ray tasks and actors.

RaySystemError2 reports

RaySystemError commonly arises from inconsistencies or misconfigurations within the Ray runtime environment, especially during initialization or when using experimental features like zero-copy tensors. Address this by ensuring all Ray workers and the driver are running the same Ray version, and explicitly configure resources or context settings according to the specific demands of the task,potentially simplifying the configuration to isolate the root cause. If using GPU, verify proper CUDA and driver setup along with valid GPU IDs passed during `ray.init()`.

ModuleNotFoundError2 reports

The "ModuleNotFoundError" in Ray typically arises when a required Python package is missing or not installed in the Ray environment. To fix this, identify the missing module from the traceback (e.g., boto3) and install it using `pip install <missing_module>` within the Ray environment or before Ray initialization. Verify the installation by running `pip list` and checking the Ray version against compatibility requirements for the installed package.

RayActorError2 reports

RayActorError usually indicates that an actor has failed due to an exception during its initialization or execution of a task, often due to resource exhaustion (OOM) or other unhandled errors. To fix it, implement robust error handling within the actor's methods using try-except blocks to catch exceptions and potentially retry failed operations or gracefully terminate. Also, ensure sufficient resources are allocated to the actor to prevent resource exhaustion, and configure appropriate retry policies or circuit breakers to handle transient failures.

Related Data & ML Packages

Subscribe to Updates

Get notified when new versions are released

RSS Feed