Feature flags

All features on the churust crate. Default features are empty.

Plugins

FeatureCrateNotes
jsonchurust-jsonJson<T>, ContentNegotiation
loggingchurust-loggingCallLogging
corschurust-corsCors
authchurust-authAuth, Principal<P>
ratelimitchurust-ratelimitRateLimit (GCRA)
compressionchurust-compressionbrotli / gzip / deflate
templateschurust-templatesminijinja templates
full(meta)All seven plugins above

Data & docs

FeatureCrateNotes
redischurust-redisRedisStore sessions
clientchurust-clientOutbound HTTP
client-tlschurust-clientHTTPS for the client (enables client)
openapichurust-openapiOpenAPI 3.1 (enables json)

Transports

FeatureEnablesNotes
wschurust-core/wsWebSockets
fschurust-core/fsStaticFiles
multipartchurust-core/multipartMultipart parsers
tlschurust-core/tlsrustls HTTPS
http3churust-core/http3QUIC / HTTP/3 (implies TLS stack)

Examples

churust = "0.3"
churust = { version = "0.3", features = ["full"] }
churust = { version = "0.3", features = ["full", "ws", "fs", "tls"] }
churust = { version = "0.3", features = ["client-tls", "openapi"] }

Lockstep versioning: every churust-* crate shares the umbrella version.