Skip to content

Releases: python-social-auth/social-core

Release 4.8.3

18 Dec 18:44

Choose a tag to compare

Changed

  • Added registry to configure default strategy

Donations

This project welcomes donations to make the development sustainable. The following platforms are available for funding Python Social Auth:

Release 4.8.2

18 Dec 09:10

Choose a tag to compare

Changed

  • The timeout parameter can be again configured
  • Refactored HTTP authentication code
  • Loosened some type checks for better downstream compatibility
  • ID_KEY is now configurable
  • Improved token expiry validation
  • Additional OIDC parameters are now supported
  • Improved refresh token logic
  • Extended type annotations
  • String RelayState in SAML is again supported
  • Better handle OpenID exceptions

Removed

  • itembase backend
  • nk backend
  • OAuth1 backend for Yahoo
  • Do you see more backends where matching service is no longer available? Tell us to help identify unused code.

Donations

This project welcomes donations to make the development sustainable. The following platforms are available for funding Python Social Auth:

Release 4.8.1

09 Oct 11:42

Choose a tag to compare

Changed

  • Fixed extra_data() invocation from refresh_token()
  • Replaced jose with PyJWT in Ping backend
  • Dropped OAuth1 backend for OpenStreetMap

Added

  • OAuth2 URLs can now be overridden in the configuration

Release 4.8.0

07 Oct 10:30

Choose a tag to compare

Changed

  • Fixed Gitea backend API authentication headers
  • Improved RelayState and attributes handling in the SAML backend
    • Missing configured attributes now cause an AuthMissingParameter error
  • Changed domains for VK backend
  • All API calls now include User-Agent header
  • OIDC uses info from id_token when not present in the response
  • Bring back option to skip and customize at_hash validation in OIDC
  • Dropped support for Python 3.9 and added support for Python 3.14
  • Invalid API token will now raise AuthTokenError
  • The extra_data method of backends now receives pipeline arguments as pipeline_kwargs

Added

  • Auth0 OIDC backend
  • Inactive users can be allowed to authenticate using ALLOW_INACTIVE_USERS_LOGIN
  • Support group whitelisting in CAS

Release 4.7.0

27 Jun 06:34

Choose a tag to compare

Changed

  • Fixed getting user info in LinkedIn authentication.
  • Fixed okta OIDC authentication URLs.
  • Dropped AOL OpenID backend.
  • Improved error handling in ORCID.
  • Fixed Soundcloud OAuth2 authorization.

Added

  • More OIDC configuration options.
  • Session restore with stricter SameSite cookie policy.
  • JWT leeway configuration for some backends.

Donations

This project welcomes donations to make the development sustainable, you can fund Python Social Auth on the following platforms:

Release 4.6.1

28 Apr 07:23

Choose a tag to compare

Changed

  • Fixed crash in partial pipelines for some backends

Donations

This project welcomes donations to make the development sustainable, you can fund Python Social Auth on following platforms:

Release 4.6.0

25 Apr 10:54

Choose a tag to compare

Changed

  • Added type annotations
  • Modernized build system
  • OAuth2 backends now default to POST method
  • Code cleanups
  • Tests use responses instead of HTTPretty
  • Improved error handling in case of missing parameters

Added

  • Kick OAuth2 backend
  • OpenIdConnect-based backend for Fedora
  • Lifescience AAI backend
  • NFDI (OpenID Connect) backend

Removed

  • Removed no longer available backends: khanacademy, professionali.ru, BitBucket OAuth 1.0

Donations

This project welcomes donations to make the development sustainable, you can fund Python Social Auth on following platforms:

Release 4.5.6

13 Feb 19:29

Choose a tag to compare

What's Changed

Full Changelog: 4.5.5...4.5.6

Release 4.5.5

13 Feb 13:39

Choose a tag to compare

What's Changed

  • Fix defusedxml requirement by @bj00rn in #912
  • build(deps-dev): bump pre-commit from 3.7.0 to 3.7.1 by @dependabot in #913
  • Fix ORCID login when no family name was given by @nikoder in #914
  • Fix #918 by @Fleapse in #921
  • Allow per-backend user pipeline settings by @dehnert in #677
  • Use timezone-aware datetime objects by @Tenzer in #926
  • build(deps-dev): bump pre-commit from 3.7.1 to 3.8.0 by @dependabot in #928
  • Fix access token expiration and refresh token handling in GitHub backend by @gmargaritis in #933
  • Add AzureADOauth2 backend using the v2.0 API. by @mateuszmandera in #931
  • Allow overriding emails to be fully lowercase by @selten in #943
  • 944 fix params in auth url by @gersona in #945
  • Add passing tests for linkedin OAuth updates by @offbyone in #950
  • chore: use ruff for linting and code formatting by @nijel in #952
  • Modify the dummy tests to be timezone-safe by @nijel in #953
  • Switch to pyproject.toml for project metadata by @offbyone in #951
  • feat: modernize release process by @nijel in #954
  • chore: drop support for Python 3.8 by @nijel in #955
  • Add support for Python 3.13 by @nijel in #956
  • chore: remove not needed else statement by @nijel in #958
  • chore: use startswith with tuple by @nijel in #959
  • chore: remove not needed else after return by @nijel in #960
  • fix: remove outdated Python 2 code by @nijel in #961
  • chore: use next() instead of getting first element from list by @nijel in #962
  • chore: avoid using join on string literals by @nijel in #963
  • chore: remove legacy code for no longer supported Python versions by @nijel in #964
  • chore: use dict literals by @nijel in #965
  • fix: add explicit return None by @nijel in #966
  • chore: use unpacking instead of manual concatenation by @nijel in #967
  • chore: remove not needed params from exception class by @nijel in #968
  • chore: use f-strings instead of format() by @nijel in #969
  • chore: use values when only dict values are needed by @nijel in #970
  • chore: avoid import as when not renaming by @nijel in #971
  • chore: use literals and comprehensions more effectively by @nijel in #972
  • chore: simplify return statements by @nijel in #973
  • chore: bring back isort ordering by @nijel in #974
  • chore: remove not needed pass statements by @nijel in #975
  • chore: merge nested with statements by @nijel in #976
  • feat(ci): extend ruff rulesets by @nijel in #977
  • chore: apply assorted ruff fixes by @nijel in #978
  • chore: use f-strings where applicable by @nijel in #979
  • chore: build string directly instead of intermediate bits tuple by @nijel in #980
  • fix(ci): correctly check for version info by @nijel in #983
  • chore: drop unused SSLHttpAdapter by @nijel in #987
  • chore(deps): update ruff to 0.9.0 by @nijel in #988
  • Type Annotate the heck out of social-core by @offbyone in #986
  • feat(ci): extend pre-commit hooks by @nijel in #989
  • feat(ci): introduce codespell by @nijel in #990
  • feat: switch to renovate from dependabot by @nijel in #991
  • chore(deps): update python docker tag to v3.11.4 by @renovate in #992
  • feat: enable dependency dashboard for renovate by @nijel in #995
  • chore: drop docker-compose based test and releaase workflows by @nijel in #996
  • chore: remove no longer used rerequirements-*.txt by @nijel in #999
  • chore(deps): update dependency ubuntu to v24 by @renovate in #998
  • feat(ci): turn pre-commit into reusable workflow by @nijel in #1000
  • chore: use logging native formatting by @nijel in #1001
  • chore: drop 10 years deprecated interface by @nijel in #1002
  • feat: make release flow reusable by @nijel in #1003
  • Log HTTPError response text by @dases in #1008
  • fix: import shopify API directly by @nijel in #1012
  • fix: update Azure B2C base URL to allow custom domains by @Danyal-Faheem in #1013
  • Google One Tap implementation by @kviktor in #1015
  • chore: Version bump 4.5.5 by @nijel in #1019

New Contributors

Full Changelog: 4.5.4...4.5.5

Release 4.5.4

25 Apr 07:04

Choose a tag to compare

Added

  • LinkedIn supports refresh token

Changed

  • SteamOpenId validation of identify URL
  • Box state redirestion
  • The uid is automatically converted to string in the pipeline
  • Mediawiki error handling