Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSybren A. Stüvel <sybren@stuvel.eu>2017-12-15 12:13:04 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2018-01-01 18:25:12 +0300
commitfbe2b7652a82547f94e3c381a0af3b8d2c7da24b (patch)
tree39dced73761eb02a33b673a338c237de345cf495
parent594221f39f2d14b93e2bd659aba5792041dd5c8e (diff)
Updated Blender ID add-on to version 1.4.1
- Improved error reporting when validating a token fails due to connection errors.
-rw-r--r--blender_id/CHANGELOG.md6
-rw-r--r--blender_id/__init__.py2
-rw-r--r--blender_id/communication.py22
3 files changed, 22 insertions, 8 deletions
diff --git a/blender_id/CHANGELOG.md b/blender_id/CHANGELOG.md
index 8c7709f7..cf62a6e1 100644
--- a/blender_id/CHANGELOG.md
+++ b/blender_id/CHANGELOG.md
@@ -1,5 +1,11 @@
# Blender ID Add-on Changelog
+## Version 1.4.1 (released 2017-12-15)
+
+- Improved error reporting when validating a token fails due to
+ connection errors.
+
+
## Version 1.4 (released 2017-12-05)
- Added an extra date/time format for parsing the authentication token expiry date.
diff --git a/blender_id/__init__.py b/blender_id/__init__.py
index a2026581..73371945 100644
--- a/blender_id/__init__.py
+++ b/blender_id/__init__.py
@@ -21,7 +21,7 @@
bl_info = {
'name': 'Blender ID authentication',
'author': 'Francesco Siddi, Inês Almeida and Sybren A. Stüvel',
- 'version': (1, 4, 0),
+ 'version': (1, 4, 1),
'blender': (2, 77, 0),
'location': 'Add-on preferences',
'description':
diff --git a/blender_id/communication.py b/blender_id/communication.py
index 90ccf9a1..5572b637 100644
--- a/blender_id/communication.py
+++ b/blender_id/communication.py
@@ -19,8 +19,11 @@
# <pep8 compliant>
import functools
+import logging
import typing
+log = logging.getLogger(__name__)
+
class BlenderIdCommError(RuntimeError):
"""Raised when there was an error communicating with Blender ID"""
@@ -84,8 +87,9 @@ def blender_id_server_authenticate(username, password) -> AuthResult:
except (requests.exceptions.SSLError,
requests.exceptions.HTTPError,
requests.exceptions.ConnectionError) as e:
- print('Exception POSTing to {}: {}'.format(url, e))
- return AuthResult(status, error_message=e)
+ msg = 'Exception POSTing to {}: {}'.format(url, e)
+ print(msg)
+ return AuthResult(success=False, error_message=msg)
if r.status_code == 200:
resp = r.json()
@@ -117,17 +121,21 @@ def blender_id_server_validate(token) -> typing.Tuple[typing.Optional[str], typi
import requests
import requests.exceptions
+ url = blender_id_endpoint('u/validate_token')
try:
- r = requests.post(blender_id_endpoint('u/validate_token'),
- data={'token': token}, verify=True)
+ r = requests.post(url, data={'token': token}, verify=True)
+ except requests.exceptions.ConnectionError:
+ log.exception('error connecting to Blender ID at %s', url)
+ return None, 'Unable to connect to Blender ID'
except requests.exceptions.RequestException as e:
- return (str(e), None)
+ log.exception('error validating token at %s', url)
+ return None, str(e)
if r.status_code != 200:
- return (None, 'Authentication token invalid')
+ return None, 'Authentication token invalid'
response = r.json()
- return (response['token_expires'], None)
+ return response['token_expires'], None
def blender_id_server_logout(user_id, token):