summaryrefslogtreecommitdiff
path: root/requirements/pins.pip
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2023-02-14 05:47:43 -0500
committerNed Batchelder <ned@nedbatchelder.com>2023-02-14 06:59:51 -0500
commit7887212bda71bd2e3181bd692d2f521428bbb6c0 (patch)
tree613aac9c026538b78bbcd6843ba877db52d382f9 /requirements/pins.pip
parent026d924e6d9449c632b1fec0c1f82f4f867e9724 (diff)
downloadpython-coveragepy-git-7887212bda71bd2e3181bd692d2f521428bbb6c0.tar.gz
build: pin setuptools to avoid their version-checking bug
https://github.com/pypa/packaging/issues/678 Nightly builds were failing because newer setuptools didn't like the Python version number: ``` % .tox/anypy/bin/python -c "import pkg_resources as p; p.load_entry_point('coverage', 'console_scripts', 'coverage')()" Traceback (most recent call last): File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/__init__.py", line 2711, in _dep_map return self.__dep_map ^^^^^^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/__init__.py", line 2826, in __getattr__ raise AttributeError(attr) AttributeError: _Distribution__dep_map During handling of the above exception, another exception occurred: Traceback (most recent call last): File "<string>", line 1, in <module> File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/__init__.py", line 522, in load_entry_point return get_distribution(dist).load_entry_point(group, name) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/__init__.py", line 2855, in load_entry_point return ep.load() ^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/__init__.py", line 2467, in load self.require(*args, **kwargs) File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/__init__.py", line 2489, in require reqs = self.dist.requires(self.extras) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/__init__.py", line 2746, in requires dm = self._dep_map ^^^^^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/__init__.py", line 2713, in _dep_map self.__dep_map = self._filter_extras(self._build_dep_map()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/__init__.py", line 2728, in _filter_extras invalid_marker(marker) or not evaluate_marker(marker) ^^^^^^^^^^^^^^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/__init__.py", line 1415, in invalid_marker evaluate_marker(text) File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/__init__.py", line 1433, in evaluate_marker return marker.evaluate() ^^^^^^^^^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/_vendor/packaging/markers.py", line 245, in evaluate return _evaluate_markers(self._markers, current_environment) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/_vendor/packaging/markers.py", line 151, in _evaluate_markers groups[-1].append(_eval_op(lhs_value, op, rhs_value)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/_vendor/packaging/markers.py", line 109, in _eval_op return spec.contains(lhs, prereleases=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/_vendor/packaging/specifiers.py", line 565, in contains normalized_item = _coerce_version(item) ^^^^^^^^^^^^^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/_vendor/packaging/specifiers.py", line 36, in _coerce_version version = Version(version) ^^^^^^^^^^^^^^^^ File "/Users/nedbatchelder/coverage/trunk/.tox/anypy/lib/python3.12/site-packages/pkg_resources/_vendor/packaging/version.py", line 197, in __init__ raise InvalidVersion(f"Invalid version: '{version}'") pkg_resources.extern.packaging.version.InvalidVersion: Invalid version: '3.12.0a5+' ```
Diffstat (limited to 'requirements/pins.pip')
-rw-r--r--requirements/pins.pip5
1 files changed, 5 insertions, 0 deletions
diff --git a/requirements/pins.pip b/requirements/pins.pip
index 4ecea426..95db5881 100644
--- a/requirements/pins.pip
+++ b/requirements/pins.pip
@@ -6,3 +6,8 @@
# docutils has been going through some turmoil. Different packages require it,
# but have different pins. This seems to satisfy them all:
#docutils>=0.17,<0.18
+
+# Setuptools became stricter about version number syntax. But it shouldn't be
+# checking the Python version like that, should it?
+# https://github.com/pypa/packaging/issues/678
+setuptools<66.0.0