diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index ea55f0a1b1..7036246d9e 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -92,14 +92,17 @@ jobs: needs: [lint-python] strategy: fail-fast: false - max-parallel: 15 + max-parallel: 11 matrix: os: [macos-latest, ubuntu-latest, windows-latest] - python: ["3.8", "3.10", "3.12"] + python: ["3.9", "3.11", "3.13"] node: [18.x, 20.x, 22.x] - include: # `npm test` runs Windows find-visualstudio tests on an Intel Mac!!! + include: - os: macos-13 - python: "3.12" + python: "3.13" + node: 22.x + - os: windows-2025 + python: "3.13" node: 22.x name: ${{ matrix.os }} - ${{ matrix.python }} - ${{ matrix.node }} runs-on: ${{ matrix.os }} @@ -133,10 +136,10 @@ jobs: shell: bash run: npm test --python="${pythonLocation}/python" env: - FULL_TEST: ${{ (matrix.node == '22.x' && matrix.python == '3.12') && '1' || '0' }} + FULL_TEST: ${{ (matrix.node == '22.x' && matrix.python == '3.13') && '1' || '0' }} - name: Run Tests (Windows) if: startsWith(matrix.os, 'windows') shell: bash # Building wasm on Windows requires using make generator, it only works in bash run: npm run test --python="${pythonLocation}\\python.exe" env: - FULL_TEST: ${{ (matrix.node == '22.x' && matrix.python == '3.12') && '1' || '0' }} + FULL_TEST: ${{ (matrix.node == '22.x' && matrix.python == '3.13') && '1' || '0' }} diff --git a/.github/workflows/visual-studio.yml b/.github/workflows/visual-studio.yml index 0f51f9c8d0..aff34374db 100644 --- a/.github/workflows/visual-studio.yml +++ b/.github/workflows/visual-studio.yml @@ -21,6 +21,8 @@ jobs: msvs-verison: 2019 - os: windows-2022 msvs-version: 2022 + - os: windows-2025 + msvs-version: 2025 runs-on: ${{ matrix.os }} steps: - name: Checkout Repository diff --git a/lib/find-visualstudio.js b/lib/find-visualstudio.js index e9aa7fafdc..73f498daca 100644 --- a/lib/find-visualstudio.js +++ b/lib/find-visualstudio.js @@ -119,7 +119,7 @@ class VisualStudioFinder { } async findVisualStudio2019OrNewerFromSpecifiedLocation () { - return this.findVSFromSpecifiedLocation([2019, 2022]) + return this.findVSFromSpecifiedLocation([2019, 2022, 2025]) } async findVisualStudio2017FromSpecifiedLocation () { @@ -162,7 +162,7 @@ class VisualStudioFinder { } async findVisualStudio2019OrNewerUsingSetupModule () { - return this.findNewVSUsingSetupModule([2019, 2022]) + return this.findNewVSUsingSetupModule([2019, 2022, 2025]) } async findVisualStudio2017UsingSetupModule () { @@ -223,7 +223,7 @@ class VisualStudioFinder { // Invoke the PowerShell script to get information about Visual Studio 2019 // or newer installations async findVisualStudio2019OrNewer () { - return this.findNewVS([2019, 2022]) + return this.findNewVS([2019, 2022, 2025]) } // Invoke the PowerShell script to get information about Visual Studio 2017 @@ -389,6 +389,10 @@ class VisualStudioFinder { ret.versionYear = 2022 return ret } + if (ret.versionMajor === 18) { + ret.versionYear = 2025 + return ret + } this.log.silly('- unsupported version:', ret.versionMajor) return {} } @@ -456,6 +460,8 @@ class VisualStudioFinder { return 'v142' } else if (versionYear === 2022) { return 'v143' + } else if (versionYear === 2025) { + return 'v144' } this.log.silly('- invalid versionYear:', versionYear) return null