Skip to content

v0.4.0

Latest

Choose a tag to compare

@DatAsianBoi123 DatAsianBoi123 released this 30 May 22:03
· 22 commits to main since this release
b08eed2

This release adds some final touches to the lib before version 1.0.0.

Full Changelog: v0.3.0-alpha...v0.4.0-alpha

Breaking Changes

  • Method Topic::name_mut now returns a &mut String instead of a &mut str.
  • AnnouncedTopics and AnnouncedTopic structs no longer implement Eq.
  • Trait NetworkTableData no longer has a Clone requirement.
  • Removed error variants ReceiveMessageError::FailedDeserializingJson and ReceiveMessageError::FailedDeserializingMsgPack in favor of warn logs
  • Topic::subscribe and TopicCollection::subscribe now return a Result.

Additions

  • Created method Client.connect_setup that allows a callback to be called once the client has connected.
  • DataType now implements Copy
  • Created a non-generic version of Publisher to allow for publishing arbitrary data at runtime via Topic::generic_publish.
  • Created a way to retrieve a topic's value via AnnouncedTopic::value.
  • Added feature publish_bypass that adds bypass versions of publishing as a workaround to a NetworkTables bug.
  • Created a cheaply-clonable ClientHandle, accessed via Client::handle, that can be used in asynchronous environments.

Improvements

  • Tracing is now much more reliable and contains more information.
  • Channel capacity for websocket messages greatly increased, reducing lagged errors.
  • Several more docs are now clearer and include examples.

crates.io
docs.rs