Open khink opened 4 months ago
This is a bug in the project, nothing pip can do about a broken package
Hi, first off: thanks for taking the time to look into this!
pip install django-geojson==4.1.0
just works. How can i show the django-geojson maintainers what is wrong?
Edit: The error above seems to indicate it fails in the python setup.py egg_info
step, but the following just works:
git clone git@github.com:makinacorpus/django-geojson.git
cd django-geojson/
git checkout 4.1.0
python3.11 -m venv env
. env/bin/activate
python setup.py egg_info
Not sure how to reproduce the error.
I can't reproduce with this info yet, but can you ensure you're using the latest setuptools in the venv with the problem?
Thanks for thinking of that.
Turns out it was a recent setuptools: 71.1.0. I just upgraded it and tried again:
$ pip install --upgrade setuptools
Requirement already satisfied: setuptools in ./env/lib/python3.9/site-packages (71.1.0)
Collecting setuptools
Downloading setuptools-72.1.0-py3-none-any.whl.metadata (6.6 kB)
Downloading setuptools-72.1.0-py3-none-any.whl (2.3 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.3/2.3 MB 2.6 MB/s eta 0:00:00
Installing collected packages: setuptools
Attempting uninstall: setuptools
Found existing installation: setuptools 71.1.0
Uninstalling setuptools-71.1.0:
Successfully uninstalled setuptools-71.1.0
Successfully installed setuptools-72.1.0
However, same result.
I created this repo to reproduce it: https://github.com/khink/pip-tools-issue-2118
Apparently the bug only surfaces in combination with these other requirements.
Great! OK, so I can confirm that this reproduces here, and it's failing on processing django-geojson
1.2.0, and can be worked around by making the requirement django-geojson>1.2.0
. And also that a plain:
$ pip install django-geojson==1.2.0
fails the same way. It looks like that version depends on an uninstallable version of geojson
.
pip-tools should probably just reject a failed version like this and keep trying others.
Not sure if this is an issue with pip-tools or (django-)geojson, but ill start asking here:
In our
base.in
we havedjango-geojson
.Today while running pip-compile i ran into this error:
Pinning
django-geojson==4.0.0
(the currently used version) fixes it.This might be due to a new django-geojson release (https://pypi.org/project/django-geojson/4.1.0/), but I can't see anything wrong with its setup.py (https://github.com/makinacorpus/django-geojson/blob/4.1.0/setup.py)
The stacktrace above lists
setup(name = "geojson",
which i think is a string parsing error, as geojson is not a dependency of django-geojson, nor has it been.Environment Versions
Steps to replicate
Edit: Easy reproduction steps at https://github.com/khink/pip-tools-issue-2118
In short: Run pip-compile on this requirements file