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
Breaking change detection improperly report success due to obsolete private preview
special case handling
#7697
Comments
I don't think this logic is quite right. Azure’s versioning policy does not allow breaking changes to an existing API version, even in private preview. This is to provide users a safe migration path — the service does not just break out from underneath them. There is special allowance for compatible changes to be made in the same API version when in private preview. This goes away when the API version moves to public preview. Once in public preview, no change to an existing API version is allowed -- all changes, even compatible ones, must be done in a new API version. |
@mikekistler I opened a PR that completely removes the special casing:
Question 1: Would you say that the
|
A1) Yes, a compatible change done in the same API version is a versioning issue. A2) I don't think we should auto-approve compatible changes in the same API version. These are allowed when the API version is in private preview, but we want to allow the service team to "self-certify" that the API is in private preview and if they do that will unblock merge. A3) Not to my knowledge, but I really wish there were. A4) Yes, the ARM wiki should be updated. |
One more thing: there are some services that are "internal only" -- none of their API versions are published in the external repo. It seems likely that the code above also allowed these to skip breaking change review. If these start getting flagged for breaking change review, we might need some special logic to exclude these. |
Pull Request 9694050: Clarify that breaking changes are not allowed in private preview. Updated file(s) from Engineering Hub for content: Azure Resource Manager (ARM) |
Details in this Teams thread.
In this PR:
The
Swagger BreakingChange
check detected errors withing an API preview version, but didn't add any label.The code has not reported the breaking changes review is required because it concluded it is a private preview. Source:
Notably, the PR modifies file at this path:
specification/hybridconnectivity/resource-manager/Microsoft.HybridConnectivity/PublicCloud/preview/2024-08-01-preview/publicCloud.json
But the
main
branch doesn't have the/PublicCloud
subdir:https://github.com/Azure/azure-rest-api-specs-pr/tree/main/specification/hybridconnectivity/resource-manager/Microsoft.HybridConnectivity
Hence
ifBaseVersionExistsInBaseBranch
isfalse
, hence the code things it is private preview.In natural language:
IF:
RPSaaSMaster
orARMCoreRPDev
private preview
and thus does not report breaking changes.The text was updated successfully, but these errors were encountered: