From 7a230f03c4c472cbc3d1410db70cbdde33f7197e Mon Sep 17 00:00:00 2001 From: Jinzhe Zeng Date: Wed, 14 Sep 2022 03:42:00 -0400 Subject: [PATCH] Use packaging.version instead of distutils Version classes Resolves the following warning: /usr/local/lib/python3.10/dist-packages/horovod/tensorflow/elastic.py:28: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. --- horovod/tensorflow/elastic.py | 4 ++-- setup.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/horovod/tensorflow/elastic.py b/horovod/tensorflow/elastic.py index 7153216c4f..4bfd9f248a 100644 --- a/horovod/tensorflow/elastic.py +++ b/horovod/tensorflow/elastic.py @@ -13,7 +13,7 @@ # limitations under the License. # ============================================================================== -from distutils.version import LooseVersion +from packaging.version import parse import tensorflow as tf @@ -25,7 +25,7 @@ from horovod.tensorflow.mpi_ops import _executing_eagerly, init, rank, shutdown -_IS_TF2 = LooseVersion(tf.__version__) >= LooseVersion('2.0.0') +_IS_TF2 = parse(tf.__version__) >= parse('2.0.0') def run(func): diff --git a/setup.py b/setup.py index dca03780e0..24d3705f19 100644 --- a/setup.py +++ b/setup.py @@ -154,7 +154,7 @@ def build_extensions(self): # python packages required to use horovod in general -require_list = ['cloudpickle', 'psutil', 'pyyaml', 'dataclasses;python_version<"3.7"'] +require_list = ['cloudpickle', 'psutil', 'pyyaml', 'dataclasses;python_version<"3.7"', 'packaging'] # framework dependencies tensorflow_require_list = ['tensorflow']