Skip to content

Remove unused development dependencies - #5597

Closed
Timothee Guerin (timotheeguerin) wants to merge 1 commit into
Azure:mainfrom
timotheeguerin:cleanup/unused-emitter-dependencies
Closed

Timothee Guerin (timotheeguerin) wants to merge 1 commit into
Azure:mainfrom
timotheeguerin:cleanup/unused-emitter-dependencies

Conversation

@timotheeguerin

Copy link
Copy Markdown
Member

Several workspace manifests retain development dependencies that their packages never consume, adding unnecessary direct dependencies and obscuring which packages are actually required.

The audit found five stale declarations, already unused when introduced into this repository:

Package Removed dependency History
Azure rulesets change-case Added with the package on May 21, 2024 in #854, without a consumer.
Python emitter wrapper c8, vitest, @types/yargs Carried over in the April 17, 2026 migration, #4263. The wrapper uses Python tests and Node's util.parseArgs, not these tools.
TypeScript emitter @azure/core-paging Carried over in the June 2, 2026 migration, #4526. Its paging implementation and types already lived in the bundled pagingHelpers.ts.

@autorest/codemodel has not stopped being needed and is intentionally retained. It arrived with Java in #4591 on June 30, 2026. The Java build copies its shared implementation from the pinned core/ sources, where code-model-builder.ts still imports both @autorest/codemodel and @azure-tools/codegen at runtime. The Java README now explains why a search limited to tracked Azure sources misses those imports.

The audit covered direct third-party declarations across the Azure workspaces, including scripts, configuration, and copied/generated sources. Indirect tooling requirements such as Astro's Markdown processor and the playground's React plugin are retained. Catalog entries still needed by other workspaces remain; @azure/core-paging may also remain transitively installed.

@microsoft-github-policy-service microsoft-github-policy-service Bot added emitter:python Issues for @azure-tools/typespec-python emitter emitter:typescript Issues for @azure-tools/typespec-ts emitter emitter:java Issues for @azure-tools/typespec-java emitter labels Sep 30, 2026
@github-actions

Copy link
Copy Markdown
Contributor

All changed packages have been documented.

  • ✅ @azure-tools/typespec-azure-rulesets
  • ✅ @azure-tools/typespec-python
  • ✅ @azure-tools/typespec-ts
Show changes

@azure-tools/typespec-python - internal ✏️

Remove unused c8, vitest, and @types/yargs development dependencies from the Python emitter wrapper.

@azure-tools/typespec-azure-rulesets - internal ✏️

Remove the unused change-case development dependency.

@azure-tools/typespec-ts - internal ✏️

Remove the unused @azure/core-paging development dependency; generated clients use the bundled paging helpers.

@pkg-pr-new

pkg-pr-new Bot commented Sep 30, 2026

Copy link
Copy Markdown

Open in StackBlitz

npm i https://pkg.pr.new/@azure-tools/typespec-azure-rulesets@5597
npm i https://pkg.pr.new/@azure-tools/typespec-java@5597
npm i https://pkg.pr.new/@azure-tools/typespec-python@5597
npm i https://pkg.pr.new/@azure-tools/typespec-ts@5597

commit: bb5f0ad

@github-actions

Copy link
Copy Markdown
Contributor

📦 Package size report

✅ No notable package size changes compared to the base branch.

13 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 +150 B (+0.0%) 15.04 MB → 15.04 MB +468 B (+0.0%)
@azure-tools/typespec-python 42.22 KB → 42.20 KB -17 B (-0.0%) 164.91 KB → 164.83 KB -80 B (-0.0%)
@azure-tools/typespec-azure-rulesets 5.50 KB → 5.49 KB -7 B (-0.1%) 33.67 KB → 33.64 KB -31 B (-0.1%)
@azure-tools/typespec-ts 540.84 KB → 540.84 KB -4 B (-0.0%) 2.60 MB → 2.60 MB -38 B (-0.0%)
@azure-tools/azure-http-specs 148.36 KB → 148.36 KB — 1.17 MB → 1.17 MB —
@azure-tools/typespec-autorest 81.98 KB → 81.98 KB — 400.59 KB → 400.59 KB —
@azure-tools/typespec-autorest-canonical 7.42 KB → 7.42 KB — 26.00 KB → 26.00 KB —
@azure-tools/typespec-azure-core 133.12 KB → 133.12 KB — 721.70 KB → 721.70 KB —
@azure-tools/typespec-azure-portal-core 42.48 KB → 42.48 KB — 193.20 KB → 193.20 KB —
@azure-tools/typespec-azure-resource-manager 184.05 KB → 184.05 KB — 1.11 MB → 1.11 MB —
@azure-tools/typespec-client-generator-core 240.28 KB → 240.28 KB — 1.28 MB → 1.28 MB —
@azure-tools/typespec-go 263.12 KB → 263.12 KB — 1.34 MB → 1.34 MB —
@azure-tools/typespec-metadata 15.91 KB → 15.91 KB — 62.26 KB → 62.26 KB —

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.

@azure-sdk-automation

Copy link
Copy Markdown
Contributor

You can try these changes here

🛝 Playground 🌐 Website

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

emitter:java Issues for @azure-tools/typespec-java emitter emitter:python Issues for @azure-tools/typespec-python emitter emitter:typescript Issues for @azure-tools/typespec-ts emitter

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant