Skip to main content

Versioning

Our library follows the semantic versioning specification. Refer to the specification for the meaning of the <major>.<minor>.<patch> fields of the version number.

The latest release (version 1.3.1) is available here.

Changelog

1.3.1

  • 🐛 Fix issue with master channels not properly exiting and thrashing CPU. See #120.

1.3.0

  • 🔧 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.2.0

  • ⭐ Add a mechanism to the bindings to shut down the Runtime with a timeout. See #110.

1.1.0

  • ⭐ 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.

1.0.0

  • ⭐ Add Modbus Security (TLS) support. See #52.
  • ⭐ Add RTU support. See #56.
  • ⭐ Dynamic protocol decoding. See #61.
  • ⭐ Resolve host names on client. See #68.
  • ⭐ Add communication channel state callbacks. See #77.
  • ⭐ TCP/TLS server can now filter incoming connections based on IP. See #87.
  • 🐛 Properly reset TCP connection retry timeout on success. See #82.

0.9.1

  • Client callbacks are now not blocking. See #53.
  • 🐛 Fix leak of tracing::Span in bindings. See #53.
  • ⭐ Add Linux AArch64 support in Java and .NET. See #51.

0.9.0

  • 🎉 First official release