appveyor / ci

AppVeyor community support repository
https://www.appveyor.com
344 stars 64 forks source link

Please provide version number in image "Previous Visual Studio 2022" #3922

Open tcaduser opened 2 weeks ago

tcaduser commented 2 weeks ago

I noticed that Visual Studio 2022 version 17.10 introduced a bug with its C++ compiler in my project. I found that this was resolved by using version 17.9.

On Appveyor I did this by using:

image: Previous Visual Studio 2022

in my appveyor.yml. Unfortunately I think this will be an issue again when 17.10 becomes the previous version. Could you please put the version number in the image name? Perhaps something like:

image: Visual Studio 2022 17.9
OwenMcDonnell commented 2 weeks ago

I don't think that approach will work because we don't have the resources to keep a long running list of images around. We only ever have the most current image and, for short term relief, the previous image. What we can aim to do is be a little bit more timely in newsletter releases and documentation updates, which are lagging more than usual this time because of some other internal issues.

What if you enable the Visual C++ toolset in your init: section, which will print out the C++ compiler version at the top of your build log?

init:
- call "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars32.bat"
tcaduser commented 2 weeks ago

Thanks for your suggestions. I don't need for a long list of images. I just need to know that I am never running version 17.10 of Visual Studio If the image is not available, I have no problem with the build failing.

OwenMcDonnell commented 1 week ago

Have you reported the bug to Visual Studio? Are new 17.10 patches going to address the issue? We definitely can't guarantee long term that the publicly available Visual Studio 2022 image will not be version 17.10. Perhaps you can write a script to roll back C++ compiler if its the problematic version? Or, if you just want build to fail you can parse the output of the command i suggested above and then exit the build with an error code if its 17.10.