Bug 2254915 - Review Request: perl-Filter-signatures - Very simplistic signatures for Perl < 5.20
Summary: Review Request: perl-Filter-signatures - Very simplistic signatures for Perl ...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Petr Pisar
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 2254933
TreeView+ depends on / blocked
 
Reported: 2023-12-17 22:38 UTC by Chris Adams
Modified: 2024-03-23 00:34 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2024-03-21 01:13:05 UTC
Type: ---
Embargoed:
ppisar: fedora-review+


Attachments (Terms of Use)

Description Chris Adams 2023-12-17 22:38:23 UTC
Spec URL: https://cmadams.fedorapeople.org/perl-Filter-signatures/perl-Filter-signatures.spec
SRPM URL: https://cmadams.fedorapeople.org/perl-Filter-signatures/perl-Filter-signatures-0.19-1.fc39.src.rpm
Description:
This module implements a backwards compatibility shim for formal Perl
subroutine signatures that were introduced to the Perl core with Perl 5.20.

Fedora Account System Username: cmadams

Comment 3 Petr Pisar 2024-03-01 14:32:09 UTC
URL and Source0 addresses are Ok.
Source0 archive (SHA512 c3edc8ea4438ea9c610d813650efc1053089f4be9199cf45f6fece541c5fd77d6f99e273d9cdb210fc10c5aeb1f12338152c559cc8cbe052807d5d6fff787ff4) is original. Ok.
Summary verified in lib/Filter/signatures.pm. Ok.
Description verified in lib/Filter/signatures.pm. Ok.
License verified in Makefile.PL, README.mkdn, lib/Filter/signatures.pm, README. Ok.

Other licenses found:

LICENSE: Artistic-2.0 text

TODO: Ask upstream to replace the LICENSE file with Artistic-1.0-Perl text <https://dev.perl.org/licenses/artistic.html>. The current LICENSE carries a different license.

No XS code, noarch BuildArch is Ok.

TODO: Build-require 'perl(:VERSION) >= 5.6' (Makefile.PL:43).
TODO: Unset FORCE_FILTER_SIGNATURES environment variable in %check section. A code flow of the tested library depends on it.

FIX: List packaged files more explicitly <https://docs.fedoraproject.org/en-US/packaging-guidelines/#_explicit_lists>.

All tests pass. Ok.

$ rpmlint perl-Filter-signatures.spec ../SRPMS/perl-Filter-signatures-0.19-3.fc41.src.rpm ../RPMS/noarch/perl-Filter-signatures-0.19-3.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-Filter-signatures-0.19-3.fc41.noarch.rpm
drwxr-xr-x    2 root     root                        0 Feb  1 01:00 /usr/share/doc/perl-Filter-signatures
-rw-r--r--    1 root     root                     4287 Jul 22  2023 /usr/share/doc/perl-Filter-signatures/Changes
-rw-r--r--    1 root     root                     1887 Jul 22  2023 /usr/share/doc/perl-Filter-signatures/README
drwxr-xr-x    2 root     root                        0 Feb  1 01:00 /usr/share/licenses/perl-Filter-signatures
-rw-r--r--    1 root     root                     8893 Jul 22  2023 /usr/share/licenses/perl-Filter-signatures/LICENSE
-rw-r--r--    1 root     root                     3673 Feb  1 01:00 /usr/share/man/man3/Filter::signatures.3pm.gz
drwxr-xr-x    2 root     root                        0 Feb  1 01:00 /usr/share/perl5/vendor_perl/Filter
-rw-r--r--    1 root     root                    15678 Jul 22  2023 /usr/share/perl5/vendor_perl/Filter/signatures.pm
File layout and permissions are Ok.

$ rpm -q --requires -p ../RPMS/noarch/perl-Filter-signatures-0.19-3.fc41.noarch.rpm | sort -f | uniq -c
      1 perl(feature)
      1 perl(Filter::Simple)
      1 perl(strict)
      1 perl(warnings)
      1 perl(warnings::register)
      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
TODO: Constrain 'perl(Filter::Simple)' with '>= 0.91' (Makefile.PL:53).

$ rpm -q --provides -p ../RPMS/noarch/perl-Filter-signatures-0.19-3.fc41.noarch.rpm | sort -f | uniq -c
      1 perl(Filter::signatures) = 0.19
      1 perl-Filter-signatures = 0.19-3.fc41
Binary provides are Ok.

$ resolvedeps rawhide ../RPMS/noarch/perl-Filter-signatures-0.19-3.fc41.noarch.rpm 
Binary dependencies are resolvable. Ok.

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

Otherwise the package in line with Fedora and Perl packaging guidelines.
Please consider fixing TODO items, correct the FIX item and provide a new spec file.

Comment 4 Chris Adams 2024-03-08 16:25:27 UTC
I've submitted an upstream bug to clarify the license intention. https://github.com/Corion/filter-signatures/issues/4

Can you clarify "Unset FORCE_FILTER_SIGNATURES environment variable in %check section"? It is not set in the spec; it's forced on in a couple of the tests, which I presume is intentional for those two test (so I shouldn't override it).

Comment 5 Petr Pisar 2024-03-11 09:25:02 UTC
The environment variable is used in the library at lib/Filter/signatures.pm:386. Hence if people run "rpmbuild" with that variable set in their environment, the tests which do not override the variable could observe a different bahavior and could fail. To prevent from it it's safer to unset the variable in %check section before executing the tests.

Comment 6 Chris Adams 2024-03-11 16:33:15 UTC
Ahh, now I understand (been building all my packages in mock for so long I didn't think about local environments). Thanks for your patience and explanation.

Bumped release for additional spec file cleanups:
Spec URL: https://cmadams.fedorapeople.org/perl-Filter-signatures/perl-Filter-signatures.spec
SRPM URL: https://cmadams.fedorapeople.org/perl-Filter-signatures/perl-Filter-signatures-0.19-4.fc39.src.rpm

Comment 7 Petr Pisar 2024-03-12 09:40:45 UTC
Differences in the spec file:

--- perl-Filter-signatures.spec.old     2024-02-01 01:00:00.000000000 +0100
+++ perl-Filter-signatures.spec 2024-03-11 17:32:52.000000000 +0100
@@ -1,12 +1,15 @@
 Name:           perl-Filter-signatures
 Version:        0.19
-Release:        3%{?dist}
+Release:        4%{?dist}
 Summary:        Very simplistic signatures for Perl < 5.20
 License:        GPL-1.0-or-later OR Artistic-1.0-Perl
 URL:            https://metacpan.org/dist/Filter-signatures/
 Source0:        https://cpan.metacpan.org/authors/id/C/CO/CORION/Filter-signatures-%{version}.tar.gz
 BuildArch:      noarch
 BuildRequires:  make perl-interpreter perl-generators coreutils
+BuildRequires:  perl(:VERSION) >= 5.6
+# needed for TAP::Harness
+BuildRequires:  perl(CPAN::Meta::YAML)
 BuildRequires:  perl(Data::Dumper)
 BuildRequires:  perl(ExtUtils::MakeMaker) >= 6.76
 BuildRequires:  perl(Filter::Simple) >= 0.91
@@ -39,15 +42,22 @@
 %{_fixperms} %{buildroot}/*
 
 %check
+# make sure tests run correctly
+unset FORCE_FILTER_SIGNATURES
 make test
 
 %files
 %doc Changes README
-%license LICENSE
-%{perl_vendorlib}/*
-%{_mandir}/man3/*
+# note: files all say perl_5 which is GPLv1/Artistic but file is Artistic-2
+# https://github.com/Corion/filter-signatures/issues/4
+#%license LICENSE
+%{perl_vendorlib}/Filter
+%{_mandir}/man3/Filter::signatures*
 
 %changelog
+* Mon Mar 11 2024 Chris Adams <linux> 0.19-4
+- additional spec file cleanups
+
 * Thu Feb 01 2024 Chris Adams <linux> 0.19-3
 - additional spec file cleanups

$ rpmlint perl-Filter-signatures.spec ../SRPMS/perl-Filter-signatures-0.19-4.fc41.src.rpm ../RPMS/noarch/perl-Filter-signatures-0.19-4.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

perl-Filter-signatures.spec:53: W: macro-in-comment %license
perl-Filter-signatures.spec:53: W: macro-in-comment %license
=== 2 packages and 1 specfiles checked; 0 errors, 2 warnings, 6 filtered, 0 badness; has taken 0.4 s ==

FIX: Escape the per-cent character at "%license" in the comment.

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

Please correct the FIX item before building this package.
The package is APPROVED.

Comment 8 Fedora Admin user for bugzilla script actions 2024-03-12 11:59:55 UTC
The Pagure repository was created at https://src.fedoraproject.org/rpms/perl-Filter-signatures

Comment 9 Fedora Update System 2024-03-12 12:33:32 UTC
FEDORA-2024-876963042d (perl-Filter-signatures-0.19-4.fc39) has been submitted as an update to Fedora 39.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-876963042d

Comment 10 Fedora Update System 2024-03-12 12:42:47 UTC
FEDORA-2024-4d2400fc3c (perl-Filter-signatures-0.19-4.fc40) has been submitted as an update to Fedora 40.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-4d2400fc3c

Comment 11 Fedora Update System 2024-03-12 20:54:45 UTC
FEDORA-2024-4d2400fc3c 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-4d2400fc3c \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-4d2400fc3c

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

Comment 12 Fedora Update System 2024-03-13 02:11:31 UTC
FEDORA-2024-876963042d 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-876963042d \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-876963042d

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

Comment 13 Fedora Update System 2024-03-21 01:13:05 UTC
FEDORA-2024-876963042d (perl-Filter-signatures-0.19-4.fc39) has been pushed to the Fedora 39 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 14 Fedora Update System 2024-03-23 00:34:51 UTC
FEDORA-2024-4d2400fc3c (perl-Filter-signatures-0.19-4.fc40) has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.


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