-
Notifications
You must be signed in to change notification settings - Fork 5.1k
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
[Hub Generated] Review request for WebPubSub to add version stable/2023-07-01 #23927
Conversation
Hi, @xingsy97 Thanks for your PR. I am workflow bot for review process. Here are some small tips. Any feedback about review process or workflow bot, pls contact swagger and tools team. vscswagger@microsoft.com |
Swagger Validation Report
|
compared swaggers (via Oad v0.10.4)] | new version | base version |
---|---|---|
webpubsub.json | 2023-07-01(efe2ec0) | 2022-11-01(main) |
webpubsub.json | 2023-07-01(efe2ec0) | 2021-08-01-preview(main) |
The following breaking changes are detected by comparison with the latest preview version:
Only 30 items are listed, please refer to log for more details.
️️✔️
CredScan succeeded [Detail] [Expand]
There is no credential detected.
️⚠️
LintDiff: 6 Warnings warning [Detail]
compared tags (via openapi-validator v2.1.3) | new version | base version |
---|---|---|
package-2023-07-01 | package-2023-07-01(efe2ec0) | default(main) |
[must fix]The following errors/warnings are introduced by current PR:
Rule | Message | Related RPC [For API reviewers] |
---|---|---|
Path parameter should specify a maximum length (maxLength). Location: WebPubSub/stable/2023-07-01/webpubsub.json#L53 |
||
All success responses except 202 & 204 should define a response body. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L79 |
||
Error response schema should contain an object property named error .Location: WebPubSub/stable/2023-07-01/webpubsub.json#L84 |
||
Path parameter should specify a maximum length (maxLength). Location: WebPubSub/stable/2023-07-01/webpubsub.json#L277 |
||
All success responses except 202 & 204 should define a response body. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L303 |
||
Error response schema should contain an object property named error .Location: WebPubSub/stable/2023-07-01/webpubsub.json#L308 |
The following errors/warnings exist before current PR submission:
Only 30 items are listed, please refer to log for more details.
Rule | Message |
---|---|
LroExtension |
Operations with a 202 response must specify x-ms-long-running-operation: true .Location: WebPubSub/stable/2023-07-01/webpubsub.json#L328 |
LroExtension |
Operations with a 202 response must specify x-ms-long-running-operation: true .Location: WebPubSub/stable/2023-07-01/webpubsub.json#L541 |
LroExtension |
Operations with a 202 response must specify x-ms-long-running-operation: true .Location: WebPubSub/stable/2023-07-01/webpubsub.json#L822 |
LroExtension |
Operations with a 202 response must specify x-ms-long-running-operation: true .Location: WebPubSub/stable/2023-07-01/webpubsub.json#L1431 |
All success responses except 202 & 204 should define a response body. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L25 |
|
Error response should have a schema. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L28 |
|
Error response should contain a x-ms-error-code header. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L28 |
|
Path parameter should specify a maximum length (maxLength). Location: WebPubSub/stable/2023-07-01/webpubsub.json#L114 |
|
Error response schema should contain an object property named error .Location: WebPubSub/stable/2023-07-01/webpubsub.json#L152 |
|
Path parameter should specify a maximum length (maxLength). Location: WebPubSub/stable/2023-07-01/webpubsub.json#L184 |
|
Error response schema should contain an object property named error .Location: WebPubSub/stable/2023-07-01/webpubsub.json#L244 |
|
Path parameter should specify a maximum length (maxLength). Location: WebPubSub/stable/2023-07-01/webpubsub.json#L343 |
|
A 202 response should include an Operation-Location response header. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L395 |
|
Error response schema should contain an object property named error .Location: WebPubSub/stable/2023-07-01/webpubsub.json#L400 |
|
'DELETE' operation 'WebPubSub_CloseConnection' should use method name 'Delete'. Note: If you have already shipped an SDK on top of this spec, fixing this warning may introduce a breaking change. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L425 |
|
OperationId for delete method should contain 'Delete' Location: WebPubSub/stable/2023-07-01/webpubsub.json#L425 |
|
Path parameter should specify a maximum length (maxLength). Location: WebPubSub/stable/2023-07-01/webpubsub.json#L430 |
|
Path parameter should specify a maximum length (maxLength) and characters allowed (pattern). Location: WebPubSub/stable/2023-07-01/webpubsub.json#L438 |
|
Error response schema should contain an object property named error .Location: WebPubSub/stable/2023-07-01/webpubsub.json#L466 |
|
Path parameter should specify a maximum length (maxLength). Location: WebPubSub/stable/2023-07-01/webpubsub.json#L491 |
|
Path parameter should specify a maximum length (maxLength) and characters allowed (pattern). Location: WebPubSub/stable/2023-07-01/webpubsub.json#L499 |
|
All success responses except 202 & 204 should define a response body. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L516 |
|
Error response should have a schema. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L519 |
|
Error response should contain a x-ms-error-code header. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L519 |
|
Error response should contain x-ms-error-response. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L519 |
|
Error response should have a schema. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L522 |
|
Path parameter should specify a maximum length (maxLength). Location: WebPubSub/stable/2023-07-01/webpubsub.json#L556 |
|
Path parameter should specify a maximum length (maxLength) and characters allowed (pattern). Location: WebPubSub/stable/2023-07-01/webpubsub.json#L564 |
|
A 202 response should include an Operation-Location response header. Location: WebPubSub/stable/2023-07-01/webpubsub.json#L600 |
|
Error response schema should contain an object property named error .Location: WebPubSub/stable/2023-07-01/webpubsub.json#L605 |
️️✔️
Avocado succeeded [Detail] [Expand]
Validation passes for Avocado.
️️✔️
ApiReadinessCheck succeeded [Detail] [Expand]
️⚠️
~[Staging] ServiceAPIReadinessTest: 0 Warnings warning [Detail]
API Test is not triggered due to precheck failure. Check pipeline log for details.
️️✔️
SwaggerAPIView succeeded [Detail] [Expand]
️️✔️
CadlAPIView succeeded [Detail] [Expand]
️️✔️
TypeSpecAPIView succeeded [Detail] [Expand]
️️✔️
ModelValidation succeeded [Detail] [Expand]
Validation passes for ModelValidation.
️️✔️
SemanticValidation succeeded [Detail] [Expand]
Validation passes for SemanticValidation.
️️✔️
PoliCheck succeeded [Detail] [Expand]
Validation passed for PoliCheck.
️️✔️
PrettierCheck succeeded [Detail] [Expand]
Validation passes for PrettierCheck.
️️✔️
SpellCheck succeeded [Detail] [Expand]
Validation passes for SpellCheck.
️️✔️
Lint(RPaaS) succeeded [Detail] [Expand]
Validation passes for Lint(RPaaS).
️️✔️
CadlValidation succeeded [Detail] [Expand]
Validation passes for CadlValidation.
️️✔️
TypeSpec Validation succeeded [Detail] [Expand]
Validation passes for TypeSpec Validation.
️️✔️
PR Summary succeeded [Detail] [Expand]
Validation passes for Summary.
Swagger Generation Artifacts
|
Generated ApiView
|
Hi @xingsy97, one or multiple breaking change(s) is detected in your PR. Please check out the breaking change(s), and provide business justification in the PR comment and @ PR assignee why you must have these change(s), and how external customer impact can be mitigated. Please ensure to follow breaking change policy to request breaking change review and approval before proceeding swagger PR review. |
d227f43
to
dade725
Compare
Hi @anuchandy However, the related APIs are designed to be "fire-and-forget". Our service is designed to not monitor the status of related API operations. Could you please help this pr pass LRO extension check? Thanks |
Hi @xingsy97, Your PR has some issues. Please fix the CI sequentially by following the order of
|
Hi @markweitzel @johanste , could you please help review this PR? Our team is looking forward to see the new API design ready thus we could have plenty of time to implement it. Thanks. |
94ea499
to
80df848
Compare
80df848
to
cdcf3fb
Compare
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 flagged a number of issues reported by the Spectral linter. Most should be easy fixes.
"consumes": [ | ||
"application/json-patch+json", | ||
"application/json", | ||
"text/json", | ||
"application/*+json" | ||
], |
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.
You should only allow application/json
. Supported all these other content types only adds complexity and opportunity for errors in both the service implementation and generated (or otherwise) client libraries.
"consumes": [ | |
"application/json-patch+json", | |
"application/json", | |
"text/json", | |
"application/*+json" | |
], | |
"consumes": [ | |
"application/json" | |
], |
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.
updated
{ | ||
"in": "body", | ||
"name": "message", | ||
"description": "Target groups and connection filter.", | ||
"schema": { | ||
"$ref": "#/definitions/AddToGroupsRequest" | ||
} | ||
} |
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.
This request body is not marked as required: true
. Is that intentional? Does the operation succeed if there is no body in the request?
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.
Updated. Marked it into required:true
}, | ||
{ | ||
"in": "body", | ||
"name": "message", |
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.
message
is an odd name for this parameter. I think a name like "groupsToAdd" would be more descriptive.
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.
renamed as suggestion
], | ||
"responses": { | ||
"200": { | ||
"description": "Success" |
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.
Does this response have a response body?
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.
It doesn't have a response body
"consumes": [ | ||
"application/json-patch+json", | ||
"application/json", | ||
"text/json", | ||
"application/*+json" | ||
], |
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.
As above, recommend this be limited to application/json
.
"consumes": [ | |
"application/json-patch+json", | |
"application/json", | |
"text/json", | |
"application/*+json" | |
], | |
"consumes": [ | |
"application/json" | |
], |
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.
updated as suggestion
specification/webpubsub/data-plane/WebPubSub/stable/2023-07-01/webpubsub.json
Outdated
Show resolved
Hide resolved
specification/webpubsub/data-plane/WebPubSub/stable/2023-07-01/webpubsub.json
Show resolved
Hide resolved
specification/webpubsub/data-plane/WebPubSub/stable/2023-07-01/webpubsub.json
Show resolved
Hide resolved
"description": "The request object containing targets groups and connection filter", | ||
"type": "object", | ||
"properties": { | ||
"groups": { |
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.
Please add a description.
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.
updated as suggestion
} | ||
}, | ||
"connectionFilter": { | ||
"type": "string" |
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.
Please add a description.
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.
updated as suggestion
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.
Thanks for all the fixes. Looks good! 👍
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.
LGTM.
But see if you can improve the description on filter
.
…23-07-01 (Azure#23927) * Original * Add 2023-07-01 * update * update * remove invoke * resolve comments * resolve comments * resolve failed check * resolve failed check --------- Co-authored-by: Chenyang Liu <chenyl@microsoft.com>
This is a PR generated at OpenAPI Hub. You can view your work branch via this link.
Data Plane API - Pull Request
API Info: The Basics
Most of the information about your service should be captured in the issue that serves as your API Spec engagement record.
Is this review for (select one):
Change Scope
This section will help us focus on the specific parts of your API that are new or have been modified.
Please share a link to the design document for the new APIs, a link to the previous API Spec document (if applicable), and the root paths that have been updated.
Design Document:
messageTtlSeconds
to Send* APIs.Previous API Spec Doc:
Updated paths:
/api/hubs/{hub}/:addToGroup
/api/hubs/{hub}/:removeFromGroup
messageTtlSeconds
for following send* API/api/hubs/{hub}/:send
/api/hubs/{hub}/connections/{connectionId}/:send
/api/hubs/{hub}/groups/{group}/:send
/api/hubs/{hub}/users/{userId}/:send
❔Got questions? Need additional info?? We are here to help!
Contact us!
The Azure API Review Board is dedicated to helping you create amazing APIs. You can read about our mission and learn more about our process on our wiki.
Click here for links to tools, specs, guidelines & other good stuff
Tooling
Guidelines & Specifications
Helpful Links
fix #24145