Repository: modin-project/modin

Issue:
Upgrade to Ray 0.8.7
I am experiencing an issue with Ray which is fixed in `0.8.7`; however, Modin has pinned the Ray version to `0.8.6` [here](https://github.com/modin-project/modin/blob/master/modin/__init__.py#L56). Can we please update the dependency?




Discussion:
Thanks @crypdick for the report, yes we should update it. I took last week off and am still catching up. You can install Ray 0.8.7 and bypass this in the short term with the following:

```python
import os
os.environ["MODIN_ENGINE"] = "ray"  # set this first
import modin.pandas as pd  # then import
```

You can also set the environment variable outside of python as well. 

On a more general note, it is probably time to relax the pin. I think the ray API has stabilized to the point where we can use a `>=` instead of a hard pin.
@devin-petersohn here's what I get when I try that:

```
    import modin.pandas as mpd
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/modin/pandas/__init__.py", line 170, in <module>
    execution_engine.subscribe(_update_engine)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/modin/__init__.py", line 93, in subscribe
    callback(self)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/modin/pandas/__init__.py", line 113, in _update_engine
    initialize_ray()
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/modin/engines/ray/utils.py", line 147, in initialize_ray
    lru_evict=True,
TypeError: init() got an unexpected keyword argument 'include_webui'
```

Resolving patch:
diff --git a/modin/__init__.py b/modin/__init__.py
--- a/modin/__init__.py
+++ b/modin/__init__.py
@@ -53,7 +53,7 @@ def get_execution_engine():
             except ImportError:
                 pass
             else:
-                if version.parse(ray.__version__) != version.parse("0.8.6"):
+                if version.parse(ray.__version__) != version.parse("0.8.7"):
                     raise ImportError(
                         "Please `pip install modin[ray]` to install compatible Ray version."
                     )
diff --git a/modin/engines/ray/utils.py b/modin/engines/ray/utils.py
--- a/modin/engines/ray/utils.py
+++ b/modin/engines/ray/utils.py
@@ -103,7 +103,7 @@ def initialize_ray(
             # We only start ray in a cluster setting for the head node.
             ray.init(
                 address=redis_address or "auto",
-                include_webui=False,
+                include_dashboard=False,
                 ignore_reinit_error=True,
                 redis_password=redis_password,
                 logging_level=100,
@@ -136,7 +136,7 @@ def initialize_ray(
                 object_store_memory = int(object_store_memory)
             ray.init(
                 num_cpus=int(num_cpus),
-                include_webui=False,
+                include_dashboard=False,
                 ignore_reinit_error=True,
                 plasma_directory=plasma_directory,
                 object_store_memory=object_store_memory,
diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -38,7 +38,7 @@ def is_pure(self):
 
 
 dask_deps = ["dask>=2.12.0", "distributed>=2.12.0"]
-ray_deps = ["ray==0.8.6", "pyarrow<0.17"]
+ray_deps = ["ray==0.8.7", "pyarrow<0.17"]
 remote_deps = ["rpyc", "cloudpickle", "boto3"]
 
 all_deps = dask_deps + ray_deps + remote_deps


Test patch: