A few weeks ago I mailed that I was planning to work on improving things in modules at the head of the river. The first of these is Pod::Simple. I’m slowly working towards a PR with various changes, and doing developer releases (with Marc’s permission). I’ll outline the changes here, to give people a chance to comment, since the module has so many dists downstream.
Min perl version
I’ve set min perl version to 5.006. It was previously not set in metadata, and all modules bar one had “require 5”. But the ChangeLog had discussion of changes that explicitly said anything earlier than 5.6 was no longer supported. If you look at CPAN Testers, you can see there are passes back to 5.6.2.
One module in the dist requires 5.008: Pod::Simple::TranscodeSmart. This is used by Pod::Simple::Transcode, which falls back onto using Pod::Simple::TranscodeDumb if it can’t load Pod::Simple::TranscodeSmart, which is why the dist passes tests on 5.6.2.
So I set it to 5.006; another option would have been 5.006002 — since there is evidence back that far.
Dropped “use vars”
Dropped all uses of “use vars”, and replaced with “our” as appropriate.
Add “use warnings”
I added “use warnings” to all modules, and resolved the resulting warnings. Some things required appropriately scoped “no warnings …”
Fixed CPAN Testers fails
As you can see from the CPAN Testers matrix link above, the current stable release has various failures. I’ve fixed most of them, and my current dev release has one particular failing test, that I’m hoping to sort out this weekend:
This is one of my main goals: to get this green across the board.