Repository navigation
GH-47367: [Packaging][Python] Patch vcpkg to show logs and install newer Windows SDK for vs_buildtools - #47484
Conversation
|
@github-actions crossbow submit wheel-windows-cp313-cp313-amd64 |
|
Revision: b921d55 Submitted crossbow builds: ursacomputing/crossbow @ actions-3c0d496e90
|
|
@github-actions crossbow submit wheel-windows-cp313-cp313-amd64 |
|
Revision: 534f53c Submitted crossbow builds: ursacomputing/crossbow @ actions-674df955f6
|
|
@github-actions crossbow submit wheel-windows-cp313-cp313-amd64 |
|
Revision: 8722d8b Submitted crossbow builds: ursacomputing/crossbow @ actions-3af7390a33
|
|
@github-actions crossbow submit wheel-windows-cp313-cp313-amd64 |
|
Revision: c195369 Submitted crossbow builds: ursacomputing/crossbow @ actions-d24a423afe
|
|
@github-actions crossbow submit wheel-windows-cp313-cp313-amd64 |
|
Revision: 652eee8 Submitted crossbow builds: ursacomputing/crossbow @ actions-2dd7b487a4
|
|
@github-actions crossbow submit wheel-windows-cp313-cp313-amd64 |
|
Revision: 4fe33ca Submitted crossbow builds: ursacomputing/crossbow @ actions-7c37c8ca43
|
|
@github-actions crossbow submit wheel-windows-cp313-cp313-amd64 |
|
Revision: 03eaa11 Submitted crossbow builds: ursacomputing/crossbow @ actions-ab25aea01a
|
|
@github-actions crossbow submit wheel-windows-cp313-cp313-amd64 |
|
Revision: 29ab183 Submitted crossbow builds: ursacomputing/crossbow @ actions-435e7b2e7f
|
|
@github-actions crossbow submit wheel-windows-cp313-cp313-amd64 |
|
Revision: 9dff6f2 Submitted crossbow builds: ursacomputing/crossbow @ actions-9b8f4ceae9
|
| --add Microsoft.VisualStudio.Component.VC.Tools.x86.x64 ` | ||
| --add Microsoft.VisualStudio.Component.Windows10SDK.20348 ` | ||
| --add Microsoft.VisualStudio.Component.VC.CMake.Project ` | ||
| --includeRecommended ^ ` |
There was a problem hiding this comment.
I think that https://hub.docker.com/r/apache/arrow-dev/tags?name=windows&ordering=-name have the uploaded images but no images exist...
docker compose images may show the size of built images.
BTW, I think that we should use --includeRecommended even if it increases image size. We don't want to maintain Visual Studio components...
…to always apply the vcpkg patch
|
@github-actions crossbow submit wheel-windows-cp313-cp313-amd64 |
|
Revision: 8f4de06 Submitted crossbow builds: ursacomputing/crossbow @ actions-cd5b0cfb47
|
|
@github-actions crossbow submit wheel-windows-cp313-cp313-amd64 |
|
Revision: 4225665 Submitted crossbow builds: ursacomputing/crossbow @ actions-ad4245e729
|
pitrou
left a comment
There was a problem hiding this comment.
+1, thanks a lot for doing this!!
|
After merging your PR, Conbench analyzed the 4 benchmarking runs that have been run so far on merge-commit 64cfa7c. There weren't enough matching historic benchmark results to make a call on whether there were regressions. The full Conbench report has more details. |
…all newer Windows SDK for vs_buildtools (apache#47484) ### Rationale for this change Our Windows wheels have been failing for a long time with some errors finding header files: ``` Python313\Lib\subprocess.py:419: CalledProcessError ---------------------------- Captured stdout call ----------------------------- Compiling extensions.pyx because it changed. [1/1] Cythonizing extensions.pyx Extension module: <setuptools.extension.Extension('extensions') at 0x24849772490> ['C:\\Python313\\Lib\\site-packages\\numpy\\_core\\include', 'C:\\Python313\\Lib\\site-packages\\pyarrow\\include'] ['arrow_python', 'arrow'] ['C:\\Python313\\Lib\\site-packages\\pyarrow', 'C:\\Python313\\Lib\\site-packages\\pyarrow.libs'] running build_ext building 'extensions' extension creating build\temp.win-amd64-cpython-313\Release "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.44.35207\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -IC:\Python313\Lib\site-packages\numpy\_core\include -IC:\Python313\Lib\site-packages\pyarrow\include -IC:\Python313\include -IC:\Python313\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.44.35207\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" /EHsc /Tpextensions.cpp /Fobuild\temp.win-amd64-cpython-313\Release\extensions.obj -D_ENABLE_EXTENDED_ALIGNED_STORAGE /std:c++17 extensions.cpp C:\Python313\include\pyconfig.h(59): fatal error C1083: Cannot open include file: 'io.h': No such file or directory ``` We also couldn't re-build our images because vcpkg was failing to build dependencies. ### What changes are included in this PR? When installing through vs_buildtools the different components we were using a deprecated Windows SDK. Installing VCTools with all recommended packages fixes both the vcpkg build and the test failures on the wheel but due to image size we have decided to only upgrade the Windows SDK at the moment. Link to MSVC VCTools package: https://learn.microsoft.com/en-us/visualstudio/install/workload-component-id-vs-build-tools?view=vs-2022#desktop-development-with-c In order to understand the vcpkg failure I patched vcpkg so it prints the build log error. Patching vcpkg is also part of the PR so it can be used in the future. ### Are these changes tested? Yes ### Are there any user-facing changes? No * GitHub Issue: apache#47367 Lead-authored-by: Raúl Cumplido <[email protected]> Co-authored-by: Antoine Pitrou <[email protected]> Signed-off-by: Antoine Pitrou <[email protected]>
…all newer Windows SDK for vs_buildtools (apache#47484) ### Rationale for this change Our Windows wheels have been failing for a long time with some errors finding header files: ``` Python313\Lib\subprocess.py:419: CalledProcessError ---------------------------- Captured stdout call ----------------------------- Compiling extensions.pyx because it changed. [1/1] Cythonizing extensions.pyx Extension module: <setuptools.extension.Extension('extensions') at 0x24849772490> ['C:\\Python313\\Lib\\site-packages\\numpy\\_core\\include', 'C:\\Python313\\Lib\\site-packages\\pyarrow\\include'] ['arrow_python', 'arrow'] ['C:\\Python313\\Lib\\site-packages\\pyarrow', 'C:\\Python313\\Lib\\site-packages\\pyarrow.libs'] running build_ext building 'extensions' extension creating build\temp.win-amd64-cpython-313\Release "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.44.35207\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -IC:\Python313\Lib\site-packages\numpy\_core\include -IC:\Python313\Lib\site-packages\pyarrow\include -IC:\Python313\include -IC:\Python313\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.44.35207\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" /EHsc /Tpextensions.cpp /Fobuild\temp.win-amd64-cpython-313\Release\extensions.obj -D_ENABLE_EXTENDED_ALIGNED_STORAGE /std:c++17 extensions.cpp C:\Python313\include\pyconfig.h(59): fatal error C1083: Cannot open include file: 'io.h': No such file or directory ``` We also couldn't re-build our images because vcpkg was failing to build dependencies. ### What changes are included in this PR? When installing through vs_buildtools the different components we were using a deprecated Windows SDK. Installing VCTools with all recommended packages fixes both the vcpkg build and the test failures on the wheel but due to image size we have decided to only upgrade the Windows SDK at the moment. Link to MSVC VCTools package: https://learn.microsoft.com/en-us/visualstudio/install/workload-component-id-vs-build-tools?view=vs-2022#desktop-development-with-c In order to understand the vcpkg failure I patched vcpkg so it prints the build log error. Patching vcpkg is also part of the PR so it can be used in the future. ### Are these changes tested? Yes ### Are there any user-facing changes? No * GitHub Issue: apache#47367 Lead-authored-by: Raúl Cumplido <[email protected]> Co-authored-by: Antoine Pitrou <[email protected]> Signed-off-by: Antoine Pitrou <[email protected]>
Rationale for this change
Our Windows wheels have been failing for a long time with some errors finding header files:
We also couldn't re-build our images because vcpkg was failing to build dependencies.
What changes are included in this PR?
When installing through vs_buildtools the different components we were using a deprecated Windows SDK. Installing VCTools with all recommended packages fixes both the vcpkg build and the test failures on the wheel but due to image size we have decided to only upgrade the Windows SDK at the moment.
Link to MSVC VCTools package:
https://learn.microsoft.com/en-us/visualstudio/install/workload-component-id-vs-build-tools?view=vs-2022#desktop-development-with-c
In order to understand the vcpkg failure I patched vcpkg so it prints the build log error. Patching vcpkg is also part of the PR so it can be used in the future.
Are these changes tested?
Yes
Are there any user-facing changes?
No