Skip to content

test: bump @vscode/test-electron to ^3.1.0 to fix macOS insiders CI - #153

Merged
laileni-aws merged 2 commits into
aws:mainfrom
laileni-aws:fix/bump-vscode-test-electron
Jul 30, 2026
Merged

test: bump @vscode/test-electron to ^3.1.0 to fix macOS insiders CI#153
laileni-aws merged 2 commits into
aws:mainfrom
laileni-aws:fix/bump-vscode-test-electron

Conversation

@laileni-aws

@laileni-aws laileni-aws commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Problem

The test macOS (18.x, insiders) job fails repo-wide (on main and on unrelated PRs, e.g. #204) with:

Test error: Error: spawn ./Visual Studio Code - Insiders.app/Contents/MacOS/Electron ENOENT

@vscode/test-electron 2.x resolves a macOS Insiders executable path that current Insiders builds no longer use. Bumping within the 2.x line (2.3.8 → 2.5.2) does not fix it — 2.5.2 is the last 2.x release (2024) and predates the layout change (CI-confirmed).

Fix

Bump @vscode/test-electron ^2.5.2 → ^3.1.0 — the line that handles the current Insiders macOS layout. This mirrors upstream aws/aws-toolkit-vscode, which already ships ^3.1.0.

  • package.json: @vscode/test-electron^3.1.0
  • packages/core/scripts/test/launchTestUtilities.ts: import TestOptions / runTests from the package root and drop the internal @vscode/test-electron/out/runTest path (the root export is the public API in 3.x).
  • package-lock.json: regenerated (integrity matches the registry).

No CI Node bump required

An earlier revision of this PR assumed 3.x forces a Node 18 → 22 CI migration. It does not:

  • .npmrc sets engine-strict=false, so 3.x (engines: node>=22) installs on the Node 18 runners.
  • Upstream aws-toolkit-vscode ships @vscode/test-electron@^3.1.0 while keeping macOS/Linux CI on Node 18.

Verification

  • npm install resolves @vscode/test-electron@3.1.0 (integrity matches registry).
  • tsc -p packages/core/tsconfig.json --noEmit → 0 errors (the import restructure type-checks).
  • macOS Insiders behavior confirmed by CI on this PR.

The 'test macOS (18.x, insiders)' job fails repo-wide (incl. on main)
with 'spawn .../Contents/MacOS/Electron ENOENT': the pinned
@vscode/test-electron 2.3.8 (2023) can't locate the executable in the
current VS Code Insiders macOS build. Bump to the latest Node-18-safe
line (2.5.2).

Note: the newest @vscode/test-electron (3.0.0) would be the most complete
fix but requires Node >=22 (CI runs Node 18) and restructures the
internal out/runTest import, so it is out of scope here. If 2.5.2 does
not fully resolve the insiders job, the follow-up is a coordinated
Node 22 + test-electron 3.0.0 upgrade.
@laileni-aws laileni-aws changed the title test: bump @vscode/test-electron to fix macOS insiders CI test: macOS-insiders CI needs Node 22 + test-electron 3.0.0 (2.5.2 insufficient) Jul 22, 2026
The 'test macOS (18.x, insiders)' job fails repo-wide with
'spawn .../Visual Studio Code - Insiders.app/Contents/MacOS/Electron ENOENT':
@vscode/test-electron 2.x resolves an executable path that current VS Code
Insiders macOS builds no longer use. Fixed in test-electron 3.x.

- Bump ^2.5.2 -> ^3.1.0 (matches upstream aws-toolkit-vscode)
- Import TestOptions/runTests from the package root; drop the internal
  '@vscode/test-electron/out/runTest' path

No CI Node bump needed: .npmrc sets engine-strict=false, so 3.x
(engines: node>=22) installs on the Node 18 runners, matching upstream.
@laileni-aws laileni-aws changed the title test: macOS-insiders CI needs Node 22 + test-electron 3.0.0 (2.5.2 insufficient) test: bump @vscode/test-electron to ^3.1.0 to fix macOS insiders CI Jul 30, 2026
@laileni-aws
laileni-aws marked this pull request as ready for review July 30, 2026 22:21
@laileni-aws
laileni-aws requested a review from a team as a code owner July 30, 2026 22:21
@laileni-aws
laileni-aws enabled auto-merge (squash) July 30, 2026 23:10
@laileni-aws
laileni-aws merged commit 0c4d92a into aws:main Jul 30, 2026
33 of 34 checks passed
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