Skip to content

Commit 8356fcc

Browse files
committed
Import singledispatch straight from functools
1 parent ddacb9d commit 8356fcc

File tree

6 files changed

+3
-35
lines changed

6 files changed

+3
-35
lines changed

graphene_django/converter.py

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
from django.db import models
22
from django.utils.encoding import force_text
33
from django.utils.functional import Promise
4+
from functools import singledispatch
45

56
from graphene import (
67
ID,
@@ -25,9 +26,6 @@
2526

2627
from .compat import ArrayField, HStoreField, JSONField, RangeField
2728
from .fields import DjangoListField, DjangoConnectionField
28-
from .utils import import_single_dispatch
29-
30-
singledispatch = import_single_dispatch()
3129

3230

3331
def convert_choice_name(name):

graphene_django/forms/converter.py

+1-4
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
11
from django import forms
22
from django.core.exceptions import ImproperlyConfigured
3+
from functools import singledispatch
34

45
from graphene import ID, Boolean, Float, Int, List, String, UUID, Date, DateTime, Time
56

67
from .forms import GlobalIDFormField, GlobalIDMultipleChoiceField
7-
from ..utils import import_single_dispatch
8-
9-
10-
singledispatch = import_single_dispatch()
118

129

1310
@singledispatch

graphene_django/rest_framework/serializer_converter.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
from django.core.exceptions import ImproperlyConfigured
22
from rest_framework import serializers
3+
from functools import singledispatch
34

45
import graphene
56

67
from ..registry import get_global_registry
7-
from ..utils import import_single_dispatch
88
from .types import DictType
99

10-
singledispatch = import_single_dispatch()
1110

1211
@singledispatch
1312
def get_graphene_type_from_serializer_field(field):

graphene_django/utils/__init__.py

-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
camelize,
55
get_model_fields,
66
get_reverse_fields,
7-
import_single_dispatch,
87
is_valid_django_model,
98
maybe_queryset,
109
)
@@ -16,6 +15,5 @@
1615
"get_model_fields",
1716
"camelize",
1817
"is_valid_django_model",
19-
"import_single_dispatch",
2018
"GraphQLTestCase",
2119
]

graphene_django/utils/utils.py

-23
Original file line numberDiff line numberDiff line change
@@ -77,26 +77,3 @@ def get_model_fields(model):
7777

7878
def is_valid_django_model(model):
7979
return inspect.isclass(model) and issubclass(model, models.Model)
80-
81-
82-
def import_single_dispatch():
83-
try:
84-
from functools import singledispatch
85-
except ImportError:
86-
singledispatch = None
87-
88-
if not singledispatch:
89-
try:
90-
from singledispatch import singledispatch
91-
except ImportError:
92-
pass
93-
94-
if not singledispatch:
95-
raise Exception(
96-
"It seems your python version does not include "
97-
"functools.singledispatch. Please install the 'singledispatch' "
98-
"package. More information here: "
99-
"https://pypi.python.org/pypi/singledispatch"
100-
)
101-
102-
return singledispatch

setup.py

-1
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,6 @@
5757
"graphene>=3.0.dev,<4",
5858
"graphql-core>=3.0.0b0,<4",
5959
"Django>=1.11",
60-
"singledispatch>=3.4.0.3",
6160
"promise>=2.1",
6261
],
6362
setup_requires=["pytest-runner"],

0 commit comments

Comments
 (0)