Skip to content

Releases: stepfunc/rodbus

1.5.0

Choose a tag to compare

@github-actions github-actions released this 17 Jun 18:07
7035842
  • ⭐ Add non-spawning create_tcp_client_task_with_options(), create_tls_client_task_with_options(), and create_rtu_client_task() that return a ClientTask for the caller to spawn, enabling custom task instrumentation. See #180.
  • 🔒 Update rustls-webpki to 0.103.13 to resolve RUSTSEC-2026-0098, RUSTSEC-2026-0099, and RUSTSEC-2026-0104. The two name-constraint advisories (0098, 0099) are theoretically reachable during TLS handshake but require certificate misissuance to exploit; the CRL panic (0104) is unreachable as Rodbus does not use CRLs.
  • ⭐ TCP client performance optimizations: ~33% fewer heap allocations and ~3.4% fewer instructions per request, including an iterative MBAP parser and ExactSizeIterator impls for the response iterators. See #177.
  • 🐛 Fix a ReadBuffer shift condition that, in a rare buffer-full edge case, caused a spurious disconnect (no data corruption). See #177.
  • ⭐ Add configurable limit on consecutive client response timeouts. See #166.
  • 🔧 Use aws-lc-rs crypto provider for TLS on most platforms. See #164.
  • 🔧 Tunable connection logging to reduce verbosity during disrupted communication. See #163.
  • ⭐ Add spawn_tcp_client_task_with_options() with extensible ClientOptions builder API. See #161.
  • 🐛 Fix bad default upper limit in retry strategy. See #158.
  • 🔧 PartialEq and Debug consistently applied to public API. See #157.
  • ⭐ Support serde on configuration types with new serialization feature. See #156.
  • 🔧 rodbus-client modernization with serial support and improved error handling. See #152.

1.4.0

Choose a tag to compare

@github-actions github-actions released this 24 Jun 20:56
92cca0c
  • 🔧 Avoid task spawning in client FFI methods. See #136.
  • 🔧 Requests in the client API now fail immediately while the client is connecting.

1.4.0-RC1

1.4.0-RC1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 16 May 16:41
cc08931
  • 🔧 Avoid task spawning in client FFI methods. See #136.
  • 🔧 Requests in the client API now fail immediately while the client is connecting.

1.4.0-M1

1.4.0-M1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 15 May 01:22

🔧 Avoid task spawning in client FFI methods. See #136.

1.3.1

Choose a tag to compare

@github-actions github-actions released this 25 Jul 16:11
f5ae983
  • 🐛 Fix issue with master channels not properly exiting and thrashing CPU. See #120.

1.3.0

Choose a tag to compare

@github-actions github-actions released this 02 May 17:48
  • 🔧 Update to rustls 0.21 which allows peer names with IP addresses in the SAN extension.
  • 🔧 Move common TLS configuration to its own crate shared with our Modbus library.
  • ⭐ PEM parser now supports extracting PKCS#1 private keys, i.e. PEM files with BEGIN RSA PRIVATE KEY.
  • 📖 Documentation improvements in the bindings via oo-bindgen 0.8.3.

1.3.0-rc1

1.3.0-rc1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 27 Apr 20:48
  • 🔧 Update to rustls 0.21.0 which allows peer names with IP addresses in the SAN extension.
  • 🔧 Move common TLS configuration to its own crate shared with our Modbus library.
  • ⭐ PEM parser now supports extracting PKCS#1 private keys, i.e. PEM files with BEGIN RSA PRIVATE KEY.
  • 📖 Documentation improvements in the bindings via oo-bindgen 0.8.3.

1.2.0

Choose a tag to compare

@github-actions github-actions released this 07 Mar 02:49
3641f7b
  • ⭐ Add a mechanism to the bindings to shut down the Runtime with a timeout. See #110.

1.2.0-rc1

1.2.0-rc1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 21 Jan 23:40
7bff296
  • ⭐ Add a mechanism to the bindings to shut down the Runtime with a timeout. See #110.

1.1.0

Choose a tag to compare

@github-actions github-actions released this 11 Nov 00:39
b657990
  • ⭐ Enable TCP_NODELAY for client and server sockets. See #99.
  • ⭐ Enable full link-time optimization (LTO) in release builds. See #103.
  • ⭐ Add support for 3 MUSL Linux targets to C/C++ and .NET. See #104.
  • ⭐ Use only dependencies from crates.io allowing first release there. See #106.
  • ⭐ Internal refactoring to promote code reuse with DNP3. See: #100, #101, #102.