The general consensus is that Test::Harness support for Perl 5.5 should be dropped. 5.61 will probably be supported at a minimum. If this is a problem, don't upgrade. Of course, if you're on 5.5, you're not upgrading anyway :)
Eric Wilhelm mentioned that he'd like 5.8 (I don't think he was serious) and I confess I'd be happy with that, but it seems a bit premature. How many people here are still stuck on 5.6 or lower systems? (According to the Perl survey, that number might be around 13%, but such surveys are problematic, of course)
If you are going to drop 5.5 support I'd suggest the your drop 5.6 as well and only support 5.8 as a minimum.
I'd guess that the only people still using 5.6 are on Solaris 8 which also puts them in the category of non-ugraders.*
John.
--
* I use Solaris 8 from time to time but I generally install modules into a perl 5.8 build in
5.6.0 is a couple of weeks shy of being nine years old. I can imagine Test::Harness 3.16 sufficing for them until 2018. Likewise, Perl 5.8.0 is more than six and a half years old, so Test::Harness 3.16 should work for them until September 2015.
That 13% figure is almost a year and a half old itself as well. Perhaps some of those people have even upgraded to Perl 5.10.
Test::Harness 3.15
Version Tests Percent
5.6 7 6.6 %
5.8 46 43.4 %
5.10 52 49.1 %
5.11 1 0.9 %
Total 106
< 5.8 7 6.6 %
>= 5.8 99 93.4 %
Test::Harness 3.16
Version Tests Percent
5.6 18 6.7 %
5.8 126 47.2 %
5.10 123 46.1 %
Total 267
< 5.8 18 6.7 %
>= 5.8 249 93.3 %
So, as a very rough metric, among people who use automated installers and report tests, perl 5.6 usage is approximately 7%.
Considering I couldn't get a modern Test::Harness to install on 5.5 recently, mainly because of other parts of the toolchain being dependencies.
I am sure there are exceptions but as a rule those who don't upgrade perl usually don't upgrade CPAN modules either.
Re:no upgrade means no upgrade
rjbs on 2009-03-11T17:41:11
I agree with Gabor. The only "problem" case I think worth considering is users who want to install a new module that relies on new features in later Test::Harness.
This strikes me as darn unlikely. My *completely unscientific* belief is that any module relying on wonky new Test::Harness features is already sort of cutting edge and not the sort of thing being used by 5.6 users.
We were stuck on 5.6 at $job for some systems until a few years ago. It was horrible already, and we knew it, and it limited us a lot. It's been years, and everyone in that position should just expect the limitations to continue to grow. I see no reason not to require v8 as soon as there's a compelling reason to use a 5.8-ism.
>Eric Wilhelm mentioned that he'd like 5.8 (I don't think he was serious)
I was, actually. The main feature which I find lacking in 5.6 is the simple open(my $fh, '', \$string), but it is quite lovely for testing things which deal with filehandles. This is indeed a tiny feature, but so are the benefits of sticking with 5.6, IMO.
Yes, using a tiny module off of the CPAN could emulate this feature, but now we're weighing three tiny things...
Re:sarcastic, but serious
Ovid on 2009-03-12T10:15:44
Well, you certainly made me think about this. My thought is to start supporting 5.6.1 and beyond and then announce that we plan to start support for things prior to 5.8.X (5.8.5 for proper Unicode?) in about a year or so. That might just give people incentive to start upgrading. Maybe we can escape the legacy trap. Maybe we'll cause companies to re-evaluate their use of Perl.
To be perfectly honest, though, I don't know that 5.8 gives us enough to justify it yet. Were 5.10 out longer, perhaps I'd change my mind and say 5.10.X support. That would clearly offer enough modern features that I'd feel comfortable with it.
That being said, if you can show how our code would be remarkably improved with open my $fh, \$string support (and I admit that I wanted this idiom, too), I'd love to see it.
Re:sarcastic, but serious
chromatic on 2009-03-12T19:00:57
To be perfectly honest, though, I don't know that 5.8 gives us enough to justify it yet.
5.8.x is at the end of its life, and you still think it's important to support the previous major version of Perl? Anyone who hasn't managed to upgrade Perl to something released in the past six and a half years is unlikely to wait with bated breath for Test::Harness "This Time I'll Upgrade, I Mean It!" 3.17.