Bug 1887248 - Review Request: python-pytest-mpi - Pytest plugin for running tests under MPI
Summary: Review Request: python-pytest-mpi - Pytest plugin for running tests under MPI
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Terje Røsten
QA Contact: Fedora Extras Quality Assurance
Depends On:
Blocks: 1893274
TreeView+ depends on / blocked
Reported: 2020-10-12 01:59 UTC by Orion Poplawski
Modified: 2020-11-01 21:55 UTC (History)
2 users (show)

Fixed In Version: python-pytest-mpi-0.4-2.fc34
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2020-11-01 21:55:07 UTC
Type: Bug
terjeros: fedora-review+

Attachments (Terms of Use)

Description Orion Poplawski 2020-10-12 01:59:51 UTC
Spec URL: https://www.cora.nwra.com/~orion/fedora/python-pytest-mpi.spec
SRPM URL: https://www.cora.nwra.com/~orion/fedora/python-pytest-mpi-0.4-1.fc34.src.rpm
ytest_mpi is a plugin for pytest providing some useful tools when running
tests under MPI, and testing MPI-related code.

Fedora Account System Username: orion

Needed for h5py 3.0.0

Comment 1 Terje Røsten 2020-10-31 17:03:04 UTC
Package seems to bundle python-versioneer:


could this be removed and add dep on:


The bundled file is also Public Domain not as BSD as the rest.

fedora-review says:

Package must not depend on deprecated() packages.
  Note: python3-pytest4 is deprecated, you must not depend on it.

but I can't see this is true, comment?

- Fix perm on 12.patch set it to 0644, not 0660.

-Fix URL:
URL:            https://pytest-mpi.readthedocs.io/en/latest/

[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed

- Package must not depend on deprecated() packages.
  Note: python3-pytest4 is deprecated, you must not depend on it.
  See: https://docs.fedoraproject.org/en-US/packaging-

===== MUST items =====

[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
[!]: License field in the package spec file matches the actual license.
[!]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package
[!]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Package is not known to require an ExcludeArch tag.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
[x]: If (and only if) the source package includes the text of the
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
    beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install DESTDIR=... doesn't
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local
[x]: Python eggs must not download any dependencies during the build
[x]: A package which is used by another package via an egg interface should
     provide egg info.
[x]: Package meets the Packaging Guidelines::Python
[x]: Package contains BR: python2-devel or python3-devel
[x]: Packages MUST NOT have dependencies (either build-time or runtime) on
     packages named with the unversioned python- prefix unless no properly
     versioned package exists. Dependencies on Python packages instead MUST
     use names beginning with python2- or python3- as appropriate.
[x]: Python packages must not contain %{pythonX_site(lib|arch)}/* in %files
[x]: Binary eggs must be removed in %prep

===== SHOULD items =====
===== SHOULD items =====

[-]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[!]: Final provides and requires are sane (see attachments).
[x]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Patches link to upstream bugs/comments/lists or are otherwise
[-]: Sources are verified with gpgverify first in %prep if upstream
     publishes signatures.
     Note: gpgverify is not used.
[x]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
[x]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: Spec file according to URL is the same as in SRPM.

Checking: python3-pytest-mpi-0.4-1.fc34.noarch.rpm
python-pytest-mpi.src: W: strange-permission 12.patch 660

Set perms to 644.

Rpmlint (installed packages)

Comment 2 Orion Poplawski 2020-11-01 17:29:31 UTC
Actually, it appears that the way versioneer is supposed to be used is you run "versioneer install" and commit the results to your repo.  I think that is what the included versioneer.py file is.  I also think since versioneer.py is not shipped it doesn't affect the license of pytest-mpi.

The pytest4 seems like more of a fedora review bug.  I can't find any reference to that in this code.

* Sun Nov  1 2020 Orion Poplawski <orion@nwra.com> - 0.4-2
- Change URL
- Fix permissions

Spec URL: https://www.cora.nwra.com/~orion/fedora/python-pytest-mpi.spec
SRPM URL: https://www.cora.nwra.com/~orion/fedora/python-pytest-mpi-0.4-2.fc34.src.rpm

Comment 3 Terje Røsten 2020-11-01 18:53:40 UTC
All fixed.

 Package is APPROVED.

Comment 4 Orion Poplawski 2020-11-01 19:03:12 UTC
Thanks for the review.

Repo requested: https://pagure.io/releng/fedora-scm-requests/issue/30189

Comment 5 Gwyn Ciesla 2020-11-01 20:37:45 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/python-pytest-mpi

Comment 6 Orion Poplawski 2020-11-01 21:55:07 UTC
Checked in and built.

Note You need to log in before you can comment on or make changes to this bug.