Skip to content

Newest Windows Image has broken vcvarsall.bat #9404

@ThadHouse

Description

@ThadHouse

Description

vcvarsall.bat when not passed a vcvars_ver parameter should be returning the latest installed VC++ compiler toolset. However, this does not seem to be the case. It is returning an older version. The following build is a minimal reproduction.

https://github.com/ThadHouse/ActionsDebug/actions/runs/8044801044/job/21968983003

The print after [vcvarsall.bat] Environment initialized for: 'x86_x64' Should be returning 14.39.33519. However, it is returning 14.38.33130. The dir command ran afterward shows that the 14.39.33519 folder does exist, and it should be the chosen toolchain.

This makes it so any GitHub actions builds using vcvarsall.bat don't actually detect the newest version of the compiler. However, tools that don't use vcvarsall.bat will find the newest version. Which can result in binaries built in one section of the build not being compatible with binaries built in another section.

Platforms affected

  • Azure DevOps
  • GitHub Actions - Standard Runners
  • GitHub Actions - Larger Runners

Runner images affected

  • Ubuntu 20.04
  • Ubuntu 22.04
  • macOS 11
  • macOS 12
  • macOS 13
  • macOS 13 Arm64
  • macOS 14
  • macOS 14 Arm64
  • Windows Server 2019
  • Windows Server 2022

Image version and build link

Image: windows-2022
Version: 20240218.2.0
Included Software: https://github.com/actions/runner-images/blob/win22/20240218.2/images/windows/Windows2022-Readme.md
Image Release: https://github.com/actions/runner-images/releases/tag/win22%2F20240218.2

https://github.com/ThadHouse/ActionsDebug/actions/runs/8044801044/job/21968983003

Is it regression?

Yes

Expected behavior

Toolchain 14.39.33519 is selected

Actual behavior

Toolchain 14.38.33130 is selected

Repro steps

  1. Run vcvarsall.bat
  2. See that the selected toolchain is incorrect

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions