Skip to content
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 Microsoft.Insights to add version stable/2023-10-01 #26655

Merged

Conversation

ToddKingMSFT
Copy link
Member

@ToddKingMSFT ToddKingMSFT commented Nov 10, 2023

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.

  • Link to API Spec engagement record issue:

Is this review for (select one):

  • a private preview
  • a public preview
  • GA release

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:
  • Previous API Spec Doc:
  • Updated paths:

Viewing API changes

For convenient view of the API changes made by this PR, refer to the URLs provided in the table
in the Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.

Suppressing failures

If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
Swagger-Suppression-Process
to get approval.

❔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

Copy link

openapi-pipeline-app bot commented Nov 10, 2023

Next Steps to Merge

✔️ All automated merging requirements have been met! Refer to step 4 in the PR workflow diagram (even if your PR is for data plane, not ARM).

Copy link

openapi-pipeline-app bot commented Nov 10, 2023

Swagger Validation Report

️❌BreakingChange: 1 Errors, 0 Warnings failed [Detail]
compared swaggers (via Oad v0.10.4)] new version base version
metricBatch.json 2023-05-01-preview(b9216f2) 2023-05-01-preview(main)
metricDefinitions_API.json 2018-01-01(b9216f2) 2018-01-01(main)
metrics_API.json 2018-01-01(b9216f2) 2018-01-01(main)
commonDefinitions.json 2023-11-01(b9216f2) 2023-11-01(main)
Rule Message
1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L310:15
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L310:15
️❌Breaking Change(Cross-Version): 17 Errors, 45 Warnings failed [Detail]
compared swaggers (via Oad v0.10.4)] new version base version
metricBatch.json 2023-10-01(b9216f2) 2023-05-01-preview(main)
metricDefinitions_API.json 2023-10-01(b9216f2) 2021-05-01(main)
metricDefinitions_API.json 2023-10-01(b9216f2) 2017-09-01-preview(main)
metrics_API.json 2023-10-01(b9216f2) 2021-05-01(main)
metrics_API.json 2023-10-01(b9216f2) 2017-09-01-preview(main)

The following breaking changes are detected by comparison with the latest stable version:

Rule Message
1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L44:9
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L47:9
1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L362:9
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L522:9
1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L121:9
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L121:9
1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L289:9
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L283:9
1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L293:9
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L288:9
1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L211:9
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L208:9
1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L362:9
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L434:9
1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L397:5
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L626:5
1029 - ReadonlyPropertyChanged The read only property has changed from 'false' to 'true'.
New: common-types/resource-management/v1/types.json#L290:9
Old: Microsoft.Insights/stable/2021-05-01/commonMonitoringTypes.json#L64:9
1029 - ReadonlyPropertyChanged The read only property has changed from 'false' to 'true'.
New: common-types/resource-management/v1/types.json#L295:9
Old: Microsoft.Insights/stable/2021-05-01/commonMonitoringTypes.json#L68:9
1029 - ReadonlyPropertyChanged The read only property has changed from 'false' to 'true'.
New: common-types/resource-management/v1/types.json#L290:9
Old: Microsoft.Insights/stable/2021-05-01/commonMonitoringTypes.json#L64:9
1029 - ReadonlyPropertyChanged The read only property has changed from 'false' to 'true'.
New: common-types/resource-management/v1/types.json#L295:9
Old: Microsoft.Insights/stable/2021-05-01/commonMonitoringTypes.json#L68:9
1042 - ChangedParameterOrder The order of parameter 'body' was changed.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L121:9
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L121:9
1047 - XmsEnumChanged The new version has a different x-ms-enum 'name' than the previous one.
New: monitor/common-types/v2/commonMonitoringTypes.json#L209:9
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L488:9
1047 - XmsEnumChanged The new version has a different x-ms-enum 'modelAsString' than the previous one.
New: monitor/common-types/v2/commonMonitoringTypes.json#L209:9
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L488:9
1047 - XmsEnumChanged The new version has a different x-ms-enum 'name' than the previous one.
New: monitor/common-types/v2/commonMonitoringTypes.json#L79:5
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L344:5
1047 - XmsEnumChanged The new version has a different x-ms-enum 'modelAsString' than the previous one.
New: monitor/common-types/v2/commonMonitoringTypes.json#L79:5
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L344:5
⚠️ 1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
New: Microsoft.Insights/stable/2023-10-01/metricDefinitions_API.json#L316:9
Old: Microsoft.Insights/stable/2021-05-01/metricDefinitions_API.json#L313:9
⚠️ 1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
New: Microsoft.Insights/stable/2023-10-01/metricDefinitions_API.json#L226:9
Old: Microsoft.Insights/stable/2021-05-01/metricDefinitions_API.json#L229:9
⚠️ 1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L100:13
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L100:13
⚠️ 1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L376:11
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L537:11
⚠️ 1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
New: monitor/common-types/v2/commonMonitoringTypes.json#L209:9
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L576:9
⚠️ 1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L185:13
Old: Microsoft.Insights/stable/2021-05-01/metrics_API.json#L182:13


The following breaking changes are detected by comparison with the latest preview version:

Only 23 items are listed, please refer to log for more details.

Rule Message
⚠️ 1007 - RemovedClientParameter The new version is missing a client parameter that was found in the old version. Was 'ResourceIdList' removed or renamed?
New: Microsoft.Insights/stable/2023-10-01/metricBatch.json#L134:3
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L122:3
⚠️ 1007 - RemovedClientParameter The new version is missing a client parameter that was found in the old version. Was 'MetricParameter' removed or renamed?
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L388:3
Old: Microsoft.Insights/preview/2017-09-01-preview/metrics_API.json#L363:3
⚠️ 1009 - RemovedRequiredParameter The required parameter 'resourceIds' was removed in the new version.
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L56:9
⚠️ 1010 - AddingRequiredParameter The required parameter 'batchRequest' was added in the new version.
New: Microsoft.Insights/stable/2023-10-01/metricBatch.json#L93:11
⚠️ 1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
New: Microsoft.Insights/stable/2023-10-01/metricBatch.json#L118:13
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L109:13
⚠️ 1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
New: common-types/resource-management/v5/types.json#L307:9
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L252:9
⚠️ 1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
New: common-types/resource-management/v5/types.json#L294:11
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L259:15
⚠️ 1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metricBatch.json#L56:9
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L56:9
⚠️ 1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metricBatch.json#L245:15
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L310:15
⚠️ 1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metricBatch.json#L135:5
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L132:5
⚠️ 1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L211:9
Old: Microsoft.Insights/preview/2017-09-01-preview/metrics_API.json#L43:9
⚠️ 1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L362:9
Old: Microsoft.Insights/preview/2017-09-01-preview/metrics_API.json#L265:9
⚠️ 1023 - TypeFormatChanged The new version has a different format than the previous one.
New: monitor/common-types/v2/commonMonitoringTypes.json#L57:9
Old: Microsoft.Insights/preview/2017-09-01-preview/metrics_API.json#L230:9
⚠️ 1023 - TypeFormatChanged The new version has a different format than the previous one.
New: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L397:5
Old: Microsoft.Insights/preview/2017-09-01-preview/metrics_API.json#L381:5
⚠️ 1025 - RequiredStatusChange The 'required' status changed from the old version('True') to the new version('False').
New: common-types/resource-management/v5/types.json#L306:7
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L251:7
⚠️ 1025 - RequiredStatusChange The 'required' status changed from the old version('True') to the new version('False').
New: common-types/resource-management/v5/types.json#L263:7
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L255:11
⚠️ 1026 - TypeChanged The new version has a different type 'object' than the previous one 'string'.
New: common-types/resource-management/v5/types.json#L321:9
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L266:19
⚠️ 1026 - TypeChanged The new version has a different type 'number' than the previous one 'integer'.
New: monitor/common-types/v2/commonMonitoringTypes.json#L57:9
Old: Microsoft.Insights/preview/2017-09-01-preview/metrics_API.json#L230:9
⚠️ 1026 - TypeChanged The new version has a different type 'integer' than the previous one 'number'.
New: monitor/common-types/v2/commonMonitoringTypes.json#L277:5
Old: Microsoft.Insights/preview/2017-09-01-preview/metrics_API.json#L406:5
⚠️ 1029 - ReadonlyPropertyChanged The read only property has changed from 'false' to 'true'.
New: common-types/resource-management/v5/types.json#L316:9
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L262:19
⚠️ 1029 - ReadonlyPropertyChanged The read only property has changed from 'false' to 'true'.
New: common-types/resource-management/v5/types.json#L321:9
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L266:19
⚠️ 1029 - ReadonlyPropertyChanged The read only property has changed from 'false' to 'true'.
New: common-types/resource-management/v5/types.json#L291:9
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L256:13
⚠️ 1029 - ReadonlyPropertyChanged The read only property has changed from 'false' to 'true'.
New: common-types/resource-management/v5/types.json#L264:9
Old: Microsoft.Insights/preview/2023-05-01-preview/metricBatch.json#L273:13
️️✔️CredScan succeeded [Detail] [Expand]
There is no credential detected.
️⚠️LintDiff: 14 Warnings warning [Detail]
compared tags (via openapi-validator v2.1.6) new version base version
package-preview-2023-05 package-preview-2023-05(b9216f2) package-preview-2023-05(main)
package-2023-10 package-2023-10(b9216f2) default(main)
package-2018-02-preview package-2018-02-preview(b9216f2) package-2018-02-preview(main)
package-2018-03 package-2018-03(b9216f2) package-2018-03(main)
package-2018-09 package-2018-09(b9216f2) package-2018-09(main)
package-2018-11-preview package-2018-11-preview(b9216f2) package-2018-11-preview(main)
package-2019-03 package-2019-03(b9216f2) package-2019-03(main)
package-2019-11 package-2019-11(b9216f2) package-2019-11(main)
package-2023-01 package-2023-01(b9216f2) package-2023-01(main)
package-2022-10 package-2022-10(b9216f2) package-2022-10(main)
package-2022-06 package-2022-06(b9216f2) package-2022-06(main)
package-2021-09 package-2021-09(b9216f2) package-2021-09(main)
package-2021-07 package-2021-07(b9216f2) package-2021-07(main)
package-2021-04 package-2021-04(b9216f2) package-2021-04(main)
package-2023-10 package-2023-10(b9216f2) default(main)

[must fix]The following errors/warnings are introduced by current PR:

Rule Message Related RPC [For API reviewers]
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2023-10-01/metricDefinitions_API.json#L46
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2023-10-01/metricDefinitions_API.json#L49
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2023-10-01/metricDefinitions_API.json#L104
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2023-10-01/metricDefinitions_API.json#L288
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L46
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L49
⚠️ PostOperationIdContainsUrlVerb OperationId should contain the verb: 'metrics' in:'Metrics_ListAtSubscriptionScopePost'. Consider updating the operationId
Location: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L119
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L123
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L126
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L259
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L338
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L342
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L453
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2023-10-01/metrics_API.json#L461


The following errors/warnings exist before current PR submission:

Only 23 items are listed, please refer to log for more details.

Rule Message
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L48
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L48
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L48
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L48
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L48
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L48
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L48
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L48
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L48
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L48
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L48
⚠️ LatestVersionOfCommonTypesMustBeUsed Use the latest version v5 of types.json.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L48
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L136
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L136
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L136
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L136
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L136
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L136
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L136
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L136
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L136
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L136
⚠️ EnumInsteadOfBoolean Booleans properties are not descriptive in all cases and can make them to use, evaluate whether is makes sense to keep the property as boolean or turn it into an enum.
Location: Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json#L136
️⚠️Avocado: 1 Warnings warning [Detail]
Rule Message
⚠️ MULTIPLE_API_VERSION The default tag contains multiple API versions swaggers.
readme: specification/monitor/resource-manager/readme.md
tag: specification/monitor/resource-manager/readme.md#tag-package-2023-10
️❌SwaggerAPIView: 0 Errors, 0 Warnings failed [Detail]
️️✔️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.
️️✔️SpellCheck succeeded [Detail] [Expand]
Validation passes for SpellCheck.
️️✔️Lint(RPaaS) succeeded [Detail] [Expand]
Validation passes for Lint(RPaaS).
️️✔️PR Summary succeeded [Detail] [Expand]
Validation passes for Summary.
️️✔️Automated merging requirements met succeeded [Detail] [Expand]
Posted by Swagger Pipeline | How to fix these errors?

Copy link

openapi-pipeline-app bot commented Nov 10, 2023

Swagger Generation Artifacts

️️✔️ApiDocPreview succeeded [Detail] [Expand]
 Please click here to preview with your @microsoft account. 
️❌SDK Breaking Change Tracking failed [Detail]

Breaking Changes Tracking

azure-sdk-for-go - sdk/resourcemanager/monitor/armmonitor - 0.12.0
+	Enum `Unit` has been removed
+	Field `ActionType`, `IsDataAction`, `Origin` of struct `OperationAutoGenerated` has been removed
+	Field `Code`, `Message` of struct `ErrorResponse` has been removed
+	Field `Description` of struct `OperationDisplayAutoGenerated` has been removed
+	Field `Location`, `Tags` of struct `ResourceAutoGenerated` has been removed
+	Field `Location`, `Tags` of struct `Resource` has been removed
+	Field `OperationListResultAutoGenerated` of struct `OperationsForMonitorClientListResponse` has been removed
+	Field `OperationListResult` of struct `OperationsClientListResponse` has been removed
+	Field `PrivateEndpointConnection` of struct `PrivateEndpointConnectionsClientCreateOrUpdateResponse` has been removed
+	Field `PrivateEndpointConnection` of struct `PrivateEndpointConnectionsClientGetResponse` has been removed
+	Field `SubscriptionScopeMetricResponse` of struct `MetricsClientListAtSubscriptionScopePostResponse` has been removed
+	Field `SubscriptionScopeMetricResponse` of struct `MetricsClientListAtSubscriptionScopeResponse` has been removed
+	Field `SystemData` of struct `ResourceAutoGenerated5` has been removed
+	Field `SystemData` of struct `TrackedResourceAutoGenerated` has been removed
+	Function `*PrivateEndpointConnectionsClient.BeginCreateOrUpdate` parameter(s) have been changed from `(context.Context, string, string, string, PrivateEndpointConnection, *PrivateEndpointConnectionsClientBeginCreateOrUpdateOptions)` to `(context.Context, string, string, string, PrivateEndpointConnectionAutoGenerated, *PrivateEndpointConnectionsClientBeginCreateOrUpdateOptions)`
+	Operation `*AzureMonitorWorkspacesClient.Delete` has been changed to LRO, use `*AzureMonitorWorkspacesClient.BeginDelete` instead.
+	Struct `SubscriptionScopeMetricResponse` has been removed
+	Struct `SubscriptionScopeMetric` has been removed
+	Type of `AzureMonitorPrivateLinkScopeProperties.PrivateEndpointConnections` has been changed from `[]*PrivateEndpointConnection` to `[]*PrivateEndpointConnectionAutoGenerated`
+	Type of `DefaultErrorResponse.Error` has been changed from `*ErrorDetail` to `*ErrorDetailAutoGenerated`
+	Type of `ErrorContract.Error` has been changed from `*ErrorResponse` to `*ErrorResponseAutoGenerated3`
+	Type of `ErrorResponseCommonV2.Error` has been changed from `*ErrorDetail` to `*ErrorDetailAutoGenerated`
+	Type of `MetadataValue.Name` has been changed from `*LocalizableString` to `*LocalizableStringAutoGenerated`
+	Type of `Metric.Name` has been changed from `*LocalizableString` to `*LocalizableStringAutoGenerated`
+	Type of `Metric.Unit` has been changed from `*Unit` to `*MetricUnit`
+	Type of `MetricDefinition.Dimensions` has been changed from `[]*LocalizableString` to `[]*LocalizableStringAutoGenerated`
+	Type of `MetricDefinition.Name` has been changed from `*LocalizableString` to `*LocalizableStringAutoGenerated`
+	Type of `OperationStatus.Error` has been changed from `*ErrorDetail` to `*ErrorDetailAutoGenerated`
+	Type of `PrivateEndpointConnectionListResult.Value` has been changed from `[]*PrivateEndpointConnection` to `[]*PrivateEndpointConnectionAutoGenerated`
+	Type of `SubscriptionScopeMetricDefinition.Dimensions` has been changed from `[]*LocalizableString` to `[]*LocalizableStringAutoGenerated`
+	Type of `SubscriptionScopeMetricDefinition.Name` has been changed from `*LocalizableString` to `*LocalizableStringAutoGenerated`
+	Type of `SubscriptionScopeMetricsRequestBodyParameters.Timespan` has been changed from `*time.Time` to `*string`
azure-sdk-for-js - @azure/arm-monitor - Approved - 8.0.0-beta.5
+	Class MonitorClient has a new signature
+	Class MonitorClient no longer has parameter metrics
+	Enum KnownOperator no longer has value Include
+	Enum KnownProvisioningState no longer has value Deploying
+	Interface ActivityLogsListNextOptionalParams no longer has parameter select
+	Interface AzureResource no longer has parameter identity
+	Interface AzureResource no longer has parameter kind
+	Interface ErrorResponse no longer has parameter code
+	Interface ErrorResponse no longer has parameter message
+	Interface PrivateEndpointConnectionListResult no longer has parameter nextLink
+	Interface PrivateLinkResourceListResult no longer has parameter nextLink
+	Interface Resource no longer has parameter location
+	Interface Resource no longer has parameter tags
+	Interface ResourceAutoGenerated no longer has parameter etag
+	Interface ResourceAutoGenerated no longer has parameter kind
+	Interface ResourceAutoGenerated no longer has parameter location
+	Interface ResourceAutoGenerated no longer has parameter tags
+	Interface ScheduledQueryRulesListByResourceGroupOptionalParams no longer has parameter filter
+	Interface ScheduledQueryRulesListBySubscriptionOptionalParams no longer has parameter filter
+	Interface TenantActivityLogsListNextOptionalParams no longer has parameter filter
+	Interface TenantActivityLogsListNextOptionalParams no longer has parameter select
+	Operation ActivityLogAlerts.update has a new signature
+	Operation PrivateEndpointConnections.beginCreateOrUpdate has a new signature
+	Operation PrivateEndpointConnections.beginCreateOrUpdateAndWait has a new signature
+	Operation ScheduledQueryRules.createOrUpdate has a new signature
+	Operation ScheduledQueryRules.update has a new signature
+	Removed Enum KnownConditionalOperator
+	Removed Enum KnownEnabled
+	Removed Enum KnownMetricTriggerType
+	Removed Enum KnownQueryType
+	Removed operation ActionGroups.beginPostTestNotifications
+	Removed operation ActionGroups.beginPostTestNotificationsAndWait
+	Removed operation ActionGroups.getTestNotifications
+	Removed operation group Metrics
+	Type of parameter dimensions of interface MetricDefinition is changed from LocalizableString[] to LocalizableStringAutoGenerated[]
+	Type of parameter error of interface ErrorContract is changed from ErrorResponse to ErrorResponseAutoGenerated3
+	Type of parameter error of interface ErrorResponseCommonV2 is changed from ErrorDetail to ErrorDetailAutoGenerated
+	Type of parameter error of interface OperationStatus is changed from ErrorResponseCommon to ErrorDetailAutoGenerated
+	Type of parameter name of interface MetadataValue is changed from LocalizableString to LocalizableStringAutoGenerated
+	Type of parameter name of interface Metric is changed from LocalizableString to LocalizableStringAutoGenerated
+	Type of parameter name of interface MetricDefinition is changed from LocalizableString to LocalizableStringAutoGenerated
+	Type of parameter operator of interface Dimension is changed from Operator to DimensionOperator
+	Type of parameter value of interface PrivateEndpointConnectionListResult is changed from PrivateEndpointConnection[] to PrivateEndpointConnectionAutoGenerated[]

️❌ azure-sdk-for-net-track2 failed [Detail]
  • Pipeline Framework Failed [Logs] Generate from 163174348e39f564f7e51579405d680d2006fcd9. SDK Automation 14.0.0
    command	pwsh ./eng/scripts/Automation-Sdk-Init.ps1 ../azure-sdk-for-net_tmp/initInput.json ../azure-sdk-for-net_tmp/initOutput.json
    warn		specification/monitor/data-plane/readme.md skipped due to azure-sdk-for-net-track2 not found in swagger-to-sdk
    command	pwsh ./eng/scripts/Invoke-GenerateAndBuildV2.ps1 ../azure-sdk-for-net_tmp/generateInput.json ../azure-sdk-for-net_tmp/generateOutput.json
    cmderr	[Invoke-GenerateAndBuildV2.ps1] �[31;1mGeneratePackage: �[0m/mnt/vss/_work/1/s/azure-sdk-for-net/eng/scripts/automation/GenerateAndBuildLib.ps1:883
    cmderr	[Invoke-GenerateAndBuildV2.ps1] �[36;1mLine |
    cmderr	[Invoke-GenerateAndBuildV2.ps1] �[36;1m 883 | �[0m         �[36;1mGeneratePackage -projectFolder $projectFolder -sdkRootPath $s�[0m …
    cmderr	[Invoke-GenerateAndBuildV2.ps1] �[36;1m     | �[31;1m         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    cmderr	[Invoke-GenerateAndBuildV2.ps1] �[31;1m�[36;1m     | �[31;1mFailed to generate sdk. exit code: False
    cmderr	[Invoke-GenerateAndBuildV2.ps1] �[0m
    cannot force update branch 'sdkAuto/26655/Azure.ResourceManager.Monitor' as it is the current HEAD of the repository.
    Error: cannot force update branch 'sdkAuto/26655/Azure.ResourceManager.Monitor' as it is the current HEAD of the repository.
  • ️✔️Azure.ResourceManager.Monitor [View full logs]  [Preview SDK Changes]
    info	[Changelog]
  • Azure.ResourceManager.Monitor [View full logs
    error	Fatal error: cannot force update branch 'sdkAuto/26655/Azure.ResourceManager.Monitor' as it is the current HEAD of the repository.
    error	The following packages are still pending:
    error		Azure.ResourceManager.Monitor
    error		Azure.ResourceManager.Monitor
    error		Azure.Monitor.Query
  • ️✔️Azure.Monitor.Query
️⚠️ azure-sdk-for-python-track2 warning [Detail]
  • ⚠️Warning [Logs] Generate from 163174348e39f564f7e51579405d680d2006fcd9. SDK Automation 14.0.0
    command	sh scripts/automation_init.sh ../azure-sdk-for-python_tmp/initInput.json ../azure-sdk-for-python_tmp/initOutput.json
    cmderr	[automation_init.sh] WARNING: azure-devtools 1.2.1 does not provide the extra 'ci-tools'
    cmderr	[automation_init.sh] WARNING: azure-devtools 1.2.1 does not provide the extra 'ci-tools'
    cmderr	[automation_init.sh] WARNING: Skipping azure-nspkg as it is not installed.
    warn		specification/monitor/data-plane/readme.md skipped due to azure-sdk-for-python-track2 not found in swagger-to-sdk
    command	sh scripts/automation_generate.sh ../azure-sdk-for-python_tmp/generateInput.json ../azure-sdk-for-python_tmp/generateOutput.json
    cmderr	[automation_generate.sh]
    cmderr	[automation_generate.sh] npm notice New major version of npm available! 9.8.1 -> 10.2.4
    cmderr	[automation_generate.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v10.2.4>
    cmderr	[automation_generate.sh] npm notice Run `npm install -g [email protected]` to update!
    cmderr	[automation_generate.sh] npm notice
  • ️✔️track2_azure-mgmt-monitor [View full logs]  [Preview SDK Changes]
    info	[Changelog]
️⚠️ azure-sdk-for-java warning [Detail]
  • ⚠️Warning [Logs] Generate from 163174348e39f564f7e51579405d680d2006fcd9. SDK Automation 14.0.0
    command	./eng/mgmt/automation/init.sh ../azure-sdk-for-java_tmp/initInput.json ../azure-sdk-for-java_tmp/initOutput.json
    cmderr	[init.sh] [notice] A new release of pip is available: 23.0.1 -> 23.3.1
    cmderr	[init.sh] [notice] To update, run: pip install --upgrade pip
    cmderr	[init.sh] [notice] A new release of pip is available: 23.0.1 -> 23.3.1
    cmderr	[init.sh] [notice] To update, run: pip install --upgrade pip
    warn		specification/monitor/data-plane/readme.md skipped due to azure-sdk-for-java not found in swagger-to-sdk
    command	./eng/mgmt/automation/generate.py ../azure-sdk-for-java_tmp/generateInput.json ../azure-sdk-for-java_tmp/generateOutput.json
  • ️✔️azure-resourcemanager-monitor-generated [View full logs]  [Preview SDK Changes]
️️✔️ azure-sdk-for-go succeeded [Detail] [Expand]
  • ️✔️Succeeded [Logs] Generate from 163174348e39f564f7e51579405d680d2006fcd9. SDK Automation 14.0.0
    command	sh ./eng/scripts/automation_init.sh ../../../../../azure-sdk-for-go_tmp/initInput.json ../../../../../azure-sdk-for-go_tmp/initOutput.json
    warn		specification/monitor/data-plane/readme.md skipped due to azure-sdk-for-go not found in swagger-to-sdk
    command	generator automation-v2 ../../../../../azure-sdk-for-go_tmp/generateInput.json ../../../../../azure-sdk-for-go_tmp/generateOutput.json
  • ️✔️sdk/resourcemanager/monitor/armmonitor [View full logs]  [Preview SDK Changes] Breaking Change Detected
    info	[Changelog] ### Breaking Changes
    info	[Changelog]
    info	[Changelog] - Function `*PrivateEndpointConnectionsClient.BeginCreateOrUpdate` parameter(s) have been changed from `(context.Context, string, string, string, PrivateEndpointConnection, *PrivateEndpointConnectionsClientBeginCreateOrUpdateOptions)` to `(context.Context, string, string, string, PrivateEndpointConnectionAutoGenerated, *PrivateEndpointConnectionsClientBeginCreateOrUpdateOptions)`
    info	[Changelog] - Type of `AzureMonitorPrivateLinkScopeProperties.PrivateEndpointConnections` has been changed from `[]*PrivateEndpointConnection` to `[]*PrivateEndpointConnectionAutoGenerated`
    info	[Changelog] - Type of `DefaultErrorResponse.Error` has been changed from `*ErrorDetail` to `*ErrorDetailAutoGenerated`
    info	[Changelog] - Type of `ErrorContract.Error` has been changed from `*ErrorResponse` to `*ErrorResponseAutoGenerated3`
    info	[Changelog] - Type of `ErrorResponseCommonV2.Error` has been changed from `*ErrorDetail` to `*ErrorDetailAutoGenerated`
    info	[Changelog] - Type of `MetadataValue.Name` has been changed from `*LocalizableString` to `*LocalizableStringAutoGenerated`
    info	[Changelog] - Type of `Metric.Name` has been changed from `*LocalizableString` to `*LocalizableStringAutoGenerated`
    info	[Changelog] - Type of `Metric.Unit` has been changed from `*Unit` to `*MetricUnit`
    info	[Changelog] - Type of `MetricDefinition.Dimensions` has been changed from `[]*LocalizableString` to `[]*LocalizableStringAutoGenerated`
    info	[Changelog] - Type of `MetricDefinition.Name` has been changed from `*LocalizableString` to `*LocalizableStringAutoGenerated`
    info	[Changelog] - Type of `OperationStatus.Error` has been changed from `*ErrorDetail` to `*ErrorDetailAutoGenerated`
    info	[Changelog] - Type of `PrivateEndpointConnectionListResult.Value` has been changed from `[]*PrivateEndpointConnection` to `[]*PrivateEndpointConnectionAutoGenerated`
    info	[Changelog] - Type of `SubscriptionScopeMetricDefinition.Dimensions` has been changed from `[]*LocalizableString` to `[]*LocalizableStringAutoGenerated`
    info	[Changelog] - Type of `SubscriptionScopeMetricDefinition.Name` has been changed from `*LocalizableString` to `*LocalizableStringAutoGenerated`
    info	[Changelog] - Type of `SubscriptionScopeMetricsRequestBodyParameters.Timespan` has been changed from `*time.Time` to `*string`
    info	[Changelog] - Enum `Unit` has been removed
    info	[Changelog] - Operation `*AzureMonitorWorkspacesClient.Delete` has been changed to LRO, use `*AzureMonitorWorkspacesClient.BeginDelete` instead.
    info	[Changelog] - Struct `SubscriptionScopeMetric` has been removed
    info	[Changelog] - Struct `SubscriptionScopeMetricResponse` has been removed
    info	[Changelog] - Field `Code`, `Message` of struct `ErrorResponse` has been removed
    info	[Changelog] - Field `SubscriptionScopeMetricResponse` of struct `MetricsClientListAtSubscriptionScopePostResponse` has been removed
    info	[Changelog] - Field `SubscriptionScopeMetricResponse` of struct `MetricsClientListAtSubscriptionScopeResponse` has been removed
    info	[Changelog] - Field `ActionType`, `IsDataAction`, `Origin` of struct `OperationAutoGenerated` has been removed
    info	[Changelog] - Field `Description` of struct `OperationDisplayAutoGenerated` has been removed
    info	[Changelog] - Field `OperationListResult` of struct `OperationsClientListResponse` has been removed
    info	[Changelog] - Field `OperationListResultAutoGenerated` of struct `OperationsForMonitorClientListResponse` has been removed
    info	[Changelog] - Field `PrivateEndpointConnection` of struct `PrivateEndpointConnectionsClientCreateOrUpdateResponse` has been removed
    info	[Changelog] - Field `PrivateEndpointConnection` of struct `PrivateEndpointConnectionsClientGetResponse` has been removed
    info	[Changelog] - Field `Location`, `Tags` of struct `Resource` has been removed
    info	[Changelog] - Field `Location`, `Tags` of struct `ResourceAutoGenerated` has been removed
    info	[Changelog] - Field `SystemData` of struct `ResourceAutoGenerated5` has been removed
    info	[Changelog] - Field `SystemData` of struct `TrackedResourceAutoGenerated` has been removed
    info	[Changelog]
    info	[Changelog] ### Features Added
    info	[Changelog]
    info	[Changelog] - New function `NewClient(azcore.TokenCredential, *arm.ClientOptions) (*Client, error)`
    info	[Changelog] - New function `*Client.BeginCreateNotificationsAtTenantActionGroupResourceLevel(context.Context, string, string, string, TenantNotificationRequestBody, *ClientBeginCreateNotificationsAtTenantActionGroupResourceLevelOptions) (*runtime.Poller[ClientCreateNotificationsAtTenantActionGroupResourceLevelResponse], error)`
    info	[Changelog] - New function `*Client.GetTestNotificationsAtTenantActionGroupResourceLevel(context.Context, string, string, string, string, *ClientGetTestNotificationsAtTenantActionGroupResourceLevelOptions) (ClientGetTestNotificationsAtTenantActionGroupResourceLevelResponse, error)`
    info	[Changelog] - New function `*ClientFactory.NewClient() *Client`
    info	[Changelog] - New struct `ActionDetailAutoGenerated`
    info	[Changelog] - New struct `ErrorResponseAutoGenerated3`
    info	[Changelog] - New struct `ErrorResponseAutoGenerated4`
    info	[Changelog] - New struct `LocalizableStringAutoGenerated`
    info	[Changelog] - New struct `PrivateEndpointAutoGenerated`
    info	[Changelog] - New struct `PrivateEndpointConnectionAutoGenerated`
    info	[Changelog] - New struct `PrivateEndpointConnectionPropertiesAutoGenerated`
    info	[Changelog] - New struct `ResourceAutoGenerated6`
    info	[Changelog] - New struct `TenantNotificationRequestBody`
    info	[Changelog] - New struct `TestNotificationDetailsResponseAutoGenerated`
    info	[Changelog] - New field `PrivateEndpointConnections`, `PublicNetworkAccess` in struct `AzureMonitorWorkspace`
    info	[Changelog] - New field `PrivateEndpointConnections`, `PublicNetworkAccess` in struct `AzureMonitorWorkspaceResourceProperties`
    info	[Changelog] - New field `Error` in struct `ErrorResponse`
    info	[Changelog] - New field `Rollupby` in struct `MetricsClientListAtSubscriptionScopeOptions`
    info	[Changelog] - New field `Rollupby` in struct `MetricsClientListAtSubscriptionScopePostOptions`
    info	[Changelog] - New anonymous field `Response` in struct `MetricsClientListAtSubscriptionScopePostResponse`
    info	[Changelog] - New anonymous field `Response` in struct `MetricsClientListAtSubscriptionScopeResponse`
    info	[Changelog] - New field `Rollupby` in struct `MetricsClientListOptions`
    info	[Changelog] - New field `ActionType`, `IsDataAction`, `Origin` in struct `Operation`
    info	[Changelog] - New field `Description` in struct `OperationDisplay`
    info	[Changelog] - New anonymous field `OperationListResultAutoGenerated` in struct `OperationsClientListResponse`
    info	[Changelog] - New anonymous field `OperationListResult` in struct `OperationsForMonitorClientListResponse`
    info	[Changelog] - New field `SystemData` in struct `PrivateEndpointConnection`
    info	[Changelog] - New field `GroupIDs` in struct `PrivateEndpointConnectionProperties`
    info	[Changelog] - New anonymous field `PrivateEndpointConnectionAutoGenerated` in struct `PrivateEndpointConnectionsClientCreateOrUpdateResponse`
    info	[Changelog] - New anonymous field `PrivateEndpointConnectionAutoGenerated` in struct `PrivateEndpointConnectionsClientGetResponse`
    info	[Changelog] - New field `SystemData` in struct `ResourceAutoGenerated`
    info	[Changelog] - New field `SystemData` in struct `ResourceAutoGenerated2`
    info	[Changelog] - New field `Location`, `Tags` in struct `ResourceAutoGenerated3`
    info	[Changelog] - New field `SystemData` in struct `TrackedResource`
    info	[Changelog]
    info	[Changelog] Total 31 breaking change(s), 44 additive change(s).
️️✔️ azure-sdk-for-js succeeded [Detail] [Expand]
  • ️✔️Succeeded [Logs] Generate from 163174348e39f564f7e51579405d680d2006fcd9. SDK Automation 14.0.0
    command	sh .scripts/automation_init.sh ../azure-sdk-for-js_tmp/initInput.json ../azure-sdk-for-js_tmp/initOutput.json
    warn	File azure-sdk-for-js_tmp/initOutput.json not found to read
    warn		specification/monitor/data-plane/readme.md skipped due to azure-sdk-for-js not found in swagger-to-sdk
    command	sh .scripts/automation_generate.sh ../azure-sdk-for-js_tmp/generateInput.json ../azure-sdk-for-js_tmp/generateOutput.json
  • ️✔️@azure/arm-monitor [View full logs]  [Preview SDK Changes] Breaking Change Detected
    Only show 120 items here, please refer to log for details.
    info	[Changelog]   - Added Type Alias TenantActionGroupsListByManagementGroupIdResponse
    info	[Changelog]   - Added Type Alias TenantActionGroupsUpdateResponse
    info	[Changelog]   - Added Type Alias TimeAggregation
    info	[Changelog]   - Interface AutoscaleSettingResourcePatch has a new optional parameter predictiveAutoscalePolicy
    info	[Changelog]   - Interface DataCollectionEndpoint has a new optional parameter failoverConfiguration
    info	[Changelog]   - Interface DataCollectionEndpoint has a new optional parameter metadata
    info	[Changelog]   - Interface DataCollectionEndpoint has a new optional parameter metricsIngestion
    info	[Changelog]   - Interface DataCollectionEndpoint has a new optional parameter privateLinkScopedResources
    info	[Changelog]   - Interface DataCollectionEndpointResource has a new optional parameter failoverConfiguration
    info	[Changelog]   - Interface DataCollectionEndpointResource has a new optional parameter identity
    info	[Changelog]   - Interface DataCollectionEndpointResource has a new optional parameter metadata
    info	[Changelog]   - Interface DataCollectionEndpointResource has a new optional parameter metricsIngestion
    info	[Changelog]   - Interface DataCollectionEndpointResource has a new optional parameter privateLinkScopedResources
    info	[Changelog]   - Interface DataCollectionRule has a new optional parameter dataCollectionEndpointId
    info	[Changelog]   - Interface DataCollectionRule has a new optional parameter metadata
    info	[Changelog]   - Interface DataCollectionRule has a new optional parameter streamDeclarations
    info	[Changelog]   - Interface DataCollectionRuleAssociation has a new optional parameter metadata
    info	[Changelog]   - Interface DataCollectionRuleAssociationProxyOnlyResource has a new optional parameter metadata
    info	[Changelog]   - Interface DataCollectionRuleResource has a new optional parameter dataCollectionEndpointId
    info	[Changelog]   - Interface DataCollectionRuleResource has a new optional parameter identity
    info	[Changelog]   - Interface DataCollectionRuleResource has a new optional parameter metadata
    info	[Changelog]   - Interface DataCollectionRuleResource has a new optional parameter streamDeclarations
    info	[Changelog]   - Interface DataFlow has a new optional parameter builtInTransform
    info	[Changelog]   - Interface DataFlow has a new optional parameter outputStream
    info	[Changelog]   - Interface DataFlow has a new optional parameter transformKql
    info	[Changelog]   - Interface DataSourcesSpec has a new optional parameter dataImports
    info	[Changelog]   - Interface DataSourcesSpec has a new optional parameter iisLogs
    info	[Changelog]   - Interface DataSourcesSpec has a new optional parameter logFiles
    info	[Changelog]   - Interface DataSourcesSpec has a new optional parameter platformTelemetry
    info	[Changelog]   - Interface DataSourcesSpec has a new optional parameter prometheusForwarder
    info	[Changelog]   - Interface DataSourcesSpec has a new optional parameter windowsFirewallLogs
    info	[Changelog]   - Interface DestinationsSpec has a new optional parameter eventHubs
    info	[Changelog]   - Interface DestinationsSpec has a new optional parameter eventHubsDirect
    info	[Changelog]   - Interface DestinationsSpec has a new optional parameter monitoringAccounts
    info	[Changelog]   - Interface DestinationsSpec has a new optional parameter storageAccounts
    info	[Changelog]   - Interface DestinationsSpec has a new optional parameter storageBlobsDirect
    info	[Changelog]   - Interface DestinationsSpec has a new optional parameter storageTablesDirect
    info	[Changelog]   - Interface ErrorResponse has a new optional parameter error
    info	[Changelog]   - Interface LogSettings has a new optional parameter categoryGroup
    info	[Changelog]   - Interface MetricsListOptionalParams has a new optional parameter autoAdjustTimegrain
    info	[Changelog]   - Interface MetricsListOptionalParams has a new optional parameter rollupby
    info	[Changelog]   - Interface MetricsListOptionalParams has a new optional parameter validateDimensions
    info	[Changelog]   - Interface Operation has a new optional parameter actionType
    info	[Changelog]   - Interface Operation has a new optional parameter isDataAction
    info	[Changelog]   - Interface Operation has a new optional parameter origin
    info	[Changelog]   - Interface OperationDisplay has a new optional parameter description
    info	[Changelog]   - Interface Resource has a new optional parameter systemData
    info	[Changelog]   - Interface ResourceAutoGenerated has a new optional parameter systemData
    info	[Changelog]   - Interface ResourceForUpdate has a new optional parameter identity
    info	[Changelog]   - Added Enum KnownAccessMode
    info	[Changelog]   - Added Enum KnownActionType
    info	[Changelog]   - Added Enum KnownCategoryType
    info	[Changelog]   - Added Enum KnownDimensionOperator
    info	[Changelog]   - Added Enum KnownKind
    info	[Changelog]   - Added Enum KnownKnownColumnDefinitionType
    info	[Changelog]   - Added Enum KnownKnownLocationSpecProvisioningStatus
    info	[Changelog]   - Added Enum KnownKnownLogFilesDataSourceFormat
    info	[Changelog]   - Added Enum KnownKnownLogFileTextSettingsRecordStartTimestampFormat
    info	[Changelog]   - Added Enum KnownKnownPrometheusForwarderDataSourceStreams
    info	[Changelog]   - Added Enum KnownManagedServiceIdentityType
    info	[Changelog]   - Added Enum KnownMetricAggregationType
    info	[Changelog]   - Added Enum KnownMetricResultType
    info	[Changelog]   - Added Enum KnownOrigin
    info	[Changelog]   - Added Enum KnownPrivateEndpointConnectionProvisioningState
    info	[Changelog]   - Added Enum KnownPrivateEndpointServiceConnectionStatus
    info	[Changelog]   - Added Enum KnownPublicNetworkAccess
    info	[Changelog]   - Added Enum KnownTimeAggregation
    info	[Changelog]   - Enum KnownKnownDataCollectionEndpointProvisioningState has a new value Canceled
    info	[Changelog]   - Enum KnownKnownDataCollectionRuleAssociationProvisioningState has a new value Canceled
    info	[Changelog]   - Enum KnownKnownDataCollectionRuleProvisioningState has a new value Canceled
    info	[Changelog]   - Enum KnownKnownPublicNetworkAccessOptions has a new value SecuredByPerimeter
    info	[Changelog]   - Enum KnownProvisioningState has a new value Creating
    info	[Changelog]   - Enum KnownProvisioningState has a new value Deleting
    info	[Changelog]   - Added function getContinuationToken
    info	[Changelog]
    info	[Changelog] **Breaking Changes**
    info	[Changelog]
    info	[Changelog]   - Removed operation group Metrics
    info	[Changelog]   - Removed operation ActionGroups.beginPostTestNotifications
    info	[Changelog]   - Removed operation ActionGroups.beginPostTestNotificationsAndWait
    info	[Changelog]   - Removed operation ActionGroups.getTestNotifications
    info	[Changelog]   - Operation ActivityLogAlerts.update has a new signature
    info	[Changelog]   - Operation PrivateEndpointConnections.beginCreateOrUpdate has a new signature
    info	[Changelog]   - Operation PrivateEndpointConnections.beginCreateOrUpdateAndWait has a new signature
    info	[Changelog]   - Operation ScheduledQueryRules.createOrUpdate has a new signature
    info	[Changelog]   - Operation ScheduledQueryRules.update has a new signature
    info	[Changelog]   - Class MonitorClient has a new signature
    info	[Changelog]   - Interface ActivityLogsListNextOptionalParams no longer has parameter select
    info	[Changelog]   - Interface AzureResource no longer has parameter identity
    info	[Changelog]   - Interface AzureResource no longer has parameter kind
    info	[Changelog]   - Interface ErrorResponse no longer has parameter code
    info	[Changelog]   - Interface ErrorResponse no longer has parameter message
    info	[Changelog]   - Interface PrivateEndpointConnectionListResult no longer has parameter nextLink
    info	[Changelog]   - Interface PrivateLinkResourceListResult no longer has parameter nextLink
    info	[Changelog]   - Interface Resource no longer has parameter location
    info	[Changelog]   - Interface Resource no longer has parameter tags
    info	[Changelog]   - Interface ResourceAutoGenerated no longer has parameter etag
    info	[Changelog]   - Interface ResourceAutoGenerated no longer has parameter kind
    info	[Changelog]   - Interface ResourceAutoGenerated no longer has parameter location
    info	[Changelog]   - Interface ResourceAutoGenerated no longer has parameter tags
    info	[Changelog]   - Interface ScheduledQueryRulesListByResourceGroupOptionalParams no longer has parameter filter
    info	[Changelog]   - Interface ScheduledQueryRulesListBySubscriptionOptionalParams no longer has parameter filter
    info	[Changelog]   - Interface TenantActivityLogsListNextOptionalParams no longer has parameter filter
    info	[Changelog]   - Interface TenantActivityLogsListNextOptionalParams no longer has parameter select
    info	[Changelog]   - Type of parameter operator of interface Dimension is changed from Operator to DimensionOperator
    info	[Changelog]   - Type of parameter error of interface ErrorContract is changed from ErrorResponse to ErrorResponseAutoGenerated3
    info	[Changelog]   - Type of parameter error of interface ErrorResponseCommonV2 is changed from ErrorDetail to ErrorDetailAutoGenerated
    info	[Changelog]   - Type of parameter name of interface MetadataValue is changed from LocalizableString to LocalizableStringAutoGenerated
    info	[Changelog]   - Type of parameter name of interface Metric is changed from LocalizableString to LocalizableStringAutoGenerated
    info	[Changelog]   - Type of parameter dimensions of interface MetricDefinition is changed from LocalizableString[] to LocalizableStringAutoGenerated[]
    info	[Changelog]   - Type of parameter name of interface MetricDefinition is changed from LocalizableString to LocalizableStringAutoGenerated
    info	[Changelog]   - Type of parameter error of interface OperationStatus is changed from ErrorResponseCommon to ErrorDetailAutoGenerated
    info	[Changelog]   - Type of parameter value of interface PrivateEndpointConnectionListResult is changed from PrivateEndpointConnection[] to PrivateEndpointConnectionAutoGenerated[]
    info	[Changelog]   - Class MonitorClient no longer has parameter metrics
    info	[Changelog]   - Removed Enum KnownConditionalOperator
    info	[Changelog]   - Removed Enum KnownEnabled
    info	[Changelog]   - Removed Enum KnownMetricTriggerType
    info	[Changelog]   - Removed Enum KnownQueryType
    info	[Changelog]   - Enum KnownOperator no longer has value Include
    info	[Changelog]   - Enum KnownProvisioningState no longer has value Deploying
️❌ azure-resource-manager-schemas failed [Detail]
  • Pipeline Framework Failed [Logs] Generate from 163174348e39f564f7e51579405d680d2006fcd9. Schema Automation 14.0.0
    command	.sdkauto/initScript.sh ../azure-resource-manager-schemas_tmp/initInput.json ../azure-resource-manager-schemas_tmp/initOutput.json
    cmderr	[initScript.sh] npm notice
    cmderr	[initScript.sh] npm notice New major version of npm available! 8.19.4 -> 10.2.4
    cmderr	[initScript.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v10.2.4>
    cmderr	[initScript.sh] npm notice Run `npm install -g [email protected]` to update!
    cmderr	[initScript.sh] npm notice
    warn	File azure-resource-manager-schemas_tmp/initOutput.json not found to read
    warn		specification/monitor/data-plane/readme.md skipped due to azure-resource-manager-schemas not found in swagger-to-sdk
    command	.sdkauto/generateScript.sh ../azure-resource-manager-schemas_tmp/generateInput.json ../azure-resource-manager-schemas_tmp/generateOutput.json
    cannot force update branch 'sdkAuto/26655/monitor' as it is the current HEAD of the repository.
    Error: cannot force update branch 'sdkAuto/26655/monitor' as it is the current HEAD of the repository.
  • ️✔️monitor [View full logs]  [Preview Schema Changes]
  • ️✔️monitor [View full logs
    error	Fatal error: cannot force update branch 'sdkAuto/26655/monitor' as it is the current HEAD of the repository.
    error	The following packages are still pending:
    error		monitor
    error		monitor
️❌ azure-powershell failed [Detail]
  • Pipeline Framework Failed [Logs] Generate from 163174348e39f564f7e51579405d680d2006fcd9. SDK Automation 14.0.0
    command	sh ./tools/SwaggerCI/init.sh ../azure-powershell_tmp/initInput.json ../azure-powershell_tmp/initOutput.json
    warn		specification/monitor/data-plane/readme.md skipped due to azure-powershell not found in swagger-to-sdk
    command	pwsh ./tools/SwaggerCI/psci.ps1 ../azure-powershell_tmp/generateInput.json ../azure-powershell_tmp/generateOutput.json
    SSL error: syscall failure: Broken pipe
    Error: SSL error: syscall failure: Broken pipe
  • ⚠️Az.monitor.DefaultTag [View full logs
    error	Fatal error: SSL error: syscall failure: Broken pipe
    error	The following packages are still pending:
    error		Az.monitor.DefaultTag
Posted by Swagger Pipeline | How to fix these errors?

Copy link

openapi-pipeline-app bot commented Nov 10, 2023

Generated ApiView

Language Package Name ApiView Link
Go sdk/resourcemanager/monitor/armmonitor Create ApiView failed. Please ask PR assignee for help
Java azure-resourcemanager-monitor-generated Create ApiView failed. Please ask PR assignee for help
.Net Azure.ResourceManager.Monitor Create ApiView failed. Please ask PR assignee for help
JavaScript @azure/arm-monitor Create ApiView failed. Please ask PR assignee for help
Swagger Microsoft.Insights Create ApiView failed. Please ask PR assignee for help
Swagger Microsoft.Monitor Create ApiView failed. Please ask PR assignee for help

@AzureRestAPISpecReview AzureRestAPISpecReview added BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required data-plane new-api-version resource-manager labels Nov 11, 2023
@ToddKingMSFT ToddKingMSFT marked this pull request as ready for review November 13, 2023 18:43
@AzureRestAPISpecReview AzureRestAPISpecReview added ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review ARMReview labels Nov 13, 2023
Copy link

Please address or respond to feedback from the ARM API reviewer.
When you are ready to continue the ARM API review, please remove the ARMChangesRequested label.
This will notify the reviewer to have another look.
If the feedback provided needs further discussion, please use this Teams channel to post your questions - aka.ms/azsdk/support/specreview-channel.
Please include [ARM Query] in the title of your question to indicate that it is ARM-related.

@ToddKingMSFT ToddKingMSFT removed the ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review label Nov 27, 2023
@openapi-workflow-bot openapi-workflow-bot bot added the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Nov 27, 2023
@ToddKingMSFT
Copy link
Member Author

For the ARM portion of this PR could you please separate them out into separate PRs one for each version ? This is currently not possible to review since I don't know what is the exact change being made across versions ?

@raosuhas No this isn't really possible. The whole point of this PR is to enable the SDK team to release a unified SDK for metrics that includes both the ARM and dataplane APIs in a single SDK and to enable that we are releasing new versions of both the dataplane and ARM APIs that share definitions to make this easier. I'm happy to setup a meeting with you to help walk you through the changes but I don't want to restart the whole process of getting breaking change and stewardship review board approval on 2 new PRs.

@raosuhas If the issue is the diff view I've manually created the equivalent ARM diff views for the metrics and metricDefinitions API diffs here. This PR has already gone through multiple breaking change meetings and an hour plus long stewardship board review. I don't want to restart the whole process with 2 parallel PRs. I can setup some time to meet with you to help go over the changes if you still need help diffing them. You can also do this yourself you'll want to diff the 2023-10-01 arm changes found in this PR with the exsiting 2021-05-01 arm metrics APIs this PR is based on.

metricDefinitions review:
https://apiview.dev/Assemblies/Review/dad413a6847e4cf18b2f39e29291fdfb?diffRevisionId=66708b00430f4a0dac43a1932030c0b6&diffOnly=False&revisionId=2aa1608621b142c0b80cfa51e8db7fe7&doc=False

metrics review:
https://apiview.dev/Assemblies/Review/a7698c5353f345ea95889d50fbc769d4?diffRevisionId=b0e8ed42ca0a4d348080266b2f1bc904&diffOnly=False&revisionId=878ec4eaa9f44eeb8ede9b4b174384ae&doc=False

@raych1
Copy link
Member

raych1 commented Nov 28, 2023

@ToddKingMSFT duplicated schemas are referenced in the swaggers included in the default tag in readme.md. This causes the duplicated names are renamed by adding autogenerated to the original name. Please consolidate the references.

09:32:49.55 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'Resource' (2 differences):
09:32:49.55 cmderr 	[generator automation-v2]   - properties.tags.description: "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters." => "Resource tags"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.systemData: {"readOnly":true,"description":"The system metadata related to the response.","$ref":"#/components/schemas/schemas:1238"} => <none>
09:32:49.55 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'Resource' (9 differences):
09:32:49.55 cmderr 	[generator automation-v2]   - properties.id.description: "Azure resource Id" => "Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.name.description: "Azure resource name" => "The name of the resource"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.type.description: "Azure resource type" => "The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\""
09:32:49.55 cmderr 	[generator automation-v2]   - properties.location: {"x-ms-mutability":["create","read"],"$ref":"#/components/schemas/schemas:83","description":"Resource location"} => <none>
09:32:49.55 cmderr 	[generator automation-v2]   - properties.tags: {"$ref":"#/components/schemas/schemas:84","description":"Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters."} => <none>
09:32:49.55 cmderr 	[generator automation-v2]   - properties.systemData.description: "The system metadata related to the response." => "Azure Resource Manager metadata containing createdBy and modifiedBy information."
09:32:49.55 cmderr 	[generator automation-v2]   - properties.systemData.type: <none> => "object"
09:32:49.55 cmderr 	[generator automation-v2]   - required: ["location"] => <none>
09:32:49.55 cmderr 	[generator automation-v2]   - title: <none> => "Resource"
09:32:49.55 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'Resource' (8 differences):
09:32:49.55 cmderr 	[generator automation-v2]   - properties.id.description: "Azure resource Id" => "Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.name.description: "Azure resource name" => "The name of the resource"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.type.description: "Azure resource type" => "The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\""
09:32:49.55 cmderr 	[generator automation-v2]   - properties.location: {"x-ms-mutability":["create","read"],"$ref":"#/components/schemas/schemas:83","description":"Resource location"} => <none>
09:32:49.55 cmderr 	[generator automation-v2]   - properties.tags: {"$ref":"#/components/schemas/schemas:84","description":"Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters."} => <none>
09:32:49.55 cmderr 	[generator automation-v2]   - properties.systemData: {"readOnly":true,"description":"The system metadata related to the response.","$ref":"#/components/schemas/schemas:1238"} => <none>
09:32:49.55 cmderr 	[generator automation-v2]   - required: ["location"] => <none>
09:32:49.55 cmderr 	[generator automation-v2]   - title: <none> => "Resource"
09:32:49.55 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'Resource' (10 differences):
09:32:49.55 cmderr 	[generator automation-v2]   - properties.id.$ref: "#/components/schemas/schemas:80" => "#/components/schemas/schemas:1432"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.id.description: "Azure resource Id" => "Fully qualified resource ID for the resource. E.g. \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}\""
09:32:49.55 cmderr 	[generator automation-v2]   - properties.name.description: "Azure resource name" => "The name of the resource"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.type.description: "Azure resource type" => "The type of the resource. E.g. \"Microsoft.Compute/virtualMachines\" or \"Microsoft.Storage/storageAccounts\""
09:32:49.55 cmderr 	[generator automation-v2]   - properties.location: {"x-ms-mutability":["create","read"],"$ref":"#/components/schemas/schemas:83","description":"Resource location"} => <none>
09:32:49.55 cmderr 	[generator automation-v2]   - properties.tags: {"$ref":"#/components/schemas/schemas:84","description":"Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters."} => <none>
09:32:49.55 cmderr 	[generator automation-v2]   - properties.systemData.description: "The system metadata related to the response." => "Azure Resource Manager metadata containing createdBy and modifiedBy information."
09:32:49.55 cmderr 	[generator automation-v2]   - properties.systemData.type: <none> => "object"
09:32:49.55 cmderr 	[generator automation-v2]   - required: ["location"] => <none>
09:32:49.55 cmderr 	[generator automation-v2]   - title: <none> => "Resource"
09:32:49.55 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'OperationListResult' (5 differences):
09:32:49.55 cmderr 	[generator automation-v2]   - properties.value.$ref: "#/components/schemas/schemas:120" => "#/components/schemas/schemas:1223"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.value.description: "List of operations supported by the Microsoft.Insights provider." => "List of operations supported by the resource provider"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.value.readOnly: <none> => true
09:32:49.55 cmderr 	[generator automation-v2]   - properties.nextLink.$ref: "#/components/schemas/schemas:121" => "#/components/schemas/schemas:1224"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.nextLink.readOnly: <none> => true
09:32:49.55 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'Operation' (8 differences):
09:32:49.55 cmderr 	[generator automation-v2]   - properties.name.$ref: "#/components/schemas/schemas:123" => "#/components/schemas/schemas:1214"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.name.description: "The name of the operation, as per Resource-Based Access Control (RBAC). Examples: \"Microsoft.Insights/components/write\", \"Microsoft.Insights/metrics/read\"" => "The name of the operation, as per Resource-Based Access Control (RBAC). Examples: \"Microsoft.Compute/virtualMachines/write\", \"Microsoft.Compute/virtualMachines/capture/action\""
09:32:49.55 cmderr 	[generator automation-v2]   - properties.name.readOnly: <none> => true
09:32:49.55 cmderr 	[generator automation-v2]   - properties.isDataAction.readOnly: <none> => true
09:32:49.55 cmderr 	[generator automation-v2]   - properties.display.$ref: "#/components/schemas/schemas:124" => "#/components/schemas/schemas:1215"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.origin.readOnly: <none> => true
09:32:49.55 cmderr 	[generator automation-v2]   - properties.actionType.readOnly: <none> => true
09:32:49.55 cmderr 	[generator automation-v2]   - properties.properties: {"description":"Properties of operation, include log and metric specifications.","x-ms-client-flatten":true,"x-ms-client-name":"OperationProperties","$ref":"#/components/schemas/schemas:132"} => <none>
09:32:49.55 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'Operation-display' (12 differences):
09:32:49.55 cmderr 	[generator automation-v2]   - properties.publisher: {"$ref":"#/components/schemas/schemas:125","description":"The publisher of this operation."} => <none>
09:32:49.55 cmderr 	[generator automation-v2]   - properties.provider.$ref: "#/components/schemas/schemas:126" => "#/components/schemas/schemas:1216"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.provider.description: "The localized friendly form of the resource provider name, e.g. \"Microsoft Azure Monitor\"." => "The localized friendly form of the resource provider name, e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute\"."
09:32:49.55 cmderr 	[generator automation-v2]   - properties.provider.readOnly: <none> => true
09:32:49.55 cmderr 	[generator automation-v2]   - properties.resource.$ref: "#/components/schemas/schemas:127" => "#/components/schemas/schemas:1217"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.resource.description: "The localized friendly name of the resource type related to this operation. E.g. \"Application insights components\" or \"Log Definitions\"." => "The localized friendly name of the resource type related to this operation. E.g. \"Virtual Machines\" or \"Job Schedule Collections\"."
09:32:49.55 cmderr 	[generator automation-v2]   - properties.resource.readOnly: <none> => true
09:32:49.55 cmderr 	[generator automation-v2]   - properties.operation.$ref: "#/components/schemas/schemas:128" => "#/components/schemas/schemas:1218"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.operation.description: "The concise, localized friendly name for the operation; suitable for dropdowns. E.g. \"Reading an application insights component configuration\", \"Application Insights component metrics read\"." => "The concise, localized friendly name for the operation; suitable for dropdowns. E.g. \"Create or Update Virtual Machine\", \"Restart Virtual Machine\"."
09:32:49.55 cmderr 	[generator automation-v2]   - properties.operation.readOnly: <none> => true
09:32:49.55 cmderr 	[generator automation-v2]   - properties.description.$ref: "#/components/schemas/schemas:129" => "#/components/schemas/schemas:1219"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.description.readOnly: <none> => true
09:32:49.55 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'ErrorResponse' (6 differences):
09:32:49.55 cmderr 	[generator automation-v2]   - properties.code.$ref: "#/components/schemas/schemas:169" => "#/components/schemas/schemas:934"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.code.description: "Error code" => "The error code."
09:32:49.55 cmderr 	[generator automation-v2]   - properties.code.readOnly: <none> => true
09:32:49.55 cmderr 	[generator automation-v2]   - properties.message.$ref: "#/components/schemas/schemas:170" => "#/components/schemas/schemas:935"
09:32:49.55 cmderr 	[generator automation-v2]   - properties.message.description: "Error message indicating why the operation failed." => "The error message indicating why the operation failed."
09:32:49.55 cmderr 	[generator automation-v2]   - properties.message.readOnly: <none> => true
09:32:49.55 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'ErrorResponse' (4 differences):
09:32:49.55 cmderr 	[generator automation-v2]   - properties.code: {"$ref":"#/components/schemas/schemas:169","description":"Error code"} => <none>
09:32:49.55 cmderr 	[generator automation-v2]   - properties.message: {"$ref":"#/components/schemas/schemas:170","description":"Error message indicating why the operation failed."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.error: <none> => {"description":"The error object.","$ref":"#/components/schemas/schemas:1203"}
09:32:49.56 cmderr 	[generator automation-v2]   - title: <none> => "Error response"
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'ErrorResponse' (4 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.code: {"$ref":"#/components/schemas/schemas:169","description":"Error code"} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.message: {"$ref":"#/components/schemas/schemas:170","description":"Error message indicating why the operation failed."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.error: <none> => {"description":"The error object.","$ref":"#/components/schemas/schemas:1301"}
09:32:49.56 cmderr 	[generator automation-v2]   - title: <none> => "Error response"
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'ErrorResponse' (2 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.target: <none> => {"$ref":"#/components/schemas/schemas:1386","description":"The error target."}
09:32:49.56 cmderr 	[generator automation-v2]   - properties.additionalInfo: <none> => {"$ref":"#/components/schemas/schemas:1387","description":"Additional information about the error"}
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'AzureResource' (9 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.id.description: "Azure resource Id" => "The resource Id."
09:32:49.56 cmderr 	[generator automation-v2]   - properties.name.description: "Azure resource name" => "The name of the resource."
09:32:49.56 cmderr 	[generator automation-v2]   - properties.type.description: "Azure resource type" => "The type of the resource."
09:32:49.56 cmderr 	[generator automation-v2]   - properties.location.x-ms-mutability.0: "create" => "read"
09:32:49.56 cmderr 	[generator automation-v2]   - properties.location.x-ms-mutability.1: "read" => "create"
09:32:49.56 cmderr 	[generator automation-v2]   - properties.location.$ref: "#/components/schemas/schemas:306" => "#/components/schemas/schemas:903"
09:32:49.56 cmderr 	[generator automation-v2]   - properties.location.description: "Resource location" => "The location of the resource. Since Azure Activity Log Alerts is a global service, the location of the rules should always be 'global'."
09:32:49.56 cmderr 	[generator automation-v2]   - properties.tags.description: "Resource tags" => "The tags of the resource."
09:32:49.56 cmderr 	[generator automation-v2]   - required: ["location"] => <none>
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'TestNotificationDetailsResponse' (1 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.actionDetails.$ref: "#/components/schemas/schemas:313" => "#/components/schemas/schemas:435"
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'ActionDetail' (12 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.MechanismType: {"$ref":"#/components/schemas/schemas:315","description":"The mechanism type"} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.Name: {"$ref":"#/components/schemas/schemas:316","description":"The name of the action"} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.Status: {"$ref":"#/components/schemas/schemas:317","description":"The status of the action"} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.SubState: {"$ref":"#/components/schemas/schemas:318","description":"The substatus of the action"} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.SendTime: {"$ref":"#/components/schemas/schemas:319","description":"The send time"} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.Detail: {"$ref":"#/components/schemas/schemas:320","description":"The detail of the friendly error message"} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.mechanismType: <none> => {"$ref":"#/components/schemas/schemas:437","description":"The mechanism type"}
09:32:49.56 cmderr 	[generator automation-v2]   - properties.name: <none> => {"$ref":"#/components/schemas/schemas:438","description":"The name of the action"}
09:32:49.56 cmderr 	[generator automation-v2]   - properties.status: <none> => {"$ref":"#/components/schemas/schemas:439","description":"The status of the action"}
09:32:49.56 cmderr 	[generator automation-v2]   - properties.subState: <none> => {"$ref":"#/components/schemas/schemas:440","description":"The substatus of the action"}
09:32:49.56 cmderr 	[generator automation-v2]   - properties.sendTime: <none> => {"$ref":"#/components/schemas/schemas:441","description":"The send time"}
09:32:49.56 cmderr 	[generator automation-v2]   - properties.message: <none> => {"$ref":"#/components/schemas/schemas:442","description":"The detail of the friendly error message"}
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'ActionGroup' (17 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.groupShortName: {"$ref":"#/components/schemas/schemas:342","description":"The short name of the action group. This will be used in SMS messages."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.enabled: {"type":"boolean","default":true,"description":"Indicates whether this action group is enabled. If an action group is not enabled, then none of its receivers will receive communications."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.emailReceivers: {"x-ms-identifiers":[],"$ref":"#/components/schemas/schemas:343","description":"The list of email receivers that are part of this action group."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.smsReceivers: {"x-ms-identifiers":[],"$ref":"#/components/schemas/schemas:344","description":"The list of SMS receivers that are part of this action group."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.webhookReceivers: {"x-ms-identifiers":[],"$ref":"#/components/schemas/schemas:345","description":"The list of webhook receivers that are part of this action group."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.itsmReceivers: {"x-ms-identifiers":[],"$ref":"#/components/schemas/schemas:346","description":"The list of ITSM receivers that are part of this action group."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.azureAppPushReceivers: {"x-ms-identifiers":[],"$ref":"#/components/schemas/schemas:347","description":"The list of AzureAppPush receivers that are part of this action group."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.automationRunbookReceivers: {"x-ms-identifiers":[],"$ref":"#/components/schemas/schemas:348","description":"The list of AutomationRunbook receivers that are part of this action group."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.voiceReceivers: {"x-ms-identifiers":[],"$ref":"#/components/schemas/schemas:349","description":"The list of voice receivers that are part of this action group."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.logicAppReceivers: {"x-ms-identifiers":[],"$ref":"#/components/schemas/schemas:350","description":"The list of logic app receivers that are part of this action group."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.azureFunctionReceivers: {"x-ms-identifiers":[],"$ref":"#/components/schemas/schemas:351","description":"The list of azure function receivers that are part of this action group."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.armRoleReceivers: {"x-ms-identifiers":[],"$ref":"#/components/schemas/schemas:352","description":"The list of ARM role receivers that are part of this action group. Roles are Azure RBAC roles and only built-in roles are supported."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.eventHubReceivers: {"x-ms-identifiers":[],"$ref":"#/components/schemas/schemas:353","description":"The list of event hub receivers that are part of this action group."} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - properties.actionGroupId: <none> => {"$ref":"#/components/schemas/schemas:926","description":"The resource ID of the Action Group. This cannot be null or empty."}
09:32:49.56 cmderr 	[generator automation-v2]   - properties.webhookProperties: <none> => {"$ref":"#/components/schemas/schemas:927","description":"the dictionary of custom properties to include with the post operation. These data are appended to the webhook payload."}
09:32:49.56 cmderr 	[generator automation-v2]   - required.0: "groupShortName" => "actionGroupId"
09:32:49.56 cmderr 	[generator automation-v2]   - required.1: "enabled" => <none>
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'EmailReceiver' (1 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.name.description: "The name of the email receiver. Names must be unique across all receivers within an action group." => "The name of the email receiver. Names must be unique across all receivers within a tenant action group."
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'SmsReceiver' (1 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.name.description: "The name of the SMS receiver. Names must be unique across all receivers within an action group." => "The name of the SMS receiver. Names must be unique across all receivers within a tenant action group."
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'WebhookReceiver' (1 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.name.description: "The name of the webhook receiver. Names must be unique across all receivers within an action group." => "The name of the webhook receiver. Names must be unique across all receivers within a tenant action group."
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'AzureAppPushReceiver' (1 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.name.description: "The name of the Azure mobile app push receiver. Names must be unique across all receivers within an action group." => "The name of the Azure mobile app push receiver. Names must be unique across all receivers within a tenant action group."
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'VoiceReceiver' (1 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.name.description: "The name of the voice receiver. Names must be unique across all receivers within an action group." => "The name of the voice receiver. Names must be unique across all receivers within a tenant action group."
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'ActionGroupPatchBody' (1 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.properties.$ref: "#/components/schemas/schemas:413" => "#/components/schemas/schemas:484"
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'ActionGroupPatch' (1 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.enabled.description: "Indicates whether this action group is enabled. If an action group is not enabled, then none of its actions will be activated." => "Indicates whether this tenant action group is enabled. If a tenant action group is not enabled, then none of its actions will be activated."
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'LocalizableString' (2 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.value.description: "the invariant value." => "The invariant value."
09:32:49.56 cmderr 	[generator automation-v2]   - properties.localizedValue.description: "the locale specific value." => "The display name."
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'ErrorContract' (3 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.error.description: "The error details." => "The error object."
09:32:49.56 cmderr 	[generator automation-v2]   - properties.error.$ref: "#/components/schemas/schemas:808" => "#/components/schemas/schemas:1383"
09:32:49.56 cmderr 	[generator automation-v2]   - title: <none> => "Error Response"
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'ProxyResource' (4 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties: {"id":{"$ref":"#/components/schemas/schemas:841","description":"Azure resource Id","readOnly":true},"name":{"$ref":"#/components/schemas/schemas:842","description":"Azure resource name","readOnly":true},"type":{"$ref":"#/components/schemas/schemas:843","description":"Azure resource type","readOnly":true}} => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - x-ms-azure-resource: true => <none>
09:32:49.56 cmderr 	[generator automation-v2]   - title: <none> => "Proxy Resource"
09:32:49.56 cmderr 	[generator automation-v2]   - allOf: <none> => [{"$ref":"#/components/schemas/schemas:1261"}]
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'TrackedResource' (1 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - allOf.0.$ref: "#/components/schemas/schemas:1169" => "#/components/schemas/schemas:1261"
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'ErrorDetail' (1 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.details.$ref: "#/components/schemas/schemas:1207" => "#/components/schemas/schemas:1305"
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'PrivateEndpoint' (1 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.id.description: "The ARM identifier for Private Endpoint" => "The ARM identifier for private endpoint."
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'PrivateEndpointConnection' (2 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.properties.$ref: "#/components/schemas/schemas:1401" => "#/components/schemas/schemas:1531"
09:32:49.56 cmderr 	[generator automation-v2]   - allOf.0.$ref: "#/components/schemas/schemas:1261" => "#/components/schemas/schemas:1431"
09:32:49.56 cmderr 	[generator automation-v2] warning | PreCheck/DuplicateSchema | Duplicate Schema named 'PrivateEndpointConnectionProperties' (3 differences):
09:32:49.56 cmderr 	[generator automation-v2]   - properties.privateEndpoint.$ref: "#/components/schemas/schemas:1398" => "#/components/schemas/schemas:1528"
09:32:49.57 cmderr 	[generator automation-v2]   - properties.privateEndpoint.description: "The resource of private end point." => "The private endpoint resource."
09:32:49.57 cmderr 	[generator automation-v2]   - properties.groupIds: <none> => {"$ref":"#/components/schemas/schemas:1532","description":"The group ids for the private endpoint resource.","readOnly":true}

@raych1 raych1 removed the Approved-SdkBreakingChange-Go Approve the breaking change tracking for azure-sdk-for-go label Nov 28, 2023
@kazrael2119
Copy link
Contributor

kazrael2119 commented Nov 29, 2023

Hi @ToddKingMSFT , in the default tag: package-2023-10:

1 duplicate schema LocalizableString from tenantActivityLogs_API.json is defined manually
but the schema from metricDefinitions_API.json refenerces from common-type v2

2 duplicate schemas ActionDetail, ActionGroupPatchBody, AzureAppPushReceiver, EmailReceiver, VoiceReceiver, WebhookReceiver are from actionGroups_API.json and tenantActionGroups_API.json, both files define them manually.

3 duplicate schema ErrorContract is from scheduledQueryRule_API.json but the schema from your new api version 2023-10-01 , it references from common-types v2

4 duplicate schema ErrorDetail is from some files which reference from common-types v2, but ErrorDetail references from ErrorResponse in common-type definition and other different files reference from ErrorResponse. So it's duplicate.

5 duplicate schema ErrorResponse is because so many files reference from the different version of common-type or manually definition. like :"$ref": "#/definitions/ErrorResponse", v1, v2, or v3.

6 duplicate schemas Operation, OperationDisplay, OperationListResult from Microsoft.Insights/stable/2023-10-01/operations_API.json are defined manually, but these from Microsoft.Monitor/stable/2023-04-03/operations_API.json reference from common-types v3

7 duplicate schema ProxyResource from vmInsightsOnboarding_API.json is defined manully, but the from privateLinkScopes_API.json references from common-types v2

8 duplicate schema Resource is because ProxyResource in 7 references from Resource in common-types definition and so many different files define Resource manually, so it's duplicate

9 duplicate schema PrivateEndpointConnection from monitoringAccounts_API.json references from common-type v4 but from /privateLinkScopes_API.json it references from common-type v2.

And duplicate schemaPrivateEndpoint is a parameter of PrivateEndpointConnection in common-type definition.
So both PrivateEndpoint and PrivateEndpointConnection are duplicate

10 duplicate schema TrackedResource is because different files reference from different common-type version: v1, v2 and v3. So it's duplicate

please ask related team to consolidate the references. thanks

@ToddKingMSFT
Copy link
Member Author

Hi @ToddKingMSFT , in the default tag: package-2023-10:

1 duplicate schema LocalizableString from tenantActivityLogs_API.json is defined manually but the schema from metricDefinitions_API.json refenerces from common-type v2

2 duplicate schemas ActionDetail, ActionGroupPatchBody, AzureAppPushReceiver, EmailReceiver, VoiceReceiver, WebhookReceiver are from actionGroups_API.json and tenantActionGroups_API.json, both files define them manually.

3 duplicate schema ErrorContract is from scheduledQueryRule_API.json but the schema from your new api version 2023-10-01 , it references from common-types v2

4 duplicate schema ErrorDetail is from some files which reference from common-types v2, but ErrorDetail references from ErrorResponse in common-type definition and other different files reference from ErrorResponse. So it's duplicate.

5 duplicate schema ErrorResponse is because so many files reference from the different version of common-type or manually definition. like :"$ref": "#/definitions/ErrorResponse", v1, v2, or v3.

6 duplicate schemas Operation, OperationDisplay, OperationListResult from Microsoft.Insights/stable/2023-10-01/operations_API.json are defined manually, but these from Microsoft.Monitor/stable/2023-04-03/operations_API.json reference from common-types v3

7 duplicate schema ProxyResource from vmInsightsOnboarding_API.json is defined manully, but the from privateLinkScopes_API.json references from common-types v2

8 duplicate schema Resource is because ProxyResource in 7 references from Resource in common-types definition and so many different files define Resource manually, so it's duplicate

9 duplicate schema PrivateEndpointConnection from monitoringAccounts_API.json references from common-type v4 but from /privateLinkScopes_API.json it references from common-type v2.

And duplicate schemaPrivateEndpoint is a parameter of PrivateEndpointConnection in common-type definition. So both PrivateEndpoint and PrivateEndpointConnection are duplicate

10 duplicate schema TrackedResource is because different files reference from different common-type version: v1, v2 and v3. So it's duplicate

please ask related team to consolidate the references. thanks

I will try to resolve what I can but the majority of this is from other team's swaggers that I don't have control over. In the past when I have tried to make small tweaks to these swaggers that has suddenly opened the flood gates for a bunch of new lint and other violations that now need to be fixed if I touch that swagger and the whole PR snowballs.

}
}
},
"ErrorResponse": {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you use the common type Error Response? https://github.com/Azure/azure-rest-api-specs/blob/main/specification/common-types/resource-management/v5/types.json

The problem is there are a bunch of APIs that are stuck with the old v1 error response that had everything in the root intead of nested in a "error" object like v2 and above. I can't use v5 as that would be a breaking change.
What I could do I think is use the old v1 ErrorResponse instead though.

@sjanamma sjanamma added the ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review label Nov 30, 2023
@openapi-workflow-bot openapi-workflow-bot bot removed the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Nov 30, 2023
@ToddKingMSFT
Copy link
Member Author

Hi @kazrael2119
I appreciate all the feed back you provided on the duplicate types.
I’ve been trying to incorporate this feedback. I’ve created a branch from this one that tries to address these comments here: #26927
However it is spiraling out of control. As soon as I touch one of these other swaggers to try to unify definitions it becomes subject to all of the other validation rules and adds a bunch of new errors to my PR that then require more fixes and then bring in more errors that need to be fixed and it spirals out of control.
Some of the issues I’m running into are:

  1. Model validation errors: Many of these other swaggers have existing model validation errors. Many of these might have passed validation at the time they were checked in however since they were checked in the model validation tools have gotten better at checking new things, I ran into this myself when trying to rev the metrics apis when I discovered model validation was not previously validating parameters.
  2. Breaking changes: Frankly the monitor folder is a mess of many different swaggers all using different versions of the same definitions. In this PR I am trying to improve this situation by moving more definitions into a common types file (one of the reasons this PR is so painful) but unfortunately many of these duplicated types can’t simply be unified as the different definitions while named the same are not identical. Take “ErrorResponse”, we have sooo many different APIs specifying different error responses some of them are using v1 or v2 or v3 or custom definitions. The v1 and v2 “ErrorResponse” common definitions are completely different. I can’t simply go change everything to use the latest common “ErrorResponse” object or I get a page full of breaking change error I will need to ask permission to break and having been in those breaking change meetings I’m 99.9% sure they will tell me “no you can’t go breaking all those error responses”. Other examples are OperationsListResult, Microsoft.Monitor operations returns a different response that Microsoft.Insights so they can’t use the same common types OperationsListResult. I’ll explore updating the common types to add the additional properties returned by Microsoft.Insights but I’m not sure what the process is for updating the global common types used by all azure swagger so I’d like to do that in a separate PR. Really I think this lint rule azure-openapi-validator/docs/latest-version-of-common-types-must-be-used.md at main · Azure/azure-openapi-validator (github.com) Is perhaps doing more harm than good here as I believe it is actively encouraging new swagger authors to keep using newer versions of the common types which then keeps contributing to your issues with duplicate types.

To get more detailed here is all of your feeback with some inline comments from me:

1 duplicate schema LocalizableString from tenantActivityLogs_API.json is defined manually but the schema from metricDefinitions_API.json refenerces from common-type v2
I think this can be done, but then it introduces other errors that I would need help from the activity logs team to resolve.
2 duplicate schemas ActionDetail, ActionGroupPatchBody, AzureAppPushReceiver, EmailReceiver, VoiceReceiver, WebhookReceiver are from actionGroups_API.json and tenantActionGroups_API.json, both files define them manually.
I tried doing this, it resulted in breaking change violations, for example ActionDetail is different between actionGroups and tenantActionGroups.
3 duplicate schema ErrorContract is from scheduledQueryRule_API.json but the schema from your new api version 2023-10-01 , it references from common-types v2
The error contract in common-types v2 is an extension of the one found in the previous 2021-05-01 metrics API version here https://github.com/Azure/azure-rest-api-specs/blob/32c63d685a0b03817a504b04be938ce46d06ac19/specification/monitor/resource-manager/Microsoft.Insights/stable/2021-05-01/commonMonitoringTypes.json#L49C14-L49C14
I would love to unify these error contracts but they unfortunately have breaking change differences between them. For example trying to unify these definitions results in a bunch of breaking changes around the readonly property openapi-diff/docs/rules/1029.md at master · Azure/openapi-diff (github.com)
4 duplicate schema ErrorDetail is from some files which reference from common-types v2, but ErrorDetail references from ErrorResponse in common-type definition and other different files reference from ErrorResponse. So it's duplicate.
That’s a breaking change to try to unify that, I’m not sure how I’m supposed to resolve that.
5 duplicate schema ErrorResponse is because so many files reference from the different version of common-type or manually definition. like :"$ref": "#/definitions/ErrorResponse", v1, v2, or v3.
Yeah this is a huge problem but the ErrorResponse in v1 is completely different from the v2 and v3 error response and would represent a huge breaking change.
6 duplicate schemas Operation, OperationDisplay, OperationListResult from Microsoft.Insights/stable/2023-10-01/operations_API.json are defined manually, but these from Microsoft.Monitor/stable/2023-04-03/operations_API.json reference from common-types v3
The problem is the content returned by Microsoft.Insights/operations is different from the content returned by Microsoft.Monitor/operations. Microsoft.Insights/operations can’t use the common types definition.
7 duplicate schema ProxyResource from vmInsightsOnboarding_API.json is defined manully, but the from privateLinkScopes_API.json references from common-types v2
I think this can be done but it introduces other errors I would need help from these 2 teams resolving so would like to do so in a separate PR.
8 duplicate schema Resource is because ProxyResource in 7 references from Resource in common-types definition and so many different files define Resource manually, so it's duplicate
This also causes a lot of breaking changes. The Resource defined in the common types is different from the some of the manually defined ones. For example compare

to https://github.com/Azure/azure-rest-api-specs/blob/32c63d685a0b03817a504b04be938ce46d06ac19/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/metricAlert_API.json#L429C3-L429C3 to https://github.com/Azure/azure-rest-api-specs/blob/32c63d685a0b03817a504b04be938ce46d06ac19/specification/common-types/resource-management/v2/types.json#L9C7-L9C7 to https://github.com/Azure/azure-rest-api-specs/blob/32c63d685a0b03817a504b04be938ce46d06ac19/specification/common-types/resource-management/v5/types.json#L9C7-L9C7 None of those are the same and I can’t just unify on a single definition without breaking changes.
9 duplicate schema PrivateEndpointConnection from monitoringAccounts_API.json references from common-type v4 but from /privateLinkScopes_API.json it references from common-type v2.
And duplicate schemaPrivateEndpoint is a parameter of PrivateEndpointConnection in common-type definition. So both PrivateEndpoint and PrivateEndpointConnection are duplicate
I see what you mean here and at initial glance it does look like a lot of thedefinitions in privateLinksScope_API could just be using the existing common-types definitions, but I’d rather have the private links team own this as it’s not an area I’m well familiar with.
10 duplicate schema TrackedResource is because different files reference from different common-type version: v1, v2 and v3. So it's duplicate
This seems doable but touches a lot of other files that then introduce other errors so I would like to do this in a separate PR.

@ToddKingMSFT
Copy link
Member Author

What I'd like to get accross is Microsoft.Insights is made up of MANY MANY different teams in different timezones. I'm personally from the metrics team and am trying to update our metrics APIs but much of this feedback and errors are about problems with other team's swaggers.
I'm fine with trying to work with those other teams to resolve some of these issues but I don't think doing it in one gigantic PR is the right way to do it.
I think this is better tackled by a bunch of small targetted PRs that will be easier to review and get in.

@ToddKingMSFT
Copy link
Member Author

Hi @sjanamma can you also approve my suppressions? (Approved-Suppression tag?)

@kazrael2119
Copy link
Contributor

kazrael2119 commented Dec 6, 2023

approved for JS SDK BreakingChange as @ToddKingMSFT did his best to solve the duplicate schema issues he could solve in #26927.
For other duplicate issues, I think we can delay the fix until the relevant services provide their PRs and then let them resolve it.

@ToddKingMSFT
Copy link
Member Author

@jhendrixMSFT Can you help approve the suppressions I added and add the Approved-Suppression tag?

@ToddKingMSFT
Copy link
Member Author

/pr RequestMerge

@ToddKingMSFT
Copy link
Member Author

@jhendrixMSFT can you merge this please?

@visingla-ms visingla-ms merged commit 0373f0e into main Dec 8, 2023
24 of 30 checks passed
@visingla-ms visingla-ms deleted the ToddKingMSFT-monitor-Microsoft.Insights-2023-10-01-DpAndARM branch December 8, 2023 00:41
arifibrahim4 pushed a commit that referenced this pull request Feb 26, 2024
…stable/2023-10-01 (#26655)

* Adds base for updating Microsoft.Insights from version preview/2023-05-01-preview to version 2023-10-01

* Updates readme

* Updates API version in new specs and examples

* Introduce the new 2023-10-01 metrics API versions

* Update

* Fix avacado

* Fix up examples and body  parameters

* Fix example formatting

* Remove paging

* Fix prettier formatting and suppress lint rules that would cause a breaking change if addressed.

* Make changes requested by stewardship board

* update batch examples

* Add x-ms-pageable back in

* Update description

* Just use the existing 2015-04-01 operations API all past APIs used.

* use ErrorResponse from common-types v1 for APIs with legacy error response
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
APIStewardshipBoard-SignedOff The Azure API Stewardship team has reviewed and approved the changes. Approved-BreakingChange DO NOT USE! OBSOLETE label. See https://github.com/Azure/azure-sdk-tools/issues/6374 Approved-SdkBreakingChange-JavaScript Approved-Suppression ARMReview ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required CI-BreakingChange-JavaScript data-plane new-api-version ReadyForApiTest <valid label in PR review process>add this label when swagger and service APIs are ready for test resource-manager SuppressionReviewRequired
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants