diff --git a/readthedocs/core/adapters.py b/readthedocs/core/adapters.py index 0a9daee022f..170f8954e26 100644 --- a/readthedocs/core/adapters.py +++ b/readthedocs/core/adapters.py @@ -1,7 +1,7 @@ """Allauth overrides""" from __future__ import absolute_import -import pickle +import json import logging from allauth.account.adapter import DefaultAccountAdapter @@ -32,12 +32,12 @@ def send_mail(self, template_prefix, email, context): subject = self.format_email_subject(subject) # Allauth sends some additional data in the context, remove it if the - # pieces can't be pickled + # pieces can't be json encoded removed_keys = [] for key in list(context.keys()): try: - _ = pickle.dumps(context[key]) # noqa for F841 - except (pickle.PickleError, TypeError): + _ = json.dumps(context[key]) # noqa for F841 + except (ValueError, TypeError): removed_keys.append(key) del context[key] if removed_keys: