-
Notifications
You must be signed in to change notification settings - Fork 44
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
Introduce more usages to describe things related with the states of LRO #1887
Introduce more usages to describe things related with the states of LRO #1887
Conversation
All changed packages have been documented.
Show changes
|
You can try these changes here
|
@ArcturusZhang are you ok with this being released as part of the november release? in 2 weeks? If so, I would merge into main. If you'd like us to release this before the big release, can you merge into our release branch |
The changes in this pr looks good to me. Just want to bring up this related issue: #1750 - If TCGC keeps the current usage and access for LRO intial response, we should have a way to let emitter know when to update access and do not generate this model. But this will make TCGC's access less helpful as emitter still need to update it based on usage. |
yeah I will update those in this PR |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't have opinion on this in Java. You can go ahead if no objection from other languages.
I assume the usage is additive. Meaning we cannot know whether a model is "only used in LroInitial"?
not quite additive. |
Got it. So only the "final result" would still be marked as usage=Output? nit, maybe we can call it e.g. |
I think it is a good idea to emphasize. what do you think on this suggestion? @tadelesh |
i'm thinking of separating the usage into two layers, which means:
that will be a breaking change, but much extensible and we should make sure each layer orthogonal. idk if there is good data structure could do that, just a quick thought. |
open this issue to track usage refactor: #1941 |
…RO (Azure#1887) Remove this workaround since Azure#311 is closed. Fixes Azure#1752 Fixes Azure#1530 This PR adds three new usage flags: `LroInitial`, `LroPolling`, `LroFinalEnvelope`. These new usage flags are previously represented by `Output`, now the `Output` flag no longer contain the semantics of these usages. Therefore, if a model's usage is only `LroInitial`, this means it is only used as the initial response of an LRO. if a model has both `LroInitial` and `Output`, this means it is used as the initial response of an LRO, and it also used as a normal output in other places. The final result will not have above new usages unless it participates as those roles as well. It will have output usage.
…RO (#1887) Remove this workaround since #311 is closed. Fixes #1752 Fixes #1530 This PR adds three new usage flags: `LroInitial`, `LroPolling`, `LroFinalEnvelope`. These new usage flags are previously represented by `Output`, now the `Output` flag no longer contain the semantics of these usages. Therefore, if a model's usage is only `LroInitial`, this means it is only used as the initial response of an LRO. if a model has both `LroInitial` and `Output`, this means it is used as the initial response of an LRO, and it also used as a normal output in other places. The final result will not have above new usages unless it participates as those roles as well. It will have output usage.
Remove this workaround since #311 is closed.
Fixes #1752
Fixes #1530
This PR adds three new usage flags:
LroInitial
,LroPolling
,LroFinalEnvelope
.These new usage flags are previously represented by
Output
, now theOutput
flag no longer contain the semantics of these usages.Therefore, if a model's usage is only
LroInitial
, this means it is only used as the initial response of an LRO.if a model has both
LroInitial
andOutput
, this means it is used as the initial response of an LRO, and it also used as a normal output in other places.The final result will not have above new usages unless it participates as those roles as well. It will have output usage.