Perl requires/provides proposal

Michael Schwendt ms-nospam-0306 at arcor.de
Sun Feb 15 05:11:26 UTC 2004


On 14 Feb 2004 23:48:20 -0500, Chip Turner wrote:

> So the plan is to add perl(:MODULE-COMPAT-5.8.3) (and 5.8.2, 5.8.1,
> and 5.8.0) as Provides to the perl package itself, and add this
> equivalent to any perl module: perl(:MODULE-COMPAT-$(perl -MConfig -e
> 'print $Config{version}')).  In other words, a module, when compiled,
> will require the :MODULE-COMPAT tag of the version of perl it was
> compiled under.

In which way would this be different from making a Perl module depend on a
path like "eval $(perl -V:vendorlib) && echo $vendorlib"? In both cases
you would get an explicit versioned dependence. And for the Perl module
package to be compatible with the main Perl package, the former would
depend on a specific version+path provided and supported by the latter.

> Also, the perl module itself will explicitly own all dirs listed in
> its @INC list.

Looks like a type mistake. I think it should read:

    Also, the perl package itself will explicitly own all dirs listed in
    its @INC list.

> Some perl modules have requires on these dirs to solve
> the problem above, and this would make those modules work, but that's
> not really the right solution, hence the need for a more "official"
> expression of the dependencies involved.
> 
> Thoughts?

What makes a dependence on a specific path from @INC less right than
an explicit dependence on a versioned virtual capability?

-- 





More information about the devel mailing list