summaryrefslogtreecommitdiff
path: root/gitlab/base.py
diff options
context:
space:
mode:
Diffstat (limited to 'gitlab/base.py')
-rw-r--r--gitlab/base.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/gitlab/base.py b/gitlab/base.py
index 689b68c..bea1901 100644
--- a/gitlab/base.py
+++ b/gitlab/base.py
@@ -20,6 +20,7 @@ from types import ModuleType
from typing import Any, Dict, Iterable, NamedTuple, Optional, Tuple, Type
from gitlab import types as g_types
+from gitlab.exceptions import GitlabParsingError
from .client import Gitlab, GitlabList
@@ -51,6 +52,12 @@ class RESTObject(object):
manager: "RESTManager"
def __init__(self, manager: "RESTManager", attrs: Dict[str, Any]) -> None:
+ if not isinstance(attrs, dict):
+ raise GitlabParsingError(
+ "Attempted to initialize RESTObject with a non-dictionary value: "
+ "{!r}\nThis likely indicates an incorrect or malformed server "
+ "response.".format(attrs)
+ )
self.__dict__.update(
{
"manager": manager,