Cargo Features

RosLibRust has no features set by default.

[dependencies]
roslibrust = { version = "0.9.0", features = ["all", "rosapi", "running_bridge", "ros1_test", "ros2_test", "topic_provider", "ros1"] }
all

Note: all does not include running_bridge as that is only intended for CI

rosapi = serde-big-array

Provides a rosapi rust interface

Affects roslibrust::rosapi

running_bridge ros1_test? ros2_test?

Intended for use with tests, includes tests that rely on a locally running rosbridge

ros1_test = running_bridge

For use with integration tests, indicating we are testing integration with a ros1 bridge

ros2_test = running_bridge

For use with integration tests, indicates we are testing integration with a ros2 bridge

topic_provider

Provides access to experimental abstract trait topic_provider

ros1

Provides a ros1 xmlrpc / TCPROS client

Enables gethostname, hyper ^0.14, regex, reqwest ^0.11, serde_rosmsg, and serde_xmlrpc

gethostname:

Only used with native ros1

Affects roslibrust::ros1

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

serde-big-array rosapi?

Enables serde-big-array

TODO I think we should move rosapi into its own crate...
Only used with rosapi