From 1db7e1b0f7384cab77085d05a9d7d28abbc70321 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= Date: Wed, 11 Feb 2026 12:25:38 +0100 Subject: [PATCH 1/3] lib: update to vscode 1.109.2 --- package.json | 6 +++--- vscode-patches/0086-fix-make-product-field-optional.patch | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 5ce3c9c5..28c7c3ee 100644 --- a/package.json +++ b/package.json @@ -30,9 +30,9 @@ }, "config": { "vscode": { - "version": "1.109.0", - "ref": "1.109.0", - "commit": "bdd88df003631aaa0bcbe057cb0a940b80a476fa" + "version": "1.109.2", + "ref": "1.109.2", + "commit": "591199df409fbf59b4b52d5ad4ee0470152a9b31" }, "monaco": { "ref": "v0.55.1", diff --git a/vscode-patches/0086-fix-make-product-field-optional.patch b/vscode-patches/0086-fix-make-product-field-optional.patch index 3069dd96..3416723d 100644 --- a/vscode-patches/0086-fix-make-product-field-optional.patch +++ b/vscode-patches/0086-fix-make-product-field-optional.patch @@ -135,7 +135,7 @@ index c890ef2216a..232ef4e7d93 100644 if (packExtension.local && !extensionsToUninstall.some(e => areSameExtensions(e.extension.identifier, packExtension.identifier))) { extensionsToUninstall.push({ extension: packExtension.local }); diff --git a/src/vs/workbench/services/accounts/browser/defaultAccount.ts b/src/vs/workbench/services/accounts/browser/defaultAccount.ts -index f0a645aea45..1934513c605 100644 +index 0317ea570ac..89585c4d8f6 100644 --- a/src/vs/workbench/services/accounts/browser/defaultAccount.ts +++ b/src/vs/workbench/services/accounts/browser/defaultAccount.ts @@ -121,14 +121,16 @@ export class DefaultAccountService extends Disposable implements IDefaultAccount @@ -168,7 +168,7 @@ index f0a645aea45..1934513c605 100644 return { ...this.defaultAccountConfig.authenticationProvider.default, enterprise: false -@@ -786,8 +792,11 @@ class DefaultAccountProviderContribution extends Disposable implements IWorkbenc +@@ -835,8 +841,11 @@ class DefaultAccountProviderContribution extends Disposable implements IWorkbenc @IDefaultAccountService defaultAccountService: IDefaultAccountService, ) { super(); From c4fc238566f4fcbe9480f541acd761be92930287 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= Date: Wed, 11 Feb 2026 14:43:25 +0100 Subject: [PATCH 2/3] fix: handle weird relative asset import from css files --- rollup/tools/vscode.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/rollup/tools/vscode.ts b/rollup/tools/vscode.ts index 4c80c403..adfbc50e 100644 --- a/rollup/tools/vscode.ts +++ b/rollup/tools/vscode.ts @@ -321,7 +321,9 @@ function resolveVscode(importee: string, importer?: string) { if (importee.endsWith('.js')) { importee = importee.slice(0, -3) } - if (importer != null && importee.startsWith('.')) { + // For some reasons, some image references from css in VSCode don't have the "./" prefix, even if they are relative, so we need to resolve them as relative to the importer + const isRelative = importer != null && (importee.startsWith('.') || importer.endsWith('.css')) + if (isRelative) { importee = nodePath.resolve(nodePath.dirname(importer), importee) } From 11b8b457bc8b458f80f6bbbcbe2e9b326c69d3b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= Date: Wed, 11 Feb 2026 14:43:52 +0100 Subject: [PATCH 3/3] feat: warn failing asset resolution --- rollup/plugins/css-import-plugin.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/rollup/plugins/css-import-plugin.ts b/rollup/plugins/css-import-plugin.ts index d2575de9..80169edd 100644 --- a/rollup/plugins/css-import-plugin.ts +++ b/rollup/plugins/css-import-plugin.ts @@ -54,6 +54,9 @@ export default ({ await postcss([ postcssUrl({ url: async (asset) => { + if (asset.url.startsWith('data:') || asset.url.startsWith('http')) { + return asset.url + } let fileName: string | undefined if (preserveAssetsRoot != null) { fileName = path @@ -62,7 +65,11 @@ export default ({ } const resolved = await this.resolve(asset.url, id) - if (resolved != null && !resolved.external) { + if (resolved == null) { + this.warn(`Could not resolve asset ${asset.url} from ${id}`) + return asset.url + } + if (!resolved.external) { const assetId = this.emitFile({ type: 'asset', fileName,