piwheels / packages

Issue tracker for piwheels package issues
https://github.com/piwheels/packages/issues
20 stars 5 forks source link

Missing package: zxing-cpp #344

Closed stumpylog closed 1 year ago

stumpylog commented 1 year ago

Package name

zxing-cpp

Package version

all

PyPI URL

https://pypi.org/project/zxing-cpp/

piwheels URL

https://www.piwheels.org/project/zxing-cpp/

Python version

I am the maintainer

More information

Cloning into 'pybind11-src'...
2023-01-05T23:22:30,880   fatal: transport 'https' not allowed

The build appears to be failing to clone pybind11 over https. I'm guessing there is some Git config setting needed to enable https as a valid transport. The URL in the CMakeLists.txt looks correct. Running python3 -m build --wheel locally with the sdist works with no extra configurations.

bennuttall commented 1 year ago

We do not allow running git clone as part of building a package.

axxel commented 1 year ago

We do not allow running git clone as part of building a package.

pybind11 will only be fetched from cmake via git clone if it is not found installed locally.

bennuttall commented 1 year ago

pybind11 should be available. It's installed here: https://github.com/piwheels/piwheels/blob/master/deploy_slave.sh#L59

axxel commented 1 year ago

That is strange because the git clone only happens when a standard find_package fails: https://github.com/zxing-cpp/zxing-cpp/blob/deda5eef587a6c2288dad5a69c08240e5224707f/zxing.cmake#L29

stumpylog commented 1 year ago

This might be resolved by my changes to the build system requirements. It think it will create a virtual environment with pybind11 visible there

axxel commented 1 year ago

I'm not familiar with the piwheels infrastructure at all. If there is something that upstream (i.e. me) would need to do to make this work, please let me know.

bennuttall commented 1 year ago

We install a load of apt libraries and things, and run pip wheel pkg==version for everything.

Here's the build log: https://www.piwheels.org/logs/0000/0916/4830.txt

axxel commented 1 year ago

I've seen the build log before but could not conclude more than that cmake did not find a local pybind11 installation.

axxel commented 1 year ago

This might be resolved by my changes to the build system requirements.

Any updates on that? Is anyone still "working" on this somehow?

stumpylog commented 1 year ago

I was referring to these changes: https://github.com/zxing-cpp/zxing-cpp/pull/530

I think they will at least help, if not fix, but I won't have more information until the next release/build log to look at.

axxel commented 1 year ago

I see. I don't see how those changes will affect the issue with the missing cmake find_package detection of pybind11, though.

So this means nothing will happen until after the next upstream release? Would be nice if we could somehow find out beforehand if it will work to have the opportunity to fix any remaining issue and not have to wait for yet another release then.

stumpylog commented 1 year ago

The addition of pybind11 to the build dependencies in pyproject.toml and the inclusion of the C++ files in the sdist will both help, I think.

I don't know its possible to check a development version on Piwheels. I think it scans or polls Pypi for releases to trigger a build

axxel commented 1 year ago

Now that 2.1 is released it builds successfully on Bullseye but still fails on Buster due to the old gcc. I don't intend to fix those issues as I would consider a gcc-8 to be outdated.

stumpylog commented 1 year ago

Perfectly reasonable to me!