From 1d82b8822120db088bfeb6c8eae7ec8df9703783 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20H=C3=B8xbro?= Date: Thu, 22 Sep 2022 13:51:51 +0200 Subject: [PATCH] Updated distutils.Version to packaging.Version --- packages/python/plotly/plotly/graph_objects/__init__.py | 8 ++++---- packages/python/plotly/plotly/graph_objs/__init__.py | 8 ++++---- packages/python/plotly/plotly/io/_renderers.py | 4 ++-- .../plotly/matplotlylib/mplexporter/renderers/base.py | 4 ++-- .../plotly/matplotlylib/mplexporter/tests/test_basic.py | 4 ++-- .../test_figure_widget_backend/test_missing_ipywigets.py | 4 ++-- .../plotly/plotly/tests/test_orca/test_orca_server.py | 8 ++++---- packages/python/plotly/plotly/version.py | 6 ++---- 8 files changed, 22 insertions(+), 24 deletions(-) diff --git a/packages/python/plotly/plotly/graph_objects/__init__.py b/packages/python/plotly/plotly/graph_objects/__init__.py index 18fb9e23ee1..d69329669a4 100644 --- a/packages/python/plotly/plotly/graph_objects/__init__.py +++ b/packages/python/plotly/plotly/graph_objects/__init__.py @@ -267,9 +267,9 @@ if sys.version_info < (3, 7) or TYPE_CHECKING: try: import ipywidgets as _ipywidgets - from distutils.version import LooseVersion as _LooseVersion + from packaging.version import Version as _Version - if _LooseVersion(_ipywidgets.__version__) >= _LooseVersion("7.0.0"): + if _Version(_ipywidgets.__version__) >= _Version("7.0.0"): from ..graph_objs._figurewidget import FigureWidget else: raise ImportError() @@ -283,9 +283,9 @@ def __getattr__(import_name): if import_name == "FigureWidget": try: import ipywidgets - from distutils.version import LooseVersion + from packaging.version import Version - if LooseVersion(ipywidgets.__version__) >= LooseVersion("7.0.0"): + if Version(ipywidgets.__version__) >= Version("7.0.0"): from ..graph_objs._figurewidget import FigureWidget return FigureWidget diff --git a/packages/python/plotly/plotly/graph_objs/__init__.py b/packages/python/plotly/plotly/graph_objs/__init__.py index 2d4f3d3c15b..d10f2e22a2a 100644 --- a/packages/python/plotly/plotly/graph_objs/__init__.py +++ b/packages/python/plotly/plotly/graph_objs/__init__.py @@ -267,9 +267,9 @@ if sys.version_info < (3, 7) or TYPE_CHECKING: try: import ipywidgets as _ipywidgets - from distutils.version import LooseVersion as _LooseVersion + from packaging.version import Version as _Version - if _LooseVersion(_ipywidgets.__version__) >= _LooseVersion("7.0.0"): + if _Version(_ipywidgets.__version__) >= _Version("7.0.0"): from ..graph_objs._figurewidget import FigureWidget else: raise ImportError() @@ -283,9 +283,9 @@ def __getattr__(import_name): if import_name == "FigureWidget": try: import ipywidgets - from distutils.version import LooseVersion + from packaging.version import Version - if LooseVersion(ipywidgets.__version__) >= LooseVersion("7.0.0"): + if Version(ipywidgets.__version__) >= Version("7.0.0"): from ..graph_objs._figurewidget import FigureWidget return FigureWidget diff --git a/packages/python/plotly/plotly/io/_renderers.py b/packages/python/plotly/plotly/io/_renderers.py index feea2776a03..3d0dd979c89 100644 --- a/packages/python/plotly/plotly/io/_renderers.py +++ b/packages/python/plotly/plotly/io/_renderers.py @@ -4,7 +4,7 @@ from copy import copy import os -from distutils.version import LooseVersion +from packaging.version import Version from plotly import optional_imports @@ -392,7 +392,7 @@ def show(fig, renderer=None, validate=True, **kwargs): "Mime type rendering requires ipython but it is not installed" ) - if not nbformat or LooseVersion(nbformat.__version__) < LooseVersion("4.2.0"): + if not nbformat or Version(nbformat.__version__) < Version("4.2.0"): raise ValueError( "Mime type rendering requires nbformat>=4.2.0 but it is not installed" ) diff --git a/packages/python/plotly/plotly/matplotlylib/mplexporter/renderers/base.py b/packages/python/plotly/plotly/matplotlylib/mplexporter/renderers/base.py index e4d6b90baef..46237342dcb 100644 --- a/packages/python/plotly/plotly/matplotlylib/mplexporter/renderers/base.py +++ b/packages/python/plotly/plotly/matplotlylib/mplexporter/renderers/base.py @@ -1,7 +1,7 @@ import warnings import itertools from contextlib import contextmanager -from distutils.version import LooseVersion +from packaging.version import Version import numpy as np import matplotlib as mpl @@ -199,7 +199,7 @@ def _iter_path_collection(paths, path_transforms, offsets, styles): # Before mpl 1.4.0, path_transform can be a false-y value, not a valid # transformation matrix. - if LooseVersion(mpl.__version__) < LooseVersion("1.4.0"): + if Version(mpl.__version__) < Version("1.4.0"): if path_transforms is None: path_transforms = [np.eye(3)] diff --git a/packages/python/plotly/plotly/matplotlylib/mplexporter/tests/test_basic.py b/packages/python/plotly/plotly/matplotlylib/mplexporter/tests/test_basic.py index a33834260b7..d96278fd8f4 100644 --- a/packages/python/plotly/plotly/matplotlylib/mplexporter/tests/test_basic.py +++ b/packages/python/plotly/plotly/matplotlylib/mplexporter/tests/test_basic.py @@ -1,8 +1,8 @@ import matplotlib import numpy as np -from distutils.version import LooseVersion import pytest from numpy.testing import assert_warns +from packaging.version import Version from ..exporter import Exporter from ..renderers import FakeRenderer, FullFakeRenderer @@ -189,7 +189,7 @@ def test_multiaxes(): def test_image(): # Test fails for matplotlib 1.5+ because the size of the image # generated by matplotlib has changed. - if LooseVersion(matplotlib.__version__) == LooseVersion("3.4.1"): + if Version(matplotlib.__version__) == Version("3.4.1"): image_size = 432 else: pytest.skip("Test fails for older matplotlib") diff --git a/packages/python/plotly/plotly/tests/test_core/test_figure_widget_backend/test_missing_ipywigets.py b/packages/python/plotly/plotly/tests/test_core/test_figure_widget_backend/test_missing_ipywigets.py index 79d1224f961..700947e6505 100644 --- a/packages/python/plotly/plotly/tests/test_core/test_figure_widget_backend/test_missing_ipywigets.py +++ b/packages/python/plotly/plotly/tests/test_core/test_figure_widget_backend/test_missing_ipywigets.py @@ -6,9 +6,9 @@ try: import ipywidgets as _ipywidgets - from distutils.version import LooseVersion as _LooseVersion + from packaging.version import Version as _Version - if _LooseVersion(_ipywidgets.__version__) >= _LooseVersion("7.0.0"): + if _Version(_ipywidgets.__version__) >= _Version("7.0.0"): missing_ipywidgets = False else: raise ImportError() diff --git a/packages/python/plotly/plotly/tests/test_orca/test_orca_server.py b/packages/python/plotly/plotly/tests/test_orca/test_orca_server.py index cd6a31653a5..0f736c803ca 100644 --- a/packages/python/plotly/plotly/tests/test_orca/test_orca_server.py +++ b/packages/python/plotly/plotly/tests/test_orca/test_orca_server.py @@ -2,7 +2,7 @@ import plotly.io as pio import subprocess import os -from distutils.version import LooseVersion +from packaging.version import Version import requests import time import psutil @@ -79,11 +79,11 @@ def test_orca_executable_path(): def test_orca_version_number(): assert pio.orca.status.version is None - expected_min = LooseVersion("1.1.0") - expected_max = LooseVersion("2.0.0") + expected_min = Version("1.1.0") + expected_max = Version("2.0.0") pio.orca.validate_executable() - version = LooseVersion(pio.orca.status.version) + version = Version(pio.orca.status.version) assert expected_min <= version assert version < expected_max diff --git a/packages/python/plotly/plotly/version.py b/packages/python/plotly/plotly/version.py index 0cdb9e89373..f186a5a44f2 100644 --- a/packages/python/plotly/plotly/version.py +++ b/packages/python/plotly/plotly/version.py @@ -13,8 +13,6 @@ def stable_semver(): '3.0.0rc11' -> '3.0.0' """ - from distutils.version import LooseVersion + from packaging.version import Version - version_components = LooseVersion(__version__).version - stable_ver_str = ".".join(str(s) for s in version_components[0:3]) - return stable_ver_str + return Version(__version__).base_version