The Phalanx Project (finished)



About Phalanx

This project is no longer active.

The Phalanx project has three goals:

  1. Strengthen CPAN's tests, coverage and documentation
  2. Strengthen Perl's tests and coverage
  3. Bring in newcomers to the Perl development process

When Ponie was announced in July 2003, we knew that it would require a regression test suite larger than Perl had ever had before. Fortunately, with the CPAN, we have a huge selection to choose from. Based on the assumption that the 80/20 rule holds true for CPAN usage, we shifted it to the 98/2 rule. We're hoping that the 100 distributions we've selected, mostly on rough statistical analysis of usage, will cover a huge part of the CPAN that's used by the Perl community.

As the Phalanx project continues, we'll start looking at the modules distributed with Perl, as well as the tests that test Perl itself. For now, we're focusing on the modules in The Phalanx 100.

What Phalanx will do

  • Improve the tests and test coverage in Perl
  • Improve the tests, test coverage and documentation of the CPAN

Bugs will be found. They're out there.

Author involvement

Phalanx will only work WITH module authors, not against or instead of them. If an author is not interested in our help, then we'll move on to another module. We're not here to take over.

Also, remember that your modules are not getting singled out as "needing help". Every module can use improvement. The Phalanx 100 is based roughly on popularity and importance.

Read more about how we plan to work.

Creating testing guidelines

  • Come up with good guidelines
  • Test the edge cases
  • Work it into the core.


  • Tests will get folded into the main distribution of the module. We'll create the patches and feed 'em back.
  • We'll check documentation vs. tests vs. code, too.
  • Need a tracking mechanism to track progress. maybe an RT queue.
  • Stats are approximate: Kwalitee
  • Use Devel::Cover and gconv
  • How much of the perl code and C code in the core is acutally covered by the core tests?