SmileyChris / easy-thumbnails

Easy thumbnails for Django
http://easy-thumbnails.readthedocs.org/
BSD 3-Clause "New" or "Revised" License
1.39k stars 319 forks source link

2.10 doesn't use the `THUMBNAIL_MEDIA_ROOT` and `THUMBNAIL_MEDIA_URL` settings #649

Open benkonrath opened 1 month ago

benkonrath commented 1 month ago

The 2.10 release doesn't use the THUMBNAIL_MEDIA_ROOT and THUMBNAIL_MEDIA_URL settings.

The bug was introduced by the changes to get_storage() in commit https://github.com/SmileyChris/easy-thumbnails/commit/7bdbd7c1e25051ce3e5b0c2f9b20dfcda5fdfab6.

There are no tests for THUMBNAIL_MEDIA_ROOT or THUMBNAIL_MEDIA_URL otherwise this would have been flagged.

I think ThumbnailFileSystemStorage should be returned when THUMBNAIL_DEFAULT_STORAGE_ALIAS is not set for backwards compatibility. But this could also be fixed with documentation. THUMBNAIL_MEDIA_ROOT and THUMBNAIL_MEDIA_URL are respected when the easy_thumbnail storage is configured to use easy_thumbnails.storage.ThumbnailFileSystemStorage. e.g.

STORAGES = {
    # ...
    "easy_thumbnails": {
        "BACKEND": "easy_thumbnails.storage.ThumbnailFileSystemStorage",
    },
}

THUMBNAIL_DEFAULT_STORAGE_ALIAS = "easy_thumbnails"

Side note: The demo project has the easy_thumbnails storage backend set to django.core.files.storage.FileSystemStorage but I think it should be easy_thumbnails.storage.ThumbnailFileSystemStorage so people see how the default should be configured for filesystem thumbnails.

If you give me some direction how you want to address this (docs, returning ThumbnailFileSystemStorage, or something else), I can make a PR.