comparison mercurial/cmdutil.py @ 24602:201caa10536b

jsonchangeset: set rev and node to "null" for workingctx
author Yuya Nishihara <yuya@tcha.org>
date Sat, 14 Mar 2015 20:15:40 +0900
parents e191d5d8d515
children e74f819e9160
comparison
equal deleted inserted replaced
24601:d80819f67d59 24602:201caa10536b
1258 else: 1258 else:
1259 self.ui.write("[]\n") 1259 self.ui.write("[]\n")
1260 1260
1261 def _show(self, ctx, copies, matchfn, props): 1261 def _show(self, ctx, copies, matchfn, props):
1262 '''show a single changeset or file revision''' 1262 '''show a single changeset or file revision'''
1263 hexnode = hex(ctx.node())
1264 rev = ctx.rev() 1263 rev = ctx.rev()
1264 if rev is None:
1265 jrev = jnode = 'null'
1266 else:
1267 jrev = str(rev)
1268 jnode = '"%s"' % hex(ctx.node())
1265 j = encoding.jsonescape 1269 j = encoding.jsonescape
1266 1270
1267 if self._first: 1271 if self._first:
1268 self.ui.write("[\n {") 1272 self.ui.write("[\n {")
1269 self._first = False 1273 self._first = False
1270 else: 1274 else:
1271 self.ui.write(",\n {") 1275 self.ui.write(",\n {")
1272 1276
1273 if self.ui.quiet: 1277 if self.ui.quiet:
1274 self.ui.write('\n "rev": %d' % rev) 1278 self.ui.write('\n "rev": %s' % jrev)
1275 self.ui.write(',\n "node": "%s"' % hexnode) 1279 self.ui.write(',\n "node": %s' % jnode)
1276 self.ui.write('\n }') 1280 self.ui.write('\n }')
1277 return 1281 return
1278 1282
1279 self.ui.write('\n "rev": %d' % rev) 1283 self.ui.write('\n "rev": %s' % jrev)
1280 self.ui.write(',\n "node": "%s"' % hexnode) 1284 self.ui.write(',\n "node": %s' % jnode)
1281 self.ui.write(',\n "branch": "%s"' % j(ctx.branch())) 1285 self.ui.write(',\n "branch": "%s"' % j(ctx.branch()))
1282 self.ui.write(',\n "phase": "%s"' % ctx.phasestr()) 1286 self.ui.write(',\n "phase": "%s"' % ctx.phasestr())
1283 self.ui.write(',\n "user": "%s"' % j(ctx.user())) 1287 self.ui.write(',\n "user": "%s"' % j(ctx.user()))
1284 self.ui.write(',\n "date": [%d, %d]' % ctx.date()) 1288 self.ui.write(',\n "date": [%d, %d]' % ctx.date())
1285 self.ui.write(',\n "desc": "%s"' % j(ctx.description())) 1289 self.ui.write(',\n "desc": "%s"' % j(ctx.description()))