-
Notifications
You must be signed in to change notification settings - Fork 4.1k
[Python] Error compiling Cython files on Windows during release verification #40375
Copy link
Copy link
Closed
Description
Describe the bug, including details regarding any error messages, version, and platform.
I ran into this while doing release verification for 15.0.1 RC0. The code in the error message is relatively new (PyCapsule) but old enough that it may just be my setup.
On Windows 11 in cmd.exe prompt with Anaconda set up, I ran
dev\release\verify-release-candidate.bat 15.0.1 0C++ compiled fine and then when it got to building PyArrow, I see:
-- Running cmake --build for PyArrow
cmake --build . --config release
Microsoft (R) Build Engine version 16.11.2+f32259642 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.
1>Checking Build System
Compiling Cython CXX source for _acero...
performance hint: pyarrow\_acero.pyx:511:67: Exception check after calling 'unwrap' will always require the GIL to be
acquired. Declare 'unwrap' as 'noexcept' if you control the definition and you're sure you don't want the function t
o raise exceptions.
performance hint: pyarrow\_acero.pyx:511:36: Exception check after calling 'GetResultValue[shared_ptr[CTable]]' will
always require the GIL to be acquired. Declare 'GetResultValue[shared_ptr[CTable]]' as 'noexcept' if you control the
definition and you're sure you don't want the function to raise exceptions.
Building Custom Rule C:/tmp/arrow-verify-release/apache-arrow-15.0.1/python/CMakeLists.txt
Compiling Cython CXX source for lib...
Error compiling Cython file:
------------------------------------------------------------
...
if schema.release != NULL:
schema.release(schema)
free(schema)
cdef object alloc_c_schema(ArrowSchema** c_schema) noexcept:
^
------------------------------------------------------------
pyarrow\types.pxi:5264:26: noexcept clause is ignored for function returning Python object
Error compiling Cython file:
------------------------------------------------------------
...
if array.release != NULL:
array.release(array)
free(array)
cdef object alloc_c_array(ArrowArray** c_array) noexcept:
^
------------------------------------------------------------
pyarrow\types.pxi:5283:25: noexcept clause is ignored for function returning Python object
Error compiling Cython file:
------------------------------------------------------------
...
if stream.release != NULL:
stream.release(stream)
free(stream)
cdef object alloc_c_stream(ArrowArrayStream** c_stream) noexcept:
^
------------------------------------------------------------
pyarrow\types.pxi:5302:26: noexcept clause is ignored for function returning Python object
C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(24
1,5): error MSB8066: Custom build for 'C:\tmp\arrow-verify-release\apache-arrow-15.0.1\python\build\temp.win-amd64-cpyt
hon-38\CMakeFiles\e1d0ace4d7a55ee7d9220e8a19e03e2f\lib_pyx.rule;C:\tmp\arrow-verify-release\apache-arrow-15.0.1\python\
CMakeLists.txt' exited with code 1. [C:\tmp\arrow-verify-release\apache-arrow-15.0.1\python\build\temp.win-amd64-cpytho
n-38\lib_pyx.vcxproj]I noted that the release verification script pins Python 3.8 so right now I'm re-running verification with Python 3.11 in the errors are related to that.
Component(s)
Python, Release
Reactions are currently unavailable