NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #541 most downloaded on PyPI
Ray provides a simple, universal API for building distributed applications.
Last release 1 months ago
23 Aug 2026
Ships fairly regularly
a new release about every 3 weeks
Nearly every release is documented
notes for 59 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
9 years old
132 releases · first in 2017
Add delete_creating_tasks option for internal.free() #4588
delete_creating_tasks option for internal.free() #4588tune.function in global checkpoint. #4519--columns flag for CLI. #4564TFPolicyGraph. #4478DQNPolicyGraph. #4504ExternalEnv and MultiAgentEnv, called ExternalMutliAgentEnv. #4200prev_state/prev_action in rollout and fix multiagent. #4565GcsClient. #4601One column per quarter.
Build system fully converted to Bazel. #4284, #4280, #4281
_remote() optional. #4305TCP_NODELAY on all TCP connections. #4318ray timeline command line command for dumping Chrome trace. #4239tune.run_experiments to tune.run. #4234Removed redirect_output and redirect_worker_output from ray.init, removed deprecated _submit method. #4025
redirect_output and redirect_worker_output from ray.init, removed deprecated _submit method. #4025TensorFlowVariables to ray.experimental.tf_utils. #4145Initial work on porting the build system to Bazel. #3918, #3806, #3867, #3842
ray start can now be used to start Java workers. #3838, #3852pyarrow build. #3931export_formats option to export policy graphs. #3868The timeout argument of ray.wait now uses seconds instead of milliseconds. #3706
timeout argument of ray.wait now uses seconds instead of milliseconds. #3706Node class to manage Ray processes. #3733ray.ObjectID code. #3674Added experimental option to limit Redis memory usage. #3499
rllib rollout now also preprocesses observations. #3512tune.function wrapper. #3457trial_resources now renamed to resources_per_trial. #3580import modin after import rayRenamed _submit to _remote. #3321
_submit to _remote. #3321ray.global_state.client_table() returns a list instead of a dictionary.ray.global_state.dump_catapult_trace to ray.global_state.chrome_tracing_dump.ray stack for improved debugging (to get stack traces of Python processes on current node). #3213/tmp/ray/. #2862import ray you can run import modin. #3109ray submit for submitting scripts to clusters. #3312--new flag for ray attach. #2973SearchAlgorithms. #3081raise_on_failed_trial flag in run_experiments. #2915Add ray.is_initialized() to check if ray.init() has been called. #2818
ray.is_initialized() to check if ray.init() has been called. #2818ray stop fails to kill plasma object store. #2850psutil. #2892Local mode has changed from ray.init(driver_mode=ray.PYTHON_MODE) to ray.init(local_mode=True) to improve clarity.
ray.init(driver_mode=ray.PYTHON_MODE) to ray.init(local_mode=True) to improve clarity.ray up, ray attach, ray exec, and ray rsync to simplify launching jobs with Ray.SearchAlgorithms can now be used separately from TrialSchedulers and are found in ray.tune.suggest.TrialSchedulers have been consolidated under ray.tune.schedulers.Experiment configuration, repeat has been renamed to num_samples.register_trainable is handled implicitly.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →