Skip to content

Commit c30eb80

Browse files
committed
Rejigger SHAPE_* checks for newer Pydantic
1 parent 56ebeb0 commit c30eb80

File tree

1 file changed

+16
-25
lines changed

1 file changed

+16
-25
lines changed

graphene_pydantic/converters.py

Lines changed: 16 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -29,32 +29,23 @@
2929
from .registry import Registry
3030
from .util import construct_union_class_name
3131

32-
try:
33-
# Pydantic pre-1.0
34-
from pydantic.fields import Shape
35-
36-
SHAPE_SINGLETON = (Shape.SINGLETON,)
37-
SHAPE_SEQUENTIAL = (
38-
Shape.LIST,
39-
Shape.TUPLE,
40-
Shape.TUPLE_ELLIPS,
41-
Shape.SEQUENCE,
42-
Shape.SET,
43-
)
44-
SHAPE_MAPPING = (Shape.MAPPING,)
45-
except ImportError:
46-
# Pydantic 1.0+
47-
from pydantic import fields
48-
49-
SHAPE_SINGLETON = (fields.SHAPE_SINGLETON,)
50-
SHAPE_SEQUENTIAL = (
51-
fields.SHAPE_LIST,
52-
fields.SHAPE_TUPLE,
53-
fields.SHAPE_TUPLE_ELLIPSIS,
54-
fields.SHAPE_SEQUENCE,
55-
fields.SHAPE_SET,
32+
from pydantic import fields
33+
34+
SHAPE_SINGLETON = (fields.SHAPE_SINGLETON,)
35+
SHAPE_SEQUENTIAL = (
36+
fields.SHAPE_LIST,
37+
fields.SHAPE_TUPLE,
38+
fields.SHAPE_TUPLE_ELLIPSIS,
39+
fields.SHAPE_SEQUENCE,
40+
fields.SHAPE_SET,
41+
)
42+
43+
if hasattr(fields, "SHAPE_DICT"):
44+
SHAPE_MAPPING = T.cast(
45+
T.Tuple, (fields.SHAPE_MAPPING, fields.SHAPE_DICT, fields.SHAPE_DEFAULTDICT)
5646
)
57-
SHAPE_MAPPING = (fields.SHAPE_MAPPING,)
47+
else:
48+
SHAPE_MAPPING = T.cast(T.Tuple, (fields.SHAPE_MAPPING,))
5849

5950

6051
try:

0 commit comments

Comments
 (0)