]> source.dussan.org Git - redmine.git/commitdiff
scm: mercurial: switch rev parameter of extension rhlog() if above Mercurial 1.6...
authorToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Mon, 24 Oct 2011 09:32:06 +0000 (09:32 +0000)
committerToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Mon, 24 Oct 2011 09:32:06 +0000 (09:32 +0000)
On Mercurial 1.5, following error raises.

<pre>
hg --config extensions.redminehelper=lib/redmine/scm/adapters/mercurial/redminehelper.py \
  --rhbranch default --from default --to 0

abort: unknown revision '"default"'!
</pre>

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@7641 e93f8b46-1217-0410-a6f0-8f06a7374b81

lib/redmine/scm/adapters/mercurial/redminehelper.py

index eaba17e1f534c71b20eedd80e6f195b95387ccb2..6eed7ed0abf7786cde0e1b7323edba4b839c47cd 100644 (file)
@@ -46,7 +46,7 @@ Output example of rhmanifest::
     </rhmanifest>
 """
 import re, time, cgi, urllib
-from mercurial import cmdutil, commands, node, error
+from mercurial import cmdutil, commands, node, error, hg
 
 _x = cgi.escape
 _u = lambda s: cgi.escape(urllib.quote(s))
@@ -146,7 +146,10 @@ def rhlog(ui, repo, *pats, **opts):
     bra      = urllib.unquote_plus(opts.pop('rhbranch', None))
     from_rev = from_rev.replace('"', '\\"')
     to_rev   = to_rev.replace('"', '\\"')
-    opts['rev'] = ['"%s":"%s"' % (from_rev, to_rev)]
+    if hg.util.version() >= '1.6':
+      opts['rev'] = ['"%s":"%s"' % (from_rev, to_rev)]
+    else:
+      opts['rev'] = ['%s:%s' % (from_rev, to_rev)]
     opts['branch'] = [bra]
     return commands.log(ui, repo, *map(urllib.unquote_plus, pats), **opts)