From 010ffe289d74247e5276b0f59aad09da3882e677 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 9 Oct 2026 17:25:56 +0000 Subject: [PATCH 1/2] Bump the github-actions group across 1 directory with 2 updates Bumps the github-actions group with 2 updates in the / directory: [actions/checkout](https://github.com/actions/checkout) and [actions/setup-node](https://github.com/actions/setup-node). Updates `actions/checkout` from 3.7.0 to 7.0.1 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/a37ce9120846195fa4ece8f58b268e6043cb2f26...3d3c42e5aac5ba805825da76410c181273ba90b1) Updates `actions/setup-node` from 3.9.1 to 7.0.0 - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/3235b876344d2a9aa001b8d1453c930bba69e610...820762786026740c76f36085b0efc47a31fe5020) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: 7.0.1 dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: actions/setup-node dependency-version: 7.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions ... Signed-off-by: dependabot[bot] --- .github/workflows/tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index ca5f8b9f..91f6e2ac 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -17,9 +17,9 @@ jobs: # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ steps: - - uses: actions/checkout@a37ce9120846195fa4ece8f58b268e6043cb2f26 # v3.7.0 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@3235b876344d2a9aa001b8d1453c930bba69e610 # v3.9.1 + uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 with: node-version: ${{ matrix.node-version }} - run: npm ci From b66ae3afbfaa28ab25938d75a45fe541bf2220ae Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 19 Oct 2026 22:59:54 +0000 Subject: [PATCH 2/2] Retry timed-out VS Code integration tests Co-authored-by: rzhao271 <7199958+rzhao271@users.noreply.github.com> --- test/test-integration.mjs | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/test/test-integration.mjs b/test/test-integration.mjs index 2d8e4fd3..ab3b71a5 100644 --- a/test/test-integration.mjs +++ b/test/test-integration.mjs @@ -64,7 +64,7 @@ describe('integration tests', { timeout: 12 * 60 * 1000 }, () => { await checkAudit(runResult.env.cwd); //console.log('command-ts with test: Running extension compile'); - const res2 = await doSpawn(npmCommand, ['run', 'test'], { cwd: runResult.env.cwd, shell: true }); + const res2 = await doSpawnWithNetworkRetry(npmCommand, ['run', 'test'], { cwd: runResult.env.cwd, shell: true }); if (res2.exitCode !== 0) { assert.fail(`npm run test failed: stdout ${res2.stdout} stderr ${res2.stderr}`); } @@ -94,7 +94,7 @@ describe('integration tests', { timeout: 12 * 60 * 1000 }, () => { await checkAudit(runResult.env.cwd); //console.log('command-ts-webpack with test: Running extension compile'); - const res2 = await doSpawn(npmCommand, ['run', 'test'], { cwd: runResult.env.cwd, shell: true }); + const res2 = await doSpawnWithNetworkRetry(npmCommand, ['run', 'test'], { cwd: runResult.env.cwd, shell: true }); if (res2.exitCode !== 0) { assert.fail(`npm run compile failed: stdout ${res2.stdout} stderr ${res2.stderr}`); } @@ -124,7 +124,7 @@ describe('integration tests', { timeout: 12 * 60 * 1000 }, () => { await checkAudit(runResult.env.cwd); //console.log('command-ts-esbuild with test: Running extension compile'); - const res2 = await doSpawn(npmCommand, ['run', 'test'], { cwd: runResult.env.cwd, shell: true }); + const res2 = await doSpawnWithNetworkRetry(npmCommand, ['run', 'test'], { cwd: runResult.env.cwd, shell: true }); if (res2.exitCode !== 0) { assert.fail(`npm run compile failed: stdout ${res2.stdout} stderr ${res2.stderr}`); } @@ -154,7 +154,7 @@ describe('integration tests', { timeout: 12 * 60 * 1000 }, () => { await checkAudit(runResult.env.cwd); //console.log('command-ts-web with test: Running extension compile-web'); - const res2 = await doSpawn(npmCommand, ['run', 'test'], { cwd: runResult.env.cwd, shell: true }); + const res2 = await doSpawnWithNetworkRetry(npmCommand, ['run', 'test'], { cwd: runResult.env.cwd, shell: true }); if (res2.exitCode !== 0) { assert.fail(`npm run test failed: stdout ${res2.stdout} stderr ${res2.stderr}`); } @@ -184,7 +184,7 @@ describe('integration tests', { timeout: 12 * 60 * 1000 }, () => { await checkAudit(runResult.env.cwd); //console.log('command-ts-web with test: Running extension compile-web'); - const res2 = await doSpawn(npmCommand, ['run', 'test'], { cwd: runResult.env.cwd, shell: true }); + const res2 = await doSpawnWithNetworkRetry(npmCommand, ['run', 'test'], { cwd: runResult.env.cwd, shell: true }); if (res2.exitCode !== 0) { assert.fail(`npm run test failed: stdout ${res2.stdout} stderr ${res2.stderr}`); } @@ -213,3 +213,12 @@ async function doSpawn(execName, allArguments, options) { }); } +async function doSpawnWithNetworkRetry(execName, allArguments, options) { + for (let attempt = 1; attempt <= 3; attempt++) { + const result = await doSpawn(execName, allArguments, options); + if (result.exitCode === 0 || !/ETIMEDOUT/.test(`${result.stdout}\n${result.stderr}`) || attempt === 3) { + return result; + } + await new Promise(resolve => setTimeout(resolve, 1000)); + } +}