Bug 2252615
| Summary: | Review Request: python-menuinst - Cross platform menu item installation | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Orion Poplawski <orion> | ||||
| Component: | Package Review | Assignee: | Jerry James <loganjerry> | ||||
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
| Severity: | medium | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | rawhide | CC: | loganjerry, package-review | ||||
| Target Milestone: | --- | Flags: | loganjerry:
fedora-review+
|
||||
| Target Release: | --- | ||||||
| Hardware: | All | ||||||
| OS: | Linux | ||||||
| URL: | https://github.com/conda/menuinst | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | python-menuinst-2.0.0-1.fc40 | Doc Type: | If docs needed, set a value | ||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2023-12-05 20:10:28 UTC | Type: | Bug | ||||
| 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: | |||||||
| Bug Blocks: | 2025802 | ||||||
| Attachments: |
|
||||||
|
Description
Orion Poplawski
2023-12-03 02:16:46 UTC
Copr build: https://copr.fedorainfracloud.org/coprs/build/6717563 (succeeded) Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2252615-python-menuinst/fedora-rawhide-x86_64/06717563-python-menuinst/fedora-review/review.txt Found issues: - License file LICENSE is not marked as %license Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuidelines/#_license_text Please know that there can be false-positives. --- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string. I will take this review. Package Review
==============
Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
Issues:
=======
- The python3-apipkg package is bundled; see menuinst/_vendor/apipkg. Can it
be unbundled? If not, then:
- its license (MIT) should be added to the License field
- its license file (menuinst/_vendor/apipkg/LICENSE) should be installed
- the main package should add "Provides: bundled(python3-apipkg) = 3.0.1"
- menuinst/platforms/win_utils/knownfolders.py carries an MIT license, and is
included in the binary RPM, so MIT must be added to the License field in any
case
- Please consider using %autorelease and %autochangelog. (This is a suggestion
only, not a requirement.)
===== MUST items =====
Generic:
[x]: Package is licensed with an open-source compatible license and meets
other legal requirements as defined in the legal section of Packaging
Guidelines.
[!]: License field in the package spec file matches the actual license.
Note: Checking patched sources after %prep for licenses. Licenses
found: "Unknown or generated", "BSD 3-Clause License", "*No copyright*
BSD 3-Clause License", "*No copyright* MIT License", "MIT License". 99
files have unknown license.
See Issues above.
[!]: Package contains no bundled libraries without FPC exception.
See Issues above.
[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 (instead of hard-coded directory
names).
[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, proper Obsoletes and
Provides are present.
[x]: 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
one supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
Note: No rpmlint messages.
[x]: The License field must be a valid SPDX expression.
[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 must not depend on deprecated() packages.
[x]: Package use %makeinstall only when make install DESTDIR=... doesn't
work.
[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
%{name}.spec.
[x]: File names are valid UTF-8.
[x]: Large documentation must go in a -doc subpackage. Large could be size
(~1MB) or number of files.
Note: Documentation size is 2837 bytes in 1 files.
[x]: Packages must not store files under /srv, /opt or /usr/local
Python:
[x]: Binary eggs must be removed in %prep
[x]: Python eggs must not download any dependencies during the build
process.
[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
===== SHOULD items =====
Generic:
[-]: If the source package does not include license text(s) as a separate
file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[-]: Sources are verified with gpgverify first in %prep if upstream
publishes signatures.
Note: gpgverify is not used.
[x]: Package should compile and build into binary rpms on all supported
architectures.
[!]: %check is present and all tests pass.
%check is present, but the tests do not pass. The spec file contains a
note about this.
[x]: Packages should try to preserve timestamps of original installed
files.
[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
$RPM_BUILD_ROOT)
[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 =====
Generic:
[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.
Rpmlint
-------
Checking: python3-menuinst-2.0.0-1.fc40.noarch.rpm
python-menuinst-2.0.0-1.fc40.src.rpm
================================================ rpmlint session starts ================================================
rpmlint: 2.4.0
configuration:
/usr/lib/python3.12/site-packages/rpmlint/configdefaults.toml
/etc/xdg/rpmlint/fedora-legacy-licenses.toml
/etc/xdg/rpmlint/fedora-spdx-licenses.toml
/etc/xdg/rpmlint/fedora.toml
/etc/xdg/rpmlint/scoring.toml
/etc/xdg/rpmlint/users-groups.toml
/etc/xdg/rpmlint/warn-on-functions.toml
rpmlintrc: [PosixPath('/tmp/tmp54l0zctc')]
checks: 31, packages: 2
================= 2 packages and 0 specfiles checked; 0 errors, 0 warnings, 0 badness; has taken 0.5 s =================
Rpmlint (installed packages)
----------------------------
============================ rpmlint session starts ============================
rpmlint: 2.5.0
configuration:
/usr/lib/python3.12/site-packages/rpmlint/configdefaults.toml
/etc/xdg/rpmlint/fedora-legacy-licenses.toml
/etc/xdg/rpmlint/fedora-spdx-licenses.toml
/etc/xdg/rpmlint/fedora.toml
/etc/xdg/rpmlint/scoring.toml
/etc/xdg/rpmlint/users-groups.toml
/etc/xdg/rpmlint/warn-on-functions.toml
checks: 32, packages: 1
python3-menuinst.noarch: E: spelling-error ('conda', '%description -l en_US conda -> coda, condo, conga')
python3-menuinst.noarch: E: spelling-error ('lnk', '%description -l en_US lnk -> link, lank, ink')
python3-menuinst.noarch: E: spelling-error ('macOS', '%description -l en_US macOS -> ma Cos, mac OS, mac-OS')
1 packages and 0 specfiles checked; 3 errors, 0 warnings, 3 filtered, 3 badness; has taken 0.1 s
Source checksums
----------------
https://github.com/conda/menuinst/archive/2.0.0/menuinst-2.0.0.tar.gz :
CHECKSUM(SHA256) this package : 0ca844379c0d904cc1879f574c4d4320e89290e63e2f61e2996aebdd579d539e
CHECKSUM(SHA256) upstream package : 0ca844379c0d904cc1879f574c4d4320e89290e63e2f61e2996aebdd579d539e
Requires
--------
python3-menuinst (rpmlib, GLIBC filtered):
python(abi)
Provides
--------
python3-menuinst:
python-menuinst
python3-menuinst
python3.12-menuinst
python3.12dist(menuinst)
python3dist(menuinst)
Generated by fedora-review 0.10.0 (e79b66b) last change: 2023-07-24
Command line :/usr/bin/fedora-review -b 2252615 -m fedora-rawhide-x86_64
Buildroot used: fedora-rawhide-x86_64
Active plugins: Python, Shell-api, Generic
Disabled plugins: Haskell, C/C++, PHP, fonts, Java, R, Ocaml, Perl, SugarActivity, Ruby
Disabled flags: EXARCH, EPEL6, EPEL7, DISTTAG, BATCH
(In reply to Jerry James from comment #3) > Issues: > ======= > - The python3-apipkg package is bundled; see menuinst/_vendor/apipkg. Can it > be unbundled? If not, then: > - its license (MIT) should be added to the License field > - its license file (menuinst/_vendor/apipkg/LICENSE) should be installed > - the main package should add "Provides: bundled(python3-apipkg) = 3.0.1" apipkg is only needed on Windows so I've simply removed it. > - menuinst/platforms/win_utils/knownfolders.py carries an MIT license, and is > included in the binary RPM, so MIT must be added to the License field in > any > case Likewise not needed, so removed. > > - Please consider using %autorelease and %autochangelog. (This is a > suggestion > only, not a requirement.) Done :) Spec URL: https://orion.fedorapeople.org/python-menuinst.spec SRPM URL: https://orion.fedorapeople.org/python-menuinst-2.0.0-1.fc40.src.rpm Created attachment 2002803 [details]
The .spec file difference from Copr build 6717563 to 6725548
Copr build: https://copr.fedorainfracloud.org/coprs/build/6725548 (succeeded) Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2252615-python-menuinst/fedora-rawhide-x86_64/06725548-python-menuinst/fedora-review/review.txt Please take a look if any issues were found. --- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string. Looks good. This package is APPROVED. The Pagure repository was created at https://src.fedoraproject.org/rpms/python-menuinst Thank you for the review. Checked in and built. |