Cargo Features

[dependencies]
nodecraft = { version = "0.3.5", default-features = false, features = ["std", "alloc", "full", "agnostic", "async", "dns", "dns-over-quic", "dns-over-h3", "dns-over-https-rustls", "dns-over-rustls", "dns-over-openssl", "dns-over-native-tls", "dns-webpki-roots", "dns-native-certs", "dnssec-openssl", "dnssec-ring", "dnssec", "smol_str", "resolver", "serde", "rkyv", "transformable", "tracing"] }
default = std

The std feature is set by default whenever nodecraft is added without default-features = false somewhere in the dependency tree.

std default agnostic? async? dns? full? resolver? = alloc, humantime-serde, thiserror

Enables std of cheap-clone, optional futures, optional serde, optional smol_str ^0.2, and optional transformable

serde:

Provide impls for common standard library types like Vec<T> and HashMap<K, V>.
Requires a dependency on the Rust standard library.

Affects impls::socket_addr, impls::address

alloc smol_str? std = smol_str

Enables alloc of cheap-clone and optional transformable

full = agnostic, dns, resolver, serde, std, tracing
agnostic dns? dns-native-certs? dns-over-h3? dns-over-https-rustls? dns-over-native-tls? dns-over-openssl? dns-over-quic? dns-over-rustls? dns-webpki-roots? dnssec? dnssec-openssl? dnssec-ring? full? = async, std

enable runtime agnostic features

Enables agnostic-lite

Affects resolver::AddressResolver

async agnostic? dns? resolver? = std

enable async features

Enables futures, async of optional transformable

Affects impls::socket_addr, impls::address

dns dns-native-certs? dns-over-h3? dns-over-https-rustls? dns-over-native-tls? dns-over-openssl? dns-over-quic? dns-over-rustls? dns-webpki-roots? dnssec? dnssec-openssl? full? = async, resolver, std

enable dns node address resolver

Enables crossbeam-skiplist and hickory-resolver, dns of agnostic

Affects impls::dns

dns-over-quic = dns

Enables dns-over-quic of agnostic

dns-over-h3 = dns

Enables dns-over-h3 of agnostic

dns-over-https-rustls = dns

Enables dns-over-https-rustls of agnostic

dns-over-rustls = dns

Enables dns-over-rustls of agnostic

dns-over-openssl = dns

Enables dns-over-openssl of agnostic

dns-over-native-tls = dns

Enables dns-over-native-tls of agnostic

dns-webpki-roots = dns

Enables dns-webpki-roots of agnostic

dns-native-certs = dns

Enables dns-native-certs of agnostic

dnssec-openssl = dns

Enables dnssec-openssl of agnostic

dnssec-ring = dnssec

Enables dnssec-ring of agnostic

dnssec dnssec-ring? = dns

Enables dnssec of agnostic

smol_str alloc? = alloc

Enables smol_str ^0.2, smol_str of transformable

resolver dns? full? = async, std

enable node address resolver

Enables crossbeam-skiplist

Affects nodecraft::resolver

serde full? = humantime-serde

Enables serde, serde-config of optional hickory-resolver, serde of optional smol_str ^0.2

rkyv

Enables rkyv ^0.7

transformable smol_str?

Enables transformable

Affects address::Address, id::Id, node::NodeTransformError

tracing full?

enable tracing

Enables tracing

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.

thiserror std
humantime-serde serde? std
crossbeam-skiplist dns? resolver?