For some time now Jens Rehsack (Sno), H.Merijn Brand (Tux) and I have been working on bootstrapping a large project to provide a common test suite for the DBI that can be reused by drivers to test their conformance to the DBI specification.
This post isn’t about that. This post is about two spin-off modules that might seem unrelated: Data::Tumbler and Test::WriteVariants, and the Perl QA Hackathon that saw them released.
- You have a production system, with many different kinds of application services running on many servers, all using the perl 5.8.8 supplied by the system.
- You want to upgrade to use perl 5.14.1
- You don’t want to change the system perl.
- You’re using CPAN modules that are slightly out of date but you can’t upgrade them because newer versions have dependencies that require perl 5.10.
- The perl application codebase is large and has poor test coverage.
- You want developers to be able to easily test their code with different versions of perl.
- You don’t want a risky all-at-once “big bang” upgrade. Individual production installations should be able to use different perl versions, even if only for a few days, and to switch back and forth easily.
- You want to simplify future perl upgrades.
I imagine there are lots of people in similar situations.
In this post I want to explore how I’m tackling a similar problem, both for my own benefit and in the hope it’ll be useful to others. Continue reading