Bug 2011828

Summary: Review Request: perl-IO-Compress-Zstd - Write zstd files/buffers
Product: [Fedora] Fedora Reporter: Xavier Bachelot <xavier>
Component: Package ReviewAssignee: Jitka Plesnikova <jplesnik>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: jplesnik, package-review
Target Milestone: ---Flags: jplesnik: 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: 2021-11-25 00:58:59 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: 2011825    
Bug Blocks: 2011830    

Description Xavier Bachelot 2021-10-07 13:38:35 UTC
Spec URL: https://www.bachelot.org/fedora/SPECS/perl-IO-Compress-Zstd.spec
SRPM URL: https://www.bachelot.org/fedora/SRPMS/perl-IO-Compress-Zstd-2.101-1.fc35.src.rpm

Description: 
This module provides a Perl interface that allows writing zstd compressed
data to files or buffer.

Fedora Account System Username: xavierb

Comment 1 Jitka Plesnikova 2021-10-21 14:42:08 UTC
Do you want to add the package also to EPEL 7?

Comment 2 Xavier Bachelot 2021-10-21 14:54:38 UTC
Actually, I probably won't build neither IO::Compress::Zstd nor Compress::Stream::Zstd for EPEL 7, only Fedora and EL8. I need at least Archive::Zip::SimpleZip 0.025 and it needs IO::Compress::Base >= 2.081 and EL7 has only 2.061, which would push me back to Archive::Zip::SimpleZip 0.010 which is too old for my purpose.

Comment 3 Jitka Plesnikova 2021-11-11 12:52:20 UTC
Source file is ok
Summary is ok
License is ok
Description is ok
URL is ok

FIX: Please switch source from www.cpan.org to metacpan.org
     https://cpan.metacpan.org/modules/by-module/IO/IO-Compress-Zstd-%{version}.tar.gz

All tests passed
BuildRequires

FIX: Please add build-requires:
     coreutils - perl-IO-Compress-Zstd.spec (line 45)
     perl-interpreter - perl-IO-Compress-Zstd.spec (line 22,35)
     perl(Carp) - t/compress/CompTestUtils.pm:11
     perl(Compress::Raw::Zlib) - t/compress/merge.pl:9 [v2]
     perl(Compress::Stream::Zstd::Compressor) - lib/IO/Compress/Adapter/Zstd.pm:9
     perl(Compress::Stream::Zstd::Decompressor) - lib/IO/Uncompress/Adapter/UnZstd.pm:9
     perl(Config) - t/compress/oneshot.pl:116
     perl(Exporter) - lib/IO/Compress/Zstd.pm:5
     perl(File::Copy) - private/MakeUtil.pm:7
     perl(File::Path) - t/compress/CompTestUtils.pm:69
     perl(File::Spec) - t/050interop-zstd.t:13
     perl(IO::Compress::Base::Common) - lib/IO/Compress/Zstd.pm:10
     perl(IO::Compress::Zip) - t/105oneshot-zip-zstd.t:34
     perl(IO::Compress::Zip::Constants) - t/105oneshot-zip-zstd.t:36
     perl(IO::File) - t/compress/destroy.pl:22
     perl(IO::Handle) - t/compress/generic.pl:8
     perl(IO::Uncompress::AnyUncompress) - t/108anyunc-zstd.t:12
     perl(IO::Uncompress::Unzip) - t/105oneshot-zip-zstd.t:35
     perl(lib) - Makefile.PL:116
TODO: Add optional test build-require 'perl(Test::NoWarnings)'

$ rpm -qp --requires perl-IO-Compress-Zstd-2.101-1.fc36.noarch.rpm | sort | uniq -c | grep -v rpmlib
      1 perl(bytes)
      1 perl(Compress::Stream::Zstd)
      1 perl(Compress::Stream::Zstd::Compressor)
      1 perl(Compress::Stream::Zstd::Decompressor)
      1 perl(constant)
      1 perl(Exporter)
      1 perl(IO::Compress::Adapter::Zstd) >= 2.101
      1 perl(IO::Compress::Base) >= 2.101
      1 perl(IO::Compress::Base::Common) >= 2.101
      1 perl(IO::Uncompress::Adapter::UnZstd) >= 2.101
      1 perl(IO::Uncompress::Base) >= 2.101
      1 perl(:MODULE_COMPAT_5.34.0)
      1 perl(strict)
      1 perl(warnings)
Binary requires are Ok.

$ rpm -qp --provides perl-IO-Compress-Zstd-2.101-1.fc36.noarch.rpm | sort | uniq -c
      1 perl(IO::Compress::Adapter::Zstd) = 2.101
      1 perl(IO::Compress::Zstd) = 2.101
      1 perl-IO-Compress-Zstd = 2.101-1.fc36
      1 perl(IO::Uncompress::Adapter::UnZstd) = 2.101
      1 perl(IO::Uncompress::UnZstd) = 2.101
Binary provides are Ok.

$ rpmlint ./perl-IO-Compress-Zstd*
2 packages and 1 specfiles checked; 0 errors, 0 warnings.
Rpmlint is ok


If you don't add the package to EPEL 7, please consider fixing
these 'TODO' items:
TODO: Add "NO_PACKLIST=1 NO_PERLLOCAL=1" to 'perl Makefile.PL'
      If you use option NO_PACKLIST=1, please add version constrain
      to ExtUtils::MakeMaker >= 6.76
      Remove 'find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} \;'.
TODO: Use %{make_install} instead of "make pure_install".
TODO: Remove the deleting empty directories in %install section.

If you add it to EPEL 7, please do:
TODO: Replace PERL_INSTALL_ROOT with more common DESTDIR.
FIX:  Add following build-requires 'findutils' used in spec file.

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 4 Xavier Bachelot 2021-11-16 11:03:27 UTC
Thanks for the review.

I went with the no EPEL 7 route and I believe I have addressed all of the issues.
EPEL 8 will receive an older version, in order to fulfill the version requirement on IO::Compress::Base and IO::Uncompress::Base.

Spec URL: https://www.bachelot.org/fedora/SPECS/perl-IO-Compress-Zstd.spec
SRPM URL: https://www.bachelot.org/fedora/SRPMS/perl-IO-Compress-Zstd-2.101-2.fc36.src.rpm

Comment 5 Jitka Plesnikova 2021-11-16 14:21:14 UTC
> FIX: Please switch source from www.cpan.org to metacpan.org
Ok.

> BuildRequires
> FIX: Please add build-requires:
> TODO: Add optional test build-require 'perl(Test::NoWarnings)'
Ok. Ok.

> If you don't add the package to EPEL 7, please consider fixing
> these 'TODO' items:
> TODO: Add "NO_PACKLIST=1 NO_PERLLOCAL=1" to 'perl Makefile.PL'
>       If you use option NO_PACKLIST=1, please add version constrain
>       to ExtUtils::MakeMaker >= 6.76
>       Remove 'find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {}
> \;'.
Ok.

> TODO: Use %{make_install} instead of "make pure_install".
Ok.

> TODO: Remove the deleting empty directories in %install section.
Ok

The package is in line with Fedora and Perl packaging guide lines.

Resolution:
Approved

Comment 6 Gwyn Ciesla 2021-11-16 18:45:46 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/perl-IO-Compress-Zstd

Comment 7 Fedora Update System 2021-11-16 22:49:34 UTC
FEDORA-2021-c89259807f has been submitted as an update to Fedora 34. https://bodhi.fedoraproject.org/updates/FEDORA-2021-c89259807f

Comment 8 Fedora Update System 2021-11-16 22:49:35 UTC
FEDORA-2021-47cf878d89 has been submitted as an update to Fedora 33. https://bodhi.fedoraproject.org/updates/FEDORA-2021-47cf878d89

Comment 9 Fedora Update System 2021-11-16 22:49:35 UTC
FEDORA-2021-c9e94ecb8c has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2021-c9e94ecb8c

Comment 10 Fedora Update System 2021-11-17 01:06:05 UTC
FEDORA-2021-47cf878d89 has been pushed to the Fedora 33 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --advisory=FEDORA-2021-47cf878d89 \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-47cf878d89

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

Comment 11 Fedora Update System 2021-11-17 15:08:58 UTC
FEDORA-2021-c89259807f has been pushed to the Fedora 34 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --advisory=FEDORA-2021-c89259807f \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-c89259807f

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

Comment 12 Fedora Update System 2021-11-17 16:10:19 UTC
FEDORA-2021-c9e94ecb8c has been pushed to the Fedora 35 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf install --enablerepo=updates-testing --advisory=FEDORA-2021-c9e94ecb8c \*`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-c9e94ecb8c

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

Comment 13 Fedora Update System 2021-11-25 00:58:59 UTC
FEDORA-2021-c89259807f has been pushed to the Fedora 34 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 14 Fedora Update System 2021-11-25 01:04:29 UTC
FEDORA-2021-c9e94ecb8c has been pushed to the Fedora 35 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 15 Fedora Update System 2021-11-25 01:05:21 UTC
FEDORA-2021-47cf878d89 has been pushed to the Fedora 33 stable repository.
If problem still persists, please make note of it in this bug report.