Commit 46ad8072 by Sébastien Eustace

Fix markers evaluation for python_version with precision < 3

parent 25156790
import os import os
import re import re
from poetry.semver import Version
from poetry.version.requirements import Requirement from poetry.version.requirements import Requirement
from .dependency import Dependency from .dependency import Dependency
...@@ -105,6 +106,22 @@ def dependency_from_pep_508(name): ...@@ -105,6 +106,22 @@ def dependency_from_pep_508(name):
op = "" op = ""
elif op == "!=": elif op == "!=":
version += ".*" version += ".*"
elif op in ("<=", ">"):
parsed_version = Version.parse(version)
if parsed_version.precision == 1:
if op == "<=":
op = "<"
version = parsed_version.next_major.text
elif op == ">":
op = ">="
version = parsed_version.next_major.text
elif parsed_version.precision == 2:
if op == "<=":
op = "<"
version = parsed_version.next_minor.text
elif op == ">":
op = ">="
version = parsed_version.next_minor.text
elif op in ("in", "not in"): elif op in ("in", "not in"):
versions = [] versions = []
for v in re.split("[ ,]+", version): for v in re.split("[ ,]+", version):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment