Skip to content

Commit

Permalink
refactor: inherit from social auth exception (#195)
Browse files Browse the repository at this point in the history
* refactor: inherit from social auth exception

* refactor: inherit from social auth exception

This change the heritance of the eox-tenant-auth-exception.

This with the purpose of the exception to be handled by the social tpa middleware exception
process.

You can see here that the new class is also based in value error exception.
https://github.com/python-social-auth/social-core/blob/29cbbd22b98d81d569a886b1cc0bd9a316cd124f/social_core/exceptions.py#L1

But the change is related with this PR:
eduNEXT/eox-core#171
So now as the exception is family  of the SocialAuthBaseException.

The the tpa middleware could managed it.
https://github.com/python-social-auth/social-app-django/blob/5.4.0/social_django/middleware.py#L35

Keep in mind that this middleware is parent of edx-platform middleware.
https://github.com/openedx/edx-platform/blob/ebcbe1cd9208191c0589d7fe538c6ac13470abe6/common/djangoapps/third_party_auth/middleware.py#L18

* refactor: social-auth-core pkg inclusion

(cherry picked from commit c542749)

chore: run make upgrade

* fix: pylint update change way to load config

add use-yield-from (R1737) due pylint update to 3.1.0
  • Loading branch information
johanseto authored Apr 11, 2024
1 parent 9e47e8d commit d0207e8
Show file tree
Hide file tree
Showing 9 changed files with 118 additions and 22 deletions.
3 changes: 2 additions & 1 deletion eox_tenant/pipeline.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
"""
The pipeline module defines functions that are used in the third party authentication flow
"""
from social_core.exceptions import AuthFailed


class EoxTenantAuthException(ValueError):
class EoxTenantAuthException(AuthFailed):
"""Auth process exception."""

def __init__(self, backend, *args, **kwargs):
Expand Down
1 change: 1 addition & 0 deletions requirements/base.in
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,4 @@ django-mysql
jsonfield
edx-opaque-keys[django]
openedx_filters
social-auth-core
40 changes: 37 additions & 3 deletions requirements/base.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,19 @@ asgiref==3.7.2
# via django
backports-zoneinfo==0.2.1
# via django
django==4.2.10
certifi==2024.2.2
# via requests
cffi==1.16.0
# via cryptography
charset-normalizer==3.3.2
# via requests
cryptography==42.0.5
# via social-auth-core
defusedxml==0.8.0rc2
# via
# python3-openid
# social-auth-core
django==4.2.11
# via
# -c requirements/constraints.txt
# -r requirements/base.in
Expand All @@ -25,23 +37,45 @@ djangorestframework==3.14.0
# via -r requirements/base.in
edx-opaque-keys[django]==2.5.1
# via -r requirements/base.in
idna==3.6
# via requests
jsonfield==3.1.0
# via -r requirements/base.in
oauthlib==3.2.2
# via
# requests-oauthlib
# social-auth-core
openedx-filters==1.6.0
# via -r requirements/base.in
pbr==6.0.0
# via stevedore
pycparser==2.21
# via cffi
pyjwt==2.8.0
# via social-auth-core
pymongo==3.13.0
# via edx-opaque-keys
python3-openid==3.2.0
# via social-auth-core
pytz==2024.1
# via djangorestframework
requests==2.31.0
# via
# requests-oauthlib
# social-auth-core
requests-oauthlib==1.3.1
# via social-auth-core
six==1.16.0
# via -r requirements/base.in
social-auth-core==4.5.3
# via -r requirements/base.in
sqlparse==0.4.4
# via django
stevedore==5.1.0
stevedore==5.2.0
# via edx-opaque-keys
typing-extensions==4.9.0
typing-extensions==4.10.0
# via
# asgiref
# edx-opaque-keys
urllib3==2.2.1
# via requests
2 changes: 1 addition & 1 deletion requirements/django32.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
django==3.2.23
django==3.2.24
2 changes: 1 addition & 1 deletion requirements/django42.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
django==4.2.10
django==4.2.11
8 changes: 5 additions & 3 deletions requirements/pip-tools.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,20 @@
#
# make upgrade
#
build==1.0.3
build==1.1.1
# via pip-tools
click==8.1.7
# via pip-tools
importlib-metadata==7.0.1
# via build
packaging==23.2
# via build
pip-tools==7.3.0
pip-tools==7.4.0
# via -r requirements/pip-tools.in
pyproject-hooks==1.0.0
# via build
# via
# build
# pip-tools
tomli==2.0.1
# via
# build
Expand Down
73 changes: 65 additions & 8 deletions requirements/test.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,16 +8,37 @@ asgiref==3.7.2
# via
# -r requirements/base.txt
# django
astroid==3.0.3
astroid==3.1.0
# via pylint
backports-zoneinfo==0.2.1
# via
# -r requirements/base.txt
# django
coverage==7.4.1
certifi==2024.2.2
# via
# -r requirements/base.txt
# requests
cffi==1.16.0
# via
# -r requirements/base.txt
# cryptography
charset-normalizer==3.3.2
# via
# -r requirements/base.txt
# requests
coverage==7.4.3
# via -r requirements/test.in
ddt==1.7.1
cryptography==42.0.5
# via
# -r requirements/base.txt
# social-auth-core
ddt==1.7.2
# via -r requirements/test.in
defusedxml==0.8.0rc2
# via
# -r requirements/base.txt
# python3-openid
# social-auth-core
dill==0.3.8
# via pylint
# via
Expand All @@ -40,6 +61,10 @@ edx-opaque-keys[django]==2.5.1
# via
# -r requirements/base.txt
# edx-opaque-keys
idna==3.6
# via
# -r requirements/base.txt
# requests
isort==5.13.2
# via pylint
jsonfield==3.1.0
Expand All @@ -48,6 +73,11 @@ mccabe==0.7.0
# via pylint
mock==5.1.0
# via -r requirements/test.in
oauthlib==3.2.2
# via
# -r requirements/base.txt
# requests-oauthlib
# social-auth-core
openedx-filters==1.6.0
# via -r requirements/base.txt
path==16.10.0
Expand All @@ -62,36 +92,63 @@ platformdirs==4.2.0
# via pylint
pycodestyle==2.11.1
# via -r requirements/test.in
pylint==3.0.3
pycparser==2.21
# via
# -r requirements/base.txt
# cffi
pyjwt==2.8.0
# via
# -r requirements/base.txt
# social-auth-core
pylint==3.1.0
# via -r requirements/test.in
pymongo==3.13.0
# via
# -r requirements/base.txt
# edx-opaque-keys
python3-openid==3.2.0
# via
# -r requirements/base.txt
# social-auth-core
pytz==2024.1
# via
# -r requirements/base.txt
# djangorestframework
requests==2.31.0
# via
# -r requirements/base.txt
# requests-oauthlib
# social-auth-core
requests-oauthlib==1.3.1
# via
# -r requirements/base.txt
# social-auth-core
six==1.16.0
# via -r requirements/base.txt
social-auth-core==4.5.3
# via -r requirements/base.txt
sqlparse==0.4.4
# via
# -r requirements/base.txt
# django
stevedore==5.1.0
stevedore==5.2.0
# via
# -r requirements/base.txt
# edx-opaque-keys
testfixtures==7.2.2
testfixtures==8.1.0
# via -r requirements/test.in
tomli==2.0.1
# via pylint
tomlkit==0.12.3
tomlkit==0.12.4
# via pylint
typing-extensions==4.9.0
typing-extensions==4.10.0
# via
# -r requirements/base.txt
# asgiref
# astroid
# edx-opaque-keys
# pylint
urllib3==2.2.1
# via
# -r requirements/base.txt
# requests
6 changes: 3 additions & 3 deletions requirements/tox.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#
# make upgrade
#
cachetools==5.3.2
cachetools==5.3.3
# via tox
chardet==5.2.0
# via tox
Expand Down Expand Up @@ -32,7 +32,7 @@ tomli==2.0.1
# via
# pyproject-api
# tox
tox==4.12.1
tox==4.13.0
# via -r requirements/tox.in
virtualenv==20.25.0
virtualenv==20.25.1
# via tox
5 changes: 3 additions & 2 deletions setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ tag = False

[coverage:run]
data_file = .coverage
omit =
omit =
venv/*
eox_tenant/edxapp_wrapper/backends/*

Expand All @@ -21,10 +21,11 @@ statistics = True
ignore = migrations,CVS
generated-members = objects
max-line-length = 120
disable =
disable =
too-few-public-methods,
too-many-ancestors,
duplicate-code,
use-yield-from,

[isort]
default_section = THIRDPARTY
Expand Down

0 comments on commit d0207e8

Please sign in to comment.