How To Set Your Module's Version Number

Ovid on 2009-08-11T06:29:39

There's a fair bit of discussion about version numbers and people get confused by them. Get confused no more. Here's the way you should be setting version numbers in your modules:

our $VERSION = "0.001"; # or "0.001_001" for a dev release
$VERSION = eval $VERSION;

dagolden goes in extreme detail as to why you need this and what led to this state of affairs.


The eval is superfluous

Alias on 2009-08-11T16:14:13

Of course, you only actually NEED the eval if you have a dev release.

But if you're stupid, lazy or don't mind high-compatibility boilerplate, just stick with using the eval all the time.

Re:The eval is superfluous

Ovid on 2009-08-11T16:24:06

Given that I often automate updating my version numbers, I find the eval to be extremely helpful as I don't need to go through a large distribution and add that in every single time I want a dev release (and then removing it every time I have a regular release).