Imagine this:

  ./Build testdeps

That would be a custom action which would load a special Test::More
wrapper which, at the end of each test program, cache %INC.  At the end
of the test run, it would load up the cached versions of %INC and build
a report of all loaded modules.  Sample header:

  Module               Core      Prereq  Loaded
  -------------------  --------  ------  -------
  Attribute::Handlers  5.007003  no      0.78_01
  SUPER                n/a       1.16    1.14
  Test::Class          n/a       no      0.24

In other words, it would tell you all of the modules loaded, when (or
if) they were added to the core and whether or not they're listed as a
preref.  In the simple report above, we can see three modules loaded,
when they were released in core, what version, if any, is listed as a
prereq and what version, if any, is loaded (might be good, if differing
versions somehow got loaded by different test programs, to track that,
too).

We can see right away from the report above that Test::Class will cause
many folk's installs to fail since it's not listed as a prereq and it's
possible that SUPER doesn't need as high a version as is listed, though
investigation into the history for a version mismatch is warranted.

Thoughts?

Cheers,
Ovid

--
Buy the book  - http://www.oreilly.com/catalog/perlhks/
Perl and CGI  - http://users.easystreet.com/ovid/cgi_course/
Personal blog - http://publius-ovidius.livejournal.com/
Tech blog     - http://use.perl.org/~Ovid/journal/

Reply via email to