diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2023-02-14 05:47:43 -0500 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2023-02-14 06:59:51 -0500 |
commit | 7887212bda71bd2e3181bd692d2f521428bbb6c0 (patch) | |
tree | 613aac9c026538b78bbcd6843ba877db52d382f9 /requirements/pins.pip | |
parent | 026d924e6d9449c632b1fec0c1f82f4f867e9724 (diff) | |
download | python-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.pip | 5 |
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 |