From fe665a91f621da08feef91cdff5d979b00b36154 Mon Sep 17 00:00:00 2001 From: Benjamin Pasero Date: Fri, 9 Jan 2026 07:07:37 +0100 Subject: [PATCH] watcher - update to latest version (#286484) --- build/.moduleignore | 10 ++--- .../linux/verify-glibc-requirements.sh | 2 +- build/darwin/create-universal-app.ts | 2 - build/gulpfile.vscode.ts | 2 +- build/npm/postinstall.ts | 4 +- eslint.config.js | 7 +++- extensions/esbuild-webview-common.mjs | 2 +- extensions/package-lock.json | 10 ++--- extensions/package.json | 2 +- package-lock.json | 42 +++++++++---------- package.json | 2 +- remote/package-lock.json | 42 +++++++++---------- remote/package.json | 2 +- scripts/playground-server.ts | 2 +- .../node/nativeModules.integrationTest.ts | 6 +-- .../node/watcher/parcel/parcelWatcher.ts | 2 +- 16 files changed, 71 insertions(+), 68 deletions(-) diff --git a/build/.moduleignore b/build/.moduleignore index fc7c538c6cc..0459b46f743 100644 --- a/build/.moduleignore +++ b/build/.moduleignore @@ -112,11 +112,11 @@ node-pty/third_party/** !node-pty/build/Release/conpty/conpty.dll !node-pty/build/Release/conpty/OpenConsole.exe -@vscode/watcher/binding.gyp -@vscode/watcher/build/** -@vscode/watcher/prebuilds/** -@vscode/watcher/src/** -!@vscode/watcher/build/Release/*.node +@parcel/watcher/binding.gyp +@parcel/watcher/build/** +@parcel/watcher/prebuilds/** +@parcel/watcher/src/** +!@parcel/watcher/build/Release/*.node vsda/** !vsda/index.js diff --git a/build/azure-pipelines/linux/verify-glibc-requirements.sh b/build/azure-pipelines/linux/verify-glibc-requirements.sh index 3db90471faa..529417761f9 100755 --- a/build/azure-pipelines/linux/verify-glibc-requirements.sh +++ b/build/azure-pipelines/linux/verify-glibc-requirements.sh @@ -10,7 +10,7 @@ elif [ "$VSCODE_ARCH" == "armhf" ]; then fi # Get all files with .node extension from server folder -files=$(find $SEARCH_PATH -name "*.node" -not -path "*prebuilds*" -not -path "*extensions/node_modules/@vscode/watcher*" -o -type f -executable -name "node") +files=$(find $SEARCH_PATH -name "*.node" -not -path "*prebuilds*" -not -path "*extensions/node_modules/@parcel/watcher*" -o -type f -executable -name "node") echo "Verifying requirements for files: $files" diff --git a/build/darwin/create-universal-app.ts b/build/darwin/create-universal-app.ts index 6bda47add71..26aead0ca19 100644 --- a/build/darwin/create-universal-app.ts +++ b/build/darwin/create-universal-app.ts @@ -29,8 +29,6 @@ async function main(buildDir?: string) { '**/CodeResources', '**/Credits.rtf', '**/policies/{*.mobileconfig,**/*.plist}', - // TODO: Should we consider expanding this to other files in this area? - '**/node_modules/@vscode/node-addon-api/nothing.target.mk', ]; await makeUniversalApp({ diff --git a/build/gulpfile.vscode.ts b/build/gulpfile.vscode.ts index ac70ecbd57f..d3ab651ef2e 100644 --- a/build/gulpfile.vscode.ts +++ b/build/gulpfile.vscode.ts @@ -470,7 +470,7 @@ function patchWin32DependenciesTask(destinationFolderName: string) { const cwd = path.join(path.dirname(root), destinationFolderName); return async () => { - const deps = await glob('**/*.node', { cwd, ignore: 'extensions/node_modules/@vscode/watcher/**' }); + const deps = await glob('**/*.node', { cwd, ignore: 'extensions/node_modules/@parcel/watcher/**' }); const packageJson = JSON.parse(await fs.promises.readFile(path.join(cwd, versionedResourcesFolder, 'resources', 'app', 'package.json'), 'utf8')); const product = JSON.parse(await fs.promises.readFile(path.join(cwd, versionedResourcesFolder, 'resources', 'app', 'product.json'), 'utf8')); const baseVersion = packageJson.version.replace(/-.*$/, ''); diff --git a/build/npm/postinstall.ts b/build/npm/postinstall.ts index 3e260853a53..c4bbbf52960 100644 --- a/build/npm/postinstall.ts +++ b/build/npm/postinstall.ts @@ -110,7 +110,7 @@ function setNpmrcConfig(dir: string, env: NodeJS.ProcessEnv) { } function removeParcelWatcherPrebuild(dir: string) { - const parcelModuleFolder = path.join(root, dir, 'node_modules', '@vscode'); + const parcelModuleFolder = path.join(root, dir, 'node_modules', '@parcel'); if (!fs.existsSync(parcelModuleFolder)) { return; } @@ -120,7 +120,7 @@ function removeParcelWatcherPrebuild(dir: string) { if (moduleName.startsWith('watcher-')) { const modulePath = path.join(parcelModuleFolder, moduleName); fs.rmSync(modulePath, { recursive: true, force: true }); - log(dir, `Removed @vscode/watcher prebuilt module ${modulePath}`); + log(dir, `Removed @parcel/watcher prebuilt module ${modulePath}`); } } } diff --git a/eslint.config.js b/eslint.config.js index 52eb95c5ff0..b8bcee337fc 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -1439,7 +1439,7 @@ export default tseslint.config( // - electron-main 'when': 'hasNode', 'allow': [ - '@vscode/watcher', + '@parcel/watcher', '@vscode/sqlite3', '@vscode/vscode-languagedetection', '@vscode/ripgrep', @@ -1930,6 +1930,7 @@ export default tseslint.config( 'test/automation', 'test/smoke/**', '@vscode/*', + '@parcel/*', '@playwright/*', '*' // node modules ] @@ -1939,6 +1940,7 @@ export default tseslint.config( 'restrictions': [ 'test/automation/**', '@vscode/*', + '@parcel/*', 'playwright-core/**', '@playwright/*', '*' // node modules @@ -1949,6 +1951,7 @@ export default tseslint.config( 'restrictions': [ 'test/integration/**', '@vscode/*', + '@parcel/*', '@playwright/*', '*' // node modules ] @@ -1958,6 +1961,7 @@ export default tseslint.config( 'restrictions': [ 'test/monaco/**', '@vscode/*', + '@parcel/*', '@playwright/*', '*' // node modules ] @@ -1968,6 +1972,7 @@ export default tseslint.config( 'test/automation', 'test/mcp/**', '@vscode/*', + '@parcel/*', '@playwright/*', '@modelcontextprotocol/sdk/**/*', '*' // node modules diff --git a/extensions/esbuild-webview-common.mjs b/extensions/esbuild-webview-common.mjs index 7b704b3b7f3..76d03abad7d 100644 --- a/extensions/esbuild-webview-common.mjs +++ b/extensions/esbuild-webview-common.mjs @@ -82,7 +82,7 @@ export async function run(config, args, didBuild) { const isWatch = args.indexOf('--watch') >= 0; if (isWatch) { await tryBuild(resolvedOptions, didBuild); - const watcher = await import('@vscode/watcher'); + const watcher = await import('@parcel/watcher'); watcher.subscribe(config.srcDir, () => tryBuild(resolvedOptions, didBuild)); } else { return build(resolvedOptions, didBuild).catch(() => process.exit(1)); diff --git a/extensions/package-lock.json b/extensions/package-lock.json index d315b71a7fe..65ae991714e 100644 --- a/extensions/package-lock.json +++ b/extensions/package-lock.json @@ -13,7 +13,7 @@ "typescript": "^5.9.3" }, "devDependencies": { - "@vscode/watcher": "bpasero/watcher#8ecffb4a57df24ac3e6946aa095b9b1f14f8bba9", + "@parcel/watcher": "parcel-bundler/watcher#f503c6eb8df1e883f6989f11743232e43ccb90f6", "esbuild": "0.25.0", "vscode-grammar-updater": "^1.1.0" } @@ -443,10 +443,10 @@ "node": ">=18" } }, - "node_modules/@vscode/watcher": { - "version": "2.5.1-vscode", - "resolved": "git+ssh://git@github.com/bpasero/watcher.git#8ecffb4a57df24ac3e6946aa095b9b1f14f8bba9", - "integrity": "sha512-7F4REbtMh5JAtdPpBCyPq7yLgcqnZV5L+uzuT4IDaZUyCKvIqi9gDiNPyoKpvCtrw6funLmrAncFHHWoDI+S4g==", + "node_modules/@parcel/watcher": { + "version": "2.5.1", + "resolved": "git+ssh://git@github.com/parcel-bundler/watcher.git#f503c6eb8df1e883f6989f11743232e43ccb90f6", + "integrity": "sha512-OBF6tTwKfBQcUgQCFD2j8/SNPCYe1B95udxEUFzBVUU0MCVE28n1Yjhcxya5+LONXYHN64HUSc27JCBdFUd7FA==", "dev": true, "hasInstallScript": true, "license": "MIT", diff --git a/extensions/package.json b/extensions/package.json index 28f88ed4db3..c87eae0a934 100644 --- a/extensions/package.json +++ b/extensions/package.json @@ -10,7 +10,7 @@ "postinstall": "node ./postinstall.mjs" }, "devDependencies": { - "@vscode/watcher": "bpasero/watcher#8ecffb4a57df24ac3e6946aa095b9b1f14f8bba9", + "@parcel/watcher": "parcel-bundler/watcher#f503c6eb8df1e883f6989f11743232e43ccb90f6", "esbuild": "0.25.0", "vscode-grammar-updater": "^1.1.0" }, diff --git a/package-lock.json b/package-lock.json index acc53d187c0..bc2ac38586b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,6 +12,7 @@ "dependencies": { "@microsoft/1ds-core-js": "^3.2.13", "@microsoft/1ds-post-js": "^3.2.13", + "@parcel/watcher": "parcel-bundler/watcher#f503c6eb8df1e883f6989f11743232e43ccb90f6", "@types/semver": "^7.5.8", "@vscode/deviceid": "^0.1.1", "@vscode/iconv-lite-umd": "0.7.1", @@ -23,7 +24,6 @@ "@vscode/sudo-prompt": "9.3.2", "@vscode/tree-sitter-wasm": "^0.3.0", "@vscode/vscode-languagedetection": "1.0.21", - "@vscode/watcher": "bpasero/watcher#8ecffb4a57df24ac3e6946aa095b9b1f14f8bba9", "@vscode/windows-mutex": "^0.5.0", "@vscode/windows-process-tree": "^0.6.0", "@vscode/windows-registry": "^1.1.0", @@ -1663,6 +1663,26 @@ "node": ">=8.0.0" } }, + "node_modules/@parcel/watcher": { + "version": "2.5.1", + "resolved": "git+ssh://git@github.com/parcel-bundler/watcher.git#f503c6eb8df1e883f6989f11743232e43ccb90f6", + "integrity": "sha512-OBF6tTwKfBQcUgQCFD2j8/SNPCYe1B95udxEUFzBVUU0MCVE28n1Yjhcxya5+LONXYHN64HUSc27JCBdFUd7FA==", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "detect-libc": "^2.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", @@ -3241,26 +3261,6 @@ "node": ">= 16" } }, - "node_modules/@vscode/watcher": { - "version": "2.5.1-vscode", - "resolved": "git+ssh://git@github.com/bpasero/watcher.git#8ecffb4a57df24ac3e6946aa095b9b1f14f8bba9", - "integrity": "sha512-7F4REbtMh5JAtdPpBCyPq7yLgcqnZV5L+uzuT4IDaZUyCKvIqi9gDiNPyoKpvCtrw6funLmrAncFHHWoDI+S4g==", - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "detect-libc": "^2.0.3", - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "node-addon-api": "^7.0.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, "node_modules/@vscode/windows-ca-certs": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/@vscode/windows-ca-certs/-/windows-ca-certs-0.3.3.tgz", diff --git a/package.json b/package.json index 48ba305e6ae..f7f3d89d141 100644 --- a/package.json +++ b/package.json @@ -74,6 +74,7 @@ "dependencies": { "@microsoft/1ds-core-js": "^3.2.13", "@microsoft/1ds-post-js": "^3.2.13", + "@parcel/watcher": "parcel-bundler/watcher#f503c6eb8df1e883f6989f11743232e43ccb90f6", "@types/semver": "^7.5.8", "@vscode/deviceid": "^0.1.1", "@vscode/iconv-lite-umd": "0.7.1", @@ -85,7 +86,6 @@ "@vscode/sudo-prompt": "9.3.2", "@vscode/tree-sitter-wasm": "^0.3.0", "@vscode/vscode-languagedetection": "1.0.21", - "@vscode/watcher": "bpasero/watcher#8ecffb4a57df24ac3e6946aa095b9b1f14f8bba9", "@vscode/windows-mutex": "^0.5.0", "@vscode/windows-process-tree": "^0.6.0", "@vscode/windows-registry": "^1.1.0", diff --git a/remote/package-lock.json b/remote/package-lock.json index eb05cdd7452..4373c48f8da 100644 --- a/remote/package-lock.json +++ b/remote/package-lock.json @@ -10,6 +10,7 @@ "dependencies": { "@microsoft/1ds-core-js": "^3.2.13", "@microsoft/1ds-post-js": "^3.2.13", + "@parcel/watcher": "parcel-bundler/watcher#f503c6eb8df1e883f6989f11743232e43ccb90f6", "@vscode/deviceid": "^0.1.1", "@vscode/iconv-lite-umd": "0.7.1", "@vscode/proxy-agent": "^0.36.0", @@ -17,7 +18,6 @@ "@vscode/spdlog": "^0.15.2", "@vscode/tree-sitter-wasm": "^0.3.0", "@vscode/vscode-languagedetection": "1.0.21", - "@vscode/watcher": "bpasero/watcher#8ecffb4a57df24ac3e6946aa095b9b1f14f8bba9", "@vscode/windows-process-tree": "^0.6.0", "@vscode/windows-registry": "^1.1.0", "@xterm/addon-clipboard": "^0.3.0-beta.91", @@ -89,6 +89,26 @@ "resolved": "https://registry.npmjs.org/@microsoft/dynamicproto-js/-/dynamicproto-js-1.1.9.tgz", "integrity": "sha512-n1VPsljTSkthsAFYdiWfC+DKzK2WwcRp83Y1YAqdX552BstvsDjft9YXppjUzp11BPsapDoO1LDgrDB0XVsfNQ==" }, + "node_modules/@parcel/watcher": { + "version": "2.5.1", + "resolved": "git+ssh://git@github.com/parcel-bundler/watcher.git#f503c6eb8df1e883f6989f11743232e43ccb90f6", + "integrity": "sha512-OBF6tTwKfBQcUgQCFD2j8/SNPCYe1B95udxEUFzBVUU0MCVE28n1Yjhcxya5+LONXYHN64HUSc27JCBdFUd7FA==", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "detect-libc": "^2.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, "node_modules/@tootallnate/once": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-3.0.0.tgz", @@ -181,26 +201,6 @@ "vscode-languagedetection": "cli/index.js" } }, - "node_modules/@vscode/watcher": { - "version": "2.5.1-vscode", - "resolved": "git+ssh://git@github.com/bpasero/watcher.git#8ecffb4a57df24ac3e6946aa095b9b1f14f8bba9", - "integrity": "sha512-7F4REbtMh5JAtdPpBCyPq7yLgcqnZV5L+uzuT4IDaZUyCKvIqi9gDiNPyoKpvCtrw6funLmrAncFHHWoDI+S4g==", - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "detect-libc": "^2.0.3", - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "node-addon-api": "^7.0.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, "node_modules/@vscode/windows-ca-certs": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/@vscode/windows-ca-certs/-/windows-ca-certs-0.3.3.tgz", diff --git a/remote/package.json b/remote/package.json index f99df61ade0..cfcd4feba48 100644 --- a/remote/package.json +++ b/remote/package.json @@ -5,6 +5,7 @@ "dependencies": { "@microsoft/1ds-core-js": "^3.2.13", "@microsoft/1ds-post-js": "^3.2.13", + "@parcel/watcher": "parcel-bundler/watcher#f503c6eb8df1e883f6989f11743232e43ccb90f6", "@vscode/deviceid": "^0.1.1", "@vscode/iconv-lite-umd": "0.7.1", "@vscode/proxy-agent": "^0.36.0", @@ -12,7 +13,6 @@ "@vscode/spdlog": "^0.15.2", "@vscode/tree-sitter-wasm": "^0.3.0", "@vscode/vscode-languagedetection": "1.0.21", - "@vscode/watcher": "bpasero/watcher#8ecffb4a57df24ac3e6946aa095b9b1f14f8bba9", "@vscode/windows-process-tree": "^0.6.0", "@vscode/windows-registry": "^1.1.0", "@xterm/addon-clipboard": "^0.3.0-beta.91", diff --git a/scripts/playground-server.ts b/scripts/playground-server.ts index 0b8848af3b3..e28a20488d9 100644 --- a/scripts/playground-server.ts +++ b/scripts/playground-server.ts @@ -6,7 +6,7 @@ import * as fsPromise from 'fs/promises'; import path from 'path'; import * as http from 'http'; -import * as parcelWatcher from '@vscode/watcher'; +import * as parcelWatcher from '@parcel/watcher'; /** * Launches the server for the monaco editor playground diff --git a/src/vs/platform/environment/test/node/nativeModules.integrationTest.ts b/src/vs/platform/environment/test/node/nativeModules.integrationTest.ts index d4ce18aad91..50999154d16 100644 --- a/src/vs/platform/environment/test/node/nativeModules.integrationTest.ts +++ b/src/vs/platform/environment/test/node/nativeModules.integrationTest.ts @@ -76,9 +76,9 @@ flakySuite('Native Modules (all platforms)', () => { assert.ok(typeof spdlog.version === 'number', testErrorMessage('@vscode/spdlog')); }); - test('@vscode/watcher', async () => { - const parcelWatcher = await import('@vscode/watcher'); - assert.ok(typeof parcelWatcher.subscribe === 'function', testErrorMessage('@vscode/watcher')); + test('@parcel/watcher', async () => { + const parcelWatcher = await import('@parcel/watcher'); + assert.ok(typeof parcelWatcher.subscribe === 'function', testErrorMessage('@parcel/watcher')); }); test('@vscode/deviceid', async () => { diff --git a/src/vs/platform/files/node/watcher/parcel/parcelWatcher.ts b/src/vs/platform/files/node/watcher/parcel/parcelWatcher.ts index 7d14f3bb364..b375d171c42 100644 --- a/src/vs/platform/files/node/watcher/parcel/parcelWatcher.ts +++ b/src/vs/platform/files/node/watcher/parcel/parcelWatcher.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import parcelWatcher from '@vscode/watcher'; +import parcelWatcher from '@parcel/watcher'; import { promises } from 'fs'; import { tmpdir, homedir } from 'os'; import { URI } from '../../../../../base/common/uri.js';