Skip to content

Enable verbatimModuleSyntax in tsconfig.base.json [skip chg] - #11521

Draft
timotheeguerin wants to merge 2 commits into
microsoft:mainfrom
timotheeguerin:type-import-base-flag
Draft

Enable verbatimModuleSyntax in tsconfig.base.json [skip chg]#11521
timotheeguerin wants to merge 2 commits into
microsoft:mainfrom
timotheeguerin:type-import-base-flag

Conversation

@timotheeguerin

Copy link
Copy Markdown
Member

Completes the verbatimModuleSyntax rollout by turning the flag on centrally in tsconfig.base.json, so every package inherits it instead of opting in individually.

Now that all workspace packages and the three standalone client emitters (C#/Java/Python) have been converted to type-only imports/exports, the per-package overrides are redundant. This PR:

  • Adds "verbatimModuleSyntax": true to tsconfig.base.json.
  • Removes the now-redundant per-package verbatimModuleSyntax: true overrides (48 tsconfigs).
  • Keeps the single intentional verbatimModuleSyntax: false in packages/http-client-js/tsconfig.test.json (generated e2e fixtures that aren't emitted with type-only imports).
  • Folds in the http-client-java emitter conversion so the base flip is self-contained and green regardless of merge order (also tracked standalone in Enable verbatimModuleSyntax in http-client-java emitter #11516).

No runtime behavior change — a dev-only TypeScript configuration change.

Depends on the per-package rollout PRs having merged first (#11484, #11510, #11512, #11513, #11514, #11515, #11516, #11517).

Add verbatimModuleSyntax to the emitter tsconfig and convert type-only
imports/exports to import type / export type.
All workspace packages and the standalone emitters have been converted to
type-only imports/exports, so the flag can now be centralized in the base
config. Removes the now-redundant per-package overrides; keeps the explicit
'false' in http-client-js/tsconfig.test.json (generated e2e fixtures).
@microsoft-github-policy-service

Copy link
Copy Markdown
Contributor

@FionaBronwen @swatkatz @steverice — this PR modifies files in the emitter:graphql area, which your team owns. Please take a look. (You can't be added as a formal reviewer because you're not a repository collaborator, so this is a heads-up instead.)

@microsoft-github-policy-service microsoft-github-policy-service Bot added emitter:graphql Issues for @typespec/graphql emitter compiler:core Issues for @typespec/compiler emitter-framework Issues for the emitter framework ide Issues for VS, VSCode, Monaco, etc. lib:http lib:openapi lib:rest lib:versioning lib:http-specs For issues/prs related to the @typespec/http-specs package tspd Issues for the tspd tool emitter:client:js Issue for the JS client emitter: @typespec/http-client-js emitter:client:csharp Issue for the C# client emitter: @typespec/http-client-csharp emitter:client:java Issue for the Java client emitter: @typespec/http-client-java emitter:client:python Issue for the Python client emitter: @typespec/http-client-python emitter:json-schema emitter:protobuf The protobuf emitter emitter:openapi3 Issues for @typespec/openapi3 emitter eng ui:playground ui:type-graph-viewer spector Issues related to spector and the spec sets labels Aug 1, 2026
@azure-sdk-automation

Copy link
Copy Markdown

You can try these changes here

🛝 Playground 🌐 Website 🛝 VSCode Extension

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

Labels

compiler:core Issues for @typespec/compiler emitter:client:csharp Issue for the C# client emitter: @typespec/http-client-csharp emitter:client:java Issue for the Java client emitter: @typespec/http-client-java emitter:client:js Issue for the JS client emitter: @typespec/http-client-js emitter:client:python Issue for the Python client emitter: @typespec/http-client-python emitter:graphql Issues for @typespec/graphql emitter emitter:json-schema emitter:openapi3 Issues for @typespec/openapi3 emitter emitter:protobuf The protobuf emitter emitter-framework Issues for the emitter framework eng ide Issues for VS, VSCode, Monaco, etc. lib:http lib:http-specs For issues/prs related to the @typespec/http-specs package lib:openapi lib:rest lib:versioning spector Issues related to spector and the spec sets tspd Issues for the tspd tool ui:playground ui:type-graph-viewer

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant