Perl QA Hackathon 2015 Recap

A few weeks ago was the Perl QA Hackathon in wonderful Berlin, Germany.

I attended like I have for the last 3 years, as I love to get a chance to hang out in person with many of the people I see online daily, and I get a huge boost of motivation surrounding the event. It's also a great time to catch up on things that have been put off for one reason or another.

This year I planned to get Devel::PatchPerl working for a few much older versions of Perl. Devel::PatchPerl's purpose is to patch unpacked tarballs of the perl source tree so that older perls continue to compile as compilers and libraries change over time. This is useful for module maintainers who want to continue to support older perls for various reasons.

In my testing, I could compile perl all the way back to perl-5.6.0, but not beyond that, and I need to go back to at least 5.003.

Sadly, my first day of the hackathon concluded with many false starts, but by the second day I was able to provide patches that allowed building 5.5.0 through 5.5.4 (which is harder than it sounds!). I'll keep digging as I have time though to get Devel::PatchPerl building back to 5.003.

The only other accomplishment for me this year was adding support to the perl5's bisect runner to test modules from CPAN. This allows us to determine when, in perl5's development, a change was added that broke a particular module (or set of modules.) This also allows us to bisect pieces of Perl code that break between versions, but couldn't be easily reduced to not using external modules.

I'm pretty happy with this as previously most or all bisecting of cpan breakages fell on Andreas Koenig's shoulders, and I'm hoping this will help relieve some of his burden. (Thanks to Andreas for providing me with his implementation, which is the basis for mine.)

The new functionality is not yet in blead, but I expect to tweak and merge it after the code freeze when 5.22 comes out (soon!)

A significant portion of the rest of my time was spent attending the various discussions, and I'm glad to have participated, even though I mostly just listened.

I'm sad it's over, but I had a most excellent time. Thank you Tina Müller for organizing, and as always, thank you Liz and Wendy for helping out!

I'd also like to thank our sponsors, who made this all possible:

thinkproject!
amazon Development Center
STRATO AG
Booking.com
AffinityLive
Travis CI
Bluehost
GFU Cyrus AG
Evozon
infinity interactive
Neo4j
Frankfurt Perl Mongers
Perl 6 Community
Les Mongueurs de Perl
YAPC Europe Foundation
Perl Weekly
elasticsearch
LiquidWeb
DreamHost
qp procura
mongoDB
Campus Explorer
Ron Savage
Christopher Tijerina
Andrew Solomon
Jens Gassmann
Marc Allen
Michael LaGrasta

I appreciate your generousity!

And a special thanks to my employer, Infinity Interactive, for letting me attend on such short notice :)

-- Matthew Horsfall (alh)

Leave a comment

About Matthew Horsfall (alh)

user-pic I blog about Perl.