Prevent builtin extensions from being updated Updating builtin extensions from the marketplace prevents us from patching them (for example out GitHub authentication patches). Index: code-server/lib/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts =================================================================== --- code-server.orig/lib/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts +++ code-server/lib/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts @@ -234,6 +234,10 @@ export class Extension implements IExten if (this.type === ExtensionType.System && this.productService.quality === 'stable') { return false; } + // Do not update builtin extensions. + if (this.type !== ExtensionType.User) { + return false; + } if (!this.local.preRelease && this.gallery.properties.isPreReleaseVersion) { return false; } @@ -1088,6 +1092,10 @@ export class ExtensionsWorkbenchService // Skip if check updates only for builtin extensions and current extension is not builtin. continue; } + if (installed.type !== ExtensionType.User) { + // Never update builtin extensions. + continue; + } if (installed.isBuiltin && (!installed.local?.identifier.uuid || (!isWeb && this.productService.quality === 'stable'))) { // Skip checking updates for a builtin extension if it does not has Marketplace identifier or the current product is VS Code Desktop stable. continue;