From 3a722b2d7dc3cad96ddd9e7ff5bde691e354454d Mon Sep 17 00:00:00 2001 From: 0xMRTT <0xMRTT@proton.me> Date: Thu, 23 Feb 2023 22:37:46 +0100 Subject: [PATCH] fix(conf): image resize method (#222) --- avatar/conf.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/avatar/conf.py b/avatar/conf.py index e3a49fe..57c6ec4 100644 --- a/avatar/conf.py +++ b/avatar/conf.py @@ -1,11 +1,21 @@ from appconf import AppConf from django.conf import settings from PIL import Image +from PIL import __version__ as __pil_version__ +from packaging.version import parse, Version + +if parse(__pil_version__) > Version('9.1.0'): + # https://pillow.readthedocs.io/en/stable/deprecations.html#constants + # https://github.com/jazzband/django-avatar/issues/222 + # Since 9.1.0, Image.ANTIALIAS is deprecated and replaced by Image.Resampling.LANCZOS and Image.LANCZOS + _RESIZE_METHOD = Image.Resampling.LANCZOS +else: + _RESIZE_METHOD = Image.ANTIALIAS class AvatarConf(AppConf): DEFAULT_SIZE = 80 - RESIZE_METHOD = Image.ANTIALIAS + RESIZE_METHOD = _RESIZE_METHOD STORAGE_DIR = "avatars" PATH_HANDLER = "avatar.models.avatar_path_handler" GRAVATAR_BASE_URL = "https://www.gravatar.com/avatar/"