-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
extras_require doesn't work unless extras are all-lowercase #4617
Comments
Thank you for filing this issue! I'll try to take a look at this soon. :) |
It’s decidedly a bug – just a bug introduced by a fix for a different bug. |
Sorry. I meant case insensitivity is a feature. But that's not the issue. You're right - it's a bug. |
IHMO this is a bug in wheel: pypa/wheel#252. |
This can't really be fixed in pip because it does not have access to the original "unsafe" list of extras (pkg_resources will return a list of canonicalized extras), and the case insensitivity is a feature (all uses of |
To work around this bug: pypa/pip#4617 Hat tip to Brad Brown for finding this. Uppercase worked when I was testing the package locally... sigh.
Tried this on pip 20.0.2: $ pip install 'django-rest-swagger[reST]==0.3.10' --target /tmp/foo
Collecting django-rest-swagger[reST]==0.3.10
Using cached django_rest_swagger-0.3.10-py2.py3-none-any.whl (212 kB)
Ignoring docutils: markers 'extra == "reST"' don't match your environment
Collecting Django>=1.8
Downloading Django-3.0.3-py3-none-any.whl (7.5 MB)
|████████████████████████████████| 7.5 MB 713 kB/s
Collecting djangorestframework>=2.3.8
Downloading djangorestframework-3.11.0-py3-none-any.whl (911 kB)
|████████████████████████████████| 911 kB 1.0 MB/s
Processing /Users/pradyunsg/Library/Caches/pip/wheels/e4/76/4d/a95b8dd7b452b69e8ed4f68b69e1b55e12c9c9624dd962b191/PyYAML-5.3-cp38-cp38-macosx_10_14_x86_64.whl
Collecting asgiref~=3.2
Downloading asgiref-3.2.3-py2.py3-none-any.whl (18 kB)
Collecting pytz
Using cached pytz-2019.3-py2.py3-none-any.whl (509 kB)
Collecting sqlparse>=0.2.2
Downloading sqlparse-0.3.1-py2.py3-none-any.whl (40 kB)
|████████████████████████████████| 40 kB 930 kB/s
Installing collected packages: asgiref, pytz, sqlparse, Django, djangorestframework, PyYAML, django-rest-swagger
Successfully installed Django-3.0.3 PyYAML-5.3 asgiref-3.2.3 django-rest-swagger-0.3.10 djangorestframework-3.11.0 pytz-2019.3 sqlparse-0.3.1 |
Fixed by #12002 which landed in pip v23.3.
|
Description:
I tried to install
django-rest-swagger[reST]==0.3.10
, and it fails to install docutils:django-rest-swagger has this in their setup.py:
Stepping through the code, eventually
"reST"
is compared to"rest"
, and the error is produced.Seems like extras_require keys have to be lowercase in order to work. No variation of "rest", "REST", "reST", etc, on the command line makes it succeed.
The text was updated successfully, but these errors were encountered: