[package]
edition = "2024"
name = "claviron-python"
version = "0.2.6"
build = "build.rs"
links = "claviron_python"
include = [
"/src/**/*.rs",
"/src/**/*.py",
"/stubs/**/*.pyi",
"/build.rs",
"/Cargo.toml",
"/README.md",
"/LICENSE",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Python embedded in Claviron: the interpreter, its environment and ASGI applications"
readme = "README.md"
keywords = [
"python",
"asgi",
"claviron",
"embedding",
"websocket",
]
categories = [
"web-programming::http-server",
"api-bindings",
"asynchronous",
]
license = "MIT"
repository = "https://github.com/claviron/python"
[features]
asgi = [
"claviron/http",
"claviron/application",
"claviron/orbit",
"dep:bytes",
"dep:http",
"dep:http-body",
"dep:http-body-util",
"dep:percent-encoding",
"dep:pyo3-async-runtimes",
"dep:serde_json",
"dep:tokio",
"dep:tower-service",
"dep:tracing",
]
backend = [
"websocket",
"dep:async-trait",
"dep:claviron-pipeline",
"dep:serde",
"dep:serde_yaml",
]
broadcast = [
"asgi",
"dep:claviron-broadcast",
]
default = []
django = [
"broadcast",
"dep:serde",
]
edge = [
"backend",
"claviron/edge",
]
log = [
"asgi",
"claviron/log-pipeline",
]
websocket = [
"asgi",
"claviron/websocket",
"dep:claviron-transport",
"claviron-transport/websocket-session",
]
webtransport = [
"edge",
"claviron/webtransport",
"tokio/io-util",
]
[lib]
name = "claviron_python"
path = "src/lib.rs"
[dependencies.async-trait]
version = "0.1"
optional = true
[dependencies.bytes]
version = "1.11"
optional = true
[dependencies.claviron]
version = "0.2.5"
features = ["runtime"]
default-features = false
[dependencies.claviron-broadcast]
version = "0.2.1"
optional = true
[dependencies.claviron-pipeline]
version = "0.2.5"
optional = true
[dependencies.claviron-transport]
version = "0.2.5"
optional = true
[dependencies.http]
version = "1.4"
optional = true
[dependencies.http-body]
version = "1.0"
optional = true
[dependencies.http-body-util]
version = "0.1"
optional = true
[dependencies.percent-encoding]
version = "2.3"
optional = true
[dependencies.pyo3]
version = "0.30.1"
[dependencies.pyo3-async-runtimes]
version = "0.30.0"
features = ["tokio-runtime"]
optional = true
[dependencies.serde]
version = "1"
features = ["derive"]
optional = true
[dependencies.serde_json]
version = "1"
optional = true
[dependencies.serde_yaml]
version = "0.9"
optional = true
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"rt",
"sync",
]
optional = true
[dependencies.tower-service]
version = "0.3"
optional = true
[dependencies.tracing]
version = "0.1"
optional = true
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio]
version = "1"
features = [
"macros",
"rt-multi-thread",
]
[build-dependencies.pyo3-build-config]
version = "0.30.1"
features = ["resolve-config"]