Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: dapr/java-sdk
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.17.2
Choose a base ref
...
head repository: dapr/java-sdk
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v1.17.3
Choose a head ref
  • 7 commits
  • 669 files changed
  • 5 contributors

Commits on Apr 10, 2026

  1. Adding sdk tracing capabilities on spring (#1713) (#1723)

    * adding sdk tracing capabilities on spring
    
    
    
    * fix: guard highCardinalityKeyValue calls against null values in ObservationDaprClient
    
    Micrometer's highCardinalityKeyValue throws NPE when the value is null.
    Added a safe() helper that coalesces nulls to empty string, applied to
    all observation tag values in both Spring Boot 3 and Boot 4 modules.
    
    
    
    * fix: add null validation in constructors and fix license header formatting
    
    Add Objects.requireNonNull for delegate and observationRegistry in
    ObservationDaprClient and ObservationDaprWorkflowClient constructors
    to fail fast on misconfiguration. Fix missing ' * ' prefix on the
    last line of license headers in all four new files.
    
    
    
    * fix: defer observation start to subscription time in ObservationDaprClient
    
    Wrap observe() and observeFlux() helpers with Mono.defer/Flux.defer so
    that obs.start() runs on subscription, not on method call. This prevents
    leaked spans when a Mono is never subscribed and ensures span timing
    reflects actual execution, not the gap before subscription.
    
    
    
    * fix: use proper Objects import, revert license header, add deferred-start test
    
    Replace fully-qualified java.util.Objects with import statement and fix
    alphabetical import order to satisfy checkstyle. Revert license header
    change since the project's checkstyle config expects the original format.
    Add test verifying that an unsubscribed Mono does not leak an observation.
    
    
    
    ---------
    
    
    
    
    
    (cherry picked from commit aa296fa)
    
    Signed-off-by: salaboy <[email protected]>
    Signed-off-by: Javier Aliaga <[email protected]>
    Co-authored-by: salaboy <[email protected]>
    Co-authored-by: Yaron Schneider <[email protected]>
    Co-authored-by: Javier Aliaga <[email protected]>
    4 people authored Apr 10, 2026
    Configuration menu
    Copy the full SHA
    e387e49 View commit details
    Browse the repository at this point in the history
  2. Release 1.17.3-rc-1

    Signed-off-by: Dapr Bot <[email protected]>
    dapr-bot committed Apr 10, 2026
    Configuration menu
    Copy the full SHA
    80687da View commit details
    Browse the repository at this point in the history

Commits on Jun 9, 2026

  1. [Backport release-1.17] feat: add DaprClient.invokeHttpClient(appId) …

    …factory (#1763)
    
    * feat: add DaprClient.invokeHttpClient(appId) factory (#1742)
    
    * chore: rewrite invoke/http example to use native HttpClient
    
    The DaprClient.invokeMethod wrappers were deprecated by #1666. Rewrite
    the invoke/http sample to use java.net.http.HttpClient through the Dapr
    sidecar, demonstrating both URL forms accepted by the sidecar — the
    dapr-app-id header against the sidecar base URL, and the explicit
    /v1.0/invoke/<app-id>/method/<method> path.
    
    Update the matching README snippet and reduce expected_stdout_lines to
    'Done' — the previous expected lines never matched what DemoService
    returns (a timestamp).
    
    Signed-off-by: Javier Aliaga <[email protected]>
    
    * feat: add DaprClient.invokeHttpClient(appId) factory
    
    Provides an SDK-native successor to the invokeMethod APIs deprecated by
    #1666. DaprClient.invokeHttpClient(appId) returns a DaprInvokeHttpClient
    pre-bound to {daprHttpEndpoint}/v1.0/invoke/{appId}/method/ that reuses
    the SDK's shared java.net.http.HttpClient and attaches the dapr-api-token
    header when configured.
    
    Update the invoke/http example and README to demonstrate the new helper
    alongside the raw dapr-app-id header form.
    
    Signed-off-by: Javier Aliaga <[email protected]>
    
    * feat: add DaprBodyPublishers.json helper and invokeHttpClient migration notes
    
    Adds an opt-in DaprBodyPublishers.json(Object) helper backed by the SDK's
    default Jackson serializer, matching the JSON encoding the deprecated
    DaprClient.invokeMethod APIs applied internally. Eases migration without
    re-introducing auto-serialization into the raw HttpClient surface exposed
    by invokeHttpClient.
    
    Also fixes the invoke/http example README expected_stdout_lines to match
    the new plain-text body sent by the refactored example (Server: message
    one instead of Server: "message one"), and adds migration notes to the
    DaprClient.invokeHttpClient and DaprInvokeHttpClient Javadoc as well as
    the example README.
    
    Signed-off-by: Javier Aliaga <[email protected]>
    
    ---------
    
    Signed-off-by: Javier Aliaga <[email protected]>
    (cherry picked from commit 9539d70)
    
    * fix: Add missing implementation
    
    Signed-off-by: Javier Aliaga <[email protected]>
    
    ---------
    
    Signed-off-by: Javier Aliaga <[email protected]>
    Co-authored-by: Javier Aliaga <[email protected]>
    dapr-bot and javier-aliaga authored Jun 9, 2026
    Configuration menu
    Copy the full SHA
    c02ab76 View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2026

  1. feat: attach SDK User-Agent in DaprInvokeHttpClient and clarify DaprB…

    …odyPublishers.json scope (#1758) (#1764)
    
    newRequestBuilder now sets the User-Agent header to the SDK version, matching
    what the deprecated invokeMethod path emitted via DaprHttp. This is the only
    default the SDK can supply that callers cannot, and it is useful for runtime
    side triage. Other implicit invokeMethod behaviors (Content-Type default,
    request-id, error mapping, trace propagation) are intentionally left to the
    caller, since exposing the native HttpClient is the point of the migration.
    
    Also document on DaprBodyPublishers.json that the helper uses the SDK's
    default object serializer and is not a wrapper around a configured custom
    DaprObjectSerializer. Its only contribution over a plain ofByteArray call is
    guaranteeing a length-known BodyPublisher, which keeps the JDK on
    Content-Length framing and sidesteps the Transfer-Encoding: chunked race
    reported under load.
    
    
    (cherry picked from commit 43cf7c6)
    
    Signed-off-by: Javier Aliaga <[email protected]>
    Co-authored-by: Javier Aliaga <[email protected]>
    dapr-bot and javier-aliaga authored Jun 10, 2026
    Configuration menu
    Copy the full SHA
    2d6af6e View commit details
    Browse the repository at this point in the history
  2. Release 1.17.3-rc-2

    Signed-off-by: Dapr Bot <[email protected]>
    dapr-bot committed Jun 10, 2026
    Configuration menu
    Copy the full SHA
    09a4c1a View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2026

  1. Release 1.17.3

    Signed-off-by: Dapr Bot <[email protected]>
    dapr-bot committed Jun 12, 2026
    Configuration menu
    Copy the full SHA
    9cdccf3 View commit details
    Browse the repository at this point in the history
  2. Generate updated javadocs for 1.17.3

    Signed-off-by: Dapr Bot <[email protected]>
    dapr-bot committed Jun 12, 2026
    Configuration menu
    Copy the full SHA
    9ba85f5 View commit details
    Browse the repository at this point in the history
Loading