diff --git a/swh/core/serializers.py b/swh/core/serializers.py --- a/swh/core/serializers.py +++ b/swh/core/serializers.py @@ -178,7 +178,11 @@ if b'__uuid__' in obj and obj[b'__uuid__']: return UUID(obj[b's']) if b'__timedelta__' in obj and obj[b'__timedelta__']: - return datetime.timedelta(**obj[b's']) + # for backward compatibility with old serialization method + if isinstance(obj[b's'], str): + return eval(obj[b's']) + else: + return datetime.timedelta(**obj[b's']) if b'__arrow__' in obj and obj[b'__arrow__']: return arrow.get(obj[b's']) return obj