summaryrefslogtreecommitdiff
path: root/scripts/bump-version-number.pl
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/bump-version-number.pl')
-rw-r--r--scripts/bump-version-number.pl43
1 files changed, 43 insertions, 0 deletions
diff --git a/scripts/bump-version-number.pl b/scripts/bump-version-number.pl
new file mode 100644
index 0000000..4fb7cf8
--- /dev/null
+++ b/scripts/bump-version-number.pl
@@ -0,0 +1,43 @@
+#!/usr/bin/perl
+
+use strict;
+use warnings;
+
+use File::Find::Object;
+use IO::All;
+
+my $tree = File::Find::Object->new({}, 'lib/');
+
+my $version_n = shift(@ARGV);
+
+if (!defined($version_n))
+{
+ die "Specify version number as an argument! bump-version-number.pl '0.0.1'";
+}
+
+sub process_file
+{
+ # The filename.
+ my ($r) = @_;
+
+ my @lines = io->file($r)->getlines();
+ foreach (@lines)
+ {
+ s#(\$VERSION = "|^Version )\d+\.\d+(?:\.\d+)?("|)#$1 . $version_n . $2#e;
+ }
+ io->file($r)->print(
+ @lines
+ );
+}
+
+while (my $r = $tree->next()) {
+ if ($r =~ m{/\.(?:svn|hg|git)\z})
+ {
+ $tree->prune();
+ }
+ elsif ($r =~ m{\.pm\z})
+ {
+ process_file($r);
+ }
+}
+