From 7578449a67893725580d08c1968a018f3f03ad2e Mon Sep 17 00:00:00 2001 From: Baptiste Augrain Date: Sun, 13 Oct 2024 20:16:48 +0200 Subject: [PATCH] feat(1.95): update patches (#2055) --- .github/workflows/insider-linux.yml | 26 +++++- .github/workflows/stable-linux.yml | 26 +++++- build/update_patches.sh | 10 ++- electron.riscv64.sh | 4 +- insider.json | 4 +- patches/brand.patch | 99 +++++++++++------------ patches/build-version.patch | 30 +++---- patches/crash-reporter.patch | 19 ++--- patches/helper/settings.patch | 2 +- patches/linux/client/disable-remote.patch | 22 +++-- patches/linux/fix-build.patch | 22 ++--- patches/linux/fix-reh-bootstrap.patch | 21 ++--- patches/linux/reh/node16.patch | 30 +++---- patches/merge-user-product.patch | 25 +++--- product.json | 7 +- 15 files changed, 196 insertions(+), 151 deletions(-) diff --git a/.github/workflows/insider-linux.yml b/.github/workflows/insider-linux.yml index ce13477..8c77a60 100644 --- a/.github/workflows/insider-linux.yml +++ b/.github/workflows/insider-linux.yml @@ -92,10 +92,16 @@ jobs: PULL_REQUEST_ID: ${{ github.event.inputs.checkout_pr }} run: ./get_pr.sh + - name: Setup GCC + uses: egor-tensin/setup-gcc@v1 + with: + version: 10 + platform: x64 + - name: Setup Node.js environment uses: actions/setup-node@v4 with: - node-version: '18.17' + node-version: '20.17' if: env.SHOULD_BUILD == 'yes' - name: Install Yarn @@ -260,8 +266,8 @@ jobs: npm_arch: arm64 - vscode_arch: armhf npm_arch: arm - - vscode_arch: ppc64le - npm_arch: ppc64 + # - vscode_arch: ppc64le + # npm_arch: ppc64 - vscode_arch: riscv64 npm_arch: riscv64 env: @@ -284,10 +290,16 @@ jobs: PULL_REQUEST_ID: ${{ github.event.inputs.checkout_pr }} run: ./get_pr.sh + - name: Setup GCC + uses: egor-tensin/setup-gcc@v1 + with: + version: 10 + platform: x64 + - name: Setup Node.js environment uses: actions/setup-node@v4 with: - node-version: '18.17' + node-version: '20.17' - name: Setup Python 3 uses: actions/setup-python@v5 @@ -369,6 +381,12 @@ jobs: PULL_REQUEST_ID: ${{ github.event.inputs.checkout_pr }} run: ./get_pr.sh + - name: Setup GCC + uses: egor-tensin/setup-gcc@v1 + with: + version: 10 + platform: x64 + - name: Install GH run: ./install_gh.sh if: env.SHOULD_DEPLOY == 'yes' diff --git a/.github/workflows/stable-linux.yml b/.github/workflows/stable-linux.yml index ecb17f3..66f7885 100644 --- a/.github/workflows/stable-linux.yml +++ b/.github/workflows/stable-linux.yml @@ -91,10 +91,16 @@ jobs: PULL_REQUEST_ID: ${{ github.event.inputs.checkout_pr }} run: ./get_pr.sh + - name: Setup GCC + uses: egor-tensin/setup-gcc@v1 + with: + version: 10 + platform: x64 + - name: Setup Node.js environment uses: actions/setup-node@v4 with: - node-version: '18.17' + node-version: '20.17' if: env.SHOULD_BUILD == 'yes' - name: Install Yarn @@ -259,8 +265,8 @@ jobs: npm_arch: arm64 - vscode_arch: armhf npm_arch: arm - - vscode_arch: ppc64le - npm_arch: ppc64 + # - vscode_arch: ppc64le + # npm_arch: ppc64 - vscode_arch: riscv64 npm_arch: riscv64 env: @@ -283,10 +289,16 @@ jobs: PULL_REQUEST_ID: ${{ github.event.inputs.checkout_pr }} run: ./get_pr.sh + - name: Setup GCC + uses: egor-tensin/setup-gcc@v1 + with: + version: 10 + platform: x64 + - name: Setup Node.js environment uses: actions/setup-node@v4 with: - node-version: '18.17' + node-version: '20.17' - name: Setup Python 3 uses: actions/setup-python@v5 @@ -368,6 +380,12 @@ jobs: PULL_REQUEST_ID: ${{ github.event.inputs.checkout_pr }} run: ./get_pr.sh + - name: Setup GCC + uses: egor-tensin/setup-gcc@v1 + with: + version: 10 + platform: x64 + - name: Install GH run: ./install_gh.sh if: env.SHOULD_DEPLOY == 'yes' diff --git a/build/update_patches.sh b/build/update_patches.sh index f9900f6..98af370 100755 --- a/build/update_patches.sh +++ b/build/update_patches.sh @@ -47,6 +47,12 @@ if [[ "${VSCODE_QUALITY}" == "insider" ]]; then done fi -for FILE in ../patches/linux/*/*.patch; do - check_file "${FILE}" +for ARCH in alpine linux osx windows; do + for FILE in "../patches/${ARCH}/"*.patch; do + check_file "${FILE}" + done + + for FILE in "../patches/${ARCH}/"*/*.patch; do + check_file "${FILE}" + done done diff --git a/electron.riscv64.sh b/electron.riscv64.sh index 658adf3..1d03679 100755 --- a/electron.riscv64.sh +++ b/electron.riscv64.sh @@ -2,7 +2,7 @@ set -ex -export ELECTRON_VERSION="30.5.1" +export ELECTRON_VERSION="32.1.2" export VSCODE_ELECTRON_TAG="v${ELECTRON_VERSION}.riscv1" -echo "dfae1ccddec728faa7e5dcc92fb38ee7c40251e7f7638817da1c2a94dd37b5c2 *electron-v${ELECTRON_VERSION}-linux-riscv64.zip" >> build/checksums/electron.txt +echo "1893e6e8831ddd9c30111db02ad7edbaad8ebbf43d69054657f7221fb6086819 *electron-v${ELECTRON_VERSION}-linux-riscv64.zip" >> build/checksums/electron.txt diff --git a/insider.json b/insider.json index 7e5be99..553d16d 100644 --- a/insider.json +++ b/insider.json @@ -1,4 +1,4 @@ { - "tag": "1.93.0", - "commit": "5b066ec2e30cf46bc636d6d27af5404713f6b0f8" + "tag": "1.95.0", + "commit": "a016ec9b66ffdd3ff0f831768b8e75be008a54e4" } diff --git a/patches/brand.patch b/patches/brand.patch index 759ac5f..ef0ff94 100644 --- a/patches/brand.patch +++ b/patches/brand.patch @@ -62,7 +62,7 @@ index 1be4d0e..73a8f3e 100644 -export const redundantImplicitActivationEvent = l10n.t("This activation event can be removed as VS Code generates these automatically from your package.json contribution declarations."); +export const redundantImplicitActivationEvent = l10n.t("This activation event can be removed as VSCodium generates these automatically from your package.json contribution declarations."); diff --git a/extensions/extension-editing/src/extensionLinter.ts b/extensions/extension-editing/src/extensionLinter.ts -index b69dac0..293e866 100644 +index be7eea1..389e89e 100644 --- a/extensions/extension-editing/src/extensionLinter.ts +++ b/extensions/extension-editing/src/extensionLinter.ts @@ -34,4 +34,4 @@ const relativeUrlRequiresHttpsRepository = l10n.t("Relative image URLs require a @@ -73,37 +73,37 @@ index b69dac0..293e866 100644 +const bumpEngineForImplicitActivationEvents = l10n.t("This activation event can be removed for extensions targeting engine version ^1.75 as VSCodium will generate these automatically from your package.json contribution declarations."); const starActivation = l10n.t("Using '*' activation is usually a bad idea as it impacts performance."); diff --git a/extensions/git/package.nls.json b/extensions/git/package.nls.json -index bad361b..300261a 100644 +index 78a6b0f..10712a2 100644 --- a/extensions/git/package.nls.json +++ b/extensions/git/package.nls.json -@@ -221,3 +221,3 @@ +@@ -222,3 +222,3 @@ "{Locked='](command:git.showOutput'}", - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -249,4 +249,4 @@ +@@ -250,4 +250,4 @@ "config.showCommitInput": "Controls whether to show the commit input in the Git source control panel.", - "config.terminalAuthentication": "Controls whether to enable VS Code to be the authentication handler for Git processes spawned in the Integrated Terminal. Note: Terminals need to be restarted to pick up a change in this setting.", - "config.terminalGitEditor": "Controls whether to enable VS Code to be the Git editor for Git processes spawned in the integrated terminal. Note: Terminals need to be restarted to pick up a change in this setting.", + "config.terminalAuthentication": "Controls whether to enable VSCodium to be the authentication handler for Git processes spawned in the Integrated Terminal. Note: Terminals need to be restarted to pick up a change in this setting.", + "config.terminalGitEditor": "Controls whether to enable VSCodium to be the Git editor for Git processes spawned in the integrated terminal. Note: Terminals need to be restarted to pick up a change in this setting.", "config.timeline.showAuthor": "Controls whether to show the commit author in the Timeline view.", -@@ -305,3 +305,3 @@ +@@ -306,3 +306,3 @@ "{Locked='](command:workbench.action.reloadWindow'}", - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -313,3 +313,3 @@ +@@ -314,3 +314,3 @@ "{Locked='](command:workbench.action.reloadWindow'}", - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -321,3 +321,3 @@ +@@ -322,3 +322,3 @@ "{Locked='](command:workbench.action.reloadWindow'}", - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -327,6 +327,6 @@ +@@ -328,6 +328,6 @@ "view.workbench.scm.disabled": { - "message": "If you would like to use Git features, please enable Git in your [settings](command:workbench.action.openSettings?%5B%22git.enabled%22%5D).\nTo learn more about how to use Git and source control in VS Code [read our docs](https://aka.ms/vscode-scm).", + "message": "If you would like to use Git features, please enable Git in your [settings](command:workbench.action.openSettings?%5B%22git.enabled%22%5D).\nTo learn more about how to use Git and source control in VSCodium [read our docs](https://aka.ms/vscode-scm).", @@ -112,7 +112,7 @@ index bad361b..300261a 100644 - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -335,6 +335,6 @@ +@@ -336,6 +336,6 @@ "view.workbench.scm.empty": { - "message": "In order to use Git features, you can open a folder containing a Git repository or clone from a URL.\n[Open Folder](command:vscode.openFolder)\n[Clone Repository](command:git.clone)\nTo learn more about how to use Git and source control in VS Code [read our docs](https://aka.ms/vscode-scm).", + "message": "In order to use Git features, you can open a folder containing a Git repository or clone from a URL.\n[Open Folder](command:vscode.openFolder)\n[Clone Repository](command:git.clone)\nTo learn more about how to use Git and source control in VSCodium [read our docs](https://aka.ms/vscode-scm).", @@ -121,7 +121,7 @@ index bad361b..300261a 100644 - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -343,6 +343,6 @@ +@@ -344,6 +344,6 @@ "view.workbench.scm.folder": { - "message": "The folder currently open doesn't have a Git repository. You can initialize a repository which will enable source control features powered by Git.\n[Initialize Repository](command:git.init?%5Btrue%5D)\nTo learn more about how to use Git and source control in VS Code [read our docs](https://aka.ms/vscode-scm).", + "message": "The folder currently open doesn't have a Git repository. You can initialize a repository which will enable source control features powered by Git.\n[Initialize Repository](command:git.init?%5Btrue%5D)\nTo learn more about how to use Git and source control in VSCodium [read our docs](https://aka.ms/vscode-scm).", @@ -130,7 +130,7 @@ index bad361b..300261a 100644 - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -351,6 +351,6 @@ +@@ -352,6 +352,6 @@ "view.workbench.scm.workspace": { - "message": "The workspace currently open doesn't have any folders containing Git repositories. You can initialize a repository on a folder which will enable source control features powered by Git.\n[Initialize Repository](command:git.init)\nTo learn more about how to use Git and source control in VS Code [read our docs](https://aka.ms/vscode-scm).", + "message": "The workspace currently open doesn't have any folders containing Git repositories. You can initialize a repository on a folder which will enable source control features powered by Git.\n[Initialize Repository](command:git.init)\nTo learn more about how to use Git and source control in VSCodium [read our docs](https://aka.ms/vscode-scm).", @@ -139,7 +139,7 @@ index bad361b..300261a 100644 - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -359,6 +359,6 @@ +@@ -360,6 +360,6 @@ "view.workbench.scm.emptyWorkspace": { - "message": "The workspace currently open doesn't have any folders containing Git repositories.\n[Add Folder to Workspace](command:workbench.action.addRootFolder)\nTo learn more about how to use Git and source control in VS Code [read our docs](https://aka.ms/vscode-scm).", + "message": "The workspace currently open doesn't have any folders containing Git repositories.\n[Add Folder to Workspace](command:workbench.action.addRootFolder)\nTo learn more about how to use Git and source control in VSCodium [read our docs](https://aka.ms/vscode-scm).", @@ -148,27 +148,27 @@ index bad361b..300261a 100644 - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -377,3 +377,3 @@ +@@ -378,3 +378,3 @@ "{Locked='](command:workbench.action.openSettings?%5B%22git.openRepositoryInParentFolders%22%5D'}", - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -386,3 +386,3 @@ +@@ -387,3 +387,3 @@ "{Locked='](command:workbench.action.openSettings?%5B%22git.openRepositoryInParentFolders%22%5D'}", - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -394,3 +394,3 @@ +@@ -395,3 +395,3 @@ "{Locked='](command:git.manageUnsafeRepositories'}", - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -402,3 +402,3 @@ +@@ -403,3 +403,3 @@ "{Locked='](command:git.manageUnsafeRepositories'}", - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -407,6 +407,6 @@ +@@ -408,6 +408,6 @@ "view.workbench.scm.closedRepository": { - "message": "A Git repository was found that was previously closed.\n[Reopen Closed Repository](command:git.reopenClosedRepositories)\nTo learn more about how to use Git and source control in VS Code [read our docs](https://aka.ms/vscode-scm).", + "message": "A Git repository was found that was previously closed.\n[Reopen Closed Repository](command:git.reopenClosedRepositories)\nTo learn more about how to use Git and source control in VSCodium [read our docs](https://aka.ms/vscode-scm).", @@ -177,7 +177,7 @@ index bad361b..300261a 100644 - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -415,6 +415,6 @@ +@@ -416,6 +416,6 @@ "view.workbench.scm.closedRepositories": { - "message": "Git repositories were found that were previously closed.\n[Reopen Closed Repositories](command:git.reopenClosedRepositories)\nTo learn more about how to use Git and source control in VS Code [read our docs](https://aka.ms/vscode-scm).", + "message": "Git repositories were found that were previously closed.\n[Reopen Closed Repositories](command:git.reopenClosedRepositories)\nTo learn more about how to use Git and source control in VSCodium [read our docs](https://aka.ms/vscode-scm).", @@ -186,12 +186,12 @@ index bad361b..300261a 100644 - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -426,3 +426,3 @@ +@@ -427,3 +427,3 @@ "{Locked='](command:git.clone'}", - "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VS Code", + "Do not translate the 'command:*' part inside of the '(..)'. It is an internal command syntax for VSCodium", "Please make sure there is no space between the right bracket and left parenthesis: ]( this is an internal syntax for links" -@@ -430,3 +430,3 @@ +@@ -431,3 +431,3 @@ }, - "view.workbench.learnMore": "To learn more about how to use Git and source control in VS Code [read our docs](https://aka.ms/vscode-scm)." + "view.workbench.learnMore": "To learn more about how to use Git and source control in VSCodium [read our docs](https://aka.ms/vscode-scm)." @@ -359,7 +359,7 @@ index b18b340..ca2eb2d 100644 + "comment": "The simpler (?<=\\bProcess\\.|\\bCommandLine\\.) breaks VSCodium / Atom, see https://github.com/textmate/swift.tmbundle/issues/29", "name": "support.variable.swift", diff --git a/extensions/typescript-language-features/package.nls.json b/extensions/typescript-language-features/package.nls.json -index d9c4ddb..4f0516c 100644 +index 4a62db6..233fb1f 100644 --- a/extensions/typescript-language-features/package.nls.json +++ b/extensions/typescript-language-features/package.nls.json @@ -75,4 +75,4 @@ @@ -374,15 +374,19 @@ index d9c4ddb..4f0516c 100644 - "typescript.updateImportsOnFileMove.enabled": "Enable/disable automatic updating of import paths when you rename or move a file in VS Code.", + "typescript.updateImportsOnFileMove.enabled": "Enable/disable automatic updating of import paths when you rename or move a file in VSCodium.", "typescript.updateImportsOnFileMove.enabled.prompt": "Prompt on each rename.", -@@ -166,5 +166,5 @@ +@@ -166,8 +166,8 @@ "typescript.suggest.enabled": "Enabled/disable autocomplete suggestions.", - "configuration.surveys.enabled": "Enabled/disable occasional surveys that help us improve VS Code's JavaScript and TypeScript support.", + "configuration.surveys.enabled": "Enabled/disable occasional surveys that help us improve VSCodium's JavaScript and TypeScript support.", "configuration.suggest.completeJSDocs": "Enable/disable suggestion to complete JSDoc comments.", - "configuration.tsserver.useVsCodeWatcher": "Use VS Code's file watchers instead of TypeScript's. Requires using TypeScript 5.4+ in the workspace.", + "configuration.tsserver.useVsCodeWatcher": "Use VSCodium's file watchers instead of TypeScript's. Requires using TypeScript 5.4+ in the workspace.", + "configuration.tsserver.useVsCodeWatcher.deprecation": "Please use the `#typescript.tsserver.watchOptions#` setting instead.", "configuration.tsserver.watchOptions": "Configure which watching strategies should be used to keep track of files and directories.", -@@ -234,6 +234,6 @@ +- "configuration.tsserver.watchOptions.vscode": "Use VS Code's file watchers instead of TypeScript's. Requires using TypeScript 5.4+ in the workspace.", ++ "configuration.tsserver.watchOptions.vscode": "Use VSCodium's file watchers instead of TypeScript's. Requires using TypeScript 5.4+ in the workspace.", + "configuration.tsserver.watchOptions.watchFile": "Strategy for how individual files are watched.", +@@ -236,6 +236,6 @@ "configuration.suggest.objectLiteralMethodSnippets.enabled": "Enable/disable snippet completions for methods in object literals.", - "configuration.tsserver.web.projectWideIntellisense.enabled": "Enable/disable project-wide IntelliSense on web. Requires that VS Code is running in a trusted context.", + "configuration.tsserver.web.projectWideIntellisense.enabled": "Enable/disable project-wide IntelliSense on web. Requires that VSCodium is running in a trusted context.", @@ -390,8 +394,8 @@ index d9c4ddb..4f0516c 100644 "configuration.tsserver.web.typeAcquisition.enabled": "Enable/disable package acquisition on the web. This enables IntelliSense for imported packages. Requires `#typescript.tsserver.web.projectWideIntellisense.enabled#`. Currently not supported for Safari.", - "configuration.tsserver.nodePath": "Run TS Server on a custom Node installation. This can be a path to a Node executable, or 'node' if you want VS Code to detect a Node installation.", + "configuration.tsserver.nodePath": "Run TS Server on a custom Node installation. This can be a path to a Node executable, or 'node' if you want VSCodium to detect a Node installation.", - "configuration.updateImportsOnPaste": "Automatically update imports when pasting code. Requires TypeScript 5.6+.", -@@ -249,6 +249,6 @@ + "configuration.updateImportsOnPaste": "Automatically update imports when pasting code. Requires TypeScript 5.7+.", +@@ -251,6 +251,6 @@ "walkthroughs.nodejsWelcome.debugJsFile.title": "Run and Debug your JavaScript", - "walkthroughs.nodejsWelcome.debugJsFile.description": "Once you've installed Node.js, you can run JavaScript programs at a terminal by entering ``node your-file-name.js``\nAnother easy way to run Node.js programs is by using VS Code's debugger which lets you run your code, pause at different points, and help you understand what's going on step-by-step.\n[Start Debugging](command:javascript-walkthrough.commands.debugJsFile)", + "walkthroughs.nodejsWelcome.debugJsFile.description": "Once you've installed Node.js, you can run JavaScript programs at a terminal by entering ``node your-file-name.js``\nAnother easy way to run Node.js programs is by using VSCodium's debugger which lets you run your code, pause at different points, and help you understand what's going on step-by-step.\n[Start Debugging](command:javascript-walkthrough.commands.debugJsFile)", @@ -525,7 +529,7 @@ index fa001b5..13abac2 100644 + throw Error(`Failed to download and unzip VSCodium ${quality} - ${commit}`); } diff --git a/src/vs/code/electron-main/app.ts b/src/vs/code/electron-main/app.ts -index 2942951..86c5653 100644 +index ebf401d..bed25b5 100644 --- a/src/vs/code/electron-main/app.ts +++ b/src/vs/code/electron-main/app.ts @@ -532,3 +532,3 @@ export class CodeApplication extends Disposable { @@ -775,7 +779,7 @@ index 3930f44..89051bd 100644 + const message = requireReload ? localize('ReinstallAction.successReload', "Please reload VSCodium to complete reinstalling the extension {0}.", extension.identifier.id) : localize('ReinstallAction.success', "Reinstalling the extension {0} is completed.", extension.identifier.id); diff --git a/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts b/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts -index e34a900..c976572 100644 +index 1575be2..74384e1 100644 --- a/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts +++ b/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts @@ -452,3 +452,3 @@ export class Extension implements IExtension { @@ -908,64 +912,59 @@ index 6a5728c..2c561bd 100644 + message: nls.localize('TaskSystem.noProcess', 'The launched task doesn\'t exist anymore. If the task spawned background processes exiting VSCodium might result in orphaned processes. To avoid this start the last background process with a wait flag.'), primaryButton: nls.localize({ key: 'TaskSystem.exitAnyways', comment: ['&& denotes a mnemonic'] }, "&&Exit Anyways"), diff --git a/src/vs/workbench/contrib/terminal/browser/terminalView.ts b/src/vs/workbench/contrib/terminal/browser/terminalView.ts -index 13d0821..171a99d 100644 +index dd683b4..07bce78 100644 --- a/src/vs/workbench/contrib/terminal/browser/terminalView.ts +++ b/src/vs/workbench/contrib/terminal/browser/terminalView.ts -@@ -202,3 +202,3 @@ export class TerminalViewPane extends ViewPane { +@@ -203,3 +203,3 @@ export class TerminalViewPane extends ViewPane { }]; - this._notificationService.prompt(Severity.Warning, nls.localize('terminal.monospaceOnly', "The terminal only supports monospace fonts. Be sure to restart VS Code if this is a newly installed font."), choices); + this._notificationService.prompt(Severity.Warning, nls.localize('terminal.monospaceOnly', "The terminal only supports monospace fonts. Be sure to restart VSCodium if this is a newly installed font."), choices); } diff --git a/src/vs/workbench/contrib/terminal/common/terminalConfiguration.ts b/src/vs/workbench/contrib/terminal/common/terminalConfiguration.ts -index 4b36691..a87a683 100644 +index 33ca655..353692a 100644 --- a/src/vs/workbench/contrib/terminal/common/terminalConfiguration.ts +++ b/src/vs/workbench/contrib/terminal/common/terminalConfiguration.ts -@@ -296,3 +296,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -287,3 +287,3 @@ const terminalConfiguration: IConfigurationNode = { [TerminalSettingId.DetectLocale]: { - markdownDescription: localize('terminal.integrated.detectLocale', "Controls whether to detect and set the `$LANG` environment variable to a UTF-8 compliant option since VS Code's terminal only supports UTF-8 encoded data coming from the shell."), + markdownDescription: localize('terminal.integrated.detectLocale', "Controls whether to detect and set the `$LANG` environment variable to a UTF-8 compliant option since VSCodium's terminal only supports UTF-8 encoded data coming from the shell."), type: 'string', -@@ -310,3 +310,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -301,3 +301,3 @@ const terminalConfiguration: IConfigurationNode = { markdownEnumDescriptions: [ - localize('terminal.integrated.gpuAcceleration.auto', "Let VS Code detect which renderer will give the best experience."), + localize('terminal.integrated.gpuAcceleration.auto', "Let VSCodium detect which renderer will give the best experience."), localize('terminal.integrated.gpuAcceleration.on', "Enable GPU acceleration within the terminal."), -@@ -398,3 +398,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -389,3 +389,3 @@ const terminalConfiguration: IConfigurationNode = { 'terminal.integrated.commandsToSkipShell', - "A set of command IDs whose keybindings will not be sent to the shell but instead always be handled by VS Code. This allows keybindings that would normally be consumed by the shell to act instead the same as when the terminal is not focused, for example `Ctrl+P` to launch Quick Open.\n\n \n\nMany commands are skipped by default. To override a default and pass that command's keybinding to the shell instead, add the command prefixed with the `-` character. For example add `-workbench.action.quickOpen` to allow `Ctrl+P` to reach the shell.\n\n \n\nThe following list of default skipped commands is truncated when viewed in Settings Editor. To see the full list, {1} and search for the first command from the list below.\n\n \n\nDefault Skipped Commands:\n\n{0}", + "A set of command IDs whose keybindings will not be sent to the shell but instead always be handled by VSCodium. This allows keybindings that would normally be consumed by the shell to act instead the same as when the terminal is not focused, for example `Ctrl+P` to launch Quick Open.\n\n \n\nMany commands are skipped by default. To override a default and pass that command's keybinding to the shell instead, add the command prefixed with the `-` character. For example add `-workbench.action.quickOpen` to allow `Ctrl+P` to reach the shell.\n\n \n\nThe following list of default skipped commands is truncated when viewed in Settings Editor. To see the full list, {1} and search for the first command from the list below.\n\n \n\nDefault Skipped Commands:\n\n{0}", DEFAULT_COMMANDS_TO_SKIP_SHELL.sort().map(command => `- ${command}`).join('\n'), -@@ -410,3 +410,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -401,3 +401,3 @@ const terminalConfiguration: IConfigurationNode = { [TerminalSettingId.AllowChords]: { - markdownDescription: localize('terminal.integrated.allowChords', "Whether or not to allow chord keybindings in the terminal. Note that when this is true and the keystroke results in a chord it will bypass {0}, setting this to false is particularly useful when you want ctrl+k to go to your shell (not VS Code).", '`#terminal.integrated.commandsToSkipShell#`'), + markdownDescription: localize('terminal.integrated.allowChords', "Whether or not to allow chord keybindings in the terminal. Note that when this is true and the keystroke results in a chord it will bypass {0}, setting this to false is particularly useful when you want ctrl+k to go to your shell (not VSCodium).", '`#terminal.integrated.commandsToSkipShell#`'), type: 'boolean', -@@ -421,3 +421,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -412,3 +412,3 @@ const terminalConfiguration: IConfigurationNode = { restricted: true, - markdownDescription: localize('terminal.integrated.env.osx', "Object with environment variables that will be added to the VS Code process to be used by the terminal on macOS. Set to `null` to delete the environment variable."), + markdownDescription: localize('terminal.integrated.env.osx', "Object with environment variables that will be added to the VSCodium process to be used by the terminal on macOS. Set to `null` to delete the environment variable."), type: 'object', -@@ -430,3 +430,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -421,3 +421,3 @@ const terminalConfiguration: IConfigurationNode = { restricted: true, - markdownDescription: localize('terminal.integrated.env.linux', "Object with environment variables that will be added to the VS Code process to be used by the terminal on Linux. Set to `null` to delete the environment variable."), + markdownDescription: localize('terminal.integrated.env.linux', "Object with environment variables that will be added to the VSCodium process to be used by the terminal on Linux. Set to `null` to delete the environment variable."), type: 'object', -@@ -439,3 +439,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -430,3 +430,3 @@ const terminalConfiguration: IConfigurationNode = { restricted: true, - markdownDescription: localize('terminal.integrated.env.windows', "Object with environment variables that will be added to the VS Code process to be used by the terminal on Windows. Set to `null` to delete the environment variable."), + markdownDescription: localize('terminal.integrated.env.windows', "Object with environment variables that will be added to the VSCodium process to be used by the terminal on Windows. Set to `null` to delete the environment variable."), type: 'object', -@@ -468,3 +468,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -459,3 +459,3 @@ const terminalConfiguration: IConfigurationNode = { [TerminalSettingId.ExperimentalWindowsUseConptyDll]: { - markdownDescription: localize('terminal.integrated.experimentalWindowsUseConptyDll', "Whether to use the experimental conpty.dll shipped with VS Code, instead of the one bundled with Windows."), + markdownDescription: localize('terminal.integrated.experimentalWindowsUseConptyDll', "Whether to use the experimental conpty.dll shipped with VSCodium, instead of the one bundled with Windows."), type: 'boolean', -@@ -568,3 +568,3 @@ const terminalConfiguration: IConfigurationNode = { - [TerminalSettingId.AutoReplies]: { -- markdownDescription: localize('terminal.integrated.autoReplies', "A set of messages that, when encountered in the terminal, will be automatically responded to. Provided the message is specific enough, this can help automate away common responses.\n\nRemarks:\n\n- Use {0} to automatically respond to the terminate batch job prompt on Windows.\n- The message includes escape sequences so the reply might not happen with styled text.\n- Each reply can only happen once every second.\n- Use {1} in the reply to mean the enter key.\n- To unset a default key, set the value to null.\n- Restart VS Code if new don't apply.", '`"Terminate batch job (Y/N)": "Y\\r"`', '`"\\r"`'), -+ markdownDescription: localize('terminal.integrated.autoReplies', "A set of messages that, when encountered in the terminal, will be automatically responded to. Provided the message is specific enough, this can help automate away common responses.\n\nRemarks:\n\n- Use {0} to automatically respond to the terminate batch job prompt on Windows.\n- The message includes escape sequences so the reply might not happen with styled text.\n- Each reply can only happen once every second.\n- Use {1} in the reply to mean the enter key.\n- To unset a default key, set the value to null.\n- Restart VSCodium if new don't apply.", '`"Terminate batch job (Y/N)": "Y\\r"`', '`"\\r"`'), - type: 'object', -@@ -581,3 +581,3 @@ const terminalConfiguration: IConfigurationNode = { +@@ -560,3 +560,3 @@ const terminalConfiguration: IConfigurationNode = { restricted: true, - markdownDescription: localize('terminal.integrated.shellIntegration.enabled', "Determines whether or not shell integration is auto-injected to support features like enhanced command tracking and current working directory detection. \n\nShell integration works by injecting the shell with a startup script. The script gives VS Code insight into what is happening within the terminal.\n\nSupported shells:\n\n- Linux/macOS: bash, fish, pwsh, zsh\n - Windows: pwsh, git bash\n\nThis setting applies only when terminals are created, so you will need to restart your terminals for it to take effect.\n\n Note that the script injection may not work if you have custom arguments defined in the terminal profile, have enabled {1}, have a [complex bash `PROMPT_COMMAND`](https://code.visualstudio.com/docs/editor/integrated-terminal#_complex-bash-promptcommand), or other unsupported setup. To disable decorations, see {0}", '`#terminal.integrated.shellIntegrations.decorationsEnabled#`', '`#editor.accessibilitySupport#`'), + markdownDescription: localize('terminal.integrated.shellIntegration.enabled', "Determines whether or not shell integration is auto-injected to support features like enhanced command tracking and current working directory detection. \n\nShell integration works by injecting the shell with a startup script. The script gives VSCodium insight into what is happening within the terminal.\n\nSupported shells:\n\n- Linux/macOS: bash, fish, pwsh, zsh\n - Windows: pwsh, git bash\n\nThis setting applies only when terminals are created, so you will need to restart your terminals for it to take effect.\n\n Note that the script injection may not work if you have custom arguments defined in the terminal profile, have enabled {1}, have a [complex bash `PROMPT_COMMAND`](https://code.visualstudio.com/docs/editor/integrated-terminal#_complex-bash-promptcommand), or other unsupported setup. To disable decorations, see {0}", '`#terminal.integrated.shellIntegrations.decorationsEnabled#`', '`#editor.accessibilitySupport#`'), @@ -1171,24 +1170,24 @@ index 0ab6828..6c8b5ef 100644 + markdownDescription: localize('workspace.trust.emptyWindow.description', "Controls whether or not the empty window is trusted by default within VSCodium. When used with `#{0}#`, you can enable the full functionality of VSCodium without prompting in an empty window.", WORKSPACE_TRUST_UNTRUSTED_FILES), tags: [WORKSPACE_TRUST_SETTING_TAG], diff --git a/src/vs/workbench/electron-sandbox/desktop.contribution.ts b/src/vs/workbench/electron-sandbox/desktop.contribution.ts -index f6bae66..a4d5856 100644 +index b638748..13af28d 100644 --- a/src/vs/workbench/electron-sandbox/desktop.contribution.ts +++ b/src/vs/workbench/electron-sandbox/desktop.contribution.ts -@@ -401,3 +401,3 @@ import { MAX_ZOOM_LEVEL, MIN_ZOOM_LEVEL } from '../../platform/window/electron-s +@@ -402,3 +402,3 @@ import { MAX_ZOOM_LEVEL, MIN_ZOOM_LEVEL } from '../../platform/window/electron-s type: 'boolean', - description: localize('argv.disableChromiumSandbox', "Disables the Chromium sandbox. This is useful when running VS Code as elevated on Linux and running under Applocker on Windows.") + description: localize('argv.disableChromiumSandbox', "Disables the Chromium sandbox. This is useful when running VSCodium as elevated on Linux and running under Applocker on Windows.") }, -@@ -405,3 +405,3 @@ import { MAX_ZOOM_LEVEL, MIN_ZOOM_LEVEL } from '../../platform/window/electron-s +@@ -406,3 +406,3 @@ import { MAX_ZOOM_LEVEL, MIN_ZOOM_LEVEL } from '../../platform/window/electron-s type: 'boolean', - description: localize('argv.useInMemorySecretStorage', "Ensures that an in-memory store will be used for secret storage instead of using the OS's credential store. This is often used when running VS Code extension tests or when you're experiencing difficulties with the credential store.") + description: localize('argv.useInMemorySecretStorage', "Ensures that an in-memory store will be used for secret storage instead of using the OS's credential store. This is often used when running VSCodium extension tests or when you're experiencing difficulties with the credential store.") } diff --git a/src/vs/workbench/services/extensionManagement/common/extensionManagementService.ts b/src/vs/workbench/services/extensionManagement/common/extensionManagementService.ts -index 45bd7f0..8705da3 100644 +index 90ff933..8b40a84 100644 --- a/src/vs/workbench/services/extensionManagement/common/extensionManagementService.ts +++ b/src/vs/workbench/services/extensionManagement/common/extensionManagementService.ts -@@ -762,3 +762,3 @@ export class ExtensionManagementService extends Disposable implements IWorkbench +@@ -765,3 +765,3 @@ export class ExtensionManagementService extends Disposable implements IWorkbench - const productName = localize('VS Code for Web', "{0} for the Web", this.productService.nameLong); + const productName = localize('VSCodium for Web', "{0} for the Web", this.productService.nameLong); @@ -1208,7 +1207,7 @@ index ac3c7ed..542bb3c 100644 + comment: 'This is used to understand the drop funnel of extension URI handling by the OS & VSCodium.'; }; diff --git a/src/vs/workbench/services/extensions/common/extensionsRegistry.ts b/src/vs/workbench/services/extensions/common/extensionsRegistry.ts -index bb8220b..ca56b50 100644 +index 03fbc7d..1903754 100644 --- a/src/vs/workbench/services/extensions/common/extensionsRegistry.ts +++ b/src/vs/workbench/services/extensions/common/extensionsRegistry.ts @@ -178,3 +178,3 @@ export const schema: IJSONSchema = { diff --git a/patches/build-version.patch b/patches/build-version.patch index 5bebde8..149b5e3 100644 --- a/patches/build-version.patch +++ b/patches/build-version.patch @@ -1,43 +1,43 @@ diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js -index e314794..fce8d15 100644 +index 53ef6f3..411da6b 100644 --- a/build/gulpfile.reh.js +++ b/build/gulpfile.reh.js -@@ -343,2 +343,3 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa +@@ -307,2 +307,3 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa const name = product.nameShort; + const release = packageJson.release; -@@ -346,3 +347,3 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa +@@ -310,3 +311,3 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa const packageJsonStream = gulp.src(['remote/package.json'], { base: 'remote' }) -- .pipe(json({ name, version, dependencies: undefined, optionalDependencies: undefined, ...(!isAMD() ? { type: 'module' } : {}) })) // TODO@esm this should be configured in the top level package.json -+ .pipe(json({ name, version, release, dependencies: undefined, optionalDependencies: undefined, ...(!isAMD() ? { type: 'module' } : {}) })) // TODO@esm this should be configured in the top level package.json +- .pipe(json({ name, version, dependencies: undefined, optionalDependencies: undefined, type: 'module' })) ++ .pipe(json({ name, version, release, dependencies: undefined, optionalDependencies: undefined, type: 'module' })) .pipe(es.through(function (file) { -@@ -354,3 +355,3 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa +@@ -318,3 +319,3 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa const productJsonStream = gulp.src(['product.json'], { base: '.' }) - .pipe(json({ commit, date: readISODate('out-build'), version })) + .pipe(json({ commit, date: readISODate('out-build'), version, release })) .pipe(es.through(function (file) { diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js -index 9dfb6a3..a4277ff 100644 +index d59b42d..61670c0 100644 --- a/build/gulpfile.vscode.js +++ b/build/gulpfile.vscode.js -@@ -320,3 +320,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op +@@ -268,3 +268,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op - let version = packageJson.version; + let version = packageJson.version const quality = product.quality; -@@ -328,3 +328,4 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op +@@ -276,3 +276,4 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op const name = product.nameShort; -- const packageJsonUpdates = { name, version, ...(!isAMD() ? { type: 'module', main: 'out/main.js' } : {}) }; // TODO@esm this should be configured in the top level package.json +- const packageJsonUpdates = { name, version }; + const release = packageJson.release; -+ const packageJsonUpdates = { name, version, release, ...(!isAMD() ? { type: 'module', main: 'out/main.js' } : {}) }; // TODO@esm this should be configured in the top level package.json ++ const packageJsonUpdates = { name, version, release }; -@@ -345,3 +346,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op +@@ -293,3 +294,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op const productJsonStream = gulp.src(['product.json'], { base: '.' }) - .pipe(json({ commit, date: readISODate('out-build'), checksums, version })) + .pipe(json({ commit, date: readISODate('out-build'), checksums, version, release })) .pipe(es.through(function (file) { diff --git a/build/gulpfile.vscode.linux.js b/build/gulpfile.vscode.linux.js -index 5fa5a5d..b08e376 100644 +index fb0e5a4..170c60b 100644 --- a/build/gulpfile.vscode.linux.js +++ b/build/gulpfile.vscode.linux.js @@ -27,4 +27,2 @@ const commit = getVersion(root); @@ -73,7 +73,7 @@ index 98175f5..afacbe3 100644 + RawVersion: `${pkg.version.replace(/-\w+$/, '')}.${pkg.release}`, NameVersion: product.win32NameVersion + (target === 'user' ? ' (User)' : ''), diff --git a/src/vs/base/common/product.ts b/src/vs/base/common/product.ts -index c397b1a..ccf7911 100644 +index 1f58ce0..1555ae2 100644 --- a/src/vs/base/common/product.ts +++ b/src/vs/base/common/product.ts @@ -58,2 +58,3 @@ export interface IProductConfiguration { @@ -90,7 +90,7 @@ index 5f6efd5..da3c54d 100644 + output.push(`Version: ${this.productService.nameShort} ${this.productService.version} ${this.productService.release || 'Release unknown'} (${this.productService.commit || 'Commit unknown'}, ${this.productService.date || 'Date unknown'})`); output.push(`OS Version: ${osLib.type()} ${osLib.arch()} ${osLib.release()}`); diff --git a/src/vs/platform/product/common/product.ts b/src/vs/platform/product/common/product.ts -index a98043f..b54a78f 100644 +index 1a2a619..2a8d683 100644 --- a/src/vs/platform/product/common/product.ts +++ b/src/vs/platform/product/common/product.ts @@ -43,6 +43,7 @@ else if (globalThis._VSCODE_PRODUCT_JSON && globalThis._VSCODE_PACKAGE_JSON) { diff --git a/patches/crash-reporter.patch b/patches/crash-reporter.patch index d86a90b..8c9a786 100644 --- a/patches/crash-reporter.patch +++ b/patches/crash-reporter.patch @@ -1,13 +1,10 @@ -diff --git a/src/main.js b/src/main.js -index 19dde20..d9611f2 100644 ---- a/src/main.js -+++ b/src/main.js -@@ -409,6 +409,8 @@ function configureCrashReporter() { - argv.splice(endOfArgsMarkerIndex, 0, '--crash-reporter-id', crashReporterId); - } - } -+ } else { -+ return; +diff --git a/src/main.ts b/src/main.ts +index 62ddd5f..a6fc3c5 100644 +--- a/src/main.ts ++++ b/src/main.ts +@@ -461,2 +461,5 @@ function configureCrashReporter(): void { } ++ else { ++ return; ++ } } - diff --git a/patches/helper/settings.patch b/patches/helper/settings.patch index 70c4f35..b3ef494 100644 --- a/patches/helper/settings.patch +++ b/patches/helper/settings.patch @@ -3,7 +3,7 @@ index 99e495a..996044a 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -10,5 +10,5 @@ - "cli/target": true, + "build/**/*.js.map": true, - "build/**/*.js": { - "when": "$(basename).ts" - } diff --git a/patches/linux/client/disable-remote.patch b/patches/linux/client/disable-remote.patch index 7e288b2..99c8d8e 100644 --- a/patches/linux/client/disable-remote.patch +++ b/patches/linux/client/disable-remote.patch @@ -1,8 +1,14 @@ -diff --git a/build/npm/postinstall.js b/build/npm/postinstall.js -index e38c2cb..e00627c 100644 ---- a/build/npm/postinstall.js -+++ b/build/npm/postinstall.js -@@ -134,2 +134,3 @@ for (let dir of dirs) { - setNpmrcConfig('remote', opts.env); -+ continue; - } +diff --git a/build/npm/dirs.js b/build/npm/dirs.js +index b9645e6..22f3450 100644 +--- a/build/npm/dirs.js ++++ b/build/npm/dirs.js +@@ -47,4 +47,2 @@ const dirs = [ + 'extensions/vscode-test-resolver', +- 'remote', +- 'remote/web', + 'test/automation', +@@ -59,4 +57,2 @@ if (fs.existsSync(`${__dirname}/../../.build/distro/npm`)) { + dirs.push('.build/distro/npm'); +- dirs.push('.build/distro/npm/remote'); +- dirs.push('.build/distro/npm/remote/web'); + } diff --git a/patches/linux/fix-build.patch b/patches/linux/fix-build.patch index e8be33f..69ba0e7 100644 --- a/patches/linux/fix-build.patch +++ b/patches/linux/fix-build.patch @@ -1,39 +1,39 @@ diff --git a/build/gulpfile.vscode.linux.js b/build/gulpfile.vscode.linux.js -index 28ddfb0..0fd18a1 100644 +index fb0e5a4..412a6cc 100644 --- a/build/gulpfile.vscode.linux.js +++ b/build/gulpfile.vscode.linux.js -@@ -192,2 +192,3 @@ function prepareRpmPackage(arch) { +@@ -197,2 +197,3 @@ function prepareRpmPackage(arch) { const spec = code.pipe(es.through( + null, async function () { -@@ -306,4 +307,3 @@ BUILD_TARGETS.forEach(({ arch }) => { +@@ -312,4 +313,3 @@ BUILD_TARGETS.forEach(({ arch }) => { const prepareDebTask = task.define(`vscode-linux-${arch}-prepare-deb`, task.series(rimraf(`.build/linux/deb/${debArch}`), prepareDebPackage(arch))); - gulp.task(prepareDebTask); - const buildDebTask = task.define(`vscode-linux-${arch}-build-deb`, buildDebPackage(arch)); + const buildDebTask = task.define(`vscode-linux-${arch}-build-deb`, task.series(prepareDebTask, buildDebPackage(arch))); gulp.task(buildDebTask); -@@ -312,4 +312,3 @@ BUILD_TARGETS.forEach(({ arch }) => { +@@ -318,4 +318,3 @@ BUILD_TARGETS.forEach(({ arch }) => { const prepareRpmTask = task.define(`vscode-linux-${arch}-prepare-rpm`, task.series(rimraf(`.build/linux/rpm/${rpmArch}`), prepareRpmPackage(arch))); - gulp.task(prepareRpmTask); - const buildRpmTask = task.define(`vscode-linux-${arch}-build-rpm`, buildRpmPackage(arch)); + const buildRpmTask = task.define(`vscode-linux-${arch}-build-rpm`, task.series(prepareRpmTask, buildRpmPackage(arch))); gulp.task(buildRpmTask); diff --git a/build/linux/dependencies-generator.js b/build/linux/dependencies-generator.js -index 19adbeb..fef80a5 100644 +index 374c9b6..da5ef4d 100644 --- a/build/linux/dependencies-generator.js +++ b/build/linux/dependencies-generator.js @@ -24,3 +24,3 @@ const product = require("../../product.json"); // are valid, are in dep-lists.ts -const FAIL_BUILD_FOR_NEW_DEPENDENCIES = true; +const FAIL_BUILD_FOR_NEW_DEPENDENCIES = false; - // Based on https://source.chromium.org/chromium/chromium/src/+/refs/tags/124.0.6367.243:chrome/installer/linux/BUILD.gn;l=64-80 -@@ -56,3 +56,3 @@ async function getDependencies(packageType, buildDir, applicationName, arch) { + // Based on https://source.chromium.org/chromium/chromium/src/+/refs/tags/128.0.6613.162:chrome/installer/linux/BUILD.gn;l=64-80 +@@ -57,3 +57,3 @@ async function getDependencies(packageType, buildDir, applicationName, arch) { // Add the tunnel binary. - files.push(path.join(buildDir, 'bin', product.tunnelApplicationName)); + // files.push(path.join(buildDir, 'bin', product.tunnelApplicationName)); // Add the main executable. diff --git a/build/linux/dependencies-generator.ts b/build/linux/dependencies-generator.ts -index 5fe4ac5..1d3e68a 100644 +index 3c7f6f5..cd33e87 100644 --- a/build/linux/dependencies-generator.ts +++ b/build/linux/dependencies-generator.ts @@ -25,3 +25,3 @@ import product = require('../../product.json'); @@ -41,16 +41,16 @@ index 5fe4ac5..1d3e68a 100644 -const FAIL_BUILD_FOR_NEW_DEPENDENCIES: boolean = true; +const FAIL_BUILD_FOR_NEW_DEPENDENCIES: boolean = false; -@@ -61,3 +61,3 @@ export async function getDependencies(packageType: 'deb' | 'rpm', buildDir: stri +@@ -62,3 +62,3 @@ export async function getDependencies(packageType: 'deb' | 'rpm', buildDir: stri // Add the tunnel binary. - files.push(path.join(buildDir, 'bin', product.tunnelApplicationName)); + // files.push(path.join(buildDir, 'bin', product.tunnelApplicationName)); // Add the main executable. diff --git a/resources/linux/rpm/code.spec.template b/resources/linux/rpm/code.spec.template -index c9e57db..bda2604 100644 +index a73bc02..340b94e 100644 --- a/resources/linux/rpm/code.spec.template +++ b/resources/linux/rpm/code.spec.template -@@ -87 +87,3 @@ update-mime-database %{_datadir}/mime &> /dev/null || : +@@ -88 +88,3 @@ update-mime-database %{_datadir}/mime &> /dev/null || : %{_datadir}/zsh/site-functions/_%{name} + +%config(noreplace) /usr/share/%{name}/resources/app/product.json diff --git a/patches/linux/fix-reh-bootstrap.patch b/patches/linux/fix-reh-bootstrap.patch index 1b3760f..b0e87e6 100644 --- a/patches/linux/fix-reh-bootstrap.patch +++ b/patches/linux/fix-reh-bootstrap.patch @@ -1,24 +1,25 @@ -diff --git a/src/bootstrap-amd.js b/src/bootstrap-amd.js -index 9c8daf5..297e106 100644 ---- a/src/bootstrap-amd.js -+++ b/src/bootstrap-amd.js -@@ -17,3 +17,3 @@ import * as fs from 'fs'; +diff --git a/src/bootstrap-esm.ts b/src/bootstrap-esm.ts +index f2cf101..d974f65 100644 +--- a/src/bootstrap-esm.ts ++++ b/src/bootstrap-esm.ts +@@ -8,3 +8,3 @@ import * as fs from 'fs'; import { fileURLToPath } from 'url'; -import { createRequire, register } from 'node:module'; +import * as Module from 'node:module'; import { product, pkg } from './bootstrap-meta.js'; -@@ -23,3 +23,3 @@ import * as performance from './vs/base/common/performance.js'; - /** @ts-ignore */ +@@ -14,3 +14,4 @@ import { INLSConfiguration } from './vs/nls.js'; + -const require = createRequire(import.meta.url); ++// @ts-ignore +const require = Module.createRequire(import.meta.url); - /** @type any */ -@@ -29,3 +29,4 @@ const __dirname = path.dirname(fileURLToPath(import.meta.url)); + const __dirname = path.dirname(fileURLToPath(import.meta.url)); +@@ -18,3 +19,4 @@ const __dirname = path.dirname(fileURLToPath(import.meta.url)); // Install a hook to module resolution to map 'fs' to 'original-fs' -if (process.env['ELECTRON_RUN_AS_NODE'] || process.versions['electron']) { +// @ts-ignore +if (Module.register && (process.env['ELECTRON_RUN_AS_NODE'] || process.versions['electron'])) { const jsCode = ` -@@ -44,3 +45,4 @@ if (process.env['ELECTRON_RUN_AS_NODE'] || process.versions['electron']) { +@@ -33,3 +35,4 @@ if (process.env['ELECTRON_RUN_AS_NODE'] || process.versions['electron']) { }`; - register(`data:text/javascript;base64,${Buffer.from(jsCode).toString('base64')}`, import.meta.url); + // @ts-ignore diff --git a/patches/linux/reh/node16.patch b/patches/linux/reh/node16.patch index cdd8049..b49c1ab 100644 --- a/patches/linux/reh/node16.patch +++ b/patches/linux/reh/node16.patch @@ -1,8 +1,8 @@ diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js -index e314794..8248247 100644 +index 53ef6f3..7dedc4b 100644 --- a/build/gulpfile.reh.js +++ b/build/gulpfile.reh.js -@@ -437,16 +437,2 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa +@@ -401,16 +401,2 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa - if (platform === 'linux' && process.env['VSCODE_NODE_GLIBC'] === '-glibc-2.17') { - result = es.merge(result, @@ -20,15 +20,15 @@ index e314794..8248247 100644 - result = inlineMeta(result, { diff --git a/remote/package-lock.json b/remote/package-lock.json -index 5872575..a559230 100644 +index 290e188..fc8fd04 100644 --- a/remote/package-lock.json +++ b/remote/package-lock.json @@ -37,3 +37,3 @@ "native-watchdog": "^1.4.1", -- "node-pty": "1.1.0-beta21", +- "node-pty": "^1.1.0-beta22", + "node-pty": "1.1.0-beta4", "tas-client-umd": "0.2.0", -@@ -712,2 +712,8 @@ +@@ -703,2 +703,8 @@ }, + "node_modules/nan": { + "version": "2.20.0", @@ -37,11 +37,11 @@ index 5872575..a559230 100644 + "license": "MIT" + }, "node_modules/napi-build-utils": { -@@ -750,16 +756,9 @@ +@@ -745,8 +751,9 @@ "node_modules/node-pty": { -- "version": "1.1.0-beta21", -- "resolved": "https://registry.npmjs.org/node-pty/-/node-pty-1.1.0-beta21.tgz", -- "integrity": "sha512-FYpnY9g8qMQLTpqyeY9NVli6YfCWwvG6v6gmaDBbPjlc1VMp/+Zivq0SStDrRr1aciGnFCZzpL0BzdMnmbDnAw==", +- "version": "1.1.0-beta22", +- "resolved": "https://registry.npmjs.org/node-pty/-/node-pty-1.1.0-beta22.tgz", +- "integrity": "sha512-CpT334H2oAIULlENvd9U+VBW4ZL+G3clOnpXYzUIurlPCLnl/9xen/KDHBLRcwhZuWcHxIrsCxR1TDCdVDtr0w==", + "version": "1.1.0-beta4", + "resolved": "https://registry.npmjs.org/node-pty/-/node-pty-1.1.0-beta4.tgz", + "integrity": "sha512-CgffN9AxVtH4g7vDxtanm2qaR7jw3oet9r+ArzziGiFvmds9SdR3gXkZF0fqZWSxhTHZusJWvsuKvRv+5O2K8A==", @@ -49,22 +49,14 @@ index 5872575..a559230 100644 + "license": "MIT", "dependencies": { - "node-addon-api": "^7.1.0" -- } -- }, -- "node_modules/node-pty/node_modules/node-addon-api": { -- "version": "7.1.0", -- "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.0.tgz", -- "integrity": "sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==", -- "engines": { -- "node": "^16 || ^18 || >= 20" + "nan": "^2.17.0" } diff --git a/remote/package.json b/remote/package.json -index c107b04..112501b 100644 +index e8ea864..08d756d 100644 --- a/remote/package.json +++ b/remote/package.json @@ -32,3 +32,3 @@ "native-watchdog": "^1.4.1", -- "node-pty": "1.1.0-beta21", +- "node-pty": "^1.1.0-beta22", + "node-pty": "1.1.0-beta4", "tas-client-umd": "0.2.0", diff --git a/patches/merge-user-product.patch b/patches/merge-user-product.patch index 9fde938..636b248 100644 --- a/patches/merge-user-product.patch +++ b/patches/merge-user-product.patch @@ -1,28 +1,35 @@ -diff --git a/src/main.js b/src/main.js -index 10bd503..4048782 100644 ---- a/src/main.js -+++ b/src/main.js -@@ -132,2 +132,14 @@ registerListeners(); +diff --git a/src/main.ts b/src/main.ts +index 62ddd5f..90c6cfd 100644 +--- a/src/main.ts ++++ b/src/main.ts +@@ -8,2 +8,3 @@ import * as fs from 'original-fs'; + import * as os from 'os'; ++import { createRequire } from 'node:module'; + import { configurePortable } from './bootstrap-node.js'; +@@ -23,2 +24,3 @@ import { NativeParsedArgs } from './vs/platform/environment/common/argv.js'; + const __dirname = path.dirname(fileURLToPath(import.meta.url)); ++const require = createRequire(import.meta.url); + +@@ -103,2 +105,13 @@ registerListeners(); +function resolveUserProduct() { -+ const userDataPath = getUserDataPath({}, product.nameShort ?? 'code-oss-dev'); + const userProductPath = `file:///${userDataPath}/product.json`; + + try { + // Assign the product configuration to the global scope + const productPath = require(fileURLToPath(userProductPath)); -+ global["_VSCODE_USER_PRODUCT_JSON"] = productPath; ++ globalThis._VSCODE_PRODUCT_JSON = productPath; + } catch (ex) { + } +} + /** -@@ -208,2 +220,3 @@ function startup(codeCachePath, nlsConfig) { +@@ -174,2 +188,3 @@ async function startup(codeCachePath: string | undefined, nlsConfig: INLSConfigu process.env['VSCODE_CODE_CACHE_PATH'] = codeCachePath || ''; + resolveUserProduct(); diff --git a/src/vs/platform/product/common/product.ts b/src/vs/platform/product/common/product.ts -index a98043f..204ce1b 100644 +index 1a2a619..9bf5ac0 100644 --- a/src/vs/platform/product/common/product.ts +++ b/src/vs/platform/product/common/product.ts @@ -29,2 +29,36 @@ else if (globalThis._VSCODE_PRODUCT_JSON && globalThis._VSCODE_PACKAGE_JSON) { diff --git a/product.json b/product.json index 14719a5..163cf34 100644 --- a/product.json +++ b/product.json @@ -202,7 +202,9 @@ "treeViewMarkdownMessage" ], "GitHub.copilot": [ - "inlineCompletionsAdditions" + "inlineCompletionsAdditions", + "interactive", + "terminalDataWriteEvent" ], "GitHub.copilot-nightly": [ "inlineCompletionsAdditions", @@ -314,8 +316,7 @@ "lmTools" ], "redhat.java": [ - "documentPaste", - "lmTools" + "documentPaste" ], "vscjava.vscode-java-pack": [ "lmTools"