Jump to content

Dapr

From Wikipedia, the free encyclopedia
Dapr
DevelopersMicrosoft, Diagrid[1][2]
ReleaseOctober 16, 2019; 6 years ago (2019-10-16)
Stable release
v1.18.2 / July 21, 2026; 12 days ago (2026-07-21)[3]
Written inGo
Operating systemCross-platform
Available inEnglish
TypeCloud native runtime system
LicenseInitially MIT License, now Apache License 2.0
Websitedapr.io
Repositorygithub.com/dapr/dapr

Dapr (Distributed Application Runtime) is a free and open source runtime system designed to support cloud native and serverless computing.[4] Since version 1.18, released in June 2026, Dapr has brought attestation, provenance and tamper-evident execution history to workflows and AI agents.[5] It provides SDKs and APIs for Java, .NET, Python, Go, JavaScript and Rust, and can be deployed to the Kubernetes cloud deployment system or run on a local machine in self-hosted mode.[6][7][8]

The source code is written in the Go programming language. It is licensed under Apache License 2.0 and hosted on GitHub.[9]

Dapr is a CNCF project and graduated in November 2024.[10]

The project describes its current focus as durable and verifiable execution, so that workflows and AI agents survive failure and run to completion. Its durable execution workflow engine is designed to complete every step of a workflow despite crashes, restarts and network outages, recovering state from the point at which execution stopped. A workflow's execution history can be cryptographically signed and verified, which makes the record of what ran tamper-evident and auditable. The same engine runs durable AI agents, which reason, call tools and resume from a point of failure without losing progress. As a CNCF distributed application runtime, Dapr exposes infrastructure-agnostic APIs intended to be portable across clouds and hosting environments, together with the security, resiliency and observability features expected of production systems.[11]


Architectural approach of Dapr, showing the building block APIs:[12][13]
Microservice application
Services written in Go, Python, .NET, …
↕ ↕ ↕
HTTP API / gRPC API
WorkflowsService-to-
service invocation
Publish and
subscribe
State
management
BindingsActorsSecretsConfigurationDistributed
lock
CryptographyJobsConversation
Dapr
Any cloud or edge infrastructure

Release history

[edit]

Dapr is developed in the open on GitHub, and each minor release is accompanied by published release notes. The releases from 1.10 (February 2023) onwards added several new API building blocks, promoted a number of existing APIs to stable status, and introduced a control plane service for job scheduling.

Workflow has been the main area of development across these releases. It was introduced as an alpha API in 1.10, moved to beta in 1.12, and was declared stable in 1.15 after the runtime engine was rewritten. Later releases added multi-application workflows, versioning, access control, and history signing.

VersionRelease dateNotable changes
1.1016 February 2023Introduced Dapr Workflow as an alpha API for long-running, stateful processes. Added bulk publish and subscribe for pub/sub, SDKs for writing pluggable components, and a multi-app run command for local development. Resiliency policies became stable.[14]
1.119 June 2023The configuration API became stable. Added an alpha cryptography building block that performs encryption and decryption inside the sidecar without exposing keys to the application, and extended service invocation to call non-Dapr HTTP endpoints. A second sidecar image containing only stable components was published, and the Dapr dashboard was moved out of the default control plane installation into a separate Helm chart.[15]
1.1212 October 2023HTTP service invocation switched to streaming by default and became stable. Workflow moved to beta status and gained Java SDK support. Added the transactional outbox pattern for state stores as a preview feature, a placement API for inspecting actor placement tables, and support for secret stores as pluggable components.[16]
1.136 March 2024Added component hot reloading as a preview feature, so component changes are picked up without restarting the sidecar. Workflow authoring became available in the Go and JavaScript/TypeScript SDKs, and the Rust SDK gained alpha actor support. Actor reminders could optionally use Protocol Buffers instead of JSON serialization, which the project measured as up to a 40% improvement in actor reminder and workflow benchmarks. Also added an option for low-cardinality HTTP server metrics and a configurable delay to the sidecar shutdown sequence.[17]
1.1414 August 2024Introduced the Jobs API for scheduling work at a future time or on an interval, together with a new control plane service, Scheduler, that manages the scheduled jobs. Scheduler could optionally be used as the backend for actor reminders. Added streaming subscriptions, which are defined in code and can be added or removed at runtime, and actor namespacing for multi-tenancy. Service invocation to non-Dapr endpoints and outbox message projections became stable.[18]
1.1527 February 2025Dapr Workflow became stable following a rewrite of the workflow engine, which allowed workflow applications to scale from zero to many replicas while keeping tasks durable. The actor runtime was also reimplemented without changes to the actor API. The Scheduler service became stable and the default backend for actor reminders, with existing reminders migrated from the Placement service on upgrade. Added an alpha conversation API that provides a single interface to large language model providers, with prompt caching and obfuscation of personally identifiable information. The Java SDK gained a Spring Boot integration.[19]
1.1616 September 2025Added multi-application workflows, allowing a workflow to call activities or start child workflows in other applications while keeping its durability guarantees. Workflow memory use and concurrency were reworked for high-throughput deployments. Service invocation gained support for streaming and server-sent events when calling external HTTP endpoints, which allows Dapr to proxy Model Context Protocol servers. The conversation API was revised as alphaV2 with tool calling, following the design used by OpenAI. The Sentry service added JWT and OpenID Connect support, and tracing added W3C Baggage propagation.[20]
1.1727 February 2026Added workflow versioning through either named workflow versions or conditional patching, so that running instances continue to replay against the code they started on while new instances use the updated code. A retention policy was added for workflow history, which was previously kept indefinitely. Bulk publish and subscribe became stable, seven releases after being introduced as alpha. The command-line interface gained subcommands for managing workflow instances and Scheduler entries. The Placement service changed to a three-stage lock, update and unlock sequence when distributing placement tables to avoid sidecars acting on stale data.[21]
1.1810 June 2026Added a WorkflowAccessPolicy resource that restricts which application identities may operate on a given application's workflows, using the SPIFFE identity from the mutual TLS certificate to identify the caller. Workflow history events can optionally be cryptographically signed and chained, and a workflow whose history fails verification is terminated with its state left intact for inspection. Also added workflow concurrency limits enforced across sidecar replicas by Scheduler, and propagation of workflow history to child workflows and activities. The Jobs API became stable, and component hot reloading reached general availability and was enabled by default. A new MCPServer resource exposes Model Context Protocol servers as built-in Dapr workflows, so applications can call MCP tools without an MCP client library.[22]

See also

[edit]

References

[edit]
  1. Lardinois, Frederic (12 October 2022). "With $24.2M in funding, Diagrid launches its fully managed Dapr service for Kubernetes". TechCrunch. Retrieved 31 July 2026.
  2. "Dapr maintainers". GitHub. Retrieved 31 July 2026.
  3. "Release v1.18.2 · dapr/dapr". GitHub. Retrieved 31 July 2026.
  4. "The Dapr Distributed Runtime Nears Production Readiness". The New Stack. 2020-10-22. Retrieved 2021-02-20.
  5. "Introducing verifiable execution in Dapr 1.18". Cloud Native Computing Foundation. 11 June 2026. Retrieved 31 July 2026.
  6. "Dapr SDKs". Dapr Docs. Retrieved 31 July 2026.
  7. "Distributed Application Runtime (Dapr) v1.0 Announced". InfoQ. 2021-02-17. Archived from the original on 2021-02-17. Retrieved 2021-02-20.
  8. "Microsoft's Dapr open-source project to help developers build cloud-native apps hits 1.0". TechCrunch. 2021-02-17. Retrieved 2021-02-20.
  9. "GitHub - dapr/dapr: Dapr is a portable, event-driven, runtime for building distributed applications across cloud and edge" via GitHub.
  10. "Cloud Native Computing Foundation Announces Dapr Graduation". 12 November 2024 via CNCF.io.
  11. "Dapr Docs". Dapr Docs. Retrieved 31 July 2026.
  12. Announcing Distributed Application Runtime (Dapr), an open source project to make it easier for every developer to build microservice applications - Open Source Blog
  13. "Building blocks". Dapr Docs. Retrieved 31 July 2026.
  14. "Dapr 1.10.0 release notes". GitHub. Retrieved 31 July 2026.
  15. "Dapr 1.11.0 release notes". GitHub. Retrieved 31 July 2026.
  16. "Dapr 1.12.0 release notes". GitHub. Retrieved 31 July 2026.
  17. "Dapr 1.13.0 release notes". GitHub. Retrieved 31 July 2026.
  18. "Dapr 1.14.0 release notes". GitHub. Retrieved 31 July 2026.
  19. "Dapr 1.15.0 release notes". GitHub. Retrieved 31 July 2026.
  20. "Dapr 1.16.0 release notes". GitHub. Retrieved 31 July 2026.
  21. "Dapr 1.17.0 release notes". GitHub. Retrieved 31 July 2026.
  22. "Dapr 1.18.0 release notes". GitHub. Retrieved 31 July 2026.

Further reading

[edit]
  • Bedin, Davide (2020). Practical Microservices with Dapr and .NET: A developer's guide to building cloud-native applications using the Dapr event-driven runtime. Packt Publishing. ISBN 978-1800568372.
  • Schneider Bai, Haishi; Schneider, Yaron (2020). Learning Dapr: Building Distributed Cloud Native Applications. O'Reilly UK Ltd. ISBN 978-1492072423.
  • Gatev, Radoslav (2021). Introducing Distributed Application Runtime (Dapr): Simplifying Microservices Applications Development Through Proven and Reusable Patterns and Practices. Apress. ISBN 978-1484269978.
[edit]