2
0
Эх сурвалжийг харах

get rid of distutils, use packaging

Thomas Waldmann 4 жил өмнө
parent
commit
65ea375968
3 өөрчлөгдсөн 7 нэмэгдсэн , 5 устгасан
  1. 1 0
      setup.py
  2. 3 2
      src/borg/__init__.py
  3. 3 3
      src/borg/xattr.py

+ 1 - 0
setup.py

@@ -70,6 +70,7 @@ install_requires = [
     # Please note:
     # using any other version is not supported by borg development and
     # any feedback related to issues caused by this will be ignored.
+    'packaging',
 ]
 
 # note for package maintainers: if you package borgbackup for distribution,

+ 3 - 2
src/borg/__init__.py

@@ -1,11 +1,12 @@
-from distutils.version import LooseVersion
+from packaging.version import parse as parse_version
 
 # IMPORTANT keep imports from borg here to a minimum because our testsuite depends on
 # being able to import borg.constants and then monkey patching borg.constants.PBKDF2_ITERATIONS
 from ._version import version as __version__
 
 
-__version_tuple__ = tuple(LooseVersion(__version__).version[:3])
+_v = parse_version(__version__)
+__version_tuple__ = _v._version.release
 
 # assert that all semver components are integers
 # this is mainly to show errors when people repackage poorly

+ 3 - 3
src/borg/xattr.py

@@ -7,7 +7,7 @@ import subprocess
 import sys
 import tempfile
 
-from distutils.version import LooseVersion
+from packaging.version import parse as parse_version
 
 from .helpers import prepare_subprocess_env
 
@@ -29,8 +29,8 @@ if sys.platform.startswith('linux'):
         if preload.startswith("libfakeroot"):
             env = prepare_subprocess_env(system=True)
             fakeroot_output = subprocess.check_output(['fakeroot', '-v'], env=env)
-            fakeroot_version = LooseVersion(fakeroot_output.decode('ascii').split()[-1])
-            if fakeroot_version >= LooseVersion("1.20.2"):
+            fakeroot_version = parse_version(fakeroot_output.decode('ascii').split()[-1])
+            if fakeroot_version >= parse_version("1.20.2"):
                 # 1.20.2 has been confirmed to have xattr support
                 # 1.18.2 has been confirmed not to have xattr support
                 # Versions in-between are unknown