Skip to content

[ARM] Prepare resolveArmResources for versioned views - #5431

Draft
Mark Cowlishaw (markcowl) wants to merge 7 commits into
Azure:mainfrom
markcowl:design/resolve-arm-resources-versioned-view
Draft

[ARM] Prepare resolveArmResources for versioned views#5431
Mark Cowlishaw (markcowl) wants to merge 7 commits into
Azure:mainfrom
markcowl:design/resolve-arm-resources-versioned-view

Conversation

@markcowl

Copy link
Copy Markdown
Member

Summary

  • add an RFC for versioned and customizable resolveArmResources views
  • add a maintenance skill documenting resolver invariants and implementation workflow
  • complete Phase 1 by refactoring resolution around an explicit provider context without changing public behavior
  • add a characterization test covering cached results, resource operations, parent/scope relationships, and provider operations

Validation

  • pnpm -r --filter "@azure-tools/typespec-azure-resource-manager..." build
  • all 54 resource-resolution.test.ts tests pass
  • ARM package suite: 393 tests passed; 2 tests exceeded the default 10-second timeout and all 29 tests in those files passed when rerun with a 30-second timeout
  • pnpm format
  • pnpm lint
  • pnpm --filter "@azure-tools/typespec-azure-resource-manager" regen-docs

@microsoft-github-policy-service microsoft-github-policy-service Bot added eng lib:azure-resource-manager Issues for @azure-tools/typespec-azure-core library labels Sep 8, 2026
@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

All changed packages have been documented.

  • @azure-tools/typespec-azure-resource-manager
Show changes

@azure-tools/typespec-azure-resource-manager - feature ✏️

Add selected-version views and dependency-neutral logical name customization to resolveArmResources. The existing no-options call continues to return the multi-version declaration view.

@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

📦 Package size report

1 package changed size, +4.12 KB (+0.0%) packed overall.

Package Packed (base → head) Δ Packed Unpacked (base → head) Δ Unpacked
@azure-tools/typespec-azure-resource-manager 182.95 KB → 187.10 KB +4.16 KB (+2.3%) 🔴 1.10 MB → 1.13 MB +24.51 KB (+2.2%) 🔴
12 package(s) with no notable change
Package Packed (base → head) Δ Packed Unpacked (base → head) Δ Unpacked
@azure-tools/typespec-java 13.51 MB → 13.51 MB -38 B (-0.0%) 15.04 MB → 15.04 MB
@azure-tools/typespec-azure-portal-core 42.47 KB → 42.47 KB -3 B (-0.0%) 193.19 KB → 193.20 KB +4 B (+0.0%)
@azure-tools/azure-http-specs 146.79 KB → 146.79 KB 1.16 MB → 1.16 MB
@azure-tools/typespec-autorest 81.22 KB → 81.22 KB 396.61 KB → 396.61 KB
@azure-tools/typespec-autorest-canonical 7.42 KB → 7.42 KB 26.00 KB → 26.00 KB
@azure-tools/typespec-azure-core 130.84 KB → 130.84 KB 709.83 KB → 709.83 KB
@azure-tools/typespec-azure-rulesets 5.35 KB → 5.35 KB 33.04 KB → 33.04 KB
@azure-tools/typespec-client-generator-core 237.05 KB → 237.05 KB 1.27 MB → 1.27 MB
@azure-tools/typespec-go 261.43 KB → 261.43 KB 1.34 MB → 1.34 MB
@azure-tools/typespec-metadata 15.91 KB → 15.91 KB 62.26 KB → 62.26 KB
@azure-tools/typespec-python 42.22 KB → 42.22 KB 164.91 KB → 164.91 KB
@azure-tools/typespec-ts 540.86 KB → 540.86 KB 2.60 MB → 2.60 MB

Packed = gzipped .tgz published to npm. Unpacked = total extracted size. 🆕 added, 🗑️ removed. Packages from the core/ submodule are not included.
🔴 grew · 🟢 shrank — only changes of at least 512 B and 0.5% are marked.

@pkg-pr-new

pkg-pr-new Bot commented Sep 8, 2026

Copy link
Copy Markdown

Open in StackBlitz

npm i https://pkg.pr.new/@azure-tools/typespec-azure-resource-manager@5431
npm i https://pkg.pr.new/@azure-tools/typespec-client-generator-core@5431

commit: 3f0f076

@azure-sdk-automation

Copy link
Copy Markdown
Contributor

You can try these changes here

🛝 Playground 🌐 Website

@markcowl
Mark Cowlishaw (markcowl) force-pushed the design/resolve-arm-resources-versioned-view branch from 2745200 to 0b53f53 Compare September 8, 2026 19:35
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d1e98b2e-c932-4db7-9575-469e807e9209
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d1e98b2e-c932-4db7-9575-469e807e9209
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d1e98b2e-c932-4db7-9575-469e807e9209
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d1e98b2e-c932-4db7-9575-469e807e9209
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d1e98b2e-c932-4db7-9575-469e807e9209
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d1e98b2e-c932-4db7-9575-469e807e9209
@markcowl
Mark Cowlishaw (markcowl) force-pushed the design/resolve-arm-resources-versioned-view branch from 0b53f53 to 72854f4 Compare September 9, 2026 23:43
@microsoft-github-policy-service microsoft-github-policy-service Bot added the lib:tcgc Issues for @azure-tools/typespec-client-generator-core library label Sep 9, 2026
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: d1e98b2e-c932-4db7-9575-469e807e9209
* Selected versions are projected with `@typespec/versioning`, so returned TypeSpec references
* reflect availability, renames, and type changes in that version.
*/
export function resolveArmResources(

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Why are there two exported functions here?

@markcowl Mark Cowlishaw (markcowl) added the int:azure-specs Run integration tests against azure-rest-api-specs label Sep 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

eng int:azure-specs Run integration tests against azure-rest-api-specs lib:azure-resource-manager Issues for @azure-tools/typespec-azure-core library lib:tcgc Issues for @azure-tools/typespec-client-generator-core library

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant