[package]
name = "golem-wasm-rpc"
version = "1.0.6"
edition = "2021"
license = "Apache-2.0"
homepage = "https://golem.cloud"
repository = "https://github.com/golemcloud/wasm-rpc"
description = "Golem WASM RPC support library"
include = []
[lib]
path = "src/lib.rs"
crate-type = ["cdylib", "rlib"]
harness = false
[dependencies]
wit-bindgen-rt = { version = "0.26.0", features = ["bitflags"] }
arbitrary = { version = "1.3.2", features = ["derive"], optional = true }
async-recursion = { version = "1.1.1", optional = true }
async-trait = { version = "0.1.77", optional = true }
bigdecimal = { version = "0.4.5", optional = true }
bincode = { version = "2.0.0-rc.3", optional = true }
git-version = "0.3.9"
golem-wasm-ast = { workspace = true, optional = true }
poem-openapi = { version = "5.0", optional = true }
serde = { version = "1.0", optional = true }
serde_json = { version = "1.0", optional = true }
prost = { version = "0.12", optional = true }
uuid = "1.10.0"
wasmtime = { version = "=21.0.1", features = [
"component-model",
], optional = true }
wasmtime-wasi = { version = "=21.0.1", optional = true }
wasm-wave = { version = "=0.6.0", optional = true }
[dev-dependencies]
proptest = "1.4.0"
proptest-arbitrary-interop = "0.1.0"
test-r = { workspace = true, default-features = false }
[build-dependencies]
prost-build = "0.12.6"
cargo_metadata = "0.18.1"
[features]
default = ["host"]
host = [
"dep:async-trait",
"arbitrary",
"bincode",
"json",
"poem_openapi",
"protobuf",
"serde",
"text",
"typeinfo",
"wasmtime",
]
arbitrary = ["dep:arbitrary"]
bincode = ["dep:bincode", "golem-wasm-ast/bincode"]
json = [
"dep:serde",
"dep:serde_json",
"dep:bigdecimal",
"typeinfo",
"golem-wasm-ast/json",
]
poem_openapi = [
"dep:poem-openapi",
"json",
"typeinfo",
"golem-wasm-ast/poem_openapi",
]
protobuf = ["dep:bincode", "dep:serde", "dep:prost"]
serde = ["dep:serde"]
stub = []
text = ["wasmtime", "dep:wasm-wave", "golem-wasm-ast/wave"]
typeinfo = [
"dep:golem-wasm-ast",
"golem-wasm-ast/analysis",
"golem-wasm-ast/protobuf",
"protobuf",
]
wasmtime = [
"dep:wasmtime",
"dep:wasmtime-wasi",
"dep:async-recursion",
"typeinfo",
]
[package.metadata.component]
package = "golem:rpc"
[package.metadata.component.target]
path = "wit"
[package.metadata.component.target.dependencies]
"wasi:io" = { path = "wit/deps/io" }