NAME¶
Module::Versions::Report -- report versions of all modules in memory
SYNOPSIS¶
use Module::Versions::Report;
...and any code you want...
This will run all your code normally, but then as the Perl interpreter is about
to exit, it will print something like:
Perl v5.6.1 under MSWin32.
Modules in memory:
attributes;
AutoLoader v5.58;
Carp;
Config;
DynaLoader v1.04;
Exporter v5.562;
Module::Versions::Report v1.01;
HTML::Entities v1.22;
HTML::HeadParser v2.15;
HTML::Parser v3.25;
[... and whatever other modules were loaded that session...]
Consider its use from the command line:
% perl -MModule::Versions::Report -MLWP -e 1
Perl v5.6.1 under MSWin32.
Modules in memory:
attributes;
AutoLoader v5.58;
[...]
DESCRIPTION¶
I often get email from someone reporting a bug in a module I've written. I email
back, asking what version of the module it is, what version of Perl on what
OS, and sometimes what version of some relevent third library (like
XML::Parser). They reply, saying "Perl 5". I say "I need the
exact version, as reported by "perl -v"". They tell me. And I
say "I, uh, also asked about the version of my module and XML::Parser [or
whatever]". They say "Oh yeah. It's 2.27". "Is that my
module or XML::Parser?" "XML::Parser." "OK, and what about
my module's version?" "Ohyeah. That's 3.11." By this time, days
have passed, and what should have been a simple operation -- reporting the
version of Perl and relevent modules, has been needlessly complicated.
This module is for simplifying that task. If you add "use
Module::Versions::Report;" to a program (especially handy if your program
is one that demonstrates a bug in some module), then when the program has
finished running, you well get a report detailing the all modules in memory,
and noting the version of each (for modules that defined a $VERSION, at
least).
USING¶
Importing¶
If this package is imported then END block is set, and report printed to stdout
on a program exit, so use "use Module::Versions::Report;" if you
need a report on exit or "use Module::Versions::Report ();"
otherwise and call report or print_report functions yourself.
report and print_report functions¶
The first one returns preformatted report as a string, the latter outputs a
report to stdout.
COPYRIGHT AND DISCLAIMER¶
Copyright 2001-2003 Sean M. Burke. This library is free software; you can
redistribute it and/or modify it under the same terms as Perl itself.
This program is distributed in the hope that it will be useful, but without any
warranty; without even the implied warranty of merchantability or fitness for
a particular purpose.
MAINTAINER¶
Ruslan U. Zakirov <ruz@bestpractical.com>
AUTHOR¶
Sean M. Burke, <sburke@cpan.org>