Shlomi Fish avatar Shlomi Fish committed f26dc93

Add the tag-release.pl script.

Comments (0)

Files changed (3)

+    - Add the scripts/tag-release.pl script to tag a release in the
+    Mercurial repository.
+        - The problem is that I'm using different conventions for the
+        names of the tags in different repositories and wish to introduce
+        some consistency.
+
 0.2.4 - Thu Jul 12 15:44:16 IDT 2012
     - Update the link to the new repository at bitbucket.org.
     - Add cleanup for a temporary directory in the tests.
 META.yml            Module meta-data (added by MakeMaker)
 README
 rejects/File/Find/Object.pm
+scripts/tag-release.pl
 t/01ffo.t
 t/02tree-create.t
 t/03traverse.t

scripts/tag-release.pl

+#!/usr/bin/perl
+
+use strict;
+use warnings;
+
+use IO::All;
+
+my ($version) =
+    (map { m{\$VERSION *= *'([^']+)'} ? ($1) : () }
+    io->file('lib/File/Find/Object.pm')->getlines()
+    )
+    ;
+
+if (!defined ($version))
+{
+    die "Version is undefined!";
+}
+
+my $mini_repos_base = 'https://svn.berlios.de/svnroot/repos/web-cpan/XML-Grammar-Fortune';
+
+my @cmd = (
+    "hg", "tag", "-m",
+    "Tagging the File-Find-Object release as $version",
+    "releases/$version",
+);
+
+print join(" ", map { /\s/ ? qq{"$_"} : $_ } @cmd), "\n";
+exec(@cmd);
+
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.