Linked Questions

Popular Questions

Why does pip skip bracket package in requirements.txt?

Asked by At

I have a requirements.txt as follows

boxsdk
boxsdk[jwt]

If I run pip install -r requirements.txt, then only boxsdk gets installed, and not boxsdk[jwt]

# cat requirements.txt 
boxsdk
boxsdk[jwt]
# pip -q install -r requirements.txt 
# python -c "import boxsdk.auth.jwt_auth"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/local/lib/python3.7/site-packages/boxsdk/auth/jwt_auth.py", line 10, in <module>
    from cryptography.hazmat.backends import default_backend
ModuleNotFoundError: No module named 'cryptography'

But if I remove the first line so that only boxsdk[jwt] is listed in requirements.txt, it gets installed properly

# cat requirements.txt 
boxsdk[jwt]
# pip -q install -r requirements.txt 
# python -c "import boxsdk.auth.jwt_auth"
#

Full pip output can be seen here: https://gist.github.com/davidkazuhiro/989328734e128628dd53ccab741f3e45

Why is boxsdk[jwt] getting skipped in the former case?

Related Questions