Browse Source

fix: add warnings

pull/1517/head
phi 8 months ago
parent
commit
608a82fa2e
  1. 25
      src/socketio/msgpack_packet.py

25
src/socketio/msgpack_packet.py

@ -1,6 +1,9 @@
import logging
import msgpack import msgpack
from . import packet from . import packet
logger = logging.getLogger('socketio')
class MsgPackPacket(packet.Packet): class MsgPackPacket(packet.Packet):
uses_binary_events = False uses_binary_events = False
@ -8,14 +11,14 @@ class MsgPackPacket(packet.Packet):
def encode(self): def encode(self):
"""Encode the packet for transmission.""" """Encode the packet for transmission."""
return self._encode() return self._encode()
def _encode(self, **kwargs): def _encode(self, **kwargs):
return _msgpack.dumps(self._to_dict(), **kwargs) return _msgpack.dumps(self._to_dict(), **kwargs)
def decode(self, encoded_packet): def decode(self, encoded_packet):
"""Decode a transmitted package.""" """Decode a transmitted package."""
return self._decode(encoded_packet) return self._decode(encoded_packet)
def _decode(self, encoded_packet, **kwargs): def _decode(self, encoded_packet, **kwargs):
decoded = msgpack.loads(encoded_packet, **kwargs) decoded = msgpack.loads(encoded_packet, **kwargs)
self.packet_type = decoded['type'] self.packet_type = decoded['type']
@ -28,12 +31,26 @@ class MsgPackPacket(packet.Packet):
dumps_default = kwargs.pop('dumps_default', None) dumps_default = kwargs.pop('dumps_default', None)
ext_hook = kwargs.pop('ext_hook', msgpack.ExtType) ext_hook = kwargs.pop('ext_hook', msgpack.ExtType)
if args:
logger.warning(
'Some positional arguments to MsgPackPacket.configure() are '
'not used: %s',
args,
)
if kwargs:
logger.warning(
'Some keyword arguments to MsgPackPacket.configure() are '
'not used: %s',
kwargs,
)
class ConfiguredMsgPackPacket(cls): class ConfiguredMsgPackPacket(cls):
def _encode(self, **kwargs): def _encode(self, **kwargs):
kwargs.setdefault('default', dumps_default) kwargs.setdefault('default', dumps_default)
return super()._encode(**kwargs) return super()._encode(**kwargs)
def _decode(self, encoded_packet, **kwargs): def _decode(self, encoded_packet, **kwargs):
kwargs.setdefault('ext_hook', ext_hook) kwargs.setdefault('ext_hook', ext_hook)
return super()._decode(encoded_packet, **kwargs) return super()._decode(encoded_packet, **kwargs)
return ConfiguredMsgPackPacket return ConfiguredMsgPackPacket

Loading…
Cancel
Save