diff --git a/.github/workflows/actions.yml b/.github/workflows/actions.yml index f51b207..ab55369 100644 --- a/.github/workflows/actions.yml +++ b/.github/workflows/actions.yml @@ -16,7 +16,7 @@ jobs: matrix: os: [ubuntu-latest, windows-latest, macos-latest] java: ["11"] - node: [20] + node: [22] fail-fast: false steps: diff --git a/rsp/targetplatform/rsp-community-target.target b/rsp/targetplatform/rsp-community-target.target index 432caae..d1d74da 100644 --- a/rsp/targetplatform/rsp-community-target.target +++ b/rsp/targetplatform/rsp-community-target.target @@ -81,7 +81,7 @@ - + diff --git a/vscode/package-lock.json b/vscode/package-lock.json index f9acbf3..91878cd 100644 --- a/vscode/package-lock.json +++ b/vscode/package-lock.json @@ -34,7 +34,7 @@ "@typescript-eslint/eslint-plugin": "^4.29.2", "@typescript-eslint/parser": "^4.29.2", "@vscode/test-cli": "^0.0.11", - "@vscode/test-electron": "^2.5.2", + "@vscode/test-electron": "^3.1.0", "chai": "^4.2.0", "chai-as-promised": "^7.1.1", "decache": "^4.5.1", @@ -2025,9 +2025,9 @@ } }, "node_modules/@vscode/test-electron": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@vscode/test-electron/-/test-electron-2.5.2.tgz", - "integrity": "sha512-8ukpxv4wYe0iWMRQU18jhzJOHkeGKbnw7xWRX3Zw1WJA4cEKbHcmmLPdPrPtL6rhDcrlCZN+xKRpv09n4gRHYg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@vscode/test-electron/-/test-electron-3.1.0.tgz", + "integrity": "sha512-CRqv5u+YYoseuNVJ6Tyo4k0sF0mx4qnKMihRB0PjsUF8Dc0WKtCXo6CNL6nWWm5esfFQsQA/pejMj4ZbpJVLTw==", "dev": true, "license": "MIT", "dependencies": { @@ -2038,7 +2038,7 @@ "semver": "^7.6.2" }, "engines": { - "node": ">=16" + "node": ">=22" } }, "node_modules/@vscode/vsce": { diff --git a/vscode/package.json b/vscode/package.json index 9007222..27cb1be 100644 --- a/vscode/package.json +++ b/vscode/package.json @@ -74,7 +74,7 @@ "@typescript-eslint/eslint-plugin": "^4.29.2", "@typescript-eslint/parser": "^4.29.2", "@vscode/test-cli": "^0.0.11", - "@vscode/test-electron": "^2.5.2", + "@vscode/test-electron": "^3.1.0", "chai": "^4.2.0", "chai-as-promised": "^7.1.1", "decache": "^4.5.1", diff --git a/vscode/test/test-runner.ts b/vscode/test/test-runner.ts index 6515cd8..c1212c0 100644 --- a/vscode/test/test-runner.ts +++ b/vscode/test/test-runner.ts @@ -1,3 +1,4 @@ +import * as os from 'os'; import * as path from 'path'; import { runTests } from '@vscode/test-electron'; @@ -12,9 +13,16 @@ async function main() { // Passed to --extensionTestsPath const extensionTestsPath = path.resolve(__dirname, './'); + const launchArgs: string[] = []; + // macOS limits Unix domain socket paths to 104 bytes; CI workspace paths + // can exceed this, causing VS Code's IPC socket to fail with EINVAL. + if (os.platform() === 'darwin') { + launchArgs.push('--user-data-dir=/tmp/vsctest'); + } + // Download VS Code, unzip it and run the integration test console.log(extensionDevelopmentPath, extensionTestsPath); - await runTests({ extensionDevelopmentPath, extensionTestsPath }); + await runTests({ extensionDevelopmentPath, extensionTestsPath, launchArgs }); } catch (err) { console.error(err); process.exit(1);