#async-trait #service #tower #layer #networking #traits #middleware

tower-async-layer

Decorates a Service to allow easy composition between Services. An “Async Trait” fork from the original Tower Library

3 unstable releases

0.2.0 Nov 20, 2023
0.1.1 Jul 18, 2023
0.1.0 Jul 17, 2023

#59 in #async-trait


Used in 4 crates

MIT license

23KB
425 lines

Tower Async Layer

Decorates a Tower Async Service, transforming either the request or the response.

Crates.io Documentation MIT licensed Build Status

Fork

Tower Async Layer is a fork of https://github.com/tower-rs/tower and makes use of async traits to simplify things and make it more easier to integrate async functions into middleware.

This fork is made entirely with the needs of the author in mind, and thus might not yet contain all features you might need.

Come join us at discord on the #tower-async public channel at Discord or tag @glendc at Tokio's Tower discord instead.

Where suitable we'll keep in sync (manually) with Tower and if the opportunity arises we'll contribute back "upstream" as well. Given however how big the diversange we aren't sure how likely that is.

Overview

Often, many of the pieces needed for writing network applications can be reused across multiple services. The Layer trait can be used to write reusable components that can be applied to very different kinds of services; for example, it can be applied to services operating on different protocols, and to both the client and server side of a network transaction.

License

This project is licensed under the MIT license.

Big thanks and credits go towards the original Tower authors which licensed their code under the same License type.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Tower Async by you, shall be licensed as MIT, without any additional terms or conditions.

No runtime deps