Repository navigation
Conversation
A resource method could not be left out of one target, and the stream sample needs a Workflow `Stream` with no `append` and no `close`. Without its close method, a target's resource is not a context manager, and a method that no target keeps is refused.
A TypeScript resource method calls the Workflow API, so a method omitted for `workflow` goes from the class. Its request helper goes too when no other method used it.
A .NET resource method calls the Workflow API, so a method omitted for `workflow` goes from the class. The request overload that only it called becomes private.
Go has no sample that would show its output without the method, so it refuses the directive as it refuses `@nexus.varargs`. A method omitted only for `client` changes nothing in Go.
In this release Workflow code can't append to a Stream or close it, so the Workflow target omits both methods. The client `Stream` keeps them, and the Workflow `create_stream` is a plain call. Co-authored-by: Tim Conley <timothy.conley@temporal.io>
Owner
Author
|
Replaced by temporalio#410. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR lets
@nexus.api-omit targets="workflow"ortargets="client"leave a resource method outof one target.
In this release Workflow code can't append to a Stream or close it, but client code can. The
directive worked on a field or a function, not on a resource method.
The stream sample omits
appendandclosethis way. Its WorkflowStreamthen has noappendand no
closein Python, TypeScript and .NET. The Python WorkflowStreamalso loses__aenter__and
__aexit__, socreate_streamno longer works inasync withthere. The clientStreamisunchanged.
Notes for the review.
@nexus.api-omiton a method, or one with both targets, is refused. Remove the methodinstead.
workflow. Java generates no resource methods.operation. Should they go too?
producer, since thatStreamcan't append.