Cargo Features

SBP has no features set by default.

[dependencies]
sbp = { version = "6.2.1", features = ["async", "serde", "json", "float_roundtrip", "link", "swiftnav"] }
async = futures

Enables async of dencode

Affects de::stream_messages, de::stream_messages_with_timeout, de::stream_frames, de::stream_frames_with_timeout, de::stream_messages

serde float_roundtrip? json? = serde-big-array

Enables serde

json = base64, serde, serde_json

Affects sbp::json

float_roundtrip = serde

Enables float_roundtrip of serde_json

serde_json:

Use sufficient precision when parsing fixed precision floats from JSON to ensure that they maintain accuracy when round-tripped through JSON. This comes at an approximately 2x performance cost for parsing floats compared to the default best-effort precision.

Unlike arbitrary_precision, this feature makes f64 -> JSON -> f64 produce output identical to the input.

Affects sbp::link

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.

swiftnav implicit feature

Enables swiftnav

swiftnav:

GNSS positioning and related utilities

Affects sbp::time, messages::SbpMessage.gps_time, sbp_iter_ext::SbpIterExt.with_rover_time

base64 json?

Enables base64 ^0.13

futures async?
serde-big-array serde?

Enables serde-big-array ^0.4

slotmap link?
serde_json float_roundtrip? json?