diff --git a/pillar/api/utils/__init__.py b/pillar/api/utils/__init__.py index 77fdc19c..81411445 100644 --- a/pillar/api/utils/__init__.py +++ b/pillar/api/utils/__init__.py @@ -141,10 +141,10 @@ def str2id(document_id): raise wz_exceptions.BadRequest('Invalid object ID %r' % document_id) -def gravatar(email, size=64): +def gravatar(email: str, size=64): parameters = {'s': str(size), 'd': 'mm'} return "https://www.gravatar.com/avatar/" + \ - hashlib.md5(str(email)).hexdigest() + \ + hashlib.md5(email.encode()).hexdigest() + \ "?" + urllib.parse.urlencode(parameters) diff --git a/pillar/web/utils/__init__.py b/pillar/web/utils/__init__.py index 67da2fb9..e40aa5f5 100644 --- a/pillar/web/utils/__init__.py +++ b/pillar/web/utils/__init__.py @@ -49,11 +49,13 @@ def attach_project_pictures(project, api): project.picture_header = get_file(project.picture_header, api=api) -def gravatar(email, size=64): - parameters = {'s': str(size), 'd': 'mm'} - return "https://www.gravatar.com/avatar/" + \ - hashlib.md5(str(email)).hexdigest() + \ - "?" + urllib.parse.urlencode(parameters) +def gravatar(email: str, size=64): + import warnings + warnings.warn("the pillar.web.gravatar function is deprecated; use hashlib instead", + DeprecationWarning, 2) + + from pillar.api.utils import gravatar as api_gravatar + return api_gravatar(email, size) def datetime_now():