1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
Author: Nilesh Patra
Last-Update: 2023-12-03
Description: Replace LooseVersion usage with packaging.version.parse
Bug-Debian: https://bugs.debian.org/1056234
--- a/circlator/program.py
+++ b/circlator/program.py
@@ -2,7 +2,7 @@
import os
import re
import subprocess
-from distutils.version import LooseVersion
+from packaging.version import parse
from circlator import common
@@ -79,14 +79,14 @@
v = self.version
if v is None:
return None
- return LooseVersion(v) >= LooseVersion(min_version)
+ return parse(v) >= parse(min_version)
def version_at_most(self, max_version):
v = self.version
if v is None:
return None
- return LooseVersion(v) <= LooseVersion(max_version)
+ return parse(v) <= parse(max_version)
def exe(self):
--- a/circlator/start_fixer.py
+++ b/circlator/start_fixer.py
@@ -2,7 +2,7 @@
import shutil
import copy
import tempfile
-from distutils.version import LooseVersion
+from packaging.version import parse
import pyfastaq
import pymummer
import circlator
@@ -180,7 +180,7 @@
if (total_contig_length < 20000):
# prodigal needs -p meta option for sequences less than 20000
# annoyingly newer version of prodigal has different -p option!
- if LooseVersion(prodigal.version) >= LooseVersion('3.0'):
+ if parse(prodigal.version) >= parse('3.0'):
p_option = "-p anon"
else:
p_option = "-p meta"
--- a/setup.py
+++ b/setup.py
@@ -21,6 +21,7 @@
'pyfastaq >= 3.12.1',
'pysam >= 0.8.1',
'pymummer>=0.9.0',
+ 'packaging'
],
license='GPLv3',
classifiers=[
|