Breaking changes are defined as a change to any of the following that cause compilation errors or undesirable runtime behavior to an existing 3rd party consumer application or script after upgrading to the next stable minor version of a Dapr artifact (SDK, CLI, runtime, etc):
Breaking changes can be applied right away to the following cases:
github.com/dapr/components-contrib
There is a process for applying breaking changes:
Deprecations can apply to:
Deprecations appear in release notes under a section named “Deprecations”, which indicates:
After announcing a future breaking change, the change will happen in 2 releases or 6 months, whichever is greater. Deprecated features should respond with warning but do nothing otherwise.
Feature | Deprecation announcement | Removal |
---|---|---|
GET /v1.0/shutdown API (Users should use POST API instead) | 1.2.0 | 1.4.0 |
Java domain builder classes deprecated (Users should use setters instead) | Java SDK 1.3.0 | Java SDK 1.5.0 |
Service invocation will no longer provide a default content type header of application/json when no content-type is specified. You must explicitly set a content-type header for service invocation if your invoked apps rely on this header. | 1.7.0 | 1.9.0 |
gRPC service invocation using invoke method is deprecated. Use proxy mode service invocation instead. See How-To: Invoke services using gRPC to use the proxy mode. | 1.9.0 | 1.10.0 |
The CLI flag --app-ssl (in both the Dapr CLI and daprd) has been deprecated in favor of using --app-protocol with values https or grpcs . daprd:6158 cli:1267 | 1.11.0 | 1.13.0 |
Hazelcast PubSub Component | 1.9.0 | 1.11.0 |
Twitter Binding Component | 1.10.0 | 1.11.0 |
NATS Streaming PubSub Component | 1.11.0 | 1.13.0 |
Workflows API Alpha1 /v1.0-alpha1/workflows being deprecated in favor of Workflow Client | 1.15.0 | 1.17.0 |