Module dependencies and packages
wicked at etlicon.fi
Wed May 16 15:26:33 UTC 2007
On 15.05.2007 20:49, Aaron Trevena wrote:
> Debian/redhat perl packages can be out of date (sometimes by years) or
Exactly, they are meant to be stable and not bleeding edge that might
break things. Only security issues will get backports or module updates.
This mostly applies to core packages but RPMforge ones tend to get
updated more often.
> just plain broken or configured by crack monkeys, or can clash with
> cpan modules so you have multiple versions, etc (I don't think this is
Yes, that's why it's never a good idea to use CPAN on systems with
package management. Probably one of the important rules about package
management is that you never ever should install anything without
telling it to your package manager. Having unknown, unlisted files is a
sure way to get you into trouble with package manager.
> Large numbers of dependancies can be problematic - a test could fail
> for some reason high up in the dependancy chain breaking automatic
Yeah, I have seen problems from long dependency lists. Bugzilla just
checks for the highest, direct requirement and not any extra modules
required down on dependency chain.
For example, I just noticed our inbound email interface requires
Email::Date but it's not checked for and thus people are having
problems. :( Package management can actually help here by making sure
all requirements are pulled in whenever higher module is installed.
That's how CPAN works too.
> right software - you can bundle dependancies along with the package
> and only install them if they aren't already installed or are newer
For our Tinderbox installation that runs our automated test suite (the
files under t/ subdirect) I ended up building special RPM files that
contain different versions of supported Perl interpreters and required
Perl modules. It wasn't that bad but making all those modules to build
and especially making their tests pass was getting hard. :(
"Anything is possible. It's all about probabilities."
More information about the developers