Also posted this on reddit.


So I am trying to transition from using Travis-CI for some of my Perl projects (and no CI at all for the rest) to using Github Actions for all of my Perl projects.

And it looks like I'll also soon be switching all the issue trackers over from RT to Github Issues.

And I'm starting to think now might also be the time to drop support for Perl 5.6, 5.8, and even 5.10.

This doesn't mean that I'll be deliberately breaking anything on them. I'll just stop testing them.

I would probably also include something like this in Makefile.PL:

if ( $ENV{AUTOMATED_TESTING} and $] lt '5.012' ) { print "I really don't care.\n"; exit 0; }

Which I believe will earn me "NA" reports from CPAN testers, but still allow regular humans to install the distribution without issues in most cases.

So why do I want to drop support? Mostly because although I'm happy for my modules themselves to support Perl 5.8 (and even in some cases 5.6), getting a modern toolchain including cpanm, prove, etc working, cross-platform, on Perls older than 5.12 is increasingly difficult.

So consider two scenarios:

  1. I continue to support those versions of Perl. I have to jump through hoops to do this. You, if you're still actively using those versions of Perl are probably also needing to jump through a lot of hoops to maintain them. We both have to jump through hoops.

  2. I stop supporting those versions of Perl. I don't have to jump through hoops. You, the person actively using those versions of Perl, still have to jump through hoops, but you already were. Worst case scenario, I've added maybe one extra hoop.

Why 5.12 in particular?

There are tempting reasons to choose 5.14 instead (keyword API, JSON::PP and HTTP::Tiny in core, s///r, etc) and even 5.16 (big Unicode improvements, __SUB__) or above, but for most distributions, I think 5.12 feels right, and January 2021 seems a good time to introduce that policy.

What do other people think though?