Skip to content

Commit cab5e2e

Browse files
Tajudeenclaude
andcommitted
fix(build): pass --experimental-strip-types when spawning .mts/.ts node scripts
Node 22.15.x requires this flag to load TypeScript files directly. VS Code 1.118.1 introduced .mts extension build scripts (esbuild.notebook.mts etc.) that are spawned by compile-extension-media without it. Also pre-create the React out dir before rsync in buildreact to avoid CI failure when the out/vs tree hasn't been created yet. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 85d04ff commit cab5e2e

2 files changed

Lines changed: 10 additions & 3 deletions

File tree

build/lib/extensions.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,11 @@ function fromLocalEsbuild(extensionPath: string, esbuildConfigFileName: string):
161161

162162
// Run esbuild, then collect the files
163163
new Promise<void>((resolve, reject) => {
164-
const proc = cp.execFile(process.argv[0], [esbuildScript], { cwd: extensionPath }, (error, _stdout, stderr) => {
164+
// Node 22.15.x requires --experimental-strip-types to load .mts/.ts files directly
165+
const nodeArgs = (esbuildScript.endsWith('.mts') || esbuildScript.endsWith('.ts'))
166+
? ['--experimental-strip-types', esbuildScript]
167+
: [esbuildScript];
168+
const proc = cp.execFile(process.argv[0], nodeArgs, { cwd: extensionPath }, (error, _stdout, stderr) => {
165169
if (error) {
166170
return reject(error);
167171
}
@@ -595,7 +599,10 @@ export async function esbuildExtensions(taskName: string, isWatch: boolean, scri
595599

596600
const tasks = scripts.map(({ script, outputRoot }) => {
597601
return new Promise<void>((resolve, reject) => {
598-
const args = [script];
602+
// Node 22.15.x requires --experimental-strip-types to load .mts/.ts files directly
603+
const args = (script.endsWith('.mts') || script.endsWith('.ts'))
604+
? ['--experimental-strip-types', script]
605+
: [script];
599606
if (isWatch) {
600607
args.push('--watch');
601608
}

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@
8787
"install-local-component-explorer": "npm install ../vscode-packages/js-component-explorer/dist/vscode-component-explorer-0.1.0.tgz ../vscode-packages/js-component-explorer/dist/vscode-component-explorer-cli-0.1.0.tgz --no-save && cd build/rspack && npm install ../../../vscode-packages/js-component-explorer/dist/vscode-component-explorer-webpack-plugin-0.1.0.tgz --no-save && cd ../vite && npm install ../../../vscode-packages/js-component-explorer/dist/vscode-component-explorer-vite-plugin-0.1.0.tgz --no-save",
8888
"symlink-local-component-explorer": "npm install ../vscode-packages/js-component-explorer/packages/explorer ../vscode-packages/js-component-explorer/packages/cli --no-save && cd build/rspack && npm install ../../../vscode-packages/js-component-explorer/packages/webpack-plugin ../../../vscode-packages/js-component-explorer/packages/explorer --no-save && cd ../vite && npm install ../../../vscode-packages/js-component-explorer/packages/vite-plugin ../../../vscode-packages/js-component-explorer/packages/explorer --no-save",
8989
"install-latest-component-explorer": "npm install @vscode/component-explorer@next @vscode/component-explorer-cli@next && cd build/rspack && npm install @vscode/component-explorer-webpack-plugin@next @vscode/component-explorer@next && cd ../vite && npm install @vscode/component-explorer-vite-plugin@next @vscode/component-explorer@next",
90-
"buildreact": "cd ./src/vs/workbench/contrib/cortexide/browser/react/ && node build.js && cd ../../../../../../../ && rsync -a src/vs/workbench/contrib/cortexide/browser/react/out/ out/vs/workbench/contrib/cortexide/browser/react/out/",
90+
"buildreact": "cd ./src/vs/workbench/contrib/cortexide/browser/react/ && node build.js && cd ../../../../../../../ && mkdir -p out/vs/workbench/contrib/cortexide/browser/react/out && rsync -a src/vs/workbench/contrib/cortexide/browser/react/out/ out/vs/workbench/contrib/cortexide/browser/react/out/",
9191
"watchreact": "cd ./src/vs/workbench/contrib/cortexide/browser/react/ && node build.js --watch && cd ../../../../../../../"
9292
},
9393
"dependencies": {

0 commit comments

Comments
 (0)