Skip to content

Conversation

@deepak1556
Copy link
Collaborator

@deepak1556 deepak1556 commented Aug 29, 2025

Fixes #249239
Fixes #253334
Fixes #253307

@deepak1556 deepak1556 force-pushed the robo/feat_versioned_setup_win branch from 91e00f4 to cf47fb0 Compare October 16, 2025 10:31
@vs-code-engineering
Copy link

📬 CODENOTIFY

The following users are being notified based on files changed in this PR:

@bpasero

Matched files:

  • src/vs/code/electron-utility/sharedProcess/contrib/defaultExtensionsInitializer.ts
  • src/vs/platform/native/electron-main/nativeHostMainService.ts

@deepak1556 deepak1556 force-pushed the robo/feat_versioned_setup_win branch from 7a269c0 to acf3335 Compare October 21, 2025 21:22
@deepak1556 deepak1556 modified the milestones: October 2025, November 2025 Nov 6, 2025
Copilot AI review requested due to automatic review settings November 11, 2025 19:25
@deepak1556 deepak1556 force-pushed the robo/feat_versioned_setup_win branch from e801ef7 to 3831b11 Compare November 11, 2025 19:25
Copilot finished reviewing on behalf of deepak1556 November 11, 2025 19:26
Copy link
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 pull request implements versioned resources for Windows setup to address issues with updates and file locking. The changes enable VS Code to install resources in version-specific subdirectories on Windows, allowing for safer background updates by avoiding conflicts with running instances.

Key changes:

  • Introduced versioned resource folders (based on commit hash) for Windows installations
  • Updated installer scripts to handle new folder structure and improved update mechanics
  • Added logic to detect and handle session-ending scenarios during updates
  • Modified automation tests and build scripts to locate resources in versioned folders

Reviewed Changes

Copilot reviewed 16 out of 21 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
test/automation/src/electron.ts Added findFilePath helper to locate resources in versioned subdirectories
src/vs/platform/update/electron-main/updateService.win32.ts Implemented session-end detection, mutex checking, and versioned resource cleanup
src/vs/platform/remoteTunnel/node/remoteTunnelService.ts Updated bin path calculation for Windows with versioned folders
src/vs/code/electron-utility/sharedProcess/contrib/defaultExtensionsInitializer.ts Updated comment to reflect versioned folder structure
resources/win32/bin/code.sh Added VERSIONFOLDER variable and updated CLI path
resources/win32/bin/code.cmd Updated CLI path to use versioned folder
build/win32/explorer-dll-fetcher.ts Updated explorer DLL version
build/win32/code.iss Major updates to Inno Setup script for versioned resources and improved update handling
build/win32/Cargo.toml Bumped inno_updater version to 0.17.0
build/gulpfile.vscode.win32.js Added versioned resources folder to build configuration
build/gulpfile.vscode.js Integrated versioned resources throughout packaging process
build/checksums/explorer-dll.txt Updated checksums for new explorer DLL version
build/azure-pipelines/win32/steps/product-build-win32-test.yml Updated to dynamically find product.json in versioned folders
build/azure-pipelines/win32/steps/product-build-win32-compile.yml Updated to locate resources dynamically and fixed archive naming
build/azure-pipelines/win32/codesign.ts Removed version from archive path
.npmrc Updated Electron build ID

// appRoot = C:\Users\<name>\AppData\Local\Programs\Microsoft VS Code Insiders\resources\app
} else if (isWindows) {
// appRoot = C:\Users\<name>\AppData\Local\Programs\Microsoft VS Code Insiders\<version>\resources\app
// bin = C:\Users\<name>\AppData\Local\Programs\Microsoft VS Code Insiders\bin
Copy link

Copilot AI Nov 11, 2025

Choose a reason for hiding this comment

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

The comment on line 179 should be updated to reflect the new path structure with three dirname calls. Currently it states the bin folder is one level up, but with three dirname calls it's now three levels up from appRoot.

Suggested change
// bin = C:\Users\<name>\AppData\Local\Programs\Microsoft VS Code Insiders\bin
// bin = C:\Users\<name>\AppData\Local\Programs\Microsoft VS Code Insiders\bin
// Note: bin folder is three levels up from appRoot

Copilot uses AI. Check for mistakes.
@deepak1556 deepak1556 force-pushed the robo/feat_versioned_setup_win branch from 5bd9354 to 42b6bb2 Compare November 13, 2025 17:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

3 participants