Skip to content

Conversation

@TylerLeonhardt
Copy link
Member

Eliminate web worker support and related configurations from the microsoft-authentication extension. This change simplifies the codebase by removing unnecessary browser-specific logic and files. The extension now focuses solely on remote and local environments.

This was removed because:

  1. vscode.dev implements an msal.js version of microsoft auth that is compliant
  2. there was basically zero usage of this

It's a stepping stone for removing classic implementation as well.

Copilot AI and others added 3 commits November 11, 2025 00:05
- Remove browser entry point from package.json
- Remove browser webpack configuration
- Remove browser-specific scripts (compile-web, watch-web)
- Remove src/browser/ directory with browser-specific implementations
- Remove ExtensionHost.WebWorker enum value
- Remove supportsWebWorkerExtensionHost flags from all flows
- Simplify authProvider.ts by removing web worker detection logic
- Remove web worker test case from flows.test.ts
- Successfully compiled with 0 errors

Co-authored-by: TylerLeonhardt <[email protected]>
Copilot AI review requested due to automatic review settings November 11, 2025 18:01
@TylerLeonhardt TylerLeonhardt enabled auto-merge (squash) November 11, 2025 18:01
@TylerLeonhardt TylerLeonhardt self-assigned this Nov 11, 2025
@vs-code-engineering vs-code-engineering bot added this to the November 2025 milestone Nov 11, 2025
Copilot finished reviewing on behalf of TylerLeonhardt November 11, 2025 18:05
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 PR removes web worker support from the microsoft-authentication extension, simplifying the codebase to support only remote and local extension hosts. The removal is justified as vscode.dev now implements a compliant msal.js version and the web worker implementation had minimal usage.

Key Changes:

  • Removed the WebWorker extension host type from the enum and all related support infrastructure
  • Deleted all browser-specific implementation files that provided stub/alternative implementations for web workers
  • Simplified the flow selection logic by replacing a switch statement with a simpler conditional check

Reviewed Changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated no comments.

Show a summary per file
File Description
tsconfig.json Removed WebWorker library reference from TypeScript compilation
package.json Removed browser entry point and web compilation scripts
.vscodeignore Removed reference to deleted webpack config file
src/node/flows.ts Removed WebWorker enum value, supportsWebWorkerExtensionHost flags, and simplified extension host checking logic
src/node/authProvider.ts Simplified extension host detection by removing browser environment check
src/node/test/flows.test.ts Removed test case for web worker extension host
src/browser/authProvider.ts Deleted stub implementation for browser environment
src/browser/buffer.ts Deleted browser-specific base64 encoding/decoding utilities
src/browser/fetch.ts Deleted browser fetch export
src/browser/authServer.ts Deleted stub server implementation for browser
extension-browser.webpack.config.js Deleted webpack configuration for browser bundle

@TylerLeonhardt TylerLeonhardt merged commit a3fcd46 into main Nov 11, 2025
58 of 61 checks passed
@TylerLeonhardt TylerLeonhardt deleted the tyler/convenient-leopard branch November 11, 2025 19:09
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