1.7.0-RC1
Pre-release
Pre-release
- ⭐ Add outstation ConnectionManager with fine-grained connection control for TCP and TLS clients. See #381, #406.
- New Rust API:
spawn_outstation_tcp_client_2()andspawn_outstation_tls_client_2()functions withClientConnectionHandlertrait - New FFI API:
outstation_create_tcp_client_with_handler()andoutstation_create_tls_client_with_handler()functions - Provides dynamic endpoint selection, custom retry logic, connection lifecycle notifications, and DNS resolution handling
- Per-connection master address override via
ConnectionInfo::set_master_address()for failover scenarios
- New Rust API:
- ⭐ Add DirectWriteAbsTime time sync procedure for non-conformant outstations. See #403.
- Writes Group 50 Var 1 directly without delay measurement for outstations that don't properly implement IEEE-1815 time sync
- ⭐ Add optional support for parsing and transmission of zero-length octet strings via global setting. See #379.
- ⭐ Add optional support for AWS libcrypto (aws-lc-rs) as TLS backend. See #378.
- ⭐ Make OctetString constructor public in Java bindings. See #402.
- ⭐ Make HeaderInfo constructor public for mockability in tests. See #404.
- 🛡️ Add security policy and automated supply chain scanning. See #394.
- 🔧 Add quality gate to prevent releases when tests fail. See #393.
- 🔧 Automate cargo publish to crates.io in CI release process. See #407.
- 🔧 Better CLI examples with improved organization and documentation. See #375.
- 🔧 Refactor release workflow into separate idempotent jobs for improved reliability.
- 📖 Update TLS documentation to clarify empty string behavior for certificate passwords and improve grammar. See #389.