As someone whose production code is currently required to run under
5.5.3, I'm very grateful to module authors whose code still runs under
that version at least. A number of modules which don't run under 5.5.3
do with simple changes, primarily changing "our" to "use vars" and
getting rid of x.y.z version numbers.
I've only developed in 5.6+ environments. Can anyone provide a link to
what I would have to do to make my modules compatible with 5.4 and/or 5.5?
For anyone interested in this area, take a look at Perl::MinimumVersion,
which identifies the minimum version of Perl needed for any chunk of code.
If anyone wants to help out, I'd like to enhance this as a Perl::Editor
plugin so that it doesn't just calculate the version, but points you at
the specific statement that is causing the highest version dependency
and tell you why, and how to change it.
There's also plans for Perl::BackPort if anyone would like to get on
board and help which would take Perl::MinimumVersion further and
actually automatically make the changes to code to make it work with
older versions.
So, adding () to $object->$method, or turning 'our' into use vars and so on.