diff --git a/metric_learn/_version.py b/metric_learn/_version.py index ef7eb44d..8411e551 100644 --- a/metric_learn/_version.py +++ b/metric_learn/_version.py @@ -1 +1 @@ -__version__ = '0.6.0' +__version__ = '0.6.1' diff --git a/setup.py b/setup.py index 1e6f0002..8677e7bf 100755 --- a/setup.py +++ b/setup.py @@ -3,6 +3,32 @@ from setuptools import setup import os import io +import sys + + +CURRENT_PYTHON = sys.version_info[:2] +REQUIRED_PYTHON = (3, 6) + +# This check and everything above must remain compatible with Python 2.7. +if CURRENT_PYTHON < REQUIRED_PYTHON: + sys.stderr.write(""" +========================== +Unsupported Python version +========================== +This version of metric-learn requires Python {}.{}, but you're trying to +install it on Python {}.{}. +This may be because you are using a version of pip that doesn't +understand the python_requires classifier. Make sure you +have pip >= 9.0 and setuptools >= 24.2, then try again: + $ python -m pip install --upgrade pip setuptools + $ python -m pip install django +This will install the latest version of metric-learn which works on your +version of Python. If you can't upgrade your pip (or Python), request +an older version of metric-learn: + $ python -m pip install "metric-learn<0.6.0" +""".format(*(REQUIRED_PYTHON + CURRENT_PYTHON))) + sys.exit(1) + version = {} with io.open(os.path.join('metric_learn', '_version.py')) as fp: @@ -16,6 +42,7 @@ version=version['__version__'], description='Python implementations of metric learning algorithms', long_description=long_description, + python_requires='>={}.{}'.format(*REQUIRED_PYTHON), author=[ 'CJ Carey', 'Yuan Tang', @@ -38,7 +65,7 @@ install_requires=[ 'numpy', 'scipy', - 'scikit-learn', + 'scikit-learn>=0.20.3', ], extras_require=dict( docs=['sphinx', 'shinx_rtd_theme', 'numpydoc'],