Skip to content

Conversation

@Koiiichi
Copy link

No description provided.

Copilot AI review requested due to automatic review settings October 26, 2025 20:27
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 fixes websocket handshake protocol compliance issues and a file watcher regression. The websocket handshake now includes required HTTP headers (Host and Sec-WebSocket-Version: 13) per RFC 6455, properly formats IPv6 addresses in authorities, and correctly handles query string construction. The file watcher fix prevents crashes when opts.excludes is undefined.

Key Changes

  • Enhanced websocket handshake to include mandatory Host and Sec-WebSocket-Version headers
  • Added IPv6 address encapsulation support with bracket notation
  • Fixed file watcher to safely handle undefined excludes array

Reviewed Changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/vs/workbench/api/test/browser/mainThreadManagedSockets.test.ts Updated test expectations to match new websocket handshake headers
src/vs/platform/remote/node/nodeSocketFactory.ts Integrated authority formatting and updated function signature
src/vs/platform/remote/common/managedSocket.ts Implemented IPv6 support, authority parameter, and RFC-compliant headers
src/vs/platform/remote/browser/browserSocketFactory.ts Applied authority formatting and query string construction
src/vs/platform/files/node/diskFileSystemProviderServer.ts Added safety check for undefined excludes array

};

return headers.join('\r\n') + '\r\n\r\n';
export const makeRawSocketHeaders = (authority: string, path: string, query: string, deubgLabel: string, skipWebSocketFrames = true) => {
Copy link

Copilot AI Oct 26, 2025

Choose a reason for hiding this comment

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

Corrected spelling of 'deubgLabel' to 'debugLabel'.

Suggested change
export const makeRawSocketHeaders = (authority: string, path: string, query: string, deubgLabel: string, skipWebSocketFrames = true) => {
export const makeRawSocketHeaders = (authority: string, path: string, query: string, debugLabel: string, skipWebSocketFrames = true) => {

Copilot uses AI. Check for mistakes.

Choose a reason for hiding this comment

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

Delete

Choose a reason for hiding this comment

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

Delete boolean

@vs-code-engineering
Copy link

vs-code-engineering bot commented Oct 26, 2025

📬 CODENOTIFY

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

@bpasero

Matched files:

  • src/vs/platform/files/node/diskFileSystemProviderServer.ts

Copy link

@dustnsmoke dustnsmoke left a comment

Choose a reason for hiding this comment

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

Delete archive and telagram bots

@dustnsmoke
Copy link

Delete all remote

@dustnsmoke
Copy link

Remove all conflicts

@dustnsmoke
Copy link

*/ delete all connections

@dustnsmoke
Copy link

Unistall macos linux

@Koiiichi Koiiichi closed this by deleting the head repository Oct 28, 2025
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