GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | |||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | |||||||||||||||||||||||||||||
GeezerVison is showing github.com — GH-144679: When building with VS2026 on Windows, use PlatformToolSet v145 by default by chris-eibl · Pull Request #144680 · python/cpython Conversation
|
| </ItemGroup> | ||
| </Target> | ||
| <Target Name="_WarnAboutToolset" BeforeTargets="PrepareForBuild" Condition="$(PlatformToolset) != 'v141' and $(PlatformToolset) != 'v142' and $(PlatformToolset) != 'v143'"> | ||
| <Target Name="_WarnAboutToolset" BeforeTargets="PrepareForBuild" Condition="$(PlatformToolset) != 'v141' and $(PlatformToolset) != 'v142' and $(PlatformToolset) != 'v143' and $(PlatformToolset) != 'v145'"> |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
On main, shall we warn for older toolsets like v141 or v142 now?
Likewise, shall we keep a warning for v145 on 3.13 / 3.14?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
The minimum VS version for building Python now is 2017.
https://docs.python.org/3.15/using/configure.html
I removed the support for 2015 a year ago #124103 . However, according to the Mainstream End Date of the VS lifecycle, currently only VS2022 is still supported
https://learn.microsoft.com/lifecycle/products/visual-studio-2019
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Yeah, let's start warning for those older ones.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
The minimum VS version for building Python now is 2017.
https://docs.python.org/3.15/using/configure.html
Maybe we should change that to 2022 since we emit a warning for the older ones now?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
It's not required though, whereas I'm pretty sure we made changes that prevent using the compilers that came with VS 2015. If you want to write something that's clearer about the "works with" toolset version, the "released/supported with" toolset versions, and the VS versions that typically include these toolsets (newer VS should have older MSVC available as options, but not selected by default), feel free.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Ah, got it now, thanks for the explanation. So no need to change that from my point of view, until in the future we do a change that requires a newer version than VS 2017.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Approved with change in comments (ping me if nobody else merges)
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
I did not yet touch cpython/Tools/msi/bundle/bootstrap/pythonba.vcxproj Lines 24 to 25 in 46d5106
since this seems to be related to the deprecated msi installers. But adding |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
Uh, it might be. I think we need to match the versions supported by WiX, which probably don't extend to v145. Try it - it should run in CI when you touch the file - but be prepared to change it to use v143. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Ok, let's try. In case it fails when switching CI to |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
FYI, this is the line that matters: https://github.com/python/cpython/actions/runs/21963900630/job/63448457298?pr=144680#step:3:5827
Most critical, the MSVC version ( |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Thanks for that hint. So I ran locally for this PR. It did use VS2026 / v145 and finished without an error. Here is the relevant part of the build log
VS2026 linked fine against
Same here: sounds scary. But seems to be forward compatible according to https://learn.microsoft.com/en-us/cpp/porting/binary-compat-2015-2017?view=msvc-170
So I think it is ok. Given also that 3.13 and 3.14 did the same using VS2022 and there are no reported problems? |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Yep, sounds like it's okay. Any other changes coming for this PR? |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Nope, that's it for this one :) |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
@zooba: friendly ping. I think this is ready to merge. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
|
Should we backport this aften an observation period on main? |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Yes but the "observation period" includes a couple of releases of 3.15. We want actual feedback from users, not just CI stability. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
…oolset v145 by default (pythonGH-144680)
…oolset v145 by default (pythonGH-144680)
… VisualStudioVersion 18.0 -> PlatformToolset v145 (pythonGH-138980, pythonGH-144680)
|
Thanks @chris-eibl for the PR, and @zooba for merging it 🌮🎉.. I'm working now to backport this PR to: 3.14. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
GH-158188 is a backport of this pull request to the 3.14 branch. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
(I'll post details on backport.) |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
…Toolset v145 by default (GH-144680) (#158188) * GH-144679: When building with VS 2026 on Windows, use PlatformToolset v145 by default (GH-144680) (cherry picked from commit c06f4f4) Co-authored-by: Chris Eibl <[email protected]> * Silence experimental coroutine deprecation warnings (#150788) Co-authored-by: Zachary Ware <[email protected]> (cherry picked from commit 7241db1) --------- Co-authored-by: Chris Eibl <[email protected]> Co-authored-by: Hugo van Kemenade <[email protected]> Co-authored-by: Zachary Ware <[email protected]>
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.