From 189a2b54dec071ec5d58835aef526bfaf5842155 Mon Sep 17 00:00:00 2001 From: allegroai <> Date: Sun, 10 Jan 2021 13:02:08 +0200 Subject: [PATCH] Fix PyJWT support v2 --- clearml/backend_api/session/token_manager.py | 6 +++++- requirements.txt | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/clearml/backend_api/session/token_manager.py b/clearml/backend_api/session/token_manager.py index 7d42d82f..0d970f90 100644 --- a/clearml/backend_api/session/token_manager.py +++ b/clearml/backend_api/session/token_manager.py @@ -3,6 +3,7 @@ from abc import ABCMeta, abstractmethod from time import time import jwt +from jwt.algorithms import get_default_algorithms import six @@ -69,7 +70,10 @@ class TokenManager(object): @classmethod def _get_token_exp(cls, token): """ Get token expiration time. If not present, assume forever """ - return jwt.decode(token, verify=False).get('exp', sys.maxsize) + return jwt.decode( + token, verify=False, + options=dict(verify_signature=False), + algorithms=get_default_algorithms()).get('exp', sys.maxsize) def _set_token(self, token): if token: diff --git a/requirements.txt b/requirements.txt index b840a10d..8329bd13 100644 --- a/requirements.txt +++ b/requirements.txt @@ -13,7 +13,7 @@ Pillow>=4.1.1 psutil>=3.4.2 pyparsing>=2.0.3 python-dateutil>=2.6.1 -pyjwt>=1.6.4,<2.0.0 +pyjwt>=1.6.4,<3.0.0 PyYAML>=3.12 requests-file>=1.4.2 requests>=2.20.0