-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Draft] proposal: state API spec #5
Comments
I also think that the simple
Developing proto plugins is more complicated. In other words, if everyone agrees with this design idea. At present, It is also possible for us to manually maintain a set of Just like dapr-sdk does:
|
I failed to get the reason why an "in-process invocation" API is necessary. Should we focus on API talking gRPC and HTTP? After all, these APIs are used between dapr sidecar and main app. |
Agree |
@seeflood @kevinten10 is there someone still actively working on this? I might start doing some work around Open API spec for Dapr Components, I am reaching out to see if there is already work that I should take a look at |
@salaboy Sorry for not updating, I'm busy with work recently and not working on this issue. looking forward to your work! |
I will restart this issue.. and submit a PR with a simple statestore OpenAPI v3 spec. I am interested in having a simple first version that we can test against |
What about generating the OpenAPI spec from the Dapr protos? |
I am closing this issue as we have a draft initial version for the state api in the repo. we can open a new issue to track progress on that spec file |
1. What
Write a spec for state API and describe how to implement it in grpc, http1.1 and http2 and even in-process invocation.
2. Spec
// TODO
3. Recommended implementation
gRPC
The existing proto file is the recommended implementation in gRPC.
dapr/dapr#4603
in-process invocation
The trick here is that we can compile the proto file into interfaces in different programming language.
And these generated interfaces are "recommended implementation of in-process invocation".
in golang
The generated interface is the recommended implementation:
The reason we don't use the client interface is that it has too many
opts ...grpc.CallOption
, which are useless for in-process communicationin java
The default protoc compiler can't compile proto files into java interfaces. We can modify the protoc compiler plugin to do it.
http 1.1
// TODO
The text was updated successfully, but these errors were encountered: