-
Notifications
You must be signed in to change notification settings - Fork 21
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
Remove CallOptions from uattributes.proto #132
Comments
CallOptions is never sent as a uProtocol message. Instead of being a layer-0 message, it was used as a layer-2 client API. It is being removed in favor of allowing language-specific API libraries to define the most appropriate function signatures for the language. Addresses issue eclipse-uprotocol#132
Although your statement is true, I want to know why we couldn't define it here? |
Because interacting with protobuf objects is really unpleasant in situations where it is not required. It is simpler to provide a context-specific interface that takes the appropriate parameters for that situation. See Protobuf messages intended for use as purely internal APIs are only a hindrance to defining idiomatic language APIs. This goes back to the L2 update where the required methods are listed, but their signatures are left to the language-specific APIs to define. |
CallOptions is never sent as a uProtocol message. Instead of being a layer-0 message, it was used as a layer-2 client API. It is being removed in favor of allowing language-specific API libraries to define the most appropriate function signatures for the language. Addresses issue #132
merged in #133 |
Need to reopen because the spec has not been updated yet ... |
@sophokles73 you taking this or you want me to make the spec change? |
be my guest 😁 |
@sophokles73 we are rewriting rpcclient.adoc anyways for the new high level L2 API specifications, shouldn't we do it at that point? The only reference to CallOptions are in that file. |
Closing, we will resolve reference in the L2 PR |
The
CallOptions
message does not get included in any message or sent on the wire. It appears to be intended as a data wrapper for uE code interacting with the Layer 2 client API.Since it is not a part of the actual message data model ("Layer 0"), it should be removed in favor of allowing language-specific APIs to implement the best fit for their language.
The text was updated successfully, but these errors were encountered: