Skip to content

BUG: 2.2.2 pep517 build fails #58274

Open
@kloczek

Description

@kloczek

Pandas version checks

  • I have checked that this issue has not already been reported.

  • I have confirmed this bug exists on the latest version of pandas.

  • I have confirmed this bug exists on the main branch of pandas.

Reproducible Example

- clone repo
- `python3 -sBm build -w --no-isolation`

Issue Description

Looks like something is wrong and pep517 based build fails

Build fails with
+ /usr/bin/python3 -sBm build -w --no-isolation
* Getting build dependencies for wheel...
* Building wheel...
+ meson setup /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2 /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/.mesonpy-3bx4fkmn -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md --vsenv --native-file=/home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/.mesonpy-3bx4fkmn/meson-python-native-file.ini
The Meson build system
Version: 1.4.0
Source dir: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2
Build dir: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/.mesonpy-3bx4fkmn
Build type: native build
Project name: pandas
Project version: 2.2.2
C compiler for the host machine: /usr/bin/gcc (gcc 14.0.1 "gcc (GCC) 14.0.1 20240411 (Red Hat 14.0.1-0)")
C linker for the host machine: /usr/bin/gcc ld.bfd 2.42.50.20240318
C++ compiler for the host machine: /usr/bin/g++ (gcc 14.0.1 "g++ (GCC) 14.0.1 20240411 (Red Hat 14.0.1-0)")
C++ linker for the host machine: /usr/bin/g++ ld.bfd 2.42.50.20240318
Cython compiler for the host machine: cython (cython 3.0.10)
Host machine cpu family: x86_64
Host machine cpu: x86_64
Program python found: YES (/usr/bin/python3)
Found pkg-config: YES (/usr/bin/pkg-config) 2.1.1
Run-time dependency python found: YES 3.10
Build targets in project: 54

pandas 2.2.2

  User defined options
    Native files: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/.mesonpy-3bx4fkmn/meson-python-native-file.ini
    buildtype   : release
    vsenv       : true
    b_ndebug    : if-release
    b_vscrt     : md

Found ninja-1.12.0 at /usr/bin/ninja

Visual Studio environment is needed to run Ninja. It is recommended to use Meson wrapper:
/usr/bin/meson compile -C .
+ /usr/bin/ninja
[34/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/conversion.pyx
FAILED: pandas/_libs/tslibs/conversion.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/tslibs/conversion.pyx.c
cython -M --fast-fail -3 --include-dir /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/.mesonpy-3bx4fkmn/pandas/_libs/tslibs '-X always_allow_keywords=true' /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/conversion.pyx -o pandas/_libs/tslibs/conversion.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/tslibs/conversion.pyx.c

Error compiling Cython file:
------------------------------------------------------------
...
        ts = datetime.combine(ts, time())
        return convert_datetime_to_tsobject(
            ts, tz, nanos=0, reso=NPY_DATETIMEUNIT.NPY_FR_s
        )
    else:
        pandas_libs.tslibs.period import Period
                                  ^
------------------------------------------------------------

/home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/conversion.pyx:421:34: Syntax error in simple statement list
[37/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/testing.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[38/152] Compiling C object pandas/_libs/byteswap.cpython-310-x86_64-linux-gnu.so.p/meson-generated_pandas__libs_byteswap.pyx.c.o
pandas/_libs/byteswap.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/byteswap.pyx.c: In function ‘__pyx_pf_6pandas_5_libs_8byteswap_read_float_with_byteswap’:
pandas/_libs/byteswap.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/byteswap.pyx.c:2477:61: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘Py_ssize_t’ {aka ‘long int’} [-Wsign-compare]
 2477 |     __pyx_t_2 = ((__pyx_v_offset + (sizeof(__pyx_v_value))) < __pyx_t_1);
      |                                                             ^
pandas/_libs/byteswap.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/byteswap.pyx.c: In function ‘__pyx_pf_6pandas_5_libs_8byteswap_2read_double_with_byteswap’:
pandas/_libs/byteswap.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/byteswap.pyx.c:2747:61: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘Py_ssize_t’ {aka ‘long int’} [-Wsign-compare]
 2747 |     __pyx_t_2 = ((__pyx_v_offset + (sizeof(__pyx_v_value))) < __pyx_t_1);
      |                                                             ^
pandas/_libs/byteswap.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/byteswap.pyx.c: In function ‘__pyx_pf_6pandas_5_libs_8byteswap_4read_uint16_with_byteswap’:
pandas/_libs/byteswap.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/byteswap.pyx.c:3015:59: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘Py_ssize_t’ {aka ‘long int’} [-Wsign-compare]
 3015 |     __pyx_t_2 = ((__pyx_v_offset + (sizeof(__pyx_v_res))) < __pyx_t_1);
      |                                                           ^
pandas/_libs/byteswap.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/byteswap.pyx.c: In function ‘__pyx_pf_6pandas_5_libs_8byteswap_6read_uint32_with_byteswap’:
pandas/_libs/byteswap.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/byteswap.pyx.c:3265:59: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘Py_ssize_t’ {aka ‘long int’} [-Wsign-compare]
 3265 |     __pyx_t_2 = ((__pyx_v_offset + (sizeof(__pyx_v_res))) < __pyx_t_1);
      |                                                           ^
pandas/_libs/byteswap.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/byteswap.pyx.c: In function ‘__pyx_pf_6pandas_5_libs_8byteswap_8read_uint64_with_byteswap’:
pandas/_libs/byteswap.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/byteswap.pyx.c:3515:59: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘Py_ssize_t’ {aka ‘long int’} [-Wsign-compare]
 3515 |     __pyx_t_2 = ((__pyx_v_offset + (sizeof(__pyx_v_res))) < __pyx_t_1);
      |                                                           ^
[39/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/nattype.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/nattype.pyx:79:0: Global name __nat_unpickle matched from within class scope in contradiction to to Python 'class private name' rules. This may change in a future release.
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/nattype.pyx:79:0: Global name __nat_unpickle matched from within class scope in contradiction to to Python 'class private name' rules. This may change in a future release.
[40/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/np_datetime.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[44/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/tzconversion.pyx
FAILED: pandas/_libs/tslibs/tzconversion.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/tslibs/tzconversion.pyx.c
cython -M --fast-fail -3 --include-dir /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/.mesonpy-3bx4fkmn/pandas/_libs/tslibs '-X always_allow_keywords=true' /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/tzconversion.pyx -o pandas/_libs/tslibs/tzconversion.cpython-310-x86_64-linux-gnu.so.p/pandas/_libs/tslibs/tzconversion.pyx.c

Error compiling Cython file:
------------------------------------------------------------
...
    elif nonexistent == "shift_forward":
        shift_forward = True
    elif nonexistent == "shift_backward":
        shift_backward = True
    elif PyDelta_Check(nonexistent):
        pandas_libs.tslibs.timedeltas import delta_to_nanoseconds
                                      ^
------------------------------------------------------------

/home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/tzconversion.pyx:283:38: Syntax error in simple statement list
[45/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/missing.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[48/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/hashing.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[49/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/timezones.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[53/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/ops.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[55/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/parsing.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[58/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslib.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[59/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/strptime.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[61/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/parsers.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/parsers.pyx:1605:18: noexcept clause is ignored for function returning Python object
[62/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/internals.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[65/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/timedeltas.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[66/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/timestamps.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[67/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/period.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[68/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/offsets.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[69/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/index.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[70/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/lib.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[72/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/interval.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[74/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/hashtable.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[75/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/algos.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
[76/152] Compiling Cython source /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/groupby.pyx
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:188:38: noexcept clause is ignored for function returning Python object
warning: /home/tkloczko/rpmbuild/BUILD/pandas-2.2.2/pandas/_libs/tslibs/util.pxd:193:40: noexcept clause is ignored for function returning Python object
ninja: build stopped: subcommand failed.

ERROR Backend subprocess exited when trying to invoke build_wheel

Expected Behavior

pep517 build should not fail.

Installed Versions

List of installed modules in build env:
Package            Version
------------------ -----------
arrow              1.3.0
attrs              23.2.0
beautifulsoup4     4.12.3
build              1.2.1
contourpy          1.2.1
cycler             0.12.1
Cython             3.0.10
et_xmlfile         1.1.0
exceptiongroup     1.1.3
execnet            2.0.2
fonttools          4.51.0
gitdb              4.0.11
GitPython          3.1.43
greenlet           3.0.3
hypothesis         6.100.0
importlib_metadata 7.1.0
iniconfig          2.0.0
installer          0.7.0
Jinja2             3.1.3
kiwisolver         1.4.5
lxml               5.2.1
MarkupSafe         2.1.5
matplotlib         3.8.4
numpy              1.26.5
olefile            0.47
openpyxl           3.1.2
packaging          24.0
pillow             10.3.0
pluggy             1.4.0
pyparsing          3.1.2
pyproject_hooks    1.0.0
pyproject-metadata 0.7.1
pytest             8.1.1
pytest-asyncio     0.23.6
pytest-xdist       3.5.0
python-dateutil    2.9.0.post0
pytz               2024.1
setuptools         69.4.0
smmap              5.0.0
sortedcontainers   2.4.0
soupsieve          2.5
SQLAlchemy         2.0.29
tokenize_rt        5.2.0
tomli              2.0.1
typing_extensions  4.11.0
versioneer         0.29
wheel              0.43.0
xlrd               2.0.1
zipp               3.18.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    BuildLibrary building on various platformsNeeds InfoClarification about behavior needed to assess issue

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions