diff --git a/.ci/scripts/calc_constraints.py b/.ci/scripts/calc_constraints.py index 993eb205120..29c8dd3f172 100755 --- a/.ci/scripts/calc_constraints.py +++ b/.ci/scripts/calc_constraints.py @@ -53,6 +53,9 @@ def to_upper_bound(req): if requirement.name == "pulpcore": # An exception to allow for pulpcore deprecation policy. return fetch_pulpcore_upper_bound(requirement) + # skip requirement with environment scopes. E.g 'foo==1.0.0;python_version>=3.9' + if requirement.marker: + return f"# ENVIRONMENT IS UNTRACKABLE: {req}" for spec in requirement.specifier: if spec.operator == "~=": return f"# NO BETTER CONSTRAINT: {req}" diff --git a/requirements.txt b/requirements.txt index 98b076743e8..462dfbb4545 100644 --- a/requirements.txt +++ b/requirements.txt @@ -22,6 +22,8 @@ importlib-metadata>=6.0.1,<=6.0.1 # Pinned to fix opentelemetry dependency solv jinja2>=3.1,<=3.1.6 json_stream>=2.3.2,<2.4 jq>=1.6.0,<1.7.0 +# pycares is only a transitive dependency, but there is a combination of versions that expresses a bug. +pycares<4.9;python_version<'3.12' # pycares==4.9 + aiodns==3.2.0 + python<3.12 = trouble PyOpenSSL<25.0 opentelemetry-distro[otlp]>=0.38b0,<=0.44b0 opentelemetry-exporter-otlp-proto-http>=1.17.0,<=1.23.0