django-resonant-settings 0.29__py3-none-any.whl → 0.30__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {django_resonant_settings-0.29.dist-info → django_resonant_settings-0.30.dist-info}/METADATA +3 -3
- {django_resonant_settings-0.29.dist-info → django_resonant_settings-0.30.dist-info}/RECORD +9 -9
- resonant_settings/allauth_support/createsuperuser.py +6 -2
- resonant_settings/allauth_support/management/commands/createsuperuser.py +5 -1
- resonant_settings/celery.py +0 -3
- {django_resonant_settings-0.29.dist-info → django_resonant_settings-0.30.dist-info}/WHEEL +0 -0
- {django_resonant_settings-0.29.dist-info → django_resonant_settings-0.30.dist-info}/licenses/LICENSE +0 -0
- /resonant_settings/{debug_toolbar.py → development/debug_toolbar.py} +0 -0
- /resonant_settings/{development/extensions.py → django_extensions.py} +0 -0
{django_resonant_settings-0.29.dist-info → django_resonant_settings-0.30.dist-info}/METADATA
RENAMED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: django-resonant-settings
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.30
|
|
4
4
|
Summary: Shared Django settings for Resonant applications.
|
|
5
5
|
Project-URL: Repository, https://github.com/kitware-resonant/cookiecutter-resonant
|
|
6
6
|
Project-URL: Bug Reports, https://github.com/kitware-resonant/cookiecutter-resonant/issues
|
|
7
7
|
Maintainer-email: "Kitware, Inc." <kitware@kitware.com>
|
|
8
|
-
License: Apache
|
|
8
|
+
License-Expression: Apache-2.0
|
|
9
9
|
License-File: LICENSE
|
|
10
10
|
Keywords: django,resonant,setting,settings
|
|
11
11
|
Classifier: Development Status :: 3 - Alpha
|
|
@@ -13,8 +13,8 @@ Classifier: Environment :: Web Environment
|
|
|
13
13
|
Classifier: Framework :: Django
|
|
14
14
|
Classifier: Framework :: Django :: 5
|
|
15
15
|
Classifier: Framework :: Django :: 5.1
|
|
16
|
+
Classifier: Framework :: Django :: 5.2
|
|
16
17
|
Classifier: Intended Audience :: Developers
|
|
17
|
-
Classifier: License :: OSI Approved :: Apache Software License
|
|
18
18
|
Classifier: Operating System :: OS Independent
|
|
19
19
|
Classifier: Programming Language :: Python
|
|
20
20
|
Classifier: Programming Language :: Python :: 3
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
resonant_settings/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
2
|
resonant_settings/_env.py,sha256=TA97UtDkh7tgBIPc92Osj4FtrBfzMTCmBQ6UR1dPHEk,36
|
|
3
3
|
resonant_settings/allauth.py,sha256=jhAu6SqCUarWiHCrHUcED_2ewBJLpScXAZncYuLKISc,1766
|
|
4
|
-
resonant_settings/celery.py,sha256=
|
|
5
|
-
resonant_settings/debug_toolbar.py,sha256=GhIMbjYsHjiRhrRF6qhYwg-f4gqfO_9OPtD9x-wXz2o,427
|
|
4
|
+
resonant_settings/celery.py,sha256=JZld5ch3Kf657MHiHQzjo0mPJI1BY5iz-BZeoJ14YRI,2928
|
|
6
5
|
resonant_settings/django.py,sha256=x7YKyP3KTiit_lPGpGYyepFg9gWKQEIXmCyHnCOBYZs,1500
|
|
6
|
+
resonant_settings/django_extensions.py,sha256=kHXU3m4DyM2o8mS3peJ0YcvDeHu3g0Hsq1PzH5K4DrU,208
|
|
7
7
|
resonant_settings/logging.py,sha256=sPjCN-vvLqozCOpDMKiZ-S9AWzaxH_S7LCuyuc7js4A,2811
|
|
8
8
|
resonant_settings/oauth_toolkit.py,sha256=_3nArvejI97bdzowOPdV1oniBY0goJ9Jg_Rul1CJLGY,1641
|
|
9
9
|
resonant_settings/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -11,20 +11,20 @@ resonant_settings/rest_framework.py,sha256=xMp9uXmHYhlN9UKiv2KtJkivnv85bIsh1VaHv
|
|
|
11
11
|
resonant_settings/allauth_support/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
12
12
|
resonant_settings/allauth_support/adapter.py,sha256=GSyublJa-2ZCIY_Adb2A0NOoVAtZUuZxB9ZkA5nl66o,395
|
|
13
13
|
resonant_settings/allauth_support/apps.py,sha256=aMx4hSBL9xOMTr5E93rjsW5QUi6m2iNFuz_Ld4isihA,184
|
|
14
|
-
resonant_settings/allauth_support/createsuperuser.py,sha256=
|
|
14
|
+
resonant_settings/allauth_support/createsuperuser.py,sha256=KA_CJxEixlOI322zQNsL9xoUQ4SjNxLRqut2m9Cc4rA,3049
|
|
15
15
|
resonant_settings/allauth_support/receiver.py,sha256=iqiEPbWqgMd4i4qbkfcJMzQZdXAHw-jmc5JyKzJu8Io,1573
|
|
16
16
|
resonant_settings/allauth_support/utils.py,sha256=F2cjjiZXy6KFQi2iGajS4daKg3h2MfMHS1FWwpeDJzs,404
|
|
17
|
-
resonant_settings/allauth_support/management/commands/createsuperuser.py,sha256=
|
|
17
|
+
resonant_settings/allauth_support/management/commands/createsuperuser.py,sha256=61gF3oxhYXbnn49w78rl9SvZOE28tSLmBNVmGNOaexQ,1423
|
|
18
18
|
resonant_settings/development/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
19
19
|
resonant_settings/development/celery.py,sha256=nFac1F3Z12TlAbpzxmF2Y9QedNtNFabXTqrMncqA0Rg,330
|
|
20
|
-
resonant_settings/development/
|
|
20
|
+
resonant_settings/development/debug_toolbar.py,sha256=GhIMbjYsHjiRhrRF6qhYwg-f4gqfO_9OPtD9x-wXz2o,427
|
|
21
21
|
resonant_settings/production/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
22
22
|
resonant_settings/production/email.py,sha256=EQJ7f9jhcu4NxnBa1Wo0gs7JFqaUB87_ETHbVdUo8HY,623
|
|
23
23
|
resonant_settings/production/https.py,sha256=2mru4jteqwW4z1AJJwvqy5sZhpxTh-9OidHOb94X1vY,860
|
|
24
24
|
resonant_settings/production/s3_storage.py,sha256=MDqpxX92t91E50Or_cMXpPzR40OuN52QrGcYJYRmXCQ,968
|
|
25
25
|
resonant_settings/testing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
26
26
|
resonant_settings/testing/minio_storage.py,sha256=3t7F_mA-p9U06kfn7tz5rOfSwefjhauVPj_1D0x4toM,921
|
|
27
|
-
django_resonant_settings-0.
|
|
28
|
-
django_resonant_settings-0.
|
|
29
|
-
django_resonant_settings-0.
|
|
30
|
-
django_resonant_settings-0.
|
|
27
|
+
django_resonant_settings-0.30.dist-info/METADATA,sha256=XQOOFY46ARv7ZYPCtA4t0M6SbyvASRoS66lWOxAc5bs,1654
|
|
28
|
+
django_resonant_settings-0.30.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
29
|
+
django_resonant_settings-0.30.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
30
|
+
django_resonant_settings-0.30.dist-info/RECORD,,
|
|
@@ -14,7 +14,9 @@ class Command(createsuperuser.Command):
|
|
|
14
14
|
self.UserModel = EmailAsUsernameProxyUser
|
|
15
15
|
self.username_field = self.UserModel._meta.get_field(self.UserModel.USERNAME_FIELD)
|
|
16
16
|
|
|
17
|
-
def _validate_username(
|
|
17
|
+
def _validate_username(
|
|
18
|
+
self, username: str, verbose_field_name: str, database: str
|
|
19
|
+
) -> str | None:
|
|
18
20
|
# Since "username" is actually unique, "email" (i.e. "self.username_field") is logically
|
|
19
21
|
# unique too. Explicitly setting the "_unique" attribute ensures that app-level duplicate
|
|
20
22
|
# checking is done by "_validate_username", which produces better, earlier error messages.
|
|
@@ -23,7 +25,9 @@ class Command(createsuperuser.Command):
|
|
|
23
25
|
with temporarily_change_attributes(self.username_field, _unique=True):
|
|
24
26
|
# Normalize (as it would be done before saving) for better duplicate detection
|
|
25
27
|
username = self.UserModel.normalize_username(username)
|
|
26
|
-
return super()._validate_username(
|
|
28
|
+
return super()._validate_username( # type: ignore[misc]
|
|
29
|
+
username, verbose_field_name, database
|
|
30
|
+
)
|
|
27
31
|
|
|
28
32
|
|
|
29
33
|
class EmailAsUsernameProxyUserManager(UserManager):
|
|
@@ -15,8 +15,12 @@ When Allauth is configured to use a User's `email` as the `username`, override t
|
|
|
15
15
|
management command to only prompt for an email address.
|
|
16
16
|
"""
|
|
17
17
|
|
|
18
|
+
username_required: bool | None = allauth_settings.SIGNUP_FIELDS.get("username", {}).get(
|
|
19
|
+
"required", None
|
|
20
|
+
)
|
|
21
|
+
|
|
18
22
|
# If using email as username
|
|
19
|
-
if not
|
|
23
|
+
if not username_required:
|
|
20
24
|
# Expose the modified command
|
|
21
25
|
Command: type[BaseCommand] = allauth_support_createsuperuser.Command
|
|
22
26
|
user_model: type[AbstractUser] = allauth_support_createsuperuser.EmailAsUsernameProxyUser
|
resonant_settings/celery.py
CHANGED
|
@@ -45,9 +45,6 @@ CELERY_TASK_ACKS_ON_FAILURE_OR_TIMEOUT = True
|
|
|
45
45
|
# and this will be Celery's default in 6.0.
|
|
46
46
|
CELERY_WORKER_CANCEL_LONG_RUNNING_TASKS_ON_CONNECTION_LOSS = True
|
|
47
47
|
|
|
48
|
-
# This is the default, but is necessary to suppress warnings in Celery
|
|
49
|
-
CELERY_BROKER_CONNECTION_RETRY_ON_STARTUP = True
|
|
50
|
-
|
|
51
48
|
# CloudAMQP-suggested settings
|
|
52
49
|
# https://www.cloudamqp.com/docs/celery.html
|
|
53
50
|
CELERY_BROKER_POOL_LIMIT = 1
|
|
File without changes
|
{django_resonant_settings-0.29.dist-info → django_resonant_settings-0.30.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|