changeset 14162:301725c3df9a

localrepo: reuse parent manifest in commitctx if no files have changed This speeds up the in-memory version of debugbuilddag that I'm working on considerably for the case where we want to build just a 00changelog.i (for discovery tests, for instance). There are a couple of test changes because node ids in tests have changed. The changes to the patch names in test-mq-qdelete.t were required because they could collide with nodeid abbreviations and newly actually do (patch "c" collides with id "cafe..." for patch "b").
author Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
date Mon, 02 May 2011 19:20:29 +0200
parents 8a0fca925992
children 38184a72d793
files mercurial/localrepo.py tests/test-acl.t tests/test-branch-tag-confict.t tests/test-branches.t tests/test-command-template.t tests/test-convert-svn-branches.t tests/test-convert-svn-encoding.t tests/test-empty-group.t tests/test-encoding.t tests/test-issue1306.t tests/test-keyword.t tests/test-mq-qdelete.t tests/test-mq.t tests/test-newbranch.t tests/test-notify.t tests/test-pull-r.t tests/test-rebase-cache.t tests/test-tag.t
diffstat 18 files changed, 267 insertions(+), 261 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/localrepo.py	Mon May 02 12:36:23 2011 +0200
+++ b/mercurial/localrepo.py	Mon May 02 19:20:29 2011 +0200
@@ -1043,8 +1043,6 @@
         tr = lock = None
         removed = list(ctx.removed())
         p1, p2 = ctx.p1(), ctx.p2()
-        m1 = p1.manifest().copy()
-        m2 = p2.manifest()
         user = ctx.user()
 
         lock = self.lock()
@@ -1052,40 +1050,48 @@
             tr = self.transaction("commit")
             trp = weakref.proxy(tr)
 
-            # check in files
-            new = {}
-            changed = []
-            linkrev = len(self)
-            for f in sorted(ctx.modified() + ctx.added()):
-                self.ui.note(f + "\n")
-                try:
-                    fctx = ctx[f]
-                    new[f] = self._filecommit(fctx, m1, m2, linkrev, trp,
-                                              changed)
-                    m1.set(f, fctx.flags())
-                except OSError, inst:
-                    self.ui.warn(_("trouble committing %s!\n") % f)
-                    raise
-                except IOError, inst:
-                    errcode = getattr(inst, 'errno', errno.ENOENT)
-                    if error or errcode and errcode != errno.ENOENT:
+            if ctx.files():
+                m1 = p1.manifest().copy()
+                m2 = p2.manifest()
+
+                # check in files
+                new = {}
+                changed = []
+                linkrev = len(self)
+                for f in sorted(ctx.modified() + ctx.added()):
+                    self.ui.note(f + "\n")
+                    try:
+                        fctx = ctx[f]
+                        new[f] = self._filecommit(fctx, m1, m2, linkrev, trp,
+                                                  changed)
+                        m1.set(f, fctx.flags())
+                    except OSError, inst:
                         self.ui.warn(_("trouble committing %s!\n") % f)
                         raise
-                    else:
-                        removed.append(f)
+                    except IOError, inst:
+                        errcode = getattr(inst, 'errno', errno.ENOENT)
+                        if error or errcode and errcode != errno.ENOENT:
+                            self.ui.warn(_("trouble committing %s!\n") % f)
+                            raise
+                        else:
+                            removed.append(f)
 
-            # update manifest
-            m1.update(new)
-            removed = [f for f in sorted(removed) if f in m1 or f in m2]
-            drop = [f for f in removed if f in m1]
-            for f in drop:
-                del m1[f]
-            mn = self.manifest.add(m1, trp, linkrev, p1.manifestnode(),
-                                   p2.manifestnode(), (new, drop))
+                # update manifest
+                m1.update(new)
+                removed = [f for f in sorted(removed) if f in m1 or f in m2]
+                drop = [f for f in removed if f in m1]
+                for f in drop:
+                    del m1[f]
+                mn = self.manifest.add(m1, trp, linkrev, p1.manifestnode(),
+                                       p2.manifestnode(), (new, drop))
+                files = changed + removed
+            else:
+                mn = p1.manifestnode()
+                files = []
 
             # update changelog
             self.changelog.delayupdate()
-            n = self.changelog.add(mn, changed + removed, ctx.description(),
+            n = self.changelog.add(mn, files, ctx.description(),
                                    trp, p1.node(), p2.node(),
                                    user, ctx.date(), ctx.extra().copy())
             p = lambda: self.changelog.writepending() and self.root or ""
--- a/tests/test-acl.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-acl.t	Mon May 02 19:20:29 2011 +0200
@@ -1365,7 +1365,7 @@
   ef1ea85a6374b77d6da9dcda9541f498f2d17df7
   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
   911600dab2ae7a9baff75958b84fe606851ce955
-  4ea792ff64284af438188103a0ee8aca1724fb8c
+  e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
   adding changesets
   bundling: 1 changesets
   bundling: 2 changesets
@@ -1386,7 +1386,7 @@
   changesets: 3 chunks
   add changeset 911600dab2ae
   changesets: 4 chunks
-  add changeset 4ea792ff6428
+  add changeset e8fc755d4d82
   adding manifests
   manifests: 1/4 chunks (25.00%)
   manifests: 2/4 chunks (50.00%)
@@ -1413,13 +1413,13 @@
   acl: allowing changeset f9cafe1212c8
   acl: branch access granted: "911600dab2ae" on branch "default"
   acl: allowing changeset 911600dab2ae
-  acl: branch access granted: "4ea792ff6428" on branch "foobar"
-  acl: allowing changeset 4ea792ff6428
+  acl: branch access granted: "e8fc755d4d82" on branch "foobar"
+  acl: allowing changeset e8fc755d4d82
   updating the branch cache
   checking for updated bookmarks
   repository tip rolled back to revision 2 (undo push)
   working directory now based on revision 2
-  2:07e028174695
+  2:fb35475503ef
   
 
 Branch acl deny test
@@ -1443,7 +1443,7 @@
   ef1ea85a6374b77d6da9dcda9541f498f2d17df7
   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
   911600dab2ae7a9baff75958b84fe606851ce955
-  4ea792ff64284af438188103a0ee8aca1724fb8c
+  e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
   adding changesets
   bundling: 1 changesets
   bundling: 2 changesets
@@ -1464,7 +1464,7 @@
   changesets: 3 chunks
   add changeset 911600dab2ae
   changesets: 4 chunks
-  add changeset 4ea792ff6428
+  add changeset e8fc755d4d82
   adding manifests
   manifests: 1/4 chunks (25.00%)
   manifests: 2/4 chunks (50.00%)
@@ -1491,12 +1491,12 @@
   acl: allowing changeset f9cafe1212c8
   acl: branch access granted: "911600dab2ae" on branch "default"
   acl: allowing changeset 911600dab2ae
-  error: pretxnchangegroup.acl hook failed: acl: user "astro" denied on branch "foobar" (changeset "4ea792ff6428")
+  error: pretxnchangegroup.acl hook failed: acl: user "astro" denied on branch "foobar" (changeset "e8fc755d4d82")
   transaction abort!
   rollback completed
-  abort: acl: user "astro" denied on branch "foobar" (changeset "4ea792ff6428")
+  abort: acl: user "astro" denied on branch "foobar" (changeset "e8fc755d4d82")
   no rollback information available
-  2:07e028174695
+  2:fb35475503ef
   
 
 Branch acl empty allow test
@@ -1518,7 +1518,7 @@
   ef1ea85a6374b77d6da9dcda9541f498f2d17df7
   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
   911600dab2ae7a9baff75958b84fe606851ce955
-  4ea792ff64284af438188103a0ee8aca1724fb8c
+  e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
   adding changesets
   bundling: 1 changesets
   bundling: 2 changesets
@@ -1539,7 +1539,7 @@
   changesets: 3 chunks
   add changeset 911600dab2ae
   changesets: 4 chunks
-  add changeset 4ea792ff6428
+  add changeset e8fc755d4d82
   adding manifests
   manifests: 1/4 chunks (25.00%)
   manifests: 2/4 chunks (50.00%)
@@ -1565,7 +1565,7 @@
   rollback completed
   abort: acl: user "astro" not allowed on branch "default" (changeset "ef1ea85a6374")
   no rollback information available
-  2:07e028174695
+  2:fb35475503ef
   
 
 Branch acl allow other
@@ -1589,7 +1589,7 @@
   ef1ea85a6374b77d6da9dcda9541f498f2d17df7
   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
   911600dab2ae7a9baff75958b84fe606851ce955
-  4ea792ff64284af438188103a0ee8aca1724fb8c
+  e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
   adding changesets
   bundling: 1 changesets
   bundling: 2 changesets
@@ -1610,7 +1610,7 @@
   changesets: 3 chunks
   add changeset 911600dab2ae
   changesets: 4 chunks
-  add changeset 4ea792ff6428
+  add changeset e8fc755d4d82
   adding manifests
   manifests: 1/4 chunks (25.00%)
   manifests: 2/4 chunks (50.00%)
@@ -1636,7 +1636,7 @@
   rollback completed
   abort: acl: user "astro" not allowed on branch "default" (changeset "ef1ea85a6374")
   no rollback information available
-  2:07e028174695
+  2:fb35475503ef
   
   $ do_push george
   Pushing as user george
@@ -1654,7 +1654,7 @@
   ef1ea85a6374b77d6da9dcda9541f498f2d17df7
   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
   911600dab2ae7a9baff75958b84fe606851ce955
-  4ea792ff64284af438188103a0ee8aca1724fb8c
+  e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
   adding changesets
   bundling: 1 changesets
   bundling: 2 changesets
@@ -1675,7 +1675,7 @@
   changesets: 3 chunks
   add changeset 911600dab2ae
   changesets: 4 chunks
-  add changeset 4ea792ff6428
+  add changeset e8fc755d4d82
   adding manifests
   manifests: 1/4 chunks (25.00%)
   manifests: 2/4 chunks (50.00%)
@@ -1702,13 +1702,13 @@
   acl: allowing changeset f9cafe1212c8
   acl: branch access granted: "911600dab2ae" on branch "default"
   acl: allowing changeset 911600dab2ae
-  acl: branch access granted: "4ea792ff6428" on branch "foobar"
-  acl: allowing changeset 4ea792ff6428
+  acl: branch access granted: "e8fc755d4d82" on branch "foobar"
+  acl: allowing changeset e8fc755d4d82
   updating the branch cache
   checking for updated bookmarks
   repository tip rolled back to revision 2 (undo push)
   working directory now based on revision 2
-  2:07e028174695
+  2:fb35475503ef
   
 
 Branch acl conflicting allow
@@ -1737,7 +1737,7 @@
   ef1ea85a6374b77d6da9dcda9541f498f2d17df7
   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
   911600dab2ae7a9baff75958b84fe606851ce955
-  4ea792ff64284af438188103a0ee8aca1724fb8c
+  e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
   adding changesets
   bundling: 1 changesets
   bundling: 2 changesets
@@ -1758,7 +1758,7 @@
   changesets: 3 chunks
   add changeset 911600dab2ae
   changesets: 4 chunks
-  add changeset 4ea792ff6428
+  add changeset e8fc755d4d82
   adding manifests
   manifests: 1/4 chunks (25.00%)
   manifests: 2/4 chunks (50.00%)
@@ -1785,13 +1785,13 @@
   acl: allowing changeset f9cafe1212c8
   acl: branch access granted: "911600dab2ae" on branch "default"
   acl: allowing changeset 911600dab2ae
-  acl: branch access granted: "4ea792ff6428" on branch "foobar"
-  acl: allowing changeset 4ea792ff6428
+  acl: branch access granted: "e8fc755d4d82" on branch "foobar"
+  acl: allowing changeset e8fc755d4d82
   updating the branch cache
   checking for updated bookmarks
   repository tip rolled back to revision 2 (undo push)
   working directory now based on revision 2
-  2:07e028174695
+  2:fb35475503ef
   
 Branch acl conflicting deny
 
@@ -1819,7 +1819,7 @@
   ef1ea85a6374b77d6da9dcda9541f498f2d17df7
   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
   911600dab2ae7a9baff75958b84fe606851ce955
-  4ea792ff64284af438188103a0ee8aca1724fb8c
+  e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
   adding changesets
   bundling: 1 changesets
   bundling: 2 changesets
@@ -1840,7 +1840,7 @@
   changesets: 3 chunks
   add changeset 911600dab2ae
   changesets: 4 chunks
-  add changeset 4ea792ff6428
+  add changeset e8fc755d4d82
   adding manifests
   manifests: 1/4 chunks (25.00%)
   manifests: 2/4 chunks (50.00%)
@@ -1866,5 +1866,5 @@
   rollback completed
   abort: acl: user "george" denied on branch "default" (changeset "ef1ea85a6374")
   no rollback information available
-  2:07e028174695
+  2:fb35475503ef
   
--- a/tests/test-branch-tag-confict.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-branch-tag-confict.t	Mon May 02 19:20:29 2011 +0200
@@ -19,7 +19,7 @@
 This is what we have:
 
   $ hg log
-  changeset:   2:02b1af9b58c2
+  changeset:   2:10519b3f489a
   branch:      branchortag
   tag:         tip
   user:        test
@@ -53,7 +53,7 @@
   $ hg up 'branch(branchortag)'
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg parents
-  changeset:   2:02b1af9b58c2
+  changeset:   2:10519b3f489a
   branch:      branchortag
   tag:         tip
   user:        test
--- a/tests/test-branches.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-branches.t	Mon May 02 19:20:29 2011 +0200
@@ -230,7 +230,7 @@
   default                        0:19709c5a4e75 (inactive)
   $ hg branches -c
   a branch name much longer than the default justification used by branches 7:10ff5895aa57
-  b                             12:2da6583810df (closed)
+  b                             12:e3d49c0575d8 (closed)
   c                              6:589736a22561 (inactive)
   a                              5:d8cbc61dbaa6 (inactive)
   default                        0:19709c5a4e75 (inactive)
@@ -240,7 +240,7 @@
   no open branch heads found on branches b
   [1]
   $ hg heads --closed b
-  changeset:   12:2da6583810df
+  changeset:   12:e3d49c0575d8
   branch:      b
   tag:         tip
   parent:      8:eebb944467c9
@@ -248,7 +248,7 @@
   date:        Thu Jan 01 00:00:09 1970 +0000
   summary:     close this part branch too
   
-  changeset:   11:c84627f3c15d
+  changeset:   11:d3f163457ebf
   branch:      b
   user:        test
   date:        Thu Jan 01 00:00:09 1970 +0000
@@ -261,13 +261,13 @@
 --- branch b is back in action
 
   $ hg branches -a
-  b                             13:6ac12926b8c3
+  b                             13:e23b5505d1ad
   a branch name much longer than the default justification used by branches 7:10ff5895aa57
 
 ---- test heads listings
 
   $ hg heads
-  changeset:   13:6ac12926b8c3
+  changeset:   13:e23b5505d1ad
   branch:      b
   tag:         tip
   user:        test
@@ -325,7 +325,7 @@
 branch b
 
   $ hg heads b
-  changeset:   13:6ac12926b8c3
+  changeset:   13:e23b5505d1ad
   branch:      b
   tag:         tip
   user:        test
@@ -333,14 +333,14 @@
   summary:     reopen branch with a change
   
   $ hg heads --closed b
-  changeset:   13:6ac12926b8c3
+  changeset:   13:e23b5505d1ad
   branch:      b
   tag:         tip
   user:        test
   date:        Thu Jan 01 00:00:09 1970 +0000
   summary:     reopen branch with a change
   
-  changeset:   11:c84627f3c15d
+  changeset:   11:d3f163457ebf
   branch:      b
   user:        test
   date:        Thu Jan 01 00:00:09 1970 +0000
@@ -359,7 +359,7 @@
   $ hg up -C b
   2 files updated, 0 files merged, 3 files removed, 0 files unresolved
   $ hg branches --color=always
-  \x1b[0;32mb\x1b[0m \x1b[0;33m                            13:6ac12926b8c3\x1b[0m (esc)
+  \x1b[0;32mb\x1b[0m \x1b[0;33m                            13:e23b5505d1ad\x1b[0m (esc)
   \x1b[0;0ma branch name much longer than the default justification used by branches\x1b[0m \x1b[0;33m7:10ff5895aa57\x1b[0m (esc)
   \x1b[0;0ma\x1b[0m \x1b[0;33m                             5:d8cbc61dbaa6\x1b[0m (inactive) (esc)
   \x1b[0;0mdefault\x1b[0m \x1b[0;33m                       0:19709c5a4e75\x1b[0m (inactive) (esc)
@@ -367,9 +367,9 @@
 default closed branch color:
 
   $ hg branches --color=always --closed
-  \x1b[0;32mb\x1b[0m \x1b[0;33m                            13:6ac12926b8c3\x1b[0m (esc)
+  \x1b[0;32mb\x1b[0m \x1b[0;33m                            13:e23b5505d1ad\x1b[0m (esc)
   \x1b[0;0ma branch name much longer than the default justification used by branches\x1b[0m \x1b[0;33m7:10ff5895aa57\x1b[0m (esc)
-  \x1b[0;30;1mc\x1b[0m \x1b[0;33m                            14:717d2e6fabe1\x1b[0m (closed) (esc)
+  \x1b[0;30;1mc\x1b[0m \x1b[0;33m                            14:f894c25619d3\x1b[0m (closed) (esc)
   \x1b[0;0ma\x1b[0m \x1b[0;33m                             5:d8cbc61dbaa6\x1b[0m (inactive) (esc)
   \x1b[0;0mdefault\x1b[0m \x1b[0;33m                       0:19709c5a4e75\x1b[0m (inactive) (esc)
 
@@ -385,7 +385,7 @@
 custom branch colors:
 
   $ hg branches --color=always
-  \x1b[0;31mb\x1b[0m \x1b[0;36m                            13:6ac12926b8c3\x1b[0m (esc)
+  \x1b[0;31mb\x1b[0m \x1b[0;36m                            13:e23b5505d1ad\x1b[0m (esc)
   \x1b[0;32ma branch name much longer than the default justification used by branches\x1b[0m \x1b[0;36m7:10ff5895aa57\x1b[0m (esc)
   \x1b[0;35ma\x1b[0m \x1b[0;36m                             5:d8cbc61dbaa6\x1b[0m (inactive) (esc)
   \x1b[0;35mdefault\x1b[0m \x1b[0;36m                       0:19709c5a4e75\x1b[0m (inactive) (esc)
@@ -393,8 +393,8 @@
 custom closed branch color:
 
   $ hg branches --color=always --closed
-  \x1b[0;31mb\x1b[0m \x1b[0;36m                            13:6ac12926b8c3\x1b[0m (esc)
+  \x1b[0;31mb\x1b[0m \x1b[0;36m                            13:e23b5505d1ad\x1b[0m (esc)
   \x1b[0;32ma branch name much longer than the default justification used by branches\x1b[0m \x1b[0;36m7:10ff5895aa57\x1b[0m (esc)
-  \x1b[0;34mc\x1b[0m \x1b[0;36m                            14:717d2e6fabe1\x1b[0m (closed) (esc)
+  \x1b[0;34mc\x1b[0m \x1b[0;36m                            14:f894c25619d3\x1b[0m (closed) (esc)
   \x1b[0;35ma\x1b[0m \x1b[0;36m                             5:d8cbc61dbaa6\x1b[0m (inactive) (esc)
   \x1b[0;35mdefault\x1b[0m \x1b[0;36m                       0:19709c5a4e75\x1b[0m (inactive) (esc)
--- a/tests/test-command-template.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-command-template.t	Mon May 02 19:20:29 2011 +0200
@@ -77,13 +77,13 @@
   7:-1   29114dbae42b   1970-01-12 13:46 +0000   user
     second
   
-  6:5,4   c7b487c6c50e   1970-01-18 08:40 +0000   person
+  6:5,4   d41e714fe50d   1970-01-18 08:40 +0000   person
     merge
   
   5:3   13207e5a10d9   1970-01-18 08:40 +0000   person
     new head
   
-  4   32a18f097fcc   1970-01-17 04:53 +0000   person
+  4   bbe44766e73d   1970-01-17 04:53 +0000   person
     new branch
   
   3   10e46f2dcbf4   1970-01-16 01:06 +0000   person
@@ -106,13 +106,13 @@
   7:-1   29114dbae42b   1970-01-12 13:46 +0000   User Name <user@hostname>
     second
   
-  6:5,4   c7b487c6c50e   1970-01-18 08:40 +0000   person
+  6:5,4   d41e714fe50d   1970-01-18 08:40 +0000   person
     merge
   
   5:3   13207e5a10d9   1970-01-18 08:40 +0000   person
     new head
   
-  4   32a18f097fcc   1970-01-17 04:53 +0000   person
+  4   bbe44766e73d   1970-01-17 04:53 +0000   person
     new branch
   
   3   10e46f2dcbf4   1970-01-16 01:06 +0000   person
@@ -139,13 +139,13 @@
   7:-1,-1   29114dbae42b   1970-01-12 13:46 +0000   User Name <user@hostname>
     second
   
-  6:5,4   c7b487c6c50e   1970-01-18 08:40 +0000   person
+  6:5,4   d41e714fe50d   1970-01-18 08:40 +0000   person
     merge
   
   5:3,-1   13207e5a10d9   1970-01-18 08:40 +0000   person
     new head
   
-  4:3,-1   32a18f097fcc   1970-01-17 04:53 +0000   person
+  4:3,-1   bbe44766e73d   1970-01-17 04:53 +0000   person
     new branch
   
   3:2,-1   10e46f2dcbf4   1970-01-16 01:06 +0000   person
@@ -182,9 +182,9 @@
   <date>1970-01-12T13:46:40+00:00</date>
   <msg xml:space="preserve">second</msg>
   </logentry>
-  <logentry revision="6" node="c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f">
+  <logentry revision="6" node="d41e714fe50d9e4a5f11b4d595d543481b5f980b">
   <parent revision="5" node="13207e5a10d9fd28ec424934298e176197f2c67f" />
-  <parent revision="4" node="32a18f097fcccf76ef282f62f8a85b3adf8d13c4" />
+  <parent revision="4" node="bbe44766e73d5f11ed2177f1838de10c53ef3e74" />
   <author email="person">person</author>
   <date>1970-01-18T08:40:01+00:00</date>
   <msg xml:space="preserve">merge</msg>
@@ -195,7 +195,7 @@
   <date>1970-01-18T08:40:00+00:00</date>
   <msg xml:space="preserve">new head</msg>
   </logentry>
-  <logentry revision="4" node="32a18f097fcccf76ef282f62f8a85b3adf8d13c4">
+  <logentry revision="4" node="bbe44766e73d5f11ed2177f1838de10c53ef3e74">
   <branch>foo</branch>
   <author email="person">person</author>
   <date>1970-01-17T04:53:20+00:00</date>
@@ -253,9 +253,9 @@
   <path action="A">second</path>
   </paths>
   </logentry>
-  <logentry revision="6" node="c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f">
+  <logentry revision="6" node="d41e714fe50d9e4a5f11b4d595d543481b5f980b">
   <parent revision="5" node="13207e5a10d9fd28ec424934298e176197f2c67f" />
-  <parent revision="4" node="32a18f097fcccf76ef282f62f8a85b3adf8d13c4" />
+  <parent revision="4" node="bbe44766e73d5f11ed2177f1838de10c53ef3e74" />
   <author email="person">person</author>
   <date>1970-01-18T08:40:01+00:00</date>
   <msg xml:space="preserve">merge</msg>
@@ -271,7 +271,7 @@
   <path action="A">d</path>
   </paths>
   </logentry>
-  <logentry revision="4" node="32a18f097fcccf76ef282f62f8a85b3adf8d13c4">
+  <logentry revision="4" node="bbe44766e73d5f11ed2177f1838de10c53ef3e74">
   <branch>foo</branch>
   <author email="person">person</author>
   <date>1970-01-17T04:53:20+00:00</date>
@@ -348,9 +348,9 @@
   </paths>
   <extra key="branch">default</extra>
   </logentry>
-  <logentry revision="6" node="c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f">
+  <logentry revision="6" node="d41e714fe50d9e4a5f11b4d595d543481b5f980b">
   <parent revision="5" node="13207e5a10d9fd28ec424934298e176197f2c67f" />
-  <parent revision="4" node="32a18f097fcccf76ef282f62f8a85b3adf8d13c4" />
+  <parent revision="4" node="bbe44766e73d5f11ed2177f1838de10c53ef3e74" />
   <author email="person">person</author>
   <date>1970-01-18T08:40:01+00:00</date>
   <msg xml:space="preserve">merge</msg>
@@ -369,7 +369,7 @@
   </paths>
   <extra key="branch">default</extra>
   </logentry>
-  <logentry revision="4" node="32a18f097fcccf76ef282f62f8a85b3adf8d13c4">
+  <logentry revision="4" node="bbe44766e73d5f11ed2177f1838de10c53ef3e74">
   <branch>foo</branch>
   <parent revision="3" node="10e46f2dcbf4823578cf180f33ecf0b957964c47" />
   <parent revision="-1" node="0000000000000000000000000000000000000000" />
@@ -510,7 +510,7 @@
   1970-01-18  person  <person>
   
   	* merge
-  	[c7b487c6c50e]
+  	[d41e714fe50d]
   
   	* d:
   	new head
@@ -519,7 +519,7 @@
   1970-01-17  person  <person>
   
   	* new branch
-  	[32a18f097fcc] <foo>
+  	[bbe44766e73d] <foo>
   
   1970-01-16  person  <person>
   
@@ -560,12 +560,12 @@
   1970-01-18  person  <person>
   
   	* merge
-  	[c7b487c6c50e]
+  	[d41e714fe50d]
   
   1970-01-17  person  <person>
   
   	* new branch
-  	[32a18f097fcc] <foo>
+  	[bbe44766e73d] <foo>
   
 
 Keys work:
@@ -886,63 +886,63 @@
   files--debug: c
   files--debug: b
   files--debug: a
-  manifest: 8:94961b75a2da
-  manifest: 7:f2dbc354b94e
-  manifest: 6:91015e9dbdd7
-  manifest: 5:4dc3def4f9b4
-  manifest: 4:90ae8dda64e1
+  manifest: 6:94961b75a2da
+  manifest: 5:f2dbc354b94e
+  manifest: 4:4dc3def4f9b4
+  manifest: 4:4dc3def4f9b4
+  manifest: 3:cb5a1327723b
   manifest: 3:cb5a1327723b
   manifest: 2:6e0e82995c35
   manifest: 1:4e8d705b1e53
   manifest: 0:a0c8bcbbb45c
-  manifest--verbose: 8:94961b75a2da
-  manifest--verbose: 7:f2dbc354b94e
-  manifest--verbose: 6:91015e9dbdd7
-  manifest--verbose: 5:4dc3def4f9b4
-  manifest--verbose: 4:90ae8dda64e1
+  manifest--verbose: 6:94961b75a2da
+  manifest--verbose: 5:f2dbc354b94e
+  manifest--verbose: 4:4dc3def4f9b4
+  manifest--verbose: 4:4dc3def4f9b4
+  manifest--verbose: 3:cb5a1327723b
   manifest--verbose: 3:cb5a1327723b
   manifest--verbose: 2:6e0e82995c35
   manifest--verbose: 1:4e8d705b1e53
   manifest--verbose: 0:a0c8bcbbb45c
-  manifest--debug: 8:94961b75a2da554b4df6fb599e5bfc7d48de0c64
-  manifest--debug: 7:f2dbc354b94e5ec0b4f10680ee0cee816101d0bf
-  manifest--debug: 6:91015e9dbdd76a6791085d12b0a0ec7fcd22ffbf
-  manifest--debug: 5:4dc3def4f9b4c6e8de820f6ee74737f91e96a216
-  manifest--debug: 4:90ae8dda64e1a876c792bccb9af66284f6018363
+  manifest--debug: 6:94961b75a2da554b4df6fb599e5bfc7d48de0c64
+  manifest--debug: 5:f2dbc354b94e5ec0b4f10680ee0cee816101d0bf
+  manifest--debug: 4:4dc3def4f9b4c6e8de820f6ee74737f91e96a216
+  manifest--debug: 4:4dc3def4f9b4c6e8de820f6ee74737f91e96a216
+  manifest--debug: 3:cb5a1327723bada42f117e4c55a303246eaf9ccc
   manifest--debug: 3:cb5a1327723bada42f117e4c55a303246eaf9ccc
   manifest--debug: 2:6e0e82995c35d0d57a52aca8da4e56139e06b4b1
   manifest--debug: 1:4e8d705b1e53e3f9375e0e60dc7b525d8211fe55
   manifest--debug: 0:a0c8bcbbb45c63b90b70ad007bf38961f64f2af0
   node: 95c24699272ef57d062b8bccc32c878bf841784a
   node: 29114dbae42b9f078cf2714dbe3a86bba8ec7453
-  node: c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f
+  node: d41e714fe50d9e4a5f11b4d595d543481b5f980b
   node: 13207e5a10d9fd28ec424934298e176197f2c67f
-  node: 32a18f097fcccf76ef282f62f8a85b3adf8d13c4
+  node: bbe44766e73d5f11ed2177f1838de10c53ef3e74
   node: 10e46f2dcbf4823578cf180f33ecf0b957964c47
   node: 97054abb4ab824450e9164180baf491ae0078465
   node: b608e9d1a3f0273ccf70fb85fd6866b3482bf965
   node: 1e4e1b8f71e05681d422154f5421e385fec3454f
   node--verbose: 95c24699272ef57d062b8bccc32c878bf841784a
   node--verbose: 29114dbae42b9f078cf2714dbe3a86bba8ec7453
-  node--verbose: c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f
+  node--verbose: d41e714fe50d9e4a5f11b4d595d543481b5f980b
   node--verbose: 13207e5a10d9fd28ec424934298e176197f2c67f
-  node--verbose: 32a18f097fcccf76ef282f62f8a85b3adf8d13c4
+  node--verbose: bbe44766e73d5f11ed2177f1838de10c53ef3e74
   node--verbose: 10e46f2dcbf4823578cf180f33ecf0b957964c47
   node--verbose: 97054abb4ab824450e9164180baf491ae0078465
   node--verbose: b608e9d1a3f0273ccf70fb85fd6866b3482bf965
   node--verbose: 1e4e1b8f71e05681d422154f5421e385fec3454f
   node--debug: 95c24699272ef57d062b8bccc32c878bf841784a
   node--debug: 29114dbae42b9f078cf2714dbe3a86bba8ec7453
-  node--debug: c7b487c6c50ef1cf464cafdc4f4f5e615fc5999f
+  node--debug: d41e714fe50d9e4a5f11b4d595d543481b5f980b
   node--debug: 13207e5a10d9fd28ec424934298e176197f2c67f
-  node--debug: 32a18f097fcccf76ef282f62f8a85b3adf8d13c4
+  node--debug: bbe44766e73d5f11ed2177f1838de10c53ef3e74
   node--debug: 10e46f2dcbf4823578cf180f33ecf0b957964c47
   node--debug: 97054abb4ab824450e9164180baf491ae0078465
   node--debug: b608e9d1a3f0273ccf70fb85fd6866b3482bf965
   node--debug: 1e4e1b8f71e05681d422154f5421e385fec3454f
   parents: 
   parents: -1:000000000000 
-  parents: 5:13207e5a10d9 4:32a18f097fcc 
+  parents: 5:13207e5a10d9 4:bbe44766e73d 
   parents: 3:10e46f2dcbf4 
   parents: 
   parents: 
@@ -951,7 +951,7 @@
   parents: 
   parents--verbose: 
   parents--verbose: -1:000000000000 
-  parents--verbose: 5:13207e5a10d9 4:32a18f097fcc 
+  parents--verbose: 5:13207e5a10d9 4:bbe44766e73d 
   parents--verbose: 3:10e46f2dcbf4 
   parents--verbose: 
   parents--verbose: 
@@ -960,7 +960,7 @@
   parents--verbose: 
   parents--debug: 7:29114dbae42b9f078cf2714dbe3a86bba8ec7453 -1:0000000000000000000000000000000000000000 
   parents--debug: -1:0000000000000000000000000000000000000000 -1:0000000000000000000000000000000000000000 
-  parents--debug: 5:13207e5a10d9fd28ec424934298e176197f2c67f 4:32a18f097fcccf76ef282f62f8a85b3adf8d13c4 
+  parents--debug: 5:13207e5a10d9fd28ec424934298e176197f2c67f 4:bbe44766e73d5f11ed2177f1838de10c53ef3e74 
   parents--debug: 3:10e46f2dcbf4823578cf180f33ecf0b957964c47 -1:0000000000000000000000000000000000000000 
   parents--debug: 3:10e46f2dcbf4823578cf180f33ecf0b957964c47 -1:0000000000000000000000000000000000000000 
   parents--debug: 2:97054abb4ab824450e9164180baf491ae0078465 -1:0000000000000000000000000000000000000000 
@@ -1174,9 +1174,9 @@
   $ hg log --template '{node|short}\n'
   95c24699272e
   29114dbae42b
-  c7b487c6c50e
+  d41e714fe50d
   13207e5a10d9
-  32a18f097fcc
+  bbe44766e73d
   10e46f2dcbf4
   97054abb4ab8
   b608e9d1a3f0
@@ -1197,9 +1197,9 @@
   8: 
   7: 8:95c24699272e
   6: 
-  5: 6:c7b487c6c50e
-  4: 6:c7b487c6c50e
-  3: 4:32a18f097fcc 5:13207e5a10d9
+  5: 6:d41e714fe50d
+  4: 6:d41e714fe50d
+  3: 4:bbe44766e73d 5:13207e5a10d9
   2: 3:10e46f2dcbf4
   1: 2:97054abb4ab8
   0: 1:b608e9d1a3f0
--- a/tests/test-convert-svn-branches.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-convert-svn-branches.t	Mon May 02 19:20:29 2011 +0200
@@ -83,10 +83,10 @@
   
 
   $ hg branches
-  newbranch                     11:08fca3ff8634
-  default                       10:098988aa63ba
-  old                            9:b308f345079b
-  old2                           8:49f2336c7b8b (inactive)
+  newbranch                     11:a6d7cc050ad1
+  default                       10:6e2b33404495
+  old                            9:93c4b0f99529
+  old2                           8:b52884d7bead (inactive)
   $ hg tags -q
   tip
   $ cd ..
--- a/tests/test-convert-svn-encoding.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-convert-svn-encoding.t	Mon May 02 19:20:29 2011 +0200
@@ -129,7 +129,7 @@
 Check tags are in UTF-8
 
   $ cat .hgtags
-  221c3fdaf24df5f14c0a64c597581e2eacfb47bb branch\xc3\xa9e (esc)
-  7a40952c2db29cf00d9e31df3749e98d8a4bdcbf branch\xc3\xa9 (esc)
+  e94e4422020e715add80525e8f0f46c9968689f1 branch\xc3\xa9e (esc)
+  f7e66f98380ed1e53a797c5c7a7a2616a7ab377d branch\xc3\xa9 (esc)
 
   $ cd ..
--- a/tests/test-empty-group.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-empty-group.t	Mon May 02 19:20:29 2011 +0200
@@ -67,7 +67,7 @@
   $ hg -R a outgoing b
   comparing with b
   searching for changes
-  changeset:   4:119caaef4ed1
+  changeset:   4:1ec3c74fc0e0
   tag:         tip
   parent:      1:79f9e10cd04e
   parent:      2:8e1bb01c1a24
@@ -78,7 +78,7 @@
   $ hg -R a outgoing c
   comparing with c
   searching for changes
-  changeset:   3:cbb48b367d1b
+  changeset:   3:d15a0c284984
   parent:      2:8e1bb01c1a24
   parent:      1:79f9e10cd04e
   user:        test
@@ -88,7 +88,7 @@
   $ hg -R b outgoing c
   comparing with c
   searching for changes
-  changeset:   3:cbb48b367d1b
+  changeset:   3:d15a0c284984
   tag:         tip
   parent:      2:8e1bb01c1a24
   parent:      1:79f9e10cd04e
@@ -99,7 +99,7 @@
   $ hg -R c outgoing b
   comparing with b
   searching for changes
-  changeset:   3:119caaef4ed1
+  changeset:   3:1ec3c74fc0e0
   tag:         tip
   parent:      1:79f9e10cd04e
   parent:      2:8e1bb01c1a24
--- a/tests/test-encoding.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-encoding.t	Mon May 02 19:20:29 2011 +0200
@@ -48,7 +48,7 @@
 hg log (ascii)
 
   $ hg --encoding ascii log
-  changeset:   5:093c6077d1c8
+  changeset:   5:a52c0692f24a
   branch:      ?
   tag:         tip
   user:        test
@@ -85,7 +85,7 @@
 hg log (latin-1)
 
   $ hg --encoding latin-1 log
-  changeset:   5:093c6077d1c8
+  changeset:   5:a52c0692f24a
   branch:      \xe9 (esc)
   tag:         tip
   user:        test
@@ -122,7 +122,7 @@
 hg log (utf-8)
 
   $ hg --encoding utf-8 log
-  changeset:   5:093c6077d1c8
+  changeset:   5:a52c0692f24a
   branch:      \xc3\xa9 (esc)
   tag:         tip
   user:        test
@@ -159,37 +159,37 @@
 hg tags (ascii)
 
   $ HGENCODING=ascii hg tags
-  tip                                5:093c6077d1c8
+  tip                                5:a52c0692f24a
   ?                                  3:ca661e7520de
 
 hg tags (latin-1)
 
   $ HGENCODING=latin-1 hg tags
-  tip                                5:093c6077d1c8
+  tip                                5:a52c0692f24a
   \xe9                                  3:ca661e7520de (esc)
 
 hg tags (utf-8)
 
   $ HGENCODING=utf-8 hg tags
-  tip                                5:093c6077d1c8
+  tip                                5:a52c0692f24a
   \xc3\xa9                                  3:ca661e7520de (esc)
 
 hg branches (ascii)
 
   $ HGENCODING=ascii hg branches
-  ?                              5:093c6077d1c8
+  ?                              5:a52c0692f24a
   default                        4:94db611b4196 (inactive)
 
 hg branches (latin-1)
 
   $ HGENCODING=latin-1 hg branches
-  \xe9                              5:093c6077d1c8 (esc)
+  \xe9                              5:a52c0692f24a (esc)
   default                        4:94db611b4196 (inactive)
 
 hg branches (utf-8)
 
   $ HGENCODING=utf-8 hg branches
-  \xc3\xa9                              5:093c6077d1c8 (esc)
+  \xc3\xa9                              5:a52c0692f24a (esc)
   default                        4:94db611b4196 (inactive)
   $ echo '[ui]' >> .hg/hgrc
   $ echo 'fallbackencoding = koi8-r' >> .hg/hgrc
@@ -197,7 +197,7 @@
 hg log (utf-8)
 
   $ HGENCODING=utf-8 hg log
-  changeset:   5:093c6077d1c8
+  changeset:   5:a52c0692f24a
   branch:      \xc3\xa9 (esc)
   tag:         tip
   user:        test
--- a/tests/test-issue1306.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-issue1306.t	Mon May 02 19:20:29 2011 +0200
@@ -18,14 +18,14 @@
   adding c
 
   $ hg log
-  changeset:   2:1630aed6ed2b
+  changeset:   2:ae3d9c30ec50
   branch:      br
   tag:         tip
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
   summary:     c
   
-  changeset:   1:234f53e6c5ff
+  changeset:   1:3f7f930ca414
   branch:      br
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
@@ -50,7 +50,7 @@
   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
 
   $ hg -R local1 parents
-  changeset:   2:1630aed6ed2b
+  changeset:   2:ae3d9c30ec50
   branch:      br
   tag:         tip
   user:        test
@@ -86,7 +86,7 @@
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 
   $ hg -R local3 parents
-  changeset:   1:234f53e6c5ff
+  changeset:   1:3f7f930ca414
   branch:      br
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
--- a/tests/test-keyword.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-keyword.t	Mon May 02 19:20:29 2011 +0200
@@ -982,7 +982,7 @@
   $ HGMERGE=internal:local hg resolve -a
   $ hg commit -m localresolve
   $ cat m
-  $Id: m 41efa6d38e9b Thu, 01 Jan 1970 00:00:00 +0000 test $
+  $Id: m 800511b3a22d Thu, 01 Jan 1970 00:00:00 +0000 test $
   bar
 
 Test restricted mode with transplant -b
@@ -1000,19 +1000,19 @@
   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg -y transplant -b foo tip
   applying 4aa30d025d50
-  4aa30d025d50 transplanted to 5a4da427c162
+  4aa30d025d50 transplanted to e00abbf63521
 
 Expansion in changeset but not in file
 
   $ hg tip -p
-  changeset:   11:5a4da427c162
+  changeset:   11:e00abbf63521
   tag:         tip
-  parent:      9:41efa6d38e9b
+  parent:      9:800511b3a22d
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
   summary:     9foobranch
   
-  diff -r 41efa6d38e9b -r 5a4da427c162 a
+  diff -r 800511b3a22d -r e00abbf63521 a
   --- a/a	Thu Jan 01 00:00:00 1970 +0000
   +++ b/a	Thu Jan 01 00:00:00 1970 +0000
   @@ -1,3 +1,4 @@
@@ -1023,7 +1023,7 @@
   
   $ head -n 2 a
   foobranch
-  expand $Id: a 5a4da427c162 Thu, 01 Jan 1970 00:00:00 +0000 test $
+  expand $Id: a e00abbf63521 Thu, 01 Jan 1970 00:00:00 +0000 test $
 
 Turn off expansion
 
--- a/tests/test-mq-qdelete.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-mq-qdelete.t	Mon May 02 19:20:29 2011 +0200
@@ -8,77 +8,77 @@
   $ hg ci -Ambase -d '1 0'
   adding base
 
-  $ hg qnew -d '1 0' a
-  $ hg qnew -d '1 0' b
-  $ hg qnew -d '1 0' c
+  $ hg qnew -d '1 0' pa
+  $ hg qnew -d '1 0' pb
+  $ hg qnew -d '1 0' pc
 
   $ hg qdel
   abort: qdelete requires at least one revision or patch name
   [255]
 
-  $ hg qdel c
-  abort: cannot delete applied patch c
+  $ hg qdel pc
+  abort: cannot delete applied patch pc
   [255]
 
   $ hg qpop
-  popping c
-  now at: b
+  popping pc
+  now at: pb
 
 Delete the same patch twice in one command (issue2427)
 
-  $ hg qdel c c
+  $ hg qdel pc pc
 
   $ hg qseries
-  a
-  b
+  pa
+  pb
 
   $ ls .hg/patches
-  a
-  b
+  pa
+  pb
   series
   status
 
   $ hg qpop
-  popping b
-  now at: a
+  popping pb
+  now at: pa
 
   $ hg qdel -k 1
 
   $ ls .hg/patches
-  a
-  b
+  pa
+  pb
   series
   status
 
-  $ hg qdel -r a
-  patch a finalized without changeset message
+  $ hg qdel -r pa
+  patch pa finalized without changeset message
 
   $ hg qapplied
 
   $ hg log --template '{rev} {desc}\n'
-  1 [mq]: a
+  1 [mq]: pa
   0 base
 
-  $ hg qnew d
-  $ hg qnew e
-  $ hg qnew f
+  $ hg qnew pd
+  $ hg qnew pe
+  $ hg qnew pf
 
-  $ hg qdel -r e
+  $ hg qdel -r pe
   abort: cannot delete revision 3 above applied patches
   [255]
 
-  $ hg qdel -r qbase:e
-  patch d finalized without changeset message
-  patch e finalized without changeset message
+  $ hg qdel -r qbase:pe
+  patch pd finalized without changeset message
+  patch pe finalized without changeset message
 
   $ hg qapplied
-  f
+  pf
 
   $ hg log --template '{rev} {desc}\n'
-  4 [mq]: f
-  3 [mq]: e
-  2 [mq]: d
-  1 [mq]: a
+  4 [mq]: pf
+  3 [mq]: pe
+  2 [mq]: pd
+  1 [mq]: pa
   0 base
 
   $ cd ..
@@ -97,53 +97,53 @@
   $ hg qfinish -a
   no patches applied
 
-  $ hg qnew -d '1 0' a
-  $ hg qnew -d '1 0' b
-  $ hg qnew c # XXX fails to apply by /usr/bin/patch if we put a date
+  $ hg qnew -d '1 0' pa
+  $ hg qnew -d '1 0' pb
+  $ hg qnew pc # XXX fails to apply by /usr/bin/patch if we put a date
 
   $ hg qfinish 0
   abort: revision 0 is not managed
   [255]
 
-  $ hg qfinish b
+  $ hg qfinish pb
   abort: cannot delete revision 2 above applied patches
   [255]
 
   $ hg qpop
-  popping c
-  now at: b
+  popping pc
+  now at: pb
 
-  $ hg qfinish -a c
-  abort: unknown revision 'c'!
+  $ hg qfinish -a pc
+  abort: unknown revision 'pc'!
   [255]
 
   $ hg qpush
-  applying c
-  patch c is empty
-  now at: c
+  applying pc
+  patch pc is empty
+  now at: pc
 
-  $ hg qfinish qbase:b
-  patch a finalized without changeset message
-  patch b finalized without changeset message
+  $ hg qfinish qbase:pb
+  patch pa finalized without changeset message
+  patch pb finalized without changeset message
 
   $ hg qapplied
-  c
+  pc
 
   $ hg log --template '{rev} {desc}\n'
-  3 imported patch c
-  2 [mq]: b
-  1 [mq]: a
+  3 imported patch pc
+  2 [mq]: pb
+  1 [mq]: pa
   0 base
 
-  $ hg qfinish -a c
-  patch c finalized without changeset message
+  $ hg qfinish -a pc
+  patch pc finalized without changeset message
 
   $ hg qapplied
 
   $ hg log --template '{rev} {desc}\n'
-  3 imported patch c
-  2 [mq]: b
-  1 [mq]: a
+  3 imported patch pc
+  2 [mq]: pb
+  1 [mq]: pa
   0 base
 
   $ ls .hg/patches
@@ -177,7 +177,7 @@
   $ hg qrefresh -d '1 0'
   $ echo > .hg/patches/series # remove 3.diff from series to confuse mq
   $ hg qfinish -a
-  revision c4dd2b624061 refers to unknown patches: 3.diff
+  revision 47dfa8501675 refers to unknown patches: 3.diff
 
 more complex state 'both known and unknown patches
 
@@ -189,6 +189,6 @@
   $ echo hup >>  base
   $ hg qnew -f -d '1 0' -m 6 6.diff
   $ hg qfinish -a
-  revision 6fdec4b20ec3 refers to unknown patches: 5.diff
-  revision 2ba51db7ba24 refers to unknown patches: 4.diff
+  revision 2b1c98802260 refers to unknown patches: 5.diff
+  revision 33a6861311c0 refers to unknown patches: 4.diff
 
--- a/tests/test-mq.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-mq.t	Mon May 02 19:20:29 2011 +0200
@@ -1282,7 +1282,7 @@
   patch empty is empty
   now at: empty
   $ hg diff --config diff.nodates=True
-  diff -r bf5fc3f07a0a hello.txt
+  diff -r d58265112590 hello.txt
   --- a/hello.txt
   +++ b/hello.txt
   @@ -1,1 +1,2 @@
@@ -1296,7 +1296,7 @@
    hello
   +world
   $ hg log -l1 -p
-  changeset:   1:bf5fc3f07a0a
+  changeset:   1:d58265112590
   tag:         empty
   tag:         qbase
   tag:         qtip
--- a/tests/test-newbranch.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-newbranch.t	Mon May 02 19:20:29 2011 +0200
@@ -31,7 +31,7 @@
 There should be only one default branch head
 
   $ hg heads .
-  changeset:   3:9d567d0b51f9
+  changeset:   3:1c28f494dae6
   tag:         tip
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
@@ -54,34 +54,34 @@
   $ hg ci -m "merge"
 
   $ hg log
-  changeset:   5:dc140083783b
+  changeset:   5:530046499edf
   branch:      foo
   tag:         tip
-  parent:      4:98d14f698afe
-  parent:      3:9d567d0b51f9
+  parent:      4:adf1a74a7f7b
+  parent:      3:1c28f494dae6
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
   summary:     merge
   
-  changeset:   4:98d14f698afe
+  changeset:   4:adf1a74a7f7b
   branch:      foo
-  parent:      1:0079f24813e2
+  parent:      1:6c0e42da283a
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
   summary:     modify a branch
   
-  changeset:   3:9d567d0b51f9
+  changeset:   3:1c28f494dae6
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
   summary:     clear branch name
   
-  changeset:   2:ed2bbf4e0102
+  changeset:   2:c21617b13b22
   branch:      bar
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
   summary:     change branch name
   
-  changeset:   1:0079f24813e2
+  changeset:   1:6c0e42da283a
   branch:      foo
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
@@ -93,9 +93,9 @@
   summary:     initial
   
   $ hg branches
-  foo                            5:dc140083783b
-  default                        3:9d567d0b51f9 (inactive)
-  bar                            2:ed2bbf4e0102 (inactive)
+  foo                            5:530046499edf
+  default                        3:1c28f494dae6 (inactive)
+  bar                            2:c21617b13b22 (inactive)
 
   $ hg branches -q
   foo
@@ -111,10 +111,10 @@
   $ cp $branchcache .hg/bc-invalid
 
   $ hg log -r foo
-  changeset:   4:98d14f698afe
+  changeset:   4:adf1a74a7f7b
   branch:      foo
   tag:         tip
-  parent:      1:0079f24813e2
+  parent:      1:6c0e42da283a
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
   summary:     modify a branch
@@ -123,12 +123,12 @@
 
   $ hg --debug log -r foo
   invalidating branch cache (tip differs)
-  changeset:   4:98d14f698afeaff8cb612dcf215ce95e639effc3
+  changeset:   4:adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6
   branch:      foo
   tag:         tip
-  parent:      1:0079f24813e2b73a891577c243684c5066347bc8
+  parent:      1:6c0e42da283a56b5edc5b4fadb491365ec7f5fa8
   parent:      -1:0000000000000000000000000000000000000000
-  manifest:    4:d01b250baaa05909152f7ae07d7a649deea0df9a
+  manifest:    1:8c342a37dfba0b3d3ce073562a00d8a813c54ffe
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
   files:       a
@@ -141,13 +141,13 @@
   $ echo corrupted > $branchcache
 
   $ hg log -qr foo
-  4:98d14f698afe
+  4:adf1a74a7f7b
 
   $ cat $branchcache
-  98d14f698afeaff8cb612dcf215ce95e639effc3 4
-  9d567d0b51f9e2068b054e1948e1a927f99b5874 default
-  98d14f698afeaff8cb612dcf215ce95e639effc3 foo
-  ed2bbf4e01029020711be82ca905283e883f0e11 bar
+  adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 4
+  1c28f494dae69a2f8fc815059d257eccf3fcfe75 default
+  adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 foo
+  c21617b13b220988e7a2e26290fbe4325ffa7139 bar
 
 Push should update the branch cache:
 
@@ -166,22 +166,22 @@
   $ hg push -qf ../target
 
   $ cat ../target/$branchcache
-  98d14f698afeaff8cb612dcf215ce95e639effc3 4
-  9d567d0b51f9e2068b054e1948e1a927f99b5874 default
-  98d14f698afeaff8cb612dcf215ce95e639effc3 foo
-  ed2bbf4e01029020711be82ca905283e883f0e11 bar
+  adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 4
+  1c28f494dae69a2f8fc815059d257eccf3fcfe75 default
+  adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 foo
+  c21617b13b220988e7a2e26290fbe4325ffa7139 bar
 
 Update with no arguments: tipmost revision of the current branch:
 
   $ hg up -q -C 0
   $ hg up -q
   $ hg id
-  9d567d0b51f9
+  1c28f494dae6
 
   $ hg up -q 1
   $ hg up -q
   $ hg id
-  98d14f698afe (foo) tip
+  adf1a74a7f7b (foo) tip
 
   $ hg branch foobar
   marked working directory as branch foobar
@@ -210,11 +210,11 @@
   foo
   $ hg commit -m'Merge ff into foo'
   $ hg parents
-  changeset:   6:917eb54e1b4b
+  changeset:   6:185ffbfefa30
   branch:      foo
   tag:         tip
-  parent:      4:98d14f698afe
-  parent:      5:6683a60370cb
+  parent:      4:adf1a74a7f7b
+  parent:      5:1a3c27dc5e11
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
   summary:     Merge ff into foo
--- a/tests/test-notify.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-notify.t	Mon May 02 19:20:29 2011 +0200
@@ -298,11 +298,11 @@
   Date: * (glob)
   Subject: merge
   From: test@test.com
-  X-Hg-Notification: changeset 22c88b85aa27
+  X-Hg-Notification: changeset 6a0cf76b2701
   Message-Id: <*> (glob)
   To: baz@test.com, foo@bar
   
-  changeset 22c88b85aa27 in b
+  changeset 6a0cf76b2701 in b
   description: merge
   (run 'hg update' to get a working copy)
 
@@ -330,11 +330,11 @@
   Date: * (glob)
   Subject: \xc3\xa0... (esc)
   From: test@test.com
-  X-Hg-Notification: changeset 4a47f01c1356
+  X-Hg-Notification: changeset 7ea05ad269dc
   Message-Id: <*> (glob)
   To: baz@test.com, foo@bar
   
-  changeset 4a47f01c1356 in b
+  changeset 7ea05ad269dc in b
   description: \xc3\xa0\xc3\xa1\xc3\xa2\xc3\xa3\xc3\xa4 (esc)
   diffstat:
   
@@ -343,7 +343,7 @@
   
   diffs (7 lines):
   
-  diff -r 22c88b85aa27 -r 4a47f01c1356 a
+  diff -r 6a0cf76b2701 -r 7ea05ad269dc a
   --- a/a	Thu Jan 01 00:00:03 1970 +0000
   +++ b/a	Thu Jan 01 00:00:00 1970 +0000
   @@ -1,2 +1,3 @@
--- a/tests/test-pull-r.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-pull-r.t	Mon May 02 19:20:29 2011 +0200
@@ -51,7 +51,7 @@
   added 2 changesets with 1 changes to 1 files
   (run 'hg update' to get a working copy)
   $ hg heads -q --closed
-  4:996201fa1abf
+  4:00cfe9073916
   2:effea6de0384
   1:ed1b79f46b9a
 
--- a/tests/test-rebase-cache.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-rebase-cache.t	Mon May 02 19:20:29 2011 +0200
@@ -85,9 +85,9 @@
   o  0: 'A'
   
   $ hg branches
-  branch3                        8:05b64c4ca2d8
-  branch2                        6:b410fbec727a
-  branch1                        2:9d931918fcf7 (inactive)
+  branch3                        8:4666b71e8e32
+  branch2                        6:5097051d331d
+  branch1                        2:0a03079c47fd (inactive)
   default                        0:1994f17a630e (inactive)
 
   $ hg theads
@@ -101,9 +101,9 @@
   saved backup bundle to $TESTTMP/a1/.hg/strip-backup/*-backup.hg (glob)
 
   $ hg branches
-  branch3                        8:c1d4b9719987
-  branch2                        4:1be2b203ae5e
-  branch1                        2:9d931918fcf7
+  branch3                        8:466cdfb14b62
+  branch2                        4:e4fdb121d036
+  branch1                        2:0a03079c47fd
   default                        0:1994f17a630e (inactive)
 
   $ hg theads
@@ -162,9 +162,9 @@
   saved backup bundle to $TESTTMP/a2/.hg/strip-backup/*-backup.hg (glob)
 
   $ hg branches
-  branch2                        8:e1e80ed73210
-  branch3                        7:75fd7b643dce
-  branch1                        2:9d931918fcf7 (inactive)
+  branch2                        8:6b4bdc1b5ac0
+  branch3                        7:653b9feb4616
+  branch1                        2:0a03079c47fd (inactive)
   default                        0:1994f17a630e (inactive)
 
   $ hg theads
@@ -226,8 +226,8 @@
   saved backup bundle to $TESTTMP/a3/.hg/strip-backup/*-backup.hg (glob)
 
   $ hg branches
-  branch2                        7:e1e80ed73210
-  branch1                        2:9d931918fcf7 (inactive)
+  branch2                        7:6b4bdc1b5ac0
+  branch1                        2:0a03079c47fd (inactive)
   default                        0:1994f17a630e (inactive)
 
   $ hg theads
--- a/tests/test-tag.t	Mon May 02 12:36:23 2011 +0200
+++ b/tests/test-tag.t	Mon May 02 19:20:29 2011 +0200
@@ -292,7 +292,7 @@
   [255]
   $ hg tag --rev 1 --local t3
   $ hg tags -v
-  tip                                2:8a8f787d0d5c
+  tip                                2:2a156e8887cc
   t3                                 1:c3adabd1a5f4 local
 
   $ cd ..