v0.19.0 — caller/callee dual derivations (deriveChecked)
Each Dapr building block is a dual pair (app→Dapr caller ↔ Dapr→app callee). This release lets one shared trait bind and type-check both sides.
Highlights
deriveChecked[Contract, Impl]added (alongside the unchangedderive) onInvokeRoutes,Subscriptions,ActorDefinitions,JobRoutes,WorkflowActivities, andWorkflowActivityCalls: the macro verifies the impl answers every contract method with matching request/response types, matched by method name or wire name (topic / job / actor) as appropriate.- New server-route engines
BindingRoutes.deriveandJobRoutes.derive— filling the previously-asymmetric Bindings and Jobs pairs. Actor.derivenow also schedules reminders/timers: a@reminder/@timermethod forwards toActorContext.registerReminder/registerTimer;ActorDefinitions.deriveCheckedverifies them against the actor's@reminder/@timerroutes.- Dual cross-reference docs on the capability traits and route types.
Additive over v0.18.0 (no breaking changes). Bindings has no deriveChecked — output operations vs input payload-delivery are independent directions, not a request/response contract.