ModuleNotFoundError: Нет модуля с именем 'graphql.execution.executors', использующего graphql-ws
Я пытаюсь написать подписку для моего django webapp с помощью graphql-ws. Я следовал инструкциям, которые написаны в файле README в репозитории github (https://github.com/graphql-python/graphql-ws), но когда я выполняю ./manage.py runserver
, возникает эта ошибка:
File "/myproject/urls.py", line 16, in <module>
from graphql_ws.django_channels import GraphQLSubscriptionConsumer
File "/myproject/env2/lib/python3.8/site-packages/graphql_ws/django_channels.py", line 11, in <module>
from .base_sync import BaseSyncSubscriptionServer
File "/myproject/env2/lib/python3.8/site-packages/graphql_ws/base_sync.py", line 1, in <module>
from graphql.execution.executors.sync import SyncExecutor
ModuleNotFoundError: No module named 'graphql.execution.executors'
Я понимаю, что это вызвано импортом внутри graphql-ws:
from graphql.execution.executors.sync import SyncExecutor
. Здесь проблема в версии graphql-core, в моем проекте мне нужна 3.1.6 для многих других вещей, и нет папки executors с файлом sync.py... но graphql-ws требует 2.* для graphql-core.
Вот часть моих требований:
graphene~=3.0b7
graphene-django==3.0.0b7
django-graphql-jwt==0.3.2
graphql-ws==0.4.4
graphene-django-optimizer==0.9.0
graphene_file_upload==1.3.0
graphql-core==3.1.6
Как я могу это исправить? Заранее большое спасибо