https://bugzilla.redhat.com/show_bug.cgi?id=2008657
Ben Beasley <code(a)musicinmybrain.net> changed:
What |Removed |Added
----------------------------------------------------------------------------
Flags| |needinfo?(david08741@gmail.
| |com)
--- Comment #3 from Ben Beasley <code(a)musicinmybrain.net> ---
Unfortunately that doesn't work because the project doesn't
provide a project.toml or setup.cfg file.
I did assume that was a limitation of the macros.
Contrary to impressions created by early documentation, these macros actually
work just fine for projects that use setuptools via setup.py. From
https://src.fedoraproject.org/rpms/pyproject-rpm-macros:
They work for:
• traditional Setuptools-based projects that use the setup.py file,
• newer Setuptools-based projects that have a setup.cfg file,
• general Python projects that use the PEP 517 pyproject.toml file (which allows using
any build system, such as setuptools, flit or poetry).
In particular, “%pyproject_buildrequires -r” will generates BR’s from
“setuptools.setup(…, install_requires=[…])” in setup.py, and
“%pyproject_buildrequires -x foo,bar” will generate the same BR’s plus those
from “setuptools.setup(…, extras_require={"foo": […], "bar": […]})”.
See
https://src.fedoraproject.org/rpms/python-sshpubkeys for a nearly-minimal
example of this working.
-----
As per
https://github.com/rpm-software-management/rpm/issues/1094
that does not seem to be the proper usage of that macro,
but if I remember correctly from the devel mailing list discussion
no better alternative for such a use case was suggested.
An extra -test subpackage could be used, though.
True, it doesn’t match rpm upstream’s intent, and there was a threat to remove
it in 4.17. Unfortunately, I haven’t found any straightforward or documented
way to adjust the installed files after “wheelification” when using
pyproject-rpm-macros. It would be a huge mess if the ability to use %exclude
this way went away without a documented workaround, but I understand your
reluctance to start using it this way by choice.
You could, as you noted, produce a python3-gelidum-tests subpackage.
You could patch setup.py to change
packages=find_packages(),
to
packages=find_packages(exclude="*.tests*"),
(perhaps suggesting to upstream to do the same).
Or, you could leave it as it is, since including the tests is permitted.
-----
Setting NEEDINFO so you can let me know if you are ready for me to re-review or
not.
--
You are receiving this mail because:
You are always notified about changes to this product and component
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=2008657