Skip to content

Commit 77cecde

Browse files
Enable mypy in CI (#1388)
Co-authored-by: jan iversen <[email protected]>
1 parent 4f2971f commit 77cecde

File tree

12 files changed

+25
-14
lines changed

12 files changed

+25
-14
lines changed

.github/workflows/ci.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,9 @@ jobs:
4646
- name: docs
4747
cmd: make -C doc/ html
4848
type: lint
49+
- name: mypy
50+
cmd: mypy pymodbus
51+
type: lint
4952
- name: pytest
5053
cmd: pytest --cov=pymodbus --cov=test --cov-report=term-missing --cov-report=xml -v --full-trace --timeout=20
5154
type: test

check_ci.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,6 @@ black --safe --quiet examples/ pymodbus/ test/
1010
isort .
1111
pylint --recursive=y examples pymodbus test
1212
flake8
13+
mypy pymodbus
1314
pytest --numprocesses auto
1415
echo "Ready to push"

pymodbus/client/base.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ def register(self, custom_response_class: ModbusResponse) -> None:
149149
"""
150150
self.framer.decoder.register(custom_response_class)
151151

152-
def connect(self) -> None:
152+
def connect(self):
153153
"""Connect to the modbus remote host (call **sync/async**).
154154
155155
:raises ModbusException: Different exceptions, check exception text.

pymodbus/framer/__init__.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,14 @@ class ModbusFramer:
1818

1919
name = ""
2020

21+
def __init__(self, decoder, client=None):
22+
"""Initialize a new instance of the framer.
23+
24+
:param decoder: The decoder implementation to use
25+
"""
26+
self.decoder = decoder
27+
self.client = client
28+
2129
def _validate_unit_id(self, units, single):
2230
"""Validate if the received data is valid for the client.
2331
@@ -40,7 +48,7 @@ def sendPacket(self, message):
4048
:param message: Message to be sent over the bus
4149
:return:
4250
"""
43-
return self.client.send(message) # pylint: disable=no-member
51+
return self.client.send(message)
4452

4553
def recvPacket(self, size):
4654
"""Receive packet from the bus.
@@ -49,4 +57,4 @@ def recvPacket(self, size):
4957
:param size: Number of bytes to read
5058
:return:
5159
"""
52-
return self.client.recv(size) # pylint: disable=no-member
60+
return self.client.recv(size)

pymodbus/framer/ascii_framer.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,12 @@ def __init__(self, decoder, client=None):
3737
3838
:param decoder: The decoder implementation to use
3939
"""
40+
super().__init__(decoder, client)
4041
self._buffer = b""
4142
self._header = {"lrc": "0000", "len": 0, "uid": 0x00}
4243
self._hsize = 0x02
4344
self._start = b":"
4445
self._end = b"\r\n"
45-
self.decoder = decoder
46-
self.client = client
4746

4847
# ----------------------------------------------------------------------- #
4948
# Private Helper Functions

pymodbus/framer/binary_framer.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,14 +46,13 @@ def __init__(self, decoder, client=None):
4646
4747
:param decoder: The decoder implementation to use
4848
"""
49+
super().__init__(decoder, client)
4950
self._buffer = b""
5051
self._header = {"crc": 0x0000, "len": 0, "uid": 0x00}
5152
self._hsize = 0x01
5253
self._start = b"\x7b" # {
5354
self._end = b"\x7d" # }
5455
self._repeat = [b"}"[0], b"{"[0]] # python3 hack
55-
self.decoder = decoder
56-
self.client = client
5756

5857
# ----------------------------------------------------------------------- #
5958
# Private Helper Functions

pymodbus/framer/rtu_framer.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,13 +58,12 @@ def __init__(self, decoder, client=None):
5858
5959
:param decoder: The decoder factory implementation to use
6060
"""
61+
super().__init__(decoder, client)
6162
self._buffer = b""
6263
self._header = {"uid": 0x00, "len": 0, "crc": b"\x00\x00"}
6364
self._hsize = 0x01
6465
self._end = b"\x0d\x0a"
6566
self._min_frame_size = 4
66-
self.decoder = decoder
67-
self.client = client
6867

6968
# ----------------------------------------------------------------------- #
7069
# Private Helper Functions

pymodbus/framer/socket_framer.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,10 @@ def __init__(self, decoder, client=None):
4141
4242
:param decoder: The decoder factory implementation to use
4343
"""
44+
super().__init__(decoder, client)
4445
self._buffer = b""
4546
self._header = {"tid": 0, "pid": 0, "len": 0, "uid": 0}
4647
self._hsize = 0x07
47-
self.decoder = decoder
48-
self.client = client
4948

5049
# ----------------------------------------------------------------------- #
5150
# Private Helper Functions

pymodbus/framer/tls_framer.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,10 @@ def __init__(self, decoder, client=None):
3333
3434
:param decoder: The decoder factory implementation to use
3535
"""
36+
super().__init__(decoder, client)
3637
self._buffer = b""
3738
self._header = {}
3839
self._hsize = 0x0
39-
self.decoder = decoder
40-
self.client = client
4140

4241
# ----------------------------------------------------------------------- #
4342
# Private Helper Functions

pymodbus/py.typed

Whitespace-only changes.

0 commit comments

Comments
 (0)