diff --git a/.ncurc.json b/.ncurc.json index 6521de54..9edd6d4d 100644 --- a/.ncurc.json +++ b/.ncurc.json @@ -5,7 +5,6 @@ "@parcel/watcher", "@types/node", "@types/vscode", - "@types/vscode-marked", "@types/vscode-semver", "@vscode/iconv-lite-umd", "@vscode/proxy-agent", @@ -25,8 +24,8 @@ "cookie", "jschardet", "kerberos", + "marked", "node-pty", - "vscode-marked", "vscode-oniguruma", "vscode-regexpp", "vscode-semver", diff --git a/demo/package-lock.json b/demo/package-lock.json index 7ab833fd..417105b3 100644 --- a/demo/package-lock.json +++ b/demo/package-lock.json @@ -168,7 +168,7 @@ "@codingame/monaco-vscode-yaml-default-extension": "file:../dist/default-extension-yaml", "ansi-colors": "^4.1.3", "dockerode": "^4.0.2", - "express": "^4.19.2", + "express": "^4.21.0", "monaco-editor": "file:../dist/editor-api", "vscode": "file:../dist/main", "ws": "^8.18.0" @@ -182,8 +182,8 @@ "@types/wicg-file-system-access": "^2023.10.5", "@types/ws": "^8.5.12", "ts-node": "^10.9.2", - "typescript": "~5.5.4", - "vite": "~5.4.1" + "typescript": "~5.6.2", + "vite": "~5.4.4" } }, "../dist/default-extension-bat": { @@ -823,7 +823,8 @@ "@codingame/monaco-vscode-layout-service-override": "0.0.0-semantic-release", "@codingame/monaco-vscode-quickaccess-service-override": "0.0.0-semantic-release", "@vscode/iconv-lite-umd": "0.7.0", - "jschardet": "3.1.3" + "jschardet": "3.1.3", + "marked": "~14.0.0" } }, "../dist/rollup-vsix-plugin": { @@ -833,8 +834,8 @@ "license": "MIT", "dependencies": { "@rollup/pluginutils": "^5.1.0", - "css-url-parser": "^1.1.3", - "memfs": "^4.9.3", + "css-url-parser": "^1.1.4", + "memfs": "^4.11.1", "mime-types": "^2.1.35", "yauzl": "^3.0.0" } @@ -844,6 +845,7 @@ "version": "0.0.0-semantic-release", "license": "MIT", "dependencies": { + "marked": "~14.0.0", "vscode": "npm:@codingame/monaco-vscode-api@^0.0.0-semantic-release" } }, @@ -1023,7 +1025,7 @@ "version": "0.0.0-semantic-release", "license": "MIT", "dependencies": { - "@vscode/vscode-languagedetection": "npm:@codingame/vscode-languagedetection@1.0.23", + "@vscode/vscode-languagedetection": "1.0.21", "vscode": "npm:@codingame/monaco-vscode-api@^0.0.0-semantic-release" } }, @@ -1098,6 +1100,7 @@ "version": "0.0.0-semantic-release", "license": "MIT", "dependencies": { + "marked": "~14.0.0", "vscode": "npm:@codingame/monaco-vscode-api@^0.0.0-semantic-release" } }, @@ -1245,13 +1248,13 @@ "version": "0.0.0-semantic-release", "license": "MIT", "dependencies": { - "@xterm/addon-clipboard": "0.2.0-beta.22", - "@xterm/addon-image": "0.9.0-beta.39", - "@xterm/addon-search": "0.16.0-beta.39", - "@xterm/addon-serialize": "0.14.0-beta.39", - "@xterm/addon-unicode11": "0.9.0-beta.39", - "@xterm/addon-webgl": "0.19.0-beta.39", - "@xterm/xterm": "5.6.0-beta.39", + "@xterm/addon-clipboard": "0.2.0-beta.35", + "@xterm/addon-image": "0.9.0-beta.52", + "@xterm/addon-search": "0.16.0-beta.52", + "@xterm/addon-serialize": "0.14.0-beta.52", + "@xterm/addon-unicode11": "0.9.0-beta.52", + "@xterm/addon-webgl": "0.19.0-beta.52", + "@xterm/xterm": "5.6.0-beta.52", "vscode": "npm:@codingame/monaco-vscode-api@^0.0.0-semantic-release" } }, @@ -1272,7 +1275,7 @@ "@codingame/monaco-vscode-files-service-override": "0.0.0-semantic-release", "vscode": "npm:@codingame/monaco-vscode-api@^0.0.0-semantic-release", "vscode-oniguruma": "1.7.0", - "vscode-textmate": "9.0.0" + "vscode-textmate": "9.1.0" } }, "../dist/service-override-theme": { @@ -1297,6 +1300,7 @@ "version": "0.0.0-semantic-release", "license": "MIT", "dependencies": { + "marked": "~14.0.0", "vscode": "npm:@codingame/monaco-vscode-api@^0.0.0-semantic-release" } }, @@ -1366,6 +1370,7 @@ "version": "0.0.0-semantic-release", "license": "MIT", "dependencies": { + "marked": "~14.0.0", "vscode": "npm:@codingame/monaco-vscode-api@^0.0.0-semantic-release" } }, @@ -3104,9 +3109,9 @@ } }, "node_modules/body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dependencies": { "bytes": "3.1.2", "content-type": "~1.0.5", @@ -3116,7 +3121,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -3345,9 +3350,9 @@ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "engines": { "node": ">= 0.8" } @@ -3393,36 +3398,36 @@ } }, "node_modules/express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", + "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.10", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -3447,12 +3452,12 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -3675,9 +3680,12 @@ } }, "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/methods": { "version": "1.1.2", @@ -3802,20 +3810,20 @@ } }, "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", + "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==" }, "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", "dev": true }, "node_modules/postcss": { - "version": "8.4.41", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.41.tgz", - "integrity": "sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==", + "version": "8.4.45", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.45.tgz", + "integrity": "sha512-7KTLTdzdZZYscUc65XmjFiB73vBhBfbPztCYdUNvlaso9PrzjzcmjqBPR0lNGkcVlcO4BjiO5rK/qNz+XAen1Q==", "dev": true, "funding": [ { @@ -3862,11 +3870,11 @@ } }, "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -3970,9 +3978,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dependencies": { "debug": "2.6.9", "depd": "2.0.0", @@ -4005,20 +4013,28 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/send/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" @@ -4063,9 +4079,9 @@ } }, "node_modules/source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -4204,9 +4220,9 @@ } }, "node_modules/typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz", + "integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -4258,14 +4274,14 @@ } }, "node_modules/vite": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.1.tgz", - "integrity": "sha512-1oE6yuNXssjrZdblI9AfBbHCC41nnyoVoEZxQnID6yvQZAFBzxxkqoFLtHUMkYunL8hwOLEjgTuxpkRxvba3kA==", + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.4.tgz", + "integrity": "sha512-RHFCkULitycHVTtelJ6jQLd+KSAAzOgEYorV32R2q++M6COBjKJR6BxqClwp5sf0XaBDjVMuJ9wnNfyAJwjMkA==", "dev": true, "dependencies": { "esbuild": "^0.21.3", - "postcss": "^8.4.41", - "rollup": "^4.13.0" + "postcss": "^8.4.43", + "rollup": "^4.20.0" }, "bin": { "vite": "bin/vite.js" diff --git a/demo/package.json b/demo/package.json index 92a64db9..f9c06120 100644 --- a/demo/package.json +++ b/demo/package.json @@ -23,8 +23,8 @@ "@types/wicg-file-system-access": "^2023.10.5", "@types/ws": "^8.5.12", "ts-node": "^10.9.2", - "typescript": "~5.5.4", - "vite": "~5.4.1" + "typescript": "~5.6.2", + "vite": "~5.4.4" }, "dependencies": { "@codingame/monaco-vscode-accessibility-service-override": "file:../dist/service-override-accessibility", @@ -187,7 +187,7 @@ "@codingame/monaco-vscode-view-common-service-override": "file:../dist/service-override-view-common", "ansi-colors": "^4.1.3", "dockerode": "^4.0.2", - "express": "^4.19.2", + "express": "^4.21.0", "monaco-editor": "file:../dist/editor-api", "vscode": "file:../dist/main", "ws": "^8.18.0" diff --git a/demo/src/debugServer.ts b/demo/src/debugServer.ts index 5ec25359..fa757e95 100644 --- a/demo/src/debugServer.ts +++ b/demo/src/debugServer.ts @@ -142,7 +142,7 @@ const server = http.createServer(app) const wss = new WebSocketServer({ server }) async function findPortFree () { - return new Promise(resolve => { + return await new Promise(resolve => { const srv = net.createServer() srv.listen(0, () => { const port = (srv.address() as net.AddressInfo).port diff --git a/demo/src/setup.common.ts b/demo/src/setup.common.ts index a6762288..35e4136f 100644 --- a/demo/src/setup.common.ts +++ b/demo/src/setup.common.ts @@ -191,12 +191,12 @@ h1 { // Workers export type WorkerLoader = () => Worker const workerLoaders: Partial> = { - editorWorkerService: () => new Worker(new URL('monaco-editor/esm/vs/editor/editor.worker.js', import.meta.url), { type: 'module' }), - textMateWorker: () => new Worker(new URL('@codingame/monaco-vscode-textmate-service-override/worker', import.meta.url), { type: 'module' }), - outputLinkComputer: () => new Worker(new URL('@codingame/monaco-vscode-output-service-override/worker', import.meta.url), { type: 'module' }), - languageDetectionWorkerService: () => new Worker(new URL('@codingame/monaco-vscode-language-detection-worker-service-override/worker', import.meta.url), { type: 'module' }), - notebookEditorWorkerService: () => new Worker(new URL('@codingame/monaco-vscode-notebook-service-override/worker', import.meta.url), { type: 'module' }), - localFileSearchWorker: () => new Worker(new URL('@codingame/monaco-vscode-search-service-override/worker', import.meta.url), { type: 'module' }) + TextEditorWorker: () => new Worker(new URL('monaco-editor/esm/vs/editor/editor.worker.js', import.meta.url), { type: 'module' }), + TextMateWorker: () => new Worker(new URL('@codingame/monaco-vscode-textmate-service-override/worker', import.meta.url), { type: 'module' }), + OutputLinkDetectionWorker: () => new Worker(new URL('@codingame/monaco-vscode-output-service-override/worker', import.meta.url), { type: 'module' }), + LanguageDetectionWorker: () => new Worker(new URL('@codingame/monaco-vscode-language-detection-worker-service-override/worker', import.meta.url), { type: 'module' }), + NotebookEditorWorker: () => new Worker(new URL('@codingame/monaco-vscode-notebook-service-override/worker', import.meta.url), { type: 'module' }), + LocalFileSearchWorker: () => new Worker(new URL('@codingame/monaco-vscode-search-service-override/worker', import.meta.url), { type: 'module' }) } window.MonacoEnvironment = { diff --git a/demo/tsconfig.json b/demo/tsconfig.json index e4d2b79f..1da81f10 100644 --- a/demo/tsconfig.json +++ b/demo/tsconfig.json @@ -23,7 +23,8 @@ }, "typeRoots": [ "./node_modules/@types" - ] + ], + "skipLibCheck": true }, "include": ["src", "vite.config.ts", "vite.netlify.config.ts"] } diff --git a/demo/vite.config.ts b/demo/vite.config.ts index 7f2165d2..d8457dc0 100644 --- a/demo/vite.config.ts +++ b/demo/vite.config.ts @@ -56,7 +56,7 @@ export default defineConfig({ // These 2 lines prevent vite from reloading the whole page when starting a worker (so 2 times in a row after cleaning the vite cache - for the editor then the textmate workers) // it's mainly empirical and probably not the best way, fix me if you find a better way - 'vscode-textmate', 'vscode-oniguruma', '@vscode/vscode-languagedetection' + 'vscode-textmate', 'vscode-oniguruma', '@vscode/vscode-languagedetection', 'marked' ], exclude: [], esbuildOptions: { diff --git a/package-lock.json b/package-lock.json index f67ec00b..fd50b353 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,31 +14,32 @@ "@parcel/watcher": "2.1.0", "@rollup/pluginutils": "^5.1.0", "@vscode/iconv-lite-umd": "0.7.0", - "@vscode/proxy-agent": "^0.22.0", + "@vscode/proxy-agent": "^0.23.0", "@vscode/ripgrep": "^1.15.9", "@vscode/spdlog": "^0.15.0", - "@vscode/vscode-languagedetection": "npm:@codingame/vscode-languagedetection@1.0.23", + "@vscode/vscode-languagedetection": "1.0.21", "@vscode/windows-process-tree": "^0.6.0", "@vscode/windows-registry": "^1.1.0", - "@xterm/addon-clipboard": "0.2.0-beta.22", - "@xterm/addon-image": "0.9.0-beta.39", - "@xterm/addon-search": "0.16.0-beta.39", - "@xterm/addon-serialize": "0.14.0-beta.39", - "@xterm/addon-unicode11": "0.9.0-beta.39", - "@xterm/addon-webgl": "0.19.0-beta.39", - "@xterm/headless": "5.6.0-beta.39", - "@xterm/xterm": "5.6.0-beta.39", + "@xterm/addon-clipboard": "0.2.0-beta.39", + "@xterm/addon-image": "0.9.0-beta.56", + "@xterm/addon-search": "0.16.0-beta.56", + "@xterm/addon-serialize": "0.14.0-beta.56", + "@xterm/addon-unicode11": "0.9.0-beta.56", + "@xterm/addon-webgl": "0.19.0-beta.56", + "@xterm/headless": "5.6.0-beta.56", + "@xterm/xterm": "5.6.0-beta.56", "cookie": "^0.4.0", "css-url-parser": "^1.1.4", "jschardet": "3.1.3", - "kerberos": "2.1.1-alpha.0", + "kerberos": "2.1.1", "keytar": "^7.9.0", + "marked": "~14.0.0", "memfs": "^4.11.1", "mime-types": "^2.1.35", - "node-pty": "1.1.0-beta11", + "node-pty": "1.1.0-beta21", "vscode-oniguruma": "1.7.0", "vscode-regexpp": "^3.1.0", - "vscode-textmate": "9.0.0", + "vscode-textmate": "9.1.0", "yauzl": "^3.0.0", "yazl": "^2.4.3" }, @@ -46,13 +47,13 @@ "@babel/core": "^7.25.2", "@babel/plugin-proposal-class-properties": "^7.18.6", "@babel/plugin-proposal-decorators": "^7.24.7", - "@babel/preset-env": "^7.25.3", + "@babel/preset-env": "^7.25.4", "@babel/preset-typescript": "^7.24.7", "@codingame/commitlint-config-codingame": "^1.1.1", - "@codingame/eslint-config": "^1.1.10", + "@codingame/eslint-config": "^1.2.1", "@codingame/semantic-release-config-github": "^1.0.0", "@codingame/tsconfig": "^1.1.1", - "@commitlint/cli": "^19.4.0", + "@commitlint/cli": "^19.5.0", "@rollup/plugin-commonjs": "^26.0.1", "@rollup/plugin-dynamic-import-vars": "^2.1.2", "@rollup/plugin-json": "^6.1.0", @@ -62,8 +63,7 @@ "@types/mime-types": "^2.1.4", "@types/node": "18.19.8", "@types/semver": "^7.5.8", - "@types/vscode": "~1.92.0", - "@types/vscode-marked": "npm:@types/marked@^3.0.2", + "@types/vscode": "~1.93.0", "@types/vscode-semver": "npm:@types/semver@=5.5.0", "@types/yargs": "^17.0.33", "@types/yauzl": "^2.10.3", @@ -85,7 +85,7 @@ "pascal-case": "^3.1.2", "patch-package": "^8.0.0", "recast": "^0.23.9", - "rollup": "^4.21.0", + "rollup": "^4.21.3", "rollup-plugin-copy": "^3.5.0", "rollup-plugin-dts": "^6.1.1", "rollup-plugin-styles": "^4.0.0", @@ -93,12 +93,11 @@ "semver": "^7.6.3", "ts-morph": "^22.0.0", "ts-node": "^10.9.2", - "type-fest": "^4.25.0", - "typescript": "^5.5.4", - "vscode-marked": "npm:marked@=3.0.2", + "type-fest": "^4.26.1", + "typescript": "^5.6.2", "vscode-semver": "npm:semver@=5.5.0", "yargs": "^17.7.2", - "zx": "^8.1.4" + "zx": "^8.1.6" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -137,9 +136,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.2.tgz", - "integrity": "sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.4.tgz", + "integrity": "sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -185,12 +184,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.0.tgz", - "integrity": "sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz", + "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==", "dev": true, "dependencies": { - "@babel/types": "^7.25.0", + "@babel/types": "^7.25.6", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -250,19 +249,17 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.7.tgz", - "integrity": "sha512-kTkaDl7c9vO80zeX1rJxnuRpEsD5tA81yh11X1gQo+PhSti3JS+7qeZo9U4RHobKRiFPKaGK3svUAeb8D0Q7eg==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.4.tgz", + "integrity": "sha512-ro/bFs3/84MDgDmMwbcHgDa8/E6J3QKNTk4xJJnVeFtGE+tL0K26E3pNxhYz2b67fJpt7Aphw5XcploKXuCvCQ==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.24.7", - "@babel/helper-environment-visitor": "^7.24.7", - "@babel/helper-function-name": "^7.24.7", - "@babel/helper-member-expression-to-functions": "^7.24.7", + "@babel/helper-member-expression-to-functions": "^7.24.8", "@babel/helper-optimise-call-expression": "^7.24.7", - "@babel/helper-replace-supers": "^7.24.7", + "@babel/helper-replace-supers": "^7.25.0", "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", - "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/traverse": "^7.25.4", "semver": "^6.3.1" }, "engines": { @@ -308,9 +305,9 @@ } }, "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.1.tgz", - "integrity": "sha512-o7SDgTJuvx5vLKD6SFvkydkSMBvahDKGiNJzG22IZYXhiqoe9efY7zocICBgzHV4IRg5wdgl2nEL/tulKIEIbA==", + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz", + "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==", "dev": true, "dependencies": { "@babel/helper-compilation-targets": "^7.22.6", @@ -323,31 +320,6 @@ "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", - "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", - "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", - "dev": true, - "dependencies": { - "@babel/template": "^7.24.7", - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-member-expression-to-functions": { "version": "7.24.8", "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.8.tgz", @@ -473,18 +445,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", - "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-string-parser": { "version": "7.24.8", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", @@ -555,12 +515,12 @@ } }, "node_modules/@babel/parser": { - "version": "7.25.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.3.tgz", - "integrity": "sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", + "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", "dev": true, "dependencies": { - "@babel/types": "^7.25.2" + "@babel/types": "^7.25.6" }, "bin": { "parser": "bin/babel-parser.js" @@ -990,15 +950,15 @@ } }, "node_modules/@babel/plugin-transform-async-generator-functions": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.0.tgz", - "integrity": "sha512-uaIi2FdqzjpAMvVqvB51S42oC2JEVgh0LDsGfZVDysWE8LrJtQC2jvKmOqEYThKyB7bDEb7BP1GYWDm7tABA0Q==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.4.tgz", + "integrity": "sha512-jz8cV2XDDTqjKPwVPJBIjORVEmSGYhdRa8e5k5+vN+uwcjSrSxUaebBRa4ko1jqNF2uxyg8G6XYk30Jv285xzg==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.24.8", "@babel/helper-remap-async-to-generator": "^7.25.0", "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/traverse": "^7.25.0" + "@babel/traverse": "^7.25.4" }, "engines": { "node": ">=6.9.0" @@ -1055,13 +1015,13 @@ } }, "node_modules/@babel/plugin-transform-class-properties": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.7.tgz", - "integrity": "sha512-vKbfawVYayKcSeSR5YYzzyXvsDFWU2mD8U5TFeXtbCPLFUqe7GyCgvO6XDHzje862ODrOwy6WCPmKeWHbCFJ4w==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.4.tgz", + "integrity": "sha512-nZeZHyCWPfjkdU5pA/uHiTaDAFUEqkpzf1YoQT2NeSynCGYq9rxfyI3XpQbfx/a0hSnFH6TGlEXvae5Vi7GD8g==", "dev": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.24.7", - "@babel/helper-plugin-utils": "^7.24.7" + "@babel/helper-create-class-features-plugin": "^7.25.4", + "@babel/helper-plugin-utils": "^7.24.8" }, "engines": { "node": ">=6.9.0" @@ -1088,16 +1048,16 @@ } }, "node_modules/@babel/plugin-transform-classes": { - "version": "7.25.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.0.tgz", - "integrity": "sha512-xyi6qjr/fYU304fiRwFbekzkqVJZ6A7hOjWZd+89FVcBqPV3S9Wuozz82xdpLspckeaafntbzglaW4pqpzvtSw==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.4.tgz", + "integrity": "sha512-oexUfaQle2pF/b6E0dwsxQtAol9TLSO88kQvym6HHBWFliV2lGdrPieX+WgMRLSJDVzdYywk7jXbLPuO2KLTLg==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.24.7", - "@babel/helper-compilation-targets": "^7.24.8", + "@babel/helper-compilation-targets": "^7.25.2", "@babel/helper-plugin-utils": "^7.24.8", "@babel/helper-replace-supers": "^7.25.0", - "@babel/traverse": "^7.25.0", + "@babel/traverse": "^7.25.4", "globals": "^11.1.0" }, "engines": { @@ -1541,13 +1501,13 @@ } }, "node_modules/@babel/plugin-transform-private-methods": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.7.tgz", - "integrity": "sha512-COTCOkG2hn4JKGEKBADkA8WNb35TGkkRbI5iT845dB+NyqgO8Hn+ajPbSnIQznneJTa3d30scb6iz/DhH8GsJQ==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.4.tgz", + "integrity": "sha512-ao8BG7E2b/URaUQGqN3Tlsg+M3KlHY6rJ1O1gXAEUnZoyNQnvKyH87Kfg+FoxSeyWUB8ISZZsC91C44ZuBFytw==", "dev": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.24.7", - "@babel/helper-plugin-utils": "^7.24.7" + "@babel/helper-create-class-features-plugin": "^7.25.4", + "@babel/helper-plugin-utils": "^7.24.8" }, "engines": { "node": ">=6.9.0" @@ -1762,13 +1722,13 @@ } }, "node_modules/@babel/plugin-transform-unicode-sets-regex": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.7.tgz", - "integrity": "sha512-2G8aAvF4wy1w/AGZkemprdGMRg5o6zPNhbHVImRz3lss55TYCBd6xStN19rt8XJHq20sqV0JbyWjOWwQRwV/wg==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.4.tgz", + "integrity": "sha512-qesBxiWkgN1Q+31xUE9RcMk79eOXXDCv6tfyGMRSs4RGlioSg2WVyQAm07k726cSE56pa+Kb0y9epX2qaXzTvA==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.24.7", - "@babel/helper-plugin-utils": "^7.24.7" + "@babel/helper-create-regexp-features-plugin": "^7.25.2", + "@babel/helper-plugin-utils": "^7.24.8" }, "engines": { "node": ">=6.9.0" @@ -1778,12 +1738,12 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.25.3", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.3.tgz", - "integrity": "sha512-QsYW7UeAaXvLPX9tdVliMJE7MD7M6MLYVTovRTIwhoYQVFHR1rM4wO8wqAezYi3/BpSD+NzVCZ69R6smWiIi8g==", + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.4.tgz", + "integrity": "sha512-W9Gyo+KmcxjGahtt3t9fb14vFRWvPpu5pT6GBlovAK6BTBcxgjfVMSQCfJl4oi35ODrxP6xx2Wr8LNST57Mraw==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.25.2", + "@babel/compat-data": "^7.25.4", "@babel/helper-compilation-targets": "^7.25.2", "@babel/helper-plugin-utils": "^7.24.8", "@babel/helper-validator-option": "^7.24.8", @@ -1812,13 +1772,13 @@ "@babel/plugin-syntax-top-level-await": "^7.14.5", "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", "@babel/plugin-transform-arrow-functions": "^7.24.7", - "@babel/plugin-transform-async-generator-functions": "^7.25.0", + "@babel/plugin-transform-async-generator-functions": "^7.25.4", "@babel/plugin-transform-async-to-generator": "^7.24.7", "@babel/plugin-transform-block-scoped-functions": "^7.24.7", "@babel/plugin-transform-block-scoping": "^7.25.0", - "@babel/plugin-transform-class-properties": "^7.24.7", + "@babel/plugin-transform-class-properties": "^7.25.4", "@babel/plugin-transform-class-static-block": "^7.24.7", - "@babel/plugin-transform-classes": "^7.25.0", + "@babel/plugin-transform-classes": "^7.25.4", "@babel/plugin-transform-computed-properties": "^7.24.7", "@babel/plugin-transform-destructuring": "^7.24.8", "@babel/plugin-transform-dotall-regex": "^7.24.7", @@ -1846,7 +1806,7 @@ "@babel/plugin-transform-optional-catch-binding": "^7.24.7", "@babel/plugin-transform-optional-chaining": "^7.24.8", "@babel/plugin-transform-parameters": "^7.24.7", - "@babel/plugin-transform-private-methods": "^7.24.7", + "@babel/plugin-transform-private-methods": "^7.25.4", "@babel/plugin-transform-private-property-in-object": "^7.24.7", "@babel/plugin-transform-property-literals": "^7.24.7", "@babel/plugin-transform-regenerator": "^7.24.7", @@ -1859,10 +1819,10 @@ "@babel/plugin-transform-unicode-escapes": "^7.24.7", "@babel/plugin-transform-unicode-property-regex": "^7.24.7", "@babel/plugin-transform-unicode-regex": "^7.24.7", - "@babel/plugin-transform-unicode-sets-regex": "^7.24.7", + "@babel/plugin-transform-unicode-sets-regex": "^7.25.4", "@babel/preset-modules": "0.1.6-no-external-plugins", "babel-plugin-polyfill-corejs2": "^0.4.10", - "babel-plugin-polyfill-corejs3": "^0.10.4", + "babel-plugin-polyfill-corejs3": "^0.10.6", "babel-plugin-polyfill-regenerator": "^0.6.1", "core-js-compat": "^3.37.1", "semver": "^6.3.1" @@ -1949,16 +1909,16 @@ } }, "node_modules/@babel/traverse": { - "version": "7.25.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.3.tgz", - "integrity": "sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.6.tgz", + "integrity": "sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.25.0", - "@babel/parser": "^7.25.3", + "@babel/generator": "^7.25.6", + "@babel/parser": "^7.25.6", "@babel/template": "^7.25.0", - "@babel/types": "^7.25.2", + "@babel/types": "^7.25.6", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -1967,9 +1927,9 @@ } }, "node_modules/@babel/types": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.2.tgz", - "integrity": "sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz", + "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.24.8", @@ -1991,9 +1951,9 @@ } }, "node_modules/@codingame/eslint-config": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/@codingame/eslint-config/-/eslint-config-1.1.10.tgz", - "integrity": "sha512-0QQAGlgjAsW1azbrtigPEeAgD/eW1ijop/uZsYzYhCbyRiduW447uULbMFjI4vV4ujohzLj2w+uP1IkodTQmuw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@codingame/eslint-config/-/eslint-config-1.2.1.tgz", + "integrity": "sha512-Grm3zLqmaybzfGbYX6J30EPOeDe+h2mBswcio/LL8hOFJolkXfccXYQFKOoA50iPxZRE6gqGJ898Er+GAMKrxA==", "dev": true, "peerDependencies": { "@typescript-eslint/eslint-plugin": ">=5.x", @@ -2042,17 +2002,17 @@ } }, "node_modules/@commitlint/cli": { - "version": "19.4.0", - "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-19.4.0.tgz", - "integrity": "sha512-sJX4J9UioVwZHq7JWM9tjT5bgWYaIN3rC4FP7YwfEwBYiIO+wMyRttRvQLNkow0vCdM0D67r9NEWU0Ui03I4Eg==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-19.5.0.tgz", + "integrity": "sha512-gaGqSliGwB86MDmAAKAtV9SV1SHdmN8pnGq4EJU4+hLisQ7IFfx4jvU4s+pk6tl0+9bv6yT+CaZkufOinkSJIQ==", "dev": true, "dependencies": { - "@commitlint/format": "^19.3.0", - "@commitlint/lint": "^19.2.2", - "@commitlint/load": "^19.4.0", - "@commitlint/read": "^19.4.0", - "@commitlint/types": "^19.0.3", - "execa": "^8.0.1", + "@commitlint/format": "^19.5.0", + "@commitlint/lint": "^19.5.0", + "@commitlint/load": "^19.5.0", + "@commitlint/read": "^19.5.0", + "@commitlint/types": "^19.5.0", + "tinyexec": "^0.3.0", "yargs": "^17.0.0" }, "bin": { @@ -2076,12 +2036,12 @@ } }, "node_modules/@commitlint/config-validator": { - "version": "19.0.3", - "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-19.0.3.tgz", - "integrity": "sha512-2D3r4PKjoo59zBc2auodrSCaUnCSALCx54yveOFwwP/i2kfEAQrygwOleFWswLqK0UL/F9r07MFi5ev2ohyM4Q==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-19.5.0.tgz", + "integrity": "sha512-CHtj92H5rdhKt17RmgALhfQt95VayrUo2tSqY9g2w+laAXyk7K/Ef6uPm9tn5qSIwSmrLjKaXK9eiNuxmQrDBw==", "dev": true, "dependencies": { - "@commitlint/types": "^19.0.3", + "@commitlint/types": "^19.5.0", "ajv": "^8.11.0" }, "engines": { @@ -2089,12 +2049,12 @@ } }, "node_modules/@commitlint/ensure": { - "version": "19.0.3", - "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-19.0.3.tgz", - "integrity": "sha512-SZEpa/VvBLoT+EFZVb91YWbmaZ/9rPH3ESrINOl0HD2kMYsjvl0tF7nMHh0EpTcv4+gTtZBAe1y/SS6/OhfZzQ==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-19.5.0.tgz", + "integrity": "sha512-Kv0pYZeMrdg48bHFEU5KKcccRfKmISSm9MvgIgkpI6m+ohFTB55qZlBW6eYqh/XDfRuIO0x4zSmvBjmOwWTwkg==", "dev": true, "dependencies": { - "@commitlint/types": "^19.0.3", + "@commitlint/types": "^19.5.0", "lodash.camelcase": "^4.3.0", "lodash.kebabcase": "^4.1.1", "lodash.snakecase": "^4.1.1", @@ -2106,21 +2066,21 @@ } }, "node_modules/@commitlint/execute-rule": { - "version": "19.0.0", - "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-19.0.0.tgz", - "integrity": "sha512-mtsdpY1qyWgAO/iOK0L6gSGeR7GFcdW7tIjcNFxcWkfLDF5qVbPHKuGATFqRMsxcO8OUKNj0+3WOHB7EHm4Jdw==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-19.5.0.tgz", + "integrity": "sha512-aqyGgytXhl2ejlk+/rfgtwpPexYyri4t8/n4ku6rRJoRhGZpLFMqrZ+YaubeGysCP6oz4mMA34YSTaSOKEeNrg==", "dev": true, "engines": { "node": ">=v18" } }, "node_modules/@commitlint/format": { - "version": "19.3.0", - "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-19.3.0.tgz", - "integrity": "sha512-luguk5/aF68HiF4H23ACAfk8qS8AHxl4LLN5oxPc24H+2+JRPsNr1OS3Gaea0CrH7PKhArBMKBz5RX9sA5NtTg==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-19.5.0.tgz", + "integrity": "sha512-yNy088miE52stCI3dhG/vvxFo9e4jFkU1Mj3xECfzp/bIS/JUay4491huAlVcffOoMK1cd296q0W92NlER6r3A==", "dev": true, "dependencies": { - "@commitlint/types": "^19.0.3", + "@commitlint/types": "^19.5.0", "chalk": "^5.3.0" }, "engines": { @@ -2140,12 +2100,12 @@ } }, "node_modules/@commitlint/is-ignored": { - "version": "19.2.2", - "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-19.2.2.tgz", - "integrity": "sha512-eNX54oXMVxncORywF4ZPFtJoBm3Tvp111tg1xf4zWXGfhBPKpfKG6R+G3G4v5CPlRROXpAOpQ3HMhA9n1Tck1g==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-19.5.0.tgz", + "integrity": "sha512-0XQ7Llsf9iL/ANtwyZ6G0NGp5Y3EQ8eDQSxv/SRcfJ0awlBY4tHFAvwWbw66FVUaWICH7iE5en+FD9TQsokZ5w==", "dev": true, "dependencies": { - "@commitlint/types": "^19.0.3", + "@commitlint/types": "^19.5.0", "semver": "^7.6.0" }, "engines": { @@ -2153,30 +2113,30 @@ } }, "node_modules/@commitlint/lint": { - "version": "19.2.2", - "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-19.2.2.tgz", - "integrity": "sha512-xrzMmz4JqwGyKQKTpFzlN0dx0TAiT7Ran1fqEBgEmEj+PU98crOFtysJgY+QdeSagx6EDRigQIXJVnfrI0ratA==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-19.5.0.tgz", + "integrity": "sha512-cAAQwJcRtiBxQWO0eprrAbOurtJz8U6MgYqLz+p9kLElirzSCc0vGMcyCaA1O7AqBuxo11l1XsY3FhOFowLAAg==", "dev": true, "dependencies": { - "@commitlint/is-ignored": "^19.2.2", - "@commitlint/parse": "^19.0.3", - "@commitlint/rules": "^19.0.3", - "@commitlint/types": "^19.0.3" + "@commitlint/is-ignored": "^19.5.0", + "@commitlint/parse": "^19.5.0", + "@commitlint/rules": "^19.5.0", + "@commitlint/types": "^19.5.0" }, "engines": { "node": ">=v18" } }, "node_modules/@commitlint/load": { - "version": "19.4.0", - "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-19.4.0.tgz", - "integrity": "sha512-I4lCWaEZYQJ1y+Y+gdvbGAx9pYPavqZAZ3/7/8BpWh+QjscAn8AjsUpLV2PycBsEx7gupq5gM4BViV9xwTIJuw==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-19.5.0.tgz", + "integrity": "sha512-INOUhkL/qaKqwcTUvCE8iIUf5XHsEPCLY9looJ/ipzi7jtGhgmtH7OOFiNvwYgH7mA8osUWOUDV8t4E2HAi4xA==", "dev": true, "dependencies": { - "@commitlint/config-validator": "^19.0.3", - "@commitlint/execute-rule": "^19.0.0", - "@commitlint/resolve-extends": "^19.1.0", - "@commitlint/types": "^19.0.3", + "@commitlint/config-validator": "^19.5.0", + "@commitlint/execute-rule": "^19.5.0", + "@commitlint/resolve-extends": "^19.5.0", + "@commitlint/types": "^19.5.0", "chalk": "^5.3.0", "cosmiconfig": "^9.0.0", "cosmiconfig-typescript-loader": "^5.0.0", @@ -2201,21 +2161,21 @@ } }, "node_modules/@commitlint/message": { - "version": "19.0.0", - "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-19.0.0.tgz", - "integrity": "sha512-c9czf6lU+9oF9gVVa2lmKaOARJvt4soRsVmbR7Njwp9FpbBgste5i7l/2l5o8MmbwGh4yE1snfnsy2qyA2r/Fw==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-19.5.0.tgz", + "integrity": "sha512-R7AM4YnbxN1Joj1tMfCyBryOC5aNJBdxadTZkuqtWi3Xj0kMdutq16XQwuoGbIzL2Pk62TALV1fZDCv36+JhTQ==", "dev": true, "engines": { "node": ">=v18" } }, "node_modules/@commitlint/parse": { - "version": "19.0.3", - "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-19.0.3.tgz", - "integrity": "sha512-Il+tNyOb8VDxN3P6XoBBwWJtKKGzHlitEuXA5BP6ir/3loWlsSqDr5aecl6hZcC/spjq4pHqNh0qPlfeWu38QA==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-19.5.0.tgz", + "integrity": "sha512-cZ/IxfAlfWYhAQV0TwcbdR1Oc0/r0Ik1GEessDJ3Lbuma/MRO8FRQX76eurcXtmhJC//rj52ZSZuXUg0oIX0Fw==", "dev": true, "dependencies": { - "@commitlint/types": "^19.0.3", + "@commitlint/types": "^19.5.0", "conventional-changelog-angular": "^7.0.0", "conventional-commits-parser": "^5.0.0" }, @@ -2224,29 +2184,29 @@ } }, "node_modules/@commitlint/read": { - "version": "19.4.0", - "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-19.4.0.tgz", - "integrity": "sha512-r95jLOEZzKDakXtnQub+zR3xjdnrl2XzerPwm7ch1/cc5JGq04tyaNpa6ty0CRCWdVrk4CZHhqHozb8yZwy2+g==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-19.5.0.tgz", + "integrity": "sha512-TjS3HLPsLsxFPQj6jou8/CZFAmOP2y+6V4PGYt3ihbQKTY1Jnv0QG28WRKl/d1ha6zLODPZqsxLEov52dhR9BQ==", "dev": true, "dependencies": { - "@commitlint/top-level": "^19.0.0", - "@commitlint/types": "^19.0.3", - "execa": "^8.0.1", + "@commitlint/top-level": "^19.5.0", + "@commitlint/types": "^19.5.0", "git-raw-commits": "^4.0.0", - "minimist": "^1.2.8" + "minimist": "^1.2.8", + "tinyexec": "^0.3.0" }, "engines": { "node": ">=v18" } }, "node_modules/@commitlint/resolve-extends": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-19.1.0.tgz", - "integrity": "sha512-z2riI+8G3CET5CPgXJPlzftH+RiWYLMYv4C9tSLdLXdr6pBNimSKukYP9MS27ejmscqCTVA4almdLh0ODD2KYg==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-19.5.0.tgz", + "integrity": "sha512-CU/GscZhCUsJwcKTJS9Ndh3AKGZTNFIOoQB2n8CmFnizE0VnEuJoum+COW+C1lNABEeqk6ssfc1Kkalm4bDklA==", "dev": true, "dependencies": { - "@commitlint/config-validator": "^19.0.3", - "@commitlint/types": "^19.0.3", + "@commitlint/config-validator": "^19.5.0", + "@commitlint/types": "^19.5.0", "global-directory": "^4.0.1", "import-meta-resolve": "^4.0.0", "lodash.mergewith": "^4.6.2", @@ -2257,34 +2217,33 @@ } }, "node_modules/@commitlint/rules": { - "version": "19.0.3", - "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-19.0.3.tgz", - "integrity": "sha512-TspKb9VB6svklxNCKKwxhELn7qhtY1rFF8ls58DcFd0F97XoG07xugPjjbVnLqmMkRjZDbDIwBKt9bddOfLaPw==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-19.5.0.tgz", + "integrity": "sha512-hDW5TPyf/h1/EufSHEKSp6Hs+YVsDMHazfJ2azIk9tHPXS6UqSz1dIRs1gpqS3eMXgtkT7JH6TW4IShdqOwhAw==", "dev": true, "dependencies": { - "@commitlint/ensure": "^19.0.3", - "@commitlint/message": "^19.0.0", - "@commitlint/to-lines": "^19.0.0", - "@commitlint/types": "^19.0.3", - "execa": "^8.0.1" + "@commitlint/ensure": "^19.5.0", + "@commitlint/message": "^19.5.0", + "@commitlint/to-lines": "^19.5.0", + "@commitlint/types": "^19.5.0" }, "engines": { "node": ">=v18" } }, "node_modules/@commitlint/to-lines": { - "version": "19.0.0", - "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-19.0.0.tgz", - "integrity": "sha512-vkxWo+VQU5wFhiP9Ub9Sre0FYe019JxFikrALVoD5UGa8/t3yOJEpEhxC5xKiENKKhUkTpEItMTRAjHw2SCpZw==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-19.5.0.tgz", + "integrity": "sha512-R772oj3NHPkodOSRZ9bBVNq224DOxQtNef5Pl8l2M8ZnkkzQfeSTr4uxawV2Sd3ui05dUVzvLNnzenDBO1KBeQ==", "dev": true, "engines": { "node": ">=v18" } }, "node_modules/@commitlint/top-level": { - "version": "19.0.0", - "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-19.0.0.tgz", - "integrity": "sha512-KKjShd6u1aMGNkCkaX4aG1jOGdn7f8ZI8TR1VEuNqUOjWTOdcDSsmglinglJ18JTjuBX5I1PtjrhQCRcixRVFQ==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-19.5.0.tgz", + "integrity": "sha512-IP1YLmGAk0yWrImPRRc578I3dDUI5A2UBJx9FbSOjxe9sTlzFiwVJ+zeMLgAtHMtGZsC8LUnzmW1qRemkFU4ng==", "dev": true, "dependencies": { "find-up": "^7.0.0" @@ -2377,9 +2336,9 @@ } }, "node_modules/@commitlint/types": { - "version": "19.0.3", - "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-19.0.3.tgz", - "integrity": "sha512-tpyc+7i6bPG9mvaBbtKUeghfyZSDgWquIDfMgqYtTbmZ9Y9VzEm2je9EYcQ0aoz5o7NvGS+rcDec93yO08MHYA==", + "version": "19.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-19.5.0.tgz", + "integrity": "sha512-DSHae2obMSMkAtTBSOulg5X7/z+rGLxcXQIkg3OmWvY6wifojge5uVMydfhUvs7yQj+V7jNmRZ2Xzl8GJyqRgg==", "dev": true, "dependencies": { "@types/conventional-commits-parser": "^5.0.0", @@ -3256,9 +3215,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.0.tgz", - "integrity": "sha512-WTWD8PfoSAJ+qL87lE7votj3syLavxunWhzCnx3XFxFiI/BA/r3X7MUM8dVrH8rb2r4AiO8jJsr3ZjdaftmnfA==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.3.tgz", + "integrity": "sha512-MmKSfaB9GX+zXl6E8z4koOr/xU63AMVleLEa64v7R0QF/ZloMs5vcD1sHgM64GXXS1csaJutG+ddtzcueI/BLg==", "cpu": [ "arm" ], @@ -3269,9 +3228,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.21.0.tgz", - "integrity": "sha512-a1sR2zSK1B4eYkiZu17ZUZhmUQcKjk2/j9Me2IDjk1GHW7LB5Z35LEzj9iJch6gtUfsnvZs1ZNyDW2oZSThrkA==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.21.3.tgz", + "integrity": "sha512-zrt8ecH07PE3sB4jPOggweBjJMzI1JG5xI2DIsUbkA+7K+Gkjys6eV7i9pOenNSDJH3eOr/jLb/PzqtmdwDq5g==", "cpu": [ "arm64" ], @@ -3282,9 +3241,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.21.0.tgz", - "integrity": "sha512-zOnKWLgDld/svhKO5PD9ozmL6roy5OQ5T4ThvdYZLpiOhEGY+dp2NwUmxK0Ld91LrbjrvtNAE0ERBwjqhZTRAA==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.21.3.tgz", + "integrity": "sha512-P0UxIOrKNBFTQaXTxOH4RxuEBVCgEA5UTNV6Yz7z9QHnUJ7eLX9reOd/NYMO3+XZO2cco19mXTxDMXxit4R/eQ==", "cpu": [ "arm64" ], @@ -3295,9 +3254,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.21.0.tgz", - "integrity": "sha512-7doS8br0xAkg48SKE2QNtMSFPFUlRdw9+votl27MvT46vo44ATBmdZdGysOevNELmZlfd+NEa0UYOA8f01WSrg==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.21.3.tgz", + "integrity": "sha512-L1M0vKGO5ASKntqtsFEjTq/fD91vAqnzeaF6sfNAy55aD+Hi2pBI5DKwCO+UNDQHWsDViJLqshxOahXyLSh3EA==", "cpu": [ "x64" ], @@ -3308,9 +3267,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.21.0.tgz", - "integrity": "sha512-pWJsfQjNWNGsoCq53KjMtwdJDmh/6NubwQcz52aEwLEuvx08bzcy6tOUuawAOncPnxz/3siRtd8hiQ32G1y8VA==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.21.3.tgz", + "integrity": "sha512-btVgIsCjuYFKUjopPoWiDqmoUXQDiW2A4C3Mtmp5vACm7/GnyuprqIDPNczeyR5W8rTXEbkmrJux7cJmD99D2g==", "cpu": [ "arm" ], @@ -3321,9 +3280,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.21.0.tgz", - "integrity": "sha512-efRIANsz3UHZrnZXuEvxS9LoCOWMGD1rweciD6uJQIx2myN3a8Im1FafZBzh7zk1RJ6oKcR16dU3UPldaKd83w==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.21.3.tgz", + "integrity": "sha512-zmjbSphplZlau6ZTkxd3+NMtE4UKVy7U4aVFMmHcgO5CUbw17ZP6QCgyxhzGaU/wFFdTfiojjbLG3/0p9HhAqA==", "cpu": [ "arm" ], @@ -3334,9 +3293,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.21.0.tgz", - "integrity": "sha512-ZrPhydkTVhyeGTW94WJ8pnl1uroqVHM3j3hjdquwAcWnmivjAwOYjTEAuEDeJvGX7xv3Z9GAvrBkEzCgHq9U1w==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.21.3.tgz", + "integrity": "sha512-nSZfcZtAnQPRZmUkUQwZq2OjQciR6tEoJaZVFvLHsj0MF6QhNMg0fQ6mUOsiCUpTqxTx0/O6gX0V/nYc7LrgPw==", "cpu": [ "arm64" ], @@ -3347,9 +3306,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.21.0.tgz", - "integrity": "sha512-cfaupqd+UEFeURmqNP2eEvXqgbSox/LHOyN9/d2pSdV8xTrjdg3NgOFJCtc1vQ/jEke1qD0IejbBfxleBPHnPw==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.21.3.tgz", + "integrity": "sha512-MnvSPGO8KJXIMGlQDYfvYS3IosFN2rKsvxRpPO2l2cum+Z3exiExLwVU+GExL96pn8IP+GdH8Tz70EpBhO0sIQ==", "cpu": [ "arm64" ], @@ -3360,9 +3319,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.21.0.tgz", - "integrity": "sha512-ZKPan1/RvAhrUylwBXC9t7B2hXdpb/ufeu22pG2psV7RN8roOfGurEghw1ySmX/CmDDHNTDDjY3lo9hRlgtaHg==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.21.3.tgz", + "integrity": "sha512-+W+p/9QNDr2vE2AXU0qIy0qQE75E8RTwTwgqS2G5CRQ11vzq0tbnfBd6brWhS9bCRjAjepJe2fvvkvS3dno+iw==", "cpu": [ "ppc64" ], @@ -3373,9 +3332,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.21.0.tgz", - "integrity": "sha512-H1eRaCwd5E8eS8leiS+o/NqMdljkcb1d6r2h4fKSsCXQilLKArq6WS7XBLDu80Yz+nMqHVFDquwcVrQmGr28rg==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.21.3.tgz", + "integrity": "sha512-yXH6K6KfqGXaxHrtr+Uoy+JpNlUlI46BKVyonGiaD74ravdnF9BUNC+vV+SIuB96hUMGShhKV693rF9QDfO6nQ==", "cpu": [ "riscv64" ], @@ -3386,9 +3345,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.21.0.tgz", - "integrity": "sha512-zJ4hA+3b5tu8u7L58CCSI0A9N1vkfwPhWd/puGXwtZlsB5bTkwDNW/+JCU84+3QYmKpLi+XvHdmrlwUwDA6kqw==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.21.3.tgz", + "integrity": "sha512-R8cwY9wcnApN/KDYWTH4gV/ypvy9yZUHlbJvfaiXSB48JO3KpwSpjOGqO4jnGkLDSk1hgjYkTbTt6Q7uvPf8eg==", "cpu": [ "s390x" ], @@ -3399,9 +3358,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.21.0.tgz", - "integrity": "sha512-e2hrvElFIh6kW/UNBQK/kzqMNY5mO+67YtEh9OA65RM5IJXYTWiXjX6fjIiPaqOkBthYF1EqgiZ6OXKcQsM0hg==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.21.3.tgz", + "integrity": "sha512-kZPbX/NOPh0vhS5sI+dR8L1bU2cSO9FgxwM8r7wHzGydzfSjLRCFAT87GR5U9scj2rhzN3JPYVC7NoBbl4FZ0g==", "cpu": [ "x64" ], @@ -3412,9 +3371,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.21.0.tgz", - "integrity": "sha512-1vvmgDdUSebVGXWX2lIcgRebqfQSff0hMEkLJyakQ9JQUbLDkEaMsPTLOmyccyC6IJ/l3FZuJbmrBw/u0A0uCQ==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.21.3.tgz", + "integrity": "sha512-S0Yq+xA1VEH66uiMNhijsWAafffydd2X5b77eLHfRmfLsRSpbiAWiRHV6DEpz6aOToPsgid7TI9rGd6zB1rhbg==", "cpu": [ "x64" ], @@ -3425,9 +3384,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.21.0.tgz", - "integrity": "sha512-s5oFkZ/hFcrlAyBTONFY1TWndfyre1wOMwU+6KCpm/iatybvrRgmZVM+vCFwxmC5ZhdlgfE0N4XorsDpi7/4XQ==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.21.3.tgz", + "integrity": "sha512-9isNzeL34yquCPyerog+IMCNxKR8XYmGd0tHSV+OVx0TmE0aJOo9uw4fZfUuk2qxobP5sug6vNdZR6u7Mw7Q+Q==", "cpu": [ "arm64" ], @@ -3438,9 +3397,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.21.0.tgz", - "integrity": "sha512-G9+TEqRnAA6nbpqyUqgTiopmnfgnMkR3kMukFBDsiyy23LZvUCpiUwjTRx6ezYCjJODXrh52rBR9oXvm+Fp5wg==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.21.3.tgz", + "integrity": "sha512-nMIdKnfZfzn1Vsk+RuOvl43ONTZXoAPUUxgcU0tXooqg4YrAqzfKzVenqqk2g5efWh46/D28cKFrOzDSW28gTA==", "cpu": [ "ia32" ], @@ -3451,9 +3410,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.0.tgz", - "integrity": "sha512-2jsCDZwtQvRhejHLfZ1JY6w6kEuEtfF9nzYsZxzSlNVKDX+DpsDJ+Rbjkm74nvg2rdx0gwBS+IMdvwJuq3S9pQ==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.3.tgz", + "integrity": "sha512-fOvu7PCQjAj4eWDEuD8Xz5gpzFqXzGlxHZozHP4b9Jxv9APtdxL6STqztDzMLuRXEc4UpXGGhx029Xgm91QBeA==", "cpu": [ "x64" ], @@ -3580,6 +3539,18 @@ "semantic-release": ">=20.1.0" } }, + "node_modules/@sindresorhus/is": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, "node_modules/@sindresorhus/merge-streams": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.1.0.tgz", @@ -3765,16 +3736,9 @@ "dev": true }, "node_modules/@types/vscode": { - "version": "1.92.0", - "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.92.0.tgz", - "integrity": "sha512-DcZoCj17RXlzB4XJ7IfKdPTcTGDLYvTOcTNkvtjXWF+K2TlKzHHkBEXNWQRpBIXixNEUgx39cQeTFunY0E2msw==", - "dev": true - }, - "node_modules/@types/vscode-marked": { - "name": "@types/marked", - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/marked/-/marked-3.0.4.tgz", - "integrity": "sha512-fzrd0O45A0hZl3+Fs3+BcuD3SF+kEkV0KHBXrSPi1B73PnDJI9wcUkpA8JoujFKqgyOijeKgIllFYsgJFhNB5g==", + "version": "1.93.0", + "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.93.0.tgz", + "integrity": "sha512-kUK6jAHSR5zY8ps42xuW89NLcBpw1kOabah7yv38J8MyiYuOHxLQBi0e7zeXbQgVefDy/mZZetqEFC+Fl5eIEQ==", "dev": true }, "node_modules/@types/vscode-semver": { @@ -4034,9 +3998,9 @@ "integrity": "sha512-bRRFxLfg5dtAyl5XyiVWz/ZBPahpOpPrNYnnHpOpUZvam4tKH35wdhP4Kj6PbM0+KdliOsPzbGWpkxcdpNB/sg==" }, "node_modules/@vscode/proxy-agent": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/@vscode/proxy-agent/-/proxy-agent-0.22.0.tgz", - "integrity": "sha512-TQrv456pbrjmD6G+iOoXE1Mflm+8Ic/Kny4QU7ioiYe2+0HisvqzJM/CUa3Am5SWrNjMbntTHISjgmSaSlorrA==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@vscode/proxy-agent/-/proxy-agent-0.23.0.tgz", + "integrity": "sha512-6lgxRrzURdWwBkk6TaB0+EYYjIWQXxry6GlVO0toBN8amIyVd3I7hLPKU9Xf+SOrLIrbdU0CLkmTOBHpPJLf/g==", "dependencies": { "@tootallnate/once": "^3.0.0", "agent-base": "^7.0.1", @@ -4089,10 +4053,9 @@ } }, "node_modules/@vscode/vscode-languagedetection": { - "name": "@codingame/vscode-languagedetection", - "version": "1.0.23", - "resolved": "https://registry.npmjs.org/@codingame/vscode-languagedetection/-/vscode-languagedetection-1.0.23.tgz", - "integrity": "sha512-PqMisj1WEb1d9YtFapOjDQYACq8HD3f5/d+tFfZltsqAomGvoQxl7LBtftPUDT4zpvxls0IsJHiWrR/wvwyuzg==", + "version": "1.0.21", + "resolved": "https://registry.npmjs.org/@vscode/vscode-languagedetection/-/vscode-languagedetection-1.0.21.tgz", + "integrity": "sha512-zSUH9HYCw5qsCtd7b31yqkpaCU6jhtkKLkvOOA8yTrIRfBSOFb8PPhgmMicD7B/m+t4PwOJXzU1XDtrM9Fd3/g==", "bin": { "vscode-languagedetection": "cli/index.js" } @@ -4181,65 +4144,65 @@ } }, "node_modules/@xterm/addon-clipboard": { - "version": "0.2.0-beta.22", - "resolved": "https://registry.npmjs.org/@xterm/addon-clipboard/-/addon-clipboard-0.2.0-beta.22.tgz", - "integrity": "sha512-sBv/QLK21tTVfyDXiCpxWATzCpCe5prgkbCkE+jBZYs4OlbXhM1xjKz+EG0ocUngsQJxDlLgKMSmbFfbwpn6LA==", + "version": "0.2.0-beta.39", + "resolved": "https://registry.npmjs.org/@xterm/addon-clipboard/-/addon-clipboard-0.2.0-beta.39.tgz", + "integrity": "sha512-PeJZP69FHg2p1NJKLGyqUITahvEexqwYoQAgYheu4d9UBhIdP6D/KWGT8DVAEPeeulXhcr2UXgYWMVQAooTvrw==", "dependencies": { "js-base64": "^3.7.5" }, "peerDependencies": { - "@xterm/xterm": "^5.4.0" + "@xterm/xterm": "^5.6.0-beta.56" } }, "node_modules/@xterm/addon-image": { - "version": "0.9.0-beta.39", - "resolved": "https://registry.npmjs.org/@xterm/addon-image/-/addon-image-0.9.0-beta.39.tgz", - "integrity": "sha512-YNDRgXJ1s/1bKNMF+Qu6C2dFNJltNrt5iNEy9bACBxmClHtdBLuIUH8QWATk1apDAJo0lmhLWMX806zwZ+YI8Q==", + "version": "0.9.0-beta.56", + "resolved": "https://registry.npmjs.org/@xterm/addon-image/-/addon-image-0.9.0-beta.56.tgz", + "integrity": "sha512-kwE4ZDlPxXsBk4mnQoqMvSwu9aKQclniIybs90t0L2qGPLcI8/7Akm1i9aXbu8eZF2hoLEPfLC3CZPda+4ioOA==", "peerDependencies": { - "@xterm/xterm": "^5.2.0" + "@xterm/xterm": "^5.6.0-beta.56" } }, "node_modules/@xterm/addon-search": { - "version": "0.16.0-beta.39", - "resolved": "https://registry.npmjs.org/@xterm/addon-search/-/addon-search-0.16.0-beta.39.tgz", - "integrity": "sha512-gEFhIO0MZ6hXecsIesQo6GBpnwkWPfI1Nj5IPKFdFkmUNg6f2QQRMryJI4x2Lk1b2Dt3wA+yl+QRCIr8KRgV1w==", + "version": "0.16.0-beta.56", + "resolved": "https://registry.npmjs.org/@xterm/addon-search/-/addon-search-0.16.0-beta.56.tgz", + "integrity": "sha512-f8aoldPGssse1UR2N3f94fRUc7K3eulb+F80MFhim4rP+shX3QO9QdEZtwr+JaPEujjnuBM5tQKQDuRQtbwuMQ==", "peerDependencies": { - "@xterm/xterm": "^5.0.0" + "@xterm/xterm": "^5.6.0-beta.56" } }, "node_modules/@xterm/addon-serialize": { - "version": "0.14.0-beta.39", - "resolved": "https://registry.npmjs.org/@xterm/addon-serialize/-/addon-serialize-0.14.0-beta.39.tgz", - "integrity": "sha512-iMJ4yikdUWmTQ1CIUWQ7a5FdZ/p07qsgIr6JIxJZqbyLQeNk0h9zAJCEIcEIZNXkzsdSvQSTd3M6vbPN2lASqA==", + "version": "0.14.0-beta.56", + "resolved": "https://registry.npmjs.org/@xterm/addon-serialize/-/addon-serialize-0.14.0-beta.56.tgz", + "integrity": "sha512-VGAYJXFfXuY1Ze8CliT28DoYI74s8fdTI9919C0sgWwtzfAa7W43jJ56g0oKVEM0wO20wfdESapwpQ7enMzrHQ==", "peerDependencies": { - "@xterm/xterm": "^5.0.0" + "@xterm/xterm": "^5.6.0-beta.56" } }, "node_modules/@xterm/addon-unicode11": { - "version": "0.9.0-beta.39", - "resolved": "https://registry.npmjs.org/@xterm/addon-unicode11/-/addon-unicode11-0.9.0-beta.39.tgz", - "integrity": "sha512-gJvXvzweAQOqhPOFafCblSkS2wPruCTT9F3C0laoU84CxPJXLTiNcuM65w/UuSS7m/YV1u/25VnLMoWmuMGkCQ==", + "version": "0.9.0-beta.56", + "resolved": "https://registry.npmjs.org/@xterm/addon-unicode11/-/addon-unicode11-0.9.0-beta.56.tgz", + "integrity": "sha512-oWa8xLWMDKgJboqOT57PaNAWYz+2INW5aUc24E0Nzv+gKXVy+8lRoqy50m3DhsOb1YtDaPVloqvambKBaXSing==", "peerDependencies": { - "@xterm/xterm": "^5.0.0" + "@xterm/xterm": "^5.6.0-beta.56" } }, "node_modules/@xterm/addon-webgl": { - "version": "0.19.0-beta.39", - "resolved": "https://registry.npmjs.org/@xterm/addon-webgl/-/addon-webgl-0.19.0-beta.39.tgz", - "integrity": "sha512-j3UlJzaWO/TXFN/lOk84alLSh0YTjs8NJH/eAmh48G6npCrtDOaFvIT892h52W7PrbYS5oHhp3XFyPT4edxhZw==", + "version": "0.19.0-beta.56", + "resolved": "https://registry.npmjs.org/@xterm/addon-webgl/-/addon-webgl-0.19.0-beta.56.tgz", + "integrity": "sha512-aYNRENPJBb1uoV7QifEwCnbjCXmQD5yQmuxNJab3bOZ68aCSGC/EKc4/4Ov0klkXi8ceF4ZnbNiqAX3jw5L1jg==", "peerDependencies": { - "@xterm/xterm": "^5.0.0" + "@xterm/xterm": "^5.6.0-beta.56" } }, "node_modules/@xterm/headless": { - "version": "5.6.0-beta.39", - "resolved": "https://registry.npmjs.org/@xterm/headless/-/headless-5.6.0-beta.39.tgz", - "integrity": "sha512-nNxY2r6G6olh3x6mLyYXabRlQCEobg1rZvvaxQx91e2s8T8/T41fGUnOCel/bBk0PC/TeGERszYXtz/aKo55Hg==" + "version": "5.6.0-beta.56", + "resolved": "https://registry.npmjs.org/@xterm/headless/-/headless-5.6.0-beta.56.tgz", + "integrity": "sha512-aQOCzFDn/yqdATwf+ho1q5Hu2MzQwnXHgcsVx/qwUit/URKgbp1QyOQom88nzprP6D/59tiSeX+tqUS1HPqwMw==" }, "node_modules/@xterm/xterm": { - "version": "5.6.0-beta.39", - "resolved": "https://registry.npmjs.org/@xterm/xterm/-/xterm-5.6.0-beta.39.tgz", - "integrity": "sha512-9MorSCBp3qN2btqZaMPtVMGQyTDSfIeU3oLzBHIM2LVn1ntYqVBDpoxEzL0icchhC97r04Qt/RbfnPL2D+dADA==" + "version": "5.6.0-beta.56", + "resolved": "https://registry.npmjs.org/@xterm/xterm/-/xterm-5.6.0-beta.56.tgz", + "integrity": "sha512-gtLrCQNkF1LikB21Bj9JYiBrrXMMvPEZkOIiA7MlXoSd7T7v+GYPumrODB2SBuhPdZ8N66z2rbUOfSRzxGwMtA==" }, "node_modules/@yarnpkg/lockfile": { "version": "1.1.0", @@ -4321,27 +4284,15 @@ } }, "node_modules/ansi-escapes": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.0.tgz", - "integrity": "sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-7.0.0.tgz", + "integrity": "sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw==", "dev": true, "dependencies": { - "type-fest": "^3.0.0" + "environment": "^1.0.0" }, "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-escapes/node_modules/type-fest": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", - "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", - "dev": true, - "engines": { - "node": ">=14.16" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -4598,13 +4549,13 @@ } }, "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.10.4", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.4.tgz", - "integrity": "sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==", + "version": "0.10.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz", + "integrity": "sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==", "dev": true, "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.6.1", - "core-js-compat": "^3.36.1" + "@babel/helper-define-polyfill-provider": "^0.6.2", + "core-js-compat": "^3.38.0" }, "peerDependencies": { "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" @@ -5059,9 +5010,9 @@ } }, "node_modules/cli-table3": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", - "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.5.tgz", + "integrity": "sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==", "dev": true, "dependencies": { "string-width": "^4.2.0" @@ -5259,9 +5210,9 @@ } }, "node_modules/core-js-compat": { - "version": "3.38.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.0.tgz", - "integrity": "sha512-75LAicdLa4OJVwFxFbQR3NdnZjNgX6ILpVcVzcC4T2smerB5lELMrJQQQoWV6TiuC/vlaFqgU2tKQx9w5s0e0A==", + "version": "3.38.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.1.tgz", + "integrity": "sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==", "dev": true, "dependencies": { "browserslist": "^4.23.3" @@ -5860,6 +5811,18 @@ "node": ">=6" } }, + "node_modules/environment": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/environment/-/environment-1.1.0.tgz", + "integrity": "sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -8201,9 +8164,9 @@ } }, "node_modules/kerberos": { - "version": "2.1.1-alpha.0", - "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-2.1.1-alpha.0.tgz", - "integrity": "sha512-II8N/ky/Vpd8y7LTxwCuAYoQ8XeV3HYxuK7IDmyoFacIhDljx4sdt/+sOwqgXEweQyCHlbZSKSaK82upqNM4Hw==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/kerberos/-/kerberos-2.1.1.tgz", + "integrity": "sha512-414s1G/qgK2T60cXnZsHbtRj8Ynjg0DBlQWeY99tkyqQ2e8vGgFHvxRdvjTlLHg/SxBA0zLQcGE6Pk6Dfq/BCA==", "hasInstallScript": true, "dependencies": { "bindings": "^1.5.0", @@ -8465,10 +8428,9 @@ "dev": true }, "node_modules/marked": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/marked/-/marked-12.0.0.tgz", - "integrity": "sha512-Vkwtq9rLqXryZnWaQc86+FHLC6tr/fycMfYAhiOIXkrNmeGAyhSxjqu0Rs1i0bBqw5u0S7+lV9fdH2ZSVaoa0w==", - "dev": true, + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-14.0.0.tgz", + "integrity": "sha512-uIj4+faQ+MgHgwUW1l2PsPglZLOLOT1uErt06dAPtx2kjteLAkbsd/0FiYg/MGS+i7ZKLb7w2WClxHkzOOuryQ==", "bin": { "marked": "bin/marked.js" }, @@ -8476,38 +8438,6 @@ "node": ">= 18" } }, - "node_modules/marked-terminal": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/marked-terminal/-/marked-terminal-7.0.0.tgz", - "integrity": "sha512-sNEx8nn9Ktcm6pL0TnRz8tnXq/mSS0Q1FRSwJOAqw4lAB4l49UeDf85Gm1n9RPFm5qurCPjwi1StAQT2XExhZw==", - "dev": true, - "dependencies": { - "ansi-escapes": "^6.2.0", - "chalk": "^5.3.0", - "cli-highlight": "^2.1.11", - "cli-table3": "^0.6.3", - "node-emoji": "^2.1.3", - "supports-hyperlinks": "^3.0.0" - }, - "engines": { - "node": ">=16.0.0" - }, - "peerDependencies": { - "marked": ">=1 <13" - } - }, - "node_modules/marked-terminal/node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "dev": true, - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, "node_modules/mdn-data": { "version": "2.0.14", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", @@ -8763,18 +8693,6 @@ "node": ">=18" } }, - "node_modules/node-emoji/node_modules/@sindresorhus/is": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", - "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/is?sponsor=1" - } - }, "node_modules/node-gyp-build": { "version": "4.8.0", "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", @@ -8786,9 +8704,9 @@ } }, "node_modules/node-pty": { - "version": "1.1.0-beta11", - "resolved": "https://registry.npmjs.org/node-pty/-/node-pty-1.1.0-beta11.tgz", - "integrity": "sha512-vTjF+VrvSCfPDILUkIT+YrG1Fdn06/eBRS2fc9a3JzYAvknMB1Ip8aoJhxl8hNpjWAbprmCEiV91mlfNpCD+GQ==", + "version": "1.1.0-beta21", + "resolved": "https://registry.npmjs.org/node-pty/-/node-pty-1.1.0-beta21.tgz", + "integrity": "sha512-FYpnY9g8qMQLTpqyeY9NVli6YfCWwvG6v6gmaDBbPjlc1VMp/+Zivq0SStDrRr1aciGnFCZzpL0BzdMnmbDnAw==", "hasInstallScript": true, "dependencies": { "node-addon-api": "^7.1.0" @@ -13407,9 +13325,9 @@ } }, "node_modules/rollup": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.21.0.tgz", - "integrity": "sha512-vo+S/lfA2lMS7rZ2Qoubi6I5hwZwzXeUIctILZLbHI+laNtvhhOIon2S1JksA5UEDQ7l3vberd0fxK44lTYjbQ==", + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.21.3.tgz", + "integrity": "sha512-7sqRtBNnEbcBtMeRVc6VRsJMmpI+JU1z9VTvW8D4gXIYQFz0aLcsE6rRkyghZkLfEgUZgVvOG7A5CVz/VW5GIA==", "devOptional": true, "dependencies": { "@types/estree": "1.0.5" @@ -13422,22 +13340,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.21.0", - "@rollup/rollup-android-arm64": "4.21.0", - "@rollup/rollup-darwin-arm64": "4.21.0", - "@rollup/rollup-darwin-x64": "4.21.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.21.0", - "@rollup/rollup-linux-arm-musleabihf": "4.21.0", - "@rollup/rollup-linux-arm64-gnu": "4.21.0", - "@rollup/rollup-linux-arm64-musl": "4.21.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.21.0", - "@rollup/rollup-linux-riscv64-gnu": "4.21.0", - "@rollup/rollup-linux-s390x-gnu": "4.21.0", - "@rollup/rollup-linux-x64-gnu": "4.21.0", - "@rollup/rollup-linux-x64-musl": "4.21.0", - "@rollup/rollup-win32-arm64-msvc": "4.21.0", - "@rollup/rollup-win32-ia32-msvc": "4.21.0", - "@rollup/rollup-win32-x64-msvc": "4.21.0", + "@rollup/rollup-android-arm-eabi": "4.21.3", + "@rollup/rollup-android-arm64": "4.21.3", + "@rollup/rollup-darwin-arm64": "4.21.3", + "@rollup/rollup-darwin-x64": "4.21.3", + "@rollup/rollup-linux-arm-gnueabihf": "4.21.3", + "@rollup/rollup-linux-arm-musleabihf": "4.21.3", + "@rollup/rollup-linux-arm64-gnu": "4.21.3", + "@rollup/rollup-linux-arm64-musl": "4.21.3", + "@rollup/rollup-linux-powerpc64le-gnu": "4.21.3", + "@rollup/rollup-linux-riscv64-gnu": "4.21.3", + "@rollup/rollup-linux-s390x-gnu": "4.21.3", + "@rollup/rollup-linux-x64-gnu": "4.21.3", + "@rollup/rollup-linux-x64-musl": "4.21.3", + "@rollup/rollup-win32-arm64-msvc": "4.21.3", + "@rollup/rollup-win32-ia32-msvc": "4.21.3", + "@rollup/rollup-win32-x64-msvc": "4.21.3", "fsevents": "~2.3.2" } }, @@ -14067,6 +13985,18 @@ "integrity": "sha512-Nik3Sc0ncrMK4UUdXQmAnRtzmNQTAAXmXIopizwZ1W1t8QmfJj+zL4OA2I7XPTPW5z5TDqv4hRo/JzouDJnX3A==", "dev": true }, + "node_modules/semantic-release/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, "node_modules/semantic-release/node_modules/execa": { "version": "9.0.2", "resolved": "https://registry.npmjs.org/execa/-/execa-9.0.2.tgz", @@ -14170,6 +14100,38 @@ "node": "^18.17 || >=20.6.1" } }, + "node_modules/semantic-release/node_modules/marked": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/marked/-/marked-12.0.2.tgz", + "integrity": "sha512-qXUm7e/YKFoqFPYPa3Ukg9xlI5cyAtGmyEIzMfW//m6kXwCy2Ps9DYf5ioijFKQ8qyuscrHoY04iJGctu2Kg0Q==", + "dev": true, + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/semantic-release/node_modules/marked-terminal": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/marked-terminal/-/marked-terminal-7.1.0.tgz", + "integrity": "sha512-+pvwa14KZL74MVXjYdPR3nSInhGhNvPce/3mqLVZT2oUvt654sL1XImFuLZ1pkA866IYZ3ikDTOFUIC7XzpZZg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^7.0.0", + "chalk": "^5.3.0", + "cli-highlight": "^2.1.11", + "cli-table3": "^0.6.5", + "node-emoji": "^2.1.3", + "supports-hyperlinks": "^3.0.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "marked": ">=1 <14" + } + }, "node_modules/semantic-release/node_modules/universal-user-agent": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-7.0.2.tgz", @@ -14730,9 +14692,9 @@ } }, "node_modules/supports-hyperlinks": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.0.0.tgz", - "integrity": "sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.1.0.tgz", + "integrity": "sha512-2rn0BZ+/f7puLOHZm1HOJfwBggfaHXUpPUSSG/SWM4TWp5KCfmNYwnC3hruy2rZlMnmWZ+QAGpZfchu3f3695A==", "dev": true, "dependencies": { "has-flag": "^4.0.0", @@ -14740,6 +14702,9 @@ }, "engines": { "node": ">=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/supports-hyperlinks/node_modules/has-flag": { @@ -14960,6 +14925,12 @@ "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==", "dev": true }, + "node_modules/tinyexec": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.0.tgz", + "integrity": "sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==", + "dev": true + }, "node_modules/tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -15143,9 +15114,9 @@ } }, "node_modules/type-fest": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.25.0.tgz", - "integrity": "sha512-bRkIGlXsnGBRBQRAY56UXBm//9qH4bmJfFvq83gSz41N282df+fjy8ofcEgc1sM8geNt5cl6mC2g9Fht1cs8Aw==", + "version": "4.26.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.1.tgz", + "integrity": "sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==", "dev": true, "engines": { "node": ">=16" @@ -15220,9 +15191,9 @@ } }, "node_modules/typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz", + "integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -15426,19 +15397,6 @@ "spdx-expression-parse": "^3.0.0" } }, - "node_modules/vscode-marked": { - "name": "marked", - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.2.tgz", - "integrity": "sha512-TMJQQ79Z0e3rJYazY0tIoMsFzteUGw9fB3FD+gzuIT3zLuG9L9ckIvUfF51apdJkcqc208jJN2KbtPbOvXtbjA==", - "dev": true, - "bin": { - "marked": "bin/marked" - }, - "engines": { - "node": ">= 12" - } - }, "node_modules/vscode-oniguruma": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz", @@ -15466,9 +15424,9 @@ } }, "node_modules/vscode-textmate": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-9.0.0.tgz", - "integrity": "sha512-Cl65diFGxz7gpwbav10HqiY/eVYTO1sjQpmRmV991Bj7wAoOAjGQ97PpQcXorDE2Uc4hnGWLY17xme+5t6MlSg==" + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-9.1.0.tgz", + "integrity": "sha512-lxKSVp2DkFOx9RDAvpiYUrB9/KT1fAfi1aE8CBGstP8N7rLF+Seifj8kDA198X0mYj1CjQUC+81+nQf8CO0nVA==" }, "node_modules/which": { "version": "2.0.2", @@ -15746,9 +15704,9 @@ } }, "node_modules/zx": { - "version": "8.1.4", - "resolved": "https://registry.npmjs.org/zx/-/zx-8.1.4.tgz", - "integrity": "sha512-QFDYYpnzdpRiJ3dL2102Cw26FpXpWshW4QLTGxiYfIcwdAqg084jRCkK/kuP/NOSkxOjydRwNFG81qzA5r1a6w==", + "version": "8.1.6", + "resolved": "https://registry.npmjs.org/zx/-/zx-8.1.6.tgz", + "integrity": "sha512-SYAriWG+i2CFqMOJcF8QayI8wprlMYQsrmP6tFD7rSPnDLcImNSW7n/8crOYvNVrB2EFgz8LAQk23U1+Y7WrKA==", "dev": true, "bin": { "zx": "build/cli.js" diff --git a/package.json b/package.json index 2ded0e8f..50f91c4f 100644 --- a/package.json +++ b/package.json @@ -31,9 +31,9 @@ }, "config": { "vscode": { - "version": "1.92.2", - "ref": "1.92.2", - "commit": "fee1edb8d6d72a0ddff41e5f71a671c23ed924b9" + "version": "1.93.1", + "ref": "1.93.1", + "commit": "38c31bc77e0dd6ae88a4e9cc93428cc27a56ba40" }, "monaco": { "ref": "v0.51.0", @@ -44,13 +44,13 @@ "@babel/core": "^7.25.2", "@babel/plugin-proposal-class-properties": "^7.18.6", "@babel/plugin-proposal-decorators": "^7.24.7", - "@babel/preset-env": "^7.25.3", + "@babel/preset-env": "^7.25.4", "@babel/preset-typescript": "^7.24.7", "@codingame/commitlint-config-codingame": "^1.1.1", - "@codingame/eslint-config": "^1.1.10", + "@codingame/eslint-config": "^1.2.1", "@codingame/semantic-release-config-github": "^1.0.0", "@codingame/tsconfig": "^1.1.1", - "@commitlint/cli": "^19.4.0", + "@commitlint/cli": "^19.5.0", "@rollup/plugin-commonjs": "^26.0.1", "@rollup/plugin-dynamic-import-vars": "^2.1.2", "@rollup/plugin-json": "^6.1.0", @@ -60,8 +60,7 @@ "@types/mime-types": "^2.1.4", "@types/node": "18.19.8", "@types/semver": "^7.5.8", - "@types/vscode": "~1.92.0", - "@types/vscode-marked": "npm:@types/marked@^3.0.2", + "@types/vscode": "~1.93.0", "@types/vscode-semver": "npm:@types/semver@=5.5.0", "@types/yargs": "^17.0.33", "@types/yauzl": "^2.10.3", @@ -83,7 +82,7 @@ "pascal-case": "^3.1.2", "patch-package": "^8.0.0", "recast": "^0.23.9", - "rollup": "^4.21.0", + "rollup": "^4.21.3", "rollup-plugin-copy": "^3.5.0", "rollup-plugin-dts": "^6.1.1", "rollup-plugin-styles": "^4.0.0", @@ -91,12 +90,11 @@ "semver": "^7.6.3", "ts-morph": "^22.0.0", "ts-node": "^10.9.2", - "type-fest": "^4.25.0", - "typescript": "^5.5.4", - "vscode-marked": "npm:marked@=3.0.2", + "type-fest": "^4.26.1", + "typescript": "^5.6.2", "vscode-semver": "npm:semver@=5.5.0", "yargs": "^17.7.2", - "zx": "^8.1.4" + "zx": "^8.1.6" }, "dependencies": { "@microsoft/1ds-core-js": "^3.2.13", @@ -104,31 +102,32 @@ "@parcel/watcher": "2.1.0", "@rollup/pluginutils": "^5.1.0", "@vscode/iconv-lite-umd": "0.7.0", - "@vscode/proxy-agent": "^0.22.0", + "@vscode/proxy-agent": "^0.23.0", "@vscode/ripgrep": "^1.15.9", "@vscode/spdlog": "^0.15.0", - "@vscode/vscode-languagedetection": "npm:@codingame/vscode-languagedetection@1.0.23", + "@vscode/vscode-languagedetection": "1.0.21", "@vscode/windows-process-tree": "^0.6.0", "@vscode/windows-registry": "^1.1.0", - "@xterm/addon-clipboard": "0.2.0-beta.22", - "@xterm/addon-image": "0.9.0-beta.39", - "@xterm/addon-search": "0.16.0-beta.39", - "@xterm/addon-serialize": "0.14.0-beta.39", - "@xterm/addon-unicode11": "0.9.0-beta.39", - "@xterm/addon-webgl": "0.19.0-beta.39", - "@xterm/headless": "5.6.0-beta.39", - "@xterm/xterm": "5.6.0-beta.39", + "@xterm/addon-clipboard": "0.2.0-beta.39", + "@xterm/addon-image": "0.9.0-beta.56", + "@xterm/addon-search": "0.16.0-beta.56", + "@xterm/addon-serialize": "0.14.0-beta.56", + "@xterm/addon-unicode11": "0.9.0-beta.56", + "@xterm/addon-webgl": "0.19.0-beta.56", + "@xterm/headless": "5.6.0-beta.56", + "@xterm/xterm": "5.6.0-beta.56", "cookie": "^0.4.0", "css-url-parser": "^1.1.4", "jschardet": "3.1.3", - "kerberos": "2.1.1-alpha.0", + "kerberos": "2.1.1", "keytar": "^7.9.0", + "marked": "~14.0.0", "memfs": "^4.11.1", "mime-types": "^2.1.35", - "node-pty": "1.1.0-beta11", + "node-pty": "1.1.0-beta21", "vscode-oniguruma": "1.7.0", "vscode-regexpp": "^3.1.0", - "vscode-textmate": "9.0.0", + "vscode-textmate": "9.1.0", "yauzl": "^3.0.0", "yazl": "^2.4.3" }, @@ -136,7 +135,7 @@ "typescript": "$typescript", "rollup": "$rollup", "recast": "$recast", - "@xterm/xterm": "5.6.0-beta.39", + "@xterm/xterm": "$@xterm/xterm", "eslint-plugin-n": "$eslint-plugin-n" }, "volta": { diff --git a/rollup/rollup.config.ts b/rollup/rollup.config.ts index dc02565f..733d82fc 100644 --- a/rollup/rollup.config.ts +++ b/rollup/rollup.config.ts @@ -86,7 +86,6 @@ const EDITOR_API_EXPOSE_MODULES = [ 'vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution', 'vs/editor/contrib/format/browser/formatActions', 'vs/editor/contrib/bracketMatching/browser/bracketMatching', - 'vs/editor/contrib/hover/browser/hoverController', 'vs/editor/browser/coreCommands', 'vs/editor/contrib/clipboard/browser/clipboard', 'vs/editor/contrib/cursorUndo/browser/cursorUndo', @@ -466,9 +465,6 @@ export default (args: Record): rollup.RollupOptions[] => { const content = (await fs.promises.readFile(id)).toString('utf-8') return transformVSCodeCode(id, content) }, - transform (code) { - return code.replaceAll("'./keyboardLayouts/layout.contribution.' + platform", "'./keyboardLayouts/layout.contribution.' + platform + '.js'") - }, async writeBundle () { await fs.promises.writeFile(nodePath.resolve(DIST_DIR, 'nls.keys.json'), JSON.stringify(nlsKeys, null, 2)) } @@ -592,7 +588,9 @@ export default (args: Record): rollup.RollupOptions[] => { } } }, - dynamicImportVars() + dynamicImportVars({ + exclude: ['**/amdX.js'] + }) ] }, { // 2nd pass to improve treeshaking diff --git a/scripts/install-monaco-editor b/scripts/install-monaco-editor index 7cee5a35..44f18a04 100755 --- a/scripts/install-monaco-editor +++ b/scripts/install-monaco-editor @@ -31,5 +31,7 @@ cp out/monaco-editor/esm/vs/editor/editor.api.d.ts $output_directory/editor.api. cp -R out/monaco-editor/esm/vs/basic-languages $output_directory/basic-languages cp -R out/monaco-editor/esm/vs/language $output_directory/language +echo $monacoRef > $version_info + # Cleaning rm -rf $monaco_build_directory diff --git a/scripts/install-vscode b/scripts/install-vscode index c2dabad4..1205fedf 100755 --- a/scripts/install-vscode +++ b/scripts/install-vscode @@ -7,7 +7,6 @@ monacoRef=$(cat package.json | jq -r '.config.monaco.ref') package_json="`pwd`/package.json" output_directory="`pwd`/vscode" loc_output_directory="`pwd`/vscode-loc" -monaco_editor_output_directory="`pwd`/monaco-editor" extension_output_directory="`pwd`/vscode-default-extensions" patch_directory="`pwd`/vscode-paches" version_info=$output_directory/version.info @@ -88,7 +87,6 @@ cd .. cd src mkdir -p $output_directory -echo $vscodeRef > $version_info echo "Building vscode..." NODE_OPTIONS=--max-old-space-size=8192 npx tsc --declaration --importHelpers --module es2020 --preserveConstEnums --outDir "$output_directory/src" --rootDir . @@ -105,4 +103,6 @@ rm -rf $loc_output_directory mkdir -p $loc_output_directory curl -L --max-redirs 5 https://github.com/microsoft/vscode-loc/archive/refs/heads/main.tar.gz | tar -xz -C $loc_output_directory --strip-components=2 vscode-loc-main/i18n +echo $vscodeRef > $version_info + rm -rf $build_directory diff --git a/scripts/update-vscode-dependencies.ts b/scripts/update-vscode-dependencies.ts index c3d75a71..a459afd9 100644 --- a/scripts/update-vscode-dependencies.ts +++ b/scripts/update-vscode-dependencies.ts @@ -52,9 +52,8 @@ async function updateVSCodeDependencies () { '@types/node', '@types/vscode', 'vscode-semver', - 'vscode-marked', + 'marked', '@types/vscode-semver', - '@types/vscode-marked', ...vscodeDependencies ].sort() await writeFile(ncuRcPath, JSON.stringify(ncuRc, null, 2)) diff --git a/src/assets/webWorkerExtensionHostIframe.html b/src/assets/webWorkerExtensionHostIframe.html deleted file mode 100644 index 1782e17e..00000000 --- a/src/assets/webWorkerExtensionHostIframe.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - - - - diff --git a/src/extension.api.ts b/src/extension.api.ts index 662ba5cc..45115feb 100644 --- a/src/extension.api.ts +++ b/src/extension.api.ts @@ -243,7 +243,6 @@ const api: typeof vscode = { TestResultState: extHostTypes.TestResultState, TestRunRequest: extHostTypes.TestRunRequest, TestMessage: extHostTypes.TestMessage, - TestMessage2: extHostTypes.TestMessage, TestMessageStackFrame: extHostTypes.TestMessageStackFrame, TestTag: extHostTypes.TestTag, TestRunProfileKind: extHostTypes.TestRunProfileKind, @@ -302,12 +301,13 @@ const api: typeof vscode = { ChatLocation: extHostTypes.ChatLocation, ChatRequestEditorData: extHostTypes.ChatRequestEditorData, ChatRequestNotebookData: extHostTypes.ChatRequestNotebookData, + ChatResponseMovePart: extHostTypes.ChatResponseMovePart, LanguageModelChatMessageRole: extHostTypes.LanguageModelChatMessageRole, LanguageModelChatMessage: extHostTypes.LanguageModelChatMessage, - LanguageModelChatMessageFunctionResultPart: extHostTypes.LanguageModelFunctionResultPart, LanguageModelChatResponseTextPart: extHostTypes.LanguageModelTextPart, - LanguageModelChatResponseFunctionUsePart: extHostTypes.LanguageModelFunctionUsePart, LanguageModelError: extHostTypes.LanguageModelError, + LanguageModelChatResponseToolCallPart: extHostTypes.LanguageModelToolCallPart, + LanguageModelChatMessageToolResultPart: extHostTypes.LanguageModelToolResultPart, NewSymbolName: extHostTypes.NewSymbolName, NewSymbolNameTag: extHostTypes.NewSymbolNameTag, NewSymbolNameTriggerKind: extHostTypes.NewSymbolNameTriggerKind, @@ -315,8 +315,7 @@ const api: typeof vscode = { InlineEditTriggerKind: extHostTypes.InlineEditTriggerKind, ExcludeSettingOptions: searchExtTypes.ExcludeSettingOptions, TextSearchContextNew: searchExtTypes.TextSearchContextNew, - TextSearchMatchNew: searchExtTypes.TextSearchMatchNew, - TextSearchCompleteMessageTypeNew: searchExtTypes.TextSearchCompleteMessageTypeNew + TextSearchMatchNew: searchExtTypes.TextSearchMatchNew } // @ts-ignore the syntax will be transformed by a typescript transformer in the rollup config diff --git a/src/extensions.ts b/src/extensions.ts index bb7b9505..deca9883 100644 --- a/src/extensions.ts +++ b/src/extensions.ts @@ -196,7 +196,7 @@ export function registerExtension (manifest: IExtensionManifest, extHostKind?: E if (apiFactory == null) { throw new Error('The local api can\'t be used without registering the local extension host by importing `vscode/localExtensionHost`') } - return apiFactory(id) + return await apiFactory(id) } api = { diff --git a/src/localExtensionHost.ts b/src/localExtensionHost.ts index 5a67cf6d..a3ad957a 100644 --- a/src/localExtensionHost.ts +++ b/src/localExtensionHost.ts @@ -137,7 +137,7 @@ class LocalExtensionHost implements IExtensionHost { if (this._protocolPromise == null) { this._protocolPromise = this._start() } - return this._protocolPromise + return await this._protocolPromise } async _start (): Promise { @@ -240,7 +240,7 @@ export type { async function createLocalApi (extensionId?: string): Promise { const apiFactory = await apiFactoryDeferred.p - return apiFactory(extensionId) + return await apiFactory(extensionId) } setLocalExtensionHost(LocalExtensionHost) diff --git a/src/missing-services.ts b/src/missing-services.ts index 9e83062e..3bb3e948 100644 --- a/src/missing-services.ts +++ b/src/missing-services.ts @@ -226,8 +226,8 @@ import { IIntegrityService } from 'vs/workbench/services/integrity/common/integr import { IntegrityTestResult } from 'vs/workbench/services/integrity/common/integrity' import { ITrustedDomainService } from 'vs/workbench/contrib/url/browser/trustedDomainService.service' import { ILanguageModelToolsService } from 'vs/workbench/contrib/chat/common/languageModelToolsService.service' -import { unsupported } from './tools' import { getBuiltInExtensionTranslationsUris, getExtensionIdProvidingCurrentLocale } from './l10n' +import { unsupported } from './tools' registerSingleton(ILoggerService, class NullLoggerService extends AbstractLoggerService { constructor () { @@ -449,6 +449,7 @@ class EmptyEditorGroup implements IEditorGroup, IEditorGroupView { const fakeActiveGroup = new EmptyEditorGroup() class EmptyEditorPart implements IEditorPart { + onWillDispose = Event.None windowId = mainWindow.vscodeWindowId hasMaximizedGroup = () => false onDidLayout = Event.None @@ -499,6 +500,7 @@ class EmptyEditorPart implements IEditorPart { } class EmptyEditorGroupsService implements IEditorGroupsService { + getScopedInstantiationService = unsupported registerContextKeyProvider = unsupported saveWorkingSet = unsupported getWorkingSets = unsupported @@ -1038,6 +1040,8 @@ registerSingleton(IHistoryService, class HistoryService implements IHistoryServi }, InstantiationType.Eager) registerSingleton(ITaskService, class TaskService implements ITaskService { + onDidChangeTaskProviders = Event.None + getKnownTasks = async () => [] _serviceBrand: undefined onDidChangeTaskConfig = Event.None onDidStateChange = Event.None @@ -2073,6 +2077,7 @@ registerSingleton(ISearchViewModelWorkbenchService, class SearchWorkbenchService registerSingleton(INotebookEditorModelResolverService, class NotebookEditorModelResolverService implements INotebookEditorModelResolverService { _serviceBrand: undefined + createUntitledNotebookTextModel = unsupported onDidSaveNotebook = Event.None onDidChangeDirty = Event.None onWillFailWithConflict = Event.None @@ -2119,6 +2124,7 @@ registerSingleton(IWorkbenchAssignmentService, class WorkbenchAssignmentService registerSingleton(IChatService, class ChatService implements IChatService { _serviceBrand: undefined + setChatSessionTitle = unsupported adoptRequest = unsupported isEnabled = () => false resendRequest = unsupported @@ -2170,6 +2176,10 @@ registerSingleton(IQuickChatService, class QuickChatService implements IQuickCha registerSingleton(IChatAgentService, class QuickChatService implements IChatAgentService { _serviceBrand = undefined + registerChatParticipantDetectionProvider = unsupported + detectAgentOrCommand = unsupported + hasChatParticipantDetectionProviders = () => false + getChatTitle = unsupported agentHasDupeName = () => false registerAgentCompletionProvider = unsupported getAgentCompletionItems = unsupported @@ -2513,6 +2523,7 @@ registerSingleton(INotebookRendererMessagingService, class NotebookRendererMessa registerSingleton(IInteractiveHistoryService, class InteractiveHistoryService implements IInteractiveHistoryService { _serviceBrand: undefined + matchesCurrent = () => false addToHistory = unsupported getPreviousValue = unsupported getNextValue = unsupported @@ -2806,6 +2817,7 @@ registerSingleton(ITestResultStorage, class TestResultStorage implements ITestRe registerSingleton(ITestingDecorationsService, class TestingDecorationsService implements ITestingDecorationsService { _serviceBrand: undefined + updateDecorationsAlternateAction = unsupported onDidChange = Event.None invalidateResultMessage = unsupported syncDecorations = unsupported @@ -3060,6 +3072,8 @@ registerSingleton(INotebookLoggingService, class NotebookLoggingService implemen _serviceBrand: undefined info = unsupported debug = unsupported + warn = unsupported + error = unsupported }, InstantiationType.Delayed) registerSingleton(IWalkthroughsService, class WalkthroughsService implements IWalkthroughsService { @@ -3339,6 +3353,8 @@ registerSingleton(ITrustedDomainService, class TrustedDomainService implements I registerSingleton(ILanguageModelToolsService, class LanguageModelToolsService implements ILanguageModelToolsService { _serviceBrand: undefined + getTool = () => undefined + getToolByName = () => undefined onDidChangeTools = Event.None registerToolData = unsupported registerToolImplementation = unsupported diff --git a/src/override/vs/base/common/marked/marked.ts b/src/override/vs/base/common/marked/marked.ts index f1456506..6b58b205 100644 --- a/src/override/vs/base/common/marked/marked.ts +++ b/src/override/vs/base/common/marked/marked.ts @@ -1,4 +1 @@ -import marked from 'vscode-marked' -export { - marked -} +export * from 'marked' diff --git a/src/rollup-vsix-plugin.ts b/src/rollup-vsix-plugin.ts index bd64533f..fe356e6b 100644 --- a/src/rollup-vsix-plugin.ts +++ b/src/rollup-vsix-plugin.ts @@ -28,7 +28,7 @@ function read (stream: Readable): Promise { } async function readVsix (file: string): Promise { - return new Promise((resolve) => { + return await new Promise((resolve) => { const files: Record = {} yauzl.open(file, { lazyEntries: true }, (err, zipfile) => { if (err != null) throw err diff --git a/src/service-override/editor.ts b/src/service-override/editor.ts index 1b9d87eb..1c047095 100644 --- a/src/service-override/editor.ts +++ b/src/service-override/editor.ts @@ -21,6 +21,7 @@ import 'vs/workbench/contrib/files/browser/files.contribution._fileEditorFactory import 'vs/workbench/contrib/files/browser/fileCommands._save.js' class EmptyEditorPart implements IEditorPart { + onWillDispose = Event.None hasMaximizedGroup = () => false windowId = mainWindow.vscodeWindowId onDidLayout = Event.None @@ -71,6 +72,7 @@ class EmptyEditorPart implements IEditorPart { } class EmptyEditorGroupsService implements IEditorGroupsService { + getScopedInstantiationService = unsupported registerContextKeyProvider = unsupported saveWorkingSet = unsupported getWorkingSets = unsupported diff --git a/src/service-override/extensions.ts b/src/service-override/extensions.ts index b97cf544..6c7f0418 100644 --- a/src/service-override/extensions.ts +++ b/src/service-override/extensions.ts @@ -2,7 +2,7 @@ import { IFileService } from 'vs/platform/files/common/files.service' import { ILifecycleService } from 'vs/workbench/services/lifecycle/common/lifecycle.service' import { ExtensionHostStartup, IExtensionHost } from 'vs/workbench/services/extensions/common/extensions' import { IExtensionService } from 'vs/workbench/services/extensions/common/extensions.service' -import { ILogService, ILoggerService } from 'vs/platform/log/common/log.service' +import { ILogService } from 'vs/platform/log/common/log.service' import { ExtensionIdentifier, IExtension, IExtensionDescription } from 'vs/platform/extensions/common/extensions' import { IWorkspaceContextService } from 'vs/platform/workspace/common/workspace.service' import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation' @@ -25,14 +25,10 @@ import { IUserDataInitializationService } from 'vs/workbench/services/userData/b import { ExtensionsProposedApi } from 'vs/workbench/services/extensions/common/extensionsProposedApi' import { BrowserExtensionHostFactory, BrowserExtensionHostKindPicker, ExtensionService } from 'vs/workbench/services/extensions/browser/extensionService' import { ExtensionHostKind, ExtensionRunningPreference } from 'vs/workbench/services/extensions/common/extensionHostKind' -import { ExtensionRunningLocation, LocalWebWorkerRunningLocation } from 'vs/workbench/services/extensions/common/extensionRunningLocation' +import { ExtensionRunningLocation } from 'vs/workbench/services/extensions/common/extensionRunningLocation' import { ExtensionRunningLocationTracker } from 'vs/workbench/services/extensions/common/extensionRunningLocationTracker' import { URI } from 'vs/base/common/uri' -import { IWebWorkerExtensionHostDataProvider, WebWorkerExtensionHost } from 'vs/workbench/services/extensions/browser/webWorkerExtensionHost' -import { IUserDataProfilesService } from 'vs/platform/userDataProfile/common/userDataProfile.service' -import { ILayoutService } from 'vs/platform/layout/browser/layoutService.service' -import { IStorageService } from 'vs/platform/storage/common/storage.service' -import { ILabelService } from 'vs/platform/label/common/label.service' +import { WebWorkerExtensionHost } from 'vs/workbench/services/extensions/browser/webWorkerExtensionHost' import { ExtensionKind } from 'vs/platform/environment/common/environment' import { IUserDataProfileService } from 'vs/workbench/services/userDataProfile/common/userDataProfile.service' import { IWorkspaceTrustManagementService } from 'vs/platform/workspace/common/workspaceTrust.service' @@ -54,38 +50,6 @@ export interface WorkerConfig { options?: WorkerOptions } -class EsmWebWorkerExtensionHost extends WebWorkerExtensionHost { - constructor ( - private workerConfig: WorkerConfig, - runningLocation: LocalWebWorkerRunningLocation, - startup: ExtensionHostStartup, - _initDataProvider: IWebWorkerExtensionHostDataProvider, - @ITelemetryService _telemetryService: ITelemetryService, - @IWorkspaceContextService _contextService: IWorkspaceContextService, - @ILabelService _labelService: ILabelService, - @ILogService _logService: ILogService, - @ILoggerService _loggerService: ILoggerService, - @IBrowserWorkbenchEnvironmentService _environmentService: IBrowserWorkbenchEnvironmentService, - @IUserDataProfilesService _userDataProfilesService: IUserDataProfilesService, - @IProductService _productService: IProductService, - @ILayoutService _layoutService: ILayoutService, - @IStorageService _storageService: IStorageService - - ) { - super(runningLocation, startup, _initDataProvider, _telemetryService, _contextService, _labelService, _logService, _loggerService, _environmentService, _userDataProfilesService, _productService, _layoutService, _storageService) - } - - protected override async _getWebWorkerExtensionHostIframeSrc (): Promise { - const url = new URL(await super._getWebWorkerExtensionHostIframeSrc(), window.location.href) - url.searchParams.set('vscodeExtHostWorkerSrc', this.workerConfig.url) - if (this.workerConfig.options != null) { - url.searchParams.set('vscodeExtHostWorkerOptions', JSON.stringify(this.workerConfig.options)) - } - url.searchParams.set('parentOrigin', window.origin) - return url.toString() - } -} - let localExtensionHost: (typeof LocalExtensionHost) | undefined function setLocalExtensionHost (_localExtensionHost: typeof LocalExtensionHost): void { localExtensionHost = _localExtensionHost @@ -93,7 +57,7 @@ function setLocalExtensionHost (_localExtensionHost: typeof LocalExtensionHost): class BrowserExtensionHostFactoryOverride extends BrowserExtensionHostFactory { constructor ( - private readonly workerConfig: WorkerConfig | undefined, + private readonly workerExtHostEnabled: boolean, _extensionsProposedApi: ExtensionsProposedApi, _scanWebExtensions: () => Promise, _getExtensionRegistrySnapshotWhenReady: () => Promise, @@ -115,7 +79,7 @@ class BrowserExtensionHostFactoryOverride extends BrowserExtensionHostFactory { return this._instantiationService.createInstance(localExtensionHost, runningLocation, ExtensionHostStartup.EagerAutoStart, this._createLocalExtensionHostDataProvider(runningLocations, runningLocation, isInitialStart)) } case ExtensionHostKind.LocalWebWorker: { - if (this.workerConfig == null) { + if (!this.workerExtHostEnabled) { return null } const startup = ( @@ -123,7 +87,7 @@ class BrowserExtensionHostFactoryOverride extends BrowserExtensionHostFactory { ? ExtensionHostStartup.EagerManualStart : ExtensionHostStartup.EagerAutoStart ) - return this._instantiationService.createInstance(EsmWebWorkerExtensionHost, this.workerConfig, runningLocation, startup, this._createLocalExtensionHostDataProvider(runningLocations, runningLocation, isInitialStart)) + return this._instantiationService.createInstance(WebWorkerExtensionHost, runningLocation, startup, this._createLocalExtensionHostDataProvider(runningLocations, runningLocation, isInitialStart)) } case ExtensionHostKind.Remote: { return super.createExtensionHost(runningLocations, runningLocation, isInitialStart) @@ -159,7 +123,7 @@ export interface IExtensionWithExtHostKind extends IExtension { export class ExtensionServiceOverride extends ExtensionService implements IExtensionService { constructor ( - workerConfig: WorkerConfig | undefined, + workerExtHostEnabled: boolean, @IInstantiationService instantiationService: IInstantiationService, @INotificationService notificationService: INotificationService, @IBrowserWorkbenchEnvironmentService browserEnvironmentService: IBrowserWorkbenchEnvironmentService, @@ -185,9 +149,9 @@ export class ExtensionServiceOverride extends ExtensionService implements IExten ) { const extensionsProposedApi = instantiationService.createInstance(ExtensionsProposedApi) const extensionHostFactory = new BrowserExtensionHostFactoryOverride( - workerConfig, + workerExtHostEnabled, extensionsProposedApi, - async () => this._scanWebExtensions(), + async () => await this._scanWebExtensions(), () => this._getExtensionRegistrySnapshotWhenReady(), instantiationService, remoteAgentService, @@ -198,7 +162,7 @@ export class ExtensionServiceOverride extends ExtensionService implements IExten super( extensionsProposedApi, extensionHostFactory, - new LocalBrowserExtensionHostKindPicker(workerConfig != null ? [ExtensionHostKind.LocalWebWorker, ExtensionHostKind.LocalProcess, ExtensionHostKind.Remote] : [ExtensionHostKind.LocalProcess, ExtensionHostKind.Remote], logService), + new LocalBrowserExtensionHostKindPicker(workerExtHostEnabled ? [ExtensionHostKind.LocalWebWorker, ExtensionHostKind.LocalProcess, ExtensionHostKind.Remote] : [ExtensionHostKind.LocalProcess, ExtensionHostKind.Remote], logService), instantiationService, notificationService, browserEnvironmentService, @@ -241,13 +205,13 @@ class ExtensionResourceLoaderServiceOverride extends ExtensionResourceLoaderServ const result = await this._fileService.readFile(uri) return result.value.toString() } - return super.readExtensionResource(uri) + return await super.readExtensionResource(uri) } } let iframeAlternateDomains: string | undefined registerAssets({ - 'vs/workbench/services/extensions/worker/webWorkerExtensionHostIframe.html': () => changeUrlDomain(new URL('../assets/webWorkerExtensionHostIframe.html', import.meta.url).href, iframeAlternateDomains) + 'vs/workbench/services/extensions/worker/webWorkerExtensionHostIframe.esm.html': () => changeUrlDomain(new URL('../../vscode/src/vs/workbench/services/extensions/worker/webWorkerExtensionHostIframe.esm.html', import.meta.url).href, iframeAlternateDomains) }) export default function getServiceOverride (workerConfig?: WorkerConfig, _iframeAlternateDomains?: string): IEditorOverrideServices { @@ -261,6 +225,12 @@ export default function getServiceOverride (workerConfig?: WorkerConfig, _iframe } : undefined + if (workerConfig != null) { + registerAssets({ + 'vs/workbench/api/worker/extensionHostWorker.esm.js': () => workerConfig.url + }) + } + return { [IExtensionService.toString()]: new SyncDescriptor(ExtensionServiceOverride, [_workerConfig], false), [IExtensionManifestPropertiesService.toString()]: new SyncDescriptor(ExtensionManifestPropertiesService, [], true), diff --git a/src/service-override/files.ts b/src/service-override/files.ts index 869211b1..879d0bf6 100644 --- a/src/service-override/files.ts +++ b/src/service-override/files.ts @@ -429,7 +429,7 @@ class RegisteredFileSystemProvider extends Disposable implements async stat (resource: URI): Promise { const node = this._lookup(resource, false) - return node.stats() + return await node.stats() } public readdirSync (resource: URI): [string, FileType][] { @@ -677,7 +677,7 @@ IFileSystemProviderWithFileAtomicDeleteCapability { } async stat (resource: URI): Promise { - return this.readFromDelegates(async delegate => { + return await this.readFromDelegates(async delegate => { const result = await delegate.stat(resource) const readOnly = (delegate.capabilities & FileSystemProviderCapabilities.Readonly) > 0 @@ -689,7 +689,7 @@ IFileSystemProviderWithFileAtomicDeleteCapability { } async readFile (resource: URI): Promise { - return this.readFromDelegates(delegate => delegate.readFile(resource)) + return await this.readFromDelegates(delegate => delegate.readFile(resource)) } readFileStream (resource: URI, opts: IFileReadStreamOptions, token: CancellationToken): ReadableStreamEvents { @@ -732,7 +732,7 @@ IFileSystemProviderWithFileAtomicDeleteCapability { } async readdir (resource: URI): Promise<[string, FileType][]> { - const results = await Promise.allSettled(this.delegates.map(async delegate => delegate.readdir(resource))) + const results = await Promise.allSettled(this.delegates.map(async delegate => await delegate.readdir(resource))) if (!results.some(isFullfiled)) { throw (results[0] as PromiseRejectedResult).reason } @@ -758,7 +758,7 @@ IFileSystemProviderWithFileAtomicDeleteCapability { if (stats != null && ((stats.permissions ?? 0) & FilePermission.Readonly) > 0) { throw createFileSystemProviderError('Not allowed', FileSystemProviderErrorCode.NoPermissions) } - return delegate.writeFile(resource, content, opts) + return await delegate.writeFile(resource, content, opts) }) } @@ -781,7 +781,7 @@ class MkdirpOnWriteInMemoryFileSystemProvider extends InMemoryFileSystemProvider // if another provider has this directory. So it won't create the parent directories on this memory file system. await mkdirp(extUri, this, extUri.dirname(resource)) - return super.writeFile(resource, content, opts) + return await super.writeFile(resource, content, opts) } } diff --git a/src/service-override/quickaccess.ts b/src/service-override/quickaccess.ts index 2b28357a..229d7969 100644 --- a/src/service-override/quickaccess.ts +++ b/src/service-override/quickaccess.ts @@ -84,8 +84,10 @@ class DelegateQuickInputService implements IQuickInputService { return this.activeService.input(options, token) } - createQuickPick (): IQuickPick { - return this.activeService.createQuickPick() + createQuickPick(options: { useSeparators: true }): IQuickPick + createQuickPick(options?: { useSeparators: boolean }): IQuickPick + createQuickPick (options: { useSeparators: boolean } = { useSeparators: false }): IQuickPick { + return this.activeService.createQuickPick(options) } createInputBox (): IInputBox { diff --git a/src/service-override/remoteAgent.ts b/src/service-override/remoteAgent.ts index 53629a6c..7a134e3e 100644 --- a/src/service-override/remoteAgent.ts +++ b/src/service-override/remoteAgent.ts @@ -77,7 +77,7 @@ class CustomRemoteExtensionsScannerService extends RemoteExtensionsScannerServic if (!this.scanRemoteExtensions) { return [] } - return super.scanExtensions() + return await super.scanExtensions() } } diff --git a/src/service-override/storage.ts b/src/service-override/storage.ts index 0bc449d0..d070762e 100644 --- a/src/service-override/storage.ts +++ b/src/service-override/storage.ts @@ -71,11 +71,11 @@ class ExternalStorageDatabase implements IStorageDatabase { } async close () { - return this.provider.close?.(this.scope) + return await this.provider.close?.(this.scope) } async optimize (): Promise { - return this.provider.optimize?.(this.scope) + return await this.provider.optimize?.(this.scope) } } diff --git a/src/service-override/survey.ts b/src/service-override/survey.ts index edc5f9c6..52c9b4e9 100644 --- a/src/service-override/survey.ts +++ b/src/service-override/survey.ts @@ -1,6 +1,5 @@ import { IEditorOverrideServices } from 'vs/editor/standalone/browser/standaloneServices' import 'vs/workbench/contrib/surveys/browser/nps.contribution' -import 'vs/workbench/contrib/surveys/browser/ces.contribution' import 'vs/workbench/contrib/surveys/browser/languageSurveys.contribution' export default function getServiceOverride (): IEditorOverrideServices { diff --git a/src/service-override/tools/editor.ts b/src/service-override/tools/editor.ts index 77bf5e11..76ad1029 100644 --- a/src/service-override/tools/editor.ts +++ b/src/service-override/tools/editor.ts @@ -171,7 +171,7 @@ export function wrapOpenEditor (textModelService: ITextModelService, defaultBeha if (resource == null || !textModelService.canHandleResource(resource)) { // eslint-disable-next-line @typescript-eslint/no-explicit-any - return defaultBehavior(editor as any, optionsOrPreferredGroup as any, preferredGroup) + return await defaultBehavior(editor as any, optionsOrPreferredGroup as any, preferredGroup) } let modelEditor: ICodeEditor | undefined @@ -272,7 +272,7 @@ export class MonacoEditorService extends EditorService { return undefined } - return super.openEditor(editor, optionsOrPreferredGroup, preferredGroup) + return await super.openEditor(editor, optionsOrPreferredGroup, preferredGroup) } } @@ -506,7 +506,7 @@ class StandaloneEditorGroup extends Disposable implements IEditorGroup, IEditorG openEditors = async (editors: EditorInputWithOptions[]): Promise => { if (editors.length === 1) { - return this.openEditor(editors[0]!.editor) + return await this.openEditor(editors[0]!.editor) } return undefined } @@ -545,7 +545,7 @@ export class MonacoDelegateEditorGroupsService e public additionalGroups: StandaloneEditorGroup[] = [] public activeGroupOverride: StandaloneEditorGroup | undefined = undefined - constructor (protected delegate: D, emptyDelegate: boolean, @IInstantiationService instantiationService: IInstantiationService) { + constructor (protected delegate: D, emptyDelegate: boolean, @IInstantiationService private instantiationService: IInstantiationService) { super() setTimeout(() => { const codeEditorService = StandaloneServices.get(ICodeEditorService) @@ -615,6 +615,10 @@ export class MonacoDelegateEditorGroupsService e }) } + getScopedInstantiationService (): IInstantiationService { + return this.instantiationService + } + registerContextKeyProvider (provider: IEditorGroupContextKeyProvider): IDisposable { return this.delegate.registerContextKeyProvider(provider) } diff --git a/src/service-override/walkthrough.ts b/src/service-override/walkthrough.ts index e9fc0db8..7db2954b 100644 --- a/src/service-override/walkthrough.ts +++ b/src/service-override/walkthrough.ts @@ -6,16 +6,11 @@ import 'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contri import 'vs/workbench/contrib/welcomeWalkthrough/browser/walkThrough.contribution' import svgAssets from 'vs/workbench/contrib/welcomeGettingStarted/common/media/*.svg' import pngAssets from 'vs/workbench/contrib/welcomeGettingStarted/common/media/*.png' -import { FileAccess } from 'vs/base/common/network' import { registerAssets } from '../assets' registerAssets(svgAssets) registerAssets(pngAssets) -FileAccess.registerModuleContentProvider('vs/workbench/contrib/welcomeWalkthrough/browser/editor/vs_code_editor_walkthrough', () => import('vs/workbench/contrib/welcomeWalkthrough/browser/editor/vs_code_editor_walkthrough')) -FileAccess.registerModuleContentProvider('vs/workbench/contrib/welcomeGettingStarted/common/media/theme_picker', () => import('vs/workbench/contrib/welcomeGettingStarted/common/media/theme_picker')) -FileAccess.registerModuleContentProvider('vs/workbench/contrib/welcomeGettingStarted/common/media/notebookProfile', () => import('vs/workbench/contrib/welcomeGettingStarted/common/media/notebookProfile')) - export default function getServiceOverride (): IEditorOverrideServices { return { [IWalkthroughsService.toString()]: new SyncDescriptor(WalkthroughsService, [], true) diff --git a/src/tools.ts b/src/tools.ts index 77acef97..b3c2eb0d 100644 --- a/src/tools.ts +++ b/src/tools.ts @@ -33,7 +33,7 @@ export function throttle (fct: (param: T) => Promise, merge: (a: T, b: return async (param: T) => { if (toConsume == null) { toConsume = param - lastPromise = lastPromise.then(async () => sleep(delay)).then(async () => { + lastPromise = lastPromise.then(async () => await sleep(delay)).then(async () => { const _toConsume = toConsume! toConsume = null await fct(_toConsume) diff --git a/src/workers/extensionHost.worker.ts b/src/workers/extensionHost.worker.ts index bc9bb32f..b57b0a52 100644 --- a/src/workers/extensionHost.worker.ts +++ b/src/workers/extensionHost.worker.ts @@ -1,5 +1 @@ -import { create } from 'vs/workbench/api/worker/extensionHostWorker' - -const messageHandler = create() - -globalThis.onmessage = (e: MessageEvent) => messageHandler.onmessage(e.data) +import 'vs/workbench/api/worker/extensionHostWorker.esm.js' diff --git a/src/workers/outputLinkComputer.worker.ts b/src/workers/outputLinkComputer.worker.ts index cdb64f0a..49b3a688 100644 --- a/src/workers/outputLinkComputer.worker.ts +++ b/src/workers/outputLinkComputer.worker.ts @@ -1,5 +1,10 @@ -import { IWorkerContext } from 'vs/editor/common/services/editorSimpleWorker' -import { initialize } from 'vs/editor/editor.worker' -import { ICreateData, OutputLinkComputer } from 'vs/workbench/contrib/output/common/outputLinkComputer' +import { SimpleWorkerServer } from 'vs/base/common/worker/simpleWorker' +import { create } from 'vs/workbench/contrib/output/common/outputLinkComputer' -initialize((ctx: IWorkerContext, createData: ICreateData) => new OutputLinkComputer(ctx, createData)) +const simpleWorker = new SimpleWorkerServer((msg) => { + globalThis.postMessage(msg) +}, create) + +globalThis.onmessage = (e: MessageEvent) => { + simpleWorker.onmessage(e.data) +} diff --git a/src/workers/textmate.worker.ts b/src/workers/textmate.worker.ts index 854ec428..d907ac6d 100644 --- a/src/workers/textmate.worker.ts +++ b/src/workers/textmate.worker.ts @@ -1,5 +1,10 @@ -import { IWorkerContext } from 'vs/editor/common/services/editorSimpleWorker' -import { ICreateData, ITextMateWorkerHost, TextMateTokenizationWorker } from 'vs/workbench/services/textMate/browser/backgroundTokenization/worker/textMateTokenizationWorker.worker' -import { initialize } from 'vs/editor/editor.worker' +import { create } from 'vs/workbench/services/textMate/browser/backgroundTokenization/worker/textMateTokenizationWorker.worker' +import { SimpleWorkerServer } from 'vs/base/common/worker/simpleWorker' -initialize((ctx: IWorkerContext, createData: ICreateData) => new TextMateTokenizationWorker(ctx, createData)) +const simpleWorker = new SimpleWorkerServer((msg) => { + globalThis.postMessage(msg) +}, create) + +globalThis.onmessage = (e: MessageEvent) => { + simpleWorker.onmessage(e.data) +} diff --git a/vscode-paches/0001-fix-allow-importing-vscode-oniguruma.patch b/vscode-paches/0001-fix-allow-importing-vscode-oniguruma.patch index 43b6649b..a2632582 100644 --- a/vscode-paches/0001-fix-allow-importing-vscode-oniguruma.patch +++ b/vscode-paches/0001-fix-allow-importing-vscode-oniguruma.patch @@ -8,7 +8,7 @@ Subject: [PATCH] fix: allow importing vscode-oniguruma 1 file changed, 1 insertion(+) diff --git a/.eslintrc.json b/.eslintrc.json -index c39a66311e4..5f965fb404b 100644 +index 1deaf02985b..889ddcd4d3d 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -673,6 +673,7 @@ diff --git a/vscode-paches/0002-fix-fix-editor-api-types.patch b/vscode-paches/0002-fix-fix-editor-api-types.patch index e0576bb6..a384a50a 100644 --- a/vscode-paches/0002-fix-fix-editor-api-types.patch +++ b/vscode-paches/0002-fix-fix-editor-api-types.patch @@ -8,10 +8,10 @@ Subject: [PATCH] fix: fix editor api types 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/build/gulpfile.editor.js b/build/gulpfile.editor.js -index fe29d4fe183..8155be3210d 100644 +index 088748b8356..324514d04b5 100644 --- a/build/gulpfile.editor.js +++ b/build/gulpfile.editor.js -@@ -274,7 +274,16 @@ function toExternalDTS(contents) { +@@ -277,7 +277,16 @@ function toExternalDTS(contents) { } if (line.indexOf('declare let MonacoEnvironment') === 0) { diff --git a/vscode-paches/0003-fix-fix-some-build-process-edge-cases.patch b/vscode-paches/0003-fix-fix-some-build-process-edge-cases.patch index 529281d0..b058973d 100644 --- a/vscode-paches/0003-fix-fix-some-build-process-edge-cases.patch +++ b/vscode-paches/0003-fix-fix-some-build-process-edge-cases.patch @@ -9,7 +9,7 @@ Subject: [PATCH] fix: fix some build process edge cases 2 files changed, 14 insertions(+) diff --git a/build/lib/standalone.js b/build/lib/standalone.js -index cf0e452aff3..8109e28cb0b 100644 +index 78030842569..2e2b716dcb7 100644 --- a/build/lib/standalone.js +++ b/build/lib/standalone.js @@ -147,6 +147,9 @@ function createESMSourcesAndResources2(options) { @@ -34,7 +34,7 @@ index cf0e452aff3..8109e28cb0b 100644 if (!/(^\.\/)|(^\.\.\/)/.test(relativePath)) { relativePath = './' + relativePath; diff --git a/build/lib/standalone.ts b/build/lib/standalone.ts -index 9a65bfa7444..0b464b30f6f 100644 +index e1b9db65e12..b5f94e7836a 100644 --- a/build/lib/standalone.ts +++ b/build/lib/standalone.ts @@ -177,6 +177,9 @@ export function createESMSourcesAndResources2(options: IOptions2): void { diff --git a/vscode-paches/0004-cleanup-remove-amd-build-to-speed-up-editor-build.patch b/vscode-paches/0004-cleanup-remove-amd-build-to-speed-up-editor-build.patch index 3070062b..34d1524a 100644 --- a/vscode-paches/0004-cleanup-remove-amd-build-to-speed-up-editor-build.patch +++ b/vscode-paches/0004-cleanup-remove-amd-build-to-speed-up-editor-build.patch @@ -8,10 +8,10 @@ Subject: [PATCH] cleanup: remove amd build to speed up editor build 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/build/gulpfile.editor.js b/build/gulpfile.editor.js -index 8155be3210d..d0c0e664961 100644 +index 324514d04b5..0cc0fd8b806 100644 --- a/build/gulpfile.editor.js +++ b/build/gulpfile.editor.js -@@ -410,17 +410,10 @@ gulp.task('editor-distro', +@@ -413,17 +413,10 @@ gulp.task('editor-distro', util.rimraf('out-editor-min') ), extractEditorSrcTask, diff --git a/vscode-paches/0005-feat-output-es2020.patch b/vscode-paches/0005-feat-output-es2020.patch deleted file mode 100644 index 5e78d5f1..00000000 --- a/vscode-paches/0005-feat-output-es2020.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= -Date: Mon, 11 Mar 2024 16:44:35 +0100 -Subject: [PATCH] feat: output es2020 - ---- - build/lib/standalone.js | 2 +- - build/lib/standalone.ts | 2 +- - src/tsconfig.base.json | 3 ++- - src/tsconfig.monaco.json | 2 +- - 4 files changed, 5 insertions(+), 4 deletions(-) - -diff --git a/build/lib/standalone.js b/build/lib/standalone.js -index 8109e28cb0b..f35c4ae224d 100644 ---- a/build/lib/standalone.js -+++ b/build/lib/standalone.js -@@ -131,7 +131,7 @@ function createESMSourcesAndResources2(options) { - } - if (file === 'tsconfig.json') { - const tsConfig = JSON.parse(fs.readFileSync(path.join(SRC_FOLDER, file)).toString()); -- tsConfig.compilerOptions.module = 'es6'; -+ tsConfig.compilerOptions.module = 'es2020'; - tsConfig.compilerOptions.outDir = path.join(path.relative(OUT_FOLDER, OUT_RESOURCES_FOLDER), 'vs').replace(/\\/g, '/'); - write(getDestAbsoluteFilePath(file), JSON.stringify(tsConfig, null, '\t')); - continue; -diff --git a/build/lib/standalone.ts b/build/lib/standalone.ts -index 0b464b30f6f..31c1b34ac89 100644 ---- a/build/lib/standalone.ts -+++ b/build/lib/standalone.ts -@@ -157,7 +157,7 @@ export function createESMSourcesAndResources2(options: IOptions2): void { - - if (file === 'tsconfig.json') { - const tsConfig = JSON.parse(fs.readFileSync(path.join(SRC_FOLDER, file)).toString()); -- tsConfig.compilerOptions.module = 'es6'; -+ tsConfig.compilerOptions.module = 'es2020'; - tsConfig.compilerOptions.outDir = path.join(path.relative(OUT_FOLDER, OUT_RESOURCES_FOLDER), 'vs').replace(/\\/g, '/'); - write(getDestAbsoluteFilePath(file), JSON.stringify(tsConfig, null, '\t')); - continue; -diff --git a/src/tsconfig.base.json b/src/tsconfig.base.json -index c0a2e174591..1d80c22afa3 100644 ---- a/src/tsconfig.base.json -+++ b/src/tsconfig.base.json -@@ -1,6 +1,7 @@ - { - "compilerOptions": { -- "module": "amd", -+ "esModuleInterop": true, -+ "module": "ES2020", - "moduleResolution": "node", - "experimentalDecorators": true, - "noImplicitReturns": true, -diff --git a/src/tsconfig.monaco.json b/src/tsconfig.monaco.json -index bad9fb8cacc..c3d1c41bce4 100644 ---- a/src/tsconfig.monaco.json -+++ b/src/tsconfig.monaco.json -@@ -7,7 +7,7 @@ - "wicg-file-system-access" - ], - "paths": {}, -- "module": "amd", -+ "module": "es2020", - "moduleResolution": "classic", - "removeComments": false, - "preserveConstEnums": true, diff --git a/vscode-paches/0005-feat-output-es2022.patch b/vscode-paches/0005-feat-output-es2022.patch new file mode 100644 index 00000000..ccfc9bc6 --- /dev/null +++ b/vscode-paches/0005-feat-output-es2022.patch @@ -0,0 +1,38 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= +Date: Mon, 11 Mar 2024 16:44:35 +0100 +Subject: [PATCH] feat: output es2022 + +--- + src/tsconfig.base.json | 3 ++- + src/tsconfig.monaco.json | 4 ++-- + 2 files changed, 4 insertions(+), 3 deletions(-) + +diff --git a/src/tsconfig.base.json b/src/tsconfig.base.json +index c0a2e174591..1d80c22afa3 100644 +--- a/src/tsconfig.base.json ++++ b/src/tsconfig.base.json +@@ -1,6 +1,7 @@ + { + "compilerOptions": { +- "module": "amd", ++ "esModuleInterop": true, ++ "module": "ES2020", + "moduleResolution": "node", + "experimentalDecorators": true, + "noImplicitReturns": true, +diff --git a/src/tsconfig.monaco.json b/src/tsconfig.monaco.json +index bb4fd1ccc35..702c492934b 100644 +--- a/src/tsconfig.monaco.json ++++ b/src/tsconfig.monaco.json +@@ -7,8 +7,8 @@ + "wicg-file-system-access" + ], + "paths": {}, +- "module": "amd", +- "moduleResolution": "node", ++ "module": "es2022", ++ "moduleResolution": "classic", + "removeComments": false, + "preserveConstEnums": true, + "target": "ES2022", diff --git a/vscode-paches/0009-fix-typescript-handle-missing-case.patch b/vscode-paches/0009-fix-typescript-handle-missing-case.patch index 90416e8a..593186ab 100644 --- a/vscode-paches/0009-fix-typescript-handle-missing-case.patch +++ b/vscode-paches/0009-fix-typescript-handle-missing-case.patch @@ -8,7 +8,7 @@ Subject: [PATCH] fix(typescript): handle missing case 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/extensions/typescript-language-features/web/src/typingsInstaller/typingsInstaller.ts b/extensions/typescript-language-features/web/src/typingsInstaller/typingsInstaller.ts -index 7c40993d6df..950ed338c30 100644 +index 1f7790dc783..3ce2c137779 100644 --- a/extensions/typescript-language-features/web/src/typingsInstaller/typingsInstaller.ts +++ b/extensions/typescript-language-features/web/src/typingsInstaller/typingsInstaller.ts @@ -66,7 +66,9 @@ export class WebTypingsInstallerClient implements ts.server.ITypingsInstaller { diff --git a/vscode-paches/0010-feat-add-static-asset-url-mechanism.patch b/vscode-paches/0010-feat-add-static-asset-url-mechanism.patch index 94eab7ba..6f1a43d0 100644 --- a/vscode-paches/0010-feat-add-static-asset-url-mechanism.patch +++ b/vscode-paches/0010-feat-add-static-asset-url-mechanism.patch @@ -4,15 +4,15 @@ Date: Mon, 11 Mar 2024 17:11:14 +0100 Subject: [PATCH] feat: add static asset url mechanism --- - src/vs/base/common/network.ts | 45 +++- + src/vs/base/common/network.ts | 45 ++-- .../api/browser/mainThreadExtensionService.ts | 7 + .../workbench/api/common/extHost.protocol.ts | 1 + .../workbench/api/common/extensionHostMain.ts | 5 + .../api/worker/extensionHostWorker.ts | 219 +++++++++++++----- - 5 files changed, 218 insertions(+), 59 deletions(-) + 5 files changed, 208 insertions(+), 69 deletions(-) diff --git a/src/vs/base/common/network.ts b/src/vs/base/common/network.ts -index 2d5f856ba7a..fb25d21c548 100644 +index 99fabfb377f..e043e8e458d 100644 --- a/src/vs/base/common/network.ts +++ b/src/vs/base/common/network.ts @@ -4,6 +4,8 @@ @@ -24,23 +24,13 @@ index 2d5f856ba7a..fb25d21c548 100644 import * as platform from 'vs/base/common/platform'; import { equalsIgnoreCase, startsWithIgnoreCase } from 'vs/base/common/strings'; import { URI } from 'vs/base/common/uri'; -@@ -245,6 +247,30 @@ export const VSCODE_AUTHORITY = 'vscode-app'; +@@ -248,6 +250,20 @@ export const VSCODE_AUTHORITY = 'vscode-app'; class FileAccessImpl { private static readonly FALLBACK_AUTHORITY = VSCODE_AUTHORITY; + private staticBrowserUris = new ResourceMap(); + private appResourcePathUrls = new Map string)>(); + -+ private moduleContentProvider = new Map Promise>(); -+ -+ public registerModuleContentProvider(moduleId: string, contentLoader: () => Promise) { -+ this.moduleContentProvider.set(moduleId, contentLoader); -+ } -+ -+ public toModuleContent(moduleId: string): Promise { -+ return this.moduleContentProvider.get(moduleId)!(); -+ } -+ + public registerAppResourcePathUrl(moduleId: string, url: string | (() => string)): void { + this.appResourcePathUrls.set(moduleId, url); + } @@ -55,16 +45,21 @@ index 2d5f856ba7a..fb25d21c548 100644 /** * Returns a URI to use in contexts where the browser is responsible -@@ -253,7 +279,7 @@ class FileAccessImpl { +@@ -256,12 +272,7 @@ class FileAccessImpl { * **Note:** use `dom.ts#asCSSUrl` whenever the URL is to be used in CSS context. */ asBrowserUri(resourcePath: AppResourcePath | ''): URI { +- // ESM-comment-begin - const uri = this.toUri(resourcePath, require); +- // ESM-comment-end +- // ESM-uncomment-begin +- // const uri = this.toUri(resourcePath); +- // ESM-uncomment-end + const uri = this.toUri(resourcePath, { toUrl: this.toUrl.bind(this) }); return this.uriToBrowserUri(uri); } -@@ -292,7 +318,7 @@ class FileAccessImpl { +@@ -300,7 +311,7 @@ class FileAccessImpl { }); } @@ -73,18 +68,23 @@ index 2d5f856ba7a..fb25d21c548 100644 } /** -@@ -300,7 +326,7 @@ class FileAccessImpl { +@@ -308,12 +319,7 @@ class FileAccessImpl { * is responsible for loading. */ asFileUri(resourcePath: AppResourcePath | ''): URI { +- // ESM-comment-begin - const uri = this.toUri(resourcePath, require); +- // ESM-comment-end +- // ESM-uncomment-begin +- // const uri = this.toUri(resourcePath); +- // ESM-uncomment-end + const uri = this.toUri(resourcePath, { toUrl: this.toUrl.bind(this) }); return this.uriToFileUri(uri); } -@@ -332,6 +358,19 @@ class FileAccessImpl { +@@ -358,6 +364,19 @@ class FileAccessImpl { - return URI.parse(moduleIdToUrl.toUrl(uriOrModule)); + return URI.parse(moduleIdToUrl!.toUrl(uriOrModule)); } + + registerStaticBrowserUri(uri: URI, browserUri: URI): IDisposable { @@ -121,10 +121,10 @@ index 7c4db0a5def..298e14f9b28 100644 class ExtensionHostProxy implements IExtensionHostProxy { diff --git a/src/vs/workbench/api/common/extHost.protocol.ts b/src/vs/workbench/api/common/extHost.protocol.ts -index dc36ca11b4b..02ae336f24b 100644 +index 6732f0ce931..d4ecabb0c26 100644 --- a/src/vs/workbench/api/common/extHost.protocol.ts +++ b/src/vs/workbench/api/common/extHost.protocol.ts -@@ -1466,6 +1466,7 @@ export interface MainThreadExtensionServiceShape extends IDisposable { +@@ -1487,6 +1487,7 @@ export interface MainThreadExtensionServiceShape extends IDisposable { $onExtensionRuntimeError(extensionId: ExtensionIdentifier, error: SerializedError): void; $setPerformanceMarks(marks: performance.PerformanceMark[]): Promise; $asBrowserUri(uri: UriComponents): Promise; @@ -149,7 +149,7 @@ index 50c47ba98a8..2aa00be8fe4 100644 this._extensionService.terminate(reason); } diff --git a/src/vs/workbench/api/worker/extensionHostWorker.ts b/src/vs/workbench/api/worker/extensionHostWorker.ts -index 86136a080e6..8a2608599ee 100644 +index b98117318b7..9ba12208ff9 100644 --- a/src/vs/workbench/api/worker/extensionHostWorker.ts +++ b/src/vs/workbench/api/worker/extensionHostWorker.ts @@ -15,7 +15,6 @@ import * as performance from 'vs/base/common/performance'; @@ -404,7 +404,7 @@ index 86136a080e6..8a2608599ee 100644 } //#endregion --- -@@ -255,6 +361,7 @@ export function create(): { onmessage: (message: any) => void } { +@@ -259,6 +365,7 @@ export function create(): { onmessage: (message: any) => void } { ); patchFetching(uri => extHostMain.asBrowserUri(uri)); diff --git a/vscode-paches/0011-fix-remove-import-in-ESM.patch b/vscode-paches/0011-fix-remove-import-in-ESM.patch deleted file mode 100644 index ce87285a..00000000 --- a/vscode-paches/0011-fix-remove-import-in-ESM.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= -Date: Mon, 11 Mar 2024 17:11:37 +0100 -Subject: [PATCH] fix: remove import in ESM - ---- - src/vs/base/browser/defaultWorkerFactory.ts | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/vs/base/browser/defaultWorkerFactory.ts b/src/vs/base/browser/defaultWorkerFactory.ts -index 8f077b399ab..2334c6fd176 100644 ---- a/src/vs/base/browser/defaultWorkerFactory.ts -+++ b/src/vs/base/browser/defaultWorkerFactory.ts -@@ -5,7 +5,9 @@ - - import { createTrustedTypesPolicy } from 'vs/base/browser/trustedTypes'; - import { onUnexpectedError } from 'vs/base/common/errors'; -+// ESM-comment-begin - import { COI } from 'vs/base/common/network'; -+// ESM-comment-end - import { IWorker, IWorkerCallback, IWorkerFactory, logOnceWebWorkerWarning } from 'vs/base/common/worker/simpleWorker'; - import { Disposable, toDisposable } from 'vs/base/common/lifecycle'; - diff --git a/vscode-paches/0012-fix-remove-ttf-url-search-parameter-breaking-import.patch b/vscode-paches/0011-fix-remove-ttf-url-search-parameter-breaking-import.patch similarity index 100% rename from vscode-paches/0012-fix-remove-ttf-url-search-parameter-breaking-import.patch rename to vscode-paches/0011-fix-remove-ttf-url-search-parameter-breaking-import.patch diff --git a/vscode-paches/0013-fix-apply-style-only-on-standalone-editors.patch b/vscode-paches/0012-fix-apply-style-only-on-standalone-editors.patch similarity index 88% rename from vscode-paches/0013-fix-apply-style-only-on-standalone-editors.patch rename to vscode-paches/0012-fix-apply-style-only-on-standalone-editors.patch index 11397433..5fc9b7c6 100644 --- a/vscode-paches/0013-fix-apply-style-only-on-standalone-editors.patch +++ b/vscode-paches/0012-fix-apply-style-only-on-standalone-editors.patch @@ -11,7 +11,8 @@ Subject: [PATCH] fix: apply style only on standalone editors .../browser/standaloneCodeEditor.ts | 4 +-- .../test/browser/config/testConfiguration.ts | 2 +- src/vs/editor/test/browser/testCodeEditor.ts | 2 +- - 7 files changed, 44 insertions(+), 23 deletions(-) + .../multicursor/notebookMulticursor.ts | 2 +- + 8 files changed, 45 insertions(+), 24 deletions(-) diff --git a/src/vs/editor/browser/config/editorConfiguration.ts b/src/vs/editor/browser/config/editorConfiguration.ts index 4de800bd521..de9b4b9143c 100644 @@ -79,7 +80,7 @@ index 4de800bd521..de9b4b9143c 100644 public static validateOptions(options: IEditorOptions): ValidatedEditorOptions { const result = new ValidatedEditorOptions(); diff --git a/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.ts b/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.ts -index f8ed64fba6c..11da908d0f3 100644 +index 660e00eea1c..8c999f39c86 100644 --- a/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.ts +++ b/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.ts @@ -270,6 +270,7 @@ export class CodeEditorWidget extends Disposable implements editorBrowser.ICodeE @@ -101,7 +102,7 @@ index f8ed64fba6c..11da908d0f3 100644 } public getId(): string { -@@ -1954,6 +1955,12 @@ export interface ICodeEditorWidgetOptions { +@@ -1955,6 +1956,12 @@ export interface ICodeEditorWidgetOptions { */ isSimpleWidget?: boolean; @@ -194,19 +195,19 @@ index 1fc85078f9e..c74aca00541 100644 outline-style: solid; outline-offset: -1px; diff --git a/src/vs/editor/standalone/browser/standaloneCodeEditor.ts b/src/vs/editor/standalone/browser/standaloneCodeEditor.ts -index 84deb53c57d..d9b8c63cfb3 100644 +index 3ccfa128dc2..9ee85e6804a 100644 --- a/src/vs/editor/standalone/browser/standaloneCodeEditor.ts +++ b/src/vs/editor/standalone/browser/standaloneCodeEditor.ts -@@ -284,7 +284,7 @@ export class StandaloneCodeEditor extends CodeEditorWidget implements IStandalon +@@ -283,7 +283,7 @@ export class StandaloneCodeEditor extends CodeEditorWidget implements IStandalon + ) { const options = { ..._options }; options.ariaLabel = options.ariaLabel || StandaloneCodeEditorNLS.editorViewAccessibleLabel; - options.ariaLabel = options.ariaLabel + ';' + (StandaloneCodeEditorNLS.accessibilityHelpMessage); - super(domElement, options, {}, instantiationService, codeEditorService, commandService, contextKeyService, themeService, notificationService, accessibilityService, languageConfigurationService, languageFeaturesService); + super(domElement, options, { isStandaloneEditor: true }, instantiationService, codeEditorService, commandService, contextKeyService, themeService, notificationService, accessibilityService, languageConfigurationService, languageFeaturesService); if (keybindingService instanceof StandaloneKeybindingService) { this._standaloneKeybindingService = keybindingService; -@@ -522,7 +522,7 @@ export class StandaloneDiffEditor2 extends DiffEditorWidget implements IStandalo +@@ -521,7 +521,7 @@ export class StandaloneDiffEditor2 extends DiffEditorWidget implements IStandalo super( domElement, options, @@ -229,10 +230,10 @@ index 4a2e87e6d48..d96690e36ee 100644 protected override _readEnvConfiguration(): IEnvConfiguration { diff --git a/src/vs/editor/test/browser/testCodeEditor.ts b/src/vs/editor/test/browser/testCodeEditor.ts -index 5fcd0c1bd4c..9ad5fefd0c8 100644 +index 5a79e483795..3f5d2e03cd8 100644 --- a/src/vs/editor/test/browser/testCodeEditor.ts +++ b/src/vs/editor/test/browser/testCodeEditor.ts -@@ -69,7 +69,7 @@ export interface ITestCodeEditor extends IActiveCodeEditor { +@@ -71,7 +71,7 @@ export interface ITestCodeEditor extends IActiveCodeEditor { export class TestCodeEditor extends CodeEditorWidget implements ICodeEditor { //#region testing overrides @@ -241,3 +242,16 @@ index 5fcd0c1bd4c..9ad5fefd0c8 100644 return new TestConfiguration(options); } protected override _createView(viewModel: ViewModel): [View, boolean] { +diff --git a/src/vs/workbench/contrib/notebook/browser/contrib/multicursor/notebookMulticursor.ts b/src/vs/workbench/contrib/notebook/browser/contrib/multicursor/notebookMulticursor.ts +index 1a2621a00c4..be7f7c085d9 100644 +--- a/src/vs/workbench/contrib/notebook/browser/contrib/multicursor/notebookMulticursor.ts ++++ b/src/vs/workbench/contrib/notebook/browser/contrib/multicursor/notebookMulticursor.ts +@@ -504,7 +504,7 @@ export class NotebookMultiCursorController extends Disposable implements INotebo + private constructCellEditorOptions(cell: ICellViewModel): EditorConfiguration { + const cellEditorOptions = new CellEditorOptions(this.notebookEditor.getBaseCellEditorOptions(cell.language), this.notebookEditor.notebookOptions, this.configurationService); + const options = cellEditorOptions.getUpdatedValue(cell.internalMetadata, cell.uri); +- return new EditorConfiguration(false, MenuId.EditorContent, options, null, this.accessibilityService); ++ return new EditorConfiguration(false, MenuId.EditorContent, false, options, null, this.accessibilityService); + } + + /** diff --git a/vscode-paches/0014-fix-use-existing-method.patch b/vscode-paches/0013-fix-use-existing-method.patch similarity index 92% rename from vscode-paches/0014-fix-use-existing-method.patch rename to vscode-paches/0013-fix-use-existing-method.patch index 5bb64d17..ed7d291d 100644 --- a/vscode-paches/0014-fix-use-existing-method.patch +++ b/vscode-paches/0013-fix-use-existing-method.patch @@ -8,10 +8,10 @@ Subject: [PATCH] fix: use existing method 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vs/editor/standalone/browser/standaloneServices.ts b/src/vs/editor/standalone/browser/standaloneServices.ts -index 9682a3cfb0f..cf7988aac81 100644 +index e4f06ac453f..3b9815e86ec 100644 --- a/src/vs/editor/standalone/browser/standaloneServices.ts +++ b/src/vs/editor/standalone/browser/standaloneServices.ts -@@ -555,7 +555,7 @@ export class StandaloneKeybindingService extends AbstractKeybindingService { +@@ -559,7 +559,7 @@ export class StandaloneKeybindingService extends AbstractKeybindingService { // This might be a removal keybinding item in user settings => accept it result[resultLen++] = new ResolvedKeybindingItem(undefined, item.command, item.commandArgs, when, isDefault, null, false); } else { diff --git a/vscode-paches/0015-refactor-split-code.patch b/vscode-paches/0014-refactor-split-code.patch similarity index 96% rename from vscode-paches/0015-refactor-split-code.patch rename to vscode-paches/0014-refactor-split-code.patch index 1c5b0974..9a1f6a15 100644 --- a/vscode-paches/0015-refactor-split-code.patch +++ b/vscode-paches/0014-refactor-split-code.patch @@ -9,10 +9,10 @@ Subject: [PATCH] refactor: split code 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/vs/editor/standalone/browser/standaloneServices.ts b/src/vs/editor/standalone/browser/standaloneServices.ts -index cf7988aac81..a692fe86d7a 100644 +index 3b9815e86ec..c763e7ccd83 100644 --- a/src/vs/editor/standalone/browser/standaloneServices.ts +++ b/src/vs/editor/standalone/browser/standaloneServices.ts -@@ -526,15 +526,19 @@ export class StandaloneKeybindingService extends AbstractKeybindingService { +@@ -530,15 +530,19 @@ export class StandaloneKeybindingService extends AbstractKeybindingService { }); } diff --git a/vscode-paches/0016-cleanup-remove-code-already-done-in-EditorFeaturesIn.patch b/vscode-paches/0015-cleanup-remove-code-already-done-in-EditorFeaturesIn.patch similarity index 76% rename from vscode-paches/0016-cleanup-remove-code-already-done-in-EditorFeaturesIn.patch rename to vscode-paches/0015-cleanup-remove-code-already-done-in-EditorFeaturesIn.patch index 78ca389e..66380dfc 100644 --- a/vscode-paches/0016-cleanup-remove-code-already-done-in-EditorFeaturesIn.patch +++ b/vscode-paches/0015-cleanup-remove-code-already-done-in-EditorFeaturesIn.patch @@ -9,19 +9,19 @@ Subject: [PATCH] cleanup: remove code already done in 1 file changed, 12 deletions(-) diff --git a/src/vs/editor/standalone/browser/standaloneServices.ts b/src/vs/editor/standalone/browser/standaloneServices.ts -index a692fe86d7a..d1729b9dd9c 100644 +index c763e7ccd83..85b999bf4de 100644 --- a/src/vs/editor/standalone/browser/standaloneServices.ts +++ b/src/vs/editor/standalone/browser/standaloneServices.ts -@@ -90,8 +90,6 @@ import { DefaultConfiguration } from 'vs/platform/configuration/common/configura - import { WorkspaceEdit } from 'vs/editor/common/languages'; - import { AccessibilitySignal, AccessibilityModality, IAccessibilitySignalService, Sound } from 'vs/platform/accessibilitySignal/browser/accessibilitySignalService'; +@@ -91,8 +91,6 @@ import { AccessibilitySignal, AccessibilityModality, IAccessibilitySignalService + import { ILanguageFeaturesService } from 'vs/editor/common/services/languageFeatures'; + import { ILanguageConfigurationService } from 'vs/editor/common/languages/languageConfigurationRegistry'; import { LogService } from 'vs/platform/log/common/logService'; -import { getEditorFeatures } from 'vs/editor/common/editorFeatures'; -import { onUnexpectedError } from 'vs/base/common/errors'; import { ExtensionKind, IEnvironmentService, IExtensionHostDebugParams } from 'vs/platform/environment/common/environment'; import { mainWindow } from 'vs/base/browser/window'; import { ResourceMap } from 'vs/base/common/map'; -@@ -1206,16 +1204,6 @@ export module StandaloneServices { +@@ -1229,16 +1227,6 @@ export module StandaloneServices { } } diff --git a/vscode-paches/0017-fix-replace-amd-imports-by-regular-esm-dynamic-impor.patch b/vscode-paches/0016-fix-replace-amd-imports-by-regular-esm-dynamic-impor.patch similarity index 82% rename from vscode-paches/0017-fix-replace-amd-imports-by-regular-esm-dynamic-impor.patch rename to vscode-paches/0016-fix-replace-amd-imports-by-regular-esm-dynamic-impor.patch index 3b1bb0ae..47b1a8d7 100644 --- a/vscode-paches/0017-fix-replace-amd-imports-by-regular-esm-dynamic-impor.patch +++ b/vscode-paches/0016-fix-replace-amd-imports-by-regular-esm-dynamic-impor.patch @@ -4,21 +4,21 @@ Date: Mon, 11 Mar 2024 17:22:31 +0100 Subject: [PATCH] fix: replace amd imports by regular esm dynamic imports --- - .eslintrc.json | 9 +-------- - .../assignment/common/assignmentService.ts | 3 +-- - src/vs/platform/telemetry/common/1dsAppender.ts | 5 ++--- - .../contrib/terminal/browser/terminalInstance.ts | 3 +-- - .../terminal/browser/xterm/xtermTerminal.ts | 13 ++++++------- - .../browser/terminalStickyScrollOverlay.ts | 5 ++--- - .../textMateWorkerTokenizerController.ts | 4 +--- - .../worker/textMateTokenizationWorker.worker.ts | 12 +++++------- - .../worker/textMateWorkerTokenizer.ts | 4 +--- - .../browser/textMateTokenizationFeatureImpl.ts | 14 +++++++------- - .../workbench/services/textfile/common/encoding.ts | 9 ++++----- - 11 files changed, 31 insertions(+), 50 deletions(-) + .eslintrc.json | 9 +-------- + .../assignment/common/assignmentService.ts | 3 +-- + src/vs/platform/telemetry/common/1dsAppender.ts | 16 ++-------------- + .../contrib/terminal/browser/terminalInstance.ts | 3 +-- + .../terminal/browser/xterm/xtermTerminal.ts | 13 ++++++------- + .../browser/terminalStickyScrollOverlay.ts | 5 ++--- + .../textMateWorkerTokenizerController.ts | 4 +--- + .../worker/textMateTokenizationWorker.worker.ts | 12 +++++------- + .../worker/textMateWorkerTokenizer.ts | 4 +--- + .../browser/textMateTokenizationFeatureImpl.ts | 15 ++++++++------- + .../services/textfile/common/encoding.ts | 14 ++++---------- + 11 files changed, 32 insertions(+), 66 deletions(-) diff --git a/.eslintrc.json b/.eslintrc.json -index 5f965fb404b..a350e56914a 100644 +index 889ddcd4d3d..05e59fcf47a 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -296,14 +296,6 @@ @@ -36,7 +36,7 @@ index 5f965fb404b..a350e56914a 100644 { "files": [ "src/**/{browser,electron-sandbox}/**/*.ts" -@@ -862,6 +854,7 @@ +@@ -863,6 +855,7 @@ }, // TODO@layers "tas-client-umd", // node module allowed even in /common/ "vscode-textmate", // node module allowed even in /common/ @@ -66,30 +66,43 @@ index c573b727e0b..8c52126a590 100644 telemetry: this.telemetry, storageKey: ASSIGNMENT_STORAGE_KEY, diff --git a/src/vs/platform/telemetry/common/1dsAppender.ts b/src/vs/platform/telemetry/common/1dsAppender.ts -index c54187f89c9..a4729fabe2e 100644 +index 6585e563ba0..a4729fabe2e 100644 --- a/src/vs/platform/telemetry/common/1dsAppender.ts +++ b/src/vs/platform/telemetry/common/1dsAppender.ts -@@ -5,7 +5,6 @@ +@@ -5,10 +5,8 @@ import type { IExtendedConfiguration, IExtendedTelemetryItem, ITelemetryItem, ITelemetryUnloadState } from '@microsoft/1ds-core-js'; import type { IChannelConfiguration, IXHROverride, PostChannel } from '@microsoft/1ds-post-js'; -import { importAMDNodeModule } from 'vs/amdX'; import { onUnexpectedError } from 'vs/base/common/errors'; import { mixin } from 'vs/base/common/objects'; +-import { isWeb } from 'vs/base/common/platform'; import { ITelemetryAppender, validateTelemetryData } from 'vs/platform/telemetry/common/telemetryUtils'; -@@ -22,8 +21,8 @@ const endpointUrl = 'https://mobile.events.data.microsoft.com/OneCollector/1.0'; + + // Interface type which is a subset of @microsoft/1ds-core-js AppInsightsCore. +@@ -23,18 +21,8 @@ const endpointUrl = 'https://mobile.events.data.microsoft.com/OneCollector/1.0'; const endpointHealthUrl = 'https://mobile.events.data.microsoft.com/ping'; async function getClient(instrumentationKey: string, addInternalFlag?: boolean, xhrOverride?: IXHROverride): Promise { +- // ESM-comment-begin +- if (isWeb) { /* fix the import warning */ } - const oneDs = await importAMDNodeModule('@microsoft/1ds-core-js', 'dist/ms.core.js'); - const postPlugin = await importAMDNodeModule('@microsoft/1ds-post-js', 'dist/ms.post.js'); +- // ESM-comment-end +- // ESM-uncomment-begin +- // // eslint-disable-next-line local/code-amd-node-module +- // const oneDs = isWeb ? await importAMDNodeModule('@microsoft/1ds-core-js', 'bundle/ms.core.min.js') : await import('@microsoft/1ds-core-js'); +- // // eslint-disable-next-line local/code-amd-node-module +- // const postPlugin = isWeb ? await importAMDNodeModule('@microsoft/1ds-post-js', 'bundle/ms.post.min.js'): await import('@microsoft/1ds-post-js'); +- // ESM-uncomment-end +- + const oneDs = await import('@microsoft/1ds-core-js'); + const postPlugin = await import('@microsoft/1ds-post-js'); const appInsightsCore = new oneDs.AppInsightsCore(); const collectorChannelPlugin: PostChannel = new postPlugin.PostChannel(); // Configure the app insights core to send to collector++ and disable logging of debug info diff --git a/src/vs/workbench/contrib/terminal/browser/terminalInstance.ts b/src/vs/workbench/contrib/terminal/browser/terminalInstance.ts -index 0c1c1f8c9b6..2f2976fd1df 100644 +index ff8607f6019..896f61d9359 100644 --- a/src/vs/workbench/contrib/terminal/browser/terminalInstance.ts +++ b/src/vs/workbench/contrib/terminal/browser/terminalInstance.ts @@ -82,7 +82,6 @@ import { IHistoryService } from 'vs/workbench/services/history/common/history'; @@ -100,7 +113,7 @@ index 0c1c1f8c9b6..2f2976fd1df 100644 import type { IMarker, Terminal as XTermTerminal } from '@xterm/xterm'; import { AccessibilityCommandId } from 'vs/workbench/contrib/accessibility/common/accessibilityCommands'; import { terminalStrings } from 'vs/workbench/contrib/terminal/common/terminalStrings'; -@@ -720,7 +719,7 @@ export class TerminalInstance extends Disposable implements ITerminalInstance { +@@ -727,7 +726,7 @@ export class TerminalInstance extends Disposable implements ITerminalInstance { return xtermConstructor; } xtermConstructor = Promises.withAsyncBody(async (resolve) => { @@ -171,7 +184,7 @@ index 3f96c847469..5ba1425a49a 100644 return SerializeAddon; } diff --git a/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollOverlay.ts b/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollOverlay.ts -index 07a40f9ef98..2f90e9f049c 100644 +index 92d0aeb48c4..d8ec5418112 100644 --- a/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollOverlay.ts +++ b/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollOverlay.ts @@ -6,7 +6,6 @@ @@ -182,7 +195,7 @@ index 07a40f9ef98..2f90e9f049c 100644 import { $, addDisposableListener, addStandardDisposableListener, getWindow } from 'vs/base/browser/dom'; import { memoize, throttle } from 'vs/base/common/decorators'; import { Event } from 'vs/base/common/event'; -@@ -485,12 +484,12 @@ export class TerminalStickyScrollOverlay extends Disposable { +@@ -484,12 +483,12 @@ export class TerminalStickyScrollOverlay extends Disposable { @memoize private async _getSerializeAddonConstructor(): Promise { @@ -198,7 +211,7 @@ index 07a40f9ef98..2f90e9f049c 100644 } diff --git a/src/vs/workbench/services/textMate/browser/backgroundTokenization/textMateWorkerTokenizerController.ts b/src/vs/workbench/services/textMate/browser/backgroundTokenization/textMateWorkerTokenizerController.ts -index 3695379f0e9..8ad5c86d522 100644 +index 419a1320def..0f68e115b90 100644 --- a/src/vs/workbench/services/textMate/browser/backgroundTokenization/textMateWorkerTokenizerController.ts +++ b/src/vs/workbench/services/textMate/browser/backgroundTokenization/textMateWorkerTokenizerController.ts @@ -3,7 +3,6 @@ @@ -208,8 +221,8 @@ index 3695379f0e9..8ad5c86d522 100644 -import { importAMDNodeModule } from 'vs/amdX'; import { Disposable } from 'vs/base/common/lifecycle'; import { IObservable, autorun, keepObserved } from 'vs/base/common/observable'; - import { countEOL } from 'vs/editor/common/core/eolCounter'; -@@ -18,7 +17,7 @@ import { IConfigurationService } from 'vs/platform/configuration/common/configur + import { Proxied } from 'vs/base/common/worker/simpleWorker'; +@@ -19,7 +18,7 @@ import { IConfigurationService } from 'vs/platform/configuration/common/configur import { observableConfigValue } from 'vs/platform/observable/common/platformObservableUtils'; import { ArrayEdit, MonotonousIndexTransformer, SingleArrayEdit } from 'vs/workbench/services/textMate/browser/arrayOperation'; import type { StateDeltas, TextMateTokenizationWorker } from 'vs/workbench/services/textMate/browser/backgroundTokenization/worker/textMateTokenizationWorker.worker'; @@ -218,7 +231,7 @@ index 3695379f0e9..8ad5c86d522 100644 export class TextMateWorkerTokenizerController extends Disposable { private static _id = 0; -@@ -179,7 +178,6 @@ export class TextMateWorkerTokenizerController extends Disposable { +@@ -180,7 +179,6 @@ export class TextMateWorkerTokenizerController extends Disposable { ); if (!this._applyStateStackDiffFn || !this._initialState) { @@ -227,21 +240,24 @@ index 3695379f0e9..8ad5c86d522 100644 this._initialState = INITIAL; } diff --git a/src/vs/workbench/services/textMate/browser/backgroundTokenization/worker/textMateTokenizationWorker.worker.ts b/src/vs/workbench/services/textMate/browser/backgroundTokenization/worker/textMateTokenizationWorker.worker.ts -index 3974d642732..b391a7cda58 100644 +index 237f681f3bc..7ba45d41153 100644 --- a/src/vs/workbench/services/textMate/browser/backgroundTokenization/worker/textMateTokenizationWorker.worker.ts +++ b/src/vs/workbench/services/textMate/browser/backgroundTokenization/worker/textMateTokenizationWorker.worker.ts -@@ -9,8 +9,9 @@ import { IModelChangedEvent } from 'vs/editor/common/model/mirrorTextModel'; - import { IWorkerContext } from 'vs/editor/common/services/editorSimpleWorker'; +@@ -8,11 +8,11 @@ import { LanguageId } from 'vs/editor/common/encodedTokenAttributes'; + import { IModelChangedEvent } from 'vs/editor/common/model/mirrorTextModel'; import { ICreateGrammarResult, TMGrammarFactory } from 'vs/workbench/services/textMate/common/TMGrammarFactory'; import { IValidEmbeddedLanguagesMap, IValidGrammarDefinition, IValidTokenTypeMap } from 'vs/workbench/services/textMate/common/TMScopeRegistry'; -import type { IOnigLib, IRawTheme, StackDiff } from 'vscode-textmate'; import { TextMateWorkerTokenizer } from './textMateWorkerTokenizer'; +-import { importAMDNodeModule } from 'vs/amdX'; + import { IRequestHandler, IWorkerServer } from 'vs/base/common/worker/simpleWorker'; + import { TextMateWorkerHost } from './textMateWorkerHost'; +import * as vscodeTextmate from 'vscode-textmate'; +import * as vscodeOniguruma from 'vscode-oniguruma'; /** * Defines the worker entry point. Must be exported and named `create`. -@@ -47,7 +48,7 @@ export interface IValidGrammarDefinitionDTO { +@@ -42,7 +42,7 @@ export interface IValidGrammarDefinitionDTO { export interface StateDeltas { startLineNumber: number; // null means the state for that line did not change @@ -249,18 +265,17 @@ index 3974d642732..b391a7cda58 100644 + stateDeltas: (vscodeTextmate.StackDiff | null)[]; } - export class TextMateTokenizationWorker { -@@ -78,9 +79,6 @@ export class TextMateTokenizationWorker { + export class TextMateTokenizationWorker implements IRequestHandler { +@@ -75,8 +75,6 @@ export class TextMateTokenizationWorker implements IRequestHandler { } - private async _loadTMGrammarFactory(grammarDefinitions: IValidGrammarDefinition[]): Promise { -- const uri = this._createData.textmateMainUri; -- const vscodeTextmate = await import(uri); -- const vscodeOniguruma = await import(this._createData.onigurumaMainUri); - const response = await fetch(this._createData.onigurumaWASMUri); + private async _loadTMGrammarFactory(grammarDefinitions: IValidGrammarDefinition[], onigurumaWASMUri: string): Promise { +- const vscodeTextmate = await importAMDNodeModule('vscode-textmate', 'release/main.js'); +- const vscodeOniguruma = await importAMDNodeModule('vscode-oniguruma', 'release/main.js'); + const response = await fetch(onigurumaWASMUri); // Using the response directly only works if the server sets the MIME type 'application/wasm'. -@@ -89,7 +87,7 @@ export class TextMateTokenizationWorker { +@@ -85,7 +83,7 @@ export class TextMateTokenizationWorker implements IRequestHandler { const bytes = await response.arrayBuffer(); await vscodeOniguruma.loadWASM(bytes); @@ -269,12 +284,12 @@ index 3974d642732..b391a7cda58 100644 createOnigScanner: (sources) => vscodeOniguruma.createOnigScanner(sources), createOnigString: (str) => vscodeOniguruma.createOnigString(str) }); -@@ -146,7 +144,7 @@ export class TextMateTokenizationWorker { +@@ -142,7 +140,7 @@ export class TextMateTokenizationWorker implements IRequestHandler { } } -- public async acceptTheme(theme: IRawTheme, colorMap: string[]): Promise { -+ public async acceptTheme(theme: vscodeTextmate.IRawTheme, colorMap: string[]): Promise { +- public async $acceptTheme(theme: IRawTheme, colorMap: string[]): Promise { ++ public async $acceptTheme(theme: vscodeTextmate.IRawTheme, colorMap: string[]): Promise { const grammarFactory = await this._grammarFactory; grammarFactory?.setTheme(theme, colorMap); } @@ -308,18 +323,19 @@ index 112d76ec0d9..99b09749431 100644 } diff --git a/src/vs/workbench/services/textMate/browser/textMateTokenizationFeatureImpl.ts b/src/vs/workbench/services/textMate/browser/textMateTokenizationFeatureImpl.ts -index 02eef664f6f..ba2dd435b5f 100644 +index 734d72a998b..0daa52bbded 100644 --- a/src/vs/workbench/services/textMate/browser/textMateTokenizationFeatureImpl.ts +++ b/src/vs/workbench/services/textMate/browser/textMateTokenizationFeatureImpl.ts -@@ -3,7 +3,6 @@ +@@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ --import { importAMDNodeModule } from 'vs/amdX'; +-import { importAMDNodeModule, resolveAmdNodeModulePath } from 'vs/amdX'; ++import { resolveAmdNodeModulePath } from 'vs/amdX'; + import { canASAR, isESM } from 'vs/base/common/amd'; import * as dom from 'vs/base/browser/dom'; import { equals as equalArray } from 'vs/base/common/arrays'; - import { Color } from 'vs/base/common/color'; -@@ -37,7 +36,8 @@ import { TMGrammarFactory, missingTMGrammarErrorMessage } from 'vs/workbench/ser +@@ -38,7 +38,8 @@ import { TMGrammarFactory, missingTMGrammarErrorMessage } from 'vs/workbench/ser import { ITMSyntaxExtensionPoint, grammarsExtPoint } from 'vs/workbench/services/textMate/common/TMGrammars'; import { IValidEmbeddedLanguagesMap, IValidGrammarDefinition, IValidTokenTypeMap } from 'vs/workbench/services/textMate/common/TMScopeRegistry'; import { ITextMateThemingRule, IWorkbenchColorTheme, IWorkbenchThemeService } from 'vs/workbench/services/themes/common/workbenchThemeService'; @@ -329,7 +345,7 @@ index 02eef664f6f..ba2dd435b5f 100644 export class TextMateTokenizationFeature extends Disposable implements ITextMateTokenizationService { private static reportTokenizationTimeCounter = { sync: 0, async: 0 }; -@@ -53,7 +53,7 @@ export class TextMateTokenizationFeature extends Disposable implements ITextMate +@@ -54,7 +55,7 @@ export class TextMateTokenizationFeature extends Disposable implements ITextMate private _grammarDefinitions: IValidGrammarDefinition[] | null = null; private _grammarFactory: TMGrammarFactory | null = null; private readonly _tokenizersRegistrations = new DisposableStore(); @@ -338,7 +354,7 @@ index 02eef664f6f..ba2dd435b5f 100644 private _currentTokenColorMap: string[] | null = null; private readonly _threadedBackgroundTokenizerFactory = this._instantiationService.createInstance( ThreadedBackgroundTokenizerFactory, -@@ -245,8 +245,8 @@ export class TextMateTokenizationFeature extends Disposable implements ITextMate +@@ -246,8 +247,8 @@ export class TextMateTokenizationFeature extends Disposable implements ITextMate return this._grammarFactory; } @@ -349,7 +365,7 @@ index 02eef664f6f..ba2dd435b5f 100644 createOnigScanner: (sources: string[]) => vscodeOniguruma.createOnigScanner(sources), createOnigString: (str: string) => vscodeOniguruma.createOnigString(str) }); -@@ -339,7 +339,7 @@ export class TextMateTokenizationFeature extends Disposable implements ITextMate +@@ -340,7 +341,7 @@ export class TextMateTokenizationFeature extends Disposable implements ITextMate } } @@ -358,7 +374,7 @@ index 02eef664f6f..ba2dd435b5f 100644 if (!this._languageService.isRegisteredLanguageId(languageId)) { return null; } -@@ -356,7 +356,7 @@ export class TextMateTokenizationFeature extends Disposable implements ITextMate +@@ -357,7 +358,7 @@ export class TextMateTokenizationFeature extends Disposable implements ITextMate private _getVSCodeOniguruma(): Promise { if (!this._vscodeOniguruma) { this._vscodeOniguruma = (async () => { @@ -368,18 +384,21 @@ index 02eef664f6f..ba2dd435b5f 100644 data: wasm, print: (str: string) => { diff --git a/src/vs/workbench/services/textfile/common/encoding.ts b/src/vs/workbench/services/textfile/common/encoding.ts -index bae27136de4..6be61851b33 100644 +index 537ec42d3dc..6be61851b33 100644 --- a/src/vs/workbench/services/textfile/common/encoding.ts +++ b/src/vs/workbench/services/textfile/common/encoding.ts -@@ -5,7 +5,6 @@ +@@ -5,10 +5,8 @@ import { Readable, ReadableStream, newWriteableStream, listenStream } from 'vs/base/common/stream'; import { VSBuffer, VSBufferReadable, VSBufferReadableStream } from 'vs/base/common/buffer'; -import { importAMDNodeModule } from 'vs/amdX'; import { CancellationTokenSource } from 'vs/base/common/cancellation'; import { coalesce } from 'vs/base/common/arrays'; +-import { isESM } from 'vs/base/common/amd'; -@@ -82,7 +81,7 @@ class DecoderStream implements IDecoderStream { + export const UTF8 = 'utf8'; + export const UTF8_with_bom = 'utf8bom'; +@@ -83,7 +81,7 @@ class DecoderStream implements IDecoderStream { static async create(encoding: string): Promise { let decoder: IDecoderStream | undefined = undefined; if (encoding !== UTF8) { @@ -388,7 +407,7 @@ index bae27136de4..6be61851b33 100644 decoder = iconv.getDecoder(toNodeEncoding(encoding)); } else { const utf8TextDecoder = new TextDecoder(); -@@ -215,7 +214,7 @@ export function toDecodeStream(source: VSBufferReadableStream, options: IDecodeS +@@ -216,7 +214,7 @@ export function toDecodeStream(source: VSBufferReadableStream, options: IDecodeS } export async function toEncodeReadable(readable: Readable, encoding: string, options?: { addBOM?: boolean }): Promise { @@ -397,7 +416,7 @@ index bae27136de4..6be61851b33 100644 const encoder = iconv.getEncoder(toNodeEncoding(encoding), options); let bytesWritten = false; -@@ -264,7 +263,7 @@ export async function toEncodeReadable(readable: Readable, encoding: str +@@ -265,7 +263,7 @@ export async function toEncodeReadable(readable: Readable, encoding: str } export async function encodingExists(encoding: string): Promise { @@ -406,11 +425,15 @@ index bae27136de4..6be61851b33 100644 return iconv.encodingExists(toNodeEncoding(encoding)); } -@@ -320,7 +319,7 @@ const IGNORE_ENCODINGS = ['ascii', 'utf-16', 'utf-32']; +@@ -321,11 +319,7 @@ const IGNORE_ENCODINGS = ['ascii', 'utf-16', 'utf-32']; * Guesses the encoding from buffer. */ async function guessEncodingByBuffer(buffer: VSBuffer, candidateGuessEncodings?: string[]): Promise { -- const jschardet = await importAMDNodeModule('jschardet', 'dist/jschardet.min.js'); +- +- // TODO@bpasero TODO@esm: this used to be `dist/jschardet.min.js`, but we are running into an issue that +- // https://github.com/aadsm/jschardet/pull/96 mitigates. Long-term we should just add minification +- // of dependencies into our build process so that we do not depend on how others are doing it. +- const jschardet = await importAMDNodeModule('jschardet', isESM ? 'dist/jschardet.js' : 'dist/jschardet.min.js'); + const jschardet = await import('jschardet'); // ensure to limit buffer for guessing due to https://github.com/aadsm/jschardet/issues/53 diff --git a/vscode-paches/0018-feat-export-some-classes-and-make-some-methods-acces.patch b/vscode-paches/0017-feat-export-some-classes-and-make-some-methods-acces.patch similarity index 97% rename from vscode-paches/0018-feat-export-some-classes-and-make-some-methods-acces.patch rename to vscode-paches/0017-feat-export-some-classes-and-make-some-methods-acces.patch index a8d13281..05ed647c 100644 --- a/vscode-paches/0018-feat-export-some-classes-and-make-some-methods-acces.patch +++ b/vscode-paches/0017-feat-export-some-classes-and-make-some-methods-acces.patch @@ -58,10 +58,10 @@ index 99dd3279fe8..b692381eaa2 100644 declare readonly _serviceBrand: undefined; diff --git a/src/vs/workbench/browser/layout.ts b/src/vs/workbench/browser/layout.ts -index 6ad52a2695e..c76aed46fc3 100644 +index 4ca393d98c3..2753d08f437 100644 --- a/src/vs/workbench/browser/layout.ts +++ b/src/vs/workbench/browser/layout.ts -@@ -52,7 +52,7 @@ import { CustomTitleBarVisibility } from '../../platform/window/common/window'; +@@ -51,7 +51,7 @@ import { CodeWindow, mainWindow } from 'vs/base/browser/window'; //#region Layout Implementation @@ -70,7 +70,7 @@ index 6ad52a2695e..c76aed46fc3 100644 activeContainerId: number; mainWindowFullscreen: boolean; readonly maximized: Set; -@@ -66,12 +66,12 @@ interface ILayoutRuntimeState { +@@ -65,12 +65,12 @@ interface ILayoutRuntimeState { }; } @@ -85,7 +85,7 @@ index 6ad52a2695e..c76aed46fc3 100644 readonly views: { readonly defaults: string[] | undefined; readonly containerToRestore: { -@@ -105,11 +105,11 @@ enum LayoutClasses { +@@ -104,11 +104,11 @@ enum LayoutClasses { WINDOW_BORDER = 'border' } @@ -100,10 +100,10 @@ index 6ad52a2695e..c76aed46fc3 100644 readonly filesToDiff?: IPathToOpen[]; readonly filesToMerge?: IPathToOpen[]; diff --git a/src/vs/workbench/browser/workbench.ts b/src/vs/workbench/browser/workbench.ts -index b0688133537..b0f76f8d08d 100644 +index 7c11f502ea5..5211f730099 100644 --- a/src/vs/workbench/browser/workbench.ts +++ b/src/vs/workbench/browser/workbench.ts -@@ -81,7 +81,7 @@ export class Workbench extends Layout { +@@ -82,7 +82,7 @@ export class Workbench extends Layout { this.registerErrorHandler(logService); } @@ -270,7 +270,7 @@ index 0e60b30cd13..a8fef74dbc4 100644 private readonly _onDidChangeEnablement = this._register(new Emitter<{ extension: ExtensionIdentifier; featureId: string; enabled: boolean }>()); diff --git a/src/vs/workbench/services/extensions/browser/extensionService.ts b/src/vs/workbench/services/extensions/browser/extensionService.ts -index a5596ccb66c..678e10e3be2 100644 +index 82347b71978..83bce6798aa 100644 --- a/src/vs/workbench/services/extensions/browser/extensionService.ts +++ b/src/vs/workbench/services/extensions/browser/extensionService.ts @@ -117,7 +117,7 @@ export class ExtensionService extends AbstractExtensionService implements IExten @@ -314,10 +314,10 @@ index 696f8227e6e..48c0e3bc2d4 100644 readonly _serviceBrand: undefined; diff --git a/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.ts b/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.ts -index 8f4dc4a6b57..b54e3a25543 100644 +index 543e8cd2206..0c2e68dd1ec 100644 --- a/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.ts +++ b/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.ts -@@ -76,7 +76,7 @@ export class WebWorkerExtensionHost extends Disposable implements IExtensionHost +@@ -78,7 +78,7 @@ export class WebWorkerExtensionHost extends Disposable implements IExtensionHost this._extensionHostLogsLocation = joinPath(this._environmentService.extHostLogsPath, 'webWorker'); } @@ -327,7 +327,7 @@ index 8f4dc4a6b57..b54e3a25543 100644 if (this._environmentService.debugExtensionHost && this._environmentService.debugRenderer) { suffixSearchParams.set('debugged', '1'); diff --git a/src/vs/workbench/services/extensions/common/abstractExtensionService.ts b/src/vs/workbench/services/extensions/common/abstractExtensionService.ts -index be9bb04b104..a4a9a3cd143 100644 +index df1b2733947..dace2286a1c 100644 --- a/src/vs/workbench/services/extensions/common/abstractExtensionService.ts +++ b/src/vs/workbench/services/extensions/common/abstractExtensionService.ts @@ -95,9 +95,9 @@ export abstract class AbstractExtensionService extends Disposable implements IEx @@ -343,7 +343,7 @@ index be9bb04b104..a4a9a3cd143 100644 @IInstantiationService protected readonly _instantiationService: IInstantiationService, @INotificationService protected readonly _notificationService: INotificationService, @IWorkbenchEnvironmentService protected readonly _environmentService: IWorkbenchEnvironmentService, -@@ -222,7 +222,7 @@ export abstract class AbstractExtensionService extends Disposable implements IEx +@@ -224,7 +224,7 @@ export abstract class AbstractExtensionService extends Disposable implements IEx //#region deltaExtensions @@ -352,7 +352,7 @@ index be9bb04b104..a4a9a3cd143 100644 this._deltaExtensionsQueue.push(item); if (this._inHandleDeltaExtensions) { // Let the current item finish, the new one will be picked up -@@ -1274,7 +1274,7 @@ export interface IExtensionHostFactory { +@@ -1285,7 +1285,7 @@ export interface IExtensionHostFactory { createExtensionHost(runningLocations: ExtensionRunningLocationTracker, runningLocation: ExtensionRunningLocation, isInitialStart: boolean): IExtensionHost | null; } diff --git a/vscode-paches/0019-fix-improve-extension-contribution-types.patch b/vscode-paches/0018-fix-improve-extension-contribution-types.patch similarity index 99% rename from vscode-paches/0019-fix-improve-extension-contribution-types.patch rename to vscode-paches/0018-fix-improve-extension-contribution-types.patch index 6d4d0eea..227ddd57 100644 --- a/vscode-paches/0019-fix-improve-extension-contribution-types.patch +++ b/vscode-paches/0018-fix-improve-extension-contribution-types.patch @@ -1627,12 +1627,12 @@ index 822260bdc2f..43dac321e5b 100644 export interface IExtensionCapabilities { diff --git a/src/vs/workbench/services/search/common/queryBuilder.ts b/src/vs/workbench/services/search/common/queryBuilder.ts -index 0db88575f27..baf35ad2efe 100644 +index 53b37e5f17d..1360c0dcf76 100644 --- a/src/vs/workbench/services/search/common/queryBuilder.ts +++ b/src/vs/workbench/services/search/common/queryBuilder.ts -@@ -545,10 +545,10 @@ export class QueryBuilder { +@@ -604,10 +604,10 @@ export class QueryBuilder { folderName: includeFolderName ? folderName : undefined, - excludePattern: Object.keys(excludePattern).length > 0 ? excludePattern : undefined, + excludePattern: excludePatternRet, fileEncoding: folderConfig.files && folderConfig.files.encoding, - disregardIgnoreFiles: typeof options.disregardIgnoreFiles === 'boolean' ? options.disregardIgnoreFiles : !folderConfig.search.useIgnoreFiles, - disregardGlobalIgnoreFiles: typeof options.disregardGlobalIgnoreFiles === 'boolean' ? options.disregardGlobalIgnoreFiles : !folderConfig.search.useGlobalIgnoreFiles, diff --git a/vscode-paches/0020-fix-fix-dependency-injection.patch b/vscode-paches/0019-fix-fix-dependency-injection.patch similarity index 100% rename from vscode-paches/0020-fix-fix-dependency-injection.patch rename to vscode-paches/0019-fix-fix-dependency-injection.patch diff --git a/vscode-paches/0021-fix-only-run-some-code-if-inside-the-worker.patch b/vscode-paches/0020-fix-only-run-some-code-if-inside-the-worker.patch similarity index 99% rename from vscode-paches/0021-fix-only-run-some-code-if-inside-the-worker.patch rename to vscode-paches/0020-fix-only-run-some-code-if-inside-the-worker.patch index 12858fe8..b59e52e3 100644 --- a/vscode-paches/0021-fix-only-run-some-code-if-inside-the-worker.patch +++ b/vscode-paches/0020-fix-only-run-some-code-if-inside-the-worker.patch @@ -10,7 +10,7 @@ Subject: [PATCH] fix: only run some code if inside the worker 3 files changed, 19 insertions(+), 9 deletions(-) diff --git a/src/vs/workbench/api/common/extHostExtensionService.ts b/src/vs/workbench/api/common/extHostExtensionService.ts -index 418b08c2422..0345c7c2749 100644 +index 97ecf09ea56..367a529e5ff 100644 --- a/src/vs/workbench/api/common/extHostExtensionService.ts +++ b/src/vs/workbench/api/common/extHostExtensionService.ts @@ -45,7 +45,7 @@ import { Schemas } from 'vs/base/common/network'; diff --git a/vscode-paches/0022-fix-override-log-services-even-in-main-thread.patch b/vscode-paches/0021-fix-override-log-services-even-in-main-thread.patch similarity index 100% rename from vscode-paches/0022-fix-override-log-services-even-in-main-thread.patch rename to vscode-paches/0021-fix-override-log-services-even-in-main-thread.patch diff --git a/vscode-paches/0023-feat-expose-extHostExtensionService.patch b/vscode-paches/0022-feat-expose-extHostExtensionService.patch similarity index 100% rename from vscode-paches/0023-feat-expose-extHostExtensionService.patch rename to vscode-paches/0022-feat-expose-extHostExtensionService.patch diff --git a/vscode-paches/0023-cleanup-remove-non-ESM-compatible-code.patch b/vscode-paches/0023-cleanup-remove-non-ESM-compatible-code.patch new file mode 100644 index 00000000..ad1721c2 --- /dev/null +++ b/vscode-paches/0023-cleanup-remove-non-ESM-compatible-code.patch @@ -0,0 +1,178 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= +Date: Mon, 11 Mar 2024 17:48:09 +0100 +Subject: [PATCH] cleanup: remove non-ESM compatible code + +--- + src/vs/base/common/worker/simpleWorker.ts | 41 +------------------ + .../common/services/editorSimpleWorker.ts | 23 +---------- + .../api/node/extensionHostProcess.ts | 18 -------- + .../webWorkerExtensionHostIframe.esm.html | 9 +--- + 4 files changed, 4 insertions(+), 87 deletions(-) + +diff --git a/src/vs/base/common/worker/simpleWorker.ts b/src/vs/base/common/worker/simpleWorker.ts +index cf19e69171a..fafef7ac754 100644 +--- a/src/vs/base/common/worker/simpleWorker.ts ++++ b/src/vs/base/common/worker/simpleWorker.ts +@@ -7,18 +7,10 @@ import { CharCode } from 'vs/base/common/charCode'; + import { onUnexpectedError, transformErrorForSerialization } from 'vs/base/common/errors'; + import { Emitter, Event } from 'vs/base/common/event'; + import { Disposable, IDisposable } from 'vs/base/common/lifecycle'; +-import { AppResourcePath, FileAccess } from 'vs/base/common/network'; + import { isWeb } from 'vs/base/common/platform'; + import * as strings from 'vs/base/common/strings'; + import { URI } from 'vs/base/common/uri'; + +-// ESM-comment-begin +-const isESM = false; +-// ESM-comment-end +-// ESM-uncomment-begin +-// const isESM = true; +-// ESM-uncomment-end +- + const DEFAULT_CHANNEL = 'default'; + const INITIALIZE = '$initialize'; + +@@ -576,38 +568,7 @@ export class SimpleWorkerServer implements IWorkerServer { + globalThis.require.config(loaderConfig); + } + +- if (isESM) { +- const url = FileAccess.asBrowserUri(`${moduleId}.js` as AppResourcePath).toString(true); +- return import(`${url}`).then((module: { create: IRequestHandlerFactory }) => { +- this._requestHandler = module.create(this); +- +- if (!this._requestHandler) { +- throw new Error(`No RequestHandler!`); +- } +- }); +- } +- +- return new Promise((resolve, reject) => { +- // Use the global require to be sure to get the global config +- +- // ESM-comment-begin +- const req = (globalThis.require || require); +- // ESM-comment-end +- // ESM-uncomment-begin +- // const req = globalThis.require; +- // ESM-uncomment-end +- +- req([moduleId], (module: { create: IRequestHandlerFactory }) => { +- this._requestHandler = module.create(this); +- +- if (!this._requestHandler) { +- reject(new Error(`No RequestHandler!`)); +- return; +- } +- +- resolve(); +- }, reject); +- }); ++ return Promise.reject(new Error(`Unexpected usage`)); + } + } + +diff --git a/src/vs/editor/common/services/editorSimpleWorker.ts b/src/vs/editor/common/services/editorSimpleWorker.ts +index 4bf19b0d25e..7d9721053c1 100644 +--- a/src/vs/editor/common/services/editorSimpleWorker.ts ++++ b/src/vs/editor/common/services/editorSimpleWorker.ts +@@ -25,20 +25,12 @@ import { DetailedLineRangeMapping } from '../diff/rangeMapping'; + import { linesDiffComputers } from 'vs/editor/common/diff/linesDiffComputers'; + import { createProxyObject, getAllMethodNames } from 'vs/base/common/objects'; + import { IDocumentDiffProviderOptions } from 'vs/editor/common/diff/documentDiffProvider'; +-import { AppResourcePath, FileAccess } from 'vs/base/common/network'; + import { BugIndicatingError } from 'vs/base/common/errors'; + import { computeDefaultDocumentColors } from 'vs/editor/common/languages/defaultDocumentColorsComputer'; + import { FindSectionHeaderOptions, SectionHeader, findSectionHeaders } from 'vs/editor/common/services/findSectionHeaders'; + import { IRawModelData, IWorkerTextModelSyncChannelServer } from './textModelSync/textModelSync.protocol'; + import { ICommonModel, WorkerTextModelSyncServer } from 'vs/editor/common/services/textModelSync/textModelSync.impl'; + +-// ESM-comment-begin +-const isESM = false; +-// ESM-comment-end +-// ESM-uncomment-begin +-// const isESM = true; +-// ESM-uncomment-end +- + export interface IMirrorModel extends IMirrorTextModel { + readonly uri: URI; + readonly version: number; +@@ -558,20 +550,7 @@ export class EditorSimpleWorker extends BaseEditorSimpleWorker { + return Promise.resolve(getAllMethodNames(this._foreignModule)); + } + +- return new Promise((resolve, reject) => { +- +- const onModuleCallback = (foreignModule: { create: IForeignModuleFactory }) => { +- this._foreignModule = foreignModule.create(ctx, createData); +- resolve(getAllMethodNames(this._foreignModule)); +- }; +- +- if (!isESM) { +- require([`${moduleId}`], onModuleCallback, reject); +- } else { +- const url = FileAccess.asBrowserUri(`${moduleId}.js` as AppResourcePath).toString(true); +- import(`${url}`).then(onModuleCallback).catch(reject); +- } +- }); ++ return Promise.reject(new Error(`Unexpected usage`)); + } + + // foreign method request +diff --git a/src/vs/workbench/api/node/extensionHostProcess.ts b/src/vs/workbench/api/node/extensionHostProcess.ts +index 80a60c1d4c1..5f1736f72a0 100644 +--- a/src/vs/workbench/api/node/extensionHostProcess.ts ++++ b/src/vs/workbench/api/node/extensionHostProcess.ts +@@ -57,24 +57,6 @@ const args = minimist(process.argv.slice(2), { + ] + }) as ParsedExtHostArgs; + +-// With Electron 2.x and node.js 8.x the "natives" module +-// can cause a native crash (see https://github.com/nodejs/node/issues/19891 and +-// https://github.com/electron/electron/issues/10905). To prevent this from +-// happening we essentially blocklist this module from getting loaded in any +-// extension by patching the node require() function. +-(function () { +- const Module = globalThis._VSCODE_NODE_MODULES.module as any; +- const originalLoad = Module._load; +- +- Module._load = function (request: string) { +- if (request === 'natives') { +- throw new Error('Either the extension or an NPM dependency is using the [unsupported "natives" node module](https://go.microsoft.com/fwlink/?linkid=871887).'); +- } +- +- return originalLoad.apply(this, arguments); +- }; +-})(); +- + // custom process.exit logic... + const nativeExit: IExitFn = process.exit.bind(process); + const nativeOn = process.on.bind(process); +diff --git a/src/vs/workbench/services/extensions/worker/webWorkerExtensionHostIframe.esm.html b/src/vs/workbench/services/extensions/worker/webWorkerExtensionHostIframe.esm.html +index 5368e599820..908984d7dc2 100644 +--- a/src/vs/workbench/services/extensions/worker/webWorkerExtensionHostIframe.esm.html ++++ b/src/vs/workbench/services/extensions/worker/webWorkerExtensionHostIframe.esm.html +@@ -4,7 +4,7 @@ + + + +@@ -93,12 +93,7 @@ + workerUrl += '?vscode-coi=2'; // COEP + } + +- // ESM-comment-begin +- const isESM = false; +- // ESM-comment-end +- // ESM-uncomment-begin +- // const isESM = true; +- // ESM-uncomment-end ++ const isESM = true; + + const blob = new Blob([[ + `/*extensionHostWorker*/`, diff --git a/vscode-paches/0024-cleanup-remove-non-ESM-compatible-code.patch b/vscode-paches/0024-cleanup-remove-non-ESM-compatible-code.patch deleted file mode 100644 index ded6c355..00000000 --- a/vscode-paches/0024-cleanup-remove-non-ESM-compatible-code.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= -Date: Mon, 11 Mar 2024 17:48:09 +0100 -Subject: [PATCH] cleanup: remove non-ESM compatible code - ---- - .../workbench/api/node/extensionHostProcess.ts | 18 ------------------ - 1 file changed, 18 deletions(-) - -diff --git a/src/vs/workbench/api/node/extensionHostProcess.ts b/src/vs/workbench/api/node/extensionHostProcess.ts -index 80a60c1d4c1..5f1736f72a0 100644 ---- a/src/vs/workbench/api/node/extensionHostProcess.ts -+++ b/src/vs/workbench/api/node/extensionHostProcess.ts -@@ -57,24 +57,6 @@ const args = minimist(process.argv.slice(2), { - ] - }) as ParsedExtHostArgs; - --// With Electron 2.x and node.js 8.x the "natives" module --// can cause a native crash (see https://github.com/nodejs/node/issues/19891 and --// https://github.com/electron/electron/issues/10905). To prevent this from --// happening we essentially blocklist this module from getting loaded in any --// extension by patching the node require() function. --(function () { -- const Module = globalThis._VSCODE_NODE_MODULES.module as any; -- const originalLoad = Module._load; -- -- Module._load = function (request: string) { -- if (request === 'natives') { -- throw new Error('Either the extension or an NPM dependency is using the [unsupported "natives" node module](https://go.microsoft.com/fwlink/?linkid=871887).'); -- } -- -- return originalLoad.apply(this, arguments); -- }; --})(); -- - // custom process.exit logic... - const nativeExit: IExitFn = process.exit.bind(process); - const nativeOn = process.on.bind(process); diff --git a/vscode-paches/0025-feat-expose-api-factory.patch b/vscode-paches/0024-feat-expose-api-factory.patch similarity index 100% rename from vscode-paches/0025-feat-expose-api-factory.patch rename to vscode-paches/0024-feat-expose-api-factory.patch diff --git a/vscode-paches/0026-refactor-split-some-modules-to-be-able-to-import-the.patch b/vscode-paches/0025-refactor-split-some-modules-to-be-able-to-import-the.patch similarity index 97% rename from vscode-paches/0026-refactor-split-some-modules-to-be-able-to-import-the.patch rename to vscode-paches/0025-refactor-split-some-modules-to-be-able-to-import-the.patch index a2c69aae..471b3007 100644 --- a/vscode-paches/0026-refactor-split-some-modules-to-be-able-to-import-the.patch +++ b/vscode-paches/0025-refactor-split-some-modules-to-be-able-to-import-the.patch @@ -7,14 +7,14 @@ Subject: [PATCH] refactor: split some modules to be able to import them --- .../editor/editor.contribution._autosave.ts | 9 + .../parts/editor/editor.contribution.ts | 3 +- - .../files/browser/fileCommands._save.ts | 224 ++++++ - .../contrib/files/browser/fileCommands.ts | 220 +----- - .../files.contribution._configuration.ts | 324 +++++++++ + .../files/browser/fileCommands._save.ts | 225 ++++++ + .../contrib/files/browser/fileCommands.ts | 221 +----- + .../files.contribution._configuration.ts | 297 ++++++++ .../browser/files.contribution._editorPane.ts | 93 +++ - .../browser/files.contribution._explorer.ts | 275 ++++++++ + .../browser/files.contribution._explorer.ts | 280 ++++++++ .../files.contribution._fileEditorFactory.ts | 23 + - .../files/browser/files.contribution.ts | 654 +----------------- - 9 files changed, 961 insertions(+), 864 deletions(-) + .../files/browser/files.contribution.ts | 659 +----------------- + 9 files changed, 940 insertions(+), 870 deletions(-) create mode 100644 src/vs/workbench/browser/parts/editor/editor.contribution._autosave.ts create mode 100644 src/vs/workbench/contrib/files/browser/fileCommands._save.ts create mode 100644 src/vs/workbench/contrib/files/browser/files.contribution._configuration.ts @@ -38,7 +38,7 @@ index 00000000000..c7416d68719 + +registerWorkbenchContribution2(EditorAutoSave.ID, EditorAutoSave, WorkbenchPhase.BlockRestore); diff --git a/src/vs/workbench/browser/parts/editor/editor.contribution.ts b/src/vs/workbench/browser/parts/editor/editor.contribution.ts -index fabc137b0ae..0a4ce484085 100644 +index 753f4aa8860..6effe9075e1 100644 --- a/src/vs/workbench/browser/parts/editor/editor.contribution.ts +++ b/src/vs/workbench/browser/parts/editor/editor.contribution.ts @@ -61,7 +61,6 @@ import { isMacintosh } from 'vs/base/common/platform'; @@ -67,10 +67,10 @@ index fabc137b0ae..0a4ce484085 100644 registerWorkbenchContribution2(DynamicEditorConfigurations.ID, DynamicEditorConfigurations, WorkbenchPhase.BlockRestore); diff --git a/src/vs/workbench/contrib/files/browser/fileCommands._save.ts b/src/vs/workbench/contrib/files/browser/fileCommands._save.ts new file mode 100644 -index 00000000000..037d615a820 +index 00000000000..00d9d64137d --- /dev/null +++ b/src/vs/workbench/contrib/files/browser/fileCommands._save.ts -@@ -0,0 +1,224 @@ +@@ -0,0 +1,225 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. @@ -95,7 +95,7 @@ index 00000000000..037d615a820 +import { EmbeddedCodeEditorWidget } from 'vs/editor/browser/widget/codeEditor/embeddedCodeEditorWidget'; +import { ITextFileService } from 'vs/workbench/services/textfile/common/textfiles'; +import { isCancellationError } from 'vs/base/common/errors'; -+import { toAction } from 'vs/base/common/actions'; ++import { toAction, IAction } from 'vs/base/common/actions'; +import { hash } from 'vs/base/common/hash'; +import { SAVE_FILE_COMMAND_ID, SAVE_FILE_WITHOUT_FORMATTING_COMMAND_ID, SAVE_FILE_AS_COMMAND_ID, SAVE_ALL_COMMAND_ID, SAVE_ALL_IN_GROUP_COMMAND_ID, SAVE_FILES_COMMAND_ID, REVERT_FILE_COMMAND_ID } from './fileConstants'; +import { IListService } from 'vs/platform/list/browser/listService'; @@ -182,16 +182,17 @@ index 00000000000..037d615a820 + await editorService.save(editors, options); + } catch (error) { + if (!isCancellationError(error)) { ++ const actions: IAction[] = [toAction({ id: 'workbench.action.files.saveEditors', label: nls.localize('retry', "Retry"), run: () => instantiationService.invokeFunction(accessor => doSaveEditors(accessor, editors, options)) })]; ++ const editorsToRevert = editors.filter(({ editor }) => !editor.hasCapability(EditorInputCapabilities.Untitled) /* all except untitled to prevent unexpected data-loss */); ++ if (editorsToRevert.length > 0) { ++ actions.push(toAction({ id: 'workbench.action.files.revertEditors', label: editorsToRevert.length > 1 ? nls.localize('revertAll', "Revert All") : nls.localize('revert', "Revert"), run: () => editorService.revert(editorsToRevert) })); ++ } ++ + notificationService.notify({ + id: editors.map(({ editor }) => hash(editor.resource?.toString())).join(), // ensure unique notification ID per set of editor + severity: Severity.Error, + message: nls.localize({ key: 'genericSaveError', comment: ['{0} is the resource that failed to save and {1} the error message'] }, "Failed to save '{0}': {1}", editors.map(({ editor }) => editor.getName()).join(', '), toErrorMessage(error, false)), -+ actions: { -+ primary: [ -+ toAction({ id: 'workbench.action.files.saveEditors', label: nls.localize('retry', "Retry"), run: () => instantiationService.invokeFunction(accessor => doSaveEditors(accessor, editors, options)) }), -+ toAction({ id: 'workbench.action.files.revertEditors', label: nls.localize('discard', "Discard"), run: () => editorService.revert(editors) }) -+ ] -+ } ++ actions: { primary: actions } + }); + } + } @@ -296,7 +297,7 @@ index 00000000000..037d615a820 + } +}); diff --git a/src/vs/workbench/contrib/files/browser/fileCommands.ts b/src/vs/workbench/contrib/files/browser/fileCommands.ts -index bfa8d97796c..474e3898e59 100644 +index c17a5b80692..501b58373c1 100644 --- a/src/vs/workbench/contrib/files/browser/fileCommands.ts +++ b/src/vs/workbench/contrib/files/browser/fileCommands.ts @@ -3,10 +3,10 @@ @@ -345,7 +346,7 @@ index bfa8d97796c..474e3898e59 100644 -import { ITextFileService } from 'vs/workbench/services/textfile/common/textfiles'; import { IUriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentity'; -import { isCancellationError } from 'vs/base/common/errors'; --import { toAction } from 'vs/base/common/actions'; +-import { IAction, toAction } from 'vs/base/common/actions'; import { EditorOpenSource, EditorResolution } from 'vs/platform/editor/common/editor'; -import { hash } from 'vs/base/common/hash'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration'; @@ -363,7 +364,7 @@ index bfa8d97796c..474e3898e59 100644 export const openWindowCommand = (accessor: ServicesAccessor, toOpen: IWindowOpenable[], options?: IOpenWindowOptions) => { if (Array.isArray(toOpen)) { -@@ -362,202 +354,6 @@ CommandsRegistry.registerCommand({ +@@ -362,203 +354,6 @@ CommandsRegistry.registerCommand({ // Save / Save As / Save All / Revert @@ -449,16 +450,17 @@ index bfa8d97796c..474e3898e59 100644 - await editorService.save(editors, options); - } catch (error) { - if (!isCancellationError(error)) { +- const actions: IAction[] = [toAction({ id: 'workbench.action.files.saveEditors', label: nls.localize('retry', "Retry"), run: () => instantiationService.invokeFunction(accessor => doSaveEditors(accessor, editors, options)) })]; +- const editorsToRevert = editors.filter(({ editor }) => !editor.hasCapability(EditorInputCapabilities.Untitled) /* all except untitled to prevent unexpected data-loss */); +- if (editorsToRevert.length > 0) { +- actions.push(toAction({ id: 'workbench.action.files.revertEditors', label: editorsToRevert.length > 1 ? nls.localize('revertAll', "Revert All") : nls.localize('revert', "Revert"), run: () => editorService.revert(editorsToRevert) })); +- } +- - notificationService.notify({ - id: editors.map(({ editor }) => hash(editor.resource?.toString())).join(), // ensure unique notification ID per set of editor - severity: Severity.Error, - message: nls.localize({ key: 'genericSaveError', comment: ['{0} is the resource that failed to save and {1} the error message'] }, "Failed to save '{0}': {1}", editors.map(({ editor }) => editor.getName()).join(', '), toErrorMessage(error, false)), -- actions: { -- primary: [ -- toAction({ id: 'workbench.action.files.saveEditors', label: nls.localize('retry', "Retry"), run: () => instantiationService.invokeFunction(accessor => doSaveEditors(accessor, editors, options)) }), -- toAction({ id: 'workbench.action.files.revertEditors', label: nls.localize('discard', "Discard"), run: () => editorService.revert(editors) }) -- ] -- } +- actions: { primary: actions } - }); - } - } @@ -568,10 +570,10 @@ index bfa8d97796c..474e3898e59 100644 handler: (accessor, resource: URI | object) => { diff --git a/src/vs/workbench/contrib/files/browser/files.contribution._configuration.ts b/src/vs/workbench/contrib/files/browser/files.contribution._configuration.ts new file mode 100644 -index 00000000000..5979ca58c83 +index 00000000000..b44c86e2c7e --- /dev/null +++ b/src/vs/workbench/contrib/files/browser/files.contribution._configuration.ts -@@ -0,0 +1,324 @@ +@@ -0,0 +1,297 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. @@ -869,33 +871,6 @@ index 00000000000..5979ca58c83 + }, + } +}); -+ -+configurationRegistry.registerConfiguration({ -+ ...editorConfigurationBaseNode, -+ properties: { -+ 'editor.formatOnSave': { -+ 'type': 'boolean', -+ 'description': nls.localize('formatOnSave', "Format a file on save. A formatter must be available, the file must not be saved after delay, and the editor must not be shutting down."), -+ 'scope': ConfigurationScope.LANGUAGE_OVERRIDABLE, -+ }, -+ 'editor.formatOnSaveMode': { -+ 'type': 'string', -+ 'default': 'file', -+ 'enum': [ -+ 'file', -+ 'modifications', -+ 'modificationsIfAvailable' -+ ], -+ 'enumDescriptions': [ -+ nls.localize({ key: 'everything', comment: ['This is the description of an option'] }, "Format the whole file."), -+ nls.localize({ key: 'modification', comment: ['This is the description of an option'] }, "Format modifications (requires source control)."), -+ nls.localize({ key: 'modificationIfAvailable', comment: ['This is the description of an option'] }, "Will attempt to format modifications only (requires source control). If source control can't be used, then the whole file will be formatted."), -+ ], -+ 'markdownDescription': nls.localize('formatOnSaveMode', "Controls if format on save formats the whole file or only modifications. Only applies when `#editor.formatOnSave#` is enabled."), -+ 'scope': ConfigurationScope.LANGUAGE_OVERRIDABLE, -+ }, -+ } -+}); diff --git a/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.ts b/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.ts new file mode 100644 index 00000000000..27601da294a @@ -997,10 +972,10 @@ index 00000000000..27601da294a +}); diff --git a/src/vs/workbench/contrib/files/browser/files.contribution._explorer.ts b/src/vs/workbench/contrib/files/browser/files.contribution._explorer.ts new file mode 100644 -index 00000000000..628bd4fd8bf +index 00000000000..6a76fd36387 --- /dev/null +++ b/src/vs/workbench/contrib/files/browser/files.contribution._explorer.ts -@@ -0,0 +1,275 @@ +@@ -0,0 +1,280 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. @@ -1162,6 +1137,11 @@ index 00000000000..628bd4fd8bf + ], + 'description': nls.localize('sortOrderLexicographicOptions', "Controls the lexicographic sorting of file and folder names in the Explorer.") + }, ++ 'explorer.sortOrderReverse': { ++ 'type': 'boolean', ++ 'description': nls.localize('sortOrderReverse', "Controls whether the file and folder sort order, should be reversed."), ++ 'default': false, ++ }, + 'explorer.decorations.colors': { + type: 'boolean', + description: nls.localize('explorer.decorations.colors', "Controls whether file decorations should use colors."), @@ -1306,10 +1286,10 @@ index 00000000000..2f31d6a7984 + } +}); diff --git a/src/vs/workbench/contrib/files/browser/files.contribution.ts b/src/vs/workbench/contrib/files/browser/files.contribution.ts -index a7edb2ec8e3..fa00f1d55a1 100644 +index 097721653f6..fa00f1d55a1 100644 --- a/src/vs/workbench/contrib/files/browser/files.contribution.ts +++ b/src/vs/workbench/contrib/files/browser/files.contribution.ts -@@ -3,653 +3,7 @@ +@@ -3,658 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ @@ -1843,6 +1823,11 @@ index a7edb2ec8e3..fa00f1d55a1 100644 - ], - 'description': nls.localize('sortOrderLexicographicOptions', "Controls the lexicographic sorting of file and folder names in the Explorer.") - }, +- 'explorer.sortOrderReverse': { +- 'type': 'boolean', +- 'description': nls.localize('sortOrderReverse', "Controls whether the file and folder sort order, should be reversed."), +- 'default': false, +- }, - 'explorer.decorations.colors': { - type: 'boolean', - description: nls.localize('explorer.decorations.colors', "Controls whether file decorations should use colors."), diff --git a/vscode-paches/0027-fix-replace-map-by-forEach.patch b/vscode-paches/0026-fix-replace-map-by-forEach.patch similarity index 94% rename from vscode-paches/0027-fix-replace-map-by-forEach.patch rename to vscode-paches/0026-fix-replace-map-by-forEach.patch index 0493e78e..1e6ee5e8 100644 --- a/vscode-paches/0027-fix-replace-map-by-forEach.patch +++ b/vscode-paches/0026-fix-replace-map-by-forEach.patch @@ -22,10 +22,10 @@ index a9fc39c84ed..957684aa7f7 100644 : compositeSwitcherBar.getWidth(currentItemsLength + index) )); diff --git a/src/vs/workbench/browser/parts/views/viewPaneContainer.ts b/src/vs/workbench/browser/parts/views/viewPaneContainer.ts -index 01df5c12a69..253b3890932 100644 +index 9cb5f5920d1..4f591b9ce05 100644 --- a/src/vs/workbench/browser/parts/views/viewPaneContainer.ts +++ b/src/vs/workbench/browser/parts/views/viewPaneContainer.ts -@@ -685,7 +685,7 @@ export class ViewPaneContainer extends Component implements IViewPaneContainer { +@@ -688,7 +688,7 @@ export class ViewPaneContainer extends Component implements IViewPaneContainer { } this.panes.filter(view => view.isVisible() !== visible) diff --git a/vscode-paches/0028-feat-only-apply-style-on-specific-class.patch b/vscode-paches/0027-feat-only-apply-style-on-specific-class.patch similarity index 100% rename from vscode-paches/0028-feat-only-apply-style-on-specific-class.patch rename to vscode-paches/0027-feat-only-apply-style-on-specific-class.patch diff --git a/vscode-paches/0029-fix-do-not-call-FileAccess.asBrowserUri-at-the-root-.patch b/vscode-paches/0028-fix-do-not-call-FileAccess.asBrowserUri-at-the-root-.patch similarity index 98% rename from vscode-paches/0029-fix-do-not-call-FileAccess.asBrowserUri-at-the-root-.patch rename to vscode-paches/0028-fix-do-not-call-FileAccess.asBrowserUri-at-the-root-.patch index e121a61b..c4ceb233 100644 --- a/vscode-paches/0029-fix-do-not-call-FileAccess.asBrowserUri-at-the-root-.patch +++ b/vscode-paches/0028-fix-do-not-call-FileAccess.asBrowserUri-at-the-root-.patch @@ -37,7 +37,7 @@ index a298cf3c232..f91b7cc7398 100644 if (!data.icon.complete) { data.icon.style.visibility = 'hidden'; diff --git a/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts b/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts -index 1518123967e..bcc2b0ca734 100644 +index ba69585c920..08fb07a831c 100644 --- a/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts +++ b/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts @@ -19,7 +19,7 @@ import { @@ -49,7 +49,7 @@ index 1518123967e..bcc2b0ca734 100644 import { getGalleryExtensionTelemetryData, getLocalExtensionTelemetryData, areSameExtensions, groupByExtension, getGalleryExtensionId } from 'vs/platform/extensionManagement/common/extensionManagementUtil'; import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration'; -@@ -256,7 +256,7 @@ export class Extension implements IExtension { +@@ -271,7 +271,7 @@ export class Extension implements IExtension { } } } diff --git a/vscode-paches/0030-cleanup-remove-some-checks-and-warnings.patch b/vscode-paches/0029-cleanup-remove-some-checks-and-warnings.patch similarity index 93% rename from vscode-paches/0030-cleanup-remove-some-checks-and-warnings.patch rename to vscode-paches/0029-cleanup-remove-some-checks-and-warnings.patch index e6ad4523..5d5bb8d9 100644 --- a/vscode-paches/0030-cleanup-remove-some-checks-and-warnings.patch +++ b/vscode-paches/0029-cleanup-remove-some-checks-and-warnings.patch @@ -25,10 +25,10 @@ index e5fa674ea82..c3e8d26f3da 100644 }); } diff --git a/src/vs/workbench/contrib/webview/browser/webviewElement.ts b/src/vs/workbench/contrib/webview/browser/webviewElement.ts -index e1efba3e802..8f87777ca82 100644 +index 8870ddf4cc6..6bc4e3293c6 100644 --- a/src/vs/workbench/contrib/webview/browser/webviewElement.ts +++ b/src/vs/workbench/contrib/webview/browser/webviewElement.ts -@@ -488,11 +488,6 @@ export class WebviewElement extends Disposable implements IWebview, WebviewFindD +@@ -492,11 +492,6 @@ export class WebviewElement extends Disposable implements IWebview, WebviewFindD return; } @@ -40,7 +40,7 @@ index e1efba3e802..8f87777ca82 100644 if (e.data.channel === 'webview-ready') { if (this._messagePort) { return; -@@ -547,11 +542,6 @@ export class WebviewElement extends Disposable implements IWebview, WebviewFindD +@@ -551,11 +546,6 @@ export class WebviewElement extends Disposable implements IWebview, WebviewFindD return endpoint; } @@ -53,10 +53,10 @@ index e1efba3e802..8f87777ca82 100644 if (this.element && this._messagePort) { this._messagePort.postMessage({ channel, args: data }, transferable); diff --git a/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts b/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts -index e4bd1931a97..4dfad7fa657 100644 +index 4e9dc37e3f4..10fb6ae0300 100644 --- a/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts +++ b/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts -@@ -358,13 +358,6 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili +@@ -364,13 +364,6 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili } protected createContainer(auxiliaryWindow: CodeWindow, disposables: DisposableStore, options?: IAuxiliaryWindowOpenOptions): { stylesLoaded: Barrier; container: HTMLElement } { @@ -71,10 +71,10 @@ index e4bd1931a97..4dfad7fa657 100644 const { stylesLoaded } = this.applyCSS(auxiliaryWindow, disposables); const container = this.applyHTML(auxiliaryWindow, disposables); diff --git a/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.ts b/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.ts -index b54e3a25543..ae070e0d563 100644 +index 0c2e68dd1ec..6aa219f71f8 100644 --- a/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.ts +++ b/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.ts -@@ -111,8 +111,6 @@ export class WebWorkerExtensionHost extends Disposable implements IExtensionHost +@@ -113,8 +113,6 @@ export class WebWorkerExtensionHost extends Disposable implements IExtensionHost res.searchParams.set('salt', stableOriginUUID); return res.toString(); } diff --git a/vscode-paches/0031-refactor-split-class-in-2.patch b/vscode-paches/0030-refactor-split-class-in-2.patch similarity index 99% rename from vscode-paches/0031-refactor-split-class-in-2.patch rename to vscode-paches/0030-refactor-split-class-in-2.patch index bc3b5192..d436acd3 100644 --- a/vscode-paches/0031-refactor-split-class-in-2.patch +++ b/vscode-paches/0030-refactor-split-class-in-2.patch @@ -8,7 +8,7 @@ Subject: [PATCH] refactor: split class in 2 1 file changed, 76 insertions(+), 18 deletions(-) diff --git a/src/vs/workbench/services/extensions/browser/extensionService.ts b/src/vs/workbench/services/extensions/browser/extensionService.ts -index 678e10e3be2..d6b5f5cde74 100644 +index 83bce6798aa..c97b6de14b8 100644 --- a/src/vs/workbench/services/extensions/browser/extensionService.ts +++ b/src/vs/workbench/services/extensions/browser/extensionService.ts @@ -43,8 +43,10 @@ import { IUserDataInitializationService } from 'vs/workbench/services/userData/b diff --git a/vscode-paches/0032-fix-mark-process-supported-as-soon-as-there-is-a-reg.patch b/vscode-paches/0031-fix-mark-process-supported-as-soon-as-there-is-a-reg.patch similarity index 97% rename from vscode-paches/0032-fix-mark-process-supported-as-soon-as-there-is-a-reg.patch rename to vscode-paches/0031-fix-mark-process-supported-as-soon-as-there-is-a-reg.patch index 946a9f29..388a28bd 100644 --- a/vscode-paches/0032-fix-mark-process-supported-as-soon-as-there-is-a-reg.patch +++ b/vscode-paches/0031-fix-mark-process-supported-as-soon-as-there-is-a-reg.patch @@ -10,7 +10,7 @@ Subject: [PATCH] fix: mark process supported as soon as there is a registered 2 files changed, 33 insertions(+), 11 deletions(-) diff --git a/src/vs/platform/terminal/common/terminal.ts b/src/vs/platform/terminal/common/terminal.ts -index f8e502eb908..1de8cfa93b1 100644 +index 62a129b809d..0a1a2490bef 100644 --- a/src/vs/platform/terminal/common/terminal.ts +++ b/src/vs/platform/terminal/common/terminal.ts @@ -3,7 +3,7 @@ @@ -22,7 +22,7 @@ index f8e502eb908..1de8cfa93b1 100644 import { IProcessEnvironment, OperatingSystem } from 'vs/base/common/platform'; import { URI, UriComponents } from 'vs/base/common/uri'; import { createDecorator } from 'vs/platform/instantiation/common/instantiation'; -@@ -1049,12 +1049,27 @@ export const TerminalExtensions = { +@@ -1055,12 +1055,27 @@ export const TerminalExtensions = { Backend: 'workbench.contributions.terminal.processBackend' }; @@ -50,7 +50,7 @@ index f8e502eb908..1de8cfa93b1 100644 /** * Registers a terminal backend for a remote authority. */ -@@ -1071,21 +1086,20 @@ class TerminalBackendRegistry implements ITerminalBackendRegistry { +@@ -1077,21 +1092,20 @@ class TerminalBackendRegistry implements ITerminalBackendRegistry { get backends(): ReadonlyMap { return this._backends; } @@ -79,7 +79,7 @@ index f8e502eb908..1de8cfa93b1 100644 } Registry.add(TerminalExtensions.Backend, new TerminalBackendRegistry()); diff --git a/src/vs/workbench/contrib/terminal/browser/terminalService.ts b/src/vs/workbench/contrib/terminal/browser/terminalService.ts -index 6b0da407e24..46910ccf0a4 100644 +index 2dc85842d94..aad999896ea 100644 --- a/src/vs/workbench/contrib/terminal/browser/terminalService.ts +++ b/src/vs/workbench/contrib/terminal/browser/terminalService.ts @@ -19,7 +19,7 @@ import { IContextKey, IContextKeyService } from 'vs/platform/contextkey/common/c diff --git a/vscode-paches/0033-fix-use-asBrowserUri-to-get-iframe-src.patch b/vscode-paches/0032-fix-use-asBrowserUri-to-get-iframe-src.patch similarity index 92% rename from vscode-paches/0033-fix-use-asBrowserUri-to-get-iframe-src.patch rename to vscode-paches/0032-fix-use-asBrowserUri-to-get-iframe-src.patch index 138e6247..959f4967 100644 --- a/vscode-paches/0033-fix-use-asBrowserUri-to-get-iframe-src.patch +++ b/vscode-paches/0032-fix-use-asBrowserUri-to-get-iframe-src.patch @@ -8,10 +8,10 @@ Subject: [PATCH] fix: use asBrowserUri to get iframe src 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/vs/workbench/contrib/webview/browser/webviewElement.ts b/src/vs/workbench/contrib/webview/browser/webviewElement.ts -index 8f87777ca82..27e43963b86 100644 +index 6bc4e3293c6..b7a9e51144f 100644 --- a/src/vs/workbench/contrib/webview/browser/webviewElement.ts +++ b/src/vs/workbench/contrib/webview/browser/webviewElement.ts -@@ -444,7 +444,8 @@ export class WebviewElement extends Disposable implements IWebview, WebviewFindD +@@ -448,7 +448,8 @@ export class WebviewElement extends Disposable implements IWebview, WebviewFindD // Workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=1754872 const fileName = isFirefox ? 'index-no-csp.html' : 'index.html'; diff --git a/vscode-paches/0034-feat-add-some-parameter-to-webview-iframes.patch b/vscode-paches/0033-feat-add-some-parameter-to-webview-iframes.patch similarity index 94% rename from vscode-paches/0034-feat-add-some-parameter-to-webview-iframes.patch rename to vscode-paches/0033-feat-add-some-parameter-to-webview-iframes.patch index 5fe96042..61d6e35b 100644 --- a/vscode-paches/0034-feat-add-some-parameter-to-webview-iframes.patch +++ b/vscode-paches/0033-feat-add-some-parameter-to-webview-iframes.patch @@ -8,7 +8,7 @@ Subject: [PATCH] feat: add some parameter to webview iframes 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/vs/workbench/contrib/webview/browser/webviewElement.ts b/src/vs/workbench/contrib/webview/browser/webviewElement.ts -index 27e43963b86..c1df248c2da 100644 +index b7a9e51144f..be42aaaeff3 100644 --- a/src/vs/workbench/contrib/webview/browser/webviewElement.ts +++ b/src/vs/workbench/contrib/webview/browser/webviewElement.ts @@ -11,7 +11,7 @@ import { streamToBuffer, VSBufferReadableStream } from 'vs/base/common/buffer'; @@ -20,7 +20,7 @@ index 27e43963b86..c1df248c2da 100644 import { URI } from 'vs/base/common/uri'; import { generateUuid } from 'vs/base/common/uuid'; import { localize } from 'vs/nls'; -@@ -437,6 +437,9 @@ export class WebviewElement extends Disposable implements IWebview, WebviewFindD +@@ -441,6 +441,9 @@ export class WebviewElement extends Disposable implements IWebview, WebviewFindD params.purpose = options.purpose; } diff --git a/vscode-paches/0036-fix-only-detect-fullscreen-if-it-s-not-a-guess.patch b/vscode-paches/0034-fix-only-detect-fullscreen-if-it-s-not-a-guess.patch similarity index 98% rename from vscode-paches/0036-fix-only-detect-fullscreen-if-it-s-not-a-guess.patch rename to vscode-paches/0034-fix-only-detect-fullscreen-if-it-s-not-a-guess.patch index 84518873..8f6f6bed 100644 --- a/vscode-paches/0036-fix-only-detect-fullscreen-if-it-s-not-a-guess.patch +++ b/vscode-paches/0034-fix-only-detect-fullscreen-if-it-s-not-a-guess.patch @@ -8,7 +8,7 @@ Subject: [PATCH] fix: only detect fullscreen if it's not a guess 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/vs/workbench/services/host/browser/browserHostService.ts b/src/vs/workbench/services/host/browser/browserHostService.ts -index 11f6227989f..0fdb55cc459 100644 +index 253828dfd74..3559cd01d99 100644 --- a/src/vs/workbench/services/host/browser/browserHostService.ts +++ b/src/vs/workbench/services/host/browser/browserHostService.ts @@ -215,13 +215,18 @@ export class BrowserHostService extends Disposable implements IHostService { diff --git a/vscode-paches/0037-fix-only-use-open-model.patch b/vscode-paches/0035-fix-only-use-open-model.patch similarity index 71% rename from vscode-paches/0037-fix-only-use-open-model.patch rename to vscode-paches/0035-fix-only-use-open-model.patch index e66db40a..d1547cef 100644 --- a/vscode-paches/0037-fix-only-use-open-model.patch +++ b/vscode-paches/0035-fix-only-use-open-model.patch @@ -8,36 +8,36 @@ Subject: [PATCH] fix: only use open model 1 file changed, 3 insertions(+), 58 deletions(-) diff --git a/src/vs/workbench/services/languageDetection/browser/languageDetectionSimpleWorker.ts b/src/vs/workbench/services/languageDetection/browser/languageDetectionSimpleWorker.ts -index f967fc38127..4da1da8f591 100644 +index 8067c690fa3..b5cd1fbd527 100644 --- a/src/vs/workbench/services/languageDetection/browser/languageDetectionSimpleWorker.ts +++ b/src/vs/workbench/services/languageDetection/browser/languageDetectionSimpleWorker.ts -@@ -3,14 +3,12 @@ +@@ -3,15 +3,12 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import type { ModelOperations, ModelResult } from '@vscode/vscode-languagedetection'; +-import { importAMDNodeModule } from 'vs/amdX'; +import { ModelOperations, ModelResult } from '@vscode/vscode-languagedetection'; import { StopWatch } from 'vs/base/common/stopwatch'; - import { IRequestHandler } from 'vs/base/common/worker/simpleWorker'; - import { EditorSimpleWorker } from 'vs/editor/common/services/editorSimpleWorker'; - import { IEditorWorkerHost } from 'vs/editor/common/services/editorWorkerHost'; + import { IRequestHandler, IWorkerServer } from 'vs/base/common/worker/simpleWorker'; + import { LanguageDetectionWorkerHost, ILanguageDetectionWorker } from 'vs/workbench/services/languageDetection/browser/languageDetectionWorker.protocol'; + import { WorkerTextModelSyncServer } from 'vs/editor/common/services/textModelSync/textModelSync.impl'; -type RegexpModel = { detect: (inp: string, langBiases: Record, supportedLangs?: string[]) => string | undefined }; - /** - * Called on the worker side - * @internal -@@ -28,9 +26,6 @@ export class LanguageDetectionSimpleWorker extends EditorSimpleWorker { - private static readonly positiveConfidenceCorrectionBucket2 = 0.025; - private static readonly negativeConfidenceCorrection = 0.5; + * Defines the worker entry point. Must be exported and named `create`. + * @skipMangle +@@ -34,8 +31,6 @@ export class LanguageDetectionSimpleWorker implements ILanguageDetectionWorker { + private readonly _workerTextModelSyncServer = new WorkerTextModelSyncServer(); + private readonly _host: LanguageDetectionWorkerHost; - private _regexpModel: RegexpModel | undefined; - private _regexpLoadFailed: boolean = false; -- + private _modelOperations: ModelOperations | undefined; private _loadFailed: boolean = false; - -@@ -63,19 +58,8 @@ export class LanguageDetectionSimpleWorker extends EditorSimpleWorker { +@@ -74,19 +69,8 @@ export class LanguageDetectionSimpleWorker implements ILanguageDetectionWorker { return undefined; }; @@ -59,7 +59,7 @@ index f967fc38127..4da1da8f591 100644 return undefined; } -@@ -94,50 +78,11 @@ export class LanguageDetectionSimpleWorker extends EditorSimpleWorker { +@@ -105,50 +89,11 @@ export class LanguageDetectionSimpleWorker implements ILanguageDetectionWorker { return content; } @@ -70,9 +70,9 @@ index f967fc38127..4da1da8f591 100644 - if (this._regexpModel) { - return this._regexpModel; - } -- const uri: string = await this._host.fhr('getRegexpModelUri', []); +- const uri: string = await this._host.$getRegexpModelUri(); - try { -- this._regexpModel = await import(uri) as RegexpModel; +- this._regexpModel = await importAMDNodeModule(uri, '') as RegexpModel; - return this._regexpModel; - } catch (e) { - this._regexpLoadFailed = true; @@ -105,8 +105,8 @@ index f967fc38127..4da1da8f591 100644 return this._modelOperations; } -- const uri: string = await this._host.fhr('getIndexJsUri', []); -- const { ModelOperations } = await import(uri) as typeof import('@vscode/vscode-languagedetection'); +- const uri: string = await this._host.$getIndexJsUri(); +- const { ModelOperations } = await importAMDNodeModule(uri, '') as typeof import('@vscode/vscode-languagedetection'); this._modelOperations = new ModelOperations({ modelJsonLoaderFunc: async () => { - const response = await fetch(await this._host.fhr('getModelJsonUri', [])); + const response = await fetch(await this._host.$getModelJsonUri()); diff --git a/vscode-paches/0035-fix-replace-CJS-require-by-FileAccess.toModuleConten.patch b/vscode-paches/0035-fix-replace-CJS-require-by-FileAccess.toModuleConten.patch deleted file mode 100644 index 8b086a0b..00000000 --- a/vscode-paches/0035-fix-replace-CJS-require-by-FileAccess.toModuleConten.patch +++ /dev/null @@ -1,89 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= -Date: Mon, 11 Mar 2024 18:22:25 +0100 -Subject: [PATCH] fix: replace CJS require by FileAccess.toModuleContent - -to make it work in ESM context ---- - .../browser/gettingStartedDetailsRenderer.ts | 12 +++++------- - .../common/walkThroughContentProvider.ts | 18 +++++------------- - 2 files changed, 10 insertions(+), 20 deletions(-) - -diff --git a/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedDetailsRenderer.ts b/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedDetailsRenderer.ts -index fef4b4928bf..4d24e500b54 100644 ---- a/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedDetailsRenderer.ts -+++ b/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedDetailsRenderer.ts -@@ -17,6 +17,7 @@ import { IFileService } from 'vs/platform/files/common/files'; - import { INotificationService } from 'vs/platform/notification/common/notification'; - import { ILanguageService } from 'vs/editor/common/languages/language'; - import { IExtensionService } from 'vs/workbench/services/extensions/common/extensions'; -+import { AppResourcePath, FileAccess } from 'vs/base/common/network'; - - - export class GettingStartedDetailsRenderer { -@@ -221,12 +222,9 @@ export class GettingStartedDetailsRenderer { - try { - const moduleId = JSON.parse(path.query).moduleId; - if (useModuleId && moduleId) { -- const contents = await new Promise(c => { -- require([moduleId], content => { -- c(content.default()); -- }); -- }); -- return contents; -+ const content = await FileAccess.toModuleContent<() => Promise>(moduleId); -+ -+ return content(); - } - } catch { } - -@@ -262,7 +260,7 @@ export class GettingStartedDetailsRenderer { - } - - const transformUri = (src: string, base: URI) => { -- const path = joinPath(base, src); -+ const path = FileAccess.asBrowserUri(joinPath(base, src).path.slice(1) as AppResourcePath); - return asWebviewUri(path).toString(true); - }; - -diff --git a/src/vs/workbench/contrib/welcomeWalkthrough/common/walkThroughContentProvider.ts b/src/vs/workbench/contrib/welcomeWalkthrough/common/walkThroughContentProvider.ts -index 24764f1e31a..e16d9f5afcd 100644 ---- a/src/vs/workbench/contrib/welcomeWalkthrough/common/walkThroughContentProvider.ts -+++ b/src/vs/workbench/contrib/welcomeWalkthrough/common/walkThroughContentProvider.ts -@@ -10,13 +10,13 @@ import { ITextModel, DefaultEndOfLine, EndOfLinePreference, ITextBufferFactory } - import { ILanguageService } from 'vs/editor/common/languages/language'; - import { IWorkbenchContribution } from 'vs/workbench/common/contributions'; - import { marked } from 'vs/base/common/marked/marked'; --import { Schemas } from 'vs/base/common/network'; -+import { FileAccess, Schemas } from 'vs/base/common/network'; - import { Range } from 'vs/editor/common/core/range'; - import { createTextBufferFactory } from 'vs/editor/common/model/textModel'; - import { assertIsDefined } from 'vs/base/common/types'; --import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; -+import { IInstantiationService, ServicesAccessor } from 'vs/platform/instantiation/common/instantiation'; - --export function requireToContent(instantiationService: IInstantiationService, resource: URI): Promise { -+export async function requireToContent(instantiationService: IInstantiationService, resource: URI): Promise { - if (!resource.query) { - throw new Error('Welcome: invalid resource'); - } -@@ -26,17 +26,9 @@ export function requireToContent(instantiationService: IInstantiationService, re - throw new Error('Welcome: invalid resource'); - } - -- const content: Promise = new Promise((resolve, reject) => { -- require([query.moduleId], content => { -- try { -- resolve(instantiationService.invokeFunction(content.default)); -- } catch (err) { -- reject(err); -- } -- }); -- }); -+ const content = await FileAccess.toModuleContent<(accessor: ServicesAccessor) => Promise>(query.moduleId); - -- return content; -+ return instantiationService.invokeFunction(content); - } - - export class WalkThroughSnippetContentProvider implements ITextModelContentProvider, IWorkbenchContribution { diff --git a/vscode-paches/0036-fix-replace-CJS-require-by-FileAccess.toModuleConten.patch b/vscode-paches/0036-fix-replace-CJS-require-by-FileAccess.toModuleConten.patch new file mode 100644 index 00000000..556ed3a5 --- /dev/null +++ b/vscode-paches/0036-fix-replace-CJS-require-by-FileAccess.toModuleConten.patch @@ -0,0 +1,30 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= +Date: Fri, 13 Sep 2024 12:37:59 +0200 +Subject: [PATCH] fix: replace CJS require by FileAccess.toModuleContent + +--- + .../browser/gettingStartedDetailsRenderer.ts | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedDetailsRenderer.ts b/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedDetailsRenderer.ts +index 9cc4cdf407c..7fbc00d48a7 100644 +--- a/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedDetailsRenderer.ts ++++ b/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedDetailsRenderer.ts +@@ -18,6 +18,7 @@ import { INotificationService } from 'vs/platform/notification/common/notificati + import { ILanguageService } from 'vs/editor/common/languages/language'; + import { IExtensionService } from 'vs/workbench/services/extensions/common/extensions'; + import { gettingStartedContentRegistry } from 'vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent'; ++import { AppResourcePath, FileAccess } from 'vs/base/common/network'; + + + export class GettingStartedDetailsRenderer { +@@ -273,7 +274,7 @@ export class GettingStartedDetailsRenderer { + } + + const transformUri = (src: string, base: URI) => { +- const path = joinPath(base, src); ++ const path = FileAccess.asBrowserUri(joinPath(base, src).path.slice(1) as AppResourcePath); + return asWebviewUri(path).toString(true); + }; + diff --git a/vscode-paches/0038-fix-allow-adding-a-local-folder-even-when-there-is-a.patch b/vscode-paches/0037-fix-allow-adding-a-local-folder-even-when-there-is-a.patch similarity index 100% rename from vscode-paches/0038-fix-allow-adding-a-local-folder-even-when-there-is-a.patch rename to vscode-paches/0037-fix-allow-adding-a-local-folder-even-when-there-is-a.patch diff --git a/vscode-paches/0039-feat-allow-to-switch-storage-service-workspace.patch b/vscode-paches/0038-feat-allow-to-switch-storage-service-workspace.patch similarity index 100% rename from vscode-paches/0039-feat-allow-to-switch-storage-service-workspace.patch rename to vscode-paches/0038-feat-allow-to-switch-storage-service-workspace.patch diff --git a/vscode-paches/0040-cleanup-remove-code-that-we-will-run-ourselves.patch b/vscode-paches/0039-cleanup-remove-code-that-we-will-run-ourselves.patch similarity index 99% rename from vscode-paches/0040-cleanup-remove-code-that-we-will-run-ourselves.patch rename to vscode-paches/0039-cleanup-remove-code-that-we-will-run-ourselves.patch index 378f6a12..6e0c78a3 100644 --- a/vscode-paches/0040-cleanup-remove-code-that-we-will-run-ourselves.patch +++ b/vscode-paches/0039-cleanup-remove-code-that-we-will-run-ourselves.patch @@ -8,7 +8,7 @@ Subject: [PATCH] cleanup: remove code that we will run ourselves 1 file changed, 20 deletions(-) diff --git a/src/vs/workbench/browser/workbench.ts b/src/vs/workbench/browser/workbench.ts -index b0f76f8d08d..ad764454b27 100644 +index 5211f730099..c7ff3b53fab 100644 --- a/src/vs/workbench/browser/workbench.ts +++ b/src/vs/workbench/browser/workbench.ts @@ -11,10 +11,7 @@ import { RunOnceScheduler, timeout } from 'vs/base/common/async'; diff --git a/vscode-paches/0041-fix-typescript-use-import-function-able-to-replace-i.patch b/vscode-paches/0040-fix-typescript-use-import-function-able-to-replace-i.patch similarity index 100% rename from vscode-paches/0041-fix-typescript-use-import-function-able-to-replace-i.patch rename to vscode-paches/0040-fix-typescript-use-import-function-able-to-replace-i.patch diff --git a/vscode-paches/0042-feat-add-a-way-to-detect-if-localization-were-alread.patch b/vscode-paches/0041-feat-add-a-way-to-detect-if-localization-were-alread.patch similarity index 76% rename from vscode-paches/0042-feat-add-a-way-to-detect-if-localization-were-alread.patch rename to vscode-paches/0041-feat-add-a-way-to-detect-if-localization-were-alread.patch index ff32cf13..6775f631 100644 --- a/vscode-paches/0042-feat-add-a-way-to-detect-if-localization-were-alread.patch +++ b/vscode-paches/0041-feat-add-a-way-to-detect-if-localization-were-alread.patch @@ -8,10 +8,10 @@ Subject: [PATCH] feat: add a way to detect if localization were already used 1 file changed, 7 insertions(+) diff --git a/src/vs/nls.ts b/src/vs/nls.ts -index 5a546325fc7..66bdeeb0b33 100644 +index 2e914738989..78ced4fe478 100644 --- a/src/vs/nls.ts +++ b/src/vs/nls.ts -@@ -43,6 +43,12 @@ function _format(message: string, args: (string | number | boolean | undefined | +@@ -47,6 +47,12 @@ function _format(message: string, args: (string | number | boolean | undefined | return result; } @@ -24,11 +24,11 @@ index 5a546325fc7..66bdeeb0b33 100644 /** * Marks a string to be localized. Returns the localized string. * -@@ -87,6 +93,7 @@ export function localize(data: ILocalizeInfo | string /* | number when built */, +@@ -91,6 +97,7 @@ export function localize(data: ILocalizeInfo | string /* | number when built */, * depending on the target context. */ function lookupMessage(index: number, fallback: string | null): string { + initialized = true; - // VSCODE_GLOBALS: NLS - const message = globalThis._VSCODE_NLS_MESSAGES?.[index]; + const message = getNLSMessages()?.[index]; if (typeof message !== 'string') { + if (typeof fallback === 'string') { diff --git a/vscode-paches/0043-fix-move-action-from-service-file-to-contribution.patch b/vscode-paches/0042-fix-move-action-from-service-file-to-contribution.patch similarity index 96% rename from vscode-paches/0043-fix-move-action-from-service-file-to-contribution.patch rename to vscode-paches/0042-fix-move-action-from-service-file-to-contribution.patch index af27cbcd..7d0d0dbc 100644 --- a/vscode-paches/0043-fix-move-action-from-service-file-to-contribution.patch +++ b/vscode-paches/0042-fix-move-action-from-service-file-to-contribution.patch @@ -11,13 +11,13 @@ Subject: [PATCH] fix: move action from service file to contribution create mode 100644 src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService._contribution.ts diff --git a/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.ts b/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.ts -index c581ac0e4d2..384d28b7362 100644 +index f44d95e6694..ba7b881c0bb 100644 --- a/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.ts +++ b/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.ts -@@ -30,6 +30,7 @@ import { IExtensionService } from 'vs/workbench/services/extensions/common/exten - import { StartupPageEditorResolverContribution, StartupPageRunnerContribution } from 'vs/workbench/contrib/welcomeGettingStarted/browser/startupPage'; +@@ -31,6 +31,7 @@ import { StartupPageEditorResolverContribution, StartupPageRunnerContribution } import { ExtensionsInput } from 'vs/workbench/contrib/extensions/common/extensionsInput'; import { Categories } from 'vs/platform/action/common/actionCommonCategories'; + import { DisposableStore } from 'vs/base/common/lifecycle'; +import 'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService._contribution'; export * as icons from 'vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedIcons'; diff --git a/vscode-paches/0044-refactor-split-workbench-contribution.patch b/vscode-paches/0043-refactor-split-workbench-contribution.patch similarity index 99% rename from vscode-paches/0044-refactor-split-workbench-contribution.patch rename to vscode-paches/0043-refactor-split-workbench-contribution.patch index cc0d4b29..9edc3189 100644 --- a/vscode-paches/0044-refactor-split-workbench-contribution.patch +++ b/vscode-paches/0043-refactor-split-workbench-contribution.patch @@ -247,7 +247,7 @@ index 49abd845677..33357dc7a36 100644 + +registerWorkbenchContribution2(TokenClassificationExtensionPointWorkbenchContribution.ID, TokenClassificationExtensionPointWorkbenchContribution, WorkbenchPhase.BlockStartup); diff --git a/src/vs/workbench/workbench.common.main.ts b/src/vs/workbench/workbench.common.main.ts -index 8ec34fb9b6c..fcb9d1df267 100644 +index 9e01f17536a..502d97c34d4 100644 --- a/src/vs/workbench/workbench.common.main.ts +++ b/src/vs/workbench/workbench.common.main.ts @@ -35,6 +35,12 @@ import 'vs/workbench/browser/actions/widgetNavigationCommands'; diff --git a/vscode-paches/0045-refactor-split-service-and-extension-point.patch b/vscode-paches/0044-refactor-split-service-and-extension-point.patch similarity index 100% rename from vscode-paches/0045-refactor-split-service-and-extension-point.patch rename to vscode-paches/0044-refactor-split-service-and-extension-point.patch diff --git a/vscode-paches/0046-fix-weird-syntax.patch b/vscode-paches/0045-fix-weird-syntax.patch similarity index 100% rename from vscode-paches/0046-fix-weird-syntax.patch rename to vscode-paches/0045-fix-weird-syntax.patch diff --git a/vscode-paches/0047-fix-do-not-export-stuff-from-web-workbench-or-the-ty.patch b/vscode-paches/0046-fix-do-not-export-stuff-from-web-workbench-or-the-ty.patch similarity index 100% rename from vscode-paches/0047-fix-do-not-export-stuff-from-web-workbench-or-the-ty.patch rename to vscode-paches/0046-fix-do-not-export-stuff-from-web-workbench-or-the-ty.patch diff --git a/vscode-paches/0048-fix-change-syntax-that-language-service-refactor-doe.patch b/vscode-paches/0047-fix-change-syntax-that-language-service-refactor-doe.patch similarity index 97% rename from vscode-paches/0048-fix-change-syntax-that-language-service-refactor-doe.patch rename to vscode-paches/0047-fix-change-syntax-that-language-service-refactor-doe.patch index 1af8d9ac..83f80d93 100644 --- a/vscode-paches/0048-fix-change-syntax-that-language-service-refactor-doe.patch +++ b/vscode-paches/0047-fix-change-syntax-that-language-service-refactor-doe.patch @@ -10,7 +10,7 @@ the re-exports source are removed during "Move to new file" refactor 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/vs/workbench/contrib/tasks/common/taskService.ts b/src/vs/workbench/contrib/tasks/common/taskService.ts -index 3db39c2267d..c8bcdf12fe7 100644 +index dab0931a4c1..c8f3a8f30fe 100644 --- a/src/vs/workbench/contrib/tasks/common/taskService.ts +++ b/src/vs/workbench/contrib/tasks/common/taskService.ts @@ -15,7 +15,9 @@ import { ITaskSummary, ITaskTerminateResponse, ITaskSystemInfo } from 'vs/workbe diff --git a/vscode-paches/0049-feat-add-build-tool-to-extract-service-identifiers.patch b/vscode-paches/0048-feat-add-build-tool-to-extract-service-identifiers.patch similarity index 100% rename from vscode-paches/0049-feat-add-build-tool-to-extract-service-identifiers.patch rename to vscode-paches/0048-feat-add-build-tool-to-extract-service-identifiers.patch diff --git a/vscode-paches/0050-fix-fix-editor-css.patch b/vscode-paches/0049-fix-fix-editor-css.patch similarity index 100% rename from vscode-paches/0050-fix-fix-editor-css.patch rename to vscode-paches/0049-fix-fix-editor-css.patch diff --git a/vscode-paches/0051-refactor-split-code-to-be-able-to-import-only-requir.patch b/vscode-paches/0050-refactor-split-code-to-be-able-to-import-only-requir.patch similarity index 100% rename from vscode-paches/0051-refactor-split-code-to-be-able-to-import-only-requir.patch rename to vscode-paches/0050-refactor-split-code-to-be-able-to-import-only-requir.patch diff --git a/vscode-paches/0053-fix-rollback-typescript-as-the-last-version-breaks-t.patch b/vscode-paches/0051-fix-rollback-typescript-as-the-last-version-breaks-t.patch similarity index 91% rename from vscode-paches/0053-fix-rollback-typescript-as-the-last-version-breaks-t.patch rename to vscode-paches/0051-fix-rollback-typescript-as-the-last-version-breaks-t.patch index 9ae97551..e3a22e11 100644 --- a/vscode-paches/0053-fix-rollback-typescript-as-the-last-version-breaks-t.patch +++ b/vscode-paches/0051-fix-rollback-typescript-as-the-last-version-breaks-t.patch @@ -10,14 +10,14 @@ Subject: [PATCH] fix: rollback typescript as the last version breaks the 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json -index 70ca212fe5e..893de369e19 100644 +index 13fc4f4cabe..78c5bf13c55 100644 --- a/package.json +++ b/package.json -@@ -208,7 +208,7 @@ - "ts-loader": "^9.4.2", +@@ -215,7 +215,7 @@ "ts-node": "^10.9.1", "tsec": "0.2.7", -- "typescript": "^5.6.0-dev.20240715", + "tslib": "^2.6.3", +- "typescript": "^5.7.0-dev.20240826", + "typescript": "5.5.0-dev.20240408", "util": "^0.12.4", "vscode-nls-dev": "^3.3.1", diff --git a/vscode-paches/0052-fix-just-use-regular-dynamic-import.patch b/vscode-paches/0052-fix-just-use-regular-dynamic-import.patch new file mode 100644 index 00000000..c21a38f0 --- /dev/null +++ b/vscode-paches/0052-fix-just-use-regular-dynamic-import.patch @@ -0,0 +1,34 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= +Date: Thu, 12 Sep 2024 19:19:39 +0200 +Subject: [PATCH] fix: just use regular dynamic import + +--- + .../services/keybinding/browser/keyboardLayoutService.ts | 7 +------ + 1 file changed, 1 insertion(+), 6 deletions(-) + +diff --git a/src/vs/workbench/services/keybinding/browser/keyboardLayoutService.ts b/src/vs/workbench/services/keybinding/browser/keyboardLayoutService.ts +index 7f529f4a661..667e56edc89 100644 +--- a/src/vs/workbench/services/keybinding/browser/keyboardLayoutService.ts ++++ b/src/vs/workbench/services/keybinding/browser/keyboardLayoutService.ts +@@ -5,8 +5,6 @@ + + import * as nls from 'vs/nls'; + import { Emitter, Event } from 'vs/base/common/event'; +-import { isESM } from 'vs/base/common/amd'; +-import { AppResourcePath, FileAccess } from 'vs/base/common/network'; + import { Disposable } from 'vs/base/common/lifecycle'; + import { KeymapInfo, IRawMixedKeyboardMapping, IKeymapInfo } from 'vs/workbench/services/keybinding/common/keymapInfo'; + import { InstantiationType, registerSingleton } from 'vs/platform/instantiation/common/extensions'; +@@ -457,10 +455,7 @@ export class BrowserKeyboardMapperFactory extends BrowserKeyboardMapperFactoryBa + + const platform = isWindows ? 'win' : isMacintosh ? 'darwin' : 'linux'; + +- import(isESM ? +- FileAccess.asBrowserUri(`vs/workbench/services/keybinding/browser/keyboardLayouts/layout.contribution.${platform}.js` satisfies AppResourcePath).path : +- `vs/workbench/services/keybinding/browser/keyboardLayouts/layout.contribution.${platform}` +- ).then((m) => { ++ import(`./keyboardLayouts/layout.contribution.${platform}.js`).then((m) => { + const keymapInfos: IKeymapInfo[] = m.KeyboardLayoutContribution.INSTANCE.layoutInfos; + this._keymapInfos.push(...keymapInfos.map(info => (new KeymapInfo(info.layout, info.secondaryLayouts, info.mapping, info.isUserKeyboardLayout)))); + this._mru = this._keymapInfos; diff --git a/vscode-paches/0052-fix-properly-detect-node-everywhere.patch b/vscode-paches/0052-fix-properly-detect-node-everywhere.patch deleted file mode 100644 index ef15e8a5..00000000 --- a/vscode-paches/0052-fix-properly-detect-node-everywhere.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= -Date: Wed, 10 Jul 2024 15:15:02 +0200 -Subject: [PATCH] fix: properly detect node everywhere - ---- - src/vs/base/common/process.ts | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/vs/base/common/process.ts b/src/vs/base/common/process.ts -index 48fcd8acb43..981e5924af3 100644 ---- a/src/vs/base/common/process.ts -+++ b/src/vs/base/common/process.ts -@@ -21,7 +21,7 @@ if (typeof vscodeGlobal !== 'undefined' && typeof vscodeGlobal.process !== 'unde - } - - // Native node.js environment --else if (typeof process !== 'undefined') { -+else if (typeof process !== 'undefined' && typeof process?.versions?.node === 'string') { - safeProcess = { - get platform() { return process.platform; }, - get arch() { return process.arch; },