Am 31.03.22 um 12:31 schrieb Neal Gompa:
Moreover, if your metadata is bad, then *you should try to fix it*. Those errors mean that the package is *unusable* at runtime, especially if they use setuptools-generated binary wrappers, which check runtime dependencies before executing code.
Exactly my point.
Finally, the generator makes life considerably easier longer term when you combine it with dynamic build dependencies (which OBS has supported for a while now).
For example, Fedora's pyproject-rpm-macros[1] leverages the generator so that it doesn't have to figure out package names for build dependencies as it probes and cycles through them to build the Python package *using the metadata*.
[1]: https://src.fedoraproject.org/rpms/pyproject-rpm-macros
I would love to see this replacing the ugly %{python_module} hack for the obs server side resolver in the project configs. How does one enable dynamic build dependencies in obs? Moreover where is the PR/SR for openSUSE's python-rpm-macros or a port of pyproject-rpm-macros? I found https://github.com/rpm-software-management/rpm/pull/593 which references https://github.com/rpm-software-management/rpm/issues/104. But there is only the concern by @mlschroe that it will not work in obs and my google-fu fails me from here. - Ben