Repository navigation
Every sidecar error is now a dapr4s exception, service invocation exposes HTTP status and headers, and the build moved to sbt.
Breaking
-
Typed Dapr errors. Every sidecar error now arrives as a subclass of the sealed
dapr4s.DaprException. Java SDK exceptions andjs.JavaScriptExceptionno longer reach your code. The subclasses:ComponentNotFoundException(componentKind, name)PermissionDeniedExceptionAppUnreachableException(appId)InvokeHttpException(appId, method, status, body)DaprApiException(errorCode)
Update any
catchofio.dapr.exceptions.DaprException. The mapping table is inwiki/dapr/dapr-error-codes.md. -
Typed
invokethrows on non-2xx. It throwsInvokeHttpException, the same on JVM and JS. 3xx counts as non-2xx. -
UnlockStatus.LockBelongsToOthers. Unlocking a lock that another owner holds returns this new case. Before, it returnedInternalError. Exhaustivematches need the new case. -
Scala.js 1.22.
dapr4s_sjs1_3is built with Scala.js 1.22, so consumers need a 1.22 linker.
Features
InvokeCapability.invokeHttp. It returnsInvokeResponse(status, headers, body)and never throws on status. It takes headers and query parameters.
Build
- dapr4s builds with sbt instead of scala-cli (PR #42).
- ScalablyTyped facades are generated inside the build.
- The scala-cli 1.14.0 pin and the facade and Wasm workaround scripts are gone.
- Published coordinates are unchanged:
com.github.sideeffffect:dapr4s_3anddapr4s_sjs1_3.
Docs
- Wasm component proposal.
docs/WASM-COMPONENTS-PROPOSAL.mddescribes how to target WASI components through dapr-wasm-components v0.7.0. - Wiki. New articles on the WIT overlap and on Dapr error codes.