Bug 656084 - Review Request: perl-CDB_File - Perl extension for access to cdb databases
Review Request: perl-CDB_File - Perl extension for access to cdb databases
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Petr Pisar
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2010-11-22 21:12 EST by Mark McKinstry
Modified: 2014-10-28 07:00 EDT (History)
3 users (show)

See Also:
Fixed In Version: perl-CDB_File-0.97-7.el7
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2011-02-04 13:27:04 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
ppisar: fedora‑review+
limburgher: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description Mark McKinstry 2010-11-22 21:12:29 EST
Spec URL: http://mmckinst.nexcess.net/perl-CDB_File/perl-CDB_File.spec
SRPM URL: http://mmckinst.nexcess.net/perl-CDB_File/perl-CDB_File-0.96-1.fc14.src.rpm
Description: CDB_File is a module which provides a Perl interface to Dan Berstein's
cdb package. cdb is a fast, reliable, lightweight package for creating and 
reading constant databases.


$ rpmlint RPMS/x86_64/perl-CDB_File-0.96-1.fc14.x86_64.rpm 
perl-CDB_File.x86_64: W: spelling-error Summary(en_US) cdb -> cd, db, cab
perl-CDB_File.x86_64: W: spelling-error %description -l en_US cdb -> cd, db, cab
1 packages and 0 specfiles checked; 0 errors, 2 warnings.

$ rpmlint SRPMS/perl-CDB_File-0.96-1.fc14.src.rpm 
perl-CDB_File.src: W: spelling-error Summary(en_US) cdb -> cd, db, cab
perl-CDB_File.src: W: spelling-error %description -l en_US cdb -> cd, db, cab
1 packages and 0 specfiles checked; 0 errors, 2 warnings.
Comment 1 Petr Pisar 2010-11-25 08:04:58 EST
Source tar ball is original. Ok.
Summary verified from CDB_File.pm. Ok.
License verified from COPYRIGHT. Ok.
Description verified from CDB_File.pm. Ok.

FIX: BuildRequire perl(Exporter) as it can dual-live in the future (CDB_File.pm:8, http://search.cpan.org/~ferreira/Exporter/)
FIX: BuildRequire perl(Test) as it can dual-live in the future (t/01main.t:2, http://search.cpan.org/~jesse/Test/)

All tests pass. Ok.

$ rpmlint perl-CDB_File.spec ../SRPMS/perl-CDB_File-0.96-1.fc14.src.rpm ../RPMS/x86_64/perl-CDB_File-*
perl-CDB_File.src: W: spelling-error Summary(en_US) cdb -> cd, db, cab
perl-CDB_File.src: W: spelling-error %description -l en_US cdb -> cd, db, cab
perl-CDB_File.x86_64: W: spelling-error Summary(en_US) cdb -> cd, db, cab
perl-CDB_File.x86_64: W: spelling-error %description -l en_US cdb -> cd, db, cab
3 packages and 1 specfiles checked; 0 errors, 4 warnings.

rpmlint Ok.

$ rpm -pqlv ../RPMS/x86_64/perl-CDB_File-0.96-1.fc14.x86_64.rpm 
-rw-r--r--    1 root    root                    10339 bře 21  2008 /usr/lib64/perl5/CDB_File.pm
drwxr-xr-x    2 root    root                        0 lis 25 13:45 /usr/lib64/perl5/auto/CDB_File
-rwxr-xr-x    1 root    root                    33224 lis 25 13:45 /usr/lib64/perl5/auto/CDB_File/CDB_File.so
-rwxr-xr-x    1 root    root                     1062 pro  5  2002 /usr/lib64/perl5/bun-x.pl
drwxr-xr-x    2 root    root                        0 lis 25 13:45 /usr/share/doc/perl-CDB_File-0.96
-rw-r--r--    1 root    root                      988 pro  5  2002 /usr/share/doc/perl-CDB_File-0.96/ACKNOWLEDGE
-rw-r--r--    1 root    root                     3096 bře 21  2008 /usr/share/doc/perl-CDB_File-0.96/CHANGES
-rw-r--r--    1 root    root                      131 pro  5  2002 /usr/share/doc/perl-CDB_File-0.96/COPYRIGHT
-rw-r--r--    1 root    root                      340 dub  2  2003 /usr/share/doc/perl-CDB_File-0.96/README
-rw-r--r--    1 root    root                     5868 lis 25 13:45 /usr/share/man/man3/CDB_File.3pm.gz

File permissions and layout Ok.

$ rpm -pq --requires ../RPMS/x86_64/perl-CDB_File-0.96-1.fc14.x86_64.rpm | sort | uniq -c
      1 libc.so.6(GLIBC_2.2.5)(64bit)  
      1 libc.so.6(GLIBC_2.4)(64bit)  
      1 libc.so.6()(64bit)  
      1 perl(Carp)  
      1 perl(CDB_File)  
      1 perl(DynaLoader)  
      1 perl(Exporter)  
      1 perl(:MODULE_COMPAT_5.12.2)  
      1 perl(strict)  
      1 perl(vars)  
      1 rpmlib(CompressedFileNames) <= 3.0.4-1
      1 rpmlib(FileDigests) <= 4.6.0-1
      1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
      1 rpmlib(PayloadIsXz) <= 5.2-1
      2 rpmlib(VersionedDependencies) <= 3.0.3-1
      1 rtld(GNU_HASH)  
      1 /usr/bin/perl  

$ rpm -pq --provides ../RPMS/x86_64/perl-CDB_File-0.96-1.fc14.x86_64.rpm | sort | uniq -c
      1 perl-CDB_File(x86-64) = 0.96-1.fc14
      1 perl(CDB_File) = 0.96
      1 perl-CDB_File = 0.96-1.fc14

$ resolvedeps-f15 ../RPMS/x86_64/perl-CDB_File-*
Binary dependencies Ok.

Otherwise, package is in line with Fedora and perl packaging guidelines.

Package ??? builds in F-15 (http://koji.fedoraproject.org/koji/taskinfo?taskID=2625737). ???


Please correct all `FIX' prefixed issues and provide new spec file.
Resolution: Package NOT approved.
Comment 2 Petr Pisar 2010-11-25 08:07:30 EST
Package builds in F-15
(http://koji.fedoraproject.org/koji/taskinfo?taskID=2625737). Ok.
Comment 3 Mark McKinstry 2010-11-27 19:55:11 EST
Petr,

Thank you for the review.

> FIX: BuildRequire perl(Exporter) as it can dual-live in the future
> (CDB_File.pm:8, http://search.cpan.org/~ferreira/Exporter/)
> FIX: BuildRequire perl(Test) as it can dual-live in the future (t/01main.t:2,
> http://search.cpan.org/~jesse/Test/)

Done.

Spec: http://mmckinst.nexcess.net/perl-CDB_File/perl-CDB_File.spec
SRPM: http://mmckinst.nexcess.net/perl-CDB_File/perl-CDB_File-0.96-2.fc14.src.rpm
Scratch: http://koji.fedoraproject.org/koji/taskinfo?taskID=2630358

Can you explain what exactly dual-live means and how you figured out perl(Test) 
and perl(Exporter) needed to be BuildRequires?
Comment 4 Petr Pisar 2010-11-29 04:21:56 EST
Spec file changes:

--- perl-CDB_File.spec	2010-11-23 03:00:08.000000000 +0100
+++ perl-CDB_File.spec.1	2010-11-28 01:28:38.000000000 +0100
@@ -2,7 +2,7 @@
 
 Name:           perl-CDB_File
 Version:        0.96
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        Perl extension for access to cdb databases
 License:        GPL+ or Artistic
 Group:          Development/Libraries
@@ -10,6 +10,8 @@
 Source0:        http://www.cpan.org/authors/id/M/MS/MSERGEANT/CDB_File-%{version}.tar.gz
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 BuildRequires:  perl(ExtUtils::MakeMaker)
+BuildRequires:	perl(Exporter)
+BuildRequires:	perl(Test)
 Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
 
 %description
@@ -50,5 +52,7 @@
 %{_mandir}/man3/*
 
 %changelog
+* Sat Nov 27 2010 Mark McKinstry <mmckinst@nexcess.net> 0.96-2
+- add perl(Exporter) and perl(Test) as build requirements
 * Mon Nov 22 2010 Mark McKinstry <mmckinst@nexcess.net> 0.96-1
 - Initial packaging using cpanspec 1.78.


(In reply to comment #3)
> > FIX: BuildRequire perl(Exporter) as it can dual-live in the future
> > (CDB_File.pm:8, http://search.cpan.org/~ferreira/Exporter/)
> > FIX: BuildRequire perl(Test) as it can dual-live in the future (t/01main.t:2,
> > http://search.cpan.org/~jesse/Test/)
> 
> Done.
>
Ok.


$ rpmlint perl-CDB_File.spec ../SRPMS/perl-CDB_File-0.96-2.fc14.src.rpm ../RPMS/x86_64/perl-CDB_File-0.96-2.fc14.x86_64.rpm 
perl-CDB_File.spec:13: W: mixed-use-of-spaces-and-tabs (spaces: line 3, tab: line 13)
perl-CDB_File.src: W: spelling-error Summary(en_US) cdb -> cd, db, cab
perl-CDB_File.src: W: spelling-error %description -l en_US cdb -> cd, db, cab
perl-CDB_File.src:13: W: mixed-use-of-spaces-and-tabs (spaces: line 3, tab: line 13)
perl-CDB_File.x86_64: W: spelling-error Summary(en_US) cdb -> cd, db, cab
perl-CDB_File.x86_64: W: spelling-error %description -l en_US cdb -> cd, db, cab
2 packages and 1 specfiles checked; 0 errors, 6 warnings.

TODO: Normalize white spaces in the spec file.
rpmlint Ok.

Package builds in F15 (http://koji.fedoraproject.org/koji/taskinfo?taskID=2631600). Ok.


Please consider to correct all `TODO' prefixed issues once committing the package into repository.
Resolution: Package APPROVED.

 
> Can you explain what exactly dual-live means
Dual-lived package means a binary package is built from two SPEC files. Resulting binary packages have the same name (but differs in version) and package utilities (like yum) do not make differences between them.

In perl, we use this approach to upgrade perl modules that come bundled with perl sources. Once user do an update, he needs to download and update only the one package. If we patched the main perl source package, it would change release number of all binary packages made from perl.spec and it would force everybody in update all the resulting binary packages (it counts in tens).

Currently, not all modules bundled with perl have separate binary package, however we try to migrate to this schema as we are upgrading the modules.

Bundled perl packages can be identified by searching CPAN. If there is standalone module name it can be separated into dual-lived RPM package some time. If CPAN points back to `perl' module, the perl module is not just bundled, it's part of perl interpreter sources. I pointed this fact by the URL in parentheses of my comments.

> and how you figured out
> perl(Test) and perl(Exporter) needed to be BuildRequires?

I just greped sources for `use' and `require' keywords. Exact location is the first part inside parentheses of my comments.

I know the cpanspec utility is not aware of it and does not do this exercise. I hope I find a free time to improve it.
Comment 5 Mark McKinstry 2011-01-17 19:58:45 EST
New Package SCM Request
=======================
Package Name: perl-CDB_File
Short Description: Perl extension for access to cdb databases
Owners: mmckinst
Branches: f13 f14 f15 el4 el5 el6
Comment 6 Jens Petersen 2011-01-18 02:07:29 EST
Git done (by process-git-requests).

f15 is not branched yet
Comment 7 Fedora Update System 2011-01-19 19:07:29 EST
perl-CDB_File-0.96-2.el5 has been submitted as an update for Fedora EPEL 5.
https://admin.fedoraproject.org/updates/perl-CDB_File-0.96-2.el5
Comment 8 Fedora Update System 2011-01-19 19:07:36 EST
perl-CDB_File-0.96-2.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/perl-CDB_File-0.96-2.fc13
Comment 9 Fedora Update System 2011-01-19 19:07:43 EST
perl-CDB_File-0.96-2.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/perl-CDB_File-0.96-2.fc14
Comment 10 Fedora Update System 2011-01-19 19:07:49 EST
perl-CDB_File-0.96-2.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/perl-CDB_File-0.96-2.el6
Comment 11 Fedora Update System 2011-01-19 19:07:56 EST
perl-CDB_File-0.96-2.el4 has been submitted as an update for Fedora EPEL 4.
https://admin.fedoraproject.org/updates/perl-CDB_File-0.96-2.el4
Comment 12 Fedora Update System 2011-01-20 01:30:27 EST
perl-CDB_File-0.96-2.el5 has been pushed to the Fedora EPEL 5 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update perl-CDB_File'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/perl-CDB_File-0.96-2.el5
Comment 13 Fedora Update System 2011-02-04 13:26:58 EST
perl-CDB_File-0.96-2.el4 has been pushed to the Fedora EPEL 4 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 14 Fedora Update System 2011-02-04 13:28:06 EST
perl-CDB_File-0.96-2.el5 has been pushed to the Fedora EPEL 5 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 15 Fedora Update System 2011-02-04 13:28:19 EST
perl-CDB_File-0.96-2.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 16 Fedora Update System 2011-02-04 14:49:47 EST
perl-CDB_File-0.96-2.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 17 Fedora Update System 2011-02-04 14:55:17 EST
perl-CDB_File-0.96-2.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 18 Mark McKinstry 2014-09-09 21:23:21 EDT
Package Change Request
======================
Package Name: fpdns
New Branches: epel7
Owners: perl-CDB_File
Comment 19 Mark McKinstry 2014-09-09 21:25:22 EDT
Package Change Request
======================
Package Name: perl-CDB_File
New Branches: epel7
Owners: mmckinst

scratch comment #18
Comment 20 Gwyn Ciesla 2014-09-10 06:34:09 EDT
Git done (by process-git-requests).
Comment 21 Fedora Update System 2014-09-12 18:01:35 EDT
perl-CDB_File-0.97-7.el7 has been submitted as an update for Fedora EPEL 7.
https://admin.fedoraproject.org/updates/perl-CDB_File-0.97-7.el7
Comment 22 Fedora Update System 2014-10-28 07:00:50 EDT
perl-CDB_File-0.97-7.el7 has been pushed to the Fedora EPEL 7 stable repository.

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