Skip to content

[Java] Move @azure-tools/typespec-java to typespec-azure repo #4591

Open
srnagar wants to merge 30 commits into
Azure:mainfrom
srnagar:typespec-java
Open

[Java] Move @azure-tools/typespec-java to typespec-azure repo #4591
srnagar wants to merge 30 commits into
Azure:mainfrom
srnagar:typespec-java

Conversation

@srnagar

@srnagar srnagar commented Jun 9, 2026

Copy link
Copy Markdown
Member

No description provided.

@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

⚡ Benchmark Results

⚠️ 20 metric(s) regressed above the +5% threshold:

Metric Baseline Current Change
total 🔴 581.1ms 🔴 763.9ms +31.4% 🔴
loader 🟢 154.2ms 🟢 186.6ms +21.0% 🔴
resolver 🟢 16.3ms 🟢 19.5ms +20.2% 🔴
checker 🟡 223.4ms 🟡 267.8ms +19.9% 🔴
validation 🟢 44.6ms 🟢 54.5ms +22.3% 🔴
 ↳ validation/@azure-tools/typespec-azure-core 🟢 6.2ms 🟢 7.7ms +24.0% 🔴
 ↳ validation/@typespec/http 🟢 5.4ms 🟢 7.2ms +34.8% 🔴
 ↳ validation/@typespec/versioning 🔴 30.7ms 🔴 35.4ms +15.5% 🔴
linter 🟢 134.3ms 🟢 152.5ms +13.5% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-header-explode 🟡 18.3ms 🔴 22.8ms +25.0% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-query-explode 🟡 17.8ms 🔴 24.2ms +36.1% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-response-body 🔴 22.7ms 🔴 26.0ms +14.4% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/response-schema-problem 🔴 22.0ms 🔴 25.9ms +18.0% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/use-standard-names 🟢 5.0ms 🟢 6.5ms +29.9% 🔴
emit 🔴 5.28s 🔴 5.77s +9.2% 🔴
 ↳ emit/@azure-tools/typespec-autorest 🟢 156.1ms 🟢 190.0ms +21.8% 🔴
 ↳ emit/@azure-tools/typespec-python 🔴 4.04s 🔴 4.38s +8.6% 🔴
 ↳ emit/@typespec/openapi3 🟢 140.9ms 🟢 170.7ms +21.2% 🔴
 ↳ emit/@typespec/openapi3/compute 🟢 122.8ms 🟢 148.5ms +20.9% 🔴
 ↳ emit/@typespec/openapi3/write 🟢 17.3ms 🟢 20.8ms +20.4% 🔴
Full details – comparing e258116 vs baseline 32ff9cc
Metric Baseline Current Change
total 🔴 581.1ms 🔴 763.9ms +31.4% 🔴
loader 🟢 154.2ms 🟢 186.6ms +21.0% 🔴
resolver 🟢 16.3ms 🟢 19.5ms +20.2% 🔴
checker 🟡 223.4ms 🟡 267.8ms +19.9% 🔴
validation 🟢 44.6ms 🟢 54.5ms +22.3% 🔴
 ↳ validation/@azure-tools/typespec-azure-core 🟢 6.2ms 🟢 7.7ms +24.0% 🔴
 ↳ validation/@typespec/http 🟢 5.4ms 🟢 7.2ms +34.8% 🔴
 ↳ validation/@typespec/rest 🟢 0.5ms 🟢 0.8ms +66.3%
 ↳ validation/@typespec/versioning 🔴 30.7ms 🔴 35.4ms +15.5% 🔴
 ↳ validation/compiler 🟢 1.5ms 🟢 2.3ms +52.4%
linter 🟢 134.3ms 🟢 152.5ms +13.5% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/auth-required 🟢 0.0ms 🟢 0.0ms +34.2%
 ↳ linter/@azure-tools/typespec-azure-core/bad-record-type 🟢 0.2ms 🟢 0.3ms +37.7%
 ↳ linter/@azure-tools/typespec-azure-core/byos 🟢 6.2ms 🟢 6.5ms +4.5%
 ↳ linter/@azure-tools/typespec-azure-core/casing-style 🟢 0.6ms 🟢 0.6ms +10.0%
 ↳ linter/@azure-tools/typespec-azure-core/composition-over-inheritance 🟢 0.1ms 🟢 0.1ms +15.9%
 ↳ linter/@azure-tools/typespec-azure-core/documentation-required 🟢 0.8ms 🟢 1.0ms +18.4%
 ↳ linter/@azure-tools/typespec-azure-core/friendly-name 🟢 0.5ms 🟢 0.9ms +59.4%
 ↳ linter/@azure-tools/typespec-azure-core/key-visibility-required 🟢 0.2ms 🟢 0.2ms +19.8%
 ↳ linter/@azure-tools/typespec-azure-core/known-encoding 🟢 0.3ms 🟢 0.3ms +23.5%
 ↳ linter/@azure-tools/typespec-azure-core/long-running-polling-operation-required 🟢 0.3ms 🟢 0.3ms +9.5%
 ↳ linter/@azure-tools/typespec-azure-core/no-case-mismatch 🟢 0.2ms 🟢 0.3ms +15.3%
 ↳ linter/@azure-tools/typespec-azure-core/no-closed-literal-union 🟢 0.2ms 🟢 0.3ms +33.5%
 ↳ linter/@azure-tools/typespec-azure-core/no-enum 🟢 0.0ms 🟢 0.1ms +23.8%
 ↳ linter/@azure-tools/typespec-azure-core/no-error-status-codes 🟢 0.1ms 🟢 0.1ms +17.3%
 ↳ linter/@azure-tools/typespec-azure-core/no-explicit-routes-resource-ops 🟢 0.1ms 🟢 0.1ms +18.6%
 ↳ linter/@azure-tools/typespec-azure-core/no-format 🟢 0.5ms 🟢 0.6ms +24.6%
 ↳ linter/@azure-tools/typespec-azure-core/no-generic-numeric 🟢 0.4ms 🟢 0.5ms +23.7%
 ↳ linter/@azure-tools/typespec-azure-core/no-header-explode 🟡 18.3ms 🔴 22.8ms +25.0% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-legacy-usage 🟢 1.1ms 🟢 1.3ms +17.5%
 ↳ linter/@azure-tools/typespec-azure-core/no-multiple-discriminator 🟢 0.1ms 🟢 0.1ms +9.8%
 ↳ linter/@azure-tools/typespec-azure-core/no-nullable 🟢 0.2ms 🟢 0.3ms +28.5%
 ↳ linter/@azure-tools/typespec-azure-core/no-offsetdatetime 🟢 1.2ms 🟢 1.3ms +9.4%
 ↳ linter/@azure-tools/typespec-azure-core/no-openapi 🟢 2.0ms 🟢 2.3ms +17.2%
 ↳ linter/@azure-tools/typespec-azure-core/no-private-usage 🟢 1.8ms 🟢 2.2ms +22.8%
 ↳ linter/@azure-tools/typespec-azure-core/no-query-explode 🟡 17.8ms 🔴 24.2ms +36.1% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-response-body 🔴 22.7ms 🔴 26.0ms +14.4% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/no-rest-library-interfaces 🟢 0.0ms 🟢 0.0ms +34.6%
 ↳ linter/@azure-tools/typespec-azure-core/no-route-parameter-name-mismatch 🟢 4.8ms 🟢 5.7ms +17.4%
 ↳ linter/@azure-tools/typespec-azure-core/no-rpc-path-params 🟢 0.2ms 🟢 0.2ms +18.9%
 ↳ linter/@azure-tools/typespec-azure-core/no-string-discriminator 🟢 0.0ms 🟢 0.0ms +8.7%
 ↳ linter/@azure-tools/typespec-azure-core/no-unknown 🟢 0.2ms 🟢 0.2ms +27.6%
 ↳ linter/@azure-tools/typespec-azure-core/no-unnamed-union 🟢 0.3ms 🟢 0.4ms +38.4%
 ↳ linter/@azure-tools/typespec-azure-core/operation-missing-api-version 🟢 0.2ms 🟢 0.2ms +42.2%
 ↳ linter/@azure-tools/typespec-azure-core/request-body-problem 🟢 0.3ms 🟢 0.4ms +34.8%
 ↳ linter/@azure-tools/typespec-azure-core/require-versioned 🟢 0.0ms 🟢 0.0ms +50.8%
 ↳ linter/@azure-tools/typespec-azure-core/response-schema-problem 🔴 22.0ms 🔴 25.9ms +18.0% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/rpc-operation-request-body 🟢 0.3ms 🟢 0.4ms +23.8%
 ↳ linter/@azure-tools/typespec-azure-core/spread-discriminated-model 🟢 0.2ms 🟢 0.3ms +28.3%
 ↳ linter/@azure-tools/typespec-azure-core/use-standard-names 🟢 5.0ms 🟢 6.5ms +29.9% 🔴
 ↳ linter/@azure-tools/typespec-azure-core/use-standard-operations 🟢 0.1ms 🟢 0.1ms +22.2%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-agent-base-type-child-resources 🟢 4.0ms 🟢 4.5ms +12.4%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-agent-base-type-lifecycle-operations 🟢 0.0ms 🟢 0.0ms +26.2%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-common-types-version 🟢 4.3ms 🟢 4.4ms +1.7%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-custom-resource-no-key 🟢 0.1ms 🟢 0.1ms +9.4%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-custom-resource-usage-discourage 🟢 0.1ms 🟢 0.1ms +18.4%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes 🟢 1.1ms 🟢 1.2ms +14.7%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-no-path-casing-conflicts 🟢 4.7ms 🟢 4.9ms +4.3%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-no-record 🟢 0.3ms 🟢 0.4ms +27.2%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-post-operation-response-codes 🟢 0.4ms 🟢 0.5ms +13.1%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-put-operation-response-codes 🟢 0.0ms 🟢 0.0ms +67.3%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-action-no-segment 🟢 0.2ms 🟢 0.2ms +22.9%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-duplicate-property 🟢 0.1ms 🟢 0.1ms +11.0%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-interface-requires-decorator 🟢 0.0ms 🟢 0.0ms +68.4%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-action-verb 🟢 0.1ms 🟢 0.1ms +19.5%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property 🟢 0.1ms 🟢 0.1ms +17.8%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-version-format 🟢 0.0ms 🟢 0.0ms +25.6%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-key-invalid-chars 🟢 0.2ms 🟢 0.2ms +5.2%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-name-pattern 🟢 0.0ms 🟢 0.0ms +41.3%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-operation 🟢 0.2ms 🟢 0.2ms +27.5%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-operation-response 🟢 4.5ms 🟢 4.8ms +7.2%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-patch 🟢 0.3ms 🟢 0.3ms +15.3%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-path-segment-invalid-chars 🟢 0.2ms 🟢 0.2ms +18.7%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-provisioning-state 🟢 0.1ms 🟢 0.1ms +17.9%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/beyond-nesting-levels 🟢 0.1ms 🟢 0.1ms +21.6%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/empty-updateable-properties 🟢 0.1ms 🟢 0.2ms +17.9%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/improper-subscription-list-operation 🟢 0.0ms 🟢 0.0ms +38.0%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/lro-location-header 🟡 13.9ms 🟡 14.5ms +4.2%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/missing-operations-endpoint 🟢 0.0ms 🟢 0.0ms +42.0%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/missing-x-ms-identifiers 🟢 0.3ms 🟢 0.4ms +37.2%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/no-empty-model 🟢 0.1ms 🟢 0.2ms +22.8%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/no-override-props 🟢 0.1ms 🟢 0.1ms +13.7%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/no-resource-delete-operation 🟢 0.2ms 🟢 0.2ms +46.1%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/no-response-body 🟡 19.8ms 🔴 20.7ms +4.2%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/patch-envelope 🟢 0.1ms 🟢 0.2ms +15.9%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/resource-name 🟢 0.2ms 🟢 0.2ms +17.8%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/secret-prop 🟢 2.3ms 🟢 3.0ms +29.7%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/unsupported-type 🟢 0.4ms 🟢 0.4ms +11.9%
 ↳ linter/@azure-tools/typespec-azure-resource-manager/version-progression 🟢 0.0ms 🟢 0.0ms +20.4%
 ↳ linter/@azure-tools/typespec-client-generator-core/property-name-conflict 🟢 1.0ms 🟢 1.2ms +10.2%
 ↳ linter/@azure-tools/typespec-client-generator-core/require-client-suffix 🟢 0.2ms 🟢 0.3ms +47.3%
emit 🔴 5.28s 🔴 5.77s +9.2% 🔴
 ↳ emit/@azure-tools/typespec-autorest 🟢 156.1ms 🟢 190.0ms +21.8% 🔴
 ↳ emit/@azure-tools/typespec-python 🔴 4.04s 🔴 4.38s +8.6% 🔴
 ↳ emit/@typespec/http-client-js 🔴 906.8ms 🔴 944.7ms +4.2%
 ↳ emit/@typespec/openapi3 🟢 140.9ms 🟢 170.7ms +21.2% 🔴
 ↳ emit/@typespec/openapi3/compute 🟢 122.8ms 🟢 148.5ms +20.9% 🔴
 ↳ emit/@typespec/openapi3/write 🟢 17.3ms 🟢 20.8ms +20.4% 🔴

Averaged across 3 specs (azure-arm-resource-manager, azure-core-dataplane, azure-full).
Threshold: changes > ±5% are highlighted.
🟢 Fast · 🟡 Moderate (stages >200ms, rules >10ms) · 🔴 Slow (stages >400ms, rules >20ms)

@azure-sdk

azure-sdk commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator

All changed packages have been documented.

  • @azure-tools/typespec-java
Show changes

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

[Java] Move @azure-tools/typespec-java to typespec-azure repo

Comment thread .chronus/changes/typespec-java-2026-4-27-21-56-46.md Outdated
Comment thread pnpm-workspace.yaml
@@ -144,6 +142,8 @@ catalog:
happy-dom: ^20.9.0
hast-util-to-html: ^9.0.5
is-unicode-supported: ^2.1.0
js-yaml: ~4.1.1
lodash: ~4.18.1

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

same as for typespec-ts we should try to remove all those new deps if possible(can do in a follow up pr if its easier)

Comment thread cspell.yaml
@azure-sdk

azure-sdk commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator

You can try these changes here

🛝 Playground 🌐 Website

LuuOW

This comment was marked as spam.

@srnagar srnagar marked this pull request as ready for review June 16, 2026 16:52
LuuOW

This comment was marked as spam.

Comment thread packages/typespec-java/src/typespec-extension/.npmrc Outdated
Comment thread packages/typespec-java/src/typespec-extension/eslint.config.js Outdated
Comment thread packages/typespec-java/src/typespec-extension/.prettierignore Outdated
"dependencies": {
"@autorest/codemodel": "catalog:",
"js-yaml": "catalog:",
"lodash": "catalog:"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

can do that as a follow up but I think same as typespec ts we should be able to replace js-yaml -> yaml and lodash with built in things

Comment thread packages/typespec-java/src/typespec-extension/package.json Outdated
Comment thread packages/typespec-java/src/typespec-extension/package.json Outdated
Comment thread tsconfig.ws.json
Comment thread packages/typespec-java/src/Generate.ps1 Outdated
Comment thread packages/typespec-java/src/Build-TypeSpec.ps1 Outdated

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

just checking as I don't really know how this emitter is structured but if you are copying the generator from the core unbranded version just checking that all those other packages are needed and shouldn't be gitignored?

Comment thread packages/typespec-java/src/pom.xml Outdated
Comment thread packages/typespec-java/src/azure-typespec-extension/pom.xml
Comment thread packages/typespec-java/src/azure-typespec-customization/TROUBLESHOOTING.md Outdated
Comment thread pnpm-lock.yaml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants