App-RewriteVersion
view release on metacpan or search on metacpan
script/perl-bump-version view on Meta::CPAN
$app->rewrite_versions($new_version, dist_dir => $dist_dir, is_trial => $is_trial, subdirs => $subdirs);
=head1 NAME
perl-bump-version - A tool to bump your Perl module versions
=head1 SYNOPSIS
perl-bump-version [options] [subdir ...]
perl-bump-version --from lib/Foo/Bar.pm
perl-bump-version --trial --no-allow-underscore lib script
perl-bump-version -LdgvD /opt/projects/Foo-Bar/
V=v1.0.0 perl-bump-version
Options:
-D, --dist-dir <dir> distribution directory to operate on (default: current directory)
-d, --dry-run don't actually update files (default: disabled)
-f, --from <file> file to read version from
-g, --global rewrite versions globally instead of just the first per file (default: disabled)
-L, --follow-symlinks follow symlinks when finding perl files to rewrite (default: disabled)
-t, --trial mark version as a trial version (default: disabled)
-u, --allow-underscore allow decimal versions with underscores (default: enabled)
-v, --verbose print progress messages to STDOUT (default: disabled)
=head1 DESCRIPTION
L<perl-bump-version> is a command-line tool using L<App::RewriteVersion> to
bump Perl module versions in a distribution. The main module's version is read,
bumped (using L<Version::Next>), and then used to update the version in all
perl files in the distribution with a version assignment. The subdirectories
(relative to the distribution directory) to update versions in can be specified
as arguments, defaulting to C<lib>, C<script>, and C<bin> if no subdirectories
are specified. The C<V> environment variable can be used to set the "current"
version instead of retrieving it from a module, this version will then be
incremented for rewriting.
Existing version assignments and new versions must be parseable with the same
rules as in L<Dist::Zilla::Plugin::RewriteVersion/"DESCRIPTION">, that is to
say, they should either be a decimal number with a single decimal point, or a
tuple version with a leading C<v> and at least 3 segments separated by decimal
points. Version assignments should be in the form C<our $VERSION = '...';>.
See the script L<perl-rewrite-version> to update all modules to a specific
version.
=head1 OPTIONS
=head2 -D, --dist-dir <dir>
Distribution directory to operate on, defaults to current working directory.
=head2 -d, --dry-run
Run as normal but don't actually update any files. Useful with C<--verbose> to
verify expected functionality.
=head2 -f, --from <file>
File to read main version from. If unspecified, the main module of the
distribution will be guessed in order to determine its version, see
L<App::RewriteVersion/"current_version">. Ignored if the C<V> environment
variable is set.
=head2 -g, --global
Update all instances of version assignment, instead of just the first
occurrence in each file.
=head2 -L, --follow-symlinks
Follow directory symlinks when traversing the distribution for perl files to
rewrite.
=head2 -t, --trial
Mark version assignment as a trial release. This will only add a C<# TRIAL>
comment to the version assignment, as the C<-TRIAL> indication is not part of
the version and should be added to the name of the archive you upload to PAUSE,
which is outside of the scope of this tool.
=head2 -u, --allow-underscore
Allow decimal versions with underscores. Enabled by default, use
C<--no-allow-underscore> to disable. See
L<Dist::Zilla::Plugin::BumpVersionAfterRelease/"Using underscore in decimal $VERSION">
for more information.
=head2 -v, --verbose
Print progress output to STDOUT.
=head1 BUGS
Report any issues on the public bugtracker.
=head1 AUTHOR
Dan Book <dbook@cpan.org>
=head1 COPYRIGHT AND LICENSE
This software is Copyright (c) 2015 by Dan Book.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)
=head1 SEE ALSO
L<Dist::Zilla::Plugin::RewriteVersion>, L<Version::Next>
( run in 0.704 second using v1.01-cache-2.11-cpan-39bf76dae61 )