This repository was archived by the owner on Nov 5, 2020. It is now read-only.
v0.8.0
Pre-release
Pre-release
All capability providers (including portable WASI providers) are now required to respond to the operation OP_GET_CAPABILITY_DESCRIPTOR and return a messagepack-serialized struct containing metadata about the capability provider. This metadata includes:
- Name
- Documentation description
- Version (semver string) and Revision (monotonic)
- List of supported operations
We created a simple builder syntax that makes it easy and readable for capability providers to supply a capability descriptor:
/// Obtains the capability provider descriptor
fn get_descriptor(&self) -> Result<Vec<u8>, Box<dyn Error>> {
Ok(serialize(
CapabilityDescriptor::builder()
.id(CAPABILITY_ID)
.name("Default waSCC HTTP Server Provider (Actix)")
.long_description("A fast, multi-threaded HTTP server for waSCC actors")
.version(VERSION)
.revision(REVISION)
.with_operation(
OP_HANDLE_REQUEST,
OperationDirection::ToActor,
"Delivers an HTTP request to an actor and expects an HTTP response in return",
)
.build(),
)?)
}NOTE - This is a breaking change, so old versions of capability providers will not work with this version of the waSCC host.