Bug 483045 - Review Request: perl-Test-Unit-Lite - Unit testing without external dependencies
Review Request: perl-Test-Unit-Lite - Unit testing without external dependencies
Status: CLOSED NEXTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Parag AN(पराग)
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2009-01-29 09:25 EST by Allisson Azevedo
Modified: 2012-03-26 08:19 EDT (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2009-02-06 05:56:52 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
panemade: fedora‑review+


Attachments (Terms of Use)
Filter private requirements (1.66 KB, patch)
2011-06-22 08:10 EDT, Petr Pisar
no flags Details | Diff

  None (edit)
Description Allisson Azevedo 2009-01-29 09:25:19 EST
Spec URL: http://allisson.fedorapeople.org/packages/perl-Test-Unit-Lite/perl-Test-Unit-Lite.spec

SRPM URL: http://allisson.fedorapeople.org/packages/perl-Test-Unit-Lite/perl-Test-Unit-Lite-0.1101-1.fc10.src.rpm

Description: This framework provides lighter version of Test::Unit framework. It
implements some of the Test::Unit classes and methods needed to run test
units. The Test::Unit::Lite tries to be compatible with public API of
Test::Unit. It doesn't implement all classes and methods at 100% and only
those necessary to run tests are available.
Comment 1 Parag AN(पराग) 2009-01-29 11:03:21 EST
Not needed BuildRequires:  perl >= 0:5.006
Comment 2 Parag AN(पराग) 2009-02-04 03:55:32 EST
Review:
+ package builds in mock (rawhide i386).
koji Build => http://koji.fedoraproject.org/koji/taskinfo?taskID=1103094
+ rpmlint is silent for SRPM and for RPM.
+ source files match upstream url
bad27502bda4377fa6e7e39602b82aab  Test-Unit-Lite-0.1101.tar.gz
+ package meets naming and packaging guidelines.
+ specfile is properly named, is cleanly written
+ Spec file is written in American English.
+ Spec file is legible.
+ dist tag is present.
+ build root is correct.
+ license is open source-compatible.
+ License text is included in package.
+ %doc is present.
+ BuildRequires are proper.
+ %clean is present.
+ package installed properly.
+ Macro use appears rather consistent.
+ Package contains code, not content.
+ no headers or static libraries.
+ no .pc file present.
+ no -devel subpackage
+ no .la files.
+ no translations are available
+ Does owns the directories it creates.
+ no scriptlets present.
+ no duplicates in %files.
+ file permissions are appropriate.
+ make test gave
All tests successful.
Files=2, Tests=54,  1 wallclock secs ( 0.03 usr  0.00 sys +  0.66 cusr  0.02 csys =  0.71 CPU)

+ Package perl-Test-Unit-Lite-0.1101-1.fc11 =>
Provides: perl(Test::Unit::Debug) perl(Test::Unit::HarnessUnit) perl(Test::Unit::Lite) = 0.11 perl(Test::Unit::Lite::AllTests) perl(Test::Unit::Result) perl(Test::Unit::TestCase)
 perl(Test::Unit::TestRunner) perl(Test::Unit::TestSuite)

Requires: perl >= 0:5.006 perl(Carp) perl(Cwd) perl(Exporter) perl(File::Basename) perl(File::Copy) perl(File::Find) perl(File::Path) perl(File::Spec) perl(Symbol) perl(base) perl(strict) perl(warnings)

Suggestions:
1) Take care to remove BR:perl before committing to cvs

Another thing, I see META.yml specifies which provides: this package should provide which this package already providing so I see no filter required here.

APPROVED.
Comment 3 Allisson Azevedo 2009-02-04 05:27:14 EST
New Package CVS Request
=======================
Package Name: perl-Test-Unit-Lite
Short Description: Unit testing without external dependencies
Owners: allisson
Branches: F-10 F-9
Comment 4 Kevin Fenzi 2009-02-05 21:47:10 EST
cvs done.
Comment 5 Allisson Azevedo 2009-02-06 05:56:52 EST
Builds fine: http://koji.fedoraproject.org/koji/packageinfo?packageID=7656

Closing now.
Comment 6 Ralf Corsepius 2009-02-12 08:13:59 EST
This package suffers from a larger number of clashes with perl-Test-Unit:

(In reply to comment #2)
>
> + Package perl-Test-Unit-Lite-0.1101-1.fc11 =>
> Provides: perl(Test::Unit::Debug) perl(Test::Unit::HarnessUnit)
> perl(Test::Unit::Lite) = 0.11 perl(Test::Unit::Lite::AllTests)
> perl(Test::Unit::Result) perl(Test::Unit::TestCase)
>  perl(Test::Unit::TestRunner) perl(Test::Unit::TestSuite)


# rpm -ql --provides perl-Test-Unit
..
perl(Test::Unit::Result) 
.. 
perl(Test::Unit::Runner)  
perl(Test::Unit::TestCase)  
..
perl(Test::Unit::TestRunner)  
perl(Test::Unit::TestSuite)  


I'd suggest to filter these out of perl-Test-Unit-Lite
Comment 7 Parag AN(पराग) 2009-02-12 10:32:55 EST
Ralf,
     Please help me to understand how to avoid such clashes in future perl package reviews? I think I just looked into code and see what META.yml said as provides. Also, I successfully installed this package using rpm command where I have already installed perl-Test-Unit. Did I miss anything in this review for such clash?
Comment 8 Ralf Corsepius 2009-02-12 11:33:04 EST
(In reply to comment #7)
>      Please help me to understand how to avoid such clashes in future perl
> package reviews?
These are hard to catch.

The only semi-systematic approach I am aware about is to iterate through repoquery --whatprovides 'perl(..)' on all provides a perl package provides.

I only caught these in this particular case, because another package
BR'ed: perl(Test::Unit::TestCase),
which resulted into this:

# repoquery --whatprovides 'perl(Test::Unit::TestCase)'
perl-Test-Unit-0:0.25-4.fc9.noarch
perl-Test-Unit-0:0.25-4.fc9.noarch
perl-Test-Unit-Lite-0:0.1101-1.fc10.noarch

> I think I just looked into code and see what META.yml said as
> provides. Also, I successfully installed this package using rpm command where I
> have already installed perl-Test-Unit.
Right, I am also observing this, but ... 

what is 
BR: perl(Test::Unit::TestCase)
supposed to do?

IMO, to pull-in the actual perl(Test::Unit::TestCase) module, i.e. the version from perl-Test-Unit, not the "lite" version from perl-Test-Unit-Lite.

I fear, we are facing the tip of an iceberg of hidden issues.

> Did I miss anything in this review for
> such clash?
Strictly speaking, yes - but we all are humans :-)

I likely also would not have caught this.
Comment 9 Allisson Azevedo 2009-02-12 11:59:48 EST
Hi,

Please take a look in this scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=1122217
Comment 10 Parag AN(पराग) 2009-02-13 03:20:15 EST
looks ok now.
Comment 11 Petr Pisar 2011-06-22 04:42:07 EDT
perl-Test-Unit-Lite does not Provide the private modules now, but it still Requires them (because dependency generator see they are used in the code).

I think perl-Test-Unit-Lite should filter the same requires too, because intentional use, according to documentation, is:

use Test::Unit::Lite;
use base 'Test::Unit::TestCase';

Also documentation qualifies this package as Unit testing _without external dependencies_.

On the other hand, I do not understand synopsis:

 Using as a replacement for Test::Unit:

         package FooBarTest;
         use Test::Unit::Lite;   # unnecessary if module isn't directly used
         use base 'Test::Unit::TestCase';

How application could do "use base 'Test::Unit::TestCase';", if there were no "use Test::Unit::Lite;". In my opinion application must "use Test::Unit::Lite;" to get Test::Unit::TestCase accessible (as Test::Unit::TestCase is not loadable by path from @INC).
Comment 12 Petr Pisar 2011-06-22 08:10:04 EDT
Created attachment 505986 [details]
Filter private requirements
Comment 13 Paul Howarth 2011-09-20 10:41:06 EDT
I'd like to request EPEL 5 and 6 branches for this module. I'm happy to maintain them myself if the Fedora maintainer doesn't want to do so.
Comment 14 Paul Howarth 2011-09-21 09:55:04 EDT
Package Change Request
======================
Package Name: perl-Test-Unit-Lite
New Branches: EL-5 EL-6
Owners: pghmcfc
InitialCC: perl-sig

Chris Weyl is the owner of this in Fedora and he's not interested in EPEL and isn't around to express his preference these days anyway.
Comment 15 Gwyn Ciesla 2011-09-24 11:19:42 EDT
Git done (by process-git-requests).
Comment 16 Fedora Update System 2011-09-24 14:48:01 EDT
perl-Test-Unit-Lite-0.12-10.el5 has been submitted as an update for Fedora EPEL 5.
https://admin.fedoraproject.org/updates/perl-Test-Unit-Lite-0.12-10.el5
Comment 17 Fedora Update System 2011-09-24 14:48:10 EDT
perl-Test-Unit-Lite-0.12-10.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/perl-Test-Unit-Lite-0.12-10.el6
Comment 18 Fedora Update System 2011-10-09 17:02:58 EDT
perl-Test-Unit-Lite-0.12-10.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 19 Fedora Update System 2011-10-09 17:03:15 EDT
perl-Test-Unit-Lite-0.12-10.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 20 Petr Pisar 2012-03-26 05:20:31 EDT
Package Change Request
======================
Package Name: perl-Test-Unit-Lite
Branches: f15 f16 f17
Owners: 
InitialCC: perl-sig

Please add perl-sig user with watch* permissions only to all Fedora branches.
Comment 21 Gwyn Ciesla 2012-03-26 08:18:50 EDT
Done.

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