docs/release_notes/v1.16.10.md
This update includes bug fixes:
After upgrading to Dapr v1.16.0, applications using the WASM output binding or WASM HTTP middleware component fail to start with the error:
FATA[0000] Fatal error from runtime: process component wasm error:
[INIT_COMPONENT_FAILURE]: initialization error occurred for wasm
(bindings.wasm/v1): couldn't find binding wasm (bindings.wasm/v1)
WASM binding and WASM HTTP middleware components are completely unavailable on all production architectures (amd64, arm64, arm), affecting all versions from v1.16.0 through v1.16.9.
In v1.16.0, PR #9009 renamed component registration files for naming consistency:
binding_webassembly.go → bindings_wasm.gomiddleware_http_webassembly.go → middleware_http_wasm.goGo applies an implicit build constraint when a filename matches *_GOARCH.go. Since wasm is a valid GOARCH value, files ending in _wasm.go are only compiled when GOARCH=wasm, causing the WASM components to never be registered on amd64/arm64/arm platforms. This inadvertently reverted fixes from #5486 and #6439 which specifically addressed this exact filename clash.
Renamed the files back to use the _webassembly suffix which does not match any valid GOARCH value:
bindings_wasm.go → bindings_webassembly.gomiddleware_http_wasm.go → middleware_http_webassembly.go