Bug 1892096 - Review Request: perl-Test-Some - CPAN distribution to run a subset of the tests
Summary: Review Request: perl-Test-Some - CPAN distribution to run a subset of the tests
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jitka Plesnikova
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-10-27 21:25 UTC by Shlomi Fish
Modified: 2020-11-12 10:46 UTC (History)
2 users (show)

Fixed In Version: perl-Test-Some-0.2.1-1.fc34
Clone Of:
Environment:
Last Closed: 2020-11-12 10:46:28 UTC
Type: ---
Embargoed:
jplesnik: fedora-review+


Attachments (Terms of Use)

Description Shlomi Fish 2020-10-27 21:25:12 UTC
Spec URL: https://www.shlomifish.org/Files/files/code/perl-Test-Some.spec
SRPM URL: https://www.shlomifish.org/Files/files/arcs/perl-Test-Some-0.2.1-1.fc33.src.rpm
Description: CPAN distribution to run a subset of the test assertions based on a selection query (by tags/etc.) ; By YANICK (who isn't me but is still an esteemed CPAN author); I plan on requiring it as a %check stage-dependency of the upcoming black-hole-solver stable release (which in turn is used by kpat and PySolFC), and if it goes well I may convert freecell-solver to use it too.
Fedora Account System Username: shlomif

Comment 1 Jitka Plesnikova 2020-11-02 13:09:57 UTC
Do you want to add the package to EPEL 6/7?

Comment 2 Shlomi Fish 2020-11-02 14:21:33 UTC
Hi Jitka!

(In reply to Jitka Plesnikova from comment #1)
> Do you want to add the package to EPEL 6/7?

I can add it there if it is required by policy/etc. If not, then I don't mind either way.

Comment 3 Jitka Plesnikova 2020-11-02 14:28:19 UTC
It is not needed. Only the old code can be removed.

Comment 4 Jitka Plesnikova 2020-11-02 15:11:29 UTC
Source file is ok
Summary is ok

License is ok
FIX: Move file LICENSE from %doc to %license
%license LICENSE

Description is almost ok
FIX: Please remove 'E.g.,' from end of description

URL and Source0 are ok
All tests passed

BuildRequires
FIX: Please add following build-requires.
     coreutils - needs for macro %{_fixperms}
     make -  needs for macros %{make_*}
FIX: Use 'perl(:VERSION) >= 5.10.0' instead of 'perl >= 5.010000' because
     the package has an epoch.

$ rpm -qp --requires perl-Test-Some-0.2.1-1.fc34.noarch.rpm | sort | uniq -c | grep -v rpmlib
      1 perl >= 5.010000
      1 perl(ExtUtils::MakeMaker)
      1 perl(File::Spec)
      1 perl-interpreter
      1 perl(IO::Handle)
      1 perl(IPC::Open3)
      1 perl(List::MoreUtils)
      1 perl(:MODULE_COMPAT_5.32.0)
      1 perl(Package::Stash)
      1 perl(Scalar::Util)
      1 perl(strict)
      1 perl(Test::More)
      1 perl(warnings)
FIX: Add build-requires 'perl-generators' to get correct list of run-time
     requires and provides. Then you can remove all 'Requires:' except
     MODULE_COMPAT.
     Lots of listed dependencies are used only for tests during the build.

$ rpm -qp --provides perl-Test-Some-0.2.1-1.fc34.noarch.rpm | sort | uniq -c
      1 perl-Test-Some = 0.2.1-1.fc34
FIX: 'perl(Test::Some) = 0.2.1' is missing. Using of perl-generators solve it.

$ rpmlint ./perl-Test-Some*
perl-Test-Some.noarch: W: spelling-error %description -l en_US subtest -> subtlest, sub test, sub-test
perl-Test-Some.noarch: W: spelling-error %description -l en_US whitelist -> white list, white-list, whistle
perl-Test-Some.noarch: W: spelling-error %description -l en_US subtests -> sub tests, sub-tests, subtexts
perl-Test-Some.src: W: spelling-error %description -l en_US subtest -> subtlest, sub test, sub-test
perl-Test-Some.src: W: spelling-error %description -l en_US whitelist -> white list, white-list, whistle
perl-Test-Some.src: W: spelling-error %description -l en_US subtests -> sub tests, sub-tests, subtexts
2 packages and 1 specfiles checked; 0 errors, 6 warnings.
Rpmlint is ok

FIX: Please remove the following old code which is not needed for Fedoras
     and EPEL 7/8
BuildRoot:  %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
rm -rf %{buildroot}
find %{buildroot} -depth -type d -exec rmdir {} 2>/dev/null ';'
%clean
rm -rf %{buildroot}
%defattr(-,root,root,-)

FIX: Remove options 'INSTALLVENDORLIB=/usr/share/perl5/vendor_perl INSTALLVENDORMAN3DIR=/usr/share/man/man3'
     from command 'perl Makefile.PL', they are not needed.

TODO: Use new %make_* macros and remove packlist by ExtUtils::MakeMaker's
      variable.
1) Add 
 NO_PERLLOCAL=1 NO_PACKLIST=1
to command
 perl Makefile.PL 
and remove
 find %{buildroot} -type f -name .packlist -exec rm -f {} ';'

2) Replace
 make %{?_smp_mflags}
by 
 %{make_build}

3) Replace
 make pure_install PERL_INSTALL_ROOT=%{buildroot}
by
 %{make_install}

Otherwise the package is in line with Fedora and Perl packaging guide lines.
Please correct all 'FIX' items, consider fixing 'TODO' items and provide a new spec file.

Resolution:
NOT approved

Comment 5 Shlomi Fish 2020-11-02 21:15:05 UTC
Jitka: thanks for the review and comments. I'll try to fix them in my copy soon. (I just didn't want to leave you hanging.)

Comment 6 Shlomi Fish 2020-11-03 10:59:19 UTC
(In reply to Shlomi Fish from comment #5)
> Jitka: thanks for the review and comments. I'll try to fix them in my copy
> soon. (I just didn't want to leave you hanging.)

Thanks again! The .spec and .src.rpm have been revised per your comments - same URLs:

https://www.shlomifish.org/Files/files/code/perl-Test-Some.spec

https://www.shlomifish.org/Files/files/arcs/perl-Test-Some-0.2.1-1.fc33.src.rpm

Comment 7 Jitka Plesnikova 2020-11-03 12:34:27 UTC
> FIX: Move file LICENSE from %doc to %license
> %license LICENSE
Done.

> Description is almost ok
> FIX: Please remove 'E.g.,' from end of description
Done.

> BuildRequires
> FIX: Please add following build-requires.
>      coreutils - needs for macro %{_fixperms}
>      make -  needs for macros %{make_*}
> FIX: Use 'perl(:VERSION) >= 5.10.0' instead of 'perl >= 5.010000' because
>      the package has an epoch.
Done.

> FIX: Add build-requires 'perl-generators' to get correct list of run-time
>      requires and provides. Then you can remove all 'Requires:' except
>      MODULE_COMPAT.
>      Lots of listed dependencies are used only for tests during the build.
$ rpm -qp --requires perl-Test-Some-0.2.1-1.fc34.noarch.rpm | sort | uniq -c | grep -v rpmlib
      1 perl-interpreter
      1 perl(List::MoreUtils)
      1 perl(:MODULE_COMPAT_5.32.0)
      1 perl(Package::Stash)
      1 perl(strict)
      1 perl(Test::More)
      1 perl(:VERSION) >= 5.10.0
      1 perl(warnings)
Binary requires are ok.

$ rpm -qp --provides perl-Test-Some-0.2.1-1.fc34.noarch.rpm | sort | uniq -c
      1 perl(Test::Some) = 0.2.1
      1 perl-Test-Some = 0.2.1-1.fc34
Binary provides are ok.

> FIX: Please remove the following old code which is not needed for Fedoras
>      and EPEL 7/8
Done.

> FIX: Remove options 'INSTALLVENDORLIB=/usr/share/perl5/vendor_perl
> INSTALLVENDORMAN3DIR=/usr/share/man/man3'
>      from command 'perl Makefile.PL', they are not needed.
Done.
 
> TODO: Use new %make_* macros and remove packlist by ExtUtils::MakeMaker's variable.
Done. 

FIX: Only add version constrain to 'ExtUtils::MakeMaker >= 6.76', NO_PACKLIST was added in this version.

FIX: Add missing test build-require 
     perl(blib) - Test-Some-0.2.1/t/00-compile.t:19


The package is in line with Fedora and Perl packaging guide lines.
Please correct all 'FIX' items.

Resolution:
Approved

Comment 8 Shlomi Fish 2020-11-03 16:43:22 UTC
Thanks, Jitka! The remaining "FIX" items should be fixed now.

Comment 9 Gwyn Ciesla 2020-11-09 15:37:38 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/perl-Test-Some


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