Expand description

Rust/Python bindings, runtime and utilities.

This crates implements all the generic code needed to start and manage a Smithy Rust HTTP server where the business logic is implemented in Python, leveraging PyO3.

Modules

Rust tracing and Python logging setup and utilities.
Schedule pure-Python middlewares as [tower::Layer]s.
Python wrapped types from aws-smithy-types and aws-smithy-http.

Macros

Macro that provides mixin methods of collections.abc.MutableMapping to the implementing type.

Structs

A Python handler function representation.
Exception that can be thrown from a Python middleware.
A Python middleware handler function representation.
Tower [Layer] implementation of Python middleware handling.
Python-compatible Request object.
Python-compatible Response object.
Socket implementation that can be shared between multiple Python processes.
Modifies the Python logging module to deliver its log messages using tracing::Subscriber events.
Wraps PyErr with a richer debug output that includes traceback and cause.

Enums

Python error that implements foreign errors.

Traits

Trait defining a Python application.

Functions

Consumes a Python logging.LogRecord and emits a Rust tracing::Event instead.
Wrap err with RichPyErr to have a richer debug output.