Skip to content

v0.3.0 — HTTP-API-faithful interfaces

Choose a tag to compare

@sideeffffect sideeffffect released this 13 Jun 22:44

HTTP-API-faithful interfaces. Breaking changes to the dapr-wasm-components:interfaces WIT package since v0.2.0.

Breaking

  • API-faithfulness pass — WIT shapes now mirror the Dapr HTTP API exactly, even where the gRPC proto differs (each outbound provider maps its own transport):
    • State: bulk-get items use value; query results use data — now separate records bulk-state-item / query-state-item.
    • Secrets: get-secret returns option (HTTP 204 → none; the gRPC provider never yields none).
    • State transactions: transaction-request is flattened with value: option (omitted for deletes) instead of reusing the save-shaped state-item.
    • Pub/sub: publish's data-content-type is now option (absent → the sidecar default).
    • Conversation: models the full alpha2 surface (was a text subset); converse returns the faithful outputs → choices structure (was a flattened list).
  • OCI artifact renamed: the interface package is published as dapr-wasm-components-interfaces (was …-interface). Update your pull references.

Added / improved

  • Inbound: Dapr configuration-update pushes are delivered to on-configuration-event.
  • wasi-grpc-inbound: CloudEvent extensions are mapped from the proto Struct.
  • compose.sh: one-liner wrapper around wac compose for composing app + outbound + inbound providers.

Verified against docs.dapr.io v1.18 and cross-checked against the vendored gRPC protos; mirrored across both outbound providers and the e2e mock/tests.

Provider worlds in 0.3.0 are still dapr-outbound / dapr-inbound (renamed to outbound / inbound in v0.4.0).

Full changelog: v0.2.0...v0.3.0