Skip to content

Commit 68632c5

Browse files
committed
fix: modify wrong return types for read_uint
1 parent 7f26fc4 commit 68632c5

File tree

1 file changed

+24
-23
lines changed

1 file changed

+24
-23
lines changed

Diff for: pymysqlreplication/packet.py

+24-23
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,8 @@ class BinLogPacketWrapper(object):
9595
constants.MARIADB_START_ENCRYPTION_EVENT: event.MariadbStartEncryptionEvent
9696
}
9797

98-
def __init__(self, from_packet, table_map,
98+
def __init__(self, from_packet,
99+
table_map,
99100
ctl_connection,
100101
mysql_version,
101102
use_checksum,
@@ -108,9 +109,9 @@ def __init__(self, from_packet, table_map,
108109
fail_on_table_metadata_unavailable,
109110
ignore_decode_errors):
110111
# -1 because we ignore the ok byte
111-
self.read_bytes = 0
112+
self.read_bytes: int = 0
112113
# Used when we want to override a value in the data buffer
113-
self.__data_buffer = b''
114+
self.__data_buffer: bytes = b''
114115

115116
self.packet = from_packet
116117
self.charset = ctl_connection.charset
@@ -187,7 +188,7 @@ def advance(self, size: int):
187188
else:
188189
self.packet.advance(size)
189190

190-
def read_length_coded_binary(self) -> Optional[str]:
191+
def read_length_coded_binary(self) -> Optional[int]:
191192
"""
192193
Read a 'Length Coded Binary' number from the data buffer.
193194
Length coded numbers can be anywhere from 1 to 9 bytes depending
@@ -241,7 +242,7 @@ def read_int_be_by_size(self, size: int):
241242
elif size == 8:
242243
return struct.unpack('>l', self.read(size))[0]
243244

244-
def read_uint_by_size(self, size: int) -> str:
245+
def read_uint_by_size(self, size: int) -> int:
245246
"""
246247
Read a little endian integer values based on byte number
247248
"""
@@ -284,73 +285,73 @@ def read_variable_length_string(self) -> Union[int, bytes]:
284285
bits_read = bits_read + 7
285286
return self.read(length)
286287

287-
def read_int24(self) -> str:
288+
def read_int24(self) -> int:
288289
a, b, c = struct.unpack("BBB", self.read(3))
289290
res = a | (b << 8) | (c << 16)
290291
if res >= 0x800000:
291292
res -= 0x1000000
292293
return res
293294

294-
def read_int24_be(self) -> str:
295+
def read_int24_be(self) -> int:
295296
a, b, c = struct.unpack('BBB', self.read(3))
296297
res = (a << 16) | (b << 8) | c
297298
if res >= 0x800000:
298299
res -= 0x1000000
299300
return res
300301

301-
def read_uint8(self) -> str:
302+
def read_uint8(self) -> int:
302303
return struct.unpack('<B', self.read(1))[0]
303304

304-
def read_int16(self) -> str:
305+
def read_int16(self) -> int:
305306
return struct.unpack('<h', self.read(2))[0]
306307

307-
def read_uint16(self) -> str:
308+
def read_uint16(self) -> int:
308309
return struct.unpack('<H', self.read(2))[0]
309310

310-
def read_uint24(self) -> str:
311+
def read_uint24(self) -> int:
311312
a, b, c = struct.unpack("<BBB", self.read(3))
312313
return a + (b << 8) + (c << 16)
313314

314-
def read_uint32(self) -> str:
315+
def read_uint32(self) -> int:
315316
return struct.unpack('<I', self.read(4))[0]
316317

317-
def read_int32(self) -> str:
318+
def read_int32(self) -> int:
318319
return struct.unpack('<i', self.read(4))[0]
319320

320-
def read_uint40(self) -> str:
321+
def read_uint40(self) -> int:
321322
a, b = struct.unpack("<BI", self.read(5))
322323
return a + (b << 8)
323324

324-
def read_int40_be(self) -> str:
325+
def read_int40_be(self) -> int:
325326
a, b = struct.unpack(">IB", self.read(5))
326327
return b + (a << 8)
327328

328-
def read_uint48(self) -> str:
329+
def read_uint48(self) -> int:
329330
a, b, c = struct.unpack("<HHH", self.read(6))
330331
return a + (b << 16) + (c << 32)
331332

332-
def read_uint56(self) -> str:
333+
def read_uint56(self) -> int:
333334
a, b, c = struct.unpack("<BHI", self.read(7))
334335
return a + (b << 8) + (c << 24)
335336

336-
def read_uint64(self) -> str:
337+
def read_uint64(self) -> int:
337338
return struct.unpack('<Q', self.read(8))[0]
338339

339-
def read_int64(self) -> str:
340+
def read_int64(self) -> int:
340341
return struct.unpack('<q', self.read(8))[0]
341342

342-
def unpack_uint16(self, n: bytes) -> str:
343+
def unpack_uint16(self, n: bytes) -> int:
343344
return struct.unpack('<H', n[0:2])[0]
344345

345-
def unpack_int24(self, n: bytes) -> Optional[str, int]:
346+
def unpack_int24(self, n: bytes) -> Optional[str, Tuple[str, int]]:
346347
try:
347348
return struct.unpack('B', n[0])[0] \
348349
+ (struct.unpack('B', n[1])[0] << 8) \
349350
+ (struct.unpack('B', n[2])[0] << 16)
350351
except TypeError:
351352
return n[0] + (n[1] << 8) + (n[2] << 16)
352353

353-
def unpack_int32(self, n):
354+
def unpack_int32(self, n: bytes) -> Optional[str, Tuple[str, int]]:
354355
try:
355356
return struct.unpack('B', n[0])[0] \
356357
+ (struct.unpack('B', n[1])[0] << 8) \
@@ -370,7 +371,7 @@ def read_binary_json(self, size: int) -> Optional[str]:
370371

371372
return self.read_binary_json_type(t, length)
372373

373-
def read_binary_json_type(self, t: bytes, length: int) -> Optional[bool, str]:
374+
def read_binary_json_type(self, t: int, length: int) -> Optional[bool, str]:
374375
large = (t in (JSONB_TYPE_LARGE_OBJECT, JSONB_TYPE_LARGE_ARRAY))
375376
if t in (JSONB_TYPE_SMALL_OBJECT, JSONB_TYPE_LARGE_OBJECT):
376377
return self.read_binary_json_object(length - 1, large)

0 commit comments

Comments
 (0)