##// END OF EJS Templates
commands.py: use contexts in export
Benoit Boissinot -
r3970:fff8a534 default
parent child Browse files
Show More
@@ -593,12 +593,13 b" def export(repo, revs, template='hg-%h.p"
593 total = len(revs)
593 total = len(revs)
594 revwidth = max([len(str(rev)) for rev in revs])
594 revwidth = max([len(str(rev)) for rev in revs])
595
595
596 def single(node, seqno, fp):
596 def single(rev, seqno, fp):
597 parents = [p for p in repo.changelog.parents(node) if p != nullid]
597 ctx = repo.changectx(rev)
598 node = ctx.node()
599 parents = [p.node() for p in ctx.parents() if p]
598 if switch_parent:
600 if switch_parent:
599 parents.reverse()
601 parents.reverse()
600 prev = (parents and parents[0]) or nullid
602 prev = (parents and parents[0]) or nullid
601 change = repo.changelog.read(node)
602
603
603 if not fp:
604 if not fp:
604 fp = cmdutil.make_file(repo, template, node, total=total,
605 fp = cmdutil.make_file(repo, template, node, total=total,
@@ -607,13 +608,13 b" def export(repo, revs, template='hg-%h.p"
607 repo.ui.note("%s\n" % fp.name)
608 repo.ui.note("%s\n" % fp.name)
608
609
609 fp.write("# HG changeset patch\n")
610 fp.write("# HG changeset patch\n")
610 fp.write("# User %s\n" % change[1])
611 fp.write("# User %s\n" % ctx.user())
611 fp.write("# Date %d %d\n" % change[2])
612 fp.write("# Date %d %d\n" % ctx.date())
612 fp.write("# Node ID %s\n" % hex(node))
613 fp.write("# Node ID %s\n" % hex(node))
613 fp.write("# Parent %s\n" % hex(prev))
614 fp.write("# Parent %s\n" % hex(prev))
614 if len(parents) > 1:
615 if len(parents) > 1:
615 fp.write("# Parent %s\n" % hex(parents[1]))
616 fp.write("# Parent %s\n" % hex(parents[1]))
616 fp.write(change[4].rstrip())
617 fp.write(ctx.description().rstrip())
617 fp.write("\n\n")
618 fp.write("\n\n")
618
619
619 diff(repo, prev, node, fp=fp, opts=opts)
620 diff(repo, prev, node, fp=fp, opts=opts)
@@ -621,7 +622,7 b" def export(repo, revs, template='hg-%h.p"
621 fp.close()
622 fp.close()
622
623
623 for seqno, rev in enumerate(revs):
624 for seqno, rev in enumerate(revs):
624 single(repo.lookup(rev), seqno+1, fp)
625 single(rev, seqno+1, fp)
625
626
626 def diffstat(patchlines):
627 def diffstat(patchlines):
627 fd, name = tempfile.mkstemp(prefix="hg-patchbomb-", suffix=".txt")
628 fd, name = tempfile.mkstemp(prefix="hg-patchbomb-", suffix=".txt")
General Comments 0
You need to be logged in to leave comments. Login now