dotnet-sdk icon indicating copy to clipboard operation
dotnet-sdk copied to clipboard

[Proposal] Remove usage of DaprClient APIs for wokflow

Open MregXN opened this issue 2 years ago • 2 comments

Describe the proposal

The DaprClient for workflow is outdated and is going to be abandoned. The DaprWorkflowClient class in Dapr.Workflow are recommended to use instead.

Here are the projects I found that are still using DaprClient to operate workflows:

  • workflowsapp in dapr/dapr tests app (link)
  • order-processor in dapr/quickstarts workflow csharp sample (link)
  • WorkflowConspleApp in dapr/dotnet-sdk sample (link)

MregXN avatar Dec 08 '23 14:12 MregXN

FYI @halspang and @RyanLettieri - this is something I asked @MregXN to help with.

For additional context, the workflow APIs exposed by DaprClient were originally intended to be general purpose and work with a variety of workflow implementations (temporal, etc.). However, we've since abandoned supporting multiple workflow engines and decided to instead only support the built-in engine. For that reason, the generic workflow API surface is no longer recommended for SDK users, and we instead recommend that all users use the more purpose-built DaprWorkflowClient APIs instead.

(Note that we won't be abandoning the underlying workflow management APIs that are built into the runtime. The workflow management APIs are still valuable to have those exposed over HTTP for languages that don't have Dapr SDK support).

cgillum avatar Dec 12 '23 17:12 cgillum

/assign

MregXN avatar Dec 13 '23 15:12 MregXN

Marked as P0 since I think we shouldn't declare workflows as stable with APIs that we don't intend to support.

cgillum avatar Sep 10 '24 21:09 cgillum

@cgillum Does this differ in any meaningful way from #1344 ? I already have a PR for that one at #1345 and the PR for the docs has already been merged here.

WhitWaldo avatar Sep 13 '24 16:09 WhitWaldo

@WhitWaldo good observation. I think the difference is that #1344 tracks removing the APIs whereas this item tracks removing all references to those APIs. Technically, this one could be completed first without removing the APIs themselves.

It looks like there's at least one place where we're still using the deprecated APIs in dapr/dapr test code.

cgillum avatar Sep 13 '24 16:09 cgillum

It's probably worth doing a cursory peek through all the SDKs to see if any of the non-.NET variants are using the old methods as well.

WhitWaldo avatar Sep 13 '24 17:09 WhitWaldo

Duplicate/new issue - #1344

mikeee avatar Sep 30 '24 11:09 mikeee

Closed as part of #1362

WhitWaldo avatar Oct 14 '24 20:10 WhitWaldo