Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 57fe5b5

Browse files
authored
Drop Django 3.1 related code (#75)
This PR drops code introduced in #18 to support Django 3.1: https://docs.djangoproject.com/en/4.1/releases/3.1/#default-hashing-algorithm-settings Since Django 3.1 support is gone, shall we get rid of this code?
1 parent 6271248 commit 57fe5b5

File tree

2 files changed

+2
-43
lines changed

2 files changed

+2
-43
lines changed

‎mailauth/contrib/user/models.py‎

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
from django.conf import settings
21
from django.contrib.auth.base_user import BaseUserManager
32
from django.contrib.auth.models import AbstractUser
43
from django.db import models
@@ -75,29 +74,12 @@ class Meta(AbstractUser.Meta):
7574
("anonymize", "Can anonymize user"),
7675
]
7776

78-
def _legacy_get_session_auth_hash(self):
79-
# RemovedInDjango40Warning: pre-Django 3.1 hashes will be invalid.
80-
key_salt = "mailauth.contrib.user.models.EmailUserManager.get_session_auth_hash"
81-
if not self.session_salt:
82-
raise ValueError("'session_salt' must be set")
83-
return salted_hmac(key_salt, self.session_salt, algorithm="sha1").hexdigest()
84-
8577
def get_session_auth_hash(self):
8678
"""Return an HMAC of the :attr:`.session_salt` field."""
8779
key_salt = "mailauth.contrib.user.models.EmailUserManager.get_session_auth_hash"
8880
if not self.session_salt:
8981
raise ValueError("'session_salt' must be set")
90-
algorithm = getattr(settings, "DEFAULT_HASHING_ALGORITHM", None)
91-
if algorithm is None:
92-
return salted_hmac(key_salt, self.session_salt).hexdigest()
93-
return salted_hmac(
94-
key_salt,
95-
self.session_salt,
96-
# RemovedInDjango40Warning: when the deprecation ends, replace
97-
# with:
98-
# algorithm='sha256',
99-
algorithm=algorithm,
100-
).hexdigest()
82+
return salted_hmac(key_salt, self.session_salt, algorithm="sha256").hexdigest()
10183

10284
def anonymize(self, commit=True):
10385
"""

‎tests/contrib/auth/test_models.py‎

Lines changed: 1 addition & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -28,33 +28,10 @@ def test_get_session_auth_hash__unique(self, db):
2828

2929
assert spiderman.get_session_auth_hash() != ironman.get_session_auth_hash()
3030

31-
def test_legacy_get_session_auth_hash__default(self, db):
32-
user = EmailUser(email="spiderman@avengers.com")
33-
34-
assert user.session_salt
35-
assert user._legacy_get_session_auth_hash()
36-
37-
def test_legacy_get_session_auth_hash__value_error(self, db):
38-
user = EmailUser(email="spiderman@avengers.com", session_salt=None)
39-
40-
with pytest.raises(ValueError) as e:
41-
user._legacy_get_session_auth_hash()
42-
43-
assert "'session_salt' must be set" in str(e.value)
44-
45-
def test_legacy_get_session_auth_hash__unique(self, db):
46-
spiderman = EmailUser(email="spiderman@avengers.com")
47-
ironman = EmailUser(email="ironman@avengers.com")
48-
49-
assert (
50-
spiderman._legacy_get_session_auth_hash()
51-
!= ironman._legacy_get_session_auth_hash()
52-
)
53-
5431
def test_password_field(self):
5532
user = EmailUser(email="spiderman@avengers.com")
5633
with pytest.raises(FieldDoesNotExist):
57-
user.password
34+
assertuser.password
5835

5936

6037
class TestEmailUserManager:

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /