python-social-auth / social-core

Python Social Auth - Core
BSD 3-Clause "New" or "Revised" License
837 stars 543 forks source link

Installing the "openidconnect" extra fails #895

Open mikkonie opened 3 months ago

mikkonie commented 3 months ago

I am attempting to set up OpenIDC auth for my Django project using python-social-auth and social-auth-app-django.

I've followed the instructions found here in the installation docs, which instruct me to install the openidconnect extras for OpenIDC authentication to work:

pip install "social-auth-core[openidconnect]"

Expected behaviour

The packages should be installed without errors or warnings.

Actual behaviour

When attempting to install the extras, I get the following warning with nothing getting installed:

social-auth-core 4.5.3 does not provide the extra 'openidconnect'

What are the steps to reproduce this issue?

Input clear steps to reproduce the issue for a maintainer.

  1. Create virtual env on Python 3.11
  2. Run pip install social-auth-app-django==5.4.0
  3. Run pip install "social-auth-core[openidconnect]"

Any logs, error output, etc?

Full log of the pip installs:

(venv) $ pip install social-auth-app-django==5.4.0
Collecting social-auth-app-django==5.4.0
  Using cached social_auth_app_django-5.4.0-py3-none-any.whl.metadata (3.2 kB)
Requirement already satisfied: Django>=3.2 in /x/venv/lib/python3.11/site-packages (from social-auth-app-django==5.4.0) (4.2.11)
Collecting social-auth-core>=4.4.1 (from social-auth-app-django==5.4.0)
  Using cached social_auth_core-4.5.3-py3-none-any.whl.metadata (4.1 kB)
Requirement already satisfied: asgiref<4,>=3.6.0 in /x/venv/lib/python3.11/site-packages (from Django>=3.2->social-auth-app-django==5.4.0) (3.7.2)
Requirement already satisfied: sqlparse>=0.3.1 in /x/venv/lib/python3.11/site-packages (from Django>=3.2->social-auth-app-django==5.4.0) (0.4.4)
Requirement already satisfied: requests>=2.9.1 in /x/venv/lib/python3.11/site-packages (from social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (2.31.0)
Requirement already satisfied: oauthlib>=1.0.3 in /x/venv/lib/python3.11/site-packages (from social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (3.2.2)
Requirement already satisfied: requests-oauthlib>=0.6.1 in /x/venv/lib/python3.11/site-packages (from social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (1.4.0)
Requirement already satisfied: PyJWT>=2.7.0 in /x/venv/lib/python3.11/site-packages (from social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (2.8.0)
Requirement already satisfied: cryptography>=1.4 in /x/venv/lib/python3.11/site-packages (from social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (41.0.7)
Requirement already satisfied: defusedxml>=0.5.0rc1 in /x/venv/lib/python3.11/site-packages (from social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (0.7.1)
Requirement already satisfied: python3-openid>=3.0.10 in /x/venv/lib/python3.11/site-packages (from social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (3.2.0)
Requirement already satisfied: cffi>=1.12 in /x/venv/lib/python3.11/site-packages (from cryptography>=1.4->social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (1.16.0)
Requirement already satisfied: charset-normalizer<4,>=2 in /x/venv/lib/python3.11/site-packages (from requests>=2.9.1->social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (3.3.2)
Requirement already satisfied: idna<4,>=2.5 in /x/venv/lib/python3.11/site-packages (from requests>=2.9.1->social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (3.6)
Requirement already satisfied: urllib3<3,>=1.21.1 in /x/venv/lib/python3.11/site-packages (from requests>=2.9.1->social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (1.26.18)
Requirement already satisfied: certifi>=2017.4.17 in /x/venv/lib/python3.11/site-packages (from requests>=2.9.1->social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (2023.11.17)
Requirement already satisfied: pycparser in /x/venv/lib/python3.11/site-packages (from cffi>=1.12->cryptography>=1.4->social-auth-core>=4.4.1->social-auth-app-django==5.4.0) (2.21)
Using cached social_auth_app_django-5.4.0-py3-none-any.whl (26 kB)
Using cached social_auth_core-4.5.3-py3-none-any.whl (410 kB)
Installing collected packages: social-auth-core, social-auth-app-django
Successfully installed social-auth-app-django-5.4.0 social-auth-core-4.5.3
(venv) $ pip install "social-auth-core[openidconnect]"
Requirement already satisfied: social-auth-core[openidconnect] in /x/venv/lib/python3.11/site-packages (4.5.3)
WARNING: social-auth-core 4.5.3 does not provide the extra 'openidconnect'
Requirement already satisfied: requests>=2.9.1 in /x/venv/lib/python3.11/site-packages (from social-auth-core[openidconnect]) (2.31.0)
Requirement already satisfied: oauthlib>=1.0.3 in /x/venv/lib/python3.11/site-packages (from social-auth-core[openidconnect]) (3.2.2)
Requirement already satisfied: requests-oauthlib>=0.6.1 in /x/venv/lib/python3.11/site-packages (from social-auth-core[openidconnect]) (1.4.0)
Requirement already satisfied: PyJWT>=2.7.0 in /x/venv/lib/python3.11/site-packages (from social-auth-core[openidconnect]) (2.8.0)
Requirement already satisfied: cryptography>=1.4 in /x/venv/lib/python3.11/site-packages (from social-auth-core[openidconnect]) (41.0.7)
Requirement already satisfied: defusedxml>=0.5.0rc1 in /x/venv/lib/python3.11/site-packages (from social-auth-core[openidconnect]) (0.7.1)
Requirement already satisfied: python3-openid>=3.0.10 in /x/venv/lib/python3.11/site-packages (from social-auth-core[openidconnect]) (3.2.0)
Requirement already satisfied: cffi>=1.12 in /x/venv/lib/python3.11/site-packages (from cryptography>=1.4->social-auth-core[openidconnect]) (1.16.0)
Requirement already satisfied: charset-normalizer<4,>=2 in /x/venv/lib/python3.11/site-packages (from requests>=2.9.1->social-auth-core[openidconnect]) (3.3.2)
Requirement already satisfied: idna<4,>=2.5 in /x/venv/lib/python3.11/site-packages (from requests>=2.9.1->social-auth-core[openidconnect]) (3.6)
Requirement already satisfied: urllib3<3,>=1.21.1 in /x/venv/lib/python3.11/site-packages (from requests>=2.9.1->social-auth-core[openidconnect]) (1.26.18)
Requirement already satisfied: certifi>=2017.4.17 in /x/venv/lib/python3.11/site-packages (from requests>=2.9.1->social-auth-core[openidconnect]) (2023.11.17)
Requirement already satisfied: pycparser in /x/venv/lib/python3.11/site-packages (from cffi>=1.12->cryptography>=1.4->social-auth-core[openidconnect]) (2.21)

Any other comments?

I haven't ventured beyond the install failing so I'm not sure if this is just a case of outdated documentation, or if using OpenID Connect in fact fails with this extra install not working. I thought I should raise the issue in any case.

nijel commented 3 months ago

There are no extras needed for that since https://github.com/python-social-auth/social-core/commit/013d27d291ae44063dcbfbbb3f1a96cc87251643, so it's an outdated documentation.