mversion - Program for querying Perl module versions
This program shows you the version of a module or several modules, in a comfortable manner.
mversion Dancer mversion --dev --full This That Another mversion -q -i modules.txt
In Perl-world, we have many ways to determine a version of a module. You can run
perl -MModule -le'print $Module::Version', but once the name is very long it becomes tiresome to write.
We can try to load the module in a specific version that is (hopefully) greater than what we already have installed (if at all). That way we purposely inflict an error on the compiler and try to read the error msg.
perl -MModule\ 9999. This does not work on multiple modules at once. Some modules even have long version numbers, such as a date, and then you need to run
perl -MModule\ 9999999999 which is seriously annoying.
There are a few modules out there that get you the version number of other modules but none of them are applications, nor do they have enough options for comfortable day-to-day usage. This is where
mversion comes in.
- -f, --full
This outputs both the name and the version of module, instead of just the version number.
mversion -f ThisModule ThatModule mversion --full ThisModule ThatModule
- -I, --include DIRECTORY, -I MORE, -I EVENMORE
This lets you add any number of directories to include when trying to get a version number. This is very helpful when you're trying to check if the version of a module in a specific folder is different than the default one.
# get the version of ThisModule mversion ThisModule # get the version of ThisModule from directory dev_releases mversion -I dev_releases ThisModule
You can include more directories by repeating the flag and argument again. There is no limit to how many directories you can include.
- -i, --input FILE
This reads a list of modules from a file.
mversion -i my_modules.txt mversion --input my_modules.txt
- -l, --local-lib DIR
Includes the local::lib DIR in the module paths.
- -d, --dev
This shows the developer versions (0.01_01) just as that instead of eval()ing them.
mversion -d Test::More mversion --dev Test::More
- -q, --quiet
Usually if a module does not exist,
mversionwill warn about it. This allows you to silent those warnings and just carry on.
mversion -q This::Does::Not::Exist But::This::Does mversion --quiet This::Does::Not::Exist But::This::Does
Github page at http://github.com/xsawyerx/module-version.
This software is copyright (c) 2010-2018 by Sawyer X.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.