Cargo Features

[dependencies]
squinn = { version = "0.12.6", default-features = false, features = ["lock_tracking", "native-certs", "tls-rustls", "ring", "runtime-tokio", "runtime-async-std", "log", "futures-io"] }
default = log, native-certs, runtime-tokio, tls-rustls

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

lock_tracking

Records how long locks are held, and warns if they are held >= 1ms

native-certs default

Provides ClientConfig::with_native_roots() convenience method

Enables native-certs of squinn-proto

tls-rustls default = ring, rustls

Enables tls-rustls of squinn-proto

ring tls-rustls

Enables Endpoint::client and Endpoint::server conveniences

Enables ring of squinn-proto

runtime-tokio default

Enables net, rt and time of tokio

runtime-async-std = async-io, async-std
log default

Write logs via the log crate when no tracing subscriber exists

Enables log of squinn-proto, tracing, and squinn-udp

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-io runtime-async-std?
async-std runtime-async-std?
futures-io implicit feature

Enables futures-io

Enables futures::io::{AsyncRead, AsyncWrite} support for streams

rustls tls-rustls

Enables rustls ^0.21.0