@ttsc/wasm 0.33.0 → 0.34.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/.ttsc-wasm-build.json +65 -41
  2. package/dist/go.mod +2 -3
  3. package/dist/ttsc.wasm +2 -2
  4. package/go.mod +2 -3
  5. package/go.sum +4 -4
  6. package/host/api.go +4 -3
  7. package/host/fountain.go +5 -5
  8. package/package.json +1 -1
  9. package/shim-vendor/shim/ast/enums_gen.go +1 -0
  10. package/shim-vendor/shim/ast/go.mod +2 -2
  11. package/shim-vendor/shim/ast/go.sum +4 -4
  12. package/shim-vendor/shim/ast/neutral.go +141 -0
  13. package/shim-vendor/shim/astnav/go.mod +2 -2
  14. package/shim-vendor/shim/astnav/go.sum +4 -4
  15. package/shim-vendor/shim/bundled/go.mod +2 -2
  16. package/shim-vendor/shim/bundled/go.sum +4 -4
  17. package/shim-vendor/shim/checker/go.mod +2 -2
  18. package/shim-vendor/shim/checker/go.sum +4 -4
  19. package/shim-vendor/shim/compiler/go.mod +2 -2
  20. package/shim-vendor/shim/compiler/go.sum +4 -4
  21. package/shim-vendor/shim/compiler/neutral.go +213 -0
  22. package/shim-vendor/shim/core/go.mod +2 -2
  23. package/shim-vendor/shim/core/go.sum +4 -4
  24. package/shim-vendor/shim/diagnosticwriter/go.mod +2 -2
  25. package/shim-vendor/shim/diagnosticwriter/go.sum +4 -4
  26. package/shim-vendor/shim/lsp/go.mod +2 -2
  27. package/shim-vendor/shim/lsp/go.sum +4 -4
  28. package/shim-vendor/shim/parser/go.mod +2 -2
  29. package/shim-vendor/shim/parser/go.sum +4 -4
  30. package/shim-vendor/shim/printer/go.mod +2 -2
  31. package/shim-vendor/shim/printer/go.sum +4 -4
  32. package/shim-vendor/shim/scanner/go.mod +2 -2
  33. package/shim-vendor/shim/scanner/go.sum +4 -4
  34. package/shim-vendor/shim/stringutil/go.mod +1 -1
  35. package/shim-vendor/shim/stringutil/go.sum +2 -2
  36. package/shim-vendor/shim/stringutil/shim.go +15 -0
  37. package/shim-vendor/shim/transformers/go.mod +2 -2
  38. package/shim-vendor/shim/transformers/go.sum +4 -4
  39. package/shim-vendor/shim/tsoptions/go.mod +2 -2
  40. package/shim-vendor/shim/tsoptions/go.sum +4 -4
  41. package/shim-vendor/shim/tsoptions/neutral.go +56 -0
  42. package/shim-vendor/shim/tspath/go.mod +1 -1
  43. package/shim-vendor/shim/tspath/go.sum +2 -2
  44. package/shim-vendor/shim/tspath/neutral.go +150 -0
  45. package/shim-vendor/shim/tspath/typed_paths.go +266 -0
  46. package/shim-vendor/shim/vfs/cachedvfs/go.mod +2 -2
  47. package/shim-vendor/shim/vfs/cachedvfs/go.sum +4 -4
  48. package/shim-vendor/shim/vfs/go.mod +2 -2
  49. package/shim-vendor/shim/vfs/go.sum +4 -4
  50. package/shim-vendor/shim/vfs/neutral.go +20 -0
  51. package/shim-vendor/shim/vfs/osvfs/go.mod +2 -2
  52. package/shim-vendor/shim/vfs/osvfs/go.sum +4 -4
@@ -0,0 +1,141 @@
1
+ package ast
2
+
3
+ import innertspath "github.com/microsoft/typescript-go/internal/tspath"
4
+
5
+ // Version-neutral Symbol and SourceFile accessors.
6
+ //
7
+ // TypeScript 7.0 exposes Symbol state as fields, and TypeScript 7.1 hides it
8
+ // behind getters. A type alias can add neither, so plugin code that must
9
+ // compile on both compiler targets reads that state through these functions,
10
+ // which the 7.1 bridge declares with identical signatures over its getters.
11
+
12
+ // SymbolNameOf returns the symbol's escaped name as the binder stored it. It
13
+ // differs from SymbolName, which spells a private class member's declared name.
14
+ //
15
+ // @evidence contracts/common.md#principled-implementation Reads the Name field the 7.0 binder writes, the same value the 7.1 Name getter returns.
16
+ // @evidence contracts/common.md#clear-and-simple-design One field read per accessor keeps the target difference inside the shim.
17
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts No name is derived or normalized; the stored value is returned unchanged.
18
+ // @evidence contracts/common.md#meaningful-documentation Native prose names the escaped-name meaning and the SymbolName distinction.
19
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation A field read performs no native filesystem, path or process operation.
20
+ // @evidenceExclude contracts/performance.md#efficient-algorithms A single field read chooses no algorithm.
21
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The accessor coordinates no shared work.
22
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The accessor acquires and retains nothing.
23
+ func SymbolNameOf(symbol *Symbol) string { return symbol.Name }
24
+
25
+ // SymbolFlagsOf returns the symbol's SymbolFlags.
26
+ //
27
+ // @evidence contracts/common.md#principled-implementation Reads the Flags field, the same value the 7.1 Flags getter returns.
28
+ // @evidence contracts/common.md#clear-and-simple-design One field read per accessor keeps the target difference inside the shim.
29
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The flags are returned unchanged.
30
+ // @evidence contracts/common.md#meaningful-documentation Native prose names the returned flag family.
31
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation A field read performs no native filesystem, path or process operation.
32
+ // @evidenceExclude contracts/performance.md#efficient-algorithms A single field read chooses no algorithm.
33
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The accessor coordinates no shared work.
34
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The accessor acquires and retains nothing.
35
+ func SymbolFlagsOf(symbol *Symbol) SymbolFlags { return symbol.Flags }
36
+
37
+ // SymbolCheckFlagsOf returns the checker's CheckFlags, nonzero only on
38
+ // transient symbols the checker created.
39
+ //
40
+ // @evidence contracts/common.md#principled-implementation Reads the CheckFlags field, the same value the 7.1 CheckFlags getter returns.
41
+ // @evidence contracts/common.md#clear-and-simple-design One field read per accessor keeps the target difference inside the shim.
42
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The flags are returned unchanged.
43
+ // @evidence contracts/common.md#meaningful-documentation Native prose states when the value is nonzero.
44
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation A field read performs no native filesystem, path or process operation.
45
+ // @evidenceExclude contracts/performance.md#efficient-algorithms A single field read chooses no algorithm.
46
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The accessor coordinates no shared work.
47
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The accessor acquires and retains nothing.
48
+ func SymbolCheckFlagsOf(symbol *Symbol) CheckFlags { return symbol.CheckFlags }
49
+
50
+ // SymbolDeclarationsOf returns the declarations that contribute to the symbol.
51
+ // The slice is the compiler's own; callers must not modify it.
52
+ //
53
+ // @evidence contracts/common.md#principled-implementation Reads the Declarations field, the same slice the 7.1 Declarations getter returns.
54
+ // @evidence contracts/common.md#clear-and-simple-design One field read per accessor keeps the target difference inside the shim.
55
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The compiler's slice is returned without copying or filtering.
56
+ // @evidence contracts/common.md#meaningful-documentation Native prose states that the slice is compiler-owned.
57
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation A field read performs no native filesystem, path or process operation.
58
+ // @evidenceExclude contracts/performance.md#efficient-algorithms A single field read chooses no algorithm.
59
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The accessor coordinates no shared work.
60
+ // @evidence contracts/performance.md#bound-retention-and-release-resources Returns the compiler-owned slice without allocating; the compiler owns its lifetime.
61
+ func SymbolDeclarationsOf(symbol *Symbol) []*Node { return symbol.Declarations }
62
+
63
+ // SymbolValueDeclarationOf returns the declaration that introduced the
64
+ // symbol's value meaning, or nil when it has none.
65
+ //
66
+ // @evidence contracts/common.md#principled-implementation Reads the ValueDeclaration field, the same node the 7.1 ValueDeclaration getter returns.
67
+ // @evidence contracts/common.md#clear-and-simple-design One field read per accessor keeps the target difference inside the shim.
68
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The node is returned unchanged, including nil.
69
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the nil meaning.
70
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation A field read performs no native filesystem, path or process operation.
71
+ // @evidenceExclude contracts/performance.md#efficient-algorithms A single field read chooses no algorithm.
72
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The accessor coordinates no shared work.
73
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The accessor acquires and retains nothing.
74
+ func SymbolValueDeclarationOf(symbol *Symbol) *Node { return symbol.ValueDeclaration }
75
+
76
+ // SymbolMembersOf returns the symbol's member table, or nil when it has none.
77
+ // The table is the compiler's own; callers must not modify it.
78
+ //
79
+ // @evidence contracts/common.md#principled-implementation Reads the Members field, the same table the 7.1 Members getter returns.
80
+ // @evidence contracts/common.md#clear-and-simple-design One field read per accessor keeps the target difference inside the shim.
81
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The table is returned without allocating one, so a nil table stays nil.
82
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the nil meaning and compiler ownership.
83
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation A field read performs no native filesystem, path or process operation.
84
+ // @evidenceExclude contracts/performance.md#efficient-algorithms A single field read chooses no algorithm.
85
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The accessor coordinates no shared work.
86
+ // @evidence contracts/performance.md#bound-retention-and-release-resources Returns the compiler-owned table without allocating; the compiler owns its lifetime.
87
+ func SymbolMembersOf(symbol *Symbol) SymbolTable { return symbol.Members }
88
+
89
+ // SymbolExportsOf returns the symbol's export table, or nil when it has none.
90
+ // The table is the compiler's own; callers must not modify it.
91
+ //
92
+ // @evidence contracts/common.md#principled-implementation Reads the Exports field, the same table the 7.1 Exports getter returns.
93
+ // @evidence contracts/common.md#clear-and-simple-design One field read per accessor keeps the target difference inside the shim.
94
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The table is returned without allocating one, so a nil table stays nil.
95
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the nil meaning and compiler ownership.
96
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation A field read performs no native filesystem, path or process operation.
97
+ // @evidenceExclude contracts/performance.md#efficient-algorithms A single field read chooses no algorithm.
98
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The accessor coordinates no shared work.
99
+ // @evidence contracts/performance.md#bound-retention-and-release-resources Returns the compiler-owned table without allocating; the compiler owns its lifetime.
100
+ func SymbolExportsOf(symbol *Symbol) SymbolTable { return symbol.Exports }
101
+
102
+ // SymbolParentOf returns the symbol that contains this one, or nil for a
103
+ // top-level symbol.
104
+ //
105
+ // @evidence contracts/common.md#principled-implementation Reads the Parent field, the same symbol the 7.1 Parent getter returns.
106
+ // @evidence contracts/common.md#clear-and-simple-design One field read per accessor keeps the target difference inside the shim.
107
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The parent is returned unchanged, including nil.
108
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the nil meaning.
109
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation A field read performs no native filesystem, path or process operation.
110
+ // @evidenceExclude contracts/performance.md#efficient-algorithms A single field read chooses no algorithm.
111
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The accessor coordinates no shared work.
112
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The accessor acquires and retains nothing.
113
+ func SymbolParentOf(symbol *Symbol) *Symbol { return symbol.Parent }
114
+
115
+ // SymbolExportSymbolOf returns the export symbol a local declaration merges
116
+ // into, or nil when it has none.
117
+ //
118
+ // @evidence contracts/common.md#principled-implementation Reads the ExportSymbol field, the same symbol the 7.1 ExportSymbol getter returns.
119
+ // @evidence contracts/common.md#clear-and-simple-design One field read per accessor keeps the target difference inside the shim.
120
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The export symbol is returned unchanged, including nil.
121
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the merge meaning and nil.
122
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation A field read performs no native filesystem, path or process operation.
123
+ // @evidenceExclude contracts/performance.md#efficient-algorithms A single field read chooses no algorithm.
124
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The accessor coordinates no shared work.
125
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The accessor acquires and retains nothing.
126
+ func SymbolExportSymbolOf(symbol *Symbol) *Symbol { return symbol.ExportSymbol }
127
+
128
+ // SourceFilePathKey returns the key the Program files a source under: the
129
+ // canonical form of its absolute path.
130
+ //
131
+ // @evidence contracts/common.md#principled-implementation Returns SourceFile.Path, the key 7.0 files a source under.
132
+ // @evidence contracts/common.md#clear-and-simple-design One method call keeps the target difference inside the shim.
133
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The key is the file's own, not recomputed.
134
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the canonical-key meaning.
135
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation The key is stored on the file; no native operation runs.
136
+ // @evidenceExclude contracts/performance.md#efficient-algorithms A stored value is returned.
137
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The function coordinates no shared work.
138
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The function retains nothing.
139
+ func SourceFilePathKey(file *SourceFile) innertspath.Path {
140
+ return file.Path()
141
+ }
@@ -2,10 +2,10 @@ module github.com/microsoft/typescript-go/shim/astnav
2
2
 
3
3
  go 1.26
4
4
 
5
- require github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063
5
+ require github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b
6
6
 
7
7
  require (
8
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 // indirect
8
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 // indirect
9
9
  github.com/klauspost/cpuid/v2 v2.2.10 // indirect
10
10
  github.com/zeebo/xxh3 v1.1.0 // indirect
11
11
  golang.org/x/sync v0.21.0 // indirect
@@ -1,11 +1,11 @@
1
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 h1:nxP4pPoyqOAgX8lYDFCfl3DyKeXErCvSvhcyzwGV9CE=
2
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
1
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 h1:KZaTBSyshWX3MP5jukJcNSuXDQTO+rNpt0J564dX/eg=
2
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
3
3
  github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
4
4
  github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
5
5
  github.com/klauspost/cpuid/v2 v2.2.10 h1:tBs3QSyvjDyFTq3uoc/9xFpCuOsJQFNPiAhYdw2skhE=
6
6
  github.com/klauspost/cpuid/v2 v2.2.10/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
7
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063 h1:UUVrjTrD+7nkVvkJTjxwA5+SaZ5n1uyAffm2zX2gn+o=
8
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063/go.mod h1:s3yhRRZ7nzSZaiKicku520Tj9Mvewr9y2UtrvpwOmDE=
7
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b h1:IgfPOv9pzPZ1sbyRHOKu3UCvhaTS0IyrkTcs6JLPqhY=
8
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b/go.mod h1:gV4G6M8xxLNqQSRHiFOgKHlY+5YJgYPM6QwFLWllC+8=
9
9
  github.com/peter-evans/patience v0.3.0 h1:rX0JdJeepqdQl1Sk9c9uvorjYYzL2TfgLX1adqYm9cA=
10
10
  github.com/peter-evans/patience v0.3.0/go.mod h1:Kmxu5sY1NmBLFSStvXjX1wS9mIv7wMcP/ubucyMOAu0=
11
11
  github.com/zeebo/assert v1.3.0 h1:g7C04CbJuIDKNPFHmsk4hwZDO5O+kntRxzaUoNXj+IQ=
@@ -2,10 +2,10 @@ module github.com/microsoft/typescript-go/shim/bundled
2
2
 
3
3
  go 1.26
4
4
 
5
- require github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063
5
+ require github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b
6
6
 
7
7
  require (
8
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 // indirect
8
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 // indirect
9
9
  golang.org/x/sync v0.21.0 // indirect
10
10
  golang.org/x/sys v0.46.0 // indirect
11
11
  )
@@ -1,9 +1,9 @@
1
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 h1:nxP4pPoyqOAgX8lYDFCfl3DyKeXErCvSvhcyzwGV9CE=
2
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
1
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 h1:KZaTBSyshWX3MP5jukJcNSuXDQTO+rNpt0J564dX/eg=
2
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
3
3
  github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
4
4
  github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
5
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063 h1:UUVrjTrD+7nkVvkJTjxwA5+SaZ5n1uyAffm2zX2gn+o=
6
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063/go.mod h1:s3yhRRZ7nzSZaiKicku520Tj9Mvewr9y2UtrvpwOmDE=
5
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b h1:IgfPOv9pzPZ1sbyRHOKu3UCvhaTS0IyrkTcs6JLPqhY=
6
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b/go.mod h1:gV4G6M8xxLNqQSRHiFOgKHlY+5YJgYPM6QwFLWllC+8=
7
7
  golang.org/x/sync v0.21.0 h1:HLII4xRRTtCRkxYp4HNFF0Js/Og6q2i++KXbg0gHCwM=
8
8
  golang.org/x/sync v0.21.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0=
9
9
  golang.org/x/sys v0.46.0 h1:noSf2Fq6F8DBgS+LysIkx7rIExoNHJsxOAtPp4rthXw=
@@ -2,10 +2,10 @@ module github.com/microsoft/typescript-go/shim/checker
2
2
 
3
3
  go 1.26
4
4
 
5
- require github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063
5
+ require github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b
6
6
 
7
7
  require (
8
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 // indirect
8
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 // indirect
9
9
  github.com/klauspost/cpuid/v2 v2.2.10 // indirect
10
10
  github.com/zeebo/xxh3 v1.1.0 // indirect
11
11
  golang.org/x/sync v0.21.0 // indirect
@@ -1,11 +1,11 @@
1
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 h1:nxP4pPoyqOAgX8lYDFCfl3DyKeXErCvSvhcyzwGV9CE=
2
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
1
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 h1:KZaTBSyshWX3MP5jukJcNSuXDQTO+rNpt0J564dX/eg=
2
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
3
3
  github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
4
4
  github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
5
5
  github.com/klauspost/cpuid/v2 v2.2.10 h1:tBs3QSyvjDyFTq3uoc/9xFpCuOsJQFNPiAhYdw2skhE=
6
6
  github.com/klauspost/cpuid/v2 v2.2.10/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
7
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063 h1:UUVrjTrD+7nkVvkJTjxwA5+SaZ5n1uyAffm2zX2gn+o=
8
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063/go.mod h1:s3yhRRZ7nzSZaiKicku520Tj9Mvewr9y2UtrvpwOmDE=
7
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b h1:IgfPOv9pzPZ1sbyRHOKu3UCvhaTS0IyrkTcs6JLPqhY=
8
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b/go.mod h1:gV4G6M8xxLNqQSRHiFOgKHlY+5YJgYPM6QwFLWllC+8=
9
9
  github.com/peter-evans/patience v0.3.0 h1:rX0JdJeepqdQl1Sk9c9uvorjYYzL2TfgLX1adqYm9cA=
10
10
  github.com/peter-evans/patience v0.3.0/go.mod h1:Kmxu5sY1NmBLFSStvXjX1wS9mIv7wMcP/ubucyMOAu0=
11
11
  github.com/zeebo/assert v1.3.0 h1:g7C04CbJuIDKNPFHmsk4hwZDO5O+kntRxzaUoNXj+IQ=
@@ -2,10 +2,10 @@ module github.com/microsoft/typescript-go/shim/compiler
2
2
 
3
3
  go 1.26
4
4
 
5
- require github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063
5
+ require github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b
6
6
 
7
7
  require (
8
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 // indirect
8
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 // indirect
9
9
  github.com/klauspost/cpuid/v2 v2.2.10 // indirect
10
10
  github.com/zeebo/xxh3 v1.1.0 // indirect
11
11
  golang.org/x/sync v0.21.0 // indirect
@@ -1,11 +1,11 @@
1
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 h1:nxP4pPoyqOAgX8lYDFCfl3DyKeXErCvSvhcyzwGV9CE=
2
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
1
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 h1:KZaTBSyshWX3MP5jukJcNSuXDQTO+rNpt0J564dX/eg=
2
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
3
3
  github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
4
4
  github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
5
5
  github.com/klauspost/cpuid/v2 v2.2.10 h1:tBs3QSyvjDyFTq3uoc/9xFpCuOsJQFNPiAhYdw2skhE=
6
6
  github.com/klauspost/cpuid/v2 v2.2.10/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
7
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063 h1:UUVrjTrD+7nkVvkJTjxwA5+SaZ5n1uyAffm2zX2gn+o=
8
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063/go.mod h1:s3yhRRZ7nzSZaiKicku520Tj9Mvewr9y2UtrvpwOmDE=
7
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b h1:IgfPOv9pzPZ1sbyRHOKu3UCvhaTS0IyrkTcs6JLPqhY=
8
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b/go.mod h1:gV4G6M8xxLNqQSRHiFOgKHlY+5YJgYPM6QwFLWllC+8=
9
9
  github.com/peter-evans/patience v0.3.0 h1:rX0JdJeepqdQl1Sk9c9uvorjYYzL2TfgLX1adqYm9cA=
10
10
  github.com/peter-evans/patience v0.3.0/go.mod h1:Kmxu5sY1NmBLFSStvXjX1wS9mIv7wMcP/ubucyMOAu0=
11
11
  github.com/zeebo/assert v1.3.0 h1:g7C04CbJuIDKNPFHmsk4hwZDO5O+kntRxzaUoNXj+IQ=
@@ -0,0 +1,213 @@
1
+ package compiler
2
+
3
+ import (
4
+ innerast "github.com/microsoft/typescript-go/internal/ast"
5
+ innercompiler "github.com/microsoft/typescript-go/internal/compiler"
6
+ innercore "github.com/microsoft/typescript-go/internal/core"
7
+ inneroutputpaths "github.com/microsoft/typescript-go/internal/outputpaths"
8
+ innertsoptions "github.com/microsoft/typescript-go/internal/tsoptions"
9
+ innertspath "github.com/microsoft/typescript-go/internal/tspath"
10
+ innervfs "github.com/microsoft/typescript-go/internal/vfs"
11
+ )
12
+
13
+ // Version-neutral compiler operations.
14
+ //
15
+ // The TypeScript 7.0 and 7.1 compilers construct hosts, update Programs and
16
+ // report path identity through different signatures. Code that must compile on
17
+ // both compiler targets calls these functions, which the 7.1 bridge declares
18
+ // with identical signatures. Here each makes the 7.0 call ttsc's own 7.0 code
19
+ // made for the same purpose.
20
+
21
+ // NewHost returns a compiler host over fs that finds the bundled library files
22
+ // at defaultLibraryPath. TypeScript 7.0 hosts carry currentDirectory as the
23
+ // Program's working directory; TypeScript 7.1 takes it from the parsed config.
24
+ //
25
+ // @evidence contracts/common.md#principled-implementation Calls NewCompilerHost with the directory, filesystem and library path and no config cache or trace, the host ttsc's driver built on 7.0.
26
+ // @evidence contracts/common.md#clear-and-simple-design One constructor call keeps the target difference inside the shim.
27
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts No host behavior is reimplemented here.
28
+ // @evidence contracts/common.md#meaningful-documentation Native prose states each target's use of currentDirectory.
29
+ // @evidence contracts/portability.md#os-neutral-implementation The supplied FS owns every native operation the host later makes; construction performs none.
30
+ // @evidenceExclude contracts/performance.md#efficient-algorithms Construction assigns fields and chooses no algorithm.
31
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work Each call returns a fresh host; callers share one by holding it.
32
+ // @evidence contracts/performance.md#bound-retention-and-release-resources The host retains fs and the two strings for the caller's lifetime and owns no handle.
33
+ func NewHost(currentDirectory string, fs innervfs.FS, defaultLibraryPath string) innercompiler.CompilerHost {
34
+ return innercompiler.NewCompilerHost(currentDirectory, fs, defaultLibraryPath, nil, nil)
35
+ }
36
+
37
+ // ProjectHosts builds the compiler hosts of the Programs one parsed project
38
+ // produces and owns what those hosts share. On TypeScript 7.1 that is the
39
+ // project's content mappers. TypeScript 7.0 has none, so here every host is a
40
+ // plain host and Close releases nothing.
41
+ //
42
+ // @evidence contracts/common.md#principled-implementation 7.0 has no content mappers, so the type carries no state and its hosts are NewHost's.
43
+ // @evidence contracts/common.md#clear-and-simple-design An empty type gives 7.0 callers the same host construction and release calls as 7.1.
44
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts No content-mapper behavior is emulated on a compiler that has none.
45
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the 7.1 meaning and the 7.0 difference.
46
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation The type performs no native operation.
47
+ // @evidenceExclude contracts/performance.md#efficient-algorithms The type stores nothing.
48
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work There is no shared state to reuse.
49
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The type retains nothing.
50
+ type ProjectHosts struct{}
51
+
52
+ // NewProjectHosts returns the hosts of Programs built from config. TypeScript
53
+ // 7.0 has no content mappers, so the result is always nil.
54
+ //
55
+ // @evidence contracts/common.md#principled-implementation Returns nil, the value whose hosts are plain NewHost hosts.
56
+ // @evidence contracts/common.md#clear-and-simple-design One return keeps the target difference inside the shim.
57
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts config is not inspected for options 7.0 does not define.
58
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the constant result.
59
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation The function performs no native operation.
60
+ // @evidenceExclude contracts/performance.md#efficient-algorithms The function returns a constant.
61
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The function coordinates no shared work.
62
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The function retains nothing.
63
+ func NewProjectHosts(config *innertsoptions.ParsedCommandLine) *ProjectHosts {
64
+ return nil
65
+ }
66
+
67
+ // Host returns NewHost's compiler host over fs.
68
+ //
69
+ // @evidence contracts/common.md#principled-implementation Delegates to NewHost, the only 7.0 host.
70
+ // @evidence contracts/common.md#clear-and-simple-design The method exists so 7.0 and 7.1 callers make the same call.
71
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts No host behavior is reimplemented here.
72
+ // @evidence contracts/common.md#meaningful-documentation Native prose names the delegate.
73
+ // @evidence contracts/portability.md#os-neutral-implementation The supplied FS owns every native operation the host later makes.
74
+ // @evidenceExclude contracts/performance.md#efficient-algorithms Construction assigns fields.
75
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work Each call returns a fresh host.
76
+ // @evidence contracts/performance.md#bound-retention-and-release-resources The host retains fs and the two strings for the caller's lifetime and owns no handle.
77
+ func (h *ProjectHosts) Host(currentDirectory string, fs innervfs.FS, defaultLibraryPath string) innercompiler.CompilerHost {
78
+ return NewHost(currentDirectory, fs, defaultLibraryPath)
79
+ }
80
+
81
+ // Close releases nothing on TypeScript 7.0 and returns nil.
82
+ //
83
+ // @evidence contracts/common.md#principled-implementation 7.0 hosts share no state, so there is nothing to release.
84
+ // @evidence contracts/common.md#clear-and-simple-design The method exists so 7.0 and 7.1 owners make the same call.
85
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts No release is pretended for state that does not exist.
86
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the result.
87
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation The method performs no native operation.
88
+ // @evidenceExclude contracts/performance.md#efficient-algorithms The method returns a constant.
89
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The method coordinates no shared work.
90
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The method retains nothing.
91
+ func (h *ProjectHosts) Close() error {
92
+ return nil
93
+ }
94
+
95
+ // UpdateProgram returns a Program in which only the file keyed by changed was
96
+ // edited, the changed file as host parsed it, and whether the old Program's
97
+ // data was reused. A nil Program means the update could not be made.
98
+ //
99
+ // @evidence contracts/common.md#principled-implementation Calls Program.UpdateProgram with the Program's own checker pool, as ttsc's driver and lint host did on 7.0.
100
+ // @evidence contracts/common.md#clear-and-simple-design One method call keeps the target difference inside the shim.
101
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts Reuse decisions remain the compiler's.
102
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the three results and the nil meaning.
103
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation The host owns any filesystem read; this call adds none.
104
+ // @evidence contracts/performance.md#efficient-algorithms The compiler reparses only the changed file and reuses the rest when it can.
105
+ // @evidence contracts/performance.md#reuse-equivalent-work The compiler decides reuse of the old Program's files and data.
106
+ // @evidence contracts/performance.md#bound-retention-and-release-resources The new Program may share data with the old one; the caller owns releasing the old Program's checkers.
107
+ func UpdateProgram(program *innercompiler.Program, changed innertspath.Path, host innercompiler.CompilerHost) (*innercompiler.Program, *innerast.SourceFile, bool) {
108
+ return program.UpdateProgram(changed, host, nil)
109
+ }
110
+
111
+ // ProgramCaseSensitivity reports the case policy the Program compares file
112
+ // names with.
113
+ //
114
+ // @evidence contracts/common.md#principled-implementation Returns UseCaseSensitiveFileNames, the boolean that is 7.0's CaseSensitivity.
115
+ // @evidence contracts/common.md#clear-and-simple-design One method call keeps the target difference inside the shim.
116
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The policy is the Program's own, not probed again.
117
+ // @evidence contracts/common.md#meaningful-documentation Native prose names what the policy governs.
118
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation The Program answers from its stored policy without a native call.
119
+ // @evidenceExclude contracts/performance.md#efficient-algorithms A stored value is returned.
120
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The function coordinates no shared work.
121
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The function retains nothing.
122
+ func ProgramCaseSensitivity(program *innercompiler.Program) bool {
123
+ return program.UseCaseSensitiveFileNames()
124
+ }
125
+
126
+ // ProgramPathKey returns the key the Program files fileName under, which is
127
+ // the canonical form of its absolute path.
128
+ //
129
+ // @evidence contracts/common.md#principled-implementation ToPath resolves the name against the Program's current directory and canonicalizes it under the Program's case policy, the key 7.0 files use.
130
+ // @evidence contracts/common.md#clear-and-simple-design One upstream call keeps the target difference inside the shim.
131
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts No path canonicalization is reimplemented here.
132
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the canonical-key meaning.
133
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation Key derivation manipulates path text only.
134
+ // @evidenceExclude contracts/performance.md#efficient-algorithms The compiler owns the normalization pass.
135
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The function coordinates no shared work.
136
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The function retains nothing beyond the returned key.
137
+ func ProgramPathKey(program *innercompiler.Program, fileName string) innertspath.Path {
138
+ return innertspath.ToPath(fileName, program.GetCurrentDirectory(), program.UseCaseSensitiveFileNames())
139
+ }
140
+
141
+ // SourceFilesToEmit returns the program files a whole-program emit writes.
142
+ //
143
+ // @evidence contracts/common.md#principled-implementation Calls 7.0's GetSourceFilesToEmit with no target file and no forced declarations, the emitter's whole-program file set.
144
+ // @evidence contracts/common.md#clear-and-simple-design One call per target keeps compiler signature differences out of every emit caller.
145
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts File selection remains the compiler's.
146
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the whole-program scope.
147
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation Selection reads Program state and performs no native operation.
148
+ // @evidenceExclude contracts/performance.md#efficient-algorithms The compiler owns the file scan.
149
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The function coordinates no shared work.
150
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The returned slice is caller-owned.
151
+ func SourceFilesToEmit(host innercompiler.SourceFileMayBeEmittedHost) []*innerast.SourceFile {
152
+ return GetSourceFilesToEmit(host, nil, false)
153
+ }
154
+
155
+ // OutputPathsFor returns the emitter's output paths for one source file
156
+ // without forcing declaration paths.
157
+ //
158
+ // @evidence contracts/common.md#principled-implementation Calls 7.0's GetOutputPathsFor without forced declaration emit, the paths the emitter writes.
159
+ // @evidence contracts/common.md#clear-and-simple-design One call per target keeps compiler signature differences out of every emit caller.
160
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts Path derivation remains the compiler's.
161
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the unforced mode.
162
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation Path derivation manipulates path text only.
163
+ // @evidenceExclude contracts/performance.md#efficient-algorithms The compiler owns the derivation.
164
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The function coordinates no shared work.
165
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The returned paths are caller-owned.
166
+ func OutputPathsFor(source *innerast.SourceFile, options *innercore.CompilerOptions, host inneroutputpaths.OutputPathsHost) *inneroutputpaths.OutputPaths {
167
+ return GetOutputPathsFor(source, options, host, false)
168
+ }
169
+
170
+ // TargetedEmitOptions returns EmitOptions that emit target alone through
171
+ // writeFile, or the whole program when target is nil.
172
+ //
173
+ // @evidence contracts/common.md#principled-implementation Sets 7.0's single TargetSourceFile field, nil for a whole-program emit.
174
+ // @evidence contracts/common.md#clear-and-simple-design One constructor per target keeps EmitOptions field differences out of every emit caller.
175
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts Emit scope remains the compiler's interpretation of the field.
176
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the nil meaning.
177
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation Construction performs no native operation.
178
+ // @evidenceExclude contracts/performance.md#efficient-algorithms Construction assigns two fields.
179
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The function coordinates no shared work.
180
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The returned value is caller-owned.
181
+ func TargetedEmitOptions(target *innerast.SourceFile, writeFile innercompiler.WriteFile) innercompiler.EmitOptions {
182
+ return innercompiler.EmitOptions{TargetSourceFile: target, WriteFile: writeFile}
183
+ }
184
+
185
+ // EmitsWholeProgram reports whether options name no target file.
186
+ //
187
+ // @evidence contracts/common.md#principled-implementation Reads 7.0's single TargetSourceFile field.
188
+ // @evidence contracts/common.md#clear-and-simple-design One predicate per target keeps EmitOptions field differences out of every emit caller.
189
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The predicate reads the field the compiler reads.
190
+ // @evidence contracts/common.md#meaningful-documentation Native prose states the predicate.
191
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation The predicate performs no native operation.
192
+ // @evidenceExclude contracts/performance.md#efficient-algorithms The predicate reads one field.
193
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The function coordinates no shared work.
194
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The function retains nothing.
195
+ func EmitsWholeProgram(options innercompiler.EmitOptions) bool {
196
+ return options.TargetSourceFile == nil
197
+ }
198
+
199
+ // NewProgramOptions returns the options of a Program over config built through
200
+ // host. useSourceOfProjectReference reads a referenced project's sources rather
201
+ // than its declaration outputs. Every other option keeps the compiler default.
202
+ //
203
+ // @evidence contracts/common.md#principled-implementation Fills 7.0's flat ProgramOptions fields.
204
+ // @evidence contracts/common.md#clear-and-simple-design One constructor per target keeps ProgramOptions' layout difference out of every Program caller.
205
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts The returned options leave every other field at the compiler's default.
206
+ // @evidence contracts/common.md#meaningful-documentation Native prose names the three fields set and the defaults.
207
+ // @evidenceExclude contracts/portability.md#os-neutral-implementation Construction performs no native operation.
208
+ // @evidenceExclude contracts/performance.md#efficient-algorithms Construction assigns three fields.
209
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work The function coordinates no shared work.
210
+ // @evidence contracts/performance.md#bound-retention-and-release-resources The returned options reference the caller's config and host without copying them.
211
+ func NewProgramOptions(config *innertsoptions.ParsedCommandLine, host innercompiler.CompilerHost, useSourceOfProjectReference bool) innercompiler.ProgramOptions {
212
+ return innercompiler.ProgramOptions{Config: config, Host: host, UseSourceOfProjectReference: useSourceOfProjectReference}
213
+ }
@@ -2,9 +2,9 @@ module github.com/microsoft/typescript-go/shim/core
2
2
 
3
3
  go 1.26
4
4
 
5
- require github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063
5
+ require github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b
6
6
 
7
7
  require (
8
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 // indirect
8
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 // indirect
9
9
  golang.org/x/sync v0.21.0 // indirect
10
10
  )
@@ -1,9 +1,9 @@
1
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 h1:nxP4pPoyqOAgX8lYDFCfl3DyKeXErCvSvhcyzwGV9CE=
2
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
1
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 h1:KZaTBSyshWX3MP5jukJcNSuXDQTO+rNpt0J564dX/eg=
2
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
3
3
  github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
4
4
  github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
5
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063 h1:UUVrjTrD+7nkVvkJTjxwA5+SaZ5n1uyAffm2zX2gn+o=
6
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063/go.mod h1:s3yhRRZ7nzSZaiKicku520Tj9Mvewr9y2UtrvpwOmDE=
5
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b h1:IgfPOv9pzPZ1sbyRHOKu3UCvhaTS0IyrkTcs6JLPqhY=
6
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b/go.mod h1:gV4G6M8xxLNqQSRHiFOgKHlY+5YJgYPM6QwFLWllC+8=
7
7
  golang.org/x/sync v0.21.0 h1:HLII4xRRTtCRkxYp4HNFF0Js/Og6q2i++KXbg0gHCwM=
8
8
  golang.org/x/sync v0.21.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0=
9
9
  gotest.tools/v3 v3.5.2 h1:7koQfIKdy+I8UTetycgUqXWSDwpgv193Ka+qRsmBY8Q=
@@ -2,10 +2,10 @@ module github.com/microsoft/typescript-go/shim/diagnosticwriter
2
2
 
3
3
  go 1.26
4
4
 
5
- require github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063
5
+ require github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b
6
6
 
7
7
  require (
8
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 // indirect
8
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 // indirect
9
9
  github.com/klauspost/cpuid/v2 v2.2.10 // indirect
10
10
  github.com/zeebo/xxh3 v1.1.0 // indirect
11
11
  golang.org/x/sync v0.21.0 // indirect
@@ -1,11 +1,11 @@
1
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 h1:nxP4pPoyqOAgX8lYDFCfl3DyKeXErCvSvhcyzwGV9CE=
2
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
1
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 h1:KZaTBSyshWX3MP5jukJcNSuXDQTO+rNpt0J564dX/eg=
2
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
3
3
  github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
4
4
  github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
5
5
  github.com/klauspost/cpuid/v2 v2.2.10 h1:tBs3QSyvjDyFTq3uoc/9xFpCuOsJQFNPiAhYdw2skhE=
6
6
  github.com/klauspost/cpuid/v2 v2.2.10/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
7
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063 h1:UUVrjTrD+7nkVvkJTjxwA5+SaZ5n1uyAffm2zX2gn+o=
8
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063/go.mod h1:s3yhRRZ7nzSZaiKicku520Tj9Mvewr9y2UtrvpwOmDE=
7
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b h1:IgfPOv9pzPZ1sbyRHOKu3UCvhaTS0IyrkTcs6JLPqhY=
8
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b/go.mod h1:gV4G6M8xxLNqQSRHiFOgKHlY+5YJgYPM6QwFLWllC+8=
9
9
  github.com/zeebo/assert v1.3.0 h1:g7C04CbJuIDKNPFHmsk4hwZDO5O+kntRxzaUoNXj+IQ=
10
10
  github.com/zeebo/assert v1.3.0/go.mod h1:Pq9JiuJQpG8JLJdtkwrJESF0Foym2/D9XMU5ciN/wJ0=
11
11
  github.com/zeebo/xxh3 v1.1.0 h1:s7DLGDK45Dyfg7++yxI0khrfwq9661w9EN78eP/UZVs=
@@ -2,11 +2,11 @@ module github.com/microsoft/typescript-go/shim/lsp
2
2
 
3
3
  go 1.26
4
4
 
5
- require github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063
5
+ require github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b
6
6
 
7
7
  require (
8
8
  github.com/Microsoft/go-winio v0.6.2 // indirect
9
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 // indirect
9
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 // indirect
10
10
  github.com/klauspost/cpuid/v2 v2.2.10 // indirect
11
11
  github.com/mackerelio/go-osstat v0.2.7 // indirect
12
12
  github.com/zeebo/xxh3 v1.1.0 // indirect
@@ -1,15 +1,15 @@
1
1
  github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY=
2
2
  github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU=
3
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 h1:nxP4pPoyqOAgX8lYDFCfl3DyKeXErCvSvhcyzwGV9CE=
4
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
3
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 h1:KZaTBSyshWX3MP5jukJcNSuXDQTO+rNpt0J564dX/eg=
4
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68/go.mod h1:tphK2c80bpPhMOI4v6bIc2xWywPfbqi1Z06+RcrMkDg=
5
5
  github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
6
6
  github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
7
7
  github.com/klauspost/cpuid/v2 v2.2.10 h1:tBs3QSyvjDyFTq3uoc/9xFpCuOsJQFNPiAhYdw2skhE=
8
8
  github.com/klauspost/cpuid/v2 v2.2.10/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
9
9
  github.com/mackerelio/go-osstat v0.2.7 h1:TCavZi10wF49bT6iQZ9eT2keGZQpC69MTDfdJej5e94=
10
10
  github.com/mackerelio/go-osstat v0.2.7/go.mod h1:dwpYh5pIPmvk+IEwBKNIWRFMB92mrC08CmXOhDC7nQk=
11
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063 h1:UUVrjTrD+7nkVvkJTjxwA5+SaZ5n1uyAffm2zX2gn+o=
12
- github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063/go.mod h1:s3yhRRZ7nzSZaiKicku520Tj9Mvewr9y2UtrvpwOmDE=
11
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b h1:IgfPOv9pzPZ1sbyRHOKu3UCvhaTS0IyrkTcs6JLPqhY=
12
+ github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b/go.mod h1:gV4G6M8xxLNqQSRHiFOgKHlY+5YJgYPM6QwFLWllC+8=
13
13
  github.com/peter-evans/patience v0.3.0 h1:rX0JdJeepqdQl1Sk9c9uvorjYYzL2TfgLX1adqYm9cA=
14
14
  github.com/peter-evans/patience v0.3.0/go.mod h1:Kmxu5sY1NmBLFSStvXjX1wS9mIv7wMcP/ubucyMOAu0=
15
15
  github.com/zeebo/assert v1.3.0 h1:g7C04CbJuIDKNPFHmsk4hwZDO5O+kntRxzaUoNXj+IQ=
@@ -2,10 +2,10 @@ module github.com/microsoft/typescript-go/shim/parser
2
2
 
3
3
  go 1.26
4
4
 
5
- require github.com/microsoft/typescript-go v0.0.0-20260610182825-7fc57c005063
5
+ require github.com/microsoft/typescript-go v0.0.0-20260708042240-2bd066d87f5b
6
6
 
7
7
  require (
8
- github.com/go-json-experiment/json v0.0.0-20260601182631-00ed12fed2a6 // indirect
8
+ github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 // indirect
9
9
  github.com/klauspost/cpuid/v2 v2.2.10 // indirect
10
10
  github.com/zeebo/xxh3 v1.1.0 // indirect
11
11
  golang.org/x/sync v0.21.0 // indirect