Cargo Features
[dependencies]
rustdns = { version = "0.4.0", default-features = false, features = ["clients", "doh", "json", "tcp", "udp", "zones", "http_deps"] }
- default = clients, zones
-
These default features are set whenever
rustdns
is added without
somewhere in the dependency tree.default-features = false - clients default = doh, json, tcp, udp
-
Enable the DNS client
- doh clients = base64, http_deps
-
DNS over HTTPS (DoH) client (rfc8484).
Affects
clients::doh
,rustdns::clients
… - json clients = http_deps, serde, serde_json
-
DNS over HTTPS JSON client
Affects
clients::json
,rustdns::clients
… - tcp clients
-
DNS over TCP client
Affects
clients::tcp
,rustdns::clients
… - udp clients
-
DNS over UDP client
Affects
rustdns::clients
… - zones default = pest, pest_consume, pest_derive
-
Enable the Zone Parser
- http_deps doh? json? = http, hyper, hyper-alpn, mime, url
-
A private feature for common http dependencies.
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.
- http http_deps?
-
Enables http ^0.2.5
Used for the web clients
- url http_deps?
- hyper http_deps?
-
Enables hyper ^0.14.16
- hyper-alpn http_deps?
-
Enables hyper-alpn ^0.3.0
- mime http_deps?
- base64 doh?
-
Enables base64 ^0.13.0
Needed for DNS over HTTP (DoH)
- serde json?
-
Enables serde
Needed for DNS over HTTP Json
- serde_json json?
- pest zones
-
Enables pest
Needed for Zone file parsing
- pest_consume zones
- pest_derive zones