Cargo Features

[dependencies]
product-os-router = { version = "0.0.25", default-features = false, features = ["all", "core", "std", "sse", "sessions", "cors", "debug", "middleware", "product-os-tower", "product-os-tower-service", "product-os-tower-layer", "product-os-tower-http"] }
default all? = core, std

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

Enables std of no-std-compat

all = cors, default, sessions, sse, ws
core default = async-trait, tower, tower-layer, tower-service

Enables method_std and response_std of product-os-request, make and util of tower ^0.4.13, std of product-os-http and product-os-http-body

std default = axum

"product-os-http",
"product-os-tower", "product-os-tower/util", "product-os-tower/make",
"product-os-tower-service", "product-os-tower-layer"] # No yet no_std "axum", "axum-extra/query"

Enables query of axum-extra

ws sse all?
sessions all? = axum-extra
cors all?

Enables cors of tower-http ^0.5.0

debug = axum-macros
middleware = futures, hyper

Enables method_std and response_std of product-os-request, std of product-os-http and product-os-http-body

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.

axum std

Enables axum

Core dependencies
Web framework using hyper and tower

axum-extra sessions? std
axum-macros debug?
hyper middleware?
async-trait core
futures middleware?
tower core

Enables tower ^0.4.13

tower-http cors?

Enables tower-http ^0.5.0

tower-service core
tower-layer core
product-os-request core middleware?
product-os-http core middleware?
product-os-http-body core middleware?
product-os-tower implicit feature
product-os-tower-service implicit feature
product-os-tower-layer implicit feature
product-os-tower-http implicit feature