summaryrefslogtreecommitdiff
path: root/setuptools/_distutils/versionpredicate.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2022-06-12 18:05:03 -0400
committerJason R. Coombs <jaraco@jaraco.com>2022-06-12 18:05:03 -0400
commit423f1829b5e8b2213492e4f023f26a7c26f0b287 (patch)
tree14a73d41f42c5d3a3effce1dd47ee3af3c07d689 /setuptools/_distutils/versionpredicate.py
parent48adabe567806c808fdede5afc8c57f68c4f9755 (diff)
parent75ed79d1ad1bfbb30dd684cd3cc55cb1139dc31b (diff)
downloadpython-setuptools-git-423f1829b5e8b2213492e4f023f26a7c26f0b287.tar.gz
Merge pypa/distutils@75ed79d
Diffstat (limited to 'setuptools/_distutils/versionpredicate.py')
-rw-r--r--setuptools/_distutils/versionpredicate.py28
1 files changed, 17 insertions, 11 deletions
diff --git a/setuptools/_distutils/versionpredicate.py b/setuptools/_distutils/versionpredicate.py
index 55f25d91..6ea1192d 100644
--- a/setuptools/_distutils/versionpredicate.py
+++ b/setuptools/_distutils/versionpredicate.py
@@ -5,11 +5,10 @@ import distutils.version
import operator
-re_validPackage = re.compile(r"(?i)^\s*([a-z_]\w*(?:\.[a-z_]\w*)*)(.*)",
- re.ASCII)
+re_validPackage = re.compile(r"(?i)^\s*([a-z_]\w*(?:\.[a-z_]\w*)*)(.*)", re.ASCII)
# (package) (rest)
-re_paren = re.compile(r"^\s*\((.*)\)\s*$") # (list) inside of parentheses
+re_paren = re.compile(r"^\s*\((.*)\)\s*$") # (list) inside of parentheses
re_splitComparison = re.compile(r"^\s*(<=|>=|<|>|!=|==)\s*([^\s,]+)\s*$")
# (comp) (version)
@@ -27,8 +26,16 @@ def splitUp(pred):
other = distutils.version.StrictVersion(verStr)
return (comp, other)
-compmap = {"<": operator.lt, "<=": operator.le, "==": operator.eq,
- ">": operator.gt, ">=": operator.ge, "!=": operator.ne}
+
+compmap = {
+ "<": operator.lt,
+ "<=": operator.le,
+ "==": operator.eq,
+ ">": operator.gt,
+ ">=": operator.ge,
+ "!=": operator.ne,
+}
+
class VersionPredicate:
"""Parse and test package version predicates.
@@ -96,8 +103,7 @@ class VersionPredicate:
"""
def __init__(self, versionPredicateStr):
- """Parse a version predicate string.
- """
+ """Parse a version predicate string."""
# Fields:
# name: package name
# pred: list of (comparison string, StrictVersion)
@@ -117,8 +123,7 @@ class VersionPredicate:
str = match.groups()[0]
self.pred = [splitUp(aPred) for aPred in str.split(",")]
if not self.pred:
- raise ValueError("empty parenthesized list in %r"
- % versionPredicateStr)
+ raise ValueError("empty parenthesized list in %r" % versionPredicateStr)
else:
self.pred = []
@@ -142,6 +147,7 @@ class VersionPredicate:
_provision_rx = None
+
def split_provision(value):
"""Return the name and optional version number of a provision.
@@ -156,8 +162,8 @@ def split_provision(value):
global _provision_rx
if _provision_rx is None:
_provision_rx = re.compile(
- r"([a-zA-Z_]\w*(?:\.[a-zA-Z_]\w*)*)(?:\s*\(\s*([^)\s]+)\s*\))?$",
- re.ASCII)
+ r"([a-zA-Z_]\w*(?:\.[a-zA-Z_]\w*)*)(?:\s*\(\s*([^)\s]+)\s*\))?$", re.ASCII
+ )
value = value.strip()
m = _provision_rx.match(value)
if not m: