Bug 174099

Summary: Failed dependency on dynamic dependency
Product: [Fedora] Fedora Reporter: Leif O M Bergman <lmb>
Component: perl-Net-ServerAssignee: Nicolas Mailhot <nicolas.mailhot>
Status: CLOSED DEFERRED QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: extras-qa, steve, wtogami
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-12-04 15:10:32 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:
Bug Depends On:    
Bug Blocks: 167354    

Description Leif O M Bergman 2005-11-24 15:41:37 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.2) Gecko/20030716

Description of problem:
The file lib/Net/Server/Multiplex.pm contain the "dynamic" dependency:
eval { require IO::Multiplex; import IO::Multiplex 1.05; };

Seems that rpm's builtin support for finding moduledependencies fail when the
require statement is hidden in an eval.

Possible fixes include adding a dependency on perl-IO-Multiplex in the specfile,
and the add perl-IO-Multiplex to the extras repository. For finer grained
dependencies perl-Net-Server-Multiplex could be split out and only it would have
that dependency.

Version-Release number of selected component (if applicable):
perl-Net-Server-0.88-1

How reproducible:
Always

Steps to Reproduce:
1.wget http://isg.ee.ethz.ch/tools/postgrey/pub/postgrey-1.23.tar.gz
2.tar xvfz postgrey-1.23.tar.gz
3../postgrey-1.23/postgrey
  

Actual Results:  Module IO::Multiplex is required for Multiplex. at
/usr/lib/perl5/vendor_perl/5.8.5/Net/Server/Multiplex.pm line 32.
ERROR: --unix or --inet must be specified

Expected Results:  ERROR: --unix or --inet must be specified

Additional info:

Comment 1 Nicolas Mailhot 2005-12-04 15:10:32 UTC
We didn't have this problem with amavisd and it's running fine without
multiplex, so maybe it's rpm builtins that changed.

I really do not want to take ownership of another perl package now, given I'm
pretty perl-illiterate it causes problems later.

Why don't you get Multiplex in FE ? I'll rebuild a Net:Server that uses it when
it's available

Also Warren expressed interest in postgrey today, so you may want to work with him 

Comment 2 Nicolas Mailhot 2005-12-04 15:14:33 UTC
Also, I see you reported it with FC3, can you try with something less old ?
FC3 will be handed out to Fedora Legacy real soon now.

It is perfectly possible rpm got smarter about perl since FC3

Comment 3 Leif O M Bergman 2005-12-08 10:35:14 UTC
(In reply to comment #1)
> We didn't have this problem with amavisd and it's running fine without
> multiplex, so maybe it's rpm builtins that changed.
> 
wget http://www.ijs.si/software/amavisd/amavisd-new-2.3.3.tar.gz
tar xvfz amavisd-new-2.3.3.tar.gz
cd amavisd-new-2.3.3
find . -type f -perm -111 | xargs grep Net::Server::
./amavisd:    Net::Cmd Net::SMTP Net::Server Net::Server::PreForkSimple
./amavisd:use Net::Server::PreForkSimple;
./amavisd:# Make it a subclass of Net::Server::PreForkSimple
./amavisd:@ISA = qw(Net::Server::PreForkSimple);
./amavisd:### override Net::Server::PreForkSimple::done (needed for Net::Server
<= 0.87)

So the reason there is no problem is that the PreForkSimple version is used.

> I really do not want to take ownership of another perl package now, given I'm
> pretty perl-illiterate it causes problems later.
> 
Should be pretty straightforward to fedoraize the existing DAG rpm.

> Why don't you get Multiplex in FE ? I'll rebuild a Net:Server that uses it when
> it's available
> 
What's the pricedure?

But what's the best strategy going ahead? Should Net::Server be split to allow
for finer granularity, ie Net::Server::Multiplex become a seperate package? Be
aware that Net::Server also depend on a SSL package at runtime (that's not
causing me any problems).

Comment 4 Nicolas Mailhot 2005-12-08 10:47:12 UTC
(In reply to comment #3)

> > Why don't you get Multiplex in FE ? I'll rebuild a Net:Server that uses it when
> > it's available
> > 
> What's the pricedure?

Just follow the procedure on :

http://fedoraproject.org/wiki/Extras

to become an FE project contributor, submit Multiplex for review, and when it's
in FE ping me and I'll rebuild Net:Server to use it

> But what's the best strategy going ahead?

If you need stuff in FE which isn't there now, the best strategy is to push it
to FE yourself