Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"

Re^2: Per-distro versioning and dependency specification

by creamygoodness (Curate)
on Jun 06, 2012 at 13:57 UTC ( #974725=note: print w/replies, xml ) Need Help??

in reply to Re: Per-distro versioning and dependency specification
in thread Per-distro versioning and dependency specification

There is no need for this proposal to be "universally accepted and implemented." :) I merely hope that individual authors will consider it.

As for exploding dependency lists using Perl::PrereqScanner, I'm agnostic. It might be good defensive programming for downstream users, but I think any upstream author who justifies recomposing a distribution on the basis of Perl::PrereqScanner's availability is irresponsible.

Ultimately, a version number has to stand for some bounded collection of code. My argument is that it assigning disparate version numbers to subdivisions within a collection of code which can only be installed as a single atomic unit is unhelpful, and thus that version numbers should be unified within such installation units.

For the sake of argument, why not assign version numbers to individual subroutines? Subroutines can be moved to different distros, too. Is Perl::PrereqScanner paranoid enough? :) Of course the answer is that the Perl 5 interpreter and use/require deal in modules with version numbers -- but there is tension between that and how modules typcially get packaged and installed as indivisible collections.

Now I might argue that it would be better logical behavior if the interpreter understood the concept of distros and dealt with version numbers at that level -- and that angle interests me as a student of language design and informs my opinions about best practice. However, in this Meditation I have attempted to limit the concrete suggestions to those which can implemented without either

  • a time machine, or
  • the unanimous consent of all CPAN authors.

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://974725]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (2)
As of 2023-04-01 16:34 GMT
Find Nodes?
    Voting Booth?

    No recent polls found