Skip to content

Commit f7391b7

Browse files
authored
Using packaging.version instead of distutils (#312)
Co-authored-by: Jay Qi <[email protected]>
1 parent 8c2e707 commit f7391b7

File tree

5 files changed

+25
-24
lines changed

5 files changed

+25
-24
lines changed

setup.cfg

+1
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ setup_requires =
3838
install_requires =
3939
decopatch
4040
makefun>=1.9.5
41+
packaging
4142
# note: pytest, too :)
4243
functools32;python_version<'3.2'
4344
# note: do not use double quotes in these, this triggers a weird bug in PyCharm in debug mode only

src/pytest_cases/common_pytest_marks.py

+17-17
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import itertools
66

77
import warnings
8-
from distutils.version import LooseVersion
8+
from packaging.version import Version
99

1010
try: # python 3.3+
1111
from inspect import signature
@@ -27,22 +27,22 @@
2727
from .common_mini_six import string_types
2828

2929

30-
PYTEST_VERSION = LooseVersion(pytest.__version__)
31-
PYTEST3_OR_GREATER = PYTEST_VERSION >= LooseVersion('3.0.0')
32-
PYTEST32_OR_GREATER = PYTEST_VERSION >= LooseVersion('3.2.0')
33-
PYTEST33_OR_GREATER = PYTEST_VERSION >= LooseVersion('3.3.0')
34-
PYTEST34_OR_GREATER = PYTEST_VERSION >= LooseVersion('3.4.0')
35-
PYTEST35_OR_GREATER = PYTEST_VERSION >= LooseVersion('3.5.0')
36-
PYTEST361_36X = LooseVersion('3.6.0') < PYTEST_VERSION < LooseVersion('3.7.0')
37-
PYTEST37_OR_GREATER = PYTEST_VERSION >= LooseVersion('3.7.0')
38-
PYTEST38_OR_GREATER = PYTEST_VERSION >= LooseVersion('3.8.0')
39-
PYTEST46_OR_GREATER = PYTEST_VERSION >= LooseVersion('4.6.0')
40-
PYTEST53_OR_GREATER = PYTEST_VERSION >= LooseVersion('5.3.0')
41-
PYTEST54_OR_GREATER = PYTEST_VERSION >= LooseVersion('5.4.0')
42-
PYTEST421_OR_GREATER = PYTEST_VERSION >= LooseVersion('4.2.1')
43-
PYTEST6_OR_GREATER = PYTEST_VERSION >= LooseVersion('6.0.0')
44-
PYTEST7_OR_GREATER = PYTEST_VERSION >= LooseVersion('7.0.0')
45-
PYTEST71_OR_GREATER = PYTEST_VERSION >= LooseVersion('7.1.0')
30+
PYTEST_VERSION = Version(pytest.__version__)
31+
PYTEST3_OR_GREATER = PYTEST_VERSION >= Version('3.0.0')
32+
PYTEST32_OR_GREATER = PYTEST_VERSION >= Version('3.2.0')
33+
PYTEST33_OR_GREATER = PYTEST_VERSION >= Version('3.3.0')
34+
PYTEST34_OR_GREATER = PYTEST_VERSION >= Version('3.4.0')
35+
PYTEST35_OR_GREATER = PYTEST_VERSION >= Version('3.5.0')
36+
PYTEST361_36X = Version('3.6.0') < PYTEST_VERSION < Version('3.7.0')
37+
PYTEST37_OR_GREATER = PYTEST_VERSION >= Version('3.7.0')
38+
PYTEST38_OR_GREATER = PYTEST_VERSION >= Version('3.8.0')
39+
PYTEST46_OR_GREATER = PYTEST_VERSION >= Version('4.6.0')
40+
PYTEST53_OR_GREATER = PYTEST_VERSION >= Version('5.3.0')
41+
PYTEST54_OR_GREATER = PYTEST_VERSION >= Version('5.4.0')
42+
PYTEST421_OR_GREATER = PYTEST_VERSION >= Version('4.2.1')
43+
PYTEST6_OR_GREATER = PYTEST_VERSION >= Version('6.0.0')
44+
PYTEST7_OR_GREATER = PYTEST_VERSION >= Version('7.0.0')
45+
PYTEST71_OR_GREATER = PYTEST_VERSION >= Version('7.1.0')
4646

4747

4848
def get_param_argnames_as_list(argnames):

src/pytest_cases/plugin.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -572,7 +572,7 @@ def _update_fixture_defs(self):
572572
all_fixture_defs = self.tree.get_all_fixture_defs(drop_fake_fixtures=False, try_to_sort=True)
573573

574574
# # also sort all partitions (note that we cannot rely on the order in all_fixture_defs when scopes are same!)
575-
# if LooseVersion(pytest.__version__) >= LooseVersion('3.5.0'):
575+
# if Version(pytest.__version__) >= Version('3.5.0'):
576576
# f_scope = get_pytest_function_scopeval()
577577
# for p in self.partitions:
578578
# def sort_by_scope2(fixture_name): # noqa

tests/cases/issues/test_issue_242.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import pytest
2-
from distutils.version import LooseVersion
2+
from packaging.version import Version
33

44
import sys
55

@@ -9,8 +9,8 @@
99
from functools import partial
1010

1111

12-
PYTEST_VERSION = LooseVersion(pytest.__version__)
13-
PYTEST3_OR_GREATER = PYTEST_VERSION >= LooseVersion('3.0.0')
12+
PYTEST_VERSION = Version(pytest.__version__)
13+
PYTEST3_OR_GREATER = PYTEST_VERSION >= Version('3.0.0')
1414
PY3 = sys.version_info >= (3,)
1515

1616

tests/cases/issues/test_issue_246.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
from distutils.version import LooseVersion
1+
from packaging.version import Version
22

33
import pytest
44
from pytest_cases import parametrize_with_cases
55

6-
PYTEST_VERSION = LooseVersion(pytest.__version__)
7-
PYTEST3_OR_GREATER = PYTEST_VERSION >= LooseVersion('3.0.0')
6+
PYTEST_VERSION = Version(pytest.__version__)
7+
PYTEST3_OR_GREATER = PYTEST_VERSION >= Version('3.0.0')
88

99
if PYTEST3_OR_GREATER:
1010
@pytest.mark.foo

0 commit comments

Comments
 (0)