Hello,

could you please explain why you marked this bug as wontfix?

Because of the nature of perl5 it isn't possible to really know what
modules need to be installed to make the application work. But there are
good heuristics to do so. Only a small fraction of the perl modules and
applications load the modules they need using other ways then the use-
and require-builtins. That would already give a good coverage.

Beside that there's Module::ScanDeps (I packaged it - it's waiting in
NEW). It's capable of finding out what modules are needed using even
more sophisticated ways.

I don't see what's the problem with including some code that uses
Module::ScanDeps to determine the deps on perl modules. Those deps
should go into another substvar then ${perl:Depends} and the generation
of the new substvar should be disabled by default to keep backward
compatibility. Beside that it could be avoided to have debhelper depend
on libmodule-scandeps-perl if we would load it only when it's really
needed. debhelper could simply suggest it.

Then there's the problem of perl modules not having a mechanism like
shlibs so you normally don't know on which version of the module you
need to depend. That can be solved, well.. worked around this way:

- Depend unversioned by default
- If the 'use' statement requires a special version try to find out what
  debian version complies to this (I don't know if that's possible) and
  depend on it or simply depend on the current version of that package.
- Use a command line switch to turn on versioned deps (let's say -D)
  - dh_perl -D generates versioned deps on the latest version of each
    module
  - dh_perl -Dfoo generates a versioned dep on the latest version of
    foo, leaving other deps unversioned.
  - dh_perl -Dfoo=1:1.101 generates a versioned dep on foo (>= 1:101)
    and doesn't touch other dependencies.

I already prepared a patch that implements the above. Some polishing is
still needed, though.

I'd be really glad if this would be included with dh_perl.


Regards,
Flo

-- 
BOFH excuse #228:
That function is not currently supported, but Bill Gates assures us it
will be featured in the next upgrade.

Attachment: signature.asc
Description: Digital signature

Reply via email to