diff --git a/gql/transport/websockets.py b/gql/transport/websockets.py index 701b6de6..7e26f31c 100644 --- a/gql/transport/websockets.py +++ b/gql/transport/websockets.py @@ -8,8 +8,8 @@ import websockets from graphql import DocumentNode, ExecutionResult, print_ast from websockets.client import WebSocketClientProtocol +from websockets.datastructures import HeadersLike from websockets.exceptions import ConnectionClosed -from websockets.http import HeadersLike from websockets.typing import Data, Subprotocol from .async_transport import AsyncTransport @@ -573,7 +573,8 @@ async def connect(self) -> None: # Set the _connecting flag to False after in all cases try: self.websocket = await asyncio.wait_for( - websockets.connect(self.url, **connect_args,), self.connect_timeout, + websockets.client.connect(self.url, **connect_args,), + self.connect_timeout, ) finally: self._connecting = False diff --git a/setup.py b/setup.py index e0ca29f6..248099ab 100644 --- a/setup.py +++ b/setup.py @@ -41,7 +41,7 @@ ] install_websockets_requires = [ - "websockets>=8.1,<9", + "websockets>=9,<10", ] install_all_requires = ( diff --git a/tests/conftest.py b/tests/conftest.py index 1865152e..44973ae1 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -100,7 +100,7 @@ async def go(app, *, port=None, **kwargs): # type: ignore # Adding debug logs to websocket tests -for name in ["websockets.server", "gql.transport.websockets", "gql.dsl"]: +for name in ["websockets.legacy.server", "gql.transport.websockets", "gql.dsl"]: logger = logging.getLogger(name) logger.setLevel(logging.DEBUG) @@ -125,7 +125,7 @@ def __init__(self, with_ssl: bool = False): async def start(self, handler): - import websockets + from websockets.legacy import server print("Starting server") @@ -149,9 +149,7 @@ async def start(self, handler): extra_serve_args["ssl"] = ssl_context # Start a server with a random open port - self.start_server = websockets.server.serve( - handler, "127.0.0.1", 0, **extra_serve_args - ) + self.start_server = server.serve(handler, "127.0.0.1", 0, **extra_serve_args) # Wait that the server is started self.server = await self.start_server