-
Notifications
You must be signed in to change notification settings - Fork 106
/
CHANGES
175 lines (119 loc) · 6.16 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
Revision history for pyModbusTCP
0.3.0 2024-09-04
- pyModbusTCP.client: now use the standard logging method as in the server part.
- ModbusClient: debug flag is removed (see examples/client_debug.py).
0.2.2 2024-07-31
- fix ModbusServer: wrong check of discrete inputs length in DataBank (thanks to OTnetproj).
- updated compatibility test (python versions): remove 3.7, add 3.12.
0.2.1 2023-11-21
- fix ModbusServer: wrong check of input registers length in DataBank (thanks to monsieurvor).
- improve hostname validation in utils (thanks to MCXIV and schmocker).
- experimental add of read_device_identification() (over modbus encapsulated interface) to client and server.
- experimental add of write_read_multiple_registers() function (code 0x17) to client and server (thanks to tanj).
- updated compatibility test (python versions): remove 3.5/3.6, add 3.11.
0.2.0 2022-06-05
- ModbusClient: parameters are now properties instead of methods (more intuitive).
- ModbusClient: now TCP auto open mode is active by default (auto_open=True, auto_close=False).
- ModbusClient: add custom_request method for send user define PDU to modbus server.
- ModbusClient: remove RTU mode.
- ModbusClient: clarify some things (private methods and internal vars rename).
- ModbusServer: big redesign to improve readability and maintainability.
- ModbusServer: no longer use hard linked class DataBank (it now return a deprecation warn).
- ModbusServer: add of ModbusServerDataHandler and DefaultDataBank class for easy customize.
- add or update server examples for new modbus server design.
- some updates on tests, fix random arrays generation on client test part.
- clarify usage of root privilege for open tcp/502 (avoid Errno 13) in server example.
- python 2 end of support.
0.1.10 2021-03-02
- word_list_to_long() and long_list_to_word(), now support 64 bits long long with opt long_long.
- encode_ieee() and decode_ieee(), now support double-precision format with opt double.
- add shortcut alias for functions with long names in utils.
- rewrite of some functions in utils.
- improve test_utils readability.
- server DataBank enforce type check on set data methods to avoid server crash (thanks to xuantw).
- now get_2comp can deal with negative python int.
- remove reference to devel github branch.
- improve last_error_txt() and last_except_txt().
0.1.9 2021-02-26
- add module error MB_SOCK_CLOSE_ERR (occur if frame send on close socket).
- add modbus exception EXP_NEGATIVE_ACKNOWLEDGE (code 0x07) to constants.
- add last_error_txt() and last_except_txt() for produce human readable status.
- add EXP_TXT, EXP_DETAILS and MB_ERR_TXT dicts to constants (text representation of codes).
- update of the compatibility test for python version: remove 2.6/3.2/3.3, add 3.7/3.8/3.9.
- conform to PEP 396 (add pyModbusTCP.__version__ field).
0.1.8 2018-10-15
- fix ModbusServer: avoid hard coded TCP port (thanks to akobyl).
- add stop() and is_run property to ModbusServer (thanks to Rugiewitz).
0.1.7 2018-08-20
- fix ModbusServer issue on Windows (thanks to andreascian).
0.1.6 2018-05-14
- fix multiple TCP packets recv issue in ModbusClient and ModbusServer (thanks Farin94).
0.1.5 2017-11-23
- add long_list_to_word to utils.
- add float support as example.
0.1.4 2017-11-13
- fix port and host accessors, change check now use "==" and not "is".
0.1.3 2017-09-29
- setup now use setuptools.
0.1.2 2017-09-28
- fix 'Rx' label on error.
- change file mode for server.py example.
- fix compatibility with modbus unit_id = 0 (thanks to mfkenney).
- fix compatibility for modbus frame with garbage.
0.1.1 2016-05-30
- add toggle_bit() to utils.
- add server.py example.
- add HOWTO for safe PyPI upload.
0.1.0 2016-05-30
- fix some issues in PEP 8 conformance and inline doc.
- client modbus RTU: move crc16 compute to utils.
- add write_multiple_coils() function (code 0x0f).
- add test_bit(), set_bit(), reset_bit() to utils.
- add a modbus/TCP multithreaded server through ModbusServer class (for test only).
0.0.13 2015-12-24
- add auto_open and auto_close to README.rst and quickstart doc.
- add example min_read_bit.py for show minimal code approach.
0.0.12 2015-12-11
- add auto_open and auto_close mode to ModbusClient.
- add accessor function for socket timeout.
- close TCP socket if hostname change
- close TCP socket if port change
0.0.11 2015-03-27
- fix sock.settimeout missing (thanks to bonaime).
- fix PEP 8 style (thanks to bonaime).
0.0.10 2015-01-22
- Add timeout parameter to ModbusClient constructor (thanks to bonaime).
0.0.9 2014-10-10
- Fix rx_byte_count check in ModbusClient class.
0.0.8 2014-09-23
- Catch excepts on socket send/recv.
- Sphinx documentation include a quickstart and examples.
0.0.7 2014-08-31
- Add unit test (see test/).
- Add params host/port/unit_id/debug on ModbusClient constructor.
- Add utils module for modbus data mangling.
0.0.6 2014-08-25
- Fix "socket error" message when call open() on dual stack IPv6/4 host.
- Check rx byte count field in functions 1 to 4.
- Fix max bit number problem in functions 1 and 2 (from 125 to 2000).
- Add debug message, if _send() call on close socket.
- Rename module name from const to constants.
- Update MANIFEST.in to remove docs and examples from sdist archive.
- Update README.rst sample code for Python3.
0.0.5 2014-08-08
- Now deal with IPv6 host.
- Fix Python3 issue in _crc().
- Improve modbus RTU receive code.
- Secure frame size before struct.unpack invocation.
0.0.4 2014-08-07
- Add class documentation (add doc/ and sphinx/ directory).
- Add sphinx docstring in client.py.
0.0.3 2014-08-05
- Fix padding problem in write_single_coil().
- Add new examples.
0.0.2 2014-08-05
- Compatibility with Python 3 and 2.7.
- Use RST format for README instead of markdown, now set long_description.
- Add a MANIFEST.in file and include examples/ on sdist.
0.0.1 2014-08-04
- First release of pyModbusTCP.