SYNOPSIS This distribution provides the following command-line utilities related to perl dist repos: #INSERT_EXECS_LIST DESCRIPTION EARLY RELEASE. SOME SUBCOMMANDS NOT YET IMPLEMENTED. If you have one or more CPAN (or DarkPAN) perl distribution repos on your filesystem, then this suite of CLI utilities might be useful for you. Currently only the combination of Dist::Zilla-based Perl distributions managed by git version control is supported. To use this suite of utilities, first create a configuration ~/pdrutils.conf containing at the very least something like: repos = !paths ~/repos/perl-* You can change the ~/repos/perl-* part to a wildcard of where you put your perl dist repos. Another example where you specify multiple wildcard patterns: repos = !paths ~/repos/perl-* ~/repos-[12]*/perl-* ~/repos-private/perl-* Or, if you prefer to specify the repos individually: repos = /home/budi/Foo-Bar repos = /home/budi/Foo-Baz repos = /home/budi/Qux repos = !path ~/perl-Module-Zap (Note that if you want ~ to be expanded into your home directory, like in a Unix shell, you need to put !path encoding as the prefix for the value. See IOD for more details on the configuration format.) A few things that you can do with the utilities: * List distributions based on various criteria ("pdrutils ls") NOT YET IMPLEMENTED. List the names of all distributions: % pdrutils ls List the names as well as other details of all distributions: % pdrutils ls -l List distributions that have unclean git status (needs to be committed, etc): % pdrutils ls --no-git-clean List distributions that specify prereq to a certain module: % pdrutils ls --depends Foo::Bar % pdrutils ls --depends 'Foo::Bar >= 0.12' % pdrutils ls --depends 'Foo::Bar = 0.12' % pdrutils ls --depends 'Foo::Bar < 0.12' List distributions that depend on certain prereq in a certain phase/relationship only: % pdrutils ls --depends 'Test::More < 0.98' --phase test List distributions that does not depend on a certain module: % pdrutils ls --depends-not Baz * Modify prereqs: set/increase/decrease version For example, you want to increase the minimum prereq version for all your distributions, e.g. Bencher to 0.30: % pdrutils inc-prereq-version-to Bencher 0.30 All distributions which do not list Bencher as a prereq in their dist.ini, or distributions which already list Bencher version 0.30 or later, won't be modified. Some other examples: % pdrutils dec-prereq-version-to Some::Module 1.2 % pdrutils inc-prereq-version-by Some::Module 0.01 % pdrutils dec-prereq-version-by Some::Module 0.01 % pdrutils set-prereq-version Some::Module 1.2 * Modify prereqs: add/remove prereqs TBD