Skip to content

Commit 0e6b5f7

Browse files
authored
Merge pull request #1216 from dimaqq/websockets-fix-and-remove-upper-bound
#1216 #1215 plus removal of the websockets dep uppper bound
2 parents c452b66 + a53ce1e commit 0e6b5f7

4 files changed

Lines changed: 7 additions & 9 deletions

File tree

juju/client/connection.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ def status(self):
9292
and connection._receiver_task.cancelled()
9393
)
9494

95-
if stopped or not connection._ws.open:
95+
if stopped or connection._ws.state is not websockets.protocol.State.OPEN:
9696
return self.ERROR
9797

9898
# everything is fine!
@@ -357,8 +357,7 @@ async def close(self, to_reconnect: bool = False):
357357
tasks_need_to_be_gathered.append(self._debug_log_task)
358358
self._debug_log_task.cancel()
359359

360-
if self._ws and not self._ws.closed:
361-
await self._ws.close()
360+
await self._ws.close()
362361

363362
if not to_reconnect:
364363
try:

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ dependencies = [
2525
"macaroonbakery>=1.1,<2.0",
2626
"pyRFC3339>=1.0,<2.0",
2727
"pyyaml>=5.1.2",
28-
"websockets>=13.0.1,<14.0",
28+
"websockets>=13.0.1",
2929
"paramiko>=2.4.0",
3030
"pyasn1>=0.4.4",
3131
"toposort>=1.5,<2",

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
"macaroonbakery>=1.1,<2.0",
2424
"pyRFC3339>=1.0,<2.0",
2525
"pyyaml>=5.1.2",
26-
"websockets>=13.0.1,<14.0",
26+
"websockets>=13.0.1",
2727
"paramiko>=2.4.0",
2828
"pyasn1>=0.4.4",
2929
"toposort>=1.5,<2",

tests/unit/test_connection.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
from unittest import mock
88

99
import pytest
10+
import websockets
1011
from websockets.exceptions import ConnectionClosed
1112

1213
from juju.client.connection import Connection
@@ -17,8 +18,7 @@ class WebsocketMock:
1718
def __init__(self, responses):
1819
super().__init__()
1920
self.responses = deque(responses)
20-
self.open = True
21-
self.closed = False
21+
self.state = websockets.protocol.State.OPEN
2222

2323
async def send(self, message):
2424
pass
@@ -30,8 +30,7 @@ async def recv(self):
3030
return json.dumps(self.responses.popleft())
3131

3232
async def close(self):
33-
self.open = False
34-
self.closed = True
33+
pass
3534

3635

3736
async def test_out_of_order():

0 commit comments

Comments
 (0)