Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??

This convention is a bit misleading as it apparently clashes with the convention for CPAN development releases. CPAN development releases are marked by distribution tarballs whose version numbers like '1.19_02' contains underscores. The development releases are meant to publish unstable code which is possibly in-progress work (so they are available to others experiment with that).

But that only happens if the author defines the $VERSION to be a string, so when it is used (by ExtUtils::MakeMaker or Module::Build) to construct the tarball name, the underscores are there. In the convention you mentioned, the underscore only exists at the source code and disappears after Perl compiles this piece of code (then, 1.19_02 is undistinguishable from 1.1902). They do not generate development releases (as a beginner may think it should) and only creates an artificial three-part version where the last parts are constrained to vary up to 99 (which is enough for most practical uses). So it is not a big deal/win compared to conventions that just use:

# vv-- Incremented at will $VERSION = 1.1902; # ^ ^^ # | \+----- Incremented for non-trivial changes to features # \-------- Incremented for fundamental changes

And notice that perl convention itself is to use three rather than two digits as in 5.8.6 = 5.008006.

NOTE. Development releases have a curse on themselves which is not being indexed by PAUSE, which requires the user to specify a full name at CPAN shell commands like "install AUTHOR/Boo-1.19_02.tar.gz" when installing instead of only "install Boo" (but that is purposeful to avoid development releases to be installed by mistake). The curse is that development releases never get tested as it should and are second-rate citizens at CPAN for many tools.


In reply to Re: module version convention by ferreira
in thread module version convention by metaperl

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others goofing around in the Monastery: (5)
As of 2024-04-23 21:24 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found