#tower-http #product-os #request-id

no-std product-os-tower-http

Product OS : Tower Http is a derivative of the tower-http crate restructured for both std and no_std environments

3 releases

0.0.3 Apr 21, 2024
0.0.2 Apr 9, 2024
0.0.1 Dec 25, 2023

#2 in #request-id


Used in product-os-router

AGPL-3.0-only

665KB
13K SLoC

Product OS : Tower

Product OS : Tower is a derivative of the tower crate restructured for both std and no_std environments.

What is Product OS?

Product OS is a collection of packages that provide different tools and features that can work together to build products more easily for the Rust ecosystem.

Installation

Use the Rust crate package manager cargo to install Product OS : Tower.

cargo add product-os-tower

or add Product OS : Tower to your cargo.toml [packages] section.

product-os-tower = { version = "0.0.3", features = [], default-features = true, optional = false }

Features

Product OS Tower supports a number of features leveraging the framework from the tower crate:

  • Use std tower-http crate with default selection
  • Support no_std with alloc only environments

Note: the following features do not support no_std:

  • auth

  • catch-panic

  • fs

  • metrics

  • request-id

  • timeout

  • trace

  • validate-request

  • compression-br

  • compression-deflate

  • compression-full

  • compression-gzip

  • compression-zstd

  • decompression-br

  • decompression-deflate

  • decompression-full

  • decompression-gzip

  • decompression-zstd

// Feature samples TODO

Usage

// Examples TODO

Contributing

Contributions are not currently available but will be available on a public repository soon.

License

GNU AGPLv3

Dependencies

~2–10MB
~133K SLoC