< prev index next >
./jcheck.py
Print this page
@@ -41,11 +41,11 @@
# For more information: http://openjdk.java.net/projects/code-tools/jcheck/
_version = "@VERSION@"
_date = "@DATE@"
-import sys, os, re, urllib, urllib2, json
+import sys, os, re, urllib, urllib2, json, inspect
from mercurial.node import *
from mercurial import cmdutil, context, error, patch, templater, util, utils
try:
# Mercurial 4.3 and higher
from mercurial import registrar
@@ -676,16 +676,19 @@
def c_03_hash(self, ctx):
hash = hex(ctx.node())
if hash in self.blacklist:
self.error(ctx, "Blacklisted changeset: " + hash)
- def check(self, node):
+ def check(self, rev, node):
self.summarized = False
self.cs_bugids = [ ]
self.cs_author = None
self.cs_reviewers = [ ]
self.cs_contributor = None
+ if len(inspect.getargspec(context.changectx.__init__).args) == 4:
+ ctx = context.changectx(self.repo, rev, node)
+ else:
ctx = context.changectx(self.repo, node)
self.ui.note(oneline(ctx))
if hex(node) in changeset_whitelist:
self.ui.note("%s in whitelist; skipping\n" % hex(node))
return Pass
@@ -739,11 +742,11 @@
firstnode = bin(node)
start = repo.changelog.rev(firstnode)
end = (hasattr(repo.changelog, 'count') and repo.changelog.count() or
len(repo.changelog))
for rev in xrange(start, end):
- ch.check(repo.changelog.node(rev))
+ ch.check(rev, repo.changelog.node(rev))
if ch.rv == Fail:
ui.status("\n")
return ch.rv
@@ -796,11 +799,11 @@
try:
nop = lambda c, fns: None
iter = cmdutil.walkchangerevs(repo, _matchall(repo), opts, nop)
for ctx in iter:
- ch.check(ctx.node())
+ ch.check(ctx, ctx.node())
except (AttributeError, TypeError):
# AttributeError: matchall does not exist in hg < 1.1
# TypeError: walkchangerevs args differ in hg <= 1.3.1
get = util.cachefunc(lambda r: repo.changectx(r).changeset())
changeiter, matchfn = cmdutil.walkchangerevs(ui, repo, [], get, opts)
@@ -809,11 +812,11 @@
for st, rev, fns in changeiter:
if st == 'add':
node = repo.changelog.node(rev)
if ui.debugflag:
displayer.show(rev, node, copies=False)
- ch.check(node)
+ ch.check(rev, node)
elif st == 'iter':
if ui.debugflag:
displayer.flush(rev)
if ch.rv == Fail:
< prev index next >