Bug 2019157

Summary: Review Request: python-pyct - Python packaging Common Tasks
Product: [Fedora] Fedora Reporter: Ben Beasley <code>
Component: Package ReviewAssignee: Zbigniew Jędrzejewski-Szmek <zbyszek>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: package-review, zbyszek
Target Milestone: ---Flags: zbyszek: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-12-02 01:14:56 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2018847    
Bug Blocks: 2022153    

Description Ben Beasley 2021-11-01 17:27:17 UTC
Spec URL: https://music.fedorapeople.org/python-pyct.spec
SRPM URL: https://music.fedorapeople.org/python-pyct-0.4.8-1.fc34.src.rpm

Description:

A utility package that includes:

 1. pyct.cmd: Makes various commands available to other packages. (Currently no
    sophisticated plugin system, just a try import/except in the other
    packages.) The same commands are available from within python. Can either
    add new subcommands to an existing argparse based command if the module has
    an existing command, or create the entire command if the module has no
    existing command. Currently, there are commands for copying examples and
    fetching data.

 2. pyct.build: Provides various commands to help package building, primarily
    as a convenience for project maintainers

Fedora Account System Username: music

COPR builds for all current releases: https://copr.fedorainfracloud.org/coprs/music/colorcet/build/2916422/

This package depends on python-param (https://bugzilla.redhat.com/show_bug.cgi?id=2018847). There are several ways to review it while that package is still under review. One of them looks like this:

1. Download the latest SRPM from https://bugzilla.redhat.com/show_bug.cgi?id=2018847.
2. mock -r fedora-rawhide-x86_64 --rebuild python-param-*.src.rpm
3. mkdir param
4. cp /var/lib/mock/fedora-rawhide-x86_64/result/*.noarch.rpm param/
5. fedora-review -b ${THIS_BUG_NUMBER} -L param

Comment 1 Ben Beasley 2021-11-01 17:29:33 UTC
For context, some reverse dependencies: https://www.wheelodex.org/projects/pyct/rdepends/

Comment 2 Zbigniew Jędrzejewski-Szmek 2021-11-22 10:22:45 UTC
> License:        BSD and (BSD and ISC)

You can simplify this to just "BSD". ISC is explicitly the same as BSD but with a few terms removed.
So to satisfy both BSD and ISC you need to satisfy exactly BSD. And the License field is the effective
license [https://fedoraproject.org/wiki/Licensing:FAQ#What_is_.22effective_license.22_and_do_I_need_to_know_that_for_the_License:_tag.3F].

> BuildRequires:  %{py3_dist pytest}
Nowadays we mostly write 'python3dist(pytest)'… 

+ package name is OK 
+ latest version
+ license is acceptable (effectively BSD-3-clause)
- license is specified correctly: see above
+ builds and installs OK
+ %check is present and passes
+ BR/R/P look OK

rpmlint:
python3-pyct.noarch: W: spelling-error %description -l en_US cmd -> cm, cad, cod
python3-pyct.noarch: W: spelling-error %description -l en_US subcommands -> sub commands, sub-commands, commands
Bogus.

python3-pyct.noarch: W: hidden-file-or-dir /usr/lib/python3.10/site-packages/pyct/.version
Upstream "design choice"

python3-pyct+build.noarch: W: spelling-error Summary(en_US) Metapackage -> Meta package, Meta-package, Prepackage
python3-pyct+build.noarch: W: spelling-error Summary(en_US) pyct -> pct, pact
python3-pyct+build.noarch: W: spelling-error %description -l en_US metapackage -> meta package, meta-package, prepackage
python3-pyct+build.noarch: W: spelling-error %description -l en_US pyct -> pct, pact
python3-pyct+cmd.noarch: W: spelling-error Summary(en_US) Metapackage -> Meta package, Meta-package, Prepackage
python3-pyct+cmd.noarch: W: spelling-error Summary(en_US) pyct -> pct, pact
python3-pyct+cmd.noarch: W: spelling-error Summary(en_US) cmd -> cm, cad, cod
python3-pyct+cmd.noarch: W: spelling-error %description -l en_US metapackage -> meta package, meta-package, prepackage
python3-pyct+cmd.noarch: W: spelling-error %description -l en_US cmd -> cm, cad, cod
python3-pyct+cmd.noarch: W: spelling-error %description -l en_US pyct -> pct, pact
python-pyct.src: W: spelling-error %description -l en_US cmd -> cm, cad, cod
python-pyct.src: W: spelling-error %description -l en_US subcommands -> sub commands, sub-commands, commands
I wish rpmlint would be smart enough to filter out the package name from spelling reports, alas.

python3-pyct+build.noarch: W: no-documentation
python3-pyct+cmd.noarch: W: no-documentation
python-pyct.src:55: W: unversioned-explicit-provides bundled(python3dist(clint))
python-pyct.src:130: W: macro-in-%changelog %autochangelog
4 packages and 0 specfiles checked; 0 errors, 19 warnings.
All bogus too.

Package is APPROVED. Please fix the License field when importing.

Comment 3 Ben Beasley 2021-11-22 13:25:47 UTC
Thanks for the review!

> Nowadays we mostly write 'python3dist(pytest)'… 

I do too, although styles vary widely in practice. I’ll change it for consistency with most of my other packages.

> You can simplify this to just "BSD". ISC is explicitly the same as BSD but with a few terms removed. So to satisfy both BSD and ISC you need to satisfy exactly BSD.

Hmm, interesting. I will correct the License field to the effective license of “BSD” as requested. I will retain the explanatory spec file comment and add a line describing the basis for simplification.

Comment 4 Gwyn Ciesla 2021-11-22 15:57:23 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/python-pyct

Comment 5 Fedora Update System 2021-11-23 13:08:16 UTC
FEDORA-2021-5998cdb069 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2021-5998cdb069

Comment 6 Fedora Update System 2021-11-23 13:11:33 UTC
FEDORA-2021-852f7cc378 has been submitted as an update to Fedora 34. https://bodhi.fedoraproject.org/updates/FEDORA-2021-852f7cc378

Comment 7 Fedora Update System 2021-11-24 01:56:33 UTC
FEDORA-2021-852f7cc378 has been pushed to the Fedora 34 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --advisory=FEDORA-2021-852f7cc378 \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-852f7cc378

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 8 Fedora Update System 2021-11-24 01:57:20 UTC
FEDORA-2021-5998cdb069 has been pushed to the Fedora 35 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --advisory=FEDORA-2021-5998cdb069 \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-5998cdb069

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 9 Fedora Update System 2021-12-02 01:14:56 UTC
FEDORA-2021-5998cdb069 has been pushed to the Fedora 35 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 10 Fedora Update System 2021-12-02 02:02:57 UTC
FEDORA-2021-852f7cc378 has been pushed to the Fedora 34 stable repository.
If problem still persists, please make note of it in this bug report.