Hi all!

On Sun, Jan 19, 2025 at 03:44:09PM +0000, Stefano Rivera wrote:
> Yep. Lots of Python upstreams don't understand the difference between
> build-time and run-time dependencies, because they just put all the dev
> tools in the runtime environment.
> 
> https://github.com/dglent/meteo-qt/blob/master/setup.py#L30
> 
> That's a runtime dependency on everything in requirements.txt, which
> includes "sip".
> 
> The sip4 package builds python3-sip, which doesn't include any
> .dist-info files.
> The sip6 package builds python3-sipbuild, which includes .dist-info
> metadata for the "sip" package.
> 
> I don't know why these packages are currently structured like this, and
> what is actually required for meteo-qt's runtime. Maybe Dmitry can shed
> some light.

The "sip python3-sipbuild" override looks correct. The "sip" package from PyPI
(https://pypi.org/project/sip/) is packaged in Debian as "python3-sipbuild"
binary package. It should *not* be python3-sip, that package is obsolete.

Having runtime dependency on python3-sipbuild looks wrong, that package is a
build system. The runtime module should be python3-pyqt5.sip for packages
using PyQt5 (although, no need to depend explicitly on it, as python3-pyqt5
has that dependency). Like Stefano suggested, upstream probably confused
build-time and run-time dependencies, or forgot to update requirements.txt
after switching from old version of sip.

Also please note that python3-sipbuild >= 6.9.0-1 does not depend on
python3-pkg-resources. However it depends on python3-setuptools because the
sipbuild.setuptools_builder module imports setuptools.

--
Dmitry Shachnev

Attachment: signature.asc
Description: PGP signature

Reply via email to