Cargo Features

[dependencies]
zbus = { version = "4.1.2", default-features = false, features = ["uuid", "url", "time", "chrono", "option-as-array", "bus-impl", "p2p", "windows-gdbus", "async-io", "tokio", "vsock", "tokio-vsock"] }
default = async-io

The async-io feature is set by default whenever zbus is added without default-features = false somewhere in the dependency tree.

uuid

Enables uuid of zvariant

url

Enables url of zvariant

time

Enables time of zvariant

chrono

Enables chrono of zvariant

option-as-array

Enables ser/de of Option<T> as an array of 0 or 1 elements.

Enables option-as-array of zvariant

bus-impl = p2p

Enables API that is only needed for bus implementations (enables p2p).

p2p bus-impl?

Enables API that is only needed for peer-to-peer (p2p) connections.

Affects handshake::ServerHandshake

windows-gdbus
async-io default = async-executor, async-fs, async-lock, async-task, blocking

Enables async-io and io of futures-util

activate default features

tokio tokio-vsock?

Enables tokio

FIXME: We should only enable process feature for Mac OS. See comment on async-process below for why we can't.

Affects executor::Executor, executor::Task, file::FileLines, utils::block_on

vsock

Enables async-io and vsock ^0.4.0

tokio-vsock = tokio

Enables tokio-vsock ^0.4

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.

async-lock async-io
async-executor async-io
blocking async-io
async-task async-io
async-fs async-io