150 else: |
150 else: |
151 lastctx = repo[rev - 1] |
151 lastctx = repo[rev - 1] |
152 if lastctx.rev() != nullrev: |
152 if lastctx.rev() != nullrev: |
153 interarrival[roundto(ctx.date()[0] - lastctx.date()[0], 300)] += 1 |
153 interarrival[roundto(ctx.date()[0] - lastctx.date()[0], 300)] += 1 |
154 diff = sum((d.splitlines() |
154 diff = sum((d.splitlines() |
155 for d in ctx.diff(pctx, opts=dict(git=True))), []) |
155 for d in ctx.diff(pctx, opts={'git': True})), []) |
156 fileadds, diradds, fileremoves, filechanges = 0, 0, 0, 0 |
156 fileadds, diradds, fileremoves, filechanges = 0, 0, 0, 0 |
157 for filename, mar, lineadd, lineremove, binary in parsegitdiff(diff): |
157 for filename, mar, lineadd, lineremove, binary in parsegitdiff(diff): |
158 if binary: |
158 if binary: |
159 continue |
159 continue |
160 added = sum(lineadd.itervalues(), 0) |
160 added = sum(lineadd.itervalues(), 0) |
187 ui.status(_('writing output to %s\n') % output) |
187 ui.status(_('writing output to %s\n') % output) |
188 |
188 |
189 def pronk(d): |
189 def pronk(d): |
190 return sorted(d.iteritems(), key=lambda x: x[1], reverse=True) |
190 return sorted(d.iteritems(), key=lambda x: x[1], reverse=True) |
191 |
191 |
192 json.dump(dict(revs=len(revs), |
192 json.dump({'revs': len(revs), |
193 lineschanged=pronk(lineschanged), |
193 'lineschanged': pronk(lineschanged), |
194 children=pronk(invchildren), |
194 'children': pronk(invchildren), |
195 fileschanged=pronk(fileschanged), |
195 'fileschanged': pronk(fileschanged), |
196 filesadded=pronk(filesadded), |
196 'filesadded': pronk(filesadded), |
197 linesinfilesadded=pronk(linesinfilesadded), |
197 'linesinfilesadded': pronk(linesinfilesadded), |
198 dirsadded=pronk(dirsadded), |
198 'dirsadded': pronk(dirsadded), |
199 filesremoved=pronk(filesremoved), |
199 'filesremoved': pronk(filesremoved), |
200 linelengths=pronk(linelengths), |
200 'linelengths': pronk(linelengths), |
201 parents=pronk(parents), |
201 'parents': pronk(parents), |
202 p1distance=pronk(p1distance), |
202 'p1distance': pronk(p1distance), |
203 p2distance=pronk(p2distance), |
203 'p2distance': pronk(p2distance), |
204 interarrival=pronk(interarrival), |
204 'interarrival': pronk(interarrival), |
205 tzoffset=pronk(tzoffset), |
205 'tzoffset': pronk(tzoffset), |
206 ), |
206 }, |
207 fp) |
207 fp) |
208 fp.close() |
208 fp.close() |
209 |
209 |
210 @command('synthesize', |
210 @command('synthesize', |
211 [('c', 'count', 0, _('create given number of commits'), _('COUNT')), |
211 [('c', 'count', 0, _('create given number of commits'), _('COUNT')), |