[Bug 2112474] Review Request: python-qemu-qmp - QEMU Monitor Protocol library

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.redhat.com/show_bug.cgi?id=2112474



--- Comment #11 from John Snow <jsnow@xxxxxxxxxx> ---
OK, thanks for the feedback.

I've reworked the spec file to match the template Miro pointed out a bit more
closely, but I kept the pkg_name and pypi_name macro definitions for now based
on Alfredo's comment. I removed RFC comments that have been addressed in the
discussion here.

https://people.redhat.com/~jsnow/v2/python-qemu-qmp.spec
https://people.redhat.com/~jsnow/v2/python-qemu-qmp-0.0.1-1.fc36.src.rpm

I split out the docs into a subpackage. I didn't
see this laid out in
https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/
so I took a wild stab at it.


Remaining items to handle, as I understand them:

TLDR:

- License is fine despite rpmlint chirps, AFAIK
- Need man pages for CLI scripts
- Might need gpgverify (?)
- Need to integrate tests into a check phase, but there are dep problems.

At length:

[ ]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses
     found: "Unknown or generated", "GNU Library General Public License,
     Version 2.0", "GNU General Public License, Version 2", "*No copyright*
     GNU General Public License, Version 2 GNU Library General Public
     License v2 or later", "GNU Library General Public License v2 or
     later". 47 files have unknown license. Detailed output of licensecheck
     in /home/jsnow/src/fedora/jsnow-mk5/python-qemu-qmp/licensecheck.txt

I suppose I'll need to update the individual files upstream with SPDX
identifiers, but I can't really control that for the current version. All of
the
"unknown" files are intended to be licensed as LGPLv2+.

One interesting piece is that the .tar.gz for the SDist on PyPI actually
includes my .gitlab-ci.d files, one of which is licensed as GPLv2. I didn't
really intend to distribute these files in the SDist, so I'll have to look into
that. It's harmless for now, but could cause problems when I go to drop the
remaining legacy GPLv2 code. Thought I'd mention it.

Otherwise, I believe "GPL-2.0-only AND LGPL-2.0-or-later" to be the correct
aggregate license for the software as presently bundled. The "LICENSE" file
contains text that matches the 2.0 license that uses the "Library" wording and
not the 2.1 "Lesser" wording.

[ ]: If the package is under multiple licenses, the licensing breakdown
     must be documented in the spec.

I assume a comment is OK. I added one.

[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).

Rpmlint
-------
Checking: python3-qemu-qmp-0.0.1-1.fc37.noarch.rpm
          python3-qemu-qmp-doc-0.0.1-1.fc37.noarch.rpm
          python-qemu-qmp-0.0.1-1.fc37.src.rpm
python3-qemu-qmp.noarch: W: spelling-error %description -l en_US asyncio ->
syncopation
python3-qemu-qmp.noarch: W: invalid-license GPL-2.0-only
python3-qemu-qmp.noarch: W: invalid-license LGPL-2.0-or-later
python3-qemu-qmp.noarch: W: no-manual-page-for-binary qmp-shell
python3-qemu-qmp.noarch: W: no-manual-page-for-binary qmp-shell-wrap
python3-qemu-qmp-doc.noarch: W: invalid-license GPL-2.0-only
python3-qemu-qmp-doc.noarch: W: invalid-license LGPL-2.0-or-later
python-qemu-qmp.src: W: spelling-error %description -l en_US asyncio ->
syncopation
python-qemu-qmp.src: W: invalid-license GPL-2.0-only
python-qemu-qmp.src: W: invalid-license LGPL-2.0-or-later
3 packages and 0 specfiles checked; 0 errors, 10 warnings.

'asyncio' is the correct spelling.

The version of rpmlint I have installed locally does not seem to like the
SPDX identifiers, though I see that is a very recent requirement (July 2022).

The manpage warning didn't come up for me on my first draft spec; I'll have to
fix this upstream to generate manual pages for each binary tool. I think Sphinx
can generate manual pages, but I haven't plumbed that yet. I'll work on this.

(Did the old macros generate these ...?)


[ ]: Sources are verified with gpgverify first in %prep if upstream
     publishes signatures.
     Note: gpgverify is not used.

I did sign my PyPI releases with my personal (jsnow@redhat) GPG key. I'll have
to look into how to do this step. I also use an expiration on my key, so I
worry
that I am doing this step wrong. I can change my release process for 0.0.2 if
necessary. (No idea what I am doing. EAFP.)

[ ]: %check is present and all tests pass.

"SHOULD". ... but I do have tests, so I will attempt to wire them up here.
Upstream, these tests also include PyCQA tools, but I think those should be
disabled here because they will only be a nuisance in this context if the goal
is to just reproduce upstream tarballs verbatim. It will also balloon the
builddeps quite a bit.

I currently rely on avocado-framework >= 90, but I suppose
92.x (the "LTS" release) isn't packaged for F36 yet.
I'll have to look into that, sorry.

(Dogfood, yip yip!)


-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are always notified about changes to this product and component
https://bugzilla.redhat.com/show_bug.cgi?id=2112474
_______________________________________________
package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/package-review@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue




[Index of Archives]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite Conditions]     [KDE Users]

  Powered by Linux