Bug 174099 - Failed dependency on dynamic dependency
Summary: Failed dependency on dynamic dependency
Status: CLOSED DEFERRED
Alias: None
Product: Fedora
Classification: Fedora
Component: perl-Net-Server
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Nicolas Mailhot
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Keywords:
Depends On:
Blocks: 167354
TreeView+ depends on / blocked
 
Reported: 2005-11-24 15:41 UTC by Leif O M Bergman
Modified: 2007-11-30 22:11 UTC (History)
3 users (show)

(edit)
Clone Of:
(edit)
Last Closed: 2005-12-04 15:10:32 UTC


Attachments (Terms of Use)

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


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