diff options
| author | Jarosław Wygoda <jaroslaw@wygoda.me> | 2022-09-11 17:33:47 +0200 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2023-01-12 09:58:36 +0100 |
| commit | 32940d390a00a30a6409282d314d617667892841 (patch) | |
| tree | 3912c57c1b553833a8a798d92a33147fb87b3f0b /django/test | |
| parent | 1ec3f0961fedbe01f174b78ef2805a9d4f3844b1 (diff) | |
Refs #26029 -- Deprecated DEFAULT_FILE_STORAGE and STATICFILES_STORAGE settings.
Diffstat (limited to 'django/test')
| -rw-r--r-- | django/test/signals.py | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/django/test/signals.py b/django/test/signals.py index 4b270d99fc..94a5161e82 100644 --- a/django/test/signals.py +++ b/django/test/signals.py @@ -13,6 +13,7 @@ from django.dispatch import Signal, receiver from django.utils import timezone from django.utils.formats import FORMAT_SETTINGS, reset_format_cache from django.utils.functional import empty +from django.utils.module_loading import import_string template_rendered = Signal() @@ -113,7 +114,8 @@ def reset_template_engines(*, setting, **kwargs): @receiver(setting_changed) def storages_changed(*, setting, **kwargs): - from django.core.files.storage import storages + from django.contrib.staticfiles.storage import staticfiles_storage + from django.core.files.storage import default_storage, storages if setting in ( "STORAGES", @@ -127,6 +129,9 @@ def storages_changed(*, setting, **kwargs): storages._backends = None storages._storages = {} + default_storage._wrapped = empty + staticfiles_storage._wrapped = empty + @receiver(setting_changed) def clear_serializers_cache(*, setting, **kwargs): @@ -156,11 +161,18 @@ def localize_settings_changed(*, setting, **kwargs): reset_format_cache() +# RemovedInDjango51Warning. @receiver(setting_changed) def file_storage_changed(*, setting, **kwargs): if setting == "DEFAULT_FILE_STORAGE": - from django.core.files.storage import default_storage + from django.conf import DEFAULT_STORAGE_ALIAS + from django.core.files.storage import default_storage, storages + try: + del storages.backends + except AttributeError: + pass + storages._storages[DEFAULT_STORAGE_ALIAS] = import_string(kwargs["value"])() default_storage._wrapped = empty @@ -195,6 +207,17 @@ def static_storage_changed(*, setting, **kwargs): staticfiles_storage._wrapped = empty + # RemovedInDjango51Warning. + if setting == "STATICFILES_STORAGE": + from django.conf import STATICFILES_STORAGE_ALIAS + from django.core.files.storage import storages + + try: + del storages.backends + except AttributeError: + pass + storages._storages[STATICFILES_STORAGE_ALIAS] = import_string(kwargs["value"])() + @receiver(setting_changed) def static_finders_changed(*, setting, **kwargs): |
