-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Content mappers #4712
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Andrew Branch (andrewbranch)
merged 105 commits into
microsoft:main
from
andrewbranch:content-mappers
Aug 19, 2026
Merged
Content mappers #4712
Changes from all commits
Commits
Show all changes
105 commits
Select commit
Hold shift + click to select a range
a04454c
Add config parsing
andrewbranch 7b5485c
Add span mapping, wire into file loading and module resolution with m…
andrewbranch 40dc747
Wire into build mode / tsbuildinfo
andrewbranch b825fb8
Use node_modules package.json as manifest/identity
andrewbranch 9ccd3aa
IPC infrastructure
andrewbranch 054b2db
Wire up to tsc
andrewbranch 06b5a2d
Exclude content-mapped files from emit
andrewbranch 7b0f76e
Reorganize tests
andrewbranch bb14819
Wire up to editor
andrewbranch f44a957
Wire up diagnostics in-editor
andrewbranch 5e9e866
Aggregate synthesized diagnostics
andrewbranch 352be3a
Refactor spanmap to allow gaps as synthesized ranges
andrewbranch 90d043c
Plumb position mapping through language service
andrewbranch a4cdbdf
Fourslash tests
andrewbranch 5a9dcca
Implement extension API for first-wake
andrewbranch 4195584
Enable declaration emit
andrewbranch a2b5d99
Support auto-importing from content-mapped files, fix project watch f…
andrewbranch ebd66ac
Allow content-mapped files in inferred projects
andrewbranch 5037cf5
Fix fourslash tests
andrewbranch 78f1cbc
Add module path completion test
andrewbranch e9ea490
Handle unregistering content mappers on config change
andrewbranch 44d398c
Support in --watch and --build --watch
andrewbranch 1536047
Include span maps and original text in IPC API
andrewbranch aca0729
Some renaming
andrewbranch 40e4d51
Merge remote-tracking branch 'upstream/main' into content-mappers
andrewbranch 2dadf89
Pass locale to content mappers in initialize
andrewbranch 6312de0
Add SpanMappingPurpose, support one original to multiple generated ra…
andrewbranch b88a2a2
Optimize generated to original lookups
andrewbranch 3b05081
Self-review corrections
andrewbranch 78d1771
Add SpanMapKindAlias
andrewbranch a98a33d
More self-review fixes, move diagnostic source to initialize result
andrewbranch b29347c
Copilot review feedback
andrewbranch ff4912e
Generate
andrewbranch d2c3fb7
Fix leaked child processes in --build
andrewbranch 1244045
Improve content mapper failure diagnostics
andrewbranch 8343320
More copilot review
andrewbranch f075aa3
Generate
andrewbranch 1d38c36
Fix auto-import default binding name in non-TS-extensioned files
andrewbranch 0484716
Register semantic tokens capability for content-mapped files
mikearnaldi dea0c50
Preserve content mappers in the typings-augmented command line
mikearnaldi d2153a5
Include content mapper extensions in wildcard directory globs
mikearnaldi 31dc32b
Format, add more tests
andrewbranch 9138cf2
SpanMapPurpose -> SpanMapFeature
andrewbranch 2504282
Merge branch 'main' into content-mappers
andrewbranch 3584eb7
Handle locale changes mid-session
andrewbranch e0a79f2
Support mapper options, including config read from external files
andrewbranch 6469d0b
Only dynamic-config mappers receive openProject
andrewbranch b48ba86
Support supplemental outpus
andrewbranch 20271fe
Fix position mapping at span ends
andrewbranch bddd216
Add canonical/supplemental file names to content-mapped files in API
andrewbranch 86603a6
Support extension-bundled content mappers
andrewbranch c4e8955
Merge branch 'main' into content-mappers
andrewbranch 4279873
Complete rename
andrewbranch c18f834
Fix failing test from merge with main
andrewbranch c0c909b
Merge branch 'main' into content-mappers
andrewbranch be27354
Support emit
andrewbranch d8cf221
Revert emit support, keeping static extension maps
andrewbranch 9bf0d84
Merge branch 'main' into content-mappers
andrewbranch 9a44db3
Fix baselines
andrewbranch ca4ee99
Improve initialization diagnostics
andrewbranch e18bbad
Add timings in --extendedDiagnostics and LSP logs
andrewbranch 761d221
Fix content mapper manifest watching in LSP
andrewbranch 5fada77
Add VS Code config setting for disabling content mappers
andrewbranch d2dd4c0
Vocabulary change
andrewbranch e38d659
Test cleanup
andrewbranch 7ce1c49
Suppress unused variable diagnostics in synthesized code
andrewbranch f8e9a73
Add support for custom ignore/expect diagnostic directives
andrewbranch 08475bb
Go back to supporting per-transform virtual extension
andrewbranch cabf4d2
Self-review batch 1
andrewbranch 8d599a6
Fix extension synchronization issues with config changes and restarts
andrewbranch 9cac0b0
Self-review batch 3
andrewbranch 9cb40d5
Fix virtual filename affecting module status and ensure transform ide…
andrewbranch 8b7be5d
Fix external diagnostics in build/incremental
andrewbranch 7daff9a
Fix watch issues
andrewbranch 9a2a327
Fix LS features that should use intersecting ranges
andrewbranch cb5a186
Fix remaining LS features, enable other ones
andrewbranch c3e65db
Merge branch 'main' into content-mappers
andrewbranch f61847a
Merge branch 'main' into content-mappers
andrewbranch a4b7bb7
Remove flaky test assertion
andrewbranch 6a7e16e
Add TS_CONTENT_MAPPER_DEBUG environment variable
andrewbranch 06dd419
Rename --loadExternalPlugins to --runExternalCode
andrewbranch e72cbea
Rename tsContentMapper to typescript.contentMapper
andrewbranch 961da98
Make diagnosticDirectives format more compact
andrewbranch e21f4c0
Add missing content mapper fields to TS API
andrewbranch d07c1ff
Skip invalid ranges when deciding where to insert auto-imports
andrewbranch 6b3824e
Merge branch 'main' into content-mappers
andrewbranch a041075
Inherit contentMappers
andrewbranch e95a024
Always send open/close project
andrewbranch 7860b9e
Support option diagnostics
andrewbranch 1a0fcb2
Add build/incremental test
andrewbranch 3e9efcc
Merge branch 'main' into content-mappers
andrewbranch 20183c9
Remove extra params from Transform request
andrewbranch 11926f2
PR feedback
andrewbranch 2955d1e
Fail fast after mapper connection errors
andrewbranch c30d7ea
Preserve mapped parse cache keys
andrewbranch a515dfb
Fix runExternalCode API flag
andrewbranch 0f1a8d6
Fix terminating launcher processes
andrewbranch 1bc575c
Fix false positive diagnostic deduplication and code actions confusin…
andrewbranch 8c48ec2
Prevent nil dereference during race with cancelation
andrewbranch f0d15b9
Fix refreshing content mappers in LSP after more complex watch changes
andrewbranch d29ee6d
Fix watch fast path when one mapped file and one normal file are chan…
andrewbranch a3fdd56
Fix build mode exit status when content mapper init fails
andrewbranch bdc0478
Fix output mapping of hover and signature help previews
andrewbranch 96ef22d
Return null on rename when edits conflict or overlap
andrewbranch a831231
More PR review
andrewbranch File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.