Skip to content

mark auto updatable built in extensions as application scoped always#308522

Merged
sandy081 merged 1 commit intomainfrom
sandy081/crude-python
Apr 8, 2026
Merged

mark auto updatable built in extensions as application scoped always#308522
sandy081 merged 1 commit intomainfrom
sandy081/crude-python

Conversation

@sandy081
Copy link
Copy Markdown
Member

@sandy081 sandy081 commented Apr 8, 2026

No description provided.

Copilot AI review requested due to automatic review settings April 8, 2026 14:50
@sandy081 sandy081 enabled auto-merge (squash) April 8, 2026 14:50
@sandy081 sandy081 self-assigned this Apr 8, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the extensions user-data-sync payload generation so that built-in extensions configured for out-of-band auto-updates (via productService.builtInExtensionsEnabledWithAutoUpdates) are always treated as application-scoped when computing local sync extensions.

Changes:

  • Inject IProductService into LocalExtensionsProvider.
  • Mark extensions listed in builtInExtensionsEnabledWithAutoUpdates as isApplicationScoped: true in the local sync model.
  • Fix a local variable typo (syncExntesionsyncExtension) in the mapping logic.
Show a summary per file
File Description
src/vs/platform/userDataSync/common/extensionsSync.ts Uses product configuration to force application-scope for auto-updatable built-in extensions when building local sync extensions.

Copilot's findings

  • Files reviewed: 1/1 changed files
  • Comments generated: 1

Comment on lines +387 to +388
if (this.productService.builtInExtensionsEnabledWithAutoUpdates?.some(id => id.toLowerCase() === identifier.id.toLowerCase())) {
syncExtension.isApplicationScoped = true;
Copy link

Copilot AI Apr 8, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The builtInExtensionsEnabledWithAutoUpdates?.some(id => id.toLowerCase() === identifier.id.toLowerCase()) check runs inside the per-extension mapping and lowercases strings repeatedly. Consider precomputing a lowercased Set of these IDs once in the LocalExtensionsProvider constructor (or a helper) and then doing a single has() lookup to reduce per-sync work and allocations.

Copilot uses AI. Check for mistakes.
@sandy081 sandy081 merged commit 9b1276d into main Apr 8, 2026
27 checks passed
@sandy081 sandy081 deleted the sandy081/crude-python branch April 8, 2026 15:13
@vs-code-engineering vs-code-engineering bot added this to the 1.116.0 milestone Apr 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants