diff options
author | Richard Ipsum <richard.ipsum@codethink.co.uk> | 2014-11-10 16:45:05 +0000 |
---|---|---|
committer | Richard Ipsum <richard.ipsum@codethink.co.uk> | 2014-11-10 16:45:05 +0000 |
commit | f219558df5f16477b57e487bc8264860a3c1bef6 (patch) | |
tree | 618e40ff97c1b334cb49a1c2e28eeb031244e4d1 /exts/pip_find_deps.py | |
parent | ff8e71c21d688605e2a981bc9a7ed3aa6c12aebd (diff) | |
download | import-f219558df5f16477b57e487bc8264860a3c1bef6.tar.gz |
Add stuff for <= and >=
Diffstat (limited to 'exts/pip_find_deps.py')
-rwxr-xr-x | exts/pip_find_deps.py | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/exts/pip_find_deps.py b/exts/pip_find_deps.py index 30b0c68..2c457f0 100755 --- a/exts/pip_find_deps.py +++ b/exts/pip_find_deps.py @@ -182,32 +182,27 @@ def check_eqs(dep, version): elif version < dep.greater_than: dep.conflicts.append((dep.greater_than.spec, ('==', version))) -def check_lt(dep, version): +def check_lt(dep, version, inclusive=False): if dep.is_unconstrained(): - dep.less_than = LowerBound(version, inclusive=False) + dep.less_than = LowerBound(version, inclusive) elif dep.is_unbounded(): if dep.absolute >= version: dep.conflicts.append((('==', dep.absolute), ('<', version))) elif dep.greater_than >= version: dep.conflicts.append((dep.greater_than.spec, ('<', version))) else: - dep.less_than = LowerBound(version, inclusive=False) + dep.less_than = LowerBound(version, inclusive) -def check_lt_eq(dep, version): +def check_gt(dep, version, inclusive=False): if dep.is_unconstrained(): - dep.less_than = version - - -def check_gt(dep, version): - if dep.is_unconstrained(): - dep.greater_than = UpperBound(version, inclusive=False) + dep.greater_than = UpperBound(version, inclusive) elif dep.is_unbounded(): if dep.absolute <= version: dep.conflicts.append((('==', dep.absolute), ('>', version))) elif dep.less_than <= version: dep.conflicts.append((dep.less_than.spec, ('>', version))) else: - dep.greater_than = UpperBound(version, inclusive=False) + dep.greater_than = UpperBound(version, inclusive) def resolve_version_constraints(requirements): build_deps = {} @@ -237,9 +232,13 @@ def resolve_version_constraints(requirements): dep.conflicts.append((('==', dep.absolute), ('!=', version))) elif op == '<': - check_lt(dep, version) + check_lt(dep, version, inclusive=False) elif op == '>': - check_gt(dep, version) + check_gt(dep, version, inclusive=False) + elif op == '<=': + check_lt(dep, version, inclusive=True) + elif op == '>=': + check_gt(dep, version, inclusive=True) # Resolve versions #client = xmlrpclib.ServerProxy(PYPI_URL) |