Releases: pymodbus-dev/pymodbus
Pymodbus v3.5.0
version 3.5.0
- Async retry (#1752)
- test_client: Fix test_client_protocol_execute() (#1751)
- Use enums for constants (#1743)
- Local Echo Broadcast with Async Clients (#1744)
- Fix #1746 . Return missing result (#1748)
- Document nullmodem. (#1739)
- Add system health check to all tests. (#1736)
- Handle partial message in ReadDeviceInformationResponse (#1738)
- Broadcast with Handle Local Echo (#1737)
- transport_emulator, part II. (#1710)
- Added file AUTHORS, to list all Volunteers. (#1734)
- Fix #1702 and #1728 (#1733)
- Clear retry count when success. (#1732)
- RFC: Reduce parameters for REPL server classes (#1714)
- retries=1, solved. (#1731)
- Impoved the example "server_updating.py" (#1720)
- pylint 3.11 (#1730)
- Correct retry loop. (#1729)
- Fix faulty not check (#1725)
- bugfix local echo handling on sync clients (#1723)
- Updated copyright in LICENSE.
- Correct README pre-commit.
- Fix custom message parsing in RTU framer (#1716)
- Request tracer (#1715)
- pymodbus.server: allow strings for "-p" paramter (#1713)
- New nullmodem and transport. (#1696)
- xdist loadscope (test is not split). (#1708)
- Add client performance example. (#1707)
Pymodbus v3.4.1
version 3.4.1
- Fix serial startup problems. (#1701)
- pass source_address in tcp client. (#1700)
- serial server use source_address[0]. (#1699)
- Examples coverage nearly 100%. (#1694)
- new async serial (#1681)
- Docker is not supported (lack of maintainer). (#1693)
- Forwarder write_coil --> write_coil. (#1691)
- Change default source_address to (0.0.0.0, 502) (#1690)
- Update ruff to 0.0.277 (#1689)
- Fix dict comprehension (#1687)
- Removed
requests
dependency fromcontrib/explain.py
(#1688) - Fix broken test (#1685)
- Fix readme badges (#1682)
- Bump aiohttp from 3.8.3 to 3.8.5 (#1680)
- pygments from 2.14.0 to 2.15.0 (#1677)
Thanks to:
Alex
James Braza
jan iversen
pymodbus v3.4.0
This release integrates the transport layer into the server, upgrade the simulator and many bug fixes.
- Prepare v3.4.0.
- Handle partial local echo. (#1675)
- clarify handle_local_echo. (#1674)
- async_client: add retries/reconnect. (#1672)
- Fix 3.11 problem. (#1673)
- Add new example simulator server/client. (#1671)
examples/contrib/explain.py
leveraging Rapid SCADA (#1665)- _logger missed basicConfig. (#1670)
- Bug fix for #1662 (#1663)
- Bug fix for #1661 (#1664)
- Fix typo in config.rst (#1660)
- test action_increment. (#1659)
- test codeql (#1655)
- mypy complaints. (#1656)
- Remove self.params from async client (#1640)
- Drop test of pypy with python 3.8.
- repair server_async.py (#1644)
- move common framer to base. (#1639)
- Restrict Return diag call to bytes. (#1638)
- use slave= in diag requests. (#1636)
- transport listen in server. (#1628)
- CI test.
- Integrate transport in server. (#1617)
- fix getFrameStart for ExceptionResponse (#1627)
- Add min/min to simulator actions.
- Change to "sync client" in forwarder example (#1625)
- Remove docker (lack of maintenance). (#1623)
- Clean defaults (#1618)
- Reduce CI log with no debug. (#1616)
- prepare server to use transport. (#1607)
- Fix RemoteSlaveContext (#1599)
- Combine stale and lock. (#1608)
- update pytest + extensions. (#1610)
- Change version follow PEP 440. (#1609)
- Fix regression with REPL server not listening (#1604)
- Remove handler= for server classes. (#1602)
- Fix write function codes (#1598)
- transport nullmodem (#1591)
- move test of examples to subdirectory. (#1592)
- transport as object, not base class. (#1572)
- Simple examples. (#1590)
- transport_connect as bool. (#1587)
- Prepare dev (#1588)
- Release corrections. (#1586)
Thanks to:
Alex
Fredo70
Hangyu Fan
James Braza
jan iversen
Pymodbus v3.3.2
Pymodbus v3.3.1
Bug fix release !
- transport fixes and 100% test coverage. (#1580)
- Delay self.loop until connect(). (#1579)
- Added mechanism to determine if server did not start cleanly (#1539)
- Proof transport reconnect works. (#1577)
- Fix non-shared block doc in config.rst. (#1573)
Thanks to:
Hayden Roche
jan iversen
Philip Couling
pymodbus v3.3.0
- Stabilize windows tests. (#1567)
- Bump mypy 1.3.0 (#1568)
- Transport integrated in async clients. (#1541)
- Client async corrections (due to 3.1.2) (#1565)
- Server_async[udp], solve 3.1.1 problem. (#1564)
- Remove ModbusTcpDiagClient. (#1560)
- Remove old method from Python2/3 transition (#1559)
- Switch to ruff's version of bandit (#1557)
- Allow reading/writing address 0 in the simulator (#1552)
- Remove references to "defer_start". (#1548)
- Client more robust against faulty response. (#1547)
- Fix missing package_data directives for simulator web (#1544)
- Fix installation instructions (#1543)
- Solve pytest timeout problem. (#1540)
- DiagnosticStatus encode missing tuple check. (#1533)
- test SparseDataStore. (#1532)
- BinaryPayloadBuilder.to_string to BinaryPayloadBuilder.encode (#1526)
- Adding flake8-pytest-style` to ruff (#1520)
- Simplify version management. (#1522)
- pylint and pre-commit autoupdate (#1519)
- Add type hint (#1512)
- Add action to lock issues/PR. (#1508)
- New common transport layer. (#1492)
- Solve serial close raise problem.
- Remove old config values (#1503)
- Document pymodbus.simulator. (#1502)
- Refactor REPL server to reduce complexity (#1499)
- Don't catch KeyboardInterrupt twice for REPL server (#1498)
- Refactor REPL client to reduce complexity (#1489)
- pymodbus.server: listen on ID 1 by default (#1496)
- Clean framer/init.py (#1494)
- Duplicate transactions in UDP. (#1486)
- clean ProcessIncommingPacket. (#1491)
- Enable pyupgrade (U) rules in ruff (#1484)
- clean_workflow.yaml solve parameter problem.
- Correct wrong import in test. (#1483)
- Implement pyflakes-simplify (#1480)
- Test case for UDP duplicate msg issue (#1470)
- Test of write_coil. (#1479)
- Test reuse of client object. (#1475)
- Comment about addressing when shared=false (#1474)
- Remove old aliases to OSError (#1473)
- pymodbus.simulator fixes (#1463)
- Fix wrong error message with pymodbus console (#1456)
- update modbusrtuframer (#1435)
- Server multidrop test.: (#1451)
- mypy problem ModbusResponse.
Thanks to:
Alex
Christian Krause
corollaries
dhoomakethu
Ghostkeeper
jan iversen
James Braza
Kenny Johansson
Pavel Kostromitinov
pymodbus v3.2.2
version 3.2.2 (picked from dev, only bugfixes)
- Add forgotten await
pymodbus v3.2.1
pymodbus v3.2.0
This release changes the development environment, please remember to update requirements and run "precommit --install".
There are smaller API changed, documented in API_CHANGES.rst, as well as 2 new methods to help receive/send values (in contrast to registers).
Changelog:
version 3.2.0
- Add value <-> registers converter helpers. (#1413)
- Add pre-commit config (#1406)
- Make baud rate configurable for examples (#1410)
- Clean _init and update log module. (#1411)
- Simulator add calls functionality. (#1390)
- Add note about not being thread safe. (#1404)
- Update docker-publish.yml
- Forward retry_on_empty and retries by calling transaction (#1401)
- serial sync recv interval (#1389)
- Add tests for writing multiple writes with a single value (#1402)
- Enable mypy in CI (#1388)
- Limit use of Singleton. (#1397)
- Cleanup interfaces (#1396)
- Add request names. (#1391)
- Simulator, register look and feel. (#1387)
- Fix enum for REPL server (#1384)
- Remove unneeded attribute (#1383)
- Fix mypy errors in reactive server (#1381)
- remove nosec (#1379)
- Fix type hints for http_server (#1369)
- Merge pull request #1380 from pymodbus-dev/requirements
- remove second client instance in async mode. (#1367)
- Pin setuptools to prevent breakage with Version including "X" (#1373)
- Lint and type hints for REPL (#1364)
- Clean mixin execute (#1366)
- Remove unused setup_commands.py. (#1362)
- Run black on top-level files and /doc (#1361)
- repl config path (#1359)
- Fix NoReponse -> NoResponse (#1358)
- Make whole main async. (#1355)
- Fix more typing issues (#1351)
- Test sync task (#1341)
- Fixed text in ModbusClientMixin's writes (#1352)
- lint /doc (#1345)
- Remove unused linters (#1344)
- Allow log level as string or integer. (#1343)
- Sync serial, clean recv. (#1340)
- Test server task, async completed (#1318)
- main() should be sync (#1339)
- Bug: Fixed caused by passing wrong arg (#1336)
Thanks to:
AKJ7,
Alex,
Alex Ruddick,
banana-sun,
cgernert,
Jakob Ruhe,
James Braza,
jan Iversen