fix: disable HTTP keep-alive to work around Node 24.17 regression

Description

Disables HTTP keep-alive as a workaround for a Node.js regression introduced in VS Code 1.128.0 (Node 24.17.0 / Electron 42.5.0).

The regression (node, node-fetch) causes HTTP connections to hang or behave incorrectly when keep-alive is enabled.

Changes:

  • Sets keepAlive: false in getHttpAgentOptions() to disable connection reuse at the agent level.
  • Comments out the Connection: 'keep-alive' header in DefaultApiClient to prevent it from being sent.

This is a temporary workaround until a future VS Code release is updated to Node 24.18.0+. There's potential performance

⚠️ gitlab-org/editor-extensions/gitlab-lsp!3686 (merged) should be merged first and released. Then update LSP version in this MR.

Resolves #2306 (closed)

How has this been tested?

  • If src/browser or src/common has been modified, please consider interoperability with the Web IDE. See Running the Extension in WebIDE.
  • Consider an end-to-end test for significant new features that aren't covered by integration tests.
  1. Link this MR with gitlab-org/editor-extensions/gitlab-lsp!3686 (merged)
  2. Open the extension with the latest VSCode stable or Insider (at least 1.128.0)
  3. Test authentication flows - both OAuth and Token

Screenshots (if appropriate)

What CHANGELOG entry will this MR create?

  • fix: Bug fix fixes - a user-facing issue in production - included in changelog
  • feature: New feature - a user-facing change which adds functionality - included in changelog
  • BREAKING CHANGE: (fix or feature that would cause existing functionality to change) - should bump major version, mentioned in the changelog
  • None - other non-user-facing changes
Edited by Juhee Lee

Merge request reports

Loading
Loading