My incomplete take on this:
- v-strings are deprecated (see perldelta).
- How are you using the new features of Perl 5.6 and on? If $VERSION is the *only* place you're using new syntax, it would be obtuse to exclude users of old perls, but any other case can certainly be argued either way. (Anyone remember when for became a statement modifier? IIRC this wasn't in 5.000.)
- I don't think there's a concensus on version number format. I'd recommend perl-like version numbers.
- I'm of the opinion that source control versions and release versions are completely different. The former is meant for the developer. It's fine to include an $Id$ in your files, but the package itself should have a public version number that is updated much less frequently.
- I use a single $MyProject::Common::VERSION value and instruct everything to look there.