# from Guillaume Cottenceau
# on Wednesday 04 August 2010 13:12:
>but I don't see
>the big problem for machines and I don't know how to say "hey this is
>beta" only with numbers; especially if "5.005_03 is equivalent to
>5.5.30", I don't see how this could be considered to mark it beta/dev
The first problem for machines is that $VERSION is a scalar and has no
guaranteed structure to it, so you could put any string or whatever you
want in it. Now when you try to compare that to something, you have to
compare it as a number, so fun ensues because overloading involves
objects and ...
The second problem for machines is when you try to use packaging tools
that expected a simple number in $VERSION or might try to complain
about something that doesn't parse as a number.
If you don't mind angering the machines, put whatever you want in there.
But, why are humans seeing the raw value of $yourmodule->VERSION anyway?
If it's an application, present / format it differently. You can still
store whatever you want in it because it's mostly just a scalar. Might
be a good idea to find some way to do it with a version.pm object just
for maintainability.
Now, for marking releases as Beta on the CPAN, well...
--Eric
--
The reasonable man adapts himself to the world; the unreasonable man
persists in trying to adapt the world to himself. Therefore all progress
depends on the unreasonable man.
--George Bernard Shaw
---------------------------------------------------
http://scratchcomputing.com
---------------------------------------------------