MCPcopy Create free account
hub / github.com/aboutcode-org/vulnerablecode / parse_constraint

Function parse_constraint

vulntotal/vulntotal_utils.py:74–90  ·  view source on GitHub ↗

Return operator and version from a constraint For example: >>> assert parse_constraint(">=7.0.0") == ('>=', '7.0.0') >>> assert parse_constraint("=7.0.0") == ('=', '7.0.0') >>> assert parse_constraint("[3.0.0") == ('[', '3.0.0') >>> assert parse_constraint("3.1.25]") == (']'

(constraint)

Source from the content-addressed store, hash-verified

72
73
74def parse_constraint(constraint):
75 """
76 Return operator and version from a constraint
77 For example:
78 >>> assert parse_constraint(">=7.0.0") == ('>=', '7.0.0')
79 >>> assert parse_constraint("=7.0.0") == ('=', '7.0.0')
80 >>> assert parse_constraint("[3.0.0") == ('[', '3.0.0')
81 >>> assert parse_constraint("3.1.25]") == (']', '3.1.25')
82 """
83 if constraint.startswith(("<=", ">=", "==", "!=")):
84 return constraint[:2], constraint[2:]
85
86 if constraint.startswith(("<", ">", "=", "[", "(")):
87 return constraint[0], constraint[1:]
88
89 if constraint.endswith(("]", ")")):
90 return constraint[-1], constraint[:-1]
91
92
93def github_constraints_satisfied(github_constraint, version):

Callers 3

Calls

no outgoing calls

Tested by

no test coverage detected