But if someone
else helps you install the machine, then you don't actually need the level,
if they bring theirs and use it for the install.


I think that the build_requires/test_requires distinction *is* important, if
it can be made, as it eases the lives of anyone wishing to package up
modules, build them from source in one place, and then distribute their
packages to many other machines, be they OS vendors or sysadmins. The tests
are run and pass on the build machine, prior to packaging. But the automatic
dependency system doesn't need to make installation of this module depend on
installing Test::* onto the production machine. (for the general case)

I think this sums up one of the two issues here completely.

Regardless of whether you like or dislike bundling, the distinction between requires and build_requires is definitely important.

If nothing else, look at the case of distros (I'll use debian as an example)

libfoo-perl is a package
libfoo-bar-perl requires libfoo-perl

Now, if Foo::Bar has test-time dependencies, these are irrelevant as far as built packages on standard platforms are concerned. It's important for the distros, ppm etc that they can tell the difference. So they can build packages with only the run-time dependencies, and not the test-time dependencies.

I think it's clear at that level that we need the distinction.

Now as for bundling or not bundling, well I'm sure we can agree to disagree.

Adam K

Reply via email to