[package]
edition = "2024"
name = "wash-runtime"
version = "0.1.0"
authors = ["The wasmCloud Team"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Opinionated wasmtime wrapper that provides a runtime and workload API for executing Wasm components"
readme = "README.md"
categories = ["wasm"]
license = "Apache-2.0"
repository = "https://github.com/wasmCloud/wash"
[features]
default = [
"wasi-http",
"wasi-config",
"wasi-logging",
"wasi-blobstore",
"wasi-keyvalue",
]
oci = [
"dep:oci-client",
"dep:oci-wasm",
"dep:docker_credential",
"dep:sha2",
"dep:wit-component",
]
wasi-blobstore = []
wasi-config = []
wasi-http = ["dep:wasmtime-wasi-http"]
wasi-keyvalue = []
wasi-logging = []
[lib]
name = "wash_runtime"
path = "src/lib.rs"
[[test]]
name = "common"
path = "tests/common.rs"
[[test]]
name = "integration_cron_service"
path = "tests/integration_cron_service.rs"
[[test]]
name = "integration_http_blobby"
path = "tests/integration_http_blobby.rs"
[[test]]
name = "integration_http_blobstore"
path = "tests/integration_http_blobstore.rs"
[[test]]
name = "integration_http_counter"
path = "tests/integration_http_counter.rs"
[[test]]
name = "integration_http_keyvalue"
path = "tests/integration_http_keyvalue.rs"
[dependencies.anyhow]
version = "1.0.98"
default-features = false
[dependencies.async-trait]
version = "0.1"
default-features = false
[dependencies.bytes]
version = "1"
default-features = false
[dependencies.chrono]
version = "0.4.42"
features = [
"clock",
"alloc",
]
default-features = false
[dependencies.docker_credential]
version = "1.3.1"
optional = true
default-features = false
[dependencies.hostname]
version = "0.4"
default-features = false
[dependencies.hyper]
version = "1.6.0"
features = [
"server",
"http1",
]
default-features = false
[dependencies.names]
version = "0.14"
default-features = false
[dependencies.oci-client]
version = "0.15.0"
features = [
"rustls-tls",
"rustls-tls-native-roots",
"rustls-tls",
"rustls-tls-native-roots",
]
optional = true
default-features = false
[dependencies.oci-wasm]
version = "0.3.0"
features = [
"rustls-tls",
"rustls-tls",
]
optional = true
default-features = false
[dependencies.rustls]
version = "0.23"
features = [
"std",
"tls12",
]
default-features = false
[dependencies.rustls-pemfile]
version = "2.2"
features = ["std"]
default-features = false
[dependencies.semver]
version = "1.0.26"
default-features = false
[dependencies.sha2]
version = "0.10.8"
optional = true
default-features = false
[dependencies.sysinfo]
version = "0.32"
features = ["system"]
default-features = false
[dependencies.tempfile]
version = "3.15.0"
default-features = false
[dependencies.tokio]
version = "1.45.1"
features = [
"full",
"sync",
"net",
"macros",
]
default-features = false
[dependencies.tokio-rustls]
version = "0.26"
default-features = false
[dependencies.tracing]
version = "0.1.41"
features = ["attributes"]
default-features = false
[dependencies.uuid]
version = "1.17.0"
features = ["v4"]
default-features = false
[dependencies.wasmtime]
version = "31"
features = [
"component-model",
"cranelift",
"pooling-allocator",
]
default-features = false
[dependencies.wasmtime-wasi]
version = "31"
default-features = false
[dependencies.wasmtime-wasi-http]
version = "31"
optional = true
default-features = false
[dependencies.wit-component]
version = "0.235.0"
optional = true
default-features = false
[dev-dependencies.gag]
version = "1.0"
[dev-dependencies.reqwest]
version = "0.12.20"
features = [
"json",
"rustls-tls",
]
default-features = false
[dev-dependencies.tokio]
version = "1.45.1"
features = [
"full",
"full",
]
default-features = false
[dev-dependencies.tracing-subscriber]
version = "0.3.19"
features = [
"env-filter",
"ansi",
"time",
"json",
]
default-features = false