[package]
name = "fn0"
version = "0.2.21"
edition.workspace = true
license.workspace = true
repository.workspace = true
description = "FaaS platform powered by wasmtime"
[dependencies]
anyhow = { workspace = true }
bytes = { workspace = true }
chrono = { workspace = true }
crossbeam-channel = { workspace = true }
fn0-wasmtime = { workspace = true }
futures = { workspace = true }
http-body-util = { workspace = true }
hyper = { workspace = true, features = ["server", "client", "http1", "http2"] }
hyper-rustls = { workspace = true }
hyper-util = { workspace = true, features = ["service", "client", "client-legacy", "http1", "http2", "tokio"] }
libsql-hrana = { workspace = true }
memberlist = { workspace = true }
oci-rust-sdk = { workspace = true }
opentelemetry = { workspace = true, features = ["logs", "metrics"] }
opentelemetry-otlp = { workspace = true, features = [
"grpc-tonic",
"reqwest-client",
"metrics",
"logs",
] }
opentelemetry_sdk = { workspace = true, features = ["rt-tokio"] }
reqwest = { workspace = true, features = ["http2"] }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
ski = { workspace = true }
socket2 = { workspace = true }
sonic-rs = { workspace = true }
struson = { workspace = true }
sysinfo = { workspace = true }
tokio = { workspace = true }
tokio-util = { workspace = true }
tower = { workspace = true, features = ["timeout", "util"] }
tower-http = { workspace = true, features = ["timeout"] }
tracing = { workspace = true }
tracing-opentelemetry = { workspace = true }
tracing-subscriber = { workspace = true }
wasmtime = { workspace = true, features = [
"runtime",
"cranelift",
"component-model",
"component-model-async",
"memory-protection-keys",
"parallel-compilation",
"cache",
] }
wasmtime-wasi = { workspace = true, features = ["p3"] }
wasmtime-wasi-http = { workspace = true, features = ["component-model-async", "p3", "default-send-request"] }
[dev-dependencies]
h2 = { workspace = true }
rcgen = { workspace = true }
rustls = { workspace = true }
rustls-pki-types = { workspace = true }
tokio = { workspace = true, features = ["macros", "rt-multi-thread", "time", "sync", "test-util"] }
tokio-rustls = { workspace = true }