Bug 2277753

Summary: Review Request: perl-CPAN-Requirements-Dynamic - Dynamic prerequisites in meta files
Product: [Fedora] Fedora Reporter: Paul Howarth <paul>
Component: Package ReviewAssignee: Petr Pisar <ppisar>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: package-review, ppisar
Target Milestone: ---Flags: ppisar: 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: 2024-05-16 14:11:08 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:    
Bug Blocks: 2280645    

Description Paul Howarth 2024-04-29 12:19:56 UTC
Spec URL: http://subversion.city-fan.org/repos/cfo-repo/perl-CPAN-Requirements-Dynamic/branches/fedora/perl-CPAN-Requirements-Dynamic.spec

SRPM URL: http://www.city-fan.org/~paul/extras/perl-CPAN-Requirements-Dynamic/perl-CPAN-Requirements-Dynamic-0.001-2.fc41.src.rpm

Description: 
This module implements a format for describing dynamic prerequisites of a
distribution.

Fedora Account System Username: pghmcfc

This module is a new dependency of perl-Module-Build-Tiny.

Comment 1 Fedora Review Service 2024-04-29 12:19:58 UTC
Cannot find any valid SRPM URL for this ticket. Common causes are:

- You didn't specify `SRPM URL: ...` in the ticket description
  or any of your comments
- The URL schema isn't HTTP or HTTPS
- The SRPM package linked in your URL doesn't match the package name specified
  in the ticket summary


---
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.

Comment 2 Petr Pisar 2024-05-16 11:59:39 UTC
URL and Source0 addresses are Ok.
Source0 archive (SHA512: d4aba77f52f47c7399164762285e5c42e5eb4ffc5e7c13cf993e8c45975e9e96ac5d6db25817ab88dfa7ba0acdd69109b47dcf193c7cffe890044cfc660a951a) is original. Ok.
Summary verified from lib/CPAN/Requirements/Dynamic.pm. Ok.
Description verified from lib/CPAN/Requirements/Dynamic.pm. Ok.
TODO: Move the indefinite article to the same line as "distribution" word is in the description.

License verified in README, LICENSE, dist.ini, and lib/CPAN/Requirements/Dynamic.pm. Ok.
No XS code, noarch BuildArch is Ok.

TODO: Build-require 'perl(:VERSION) >= 5.6' (Makefile.PL:5).
TODO: Remove the '>= 0.88' constraint from 'perl(Test::More)' dependency. I think it's not needed.
FIX: Do not build-require 'perl(ExtUtils::HasCompiler)', 'perl(IPC::Cmd)', and 'perl(Perl::OSType)'. They are not used at tests.


All tests pass. Ok.

$ rpmlint perl-CPAN-Requirements-Dynamic.spec ../SRPMS/perl-CPAN-Requirements-Dynamic-0.001-2.fc41.src.rpm ../RPMS/noarch/perl-CPAN-Requirements-Dynamic-0.001-2.fc41.noarch.rpm 
======================================== 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: 3

=== 2 packages and 1 specfiles checked; 0 errors, 0 warnings, 6 filtered, 0 badness; has taken 0.3 s ==
rpmlint is Ok.

$ rpm -q -lv -p ../RPMS/noarch/perl-CPAN-Requirements-Dynamic-0.001-2.fc41.noarch.rpm 
drwxr-xr-x    2 root     root                        0 Apr 29 02:00 /usr/share/doc/perl-CPAN-Requirements-Dynamic
-rw-r--r--    1 root     root                      151 Apr 27 17:17 /usr/share/doc/perl-CPAN-Requirements-Dynamic/Changes
-rw-r--r--    1 root     root                      385 Apr 27 17:17 /usr/share/doc/perl-CPAN-Requirements-Dynamic/README
drwxr-xr-x    2 root     root                        0 Apr 29 02:00 /usr/share/licenses/perl-CPAN-Requirements-Dynamic
-rw-r--r--    1 root     root                    19744 Apr 27 17:17 /usr/share/licenses/perl-CPAN-Requirements-Dynamic/LICENSE
-rw-r--r--    1 root     root                     2878 Apr 29 02:00 /usr/share/man/man3/CPAN::Requirements::Dynamic.3pm.gz
drwxr-xr-x    2 root     root                        0 Apr 29 02:00 /usr/share/perl5/vendor_perl/CPAN
drwxr-xr-x    2 root     root                        0 Apr 29 02:00 /usr/share/perl5/vendor_perl/CPAN/Requirements
-rw-r--r--    1 root     root                     9674 Apr 27 17:17 /usr/share/perl5/vendor_perl/CPAN/Requirements/Dynamic.pm
File layout and permissions are Ok.

$ rpm -q --requires -p ../RPMS/noarch/perl-CPAN-Requirements-Dynamic-0.001-2.fc41.noarch.rpm | sort -f | uniq -c
      1 perl(Carp)
      1 perl(CPAN::Meta::Prereqs)
      1 perl(CPAN::Meta::Requirements::Range)
      1 perl(ExtUtils::Config)
      1 perl(ExtUtils::HasCompiler)
      1 perl(IPC::Cmd)
      1 perl(Module::Metadata)
      1 perl(Parse::CPAN::Meta)
      1 perl(Perl::OSType)
      1 perl(strict)
      1 perl(warnings)
      1 perl-libs
      1 rpmlib(CompressedFileNames) <= 3.0.4-1
      1 rpmlib(FileDigests) <= 4.6.0-1
      1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
      1 rpmlib(PayloadIsZstd) <= 5.4.18-1
Binary requires are Ok.

$ rpm -q --provides -p ../RPMS/noarch/perl-CPAN-Requirements-Dynamic-0.001-2.fc41.noarch.rpm | sort -f | uniq -c
      1 perl(CPAN::Requirements::Dynamic) = 0.001
      1 perl-CPAN-Requirements-Dynamic = 0.001-2.fc41
Binary provides are Ok.

$ resolvedeps rawhide ../RPMS/noarch/perl-CPAN-Requirements-Dynamic-0.001-2.fc41.noarch.rpm 
Binary dependencies are resolvable. Ok.

The package builds in Fedora 41 (https://koji.fedoraproject.org/koji/taskinfo?taskID=117747094). Ok.

Otherwise, the package is in line with Fedora and Perl packaging guidelines.
Please correct the FIX item and consider fixing the TODO items before building this package.
Resolution: Package APPROVED.

Comment 3 Paul Howarth 2024-05-16 12:36:11 UTC
Hi Petr, thanks for the review.

(In reply to Petr Pisar from comment #2)
> TODO: Move the indefinite article to the same line as "distribution" word is
> in the description.

OK, will do.

> TODO: Build-require 'perl(:VERSION) >= 5.6' (Makefile.PL:5).

OK, but how much value does it bring? Fedora Core 1 had perl 5.8 after all.

> TODO: Remove the '>= 0.88' constraint from 'perl(Test::More)' dependency. I
> think it's not needed.

It's there because t/basic.t uses "done_testing".

> FIX: Do not build-require 'perl(ExtUtils::HasCompiler)', 'perl(IPC::Cmd)',
> and 'perl(Perl::OSType)'. They are not used at tests.

True, but I prefer to keep them because they will be runtime dependencies anyway, and having them as build requirements helps to avoid nasty surprises when, for example, the perl packages are rebuilt for EPEL-10 and a freshly-built version of this package could be uninstallable if say perl-ExtUtils-HasCompiler) isn't already built.

> Otherwise, the package is in line with Fedora and Perl packaging guidelines.
> Please correct the FIX item and consider fixing the TODO items before
> building this package.
> Resolution: Package APPROVED.

Thanks again for the review.

Comment 4 Fedora Admin user for bugzilla script actions 2024-05-16 12:40:31 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/perl-CPAN-Requirements-Dynamic

Comment 5 Fedora Update System 2024-05-16 14:07:47 UTC
FEDORA-2024-fefbd086ef (perl-CPAN-Requirements-Dynamic-0.001-3.fc41) has been submitted as an update to Fedora 41.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-fefbd086ef

Comment 6 Fedora Update System 2024-05-16 14:11:08 UTC
FEDORA-2024-fefbd086ef (perl-CPAN-Requirements-Dynamic-0.001-3.fc41) has been pushed to the Fedora 41 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 7 Fedora Update System 2024-05-16 16:54:50 UTC
FEDORA-2024-0d2ddf4f29 (perl-CPAN-Requirements-Dynamic-0.001-3.fc40) has been submitted as an update to Fedora 40.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-0d2ddf4f29

Comment 8 Fedora Update System 2024-05-17 01:36:36 UTC
FEDORA-2024-e624e3b04d has been pushed to the Fedora 39 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-e624e3b04d \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-e624e3b04d

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

Comment 9 Fedora Update System 2024-05-17 02:09:42 UTC
FEDORA-2024-0d2ddf4f29 has been pushed to the Fedora 40 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-0d2ddf4f29 \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-0d2ddf4f29

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

Comment 10 Fedora Update System 2024-05-25 01:04:48 UTC
FEDORA-2024-0d2ddf4f29 (perl-CPAN-Requirements-Dynamic-0.001-3.fc40) has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 11 Fedora Update System 2024-05-25 01:11:22 UTC
FEDORA-2024-e624e3b04d (perl-CPAN-Requirements-Dynamic-0.001-3.fc39) has been pushed to the Fedora 39 stable repository.
If problem still persists, please make note of it in this bug report.