From 56e784e5130b5bfeee70aec8fbda88b5f887d261 Mon Sep 17 00:00:00 2001 From: Olivier Benz Date: Wed, 25 Mar 2026 13:49:43 +0100 Subject: [PATCH 1/3] Update Code to 1.113.0 --- .node-version | 2 +- lib/vscode | 2 +- patches/clipboard.diff | 4 ++-- patches/display-language.diff | 4 ++-- patches/external-file-actions.diff | 6 +++--- patches/getting-started.diff | 2 +- patches/logout.diff | 2 +- patches/proposed-api.diff | 2 +- patches/sourcemaps.diff | 6 +++--- patches/telemetry.diff | 2 +- patches/trusted-domains.diff | 2 +- patches/update-check.diff | 4 ++-- 12 files changed, 19 insertions(+), 19 deletions(-) diff --git a/.node-version b/.node-version index 85e502778f62..32a2d7bd80d1 100644 --- a/.node-version +++ b/.node-version @@ -1 +1 @@ -22.22.0 +22.22.1 diff --git a/lib/vscode b/lib/vscode index 07ff9d6178ed..cfbea10c5ffb 160000 --- a/lib/vscode +++ b/lib/vscode @@ -1 +1 @@ -Subproject commit 07ff9d6178ede9a1bd12ad3399074d726ebe6e43 +Subproject commit cfbea10c5ffb233ea9177d34726e6056e89913dc diff --git a/patches/clipboard.diff b/patches/clipboard.diff index fe34b3cb8cb4..0a2a637f781a 100644 --- a/patches/clipboard.diff +++ b/patches/clipboard.diff @@ -78,7 +78,7 @@ Index: code-server/lib/vscode/src/vs/platform/environment/common/argv.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/platform/environment/common/argv.ts +++ code-server/lib/vscode/src/vs/platform/environment/common/argv.ts -@@ -139,6 +139,7 @@ export interface NativeParsedArgs { +@@ -143,6 +143,7 @@ export interface NativeParsedArgs { 'disable-chromium-sandbox'?: boolean; sandbox?: boolean; 'enable-coi'?: boolean; @@ -90,7 +90,7 @@ Index: code-server/lib/vscode/src/vs/platform/environment/node/argv.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/platform/environment/node/argv.ts +++ code-server/lib/vscode/src/vs/platform/environment/node/argv.ts -@@ -106,6 +106,7 @@ export const OPTIONS: OptionDescriptions +@@ -115,6 +115,7 @@ export const OPTIONS: OptionDescriptions 'user-data-dir': { type: 'string', cat: 'o', args: 'dir', description: localize('userDataDir', "Specifies the directory that user data is kept in. Can be used to open multiple distinct instances of Code.") }, 'profile': { type: 'string', 'cat': 'o', args: 'profileName', description: localize('profileName', "Opens the provided folder or workspace with the given profile and associates the profile with the workspace. If the profile does not exist, a new empty one is created.") }, 'help': { type: 'boolean', cat: 'o', alias: 'h', description: localize('help', "Print usage.") }, diff --git a/patches/display-language.diff b/patches/display-language.diff index 0a6a41e368f1..1ea7bded1e7c 100644 --- a/patches/display-language.diff +++ b/patches/display-language.diff @@ -18,7 +18,7 @@ Index: code-server/lib/vscode/src/vs/server/node/serverServices.ts import { ProtocolConstants } from '../../base/parts/ipc/common/ipc.net.js'; import { IConfigurationService } from '../../platform/configuration/common/configuration.js'; import { ConfigurationService } from '../../platform/configuration/common/configurationService.js'; -@@ -277,6 +277,9 @@ export async function setupServerService +@@ -297,6 +297,9 @@ export async function setupServerService socketServer.registerChannel('mcpManagement', new McpManagementChannel(mcpManagementService, (ctx: RemoteAgentConnectionContext) => getUriTransformer(ctx.remoteAuthority))); @@ -198,7 +198,7 @@ Index: code-server/lib/vscode/src/vs/server/node/serverEnvironmentService.ts /* ----- server setup ----- */ -@@ -113,6 +114,7 @@ export interface ServerParsedArgs { +@@ -116,6 +117,7 @@ export interface ServerParsedArgs { 'disable-file-downloads'?: boolean; 'disable-file-uploads'?: boolean; 'disable-getting-started-override'?: boolean, diff --git a/patches/external-file-actions.diff b/patches/external-file-actions.diff index 942c72d877c4..6a2484ed37b5 100644 --- a/patches/external-file-actions.diff +++ b/patches/external-file-actions.diff @@ -99,7 +99,7 @@ Index: code-server/lib/vscode/src/vs/server/node/serverEnvironmentService.ts /* ----- server setup ----- */ -@@ -107,6 +109,8 @@ export interface ServerParsedArgs { +@@ -110,6 +112,8 @@ export interface ServerParsedArgs { /* ----- code-server ----- */ 'disable-update-check'?: boolean; 'auth'?: string; @@ -230,7 +230,7 @@ Index: code-server/lib/vscode/src/vs/workbench/services/dialogs/browser/simpleFi import { IRemoteAgentService } from '../../remote/common/remoteAgentService.js'; import { IContextKeyService, IContextKey, RawContextKey } from '../../../../platform/contextkey/common/contextkey.js'; import { equalsIgnoreCase, format, startsWithIgnoreCase } from '../../../../base/common/strings.js'; -@@ -144,7 +144,7 @@ export class SimpleFileDialog extends Di +@@ -152,7 +152,7 @@ export class SimpleFileDialog extends Di @IFileDialogService private readonly fileDialogService: IFileDialogService, @IModelService private readonly modelService: IModelService, @ILanguageService private readonly languageService: ILanguageService, @@ -239,7 +239,7 @@ Index: code-server/lib/vscode/src/vs/workbench/services/dialogs/browser/simpleFi @IRemoteAgentService private readonly remoteAgentService: IRemoteAgentService, @IPathService protected readonly pathService: IPathService, @IKeybindingService private readonly keybindingService: IKeybindingService, -@@ -322,21 +322,23 @@ export class SimpleFileDialog extends Di +@@ -362,21 +362,23 @@ export class SimpleFileDialog extends Di this.filePickBox.placeholder = nls.localize('remoteFileDialog.placeholder', "Folder path"); this.filePickBox.ok = true; this.filePickBox.okLabel = typeof this.options.openLabel === 'string' ? this.options.openLabel : this.options.openLabel?.withoutMnemonic; diff --git a/patches/getting-started.diff b/patches/getting-started.diff index f87ca41dcbaa..41f95b60c7ec 100644 --- a/patches/getting-started.diff +++ b/patches/getting-started.diff @@ -189,7 +189,7 @@ Index: code-server/lib/vscode/src/vs/server/node/serverEnvironmentService.ts /* ----- server setup ----- */ -@@ -111,6 +112,7 @@ export interface ServerParsedArgs { +@@ -114,6 +115,7 @@ export interface ServerParsedArgs { 'auth'?: string; 'disable-file-downloads'?: boolean; 'disable-file-uploads'?: boolean; diff --git a/patches/logout.diff b/patches/logout.diff index 6394f8b95fa7..885d30985f3a 100644 --- a/patches/logout.diff +++ b/patches/logout.diff @@ -28,7 +28,7 @@ Index: code-server/lib/vscode/src/vs/server/node/serverEnvironmentService.ts /* ----- server setup ----- */ -@@ -105,6 +106,7 @@ export const serverOptions: OptionDescri +@@ -108,6 +109,7 @@ export const serverOptions: OptionDescri export interface ServerParsedArgs { /* ----- code-server ----- */ 'disable-update-check'?: boolean; diff --git a/patches/proposed-api.diff b/patches/proposed-api.diff index ccd274634617..daf7169f1436 100644 --- a/patches/proposed-api.diff +++ b/patches/proposed-api.diff @@ -17,7 +17,7 @@ Index: code-server/lib/vscode/src/vs/workbench/services/extensions/common/extens - if (!extension.enabledApiProposals) { - return false; - } -- return extension.enabledApiProposals.includes(proposal); +- return true;// extension.enabledApiProposals.includes(proposal); + return true } diff --git a/patches/sourcemaps.diff b/patches/sourcemaps.diff index 44e06d3be2c9..d1f477dfdfbe 100644 --- a/patches/sourcemaps.diff +++ b/patches/sourcemaps.diff @@ -10,7 +10,7 @@ Index: code-server/lib/vscode/build/gulpfile.reh.ts =================================================================== --- code-server.orig/lib/vscode/build/gulpfile.reh.ts +++ code-server/lib/vscode/build/gulpfile.reh.ts -@@ -262,8 +262,7 @@ function packageTask(type: string, platf +@@ -263,8 +263,7 @@ function packageTask(type: string, platf return () => { const src = gulp.src(sourceFolderName + '/**', { base: '.' }) .pipe(rename(function (path) { path.dirname = path.dirname!.replace(new RegExp('^' + sourceFolderName), 'out'); })) @@ -20,7 +20,7 @@ Index: code-server/lib/vscode/build/gulpfile.reh.ts const workspaceExtensionPoints = ['debuggers', 'jsonValidation']; const isUIExtension = (manifest: { extensionKind?: string; main?: string; contributes?: Record }) => { -@@ -303,9 +302,9 @@ function packageTask(type: string, platf +@@ -304,9 +303,9 @@ function packageTask(type: string, platf .map(name => `.build/extensions/${name}/**`); const extensions = gulp.src(extensionPaths, { base: '.build', dot: true }); @@ -32,7 +32,7 @@ Index: code-server/lib/vscode/build/gulpfile.reh.ts let version = packageJson.version; const quality = (product as typeof product & { quality?: string }).quality; -@@ -492,7 +491,7 @@ function tweakProductForServerWeb(produc +@@ -501,7 +500,7 @@ function tweakProductForServerWeb(produc const minifyTask = task.define(`minify-vscode-${type}`, task.series( bundleTask, util.rimraf(`out-vscode-${type}-min`), diff --git a/patches/telemetry.diff b/patches/telemetry.diff index 638fbff85db0..c87d1d52886a 100644 --- a/patches/telemetry.diff +++ b/patches/telemetry.diff @@ -28,7 +28,7 @@ Index: code-server/lib/vscode/src/vs/server/node/serverServices.ts import { NullPolicyService } from '../../platform/policy/common/policy.js'; import { OneDataSystemAppender } from '../../platform/telemetry/node/1dsAppender.js'; import { LoggerService } from '../../platform/log/node/loggerService.js'; -@@ -169,11 +171,23 @@ export async function setupServerService +@@ -172,11 +174,23 @@ export async function setupServerService const requestService = new RequestService('remote', configurationService, environmentService, logService); services.set(IRequestService, requestService); diff --git a/patches/trusted-domains.diff b/patches/trusted-domains.diff index f0eea1436f94..bdb4d0217e8a 100644 --- a/patches/trusted-domains.diff +++ b/patches/trusted-domains.diff @@ -12,7 +12,7 @@ Index: code-server/lib/vscode/src/vs/server/node/serverEnvironmentService.ts /* ----- server setup ----- */ -@@ -115,6 +116,7 @@ export interface ServerParsedArgs { +@@ -118,6 +119,7 @@ export interface ServerParsedArgs { 'disable-file-uploads'?: boolean; 'disable-getting-started-override'?: boolean, 'locale'?: string diff --git a/patches/update-check.diff b/patches/update-check.diff index 6e942daebe51..cff407ab7868 100644 --- a/patches/update-check.diff +++ b/patches/update-check.diff @@ -101,7 +101,7 @@ Index: code-server/lib/vscode/src/vs/base/common/product.ts readonly version: string; readonly date?: string; -@@ -114,6 +115,7 @@ export interface IProductConfiguration { +@@ -115,6 +116,7 @@ export interface IProductConfiguration { readonly resourceUrlTemplate: string; readonly nlsBaseUrl: string; readonly accessSKUs?: string[]; @@ -134,7 +134,7 @@ Index: code-server/lib/vscode/src/vs/server/node/serverEnvironmentService.ts /* ----- server setup ----- */ -@@ -101,6 +103,8 @@ export const serverOptions: OptionDescri +@@ -104,6 +106,8 @@ export const serverOptions: OptionDescri }; export interface ServerParsedArgs { From 5ecc7aa83fb9e0667cabf676055df0cff0918c68 Mon Sep 17 00:00:00 2001 From: Asher Date: Wed, 25 Mar 2026 10:22:05 -0800 Subject: [PATCH 2/3] Fix another build failure --- patches/fix-build.diff | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/patches/fix-build.diff b/patches/fix-build.diff index 54f4f0e4fc74..30142657771b 100644 --- a/patches/fix-build.diff +++ b/patches/fix-build.diff @@ -36,3 +36,16 @@ Index: code-server/lib/vscode/build/lib/mangle/index.ts minWorkers: 'max' }); } +Index: code-server/lib/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.ts +=================================================================== +--- code-server.orig/lib/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.ts ++++ code-server/lib/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.ts +@@ -58,7 +58,7 @@ export const ConfirmTerminalCommandToolD + }; + + export class ConfirmTerminalCommandTool extends RunInTerminalTool { +- override get _enableCommandLineSandboxRewriting() { ++ protected override get _enableCommandLineSandboxRewriting() { + return false; + } + From 01734df13bdba9cec11f34f3cfd223e658adcb73 Mon Sep 17 00:00:00 2001 From: Asher Date: Thu, 26 Mar 2026 11:04:26 -0800 Subject: [PATCH 3/3] Use CI build targets The target we have been using has started throwing all sorts of errors during the build (even without any of our patches). After checking the VS Code repo I think these are the ones we should actually be using. They are way faster, too. --- ci/build/build-vscode.sh | 5 ++-- patches/fix-build.diff | 51 ---------------------------------------- patches/series | 1 - 3 files changed, 2 insertions(+), 55 deletions(-) delete mode 100644 patches/fix-build.diff diff --git a/ci/build/build-vscode.sh b/ci/build/build-vscode.sh index f037fac3a4c1..8bfee50a869d 100755 --- a/ci/build/build-vscode.sh +++ b/ci/build/build-vscode.sh @@ -112,9 +112,8 @@ EOF # this because we have an NPM package that could be installed on any platform. # The correct platform dependencies and scripts will be installed as part of # the post-install during `npm install` or when building a standalone release. - node --max-old-space-size=16384 --optimize-for-size \ - ./node_modules/gulp/bin/gulp.js \ - "vscode-reh-web-linux-x64${MINIFY:+-min}" + npm run gulp core-ci + npm run gulp "vscode-reh-web-linux-x64${MINIFY:+-min}-ci" # Reset so if you develop after building you will not be stuck with the wrong # commit (the dev client will use `oss-dev` but the dev server will still use diff --git a/patches/fix-build.diff b/patches/fix-build.diff deleted file mode 100644 index 30142657771b..000000000000 --- a/patches/fix-build.diff +++ /dev/null @@ -1,51 +0,0 @@ -Fix protected field error - -The mangler is reporting this error: - -WARN: 'setEditorVisible' from lib/vscode/src/vs/workbench/browser/parts/editor/editorPane.ts:160 became PUBLIC because of: lib/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.ts:304 -ERROR: Protected fields have been made PUBLIC. This hurts minification and is therefore not allowed. Review the WARN messages further above - -No idea how VS Code is dealing with this in their own builds. - -Additionally, in CI the build keeps getting terminated, possibly from running -out of memory (there is no error message, it simply says it was canceled). - -Index: code-server/lib/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.ts -=================================================================== ---- code-server.orig/lib/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.ts -+++ code-server/lib/vscode/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugEditor.ts -@@ -299,7 +299,7 @@ export class ChatDebugEditor extends Edi - } - } - -- override setEditorVisible(visible: boolean): void { -+ protected override setEditorVisible(visible: boolean): void { - super.setEditorVisible(visible); - if (visible) { - this.telemetryService.publicLog2<{}, ChatDebugPanelOpenedClassification>('chatDebugPanelOpened'); -Index: code-server/lib/vscode/build/lib/mangle/index.ts -=================================================================== ---- code-server.orig/lib/vscode/build/lib/mangle/index.ts -+++ code-server/lib/vscode/build/lib/mangle/index.ts -@@ -430,7 +430,7 @@ export class Mangler { - this.config = config; - - this.renameWorkerPool = workerpool.pool(path.join(import.meta.dirname, 'renameWorker.ts'), { -- maxWorkers: 4, -+ maxWorkers: 2, - minWorkers: 'max' - }); - } -Index: code-server/lib/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.ts -=================================================================== ---- code-server.orig/lib/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.ts -+++ code-server/lib/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.ts -@@ -58,7 +58,7 @@ export const ConfirmTerminalCommandToolD - }; - - export class ConfirmTerminalCommandTool extends RunInTerminalTool { -- override get _enableCommandLineSandboxRewriting() { -+ protected override get _enableCommandLineSandboxRewriting() { - return false; - } - diff --git a/patches/series b/patches/series index 8c75664916e4..ffc15fdd9d75 100644 --- a/patches/series +++ b/patches/series @@ -22,4 +22,3 @@ clipboard.diff display-language.diff trusted-domains.diff signature-verification.diff -fix-build.diff