Project: Dapr (App Definition and Development / Application Definition & Image Build)
File: v0.9.0.md

We're happy to announce the release of Dapr 0.9.0! Highlights New components: , Dapr dashboard Helm integration Command completion feature in Dapr CLI Dapr dashboard CLI command We would like to extend our thanks to all new and existing contributors who helped make this release happen. If you're new to Dapr, visit the page and familiarize yourself with Dapr. Docs have been updated with all the new features and changes of this release. To get started with new capabilities introduced in this release, go to the and the . Note: This release contains a few . See section on upgrading Dapr to version 0.9.0. Integrated Postgresql state store (Thanks @brooke-hamilton) Added github actions workflow to push helm charts to githubpages helm repo Fixed inappropriate HTTP API status codes Added install dapr control plane to linux containers Added Dapr dashboard Helm integration Fixed state error messages Added transaction support for actors using cosmos Added injection of Dapr env vars in user container Improved http/gRPC internal metadata handling Fixed add trace headers if not provided in response Added decision record for HTTP Appcallback versioning Added Registering local secretstore (Thanks @cmendible) Added Dapr dependencies in e2e test apps whenever proto has breaking changes Added functionality to remove default components dir Fixed stateapp dockerfile Renamed default config to daprsystem config Changed servicediscovery pkg to nameresolution pkg and remove mdns code Added sidecar injector readiness/liveness probe path adjustement (Thanks @piotr.mscichowski) Fixed return GRPC OK for 2xx http status code Fixed Helm chart installation issue with missing package Added ARC-004-http-server ADR Fixed 1s delay for service invocation on selfhost mode Fixed TestSignCSR flaky test Added destination appID target and header tests Added command completion feature to Dapr CLI (Thanks @halation3) Added support to initialize dapr without docker dependency Added new CLI dapr dashboard command (Thanks @gdhuper) Added support in the dashboard to accept -n namespace argument Updated standalone dapr init and uninstall behavior (#breaking-changes) Updated cli documentation to cover all command options (Thanks @halation3) Updated linter version to 1.26 Fixed timeout for linter Added tracing config, Zipkin component on init Updated dapr init behavior to create default component files (#breaking-changes) Fixed path truncation issue with Windows Added functionality to pass components folder to daprd Added transaction support in the Cosmos db component Fixed json array envelope parsing Fixed double envelope when published payload is already a cloud event Added support output to Twitter binding Added PostgreSQL State Store (Thanks @brooke-hamilton) Updated cloudevent identification Added scheduler (cron) binding Fixed Azure Service Bus lock renewal per topic (Thanks @jjcollinge) Added functionality to handle errors in AzureEventHubs.Read (Thanks @nilstschmidt.de) Fixed enableTLS to work as per the config for Apache Pulsar (Thanks @khous) Fixed context deadline exceeded issue with an operation timeout Renamed and refactored servicediscovery to nameresolution pkg Updated setting URL in mongoDB component to make username/password optional Refactored JSONSecretStore to LocalSecretStore (Thanks @cmendible) Fixed the minimum delay of 1s for service invocation Fixed content-type for Spring controller Updated use of TypeRef for deserialization and client APIs Updated samples to use --components-path Fixed documentation for samples directory Updated dotnet sdk in github actions Fixed actor method names in getting started guide (Thanks @@LayZeeDK) Fixed InvokeAsync example in getting started guide (Thanks @@LayZeeDK) Added pub sub example (Thanks @gdhuper) Updated and Beautified code snippet (Thanks @franpog859) Updated workflow to publish npm package Updated

of samples Added threat model image png Added readme note for uninstall in linux Updated minor style guide changes to hybrid-clusters howto stub Fixed typo in setup-azure-servicebus.md (Thanks @candreso) Added docs for dapr init without Docker Updated Put a note that Windows containers are not supported in Kubernetes Updated Cosmos documentation for transaction changes Moved Kubernetes hybrid-cluster guide howto Added Kubernetes docs for installing dapr to hybrid windows/linux clusters Updated Azure Service Bus metadata (Thanks @jjcollinge) Updated section related to output binding support Updated documentation related to PostgreSQL (Thanks @brooke-hamilton) Updated bindings_api.md Added cron binding documentation Added binding listing, docs on canceling schedules Added local development secret store how to (Thanks @cmendible) Added docs for injecting env vars Updated to rename default config to daprsystem config Updated docs for Zipkin initialization Updated with missing Kafka link in reference section Updated component-secrets.md Updated W3C tracing docs to describe how to use tracing in your applications Added Dapr with Docker docs (Thanks @jjcollinge) Updated the doc as how to retrieve the response headers Added How to Use W3C Trace Context Added link from main observability how-to Updated Grafana dashboard - dapr sidecar dashboard and add new actor dashboard #634 Added links to videos from the community calls Updated Event Hubs doc Updated Pub/Sub index If you're upgrading from an older version of Dapr to 0.9.0, follow the steps here to ensure a smooth upgrade. You know, the one where you don't get red errors on the terminal.. we all hate that, right? Uninstall Dapr using the CLI you currently have. Note that this will remove the default .dapr directory, binaries and all containers daprredis, daprplacement and dapr_zipkin. Linux users need to run sudo if they have installed binary in default path /usr/local/bin/ or have docker command needing sudo.: ```bash dapr uninstall --all ``` Next, get the latest CLI following instructions, or alternatively download the latest and greatest release from and put the `dapr` binary in your PATH. Once you have downloaded the CLI, run: ```bash dapr init ``` Wait for the update to finish, and you're good to go! Make sure you have the right runtime version (0.9.0) with: ```bash dapr --version ``` Download the latest CLI release as outlined above in the `Local Machine / Self-hosted` section. If you previously installed Dapr on your Kubernetes cluster using the Dapr CLI, run: ```bash dapr uninstall --kubernetes ``` It's fine to ignore any errors that might show up. If you previously installed Dapr using Helm 2.X: ```bash helm del --purge dapr ``` If you previously installed Dapr using Helm 3.X: ```bash helm uninstall dapr -n dapr-system ``` Update the Dapr repo: ```bash helm repo update ``` If you installed Dapr with Helm to a namespace other than `dapr-system`, modify the uninstall command above to account for that. You can now follow instructions on how to install Dapr using Helm 3. Alternatively, if you want to install Dapr in a dev/test setup, run: ``` dapr init --kubernetes ``` After Dapr 0.9.0 has been installed, perform a rolling restart for your deployments. dapr uninstall --all now removes the default .dapr directory and binaries dapr init fails if a previous version is installed. You will need to run dapr uninstall first. dapr init now deploys a local Zipkin container by default for use with local diagnostic testing. The default component files are now created during dapr init time. The name of the required partition key has changed from `/id` to `/partitionKey`. Please see for more details.