Skip to content

[AutoPR @azure-arm-appcontainers]-generated-from-SDK Generation - JS-6326722#38608

Merged
JialinHuang803 merged 3 commits into
mainfrom
sdkauto/@azure-arm-appcontainers-6326722
May 22, 2026
Merged

[AutoPR @azure-arm-appcontainers]-generated-from-SDK Generation - JS-6326722#38608
JialinHuang803 merged 3 commits into
mainfrom
sdkauto/@azure-arm-appcontainers-6326722

Conversation

@azure-sdk
Copy link
Copy Markdown
Collaborator

Configurations: 'specification/app/resource-manager/Microsoft.App/ContainerApps/tspconfig.yaml', API Version: 2025-10-02-preview, SDK Release Type: beta, and CommitSHA: '6d50d64d3eeca46ecf1b4af80e9994bac920a7d0' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6326722 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.

…tainerApps/tspconfig.yaml', API Version: 2025-10-02-preview, SDK Release Type: beta, and CommitSHA: '6d50d64d3eeca46ecf1b4af80e9994bac920a7d0' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6326722 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
@github-actions github-actions Bot added the Mgmt This issue is related to a management-plane library. label May 20, 2026
@v-jiaodi v-jiaodi marked this pull request as ready for review May 20, 2026 09:50
Copilot AI review requested due to automatic review settings May 20, 2026 09:50
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Copilot wasn't able to review this pull request because it exceeds the maximum number of files (300). Try reducing the number of changed files and requesting a review from Copilot again.

@v-jiaodi v-jiaodi added refresh PR for SDK refresh mgmt-review-needed labels May 20, 2026
@github-actions github-actions Bot added mgmt-review-in-progress Management SDK review is in progress and removed mgmt-review-needed labels May 20, 2026
@v-jiaodi
Copy link
Copy Markdown
Member

Note

This analysis was generated by AI. Please review the classifications and root causes for accuracy.

Breaking Change Analysis: @azure/arm-appcontainers 4.0.0-beta.1

Old SDK (main) New SDK (PR)
Generator Swagger / AutoRest TypeSpec / emitter
API Version 2025-07-01 (stable) 2025-10-02-preview
Package Version 3.0.0 4.0.0-beta.1

Spec References:


Type 1: API Version Upgrade (2025-07-01 -> 2025-10-02-preview) -- 12 items

# Breaking Change Root Cause
1 Interface LogicAppsCreateOrUpdateOptionalParams no longer has parameter resource API version upgrade: resource body parameter changed from optional to required in 2025-10-02-preview swagger, so it moved from options bag to direct method parameter.
2 Parameter sasUrlSettingName of interface BlobStorageTokenStore is now optional API version upgrade: sasUrlSettingName removed from required array in 2025-10-02-preview; new alternative properties (blobContainerUri, clientId, managedIdentityResourceId) were added.
3 Type alias "JavaComponentPropertiesUnion" has been changed API version upgrade: new subtypes SpringCloudGatewayComponent and NacosComponent added to the discriminator union. Also cascading from row 8 (discriminator type rendering change).
4 Operation ConnectedEnvironments.update has a new signature API version upgrade: body parameter environmentEnvelope changed from required: true (2025-07-01) to optional (2025-10-02-preview), so it moved from direct method parameter to options bag.
5 Operation ContainerAppsAuthConfigs.createOrUpdate has a new signature Cascading from row 2: return type AuthConfig contains BlobStorageTokenStore (via AuthConfig.login.tokenStore.azureBlobStorage), and sasUrlSettingName changed from required to optional. Also has Type 2b cause: response wrapper removed.
6 Operation ContainerAppsAuthConfigs.get has a new signature Same as row 5.
7 Operation JavaComponents.beginCreateOrUpdate has a new signature Cascading from row 3: parameter and return type JavaComponent contains JavaComponentPropertiesUnion (via JavaComponent.properties), and the union has new subtypes. Also has Type 2b cause: response wrapper removed, resumeFrom removed from options.
8 Operation JavaComponents.beginCreateOrUpdateAndWait has a new signature Same as row 7.
9 Operation JavaComponents.beginUpdate has a new signature Same as row 7.
10 Operation JavaComponents.beginUpdateAndWait has a new signature Same as row 7.
11 Operation JavaComponents.get has a new signature Cascading from row 3: return type JavaComponent contains JavaComponentPropertiesUnion, and the union has new subtypes. Also has Type 2b cause: response wrapper removed.
12 Operation LogicApps.createOrUpdate has a new signature Cascading from row 1: resource parameter moved from options to direct method parameter due to body becoming required in 2025-10-02-preview. Also has Type 2b cause: response wrapper removed.

Type 2: TypeSpec / Emitter Migration -- 28 items

Root Cause Sub-Type Count Accepted
Collection/paging wrapper types removed; Modular returns PagedAsyncIterableIterator<T> directly Emitter 19
beginDeleteAndWait signature changed: resumeFrom removed from LRO options, response header wrapper removed Emitter 7
Discriminator inline union changed to named string type JavaComponentType Emitter 1
Options interface renamed to match operation name (GetOptionalParams -> ListOptionalParams) Emitter 1

Details

Collection/paging wrapper types removed (19 items)
  1. Removed Interface AuthConfigCollection -- Emitter ✅

    Collection wrapper type removed. Modular returns PagedAsyncIterableIterator<T> directly.

  2. Removed Interface AvailableOperations -- Emitter ✅

    Paging wrapper type (with nextLink/value) removed. Modular returns PagedAsyncIterableIterator<T> directly.

  3. Removed Interface AvailableWorkloadProfilesCollection -- Emitter ✅

    Same as row 13.

  4. Removed Interface CertificateCollection -- Emitter ✅

    Same as row 13.

  5. Removed Interface ConnectedEnvironmentCollection -- Emitter ✅

    Same as row 13.

  6. Removed Interface ContainerAppCollection -- Emitter ✅

    Same as row 13.

  7. Removed Interface DaprComponentsCollection -- Emitter ✅

    Same as row 13.

  8. Removed Interface HttpRouteConfigCollection -- Emitter ✅

    Same as row 13.

  9. Removed Interface JavaComponentsCollection -- Emitter ✅

    Same as row 13.

  10. Removed Interface JobExecutionNamesCollection -- Emitter ✅

    Same as row 13.

  11. Removed Interface JobsCollection -- Emitter ✅

    Same as row 13.

  12. Removed Interface MaintenanceConfigurationCollection -- Emitter ✅

    Same as row 13.

  13. Removed Interface ManagedCertificateCollection -- Emitter ✅

    Same as row 13.

  14. Removed Interface ManagedEnvironmentsCollection -- Emitter ✅

    Same as row 13.

  15. Removed Interface RevisionCollection -- Emitter ✅

    Same as row 13.

  16. Removed Interface SessionPoolCollection -- Emitter ✅

    Same as row 13.

  17. Removed Interface SourceControlCollection -- Emitter ✅

    Same as row 13.

  18. Removed Interface WorkflowEnvelopeCollection -- Emitter ✅

    Same as row 13.

  19. Removed Interface WorkloadProfileStatesCollection -- Emitter ✅

    Same as row 13.

beginDeleteAndWait signature changes (7 items)
  1. Operation ConnectedEnvironmentsCertificates.beginDeleteAndWait has a new signature -- Emitter ✅

    resumeFrom removed from LRO options; response header wrapper XxxDeleteResponse removed (returns void). Old: Promise<ConnectedEnvironmentsCertificatesDeleteResponse> with resumeFrom in options. New: Promise<void> without resumeFrom.

  2. Operation ConnectedEnvironmentsDaprComponents.beginDeleteAndWait has a new signature -- Emitter ✅

    Same as row 32.

  3. Operation ConnectedEnvironmentsStorages.beginDeleteAndWait has a new signature -- Emitter ✅

    Same as row 32.

  4. Operation ContainerAppsSessionPools.beginDeleteAndWait has a new signature -- Emitter ✅

    Same as row 32.

  5. Operation HttpRouteConfig.beginDeleteAndWait has a new signature -- Emitter ✅

    Same as row 32.

  6. Operation JavaComponents.beginDeleteAndWait has a new signature -- Emitter ✅

    Same as row 32.

  7. Operation ManagedEnvironmentPrivateEndpointConnections.beginDeleteAndWait has a new signature -- Emitter ✅

    Same as row 32.

  1. Type of parameter componentType of interface JavaComponentProperties is changed from "SpringBootAdmin" | "SpringCloudEureka" | "SpringCloudConfig" to JavaComponentType -- Emitter ✅

    AutoRest rendered x-ms-enum with modelAsString: true as inline literal union; TypeSpec emitter renders it as named string type alias JavaComponentType. Both old and new swagger use the same x-ms-enum: {name: JavaComponentType, modelAsString: true} pattern.

  2. Removed Interface AvailableWorkloadProfilesGetOptionalParams -- Emitter ✅

    Options interface renamed: old swagger operationId AvailableWorkloadProfiles_Get produced GetOptionalParams; TypeSpec emitter names options after the method name list, producing ListOptionalParams.


Total: 12 (Type 1: API Version Upgrade) + 28 (Type 2: TypeSpec/Emitter Migration) = 40 breaking changes

Type 2 breakdown: 0 items from TypeSpec conversion, 28 items from emitter differences. All 28 Type 2 items match architect-approved patterns.


Methodology

Four-layer swagger comparison was used to classify each breaking change:

  • Layer A (old original swagger): 24 swagger files at 70cd136 for API version 2025-07-01
  • Layer B (new original swagger, pre-TypeSpec): 35 swagger files at 30d37aa for API version 2025-10-02-preview
  • Layer C (TypeSpec-generated swagger): single openapi.json at 6d50d64 for API version 2025-10-02-preview
  • Layer D (SDK api.md): old from main branch, new from PR branch

Classification rules:

  • Layer A != Layer B -> Type 1 (API version upgrade)
  • Layer B != Layer C -> Type 2a (TypeSpec conversion)
  • Layer B == Layer C, Layer D differs -> Type 2b (emitter artifact)

@JialinHuang803 JialinHuang803 merged commit 6ac706b into main May 22, 2026
13 checks passed
@JialinHuang803 JialinHuang803 deleted the sdkauto/@azure-arm-appcontainers-6326722 branch May 22, 2026 05:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Mgmt This issue is related to a management-plane library. mgmt-review-in-progress Management SDK review is in progress refresh PR for SDK refresh

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants