Bug 827198

Summary: perl-Config-IniFiles missing dependency on perl-List-MoreUtils
Product: [Fedora] Fedora EPEL Reporter: mheldebr
Component: perl-Config-IniFilesAssignee: Tom "spot" Callaway <tcallawa>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: unspecified    
Version: el5CC: clem.oudot, dennisvd, fitzsim, jhutar, jpazdziora, olivier, tcallawa
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-09-24 14:07:06 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:

Description mheldebr 2012-05-31 21:35:33 UTC
User-Agent:       Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
Build Identifier: 

Version 1.4.1 of spacewalk-monitoring is missing a dependency on perl-List-MoreUtils.

Attempting to start the daemons gives:

Can't locate List/MoreUtils.pm in @INC (@INC contains: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /usr/lib/perl5/vendor_perl/5.8.8/Config/IniFiles.pm line 14.
BEGIN failed--compilation aborted at /usr/lib/perl5/vendor_perl/5.8.8/Config/IniFiles.pm line 14.
Compilation failed in require at /usr/lib/perl5/vendor_perl/5.8.8/NOCpulse/Object.pm line 22.
BEGIN failed--compilation aborted at /usr/lib/perl5/vendor_perl/5.8.8/NOCpulse/Object.pm line 22.
Compilation failed in require at /usr/sbin/Monitoring line 6.
BEGIN failed--compilation aborted at /usr/sbin/Monitoring line 6.

Adding the perl-List-MoreUtils package to the system stops the problem.

Reproducible: Always

Comment 1 Michael Mráka 2012-06-01 07:48:35 UTC
Could you show me output of:
rpm -q spacewalk-monitoring perl-List-MoreUtils
rpm -q --whatrequires 'perl(List::MoreUtils)'

Comment 2 mheldebr 2012-06-01 14:12:46 UTC
[root@server ~]# rpm -q spacewalk-monitoring perl-List-MoreUtils
spacewalk-monitoring-1.4.1-1.el5
perl-List-MoreUtils-0.22-2.el5
[root@server ~]# rpm -q --whatrequires 'perl(List::MoreUtils)'
no package requires perl(List::MoreUtils)

Comment 3 Jan Pazdziora 2012-06-01 16:49:45 UTC
Careful reading of the error shows that the List::MoreUtils is not loaded by any spacewalk-monitoring code directly, but by Config::IniFiles:

# perl -MConfig::IniFiles -e 1
Can't locate List/MoreUtils.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /usr/lib/perl5/vendor_perl/5.8.8/Config/IniFiles.pm line 14.
BEGIN failed--compilation aborted at /usr/lib/perl5/vendor_perl/5.8.8/Config/IniFiles.pm line 14.
Compilation failed in require.
BEGIN failed--compilation aborted.

# rpm -qf /usr/lib/perl5/vendor_perl/5.8.8/Config/IniFiles.pm
perl-Config-IniFiles-2.72-1.el5

Flipping to EPEL 5 perl-Config-IniFiles component.

Comment 4 Olivier Bilodeau 2012-06-06 15:25:17 UTC
This breaks downstream users of Config::IniFiles like us at PacketFence. As you can see here[1] Config::IniFiles 2.72 does use List::MoreUtils so it should be under Requires and not only in BuildRequires.


[1] https://metacpan.org/source/SHLOMIF/Config-IniFiles-2.72/lib/Config/IniFiles.pm#L14

Comment 5 Olivier Bilodeau 2012-06-06 15:29:38 UTC
Oh, I just realized that the require list is dynamically generated... 

RHEL6 seems fine:

package: perl-Config-IniFiles.noarch 2.72-2.el6
...
  dependency: perl(List::MoreUtils)
   provider: perl-List-MoreUtils.x86_64 0.33-1.of.el6
   provider: perl-List-MoreUtils.x86_64 0.30-1.of.el6
   provider: perl-List-MoreUtils.x86_64 0.22-10.el6

I'll need to dig up for RHEL5.

Sorry for the noise.

Comment 6 Fedora Update System 2012-06-26 01:13:28 UTC
perl-Config-IniFiles-2.72-2.el5.1 has been submitted as an update for Fedora EPEL 5.
https://admin.fedoraproject.org/updates/perl-Config-IniFiles-2.72-2.el5.1

Comment 7 Fedora Update System 2012-06-26 17:30:37 UTC
Package perl-Config-IniFiles-2.72-2.el5.1:
* should fix your issue,
* was pushed to the Fedora EPEL 5 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=epel-testing perl-Config-IniFiles-2.72-2.el5.1'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-EPEL-2012-6248/perl-Config-IniFiles-2.72-2.el5.1
then log in and leave karma (feedback).

Comment 8 Clément OUDOT 2012-06-26 20:13:46 UTC
As you can see in this bug: https://bugzilla.redhat.com/show_bug.cgi?id=828251, I think you should add a minor version of perl-List-MoreUtils, as the Parameter() function seems to work only since version 0.33

With this, you will close both bugs.

Comment 9 mheldebr 2012-06-29 18:30:40 UTC
New package has dependency as expected now:

--Snipped Yum output--

Updated:
  perl-Config-IniFiles.noarch 0:2.72-2.el5.1

Complete!
[root@server ~]# rpm -q --whatrequires 'perl(List::MoreUtils)'
perl-Config-IniFiles-2.72-2.el5.1

Comment 10 Jan Pazdziora 2012-09-24 08:06:05 UTC
It looks like

https://admin.fedoraproject.org/updates/FEDORA-EPEL-2012-6537/perl-Config-IniFiles-2.72-2.el5.2,perl-List-MoreUtils-0.33-5.el5

released fixed perl-Config-IniFiles. Could we close this bugzilla?