Cargo Features

[dependencies]
socketcan = { version = "3.5.0", default-features = false, features = ["netlink", "dump", "vcan_tests", "utils", "tokio", "async-std", "async-io", "enumerate", "smol"] }

Features:

"netlink" (default) - Whether to include CAN interface configuration
capabilities based on netlink kernel communications "dump" (default) - Whether to include 'candump' log file parsing
capabilities.
"enumerate" - Ability to enumerate the available CAN network interfaces

"utils" - Build the command-line utilities

"tokio" - Async/await support with tokio
"async-io" - Async/await support with async-io
"async-std" - Async/await support for async-std using async-io
"smol" - Async/await support for smol using async-io

default = dump, netlink

These default features are set whenever socketcan is added without default-features = false somewhere in the dependency tree.

Affects socketcan::nl

dump default

Affects socketcan::dump

netlink_tests vcan_tests = netlink
utils = anyhow, clap

Required by the rcan binary

tokio = futures, mio

Enables tokio

Affects socketcan::tokio

async-std

Enables async-io ^1.13 and async-std

Affects socketcan::async_std, socketcan::async_io

async-io

Enables async-io ^1.13

Affects socketcan::async_io

enumerate

Enables libudev

Affects socketcan::enumerate

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.

clap utils?

Enables clap ^3.2

anyhow utils?
mio tokio?
futures tokio?
smol implicit feature

Enables smol ^1.3

smol:

A small and fast async runtime

Affects socketcan::smol, socketcan::async_io

neli linux netlink