Bug 483045
Summary: | Review Request: perl-Test-Unit-Lite - Unit testing without external dependencies | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Allisson Azevedo <allisson> | ||||
Component: | Package Review | Assignee: | Parag AN(पराग) <panemade> | ||||
Status: | CLOSED NEXTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
Severity: | medium | Docs Contact: | |||||
Priority: | medium | ||||||
Version: | rawhide | CC: | fedora-package-review, notting, panemade, paul, ppisar, rc040203 | ||||
Target Milestone: | --- | Flags: | panemade:
fedora-review+
|
||||
Target Release: | --- | ||||||
Hardware: | All | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2009-02-06 10:56:52 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: | |||||||
Attachments: |
|
Description
Allisson Azevedo
2009-01-29 14:25:19 UTC
Not needed BuildRequires: perl >= 0:5.006 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. New Package CVS Request ======================= Package Name: perl-Test-Unit-Lite Short Description: Unit testing without external dependencies Owners: allisson Branches: F-10 F-9 cvs done. Builds fine: http://koji.fedoraproject.org/koji/packageinfo?packageID=7656 Closing now. 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 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? (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. Hi, Please take a look in this scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=1122217 looks ok now. 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). Created attachment 505986 [details]
Filter private requirements
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. 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. Git done (by process-git-requests). 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 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 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. 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. 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. Done. |