Bug 725238

Summary: perl-POE and perl-POE-Test-Loops dependencies loop?
Product: [Fedora] Fedora EPEL Reporter: Giam Teck Choon <giamteckchoon>
Component: perl-POEAssignee: Steve Traylen <steve.traylen>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: el6CC: steve.traylen
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-08-14 09:35:33 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Giam Teck Choon 2011-07-24 14:33:59 UTC
How reproducible:

Both perl-POE and perl-POE-Test-Loops are not in my test repo.  Then I tried to build perl-POE and perl-POE-Test-Loops from mock.  First, perl-POE-Test-Loops build successfully then when I tried to build perl-POE it fails due to one of the dependencies is perl-POE-Test-Loops where perl-POE-Test-Loops Requires perl-POE from my mock build environment.  Is this intended?

Steps to Reproduce:
1. Make sure both perl-POE and perl-POE-Test-Loops are not in the repo.
2. Build perl-POE-Test-Loops first successfully.
3. Build perl-POE failed due to BuildRequires has perl-POE-Test-Loops where perl-POE-Test-Loops Requires has perl-POE from my mock build environment.

Partial build log for perl-POE-Test-Loops:

/grep -v  '/usr/share/doc' | while read FILE; do /usr/lib/rpm/rpmdeps -P ${FILE}; done | /bin/sort -u  | /bin/sed -e '/perl([DIFMOSU].*)/d; /perl(POE::MySession)/d' | /bin/sed -e '/perl(UNIVERSAL)/d; /perl(DB)/d'"
Finding  Requires: /bin/sh -c " /bin/grep -v  '/usr/share/doc' |  while read FILE; do /usr/lib/rpm/rpmdeps -R ${FILE}; done | /bin/sort -u "
Provides: perl(POE::Kernel) perl(POE::Test::DondeEstan) perl(POE::Test::Loops) = 1.035 perl(PoeTestWorker)
Requires(rpmlib): rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(VersionedDependencies) <= 3.0.3-1 rpmlib(VersionedDependencies) <= 3.0.3-1
Requires: /usr/bin/perl perl(File::Find) perl(File::Path) perl(File::Spec) perl(File::Temp) perl(Getopt::Long) perl(IO::File) perl(IO::Handle) perl(IO::Socket) perl(IO::Socket::INET) perl(POE) perl(POE::NFA) perl(POE::Pipe::OneWay) perl(POE::Session) perl(POE::Test::DondeEstan) perl(POE::Test::Loops) perl(POE::Wheel::ReadWrite) perl(POE::Wheel::Run) perl(POSIX) perl(Socket) perl(Symbol) perl(Test::More) perl(constant) perl(lib) perl(strict) perl(vars) perl(warnings) rpmlib(VersionedDependencies) <= 3.0.3-1

You can see perl(POE) etc. is in Requires above.

Thanks.

Kindest regards,
Giam Teck Choon

Comment 1 Giam Teck Choon 2011-07-24 14:36:25 UTC
Sorry, forgot to include versions for both:

perl-POE-1.289-3.el6
perl-POE-Test-Loops-1.035-1.el6

Thanks.

Kindest regards,
Giam Teck Choon

Comment 2 Steve Traylen 2011-08-14 09:35:33 UTC
Hi Giam,

 There is indeed a loop here. I think it is quite common with perl
 packages for this to be the case.

 It's certainly true of the fedora packages for these as well which 
 I don't maintain.

 It is intended.