<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Feb 10, 2019 at 3:54 AM Boris Feld <<a href="mailto:boris.feld@octobus.net">boris.feld@octobus.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"># HG changeset patch<br>
# User Boris Feld <<a href="mailto:boris.feld@octobus.net" target="_blank">boris.feld@octobus.net</a>><br>
# Date 1549749690 -3600<br>
#      Sat Feb 09 23:01:30 2019 +0100<br>
# Node ID f4936120d74a81199068bed14a04ac65f24f6109<br>
# Parent  62d13ee8373ad4a7c97192680a4781fe5818a1df<br>
# EXP-Topic hook.txname<br>
# Available At <a href="https://bitbucket.org/octobus/mercurial-devel/" rel="noreferrer" target="_blank">https://bitbucket.org/octobus/mercurial-devel/</a><br>
#              hg pull <a href="https://bitbucket.org/octobus/mercurial-devel/" rel="noreferrer" target="_blank">https://bitbucket.org/octobus/mercurial-devel/</a> -r f4936120d74a<br>
transaction: include txnname in the hookargs dictionary<br>
<br>
There is no reason to not include the txnname alongside the txnid in all case.<br>
So let's do that. If the transaction name is useful to internal code, it can<br>
be useful for hooks.<br></blockquote><div><br></div><div style="font-family:arial,helvetica,sans-serif" class="gmail_default">What are the cases when we have transaction name and source different?<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py<br>
--- a/mercurial/localrepo.py<br>
+++ b/mercurial/localrepo.py<br>
@@ -1811,7 +1811,6 @@ class localrepository(object):<br>
                     args = tr.hookargs.copy()<br>
                     args.update(bookmarks.preparehookargs(name, old, new))<br>
                     repo.hook('pretxnclose-bookmark', throw=True,<br>
-                              txnname=desc,<br>
                               **pycompat.strkwargs(args))<br>
             if hook.hashook(repo.ui, 'pretxnclose-phase'):<br>
                 cl = repo.unfiltered().changelog<br>
@@ -1819,11 +1818,11 @@ class localrepository(object):<br>
                     args = tr.hookargs.copy()<br>
                     node = hex(cl.node(rev))<br>
                     args.update(phases.preparehookargs(node, old, new))<br>
-                    repo.hook('pretxnclose-phase', throw=True, txnname=desc,<br>
+                    repo.hook('pretxnclose-phase', throw=True,<br>
                               **pycompat.strkwargs(args))<br>
<br>
             repo.hook('pretxnclose', throw=True,<br>
-                      txnname=desc, **pycompat.strkwargs(tr.hookargs))<br>
+                      **pycompat.strkwargs(tr.hookargs))<br>
         def releasefn(tr, success):<br>
             repo = reporef()<br>
             if success:<br>
@@ -1857,6 +1856,7 @@ class localrepository(object):<br>
         tr.changes['bookmarks'] = {}<br>
<br>
         tr.hookargs['txnid'] = txnid<br>
+        tr.hookargs['txnname'] = desc<br>
         # note: writing the fncache only during finalize mean that the file is<br>
         # outdated when running hooks. As fncache is used for streaming clone,<br>
         # this is not expected to break anything that happen during the hooks.<br>
@@ -1878,7 +1878,7 @@ class localrepository(object):<br>
                         args = tr.hookargs.copy()<br>
                         args.update(bookmarks.preparehookargs(name, old, new))<br>
                         repo.hook('txnclose-bookmark', throw=False,<br>
-                                  txnname=desc, **pycompat.strkwargs(args))<br>
+                                  **pycompat.strkwargs(args))<br>
<br>
                 if hook.hashook(repo.ui, 'txnclose-phase'):<br>
                     cl = repo.unfiltered().changelog<br>
@@ -1887,10 +1887,10 @@ class localrepository(object):<br>
                         args = tr.hookargs.copy()<br>
                         node = hex(cl.node(rev))<br>
                         args.update(phases.preparehookargs(node, old, new))<br>
-                        repo.hook('txnclose-phase', throw=False, txnname=desc,<br>
+                        repo.hook('txnclose-phase', throw=False,<br>
                                   **pycompat.strkwargs(args))<br>
<br>
-                repo.hook('txnclose', throw=False, txnname=desc,<br>
+                repo.hook('txnclose', throw=False,<br>
                           **pycompat.strkwargs(hookargs))<br>
             reporef()._afterlock(hookfunc)<br>
         tr.addfinalize('txnclose-hook', txnclosehook)<br>
@@ -1902,7 +1902,7 @@ class localrepository(object):<br>
         def txnaborthook(tr2):<br>
             """To be run if transaction is aborted<br>
             """<br>
-            reporef().hook('txnabort', throw=False, txnname=desc,<br>
+            reporef().hook('txnabort', throw=False,<br>
                            **pycompat.strkwargs(tr2.hookargs))<br>
         tr.addabort('txnabort-hook', txnaborthook)<br>
         # avoid eager cache invalidation. in-memory data should be identical<br>
diff --git a/tests/test-bundle.t b/tests/test-bundle.t<br>
--- a/tests/test-bundle.t<br>
+++ b/tests/test-bundle.t<br>
@@ -239,6 +239,8 @@ hg -R bundle://../full.hg verify<br>
   HG_NODE_LAST=aa35859c02ea8bd48da5da68cd2740ac71afcbaf<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  bundle:../full.hg<br>
   HG_URL=bundle:../full.hg<br>
<br>
   (run 'hg heads' to see heads, 'hg merge' to merge)<br>
@@ -270,6 +272,8 @@ Pull full.hg into empty again (using -R;<br>
   HG_NODE_LAST=aa35859c02ea8bd48da5da68cd2740ac71afcbaf<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  bundle:empty+full.hg<br>
   HG_URL=bundle:empty+full.hg<br>
<br>
   (run 'hg heads' to see heads, 'hg merge' to merge)<br>
diff --git a/tests/test-bundle2-multiple-changegroups.t b/tests/test-bundle2-multiple-changegroups.t<br>
--- a/tests/test-bundle2-multiple-changegroups.t<br>
+++ b/tests/test-bundle2-multiple-changegroups.t<br>
@@ -88,6 +88,8 @@ Pull the new commits in the clone<br>
   HG_PENDING=$TESTTMP/clone<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   remote: changegroup2<br>
@@ -103,6 +105,8 @@ Pull the new commits in the clone<br>
   HG_PHASES_MOVED=1<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   new changesets 27547f69f254:f838bfaca5c7<br>
@@ -112,6 +116,8 @@ Pull the new commits in the clone<br>
   HG_NODE_LAST=27547f69f25460a52fff66ad004e58da7ad3fb56<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   incoming hook: HG_HOOKNAME=incoming<br>
@@ -119,6 +125,8 @@ Pull the new commits in the clone<br>
   HG_NODE=27547f69f25460a52fff66ad004e58da7ad3fb56<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   changegroup hook: HG_HOOKNAME=changegroup<br>
@@ -128,6 +136,8 @@ Pull the new commits in the clone<br>
   HG_PHASES_MOVED=1<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   incoming hook: HG_HOOKNAME=incoming<br>
@@ -136,6 +146,8 @@ Pull the new commits in the clone<br>
   HG_PHASES_MOVED=1<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   pullop.cgresult is 1<br>
@@ -204,6 +216,8 @@ pullop.cgresult<br>
   HG_PENDING=$TESTTMP/clone<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   remote: changegroup2<br>
@@ -219,6 +233,8 @@ pullop.cgresult<br>
   HG_PHASES_MOVED=1<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   new changesets b3325c91a4d9:5cd59d311f65<br>
@@ -228,6 +244,8 @@ pullop.cgresult<br>
   HG_NODE_LAST=8a5212ebc8527f9fb821601504794e3eb11a1ed3<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   incoming hook: HG_HOOKNAME=incoming<br>
@@ -235,6 +253,8 @@ pullop.cgresult<br>
   HG_NODE=b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   incoming hook: HG_HOOKNAME=incoming<br>
@@ -242,6 +262,8 @@ pullop.cgresult<br>
   HG_NODE=8a5212ebc8527f9fb821601504794e3eb11a1ed3<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   changegroup hook: HG_HOOKNAME=changegroup<br>
@@ -251,6 +273,8 @@ pullop.cgresult<br>
   HG_PHASES_MOVED=1<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   incoming hook: HG_HOOKNAME=incoming<br>
@@ -259,6 +283,8 @@ pullop.cgresult<br>
   HG_PHASES_MOVED=1<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   incoming hook: HG_HOOKNAME=incoming<br>
@@ -267,6 +293,8 @@ pullop.cgresult<br>
   HG_PHASES_MOVED=1<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   incoming hook: HG_HOOKNAME=incoming<br>
@@ -275,6 +303,8 @@ pullop.cgresult<br>
   HG_PHASES_MOVED=1<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   pullop.cgresult is 3<br>
@@ -343,6 +373,8 @@ pullop.cgresult<br>
   HG_PENDING=$TESTTMP/clone<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   remote: changegroup2<br>
@@ -358,6 +390,8 @@ pullop.cgresult<br>
   HG_PHASES_MOVED=1<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   new changesets 71bd7b46de72:9d18e5bd9ab0<br>
@@ -367,6 +401,8 @@ pullop.cgresult<br>
   HG_NODE_LAST=71bd7b46de72e69a32455bf88d04757d542e6cf4<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   incoming hook: HG_HOOKNAME=incoming<br>
@@ -374,6 +410,8 @@ pullop.cgresult<br>
   HG_NODE=71bd7b46de72e69a32455bf88d04757d542e6cf4<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   changegroup hook: HG_HOOKNAME=changegroup<br>
@@ -383,6 +421,8 @@ pullop.cgresult<br>
   HG_PHASES_MOVED=1<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   incoming hook: HG_HOOKNAME=incoming<br>
@@ -391,6 +431,8 @@ pullop.cgresult<br>
   HG_PHASES_MOVED=1<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/repo (glob)<br>
   HG_URL=file:$TESTTMP/repo<br>
<br>
   pullop.cgresult is -2<br>
diff --git a/tests/test-hook.t b/tests/test-hook.t<br>
--- a/tests/test-hook.t<br>
+++ b/tests/test-hook.t<br>
@@ -252,6 +252,8 @@ test generic hooks<br>
   HG_HOOKTYPE=prechangegroup<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/a (glob)<br>
   HG_URL=file:$TESTTMP/a<br>
<br>
   adding changesets<br>
@@ -265,6 +267,8 @@ test generic hooks<br>
   HG_NODE_LAST=07f3376c1e655977439df2a814e3cc14b27abac2<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/a (glob)<br>
   HG_URL=file:$TESTTMP/a<br>
<br>
   incoming hook: HG_HOOKNAME=incoming<br>
@@ -272,6 +276,8 @@ test generic hooks<br>
   HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/a (glob)<br>
   HG_URL=file:$TESTTMP/a<br>
<br>
   incoming hook: HG_HOOKNAME=incoming<br>
@@ -279,6 +285,8 @@ test generic hooks<br>
   HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/a (glob)<br>
   HG_URL=file:$TESTTMP/a<br>
<br>
   incoming hook: HG_HOOKNAME=incoming<br>
@@ -286,6 +294,8 @@ test generic hooks<br>
   HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/a (glob)<br>
   HG_URL=file:$TESTTMP/a<br>
<br>
   (run 'hg update' to get a working copy)<br>
@@ -543,6 +553,7 @@ pushkey hook<br>
   HG_PUSHKEYCOMPAT=1<br>
   HG_SOURCE=push<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=push<br>
   HG_URL=file:$TESTTMP/a<br>
<br>
   txnclose hook: HG_BOOKMARK_MOVED=1<br>
@@ -629,6 +640,7 @@ test that prepushkey can prevent incomin<br>
   HG_PUSHKEYCOMPAT=1<br>
   HG_SOURCE=push<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=push<br>
   HG_URL=file:$TESTTMP/a<br>
<br>
   abort: prepushkey hook exited with status 1<br>
@@ -687,6 +699,8 @@ prechangegroup hook can prevent incoming<br>
   HG_HOOKTYPE=prechangegroup<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/a (glob)<br>
   HG_URL=file:$TESTTMP/a<br>
<br>
   abort: prechangegroup.forbid hook exited with status 1<br>
@@ -715,6 +729,8 @@ incoming changes no longer there after<br>
   HG_PENDING=$TESTTMP/b<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  file:/*/$TESTTMP/a (glob)<br>
   HG_URL=file:$TESTTMP/a<br>
<br>
   transaction abort!<br>
diff --git a/tests/test-http-bundle1.t b/tests/test-http-bundle1.t<br>
--- a/tests/test-http-bundle1.t<br>
+++ b/tests/test-http-bundle1.t<br>
@@ -167,6 +167,8 @@ pull<br>
   HG_NODE_LAST=5fed3813f7f5e1824344fdc9cf8f63bb662c292d<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  http://localhost:$HGPORT1/<br>
   HG_URL=http://localhost:$HGPORT1/<br>
<br>
   (run 'hg update' to get a working copy)<br>
diff --git a/tests/test-http.t b/tests/test-http.t<br>
--- a/tests/test-http.t<br>
+++ b/tests/test-http.t<br>
@@ -156,6 +156,8 @@ pull<br>
   HG_NODE_LAST=5fed3813f7f5e1824344fdc9cf8f63bb662c292d<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  http://localhost:$HGPORT1/<br>
   HG_URL=http://localhost:$HGPORT1/<br>
<br>
   (run 'hg update' to get a working copy)<br>
diff --git a/tests/test-https.t b/tests/test-https.t<br>
--- a/tests/test-https.t<br>
+++ b/tests/test-https.t<br>
@@ -232,6 +232,8 @@ pull without cacert<br>
   HG_NODE_LAST=5fed3813f7f5e1824344fdc9cf8f63bb662c292d<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  https://localhost:$HGPORT/<br>
   HG_URL=https://localhost:$HGPORT/<br>
<br>
   (run 'hg update' to get a working copy)<br>
diff --git a/tests/test-push-http.t b/tests/test-push-http.t<br>
--- a/tests/test-push-http.t<br>
+++ b/tests/test-push-http.t<br>
@@ -101,6 +101,8 @@ expect success<br>
   remote: HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872<br>
   remote: HG_SOURCE=serve<br>
   remote: HG_TXNID=TXN:$ID$<br>
+  remote: HG_TXNNAME=serve<br>
+  remote: remote:http:$LOCALIP: (glob)<br>
   remote: HG_URL=remote:http:$LOCALIP: (glob)<br>
   remote: <br>
   % serve errors<br>
@@ -128,6 +130,8 @@ expect success<br>
   remote: HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872<br>
   remote: HG_SOURCE=serve<br>
   remote: HG_TXNID=TXN:$ID$<br>
+  remote: HG_TXNNAME=serve<br>
+  remote: remote:http:$LOCALIP: (glob)<br>
   remote: HG_URL=remote:http:$LOCALIP: (glob)<br>
   remote: <br>
   % serve errors<br>
@@ -159,6 +163,7 @@ expect success<br>
   remote: HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872<br>
   remote: HG_SOURCE=serve<br>
   remote: HG_TXNID=TXN:$ID$<br>
+  remote: HG_TXNNAME=serve<br>
   remote: HG_URL=remote:http:$LOCALIP: (glob)<br>
   remote: <br>
   % serve errors<br>
@@ -187,6 +192,8 @@ expect success, server lacks the httphea<br>
   remote: HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872<br>
   remote: HG_SOURCE=serve<br>
   remote: HG_TXNID=TXN:$ID$<br>
+  remote: HG_TXNNAME=serve<br>
+  remote: remote:http:$LOCALIP: (glob) (no-bundle2 !)<br>
   remote: HG_URL=remote:http:$LOCALIP: (glob)<br>
   remote: <br>
   % serve errors<br>
@@ -214,6 +221,8 @@ expect success, server lacks the unbundl<br>
   remote: HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872<br>
   remote: HG_SOURCE=serve<br>
   remote: HG_TXNID=TXN:$ID$<br>
+  remote: HG_TXNNAME=serve<br>
+  remote: remote:http:$LOCALIP: (glob) (no-bundle2 !)<br>
   remote: HG_URL=remote:http:$LOCALIP: (glob)<br>
   remote: <br>
   % serve errors<br>
@@ -253,6 +262,8 @@ has no parameter<br>
   remote: HG_NODE_LAST=ba677d0156c1196c1a699fa53f390dcfc3ce3872<br>
   remote: HG_SOURCE=serve<br>
   remote: HG_TXNID=TXN:$ID$<br>
+  remote: HG_TXNNAME=serve<br>
+  remote: remote:http:$LOCALIP: (glob) (no-bundle2 !)<br>
   remote: HG_URL=remote:http:$LOCALIP: (glob)<br>
   remote: <br>
   % serve errors<br>
@@ -312,6 +323,7 @@ and fails the entire push.<br>
   remote: HG_PHASES_MOVED=1<br>
   remote: HG_SOURCE=serve<br>
   remote: HG_TXNID=TXN:$ID$<br>
+  remote: HG_TXNNAME=serve<br>
   remote: HG_URL=remote:http:$LOCALIP: (glob)<br>
   remote: <br>
   remote: pushkey-abort: prepushkey hook exited with status 1<br>
@@ -353,6 +365,7 @@ We don't need to test bundle1 because it<br>
   remote: HG_PHASES_MOVED=1<br>
   remote: HG_SOURCE=serve<br>
   remote: HG_TXNID=TXN:$ID$<br>
+  remote: HG_TXNNAME=serve<br>
   remote: HG_URL=remote:http:$LOCALIP: (glob)<br>
   remote: <br>
   % serve errors<br>
@@ -411,6 +424,7 @@ Now do a variant of the above, except on<br>
   remote: HG_PHASES_MOVED=1<br>
   remote: HG_SOURCE=serve<br>
   remote: HG_TXNID=TXN:$ID$<br>
+  remote: HG_TXNNAME=serve<br>
   remote: HG_URL=remote:http:$LOCALIP: (glob)<br>
   remote: <br>
   remote: pushkey-abort: prepushkey hook exited with status 1<br>
@@ -465,6 +479,7 @@ Make phases updates work<br>
   remote: HG_PHASES_MOVED=1<br>
   remote: HG_SOURCE=serve<br>
   remote: HG_TXNID=TXN:$ID$<br>
+  remote: HG_TXNNAME=serve<br>
   remote: HG_URL=remote:http:$LOCALIP: (glob)<br>
   remote: <br>
   % serve errors<br>
diff --git a/tests/test-ssh-bundle1.t b/tests/test-ssh-bundle1.t<br>
--- a/tests/test-ssh-bundle1.t<br>
+++ b/tests/test-ssh-bundle1.t<br>
@@ -520,6 +520,8 @@ debug output<br>
   HG_NODE_LAST=a28a9d1a809cab7d4e2fde4bee738a9ede948b60<br>
   HG_SOURCE=serve<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=serve<br>
+  remote:ssh:$LOCALIP<br>
   HG_URL=remote:ssh:$LOCALIP<br>
<br>
   Got arguments 1:user@dummy 2:hg -R remote serve --stdio<br>
@@ -537,6 +539,8 @@ debug output<br>
   HG_NODE_LAST=1383141674ec756a6056f6a9097618482fe0f4a6<br>
   HG_SOURCE=serve<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=serve<br>
+  remote:ssh:$LOCALIP<br>
   HG_URL=remote:ssh:$LOCALIP<br>
<br>
   Got arguments 1:user@dummy 2:hg -R remote serve --stdio<br>
@@ -552,6 +556,8 @@ debug output<br>
   HG_NODE_LAST=65c38f4125f9602c8db4af56530cc221d93b8ef8<br>
   HG_SOURCE=serve<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=serve<br>
+  remote:ssh:$LOCALIP<br>
   HG_URL=remote:ssh:$LOCALIP<br>
<br>
   Got arguments 1:user@dummy 2:hg -R remote serve --stdio<br>
diff --git a/tests/test-ssh.t b/tests/test-ssh.t<br>
--- a/tests/test-ssh.t<br>
+++ b/tests/test-ssh.t<br>
@@ -570,6 +570,7 @@ debug output<br>
   HG_NODE_LAST=a28a9d1a809cab7d4e2fde4bee738a9ede948b60<br>
   HG_SOURCE=serve<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=serve<br>
   HG_URL=remote:ssh:$LOCALIP<br>
<br>
   Got arguments 1:user@dummy 2:hg -R remote serve --stdio<br>
@@ -588,6 +589,7 @@ debug output<br>
   HG_NODE_LAST=1383141674ec756a6056f6a9097618482fe0f4a6<br>
   HG_SOURCE=serve<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=serve<br>
   HG_URL=remote:ssh:$LOCALIP<br>
<br>
   Got arguments 1:user@dummy 2:chg -R remote serve --stdio (chg !)<br>
@@ -598,6 +600,7 @@ debug output<br>
   HG_NODE_LAST=1383141674ec756a6056f6a9097618482fe0f4a6 (chg !)<br>
   HG_SOURCE=serve (chg !)<br>
   HG_TXNID=TXN:$ID$ (chg !)<br>
+  HG_TXNNAME=serve (chg !)<br>
   HG_URL=remote:ssh:$LOCALIP (chg !)<br>
    (chg !)<br>
   Got arguments 1:user@dummy 2:hg -R remote serve --stdio<br>
@@ -614,6 +617,7 @@ debug output<br>
   HG_NODE_LAST=65c38f4125f9602c8db4af56530cc221d93b8ef8<br>
   HG_SOURCE=serve<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=serve<br>
   HG_URL=remote:ssh:$LOCALIP<br>
<br>
   Got arguments 1:user@dummy 2:hg -R remote serve --stdio<br>
diff --git a/tests/test-static-http.t b/tests/test-static-http.t<br>
--- a/tests/test-static-http.t<br>
+++ b/tests/test-static-http.t<br>
@@ -73,6 +73,8 @@ check for HTTP opener failures when cach<br>
   HG_NODE_LAST=4ac2e3648604439c580c69b09ec9d93a88d93432<br>
   HG_SOURCE=pull<br>
   HG_TXNID=TXN:$ID$<br>
+  HG_TXNNAME=pull<br>
+  http://localhost:$HGPORT/remote<br>
   HG_URL=http://localhost:$HGPORT/remote<br>
<br>
   (run 'hg update' to get a working copy)<br>
_______________________________________________<br>
Mercurial-devel mailing list<br>
<a href="mailto:Mercurial-devel@mercurial-scm.org" target="_blank">Mercurial-devel@mercurial-scm.org</a><br>
<a href="https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel" rel="noreferrer" target="_blank">https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel</a><br>
</blockquote></div></div>