Cargo Features

[dependencies]
rusty-penguin = { version = "0.5.3", default-features = false, features = ["rustls-webpki-roots", "rustls-native-roots", "nativetls", "tests-real-internet4", "tests-real-internet6", "default-is-ipv6", "tokio-console", "deadlock-detection", "penguin-binary"] }
default = penguin-binary, rustls-native-roots, tests-real-internet4

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

rustls-webpki-roots = hyper-rustls, rustls, rustls-pemfile, tokio-rustls, webpki-roots

Note that it does not make sense to use more than one TLS implementations at the same time, but there must be at least one if penguin-binary is enabled.

Enables webpki-tokio of hyper-rustls ^0.24, rustls-tls-webpki-roots of tokio-tungstenite

Affects tls::make_client_https

rustls-native-roots default = hyper-rustls, rustls, rustls-native-certs, rustls-pemfile, tokio-rustls

Enables native-tokio of hyper-rustls ^0.24, rustls-tls-native-roots of tokio-tungstenite

Affects tls::make_client_https

nativetls = hyper-tls, native-tls, tokio-native-tls

Enables native-tls of tokio-tungstenite

Affects tls::make_client_https

tests-real-internet4 default

Allow some tests that require real internet connection

tests-real-internet6
default-is-ipv6

Set the default localhost or unspecified address to IPv6

tokio-console = console-subscriber

Enabling this causes penguin to listen for tokio-console connections

deadlock-detection

parking_lot's deadlock detection in a separate thread

Enables deadlock_detection of parking_lot

penguin-binary default = arc-swap, base64, clap, hyper, once_cell, sha1, tracing-subscriber

penguin binary

Enables tokio-tungstenite, fs, io-std, net, rt-multi-thread and signal of tokio

Required by the penguin binary

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.

arc-swap penguin-binary
base64 penguin-binary

Enables base64 ^0.21

clap penguin-binary
console-subscriber tokio-console?

Enables console-subscriber ^0.1

hyper penguin-binary
hyper-rustls rustls-native-roots rustls-webpki-roots?

Enables hyper-rustls ^0.24

hyper-tls nativetls?

Enables hyper-tls ^0.5

native-tls nativetls?
once_cell penguin-binary
rustls rustls-native-roots rustls-webpki-roots?

Enables rustls ^0.21

rustls-native-certs rustls-native-roots

Enables rustls-native-certs ^0.6

rustls-pemfile rustls-native-roots rustls-webpki-roots?

Enables rustls-pemfile ^1

sha1 penguin-binary
tokio-native-tls nativetls?
tokio-rustls rustls-native-roots rustls-webpki-roots?

Enables tokio-rustls ^0.24

tracing-subscriber penguin-binary
webpki-roots rustls-webpki-roots?

Enables webpki-roots ^0.25