You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGES.md
+25Lines changed: 25 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -126,6 +126,31 @@ Corsa no longer parses the following JSDoc tags with a specific node type. They
126
126
127
127
### Miscellaneous
128
128
129
+
#### Template literal type inference pulls off a full Unicode code point for empty placeholders.
130
+
131
+
When inferring through a template literal type with an empty delimiter, Corsa consumes a full Unicode code point rather than a single UTF-16 code unit.
132
+
This diverges from Strada, which advances one UTF-16 code unit at a time and therefore splits a supplementary-plane character such as an emoji into its surrogate halves:
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+46-2Lines changed: 46 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -72,6 +72,50 @@ To debug and run the VS Code extension without installing it globally:
72
72
* Copy `.vscode/launch.template.json` to `.vscode/launch.json`
73
73
* <kbd>F5</kbd> (or `Debug: Start Debugging` from the command palette)
74
74
75
-
This will launch a new VS Code instance which uses the Corsa LS as the backend. If correctly set up, you should see "tsgo" in the status bar when a TypeScript or JavaScript file is open:
75
+
This will launch a new VS Code instance which uses the Corsa LS as the backend.
76
76
77
-

77
+
#### Collecting Logs
78
+
79
+
The extension provides a single output channel, **typescript-native-preview**, in VS Code's Output panel. It shows both server log messages and (optionally) LSP protocol traces.
80
+
81
+
The output channel's **log level** (the gear icon next to the channel dropdown) controls what is visible:
82
+
83
+
| Log level | What you'll see |
84
+
|---|---|
85
+
|**Error**| Crashes and internal errors while handling requests |
86
+
|**Warning**| Unexpected conditions, e.g. unknown LSP methods |
|**Debug**| All of the above, plus verbose server details (cache statistics, project trees) |
89
+
|**Trace**| All of the above, plus full LSP request/response protocol traces |
90
+
91
+
The **`typescript.native-preview.trace.server`** setting controls the detail level of LSP traces when the log level is set to Trace:
92
+
93
+
| Setting value | Effect at Trace log level |
94
+
|---|---|
95
+
|`"off"`| No LSP traces |
96
+
|`"messages"`| Request/response names and timing |
97
+
|**`"verbose"`** (default) | Full JSON bodies of every request and response |
98
+
99
+
When filing an issue, copy the relevant section of log output and include it in your report.
100
+
101
+
> [!WARNING]
102
+
> Logs contain personally identifiable information (mostly file paths). When the log level is set to Trace and `typescript.native-preview.trace.server` is set to `"verbose"`, this includes the full contents of open files. Always review log content before sharing.
103
+
104
+
#### Collecting Heap Profiles
105
+
106
+
Heap profiles are essential for diagnosing high memory usage. When the language server is consuming too much memory:
107
+
108
+
1. Open the VS Code command palette (<kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> / <kbd>⌘</kbd>+<kbd>⇧</kbd>+<kbd>P</kbd>).
109
+
2. Run **TypeScript Native Preview: Save Heap Profile**.
110
+
3. Choose a directory to save the profile to.
111
+
4. Attach the resulting `.pb.gz` file to your issue.
112
+
113
+
#### Collecting CPU Profiles
114
+
115
+
CPU profiles help diagnose hangs and slow operations:
116
+
117
+
1. Open the VS Code command palette.
118
+
2. Run **TypeScript Native Preview: Start CPU Profile** and choose a directory.
119
+
3. Reproduce the slow operation.
120
+
4. Run **TypeScript Native Preview: Stop CPU Profile**.
121
+
5. Attach the resulting `.pb.gz` file to your issue.
0 commit comments