From d9e4331c2608d637feabe25bce9537c9ee0ed68b Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Wed, 7 Mar 2018 17:00:51 +0100 Subject: [PATCH] prevent conversion from SSLError to str to fail (fixes #20113) Some versions of requests raise SSLError exceptions whose __str__ does not return a string object. --- mellon/adapters.py | 6 +++--- mellon/views.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mellon/adapters.py b/mellon/adapters.py index bbf56e1..86cdf4f 100644 --- a/mellon/adapters.py +++ b/mellon/adapters.py @@ -39,9 +39,9 @@ class DefaultAdapter(object): response = requests.get(idp['METADATA_URL'], verify=verify_ssl_certificate) response.raise_for_status() except requests.exceptions.RequestException as e: - self.logger.error( - u'retrieval of metadata URL %r failed with error %s for %d-th idp', - idp['METADATA_URL'], e, i) + self.logger.exception( + u'retrieval of metadata URL %r failed for %d-th idp', + idp['METADATA_URL'], i) continue idp['METADATA'] = response.content elif 'METADATA' in idp: diff --git a/mellon/views.py b/mellon/views.py index a7778d7..dec9e22 100644 --- a/mellon/views.py +++ b/mellon/views.py @@ -263,7 +263,7 @@ class LoginView(ProfileMixin, LogMixin, View): timeout=app_settings.ARTIFACT_RESOLVE_TIMEOUT, verify=verify_ssl_certificate) except RequestException as e: - self.log.warning('unable to reach %r: %s', login.msgUrl, e) + self.log.warning('unable to reach %r: %r', login.msgUrl, e) return self.sso_failure(request, login, _('IdP is temporarily down, please try again ' 'later.'), status_codes) if result.status_code != 200: -- 2.14.2