scm: mercurial: switch rev parameter of extension rhlog() if above Mercurial 1.6 or not (#9465)

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
This commit is contained in:
Toshi MARUYAMA 2011-10-24 09:32:06 +00:00
parent a6d3409a5a
commit ed87fc4e66
1 changed files with 5 additions and 2 deletions

View File

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