changeset 9000:a5d15a7511a9 stable

lib: use packaging.version.Version instead of dropped distutils.version.StrictVersion distutils is dropped in Python 3.12 . Migrate to packaging as described on https://github.com/pypa/packaging/issues/520 .
author Mads Kiilerich <mads@kiilerich.com>
date Fri, 19 Jul 2024 23:19:34 +0200
parents ff6c3e285166
children 2cd418e377de
files kallithea/lib/utils2.py scripts/deps.py
diffstat 2 files changed, 5 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/kallithea/lib/utils2.py	Fri Jul 19 19:19:10 2024 +0200
+++ b/kallithea/lib/utils2.py	Fri Jul 19 23:19:34 2024 +0200
@@ -38,10 +38,10 @@
 import sys
 import time
 import urllib.parse
-from distutils.version import StrictVersion
 
 import bcrypt
 import urlobject
+from packaging.version import Version
 from sqlalchemy.engine import url as sa_url
 from sqlalchemy.exc import ArgumentError
 from tg import tmpl_context
@@ -494,7 +494,7 @@
     return False
 
 
-git_req_ver = StrictVersion('1.7.4')
+git_req_ver = Version('1.7.4')
 
 def check_git_version():
     """
@@ -525,7 +525,7 @@
     output = safe_str(stdout).strip()
     m = re.search(r"\d+.\d+.\d+", output)
     if m:
-        ver = StrictVersion(m.group(0))
+        ver = Version(m.group(0))
         log.debug('Git executable: "%s", version %s (parsed from: "%s")',
                   settings.GIT_EXECUTABLE_PATH, ver, output)
         if ver < git_req_ver:
@@ -538,7 +538,7 @@
             log.error("Terminating ...")
             sys.exit(1)
     else:
-        ver = StrictVersion('0.0.0')
+        ver = Version('0.0.0')
         log.warning('Error finding version number in "%s --version" stdout:\n%s',
                     settings.GIT_EXECUTABLE_PATH, output)
 
--- a/scripts/deps.py	Fri Jul 19 19:19:10 2024 +0200
+++ b/scripts/deps.py	Fri Jul 19 23:19:34 2024 +0200
@@ -128,6 +128,7 @@
 docs
 setup
 conftest
+packaging
 '''.split())
 
 normal_modules = set('''