- Rust 1.63 is now required.
- Fixed-length string types in
ads::strings
are now using const generics instead of macro-created types. - Array bounds can be negative, change type in symbol info (#13).
- Fix a problem with long comments in symbol info (#8).
- Add
Handle::raw
to get the u32 handle ID.
- Support asking the AMS router for an open port. This is required when connecting to a PLC on 127.0.0.1.
- Support for directly reading Rust types from
Device
s andsymbol::Handle
s usingread_value
/write_value
. - Support the "sum-up" requests from
Device
, which can run multiple read/write/read-write/notif requests in a single ADS request-reply cycle. - Add the
strings
module with the possibility to create fixed-length string types corresponding to the PLC'sSTRING
andWSTRING
. - Add more known ADS states.
- Document the
symbol::Symbol
andsymbol::Type
flags. - Add an adstool command to list AMS routes on the target.
- Add an adstool subcommand to list type inventory.
- Fix Rust 1.48 compatibility.
- Add
symbol::get_symbol_info()
and related structs. - Add an adstool option to automatically set a route.
- Add an adstool subcommand to query module licenses.
- Add an adstool command to query the target description.
- Add
Client::source()
. - Add
Client::write_read_exact()
. - Add
symbol::get_size()
andsymbol::get_location()
. - Add more known index groups.
- Support system info from TC/RTOS.
- Display ADS errors in hex.
- Many improvements to the adstool example.
- Initial release.