Skip to content

Unable to build pendulum (no wheel is created, but build does not fail) #526

@dvzrv

Description

@dvzrv

Hi! I'm currently attempting to remove the hard build requirement for poetry on pendulum in the Arch Linux package and replace it with poetry-core.

This is unfortunately fairly complicated, as the pendulum project builds a C extension (now using meson, previously using a custom build script).

Although I can use python -m build --wheel --no-isolation and it correctly triggers the build of the C extension, a wheel is not built and build also does not fail on this!

The Meson build system
Version: 0.63.3
Source dir: /build/python-pendulum/src/pendulum
Build dir: /build/python-pendulum/src/pendulum/build
Build type: native build
Project name: pendulum C extensions
Project version: undefined
C compiler for the host machine: cc (gcc 12.2.0 "cc (GCC) 12.2.0")
C linker for the host machine: cc ld.bfd 2.39.0
Host machine cpu family: x86_64
Host machine cpu: x86_64
Program python3 found: YES (/usr/bin/python)
Found pkg-config: /usr/bin/pkg-config (1.8.0)
Build targets in project: 2

Found ninja-1.11.1 at /usr/bin/ninja
ninja: Entering directory `/build/python-pendulum/src/pendulum/build'
[1/4] Compiling C object _helpers.cpython-310-x86_64-linux-gnu.so.p/pendulum__extensions__helpers.c.o
[2/4] Compiling C object _iso8601.cpython-310-x86_64-linux-gnu.so.p/pendulum_parsing__iso8601.c.o
[3/4] Linking target _helpers.cpython-310-x86_64-linux-gnu.so
[4/4] Linking target _iso8601.cpython-310-x86_64-linux-gnu.so
ninja: Entering directory `/build/python-pendulum/src/pendulum/build'
ninja: no work to do.
Installing _helpers.cpython-310-x86_64-linux-gnu.so to /build/python-pendulum/src/pendulum/pendulum/_extensions/
Installing _iso8601.cpython-310-x86_64-linux-gnu.so to /build/python-pendulum/src/pendulum/pendulum/parsing/

python-pendulum-2.1.1.r85.gd902a46-1-x86_64-build.log

The above build log shows, that the custom build.py script is called and that the built extensions are even moved, when building from a recent commit of the upstream project.
However, no wheel is created by build below the dist directory (or anywhere really) and it also does not fail on not doing anything.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions