Jake Bailey
ed71185c27
Unify recursive type naming during serialization
...
Recursive values can have valid declaration types without annotations.
Separate function and alias fallbacks leave equivalent constructs with
different results, and broader value annotations can silently weaken
the recursive type.
Keep ordinary type names independent of the definitions being emitted.
Share definition context across syntax reuse and structural expansion
so recursive references and cycle detection agree on what is in scope.
A value self-reference must cross a lazy resolution boundary, and names
usable in local displays are not necessarily usable in declarations.
Starting from a selected signature must not add an extra recursive
unfolding merely because its containing type was not traversed.
Preserve isolated declaration inference restrictions and prevent cached
output from crossing incompatible recursion contexts.
Captured generic substitutions must not escape into parameters bound
by a re-entered signature. Otherwise declaration consumers lose valid
calls even when the original source infers the correct result.
Fixes 55832
2026-10-23 15:07:16 -07:00
Jake Bailey
0ffcbfd690
Reproduce recursive declaration naming failures
...
Recursive values should retain their structure across declaration emit
and downstream consumption instead of failing emit or acquiring any.
Cover functions, object members, containers, and generic aliases, with
repeated builds and displays at different expansion levels.
Broader annotations and inaccessible names must not silently weaken
recursive types. Preserve coverage of declaration error reporting even
when formerly unrepresentable structural types become nameable.
Declaration and call-site displays should agree on recursive boundaries
without losing the selected overload or generic specialization.
Recursive generic owners must remain reusable with new type arguments.
A captured specialization must not change a method's own generic
contract or leak into declarations consumed by downstream projects.
For 55832
2026-10-23 15:06:32 -07:00
Anders Hejlsberg
8d9b6da99e
Lazy member resolution for class and interface types ( #64915 )
2026-10-23 19:35:05 +00:00
John Favret
a91e93821f
Reload cached files for Created watch events ( #64909 )
2026-10-22 19:08:38 +00:00
Oleksandr Tarasiuk
98add1bbed
fix: avoid repeated root scans in no-op builds ( #64898 )
2026-10-21 18:47:46 +00:00
Mateusz Burzyński
b8657191f1
Restore index signature details in property hovers ( #64586 )
2026-10-21 18:40:33 +00:00
Andrew Branch and Copilot
28534d7609
Make LSP server load content mappers only from node_modules inside workspace folders ( #64837 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-10-19 22:42:39 +00:00
Andrew Branch and Copilot
6b2907c54b
[api] Client performance optimizations ( #64823 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-10-19 22:34:37 +00:00
Max Schwenk
5237fd4689
Cache undefined widening properties per symbol, not per name ( #64728 )
2026-10-18 04:47:29 +00:00
Ryan Cavanaugh and Copilot App
2e9fb00f5f
Reduce the last ~2 years of uncovered top1000 repo failures into local tests ( #64850 )
...
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com >
Copilot-Session: 736819aa-5f3d-4bce-b59b-e63c38aaec88
2026-10-17 01:10:46 +00:00
Titian Cernicova-Dragomir
9de8b7a3b8
Ensure pathsBasePath is correctly forwarded from the API ( #64843 )
2026-10-16 23:07:44 +00:00
John Favret
0a27badde0
Fix incremental diagnostics after global file deletion ( #64845 )
2026-10-16 21:25:42 +00:00
Ryan Cavanaugh
0e081d6fb3
Escape quotes in synthesized module specifiers ( #64839 )
2026-10-15 23:24:37 +00:00
Jake Bailey
bb9afd2bbf
Disable ATA when no user cache is available ( #64836 )
2026-10-15 21:47:53 +00:00
Jake Bailey
ce30dd50a5
Ban network paths wholesale ( #64832 )
2026-10-15 20:57:39 +00:00
Jake Bailey
0ee02846fb
Fix release pipeline tests and workflow ( #64831 )
2026-10-15 18:24:29 +00:00
Andrew Branch
257e87406c
[api] Fix named pipe / UDS creation ( #64818 )
2026-10-14 22:32:31 +00:00
HazyLab
76c4f5078b
perf(checker): fast-path compareNodes for identical AST parent containers and use cmp.Compare ( #64551 )
2026-10-14 16:46:45 +00:00
typescript-automation[bot]
d9c578ddb4
Update localization files ( #64764 )
...
Co-authored-by: typescript-automation[bot] <290192711+typescript-automation[bot]@users.noreply.github.com>
2026-10-14 16:24:47 +00:00
Oleksandr Tarasiuk
f5cdce998e
fix(64058): fix reparse jsdoc @extends type arguments for call expressions ( #64072 )
2026-10-14 16:08:07 +00:00
Jake Bailey
6c976dad5d
Reuse ordered property counts during intersection reduction ( #64804 )
2026-10-14 15:41:29 +00:00
Jake Bailey
e36179bde8
Use paged indexes for type-node and signature caches ( #64803 )
2026-10-14 15:41:28 +00:00
Jake Bailey
e67b60e338
Bound arena retention by bytes instead of object count ( #64802 )
2026-10-14 15:41:26 +00:00
Jake Bailey
158a0805fe
Keep optional type-node and signature state out of hot records ( #64801 )
2026-10-14 15:41:25 +00:00
Jake Bailey
82db71afa0
Move optional structured type shape into cold storage ( #64800 )
2026-10-14 14:00:42 +00:00
Jake Bailey
56ce7acfc8
Keep optional symbol tables out of hot symbol records ( #64799 )
2026-10-14 13:58:18 +00:00
Jake Bailey
14f7762dde
Recover concrete AST nodes from their embedded headers ( #64798 )
2026-10-14 13:56:23 +00:00
Jake Bailey
39b621793a
Move cold value-symbol links out of the hot records ( #64797 )
2026-10-14 13:56:03 +00:00
Jake Bailey
3c105e1420
Compact type mappers and coallocate inference mapper storage ( #64796 )
2026-10-14 13:53:44 +00:00
Jake Bailey
86c0182bbf
Avoid allocating normalized types on interning cache hits ( #64795 )
2026-10-14 13:51:10 +00:00
Jake Bailey
9eedcb0dd7
Presize checker type-list cache keys ( #64794 )
2026-10-14 00:56:28 +00:00
Jake Bailey
ce609c851b
Batch allocations of common checker types ( #64793 )
2026-10-14 00:56:27 +00:00
Jake Bailey
f3a9375b53
Compact checker type metadata ( #64774 )
2026-10-14 00:56:26 +00:00
Jake Bailey
67a1c76aac
Replace nodeData interface with generated AST accessors ( #64773 )
2026-10-14 00:56:25 +00:00
6aace8b1bb
Add cache to getSimplifiedConditionalType ( #64648 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: ahejlsberg <4226954+ahejlsberg@users.noreply.github.com >
2026-10-14 00:22:31 +00:00
Christopher Plieger
3c1e603122
[api] Leave a config out of its own extended source files ( #64755 )
2026-10-13 23:34:23 +00:00
Mateusz Burzyński
7856840543
Fix crash on decorated anonymous class declaration ( #63971 )
2026-10-13 23:28:23 +00:00
Mateusz Burzyński
1d76970f7a
Match Strada and don't resolve imports of ambient modules declared in the same file ( #64491 )
2026-10-13 23:26:36 +00:00
Andrew Branch and Copilot
c9b2c8e29c
Add content mapper output extensions ( #64581 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-10-13 23:21:30 +00:00
Jake Bailey
3789ddb12a
Fix symbol table kind mask ( #64762 )
2026-10-13 20:06:25 +00:00
Jake Bailey
b82cd139dc
Restore dependency-depth build scheduling ( #64615 )
2026-10-13 20:03:34 +00:00
Andre Fajar N
0a66074847
Fix nil panic when stripInternal elides type alias RHS ( #64770 )
2026-10-13 19:31:13 +00:00
Mateusz Burzyński
a0a0ff55ca
Port missing keyof simplification for generic mapped types with name types ( #64772 )
2026-10-13 17:13:08 +00:00
Mateusz Burzyński
b5c34ba0c6
Restore symbol names in JSX import action titles ( #64588 )
2026-10-12 23:05:59 +00:00
Ryuya
ba1819f3f9
Add Intl.PluralRules.selectRange typing to es2023.intl ( #63424 )
2026-10-12 22:10:02 +00:00
Fatih Çakır
d11c071957
Fix invalid decorator examples in lib.decorators.d.ts ( #64353 )
2026-10-12 21:46:21 +00:00
fd871fcc3c
Preserve replacement lib order during sorting ( #64693 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: RyanCavanaugh <6685088+RyanCavanaugh@users.noreply.github.com >
Co-authored-by: Ryan Cavanaugh <RyanCavanaugh@users.noreply.github.com >
2026-10-12 20:10:49 +00:00
Anders Hejlsberg
96fffa9f65
Shrink ValueSymbolLinks by 16 bytes ( #64739 )
2026-10-12 19:00:52 +00:00
Trevor Florence
bdc93bd987
Keep this inside functions nested in downleveled static blocks ( #64738 )
2026-10-12 18:45:59 +00:00
Mateusz Burzyński
71956e9735
Check package reachability before using exports in declarations ( #64599 )
2026-10-12 17:44:45 +00:00