python-engineio
Advanced tools
+1
-1
| Metadata-Version: 2.4 | ||
| Name: python-engineio | ||
| Version: 4.12.1 | ||
| Version: 4.12.2 | ||
| Summary: Engine.IO server and client for Python | ||
@@ -5,0 +5,0 @@ Author-email: Miguel Grinberg <miguel.grinberg@gmail.com> |
+1
-1
| [project] | ||
| name = "python-engineio" | ||
| version = "4.12.1" | ||
| version = "4.12.2" | ||
| license = {text = "MIT"} | ||
@@ -5,0 +5,0 @@ authors = [{name = "Miguel Grinberg", email = "miguel.grinberg@gmail.com"}] |
@@ -129,3 +129,2 @@ import asyncio | ||
| self.transports = transports or valid_transports | ||
| self.queue = self.create_queue() | ||
| return await getattr(self, '_connect_' + self.transports[0])( | ||
@@ -203,8 +202,12 @@ url, headers or {}, engineio_path) | ||
| def create_queue(self): | ||
| def create_queue(self, *args, **kwargs): | ||
| """Create a queue object.""" | ||
| q = asyncio.Queue() | ||
| q.Empty = asyncio.QueueEmpty | ||
| return q | ||
| return asyncio.Queue(*args, **kwargs) | ||
| def get_queue_empty_exception(self): | ||
| """Return the queue empty exception raised by queues created by the | ||
| ``create_queue()`` method. | ||
| """ | ||
| return asyncio.QueueEmpty | ||
| def create_event(self): | ||
@@ -629,3 +632,3 @@ """Create an event object.""" | ||
| packets = [await asyncio.wait_for(self.queue.get(), timeout)] | ||
| except (self.queue.Empty, asyncio.TimeoutError): | ||
| except (self.queue_empty, asyncio.TimeoutError): | ||
| self.logger.error('packet queue is empty, aborting') | ||
@@ -642,3 +645,3 @@ break | ||
| packets.append(self.queue.get_nowait()) | ||
| except self.queue.Empty: | ||
| except self.queue_empty: | ||
| break | ||
@@ -645,0 +648,0 @@ if packets[-1] is None: |
@@ -283,5 +283,5 @@ import os | ||
| raise OSError() | ||
| if 'bytes' in event: | ||
| if event.get('bytes', None) is not None: | ||
| return event['bytes'] | ||
| elif 'text' in event: | ||
| elif event.get('text', None) is not None: | ||
| return event['text'] | ||
@@ -288,0 +288,0 @@ else: # pragma: no cover |
@@ -64,3 +64,4 @@ import logging | ||
| self.write_loop_task = None | ||
| self.queue = None | ||
| self.queue = self.create_queue() | ||
| self.queue_empty = self.get_queue_empty_exception() | ||
| self.state = 'disconnected' | ||
@@ -160,1 +161,11 @@ self.ssl_verify = ssl_verify | ||
| return '&t=' + str(time.time()) | ||
| def create_queue(self, *args, **kwargs): # pragma: no cover | ||
| """Create a queue object.""" | ||
| raise NotImplementedError('must be implemented in a subclass') | ||
| def get_queue_empty_exception(self): # pragma: no cover | ||
| """Return the queue empty exception raised by queues created by the | ||
| ``create_queue()`` method. | ||
| """ | ||
| raise NotImplementedError('must be implemented in a subclass') |
@@ -94,3 +94,2 @@ from base64 import b64encode | ||
| self.transports = transports or valid_transports | ||
| self.queue = self.create_queue() | ||
| return getattr(self, '_connect_' + self.transports[0])( | ||
@@ -166,6 +165,10 @@ url, headers or {}, engineio_path) | ||
| """Create a queue object.""" | ||
| q = queue.Queue(*args, **kwargs) | ||
| q.Empty = queue.Empty | ||
| return q | ||
| return queue.Queue(*args, **kwargs) | ||
| def get_queue_empty_exception(self): | ||
| """Return the queue empty exception raised by queues created by the | ||
| ``create_queue()`` method. | ||
| """ | ||
| return queue.Empty | ||
| def create_event(self, *args, **kwargs): | ||
@@ -571,3 +574,3 @@ """Create an event object.""" | ||
| packets = [self.queue.get(timeout=timeout)] | ||
| except self.queue.Empty: | ||
| except self.queue_empty: | ||
| self.logger.error('packet queue is empty, aborting') | ||
@@ -582,3 +585,3 @@ break | ||
| packets.append(self.queue.get(block=False)) | ||
| except self.queue.Empty: | ||
| except self.queue_empty: | ||
| break | ||
@@ -585,0 +588,0 @@ if packets[-1] is None: |
| Metadata-Version: 2.4 | ||
| Name: python-engineio | ||
| Version: 4.12.1 | ||
| Version: 4.12.2 | ||
| Summary: Engine.IO server and client for Python | ||
@@ -5,0 +5,0 @@ Author-email: Miguel Grinberg <miguel.grinberg@gmail.com> |
@@ -228,3 +228,3 @@ import asyncio | ||
| q = c.create_queue() | ||
| with pytest.raises(q.Empty): | ||
| with pytest.raises(c.queue_empty): | ||
| q.get_nowait() | ||
@@ -1204,3 +1204,3 @@ | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get = mock.AsyncMock(side_effect=RuntimeError) | ||
@@ -1218,3 +1218,3 @@ await c._write_loop() | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get = mock.AsyncMock( | ||
@@ -1250,3 +1250,3 @@ side_effect=[ | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get = mock.AsyncMock( | ||
@@ -1292,3 +1292,3 @@ side_effect=[ | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get = mock.AsyncMock( | ||
@@ -1330,3 +1330,3 @@ side_effect=[ | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get = mock.AsyncMock( | ||
@@ -1359,3 +1359,3 @@ side_effect=[packet.Packet(packet.MESSAGE, {'foo': 'bar'})] | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get = mock.AsyncMock( | ||
@@ -1389,3 +1389,3 @@ side_effect=[packet.Packet(packet.MESSAGE, {'foo': 'bar'})] | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get = mock.AsyncMock( | ||
@@ -1412,3 +1412,3 @@ side_effect=[ | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get = mock.AsyncMock( | ||
@@ -1443,3 +1443,3 @@ side_effect=[ | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get = mock.AsyncMock( | ||
@@ -1463,3 +1463,3 @@ side_effect=[packet.Packet(packet.MESSAGE, b'foo'), RuntimeError] | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get = mock.AsyncMock( | ||
@@ -1466,0 +1466,0 @@ side_effect=[ |
@@ -36,6 +36,7 @@ import logging | ||
| 'write_loop_task', | ||
| 'queue', | ||
| ]: | ||
| assert getattr(c, attr) is None, attr + ' is not None' | ||
| assert c.state == 'disconnected' | ||
| assert c.queue.__class__.__name__ == 'Queue' | ||
| assert c.queue_empty.__name__ == 'Empty' | ||
@@ -293,3 +294,3 @@ def test_custom_json(self): | ||
| q = c.create_queue() | ||
| with pytest.raises(q.Empty): | ||
| with pytest.raises(c.queue_empty): | ||
| q.get(timeout=0.01) | ||
@@ -1504,3 +1505,3 @@ | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get.side_effect = RuntimeError | ||
@@ -1518,3 +1519,3 @@ c._write_loop() | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get.side_effect = [ | ||
@@ -1548,3 +1549,3 @@ packet.Packet(packet.MESSAGE, {'foo': 'bar'}), | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get.side_effect = [ | ||
@@ -1584,3 +1585,3 @@ packet.Packet(packet.MESSAGE, {'foo': 'bar'}), | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get.side_effect = [ | ||
@@ -1619,3 +1620,3 @@ packet.Packet(packet.MESSAGE, {'foo': 'bar'}), | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get.side_effect = [ | ||
@@ -1649,3 +1650,3 @@ packet.Packet(packet.MESSAGE, {'foo': 'bar'}), | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get.side_effect = [ | ||
@@ -1679,3 +1680,3 @@ packet.Packet(packet.MESSAGE, {'foo': 'bar'}), | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get.side_effect = [ | ||
@@ -1700,3 +1701,3 @@ packet.Packet(packet.MESSAGE, {'foo': 'bar'}), | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get.side_effect = [ | ||
@@ -1725,3 +1726,3 @@ packet.Packet(packet.MESSAGE, {'foo': 'bar'}), | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get.side_effect = [ | ||
@@ -1746,3 +1747,3 @@ packet.Packet(packet.MESSAGE, b'foo'), | ||
| c.queue = mock.MagicMock() | ||
| c.queue.Empty = RuntimeError | ||
| c.queue_empty = RuntimeError | ||
| c.queue.get.side_effect = [ | ||
@@ -1749,0 +1750,0 @@ packet.Packet(packet.MESSAGE, {'foo': 'bar'}), |
Alert delta unavailable
Currently unable to show alert delta for PyPI packages.
547700
0.16%11672
0.12%