The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

pmq - Report the installed version of Perl modules.

SYNOPSIS

pmq [-f] [-H | -h] [--method (parse | load | fork)] module...

pmq [-f] [--method (eval | load | fork)] --all

DESCRIPTION

Look for the given Perl modules in Perl's include path and report on whether they are installed, and if so with what version number. With --all, all modules on the system are listed.

There are three methods to find out the status of a module. The fastest and default is 'eval' which examines the module's program text for a line setting $VERSION, and evaluates that one line. The method 'load' is more thorough, it tries to load the whole module and then asks for the value of $VERSION. Because some modules can have strange side-effects when loaded, the slowest method 'fork' loads each module in a separate process.

Be warned that all methods will execute at least some of the module's code, but if you have installed a module into your perl search path you probably trust it anyway.

Following grep(1), the name of each module is printed before its status if more than one module (or 'all') is specified, but this name-printing can be forced on with -H or --with-name and suppressed with -h or --no-name.

--with-filename or -f print the filename of the .pm file used after the version check result.

--help prints a help message to standard output and --version reports on the version number of pmq itself.

SEE ALSO

perl(1).

AUTHOR

Ed Avis, ed@membled.com