distutils.version is deprecated since python 3.8

Since python 3.8, using distutils Version is deprecated:

DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead

I propose use "packaging" module instead, as recommended in the warning. I also propose to remove the "requires" keyword in setup.py, which is deprecated too (https://setuptools.pypa.io/en/latest/userguide/declarative_config.html#metadata), to only use install_requires.

diff --git a/setup.py b/setup.py
index c6c452a..95a6d73 100644
--- a/setup.py
+++ b/setup.py
@@ -378,15 +378,11 @@ def setup_args():
 
     python_requires = ">=3.6"
 
-    requires = [
-        "boost_python (>=1.33)",
-        "numpy (>=1.13.3)",
-        "six (>=1.10)",
-    ]
-
     install_requires = [
+        "boost_python (>=1.33)",
         "numpy (>=1.13.3)",
         "six (>=1.10)",
+        "packaging",
     ]
 
     setup_requires = []
diff --git a/tango/gevent.py b/tango/gevent.py
index 8582a96..8ccc6da 100644
--- a/tango/gevent.py
+++ b/tango/gevent.py
@@ -14,6 +14,7 @@
 
 from __future__ import absolute_import
 from functools import partial
+from packaging.version import Version
 
 from ._tango import GreenMode
 from .device_proxy import get_device_proxy
@@ -31,9 +32,7 @@ def check_requirements():
                           "green mode. Consider using the futures green mode "
                           "instead")
 
-    import distutils.version
-    gevent_version = ".".join(map(str, gevent.version_info[:3]))
-    if distutils.version.StrictVersion(gevent_version) < "1.0":
+    if Version(gevent.__version__) < Version("1.0"):
         raise ImportError("You need gevent >= 1.0. You are using %s. "
                           "Consider using the futures green mode instead"
                           % gevent_version)