Job try-db8597d9bcfc34d234bd67d9e37a8d7afa1ae11d-windows-cpython-2.7-x64-0
Repo: | try |
Node: | db8597d9bcfc34d234bd67d9e37a8d7afa1ae11d |
Name: | windows-cpython-2.7-x64 |
Scheduled At: | 2020-12-04T23:45:20 |
Started At: | 2020-12-04T23:45:30 |
Finished At: | 2020-12-05T00:14:51 |
Failed Tests
test-abort-checkin.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-abort-checkin.t\n+++ c:/hgdev/src/tests/test-abort-checkin.t.err\n@@ -23,15 +23,73 @@\n \n $ hg ci -m foo\n error: pretxncommit.nocommits hook failed: no commits allowed\n- transaction abort!\n- rollback completed\n- abort: no commits allowed\n- [255]\n+ ** Unknown exception encountered with possibly-broken third-party extension "abortcommit" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "abortcommit" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: abortcommit, mq, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 4237, in mqcommand\n+ return orig(ui, repo, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 4128, in commit\n+ text, user, date, match, force, editor, extra\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg ci -m foo\n- error: pretxncommit.nocommits hook failed: no commits allowed\n- transaction abort!\n- rollback completed\n- abort: no commits allowed\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n $ cd ..\n', 2378, 2380, 'truncated \\uXXXX escape') decoding diff, sorry
test-absorb-edit-lines.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-absorb-edit-lines.t\n+++ c:/hgdev/src/tests/test-absorb-edit-lines.t.err\n@@ -44,18 +44,73 @@\n > yyy : g\n > EOF\n $ HGEDITOR=\'cat editortext >\' hg absorb -q --edit-lines --apply-changes a\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo1\\.hg\\strip-backup/4ec16f85269a-3075e547-absorb.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo1\\.hg\\strip-backup/4ec16f85269a-3e6146d7-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo1\\.hg\\strip-backup/4ec16f85269a-3e6146d7-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: absorb\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1157, in absorbcmd\n+ state = absorb(ui, repo, pats=pats, opts=opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1082, in absorb\n+ if state.commit():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 751, in commit\n+ self._cleanupoldcommits()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg cat -r 0 a\n- d \n- e\n- f\n- g\n+ 1\n $ hg cat -r 1 a\n- b\n- c\n- d \n- g\n+ 1\n+ 2\n $ hg cat -r 2 a\n- a\n- b\n- e\n- g\n+ 1\n+ 2\n+ 3\n', 2477, 2479, 'truncated \\uXXXX escape') decoding diff, sorry
test-absorb-phase.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-absorb-phase.t\n+++ c:/hgdev/src/tests/test-absorb-phase.t.err\n@@ -20,11 +20,78 @@\n $ printf B1 > B\n \n $ hg absorb -aq\n+ strip failed, backup bundle stored in \'$TESTTMP\\.hg\\strip-backup/112478962961-f4131707-absorb.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\.hg\\strip-backup/112478962961-2a94f7fe-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\.hg\\strip-backup/112478962961-2a94f7fe-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "drawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "drawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: absorb, drawdag\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1157, in absorbcmd\n+ state = absorb(ui, repo, pats=pats, opts=opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1082, in absorb\n+ if state.commit():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 751, in commit\n+ self._cleanupoldcommits()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg log -G -T \'{desc} {phase}\'\n @ C secret\n |\n o B draft\n |\n+ | o C secret\n+ | |\n+ | o B draft\n+ |/\n o A public\n \n', 2567, 2569, 'truncated \\uXXXX escape') decoding diff, sorry
test-absorb-rename.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-absorb-rename.t\n+++ c:/hgdev/src/tests/test-absorb-rename.t.err\n@@ -48,33 +48,101 @@\n 0b888b0 3\n bf56e1f 2\n eff892d 1\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo1\\.hg\\strip-backup/eff892de26ec-8e37eb16-absorb.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo1\\.hg\\strip-backup/eff892de26ec-d762a46f-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo1\\.hg\\strip-backup/eff892de26ec-d762a46f-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: absorb\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1157, in absorbcmd\n+ state = absorb(ui, repo, pats=pats, opts=opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1082, in absorb\n+ if state.commit():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 751, in commit\n+ self._cleanupoldcommits()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg status\n \n $ hg annotate -ncf a\n- 0 5d1c5620e6f2 a: 1a\n- 1 9a14ffe67ae9 b: 2a\n- 2 9191d121a268 a: 3a\n+ 3 5d1c5620e6f2 a: 1a\n+ 4 9a14ffe67ae9 b: 2a\n+ 5 9191d121a268 a: 3a\n \n when the first changeset is public\n \n $ hg phase --public -r 0\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ sedi \'s/a/A/\' a\n \n $ hg absorb -apq\n showing changes for a\n @@ -0,3 +0,3 @@\n- -1a\n+ 5d1c562 -1a\n 9a14ffe -2a\n 9191d12 -3a\n- +1A\n+ 5d1c562 +1A\n 9a14ffe +2A\n 9191d12 +3A\n \n- 2 changesets affected\n+ 3 changesets affected\n 9191d12 3\n 9a14ffe 2\n+ 5d1c562 1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg diff\n diff --git a/a b/a\n@@ -82,9 +150,11 @@\n +++ b/a\n @@ -1,3 +1,3 @@\n -1a\n+ -2a\n+ -3a\n +1A\n- 2A\n- 3A\n+ +2A\n+ +3A\n \n copy a to b\n \n@@ -120,6 +190,67 @@\n 2 changesets affected\n 17b7212 2\n eff892d 1\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo2\\.hg\\strip-backup/eff892de26ec-3827bb54-absorb.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo2\\.hg\\strip-backup/eff892de26ec-b28bf11c-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo2\\.hg\\strip-backup/eff892de26ec-b28bf11c-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: absorb\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1157, in absorbcmd\n+ state = absorb(ui, repo, pats=pats, opts=opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1082, in absorb\n+ if state.commit():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 751, in commit\n+ self._cleanupoldcommits()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg diff\n diff --git a/b b/b\n@@ -164,6 +295,67 @@\n 2 changesets affected\n e62c256 2\n 55105f9 1\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo3\\.hg\\strip-backup/55105f940d5c-51013cc5-absorb.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo3\\.hg\\strip-backup/55105f940d5c-dd135419-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo3\\.hg\\strip-backup/55105f940d5c-dd135419-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: absorb\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1157, in absorbcmd\n+ state = absorb(ui, repo, pats=pats, opts=opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1082, in absorb\n+ if state.commit():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 751, in commit\n+ self._cleanupoldcommits()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg diff\n diff --git a/a b/a\n@@ -213,9 +405,70 @@\n 2 changesets affected\n 366daad cp\n 55105f9 1\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo4\\.hg\\strip-backup/55105f940d5c-a4cb305d-absorb.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo4\\.hg\\strip-backup/55105f940d5c-f9f08701-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo4\\.hg\\strip-backup/55105f940d5c-f9f08701-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: absorb\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1157, in absorbcmd\n+ state = absorb(ui, repo, pats=pats, opts=opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1082, in absorb\n+ if state.commit():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 751, in commit\n+ self._cleanupoldcommits()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg log -G -p -T \'{rev}:{node|short} {desc}\\n\'\n- @ 1:70606019f91b cp\n+ @ 3:70606019f91b cp\n | diff --git a/b b/a\n | rename from b\n | rename to a\n@@ -234,7 +487,7 @@\n | +1\n | +3c\n |\n- o 0:bfb67c3539c1 1\n+ o 2:bfb67c3539c1 1\n diff --git a/b b/b\n new file mode 100644\n --- /dev/null\n@@ -242,6 +495,32 @@\n @@ -0,0 +1,1 @@\n +1a\n \n+ o 1:366daad8e679 cp\n+ | diff --git a/b b/a\n+ | rename from b\n+ | rename to a\n+ | --- a/b\n+ | +++ b/a\n+ | @@ -1,1 +1,2 @@\n+ | 1\n+ | +2\n+ | diff --git a/b b/c\n+ | copy from b\n+ | copy to c\n+ | --- a/b\n+ | +++ b/c\n+ | @@ -1,1 +1,2 @@\n+ | 1\n+ | +3\n+ |\n+ o 0:55105f940d5c 1\n+ diff --git a/b b/b\n+ new file mode 100644\n+ --- /dev/null\n+ +++ b/b\n+ @@ -0,0 +1,1 @@\n+ +1\n+ \n run absorb again would apply the change to c\n \n $ hg absorb -apq\n@@ -252,9 +531,12 @@\n \n 1 changesets affected\n 7060601 cp\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg log -G -p -T \'{rev}:{node|short} {desc}\\n\'\n- @ 1:8bd536cce368 cp\n+ @ 3:70606019f91b cp\n | diff --git a/b b/a\n | rename from b\n | rename to a\n@@ -270,16 +552,42 @@\n | +++ b/c\n | @@ -1,1 +1,2 @@\n | -1a\n- | +1c\n+ | +1\n | +3c\n |\n- o 0:bfb67c3539c1 1\n+ o 2:bfb67c3539c1 1\n diff --git a/b b/b\n new file mode 100644\n --- /dev/null\n +++ b/b\n @@ -0,0 +1,1 @@\n +1a\n+ \n+ o 1:366daad8e679 cp\n+ | diff --git a/b b/a\n+ | rename from b\n+ | rename to a\n+ | --- a/b\n+ | +++ b/a\n+ | @@ -1,1 +1,2 @@\n+ | 1\n+ | +2\n+ | diff --git a/b b/c\n+ | copy from b\n+ | copy to c\n+ | --- a/b\n+ | +++ b/c\n+ | @@ -1,1 +1,2 @@\n+ | 1\n+ | +3\n+ |\n+ o 0:55105f940d5c 1\n+ diff --git a/b b/b\n+ new file mode 100644\n+ --- /dev/null\n+ +++ b/b\n+ @@ -0,0 +1,1 @@\n+ +1\n \n "move" b to a, c and d, follow d if a gets renamed to e, and c is deleted\n \n@@ -326,6 +634,67 @@\n 2 changesets affected\n 7bc3d43 cp\n 55105f9 1\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo5\\.hg\\strip-backup/55105f940d5c-cdfb6807-absorb.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo5\\.hg\\strip-backup/55105f940d5c-a2388af2-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo5\\.hg\\strip-backup/55105f940d5c-a2388af2-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: absorb\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1157, in absorbcmd\n+ state = absorb(ui, repo, pats=pats, opts=opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1082, in absorb\n+ if state.commit():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 751, in commit\n+ self._cleanupoldcommits()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg diff\n diff --git a/e b/e\n@@ -337,7 +706,7 @@\n 2e\n \n $ hg log -G -p -T \'{rev}:{node|short} {desc}\\n\'\n- @ 2:34be9b0c786e mv\n+ @ 5:34be9b0c786e mv\n | diff --git a/c b/c\n | deleted file mode 100644\n | --- a/c\n@@ -349,7 +718,7 @@\n | rename from a\n | rename to e\n |\n- o 1:13e56db5948d cp\n+ o 4:13e56db5948d cp\n | diff --git a/b b/a\n | rename from b\n | rename to a\n@@ -377,7 +746,7 @@\n | 1d\n | +4d\n |\n- o 0:0037613a5dc6 1\n+ o 3:0037613a5dc6 1\n diff --git a/b b/b\n new file mode 100644\n --- /dev/null\n@@ -385,3 +754,49 @@\n @@ -0,0 +1,1 @@\n +1d\n \n+ o 2:49911557c471 mv\n+ | diff --git a/c b/c\n+ | deleted file mode 100644\n+ | --- a/c\n+ | +++ /dev/null\n+ | @@ -1,2 +0,0 @@\n+ | -1\n+ | -3\n+ | diff --git a/a b/e\n+ | rename from a\n+ | rename to e\n+ |\n+ o 1:7bc3d43ede83 cp\n+ | diff --git a/b b/a\n+ | rename from b\n+ | rename to a\n+ | --- a/b\n+ | +++ b/a\n+ | @@ -1,1 +1,2 @@\n+ | 1\n+ | +2\n+ | diff --git a/b b/c\n+ | copy from b\n+ | copy to c\n+ | --- a/b\n+ | +++ b/c\n+ | @@ -1,1 +1,2 @@\n+ | 1\n+ | +3\n+ | diff --git a/b b/d\n+ | copy from b\n+ | copy to d\n+ | --- a/b\n+ | +++ b/d\n+ | @@ -1,1 +1,2 @@\n+ | 1\n+ | +4\n+ |\n+ o 0:55105f940d5c 1\n+ diff --git a/b b/b\n+ new file mode 100644\n+ --- /dev/null\n+ +++ b/b\n+ @@ -0,0 +1,1 @@\n+ +1\n+ \n', 2406, 2408, 'truncated \\uXXXX escape') decoding diff, sorry
test-absorb-strip.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-absorb-strip.t\n+++ c:/hgdev/src/tests/test-absorb-strip.t.err\n@@ -25,7 +25,69 @@\n $ hg absorb -a\n warning: orphaned descendants detected, not stripping 112478962961, 26805aba1e60\n saved backup bundle to * (glob)\n- 2 of 2 chunk(s) applied\n+ strip failed, backup bundle stored in \'$TESTTMP\\.hg\\strip-backup/f585351a92f8-d1634f7b-absorb.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\.hg\\strip-backup/f585351a92f8-04edd502-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\.hg\\strip-backup/f585351a92f8-04edd502-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "drawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "drawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: absorb, drawdag\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1157, in absorbcmd\n+ state = absorb(ui, repo, pats=pats, opts=opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1082, in absorb\n+ if state.commit():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 751, in commit\n+ self._cleanupoldcommits()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg log -G -T \'{desc}\'\n @ E\n@@ -36,8 +98,12 @@\n |\n o B\n |\n- | o F\n+ | o E\n | |\n+ | | o F\n+ | | |\n+ | o | D\n+ | |/\n | o C\n | |\n | o B\n', 2690, 2692, 'truncated \\uXXXX escape') decoding diff, sorry
test-absorb.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-absorb.t\n+++ c:/hgdev/src/tests/test-absorb.t.err\n@@ -70,13 +70,73 @@\n \n $ hg absorb --apply-changes\n saved backup bundle to * (glob)\n- 2 of 2 chunk(s) applied\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo1\\.hg\\strip-backup/4ec16f85269a-607d7797-absorb.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo1\\.hg\\strip-backup/4ec16f85269a-f60a1fea-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo1\\.hg\\strip-backup/4ec16f85269a-f60a1fea-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: absorb\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1157, in absorbcmd\n+ state = absorb(ui, repo, pats=pats, opts=opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1082, in absorb\n+ if state.commit():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 751, in commit\n+ self._cleanupoldcommits()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg annotate a\n- 0: 1a\n- 1: 2b\n- 2: 3\n- 3: 4d\n- 4: 5e\n+ 5: 1a\n+ 6: 2b\n+ 7: 3\n+ 8: 4d\n+ 9: 5e\n \n Delete a few lines and related commits will be removed if they will be empty:\n \n@@ -98,50 +158,130 @@\n ff5d556 commit 3\n f548282 commit 1\n apply changes (y/N)? y\n- saved backup bundle to * (glob)\n- 3 of 3 chunk(s) applied\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg annotate a\n- 1: 2b\n- 2: 4d\n+ 5: 1a\n+ 6: 2b\n+ 7: 3\n+ 8: 4d\n+ 9: 5e\n $ hg log -T \'{rev} {desc}\\n\' -Gp\n- @ 2 commit 4\n- | diff -r 1cae118c7ed8 -r 58a62bade1c6 a\n+ @ 9 commit 5\n+ | diff -r 63b22995aaf2 -r 84e5416c937c a\n+ | --- a/a\tThu Jan 01 00:00:00 1970 +0000\n+ | +++ b/a\tThu Jan 01 00:00:00 1970 +0000\n+ | @@ -2,3 +2,4 @@\n+ | 2b\n+ | 3\n+ | 4d\n+ | +5e\n+ |\n+ o 8 commit 4\n+ | diff -r ff5d556bb159 -r 63b22995aaf2 a\n+ | --- a/a\tThu Jan 01 00:00:00 1970 +0000\n+ | +++ b/a\tThu Jan 01 00:00:00 1970 +0000\n+ | @@ -1,3 +1,4 @@\n+ | 1a\n+ | 2b\n+ | 3\n+ | +4d\n+ |\n+ o 7 commit 3\n+ | diff -r bcf7a4f7b11a -r ff5d556bb159 a\n+ | --- a/a\tThu Jan 01 00:00:00 1970 +0000\n+ | +++ b/a\tThu Jan 01 00:00:00 1970 +0000\n+ | @@ -1,2 +1,3 @@\n+ | 1a\n+ | 2b\n+ | +3\n+ |\n+ o 6 commit 2\n+ | diff -r f54828298aa6 -r bcf7a4f7b11a a\n | --- a/a\tThu Jan 01 00:00:00 1970 +0000\n | +++ b/a\tThu Jan 01 00:00:00 1970 +0000\n | @@ -1,1 +1,2 @@\n- | 2b\n- | +4d\n- |\n- o 1 commit 2\n- | diff -r 84add69aeac0 -r 1cae118c7ed8 a\n+ | 1a\n+ | +2b\n+ |\n+ o 5 commit 1\n+ diff -r 000000000000 -r f54828298aa6 a\n+ --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n+ +++ b/a\tThu Jan 01 00:00:00 1970 +0000\n+ @@ -0,0 +1,1 @@\n+ +1a\n+ \n+ o 4 commit 5\n+ | diff -r ad8b8b75557f -r 4f55fa657dae a\n | --- a/a\tThu Jan 01 00:00:00 1970 +0000\n | +++ b/a\tThu Jan 01 00:00:00 1970 +0000\n- | @@ -0,0 +1,1 @@\n- | +2b\n+ | @@ -2,3 +2,4 @@\n+ | 2\n+ | 3\n+ | 4\n+ | +5\n+ |\n+ o 3 commit 4\n+ | diff -r 43f0a75bede7 -r ad8b8b75557f a\n+ | --- a/a\tThu Jan 01 00:00:00 1970 +0000\n+ | +++ b/a\tThu Jan 01 00:00:00 1970 +0000\n+ | @@ -1,3 +1,4 @@\n+ | 1\n+ | 2\n+ | 3\n+ | +4\n+ |\n+ o 2 commit 3\n+ | diff -r 5c5f95224a50 -r 43f0a75bede7 a\n+ | --- a/a\tThu Jan 01 00:00:00 1970 +0000\n+ | +++ b/a\tThu Jan 01 00:00:00 1970 +0000\n+ | @@ -1,2 +1,3 @@\n+ | 1\n+ | 2\n+ | +3\n+ |\n+ o 1 commit 2\n+ | diff -r 4ec16f85269a -r 5c5f95224a50 a\n+ | --- a/a\tThu Jan 01 00:00:00 1970 +0000\n+ | +++ b/a\tThu Jan 01 00:00:00 1970 +0000\n+ | @@ -1,1 +1,2 @@\n+ | 1\n+ | +2\n |\n o 0 commit 1\n+ diff -r 000000000000 -r 4ec16f85269a a\n+ --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n+ +++ b/a\tThu Jan 01 00:00:00 1970 +0000\n+ @@ -0,0 +1,1 @@\n+ +1\n \n \n Non 1:1 map changes will be ignored:\n \n $ echo 1 > a\n $ hg absorb --apply-changes\n- nothing applied\n- [1]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n The prompt is not given if there are no changes to be applied, even if there\n are some changes that won\'t be applied:\n \n $ hg absorb\n showing changes for a\n- @@ -0,2 +0,1 @@\n+ @@ -0,5 +0,1 @@\n+ -1a\n -2b\n+ -3\n -4d\n+ -5e\n +1\n \n 0 changesets affected\n- nothing applied\n- [1]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Insertaions:\n \n@@ -152,123 +292,188 @@\n > insert aftert 4d\n > EOF\n $ hg absorb -q --apply-changes\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg status\n+ M a\n $ hg annotate a\n- 1: insert before 2b\n- 1: 2b\n- 2: 4d\n- 2: insert aftert 4d\n+ 5: 1a\n+ 6: 2b\n+ 7: 3\n+ 8: 4d\n+ 9: 5e\n \n Bookmarks are moved:\n \n $ hg bookmark -r 1 b1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark -r 2 b2\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark ba\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmarks\n- b1 1:b35060a57a50\n- b2 2:946e4bc87915\n- * ba 2:946e4bc87915\n+ no bookmarks set\n $ sedi \'s/insert/INSERT/\' a\n $ hg absorb -q --apply-changes\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg status\n+ M a\n $ hg bookmarks\n- b1 1:a4183e9b3d31\n- b2 2:c9b20c925790\n- * ba 2:c9b20c925790\n+ no bookmarks set\n \n Non-modified files are ignored:\n \n $ touch b\n $ hg commit -A b -m b\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ touch c\n $ hg add c\n $ hg rm b\n+ not removing b: file is untracked\n+ [1]\n $ hg absorb --apply-changes\n- nothing applied\n- [1]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ sedi \'s/INSERT/Insert/\' a\n $ hg absorb --apply-changes\n- saved backup bundle to * (glob)\n- 2 of 2 chunk(s) applied\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg status\n+ M a\n A c\n- R b\n+ ? b\n \n Public commits will not be changed:\n \n $ hg phase -p 1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ sedi \'s/Insert/insert/\' a\n $ hg absorb -pn\n showing changes for a\n @@ -0,1 +0,1 @@\n- -Insert before 2b\n- +insert before 2b\n- @@ -3,1 +3,1 @@\n- 85b4e0e -Insert aftert 4d\n- 85b4e0e +insert aftert 4d\n- \n- 1 changesets affected\n- 85b4e0e commit 4\n+ f548282 -1a\n+ f548282 +insert before 2b\n+ @@ -2,1 +2,0 @@\n+ ff5d556 -3\n+ @@ -4,1 +3,1 @@\n+ 84e5416 -5e\n+ 84e5416 +insert aftert 4d\n+ \n+ 3 changesets affected\n+ 84e5416 commit 5\n+ ff5d556 commit 3\n+ f548282 commit 1\n $ hg absorb --apply-changes\n- saved backup bundle to * (glob)\n- 1 of 2 chunk(s) applied\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg diff -U 0\n- diff -r 1c8eadede62a a\n+ diff -r 84e5416c937c a\n --- a/a\tThu Jan 01 00:00:00 1970 +0000\n +++ b/a\t* (glob)\n @@ -1,1 +1,1 @@\n- -Insert before 2b\n+ -1a\n +insert before 2b\n+ @@ -3,1 +2,0 @@\n+ -3\n+ @@ -5,1 +4,1 @@\n+ -5e\n+ +insert aftert 4d\n $ hg annotate a\n- 1: Insert before 2b\n- 1: 2b\n- 2: 4d\n- 2: insert aftert 4d\n+ 5: 1a\n+ 6: 2b\n+ 7: 3\n+ 8: 4d\n+ 9: 5e\n \n $ hg co -qC 1\n $ sedi \'s/Insert/insert/\' a\n $ hg absorb --apply-changes\n- abort: no mutable changeset to change\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Make working copy clean:\n \n $ hg co -qC ba\n+ abort: unknown revision \'ba\'\n+ [255]\n $ rm c\n $ hg status\n+ ? b\n \n Merge commit will not be changed:\n \n $ echo 1 > m1\n $ hg commit -A m1 -m m1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark -q -i m1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg update -q \'.^\'\n $ echo 2 > m2\n $ hg commit -q -A m2 -m m2\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg merge -q m1\n+ abort: unknown revision \'m1\'\n+ [255]\n $ hg commit -m merge\n+ nothing changed\n+ [1]\n $ hg bookmark -d m1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -G -T \'{rev} {desc} {phase}\\n\'\n- @ 6 merge draft\n- |\\\n- | o 5 m2 draft\n- | |\n- o | 4 m1 draft\n- |/\n- o 3 b draft\n- |\n- o 2 commit 4 draft\n- |\n- o 1 commit 2 public\n- |\n- o 0 commit 1 public\n+ o 9 commit 5 draft\n+ |\n+ o 8 commit 4 draft\n+ |\n+ o 7 commit 3 draft\n+ |\n+ o 6 commit 2 draft\n+ |\n+ o 5 commit 1 draft\n+ \n+ o 4 commit 5 draft\n+ |\n+ o 3 commit 4 draft\n+ |\n+ o 2 commit 3 draft\n+ |\n+ o 1 commit 2 draft\n+ |\n+ @ 0 commit 1 draft\n \n $ echo 2 >> m1\n $ echo 2 >> m2\n $ hg absorb --apply-changes\n- abort: cannot absorb into a merge\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg revert -q -C m1 m2\n+ file not managed: m1\n+ file not managed: m2\n \n Use a new repo:\n \n@@ -293,16 +498,79 @@\n M b\n $ hg absorb --apply-changes a\n saved backup bundle to * (glob)\n- 1 of 1 chunk(s) applied\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo2\\.hg\\strip-backup/6905bbb02e4e-66e0bf27-absorb.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo2\\.hg\\strip-backup/6905bbb02e4e-eb8c15e7-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo2\\.hg\\strip-backup/6905bbb02e4e-eb8c15e7-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: absorb\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1157, in absorbcmd\n+ state = absorb(ui, repo, pats=pats, opts=opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 1082, in absorb\n+ if state.commit():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\absorb.py", line 751, in commit\n+ self._cleanupoldcommits()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg status\n M b\n $ hg absorb --apply-changes --exclude b\n- nothing applied\n- [1]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg absorb --apply-changes b\n- saved backup bundle to * (glob)\n- 1 of 1 chunk(s) applied\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg status\n+ M b\n $ cat a b\n a Line 1\n a Line 2\n@@ -313,10 +581,14 @@\n \n $ sedi \'s/Line/line/\' a b\n $ hg log -T \'{rev}:{node} {desc}\\n\'\n- 3:712d16a8f445834e36145408eabc1d29df05ec09 commit b 2\n- 2:74cfa6294160149d60adbf7582b99ce37a4597ec commit b 1\n- 1:28f10dcf96158f84985358a2e5d5b3505ca69c22 commit a 2\n- 0:f9a81da8dc53380ed91902e5b82c1b36255a4bd0 commit a 1\n+ 7:61782db6c4c129392d43b633cc535e172d845430 commit b 2\n+ 6:2517e374a480123743200c26b45038cde32ba361 commit b 1\n+ 5:28f10dcf96158f84985358a2e5d5b3505ca69c22 commit a 2\n+ 4:f9a81da8dc53380ed91902e5b82c1b36255a4bd0 commit a 1\n+ 3:a478955a9e03dc071c2cb465670b40fed4c0ac31 commit b 2\n+ 2:7380d5e6fab8a0fabf4c1f679b84c965508156d7 commit b 1\n+ 1:4472dd5179ebd3c1242ad2b59341a4e0dabf027e commit a 2\n+ 0:6905bbb02e4e4ae007d5e6738558e0bbbcb08878 commit a 1\n $ hg --config absorb.max-stack-size=1 absorb -pn\n absorb: only the recent 1 changesets will be analysed\n showing changes for a\n@@ -325,15 +597,9 @@\n -a Line 2\n +a line 1\n +a line 2\n- showing changes for b\n- @@ -0,2 +0,2 @@\n- -b Line 1\n- 712d16a -b Line 2\n- +b line 1\n- 712d16a +b line 2\n- \n- 1 changesets affected\n- 712d16a commit b 2\n+ \n+ 0 changesets affected\n+ [1]\n \n Test obsolete markers creation:\n \n@@ -346,19 +612,31 @@\n \n $ hg --config absorb.max-stack-size=3 absorb -a\n absorb: only the recent 3 changesets will be analysed\n- 2 of 2 chunk(s) applied\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -T \'{rev}:{node|short} {desc} {get(extras, "absorb_source")}\\n\'\n- 6:3dfde4199b46 commit b 2 712d16a8f445834e36145408eabc1d29df05ec09\n- 5:99cfab7da5ff commit b 1 74cfa6294160149d60adbf7582b99ce37a4597ec\n- 4:fec2b3bd9e08 commit a 2 28f10dcf96158f84985358a2e5d5b3505ca69c22\n- 0:f9a81da8dc53 commit a 1 \n+ 7:61782db6c4c1 commit b 2 \n+ 6:2517e374a480 commit b 1 \n+ 5:28f10dcf9615 commit a 2 \n+ 4:f9a81da8dc53 commit a 1 \n+ 3:a478955a9e03 commit b 2 \n+ 2:7380d5e6fab8 commit b 1 \n+ 1:4472dd5179eb commit a 2 \n+ 0:6905bbb02e4e commit a 1 \n $ hg absorb --apply-changes\n- 1 of 1 chunk(s) applied\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -T \'{rev}:{node|short} {desc} {get(extras, "absorb_source")}\\n\'\n- 10:e1c8c1e030a4 commit b 2 3dfde4199b4610ea6e3c6fa9f5bdad8939d69524\n- 9:816c30955758 commit b 1 99cfab7da5ffdaf3b9fc6643b14333e194d87f46\n- 8:5867d584106b commit a 2 fec2b3bd9e0834b7cb6a564348a0058171aed811\n- 7:8c76602baf10 commit a 1 f9a81da8dc53380ed91902e5b82c1b36255a4bd0\n+ 7:61782db6c4c1 commit b 2 \n+ 6:2517e374a480 commit b 1 \n+ 5:28f10dcf9615 commit a 2 \n+ 4:f9a81da8dc53 commit a 1 \n+ 3:a478955a9e03 commit b 2 \n+ 2:7380d5e6fab8 commit b 1 \n+ 1:4472dd5179eb commit a 2 \n+ 0:6905bbb02e4e commit a 1 \n \n Executable files:\n \n', 2447, 2449, 'truncated \\uXXXX escape') decoding diff, sorry
test-acl.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-acl.t\n+++ c:/hgdev/src/tests/test-acl.t.err\n@@ -357,9 +357,63 @@\n bundle2-input-part: total payload size 1553\n bundle2-input-part: total payload size 24\n bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "fred" not allowed on "foo/file.txt" (changeset "ef1ea85a6374")\n+ ** Unknown exception encountered with possibly-broken third-party extension "posixgetuser" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "posixgetuser" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: acl, posixgetuser\n+ Traceback (most recent call last):\n+ File "C:/Temp/hgtests.dstqqw/install/bin/hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 5612, in push\n+ opargs=opargs,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 458, in push\n+ _pushbundle2(pushop)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1125, in _pushbundle2\n+ b\'url\': pushop.remote.url(),\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\thirdparty\\concurrent\\futures\\_base.py", line 457, in result\n+ return self.__get_result()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 246, in callcommand\n+ result = fn(**pycompat.strkwargs(args))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 360, in unbundle\n+ ret = exchange.unbundle(self._repo, bundle, heads, b\'push\', url)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 2645, in unbundle\n+ lockmod.release(lockandtr[2], lockandtr[1], lockandtr[0])\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\lock.py", line 397, in release\n+ lock.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n no rollback information available\n 0:6675d58eff77\n \n@@ -398,42 +452,8 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "fred"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 1 entries for user fred\n- acl: acl.deny not enabled\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- error: pretxnchangegroup.acl hook failed: acl: user "fred" not allowed on "quux/file.py" (changeset "911600dab2ae")\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "fred" not allowed on "quux/file.py" (changeset "911600dab2ae")\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n no rollback information available\n 0:6675d58eff77\n \n@@ -473,38 +493,8 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "barney"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 0 entries for user barney\n- acl: acl.deny enabled, 0 entries for user barney\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- error: pretxnchangegroup.acl hook failed: acl: user "barney" not allowed on "foo/file.txt" (changeset "ef1ea85a6374")\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "barney" not allowed on "foo/file.txt" (changeset "ef1ea85a6374")\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n no rollback information available\n 0:6675d58eff77\n \n@@ -545,42 +535,8 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "fred"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 1 entries for user fred\n- acl: acl.deny enabled, 1 entries for user fred\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- error: pretxnchangegroup.acl hook failed: acl: user "fred" not allowed on "quux/file.py" (changeset "911600dab2ae")\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "fred" not allowed on "quux/file.py" (changeset "911600dab2ae")\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n no rollback information available\n 0:6675d58eff77\n \n@@ -622,40 +578,8 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "fred"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 1 entries for user fred\n- acl: acl.deny enabled, 2 entries for user fred\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- error: pretxnchangegroup.acl hook failed: acl: user "fred" denied on "foo/Bar/file.txt" (changeset "f9cafe1212c8")\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "fred" denied on "foo/Bar/file.txt" (changeset "f9cafe1212c8")\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n no rollback information available\n 0:6675d58eff77\n \n@@ -696,38 +620,8 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "barney"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 0 entries for user barney\n- acl: acl.deny enabled, 0 entries for user barney\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- error: pretxnchangegroup.acl hook failed: acl: user "barney" not allowed on "foo/file.txt" (changeset "ef1ea85a6374")\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "barney" not allowed on "foo/file.txt" (changeset "ef1ea85a6374")\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n no rollback information available\n 0:6675d58eff77\n \n@@ -736,6 +630,9 @@\n \n $ hg -R a book -q moving-bookmark -r 1\n $ hg -R b book -q moving-bookmark -r 0\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ cp $config normalconfig\n $ do_push fred -r 1\n Pushing as user fred\n@@ -763,59 +660,15 @@\n 1 changesets found\n list of changesets:\n ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n- bundle2-output-bundle: "HG20", 7 parts total\n- bundle2-output-part: "replycaps" 224 bytes payload\n- bundle2-output-part: "check:bookmarks" 37 bytes payload\n- bundle2-output-part: "check:phases" 24 bytes payload\n- bundle2-output-part: "check:updated-heads" streamed payload\n- bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n- bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-output-part: "bookmarks" 37 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:bookmarks" supported\n- bundle2-input-part: total payload size 37\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- adding manifests\n- adding file changes\n- adding foo/file.txt revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "fred"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 1 entries for user fred\n- acl: acl.deny enabled, 2 entries for user fred\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- bundle2-input-part: total payload size 520\n- bundle2-input-part: "phase-heads" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "bookmarks" supported\n- bundle2-input-part: total payload size 37\n- calling hook prepushkey.acl: hgext.acl.hook\n- acl: checking access for user "fred"\n- acl: acl.allow.bookmarks not enabled\n- acl: acl.deny.bookmarks not enabled\n- acl: bookmark access granted: "ef1ea85a6374b77d6da9dcda9541f498f2d17df7" on bookmark "moving-bookmark"\n- bundle2-input-bundle: 7 parts total\n- updating the branch cache\n- added 1 changesets with 1 changes to 1 files\n- bundle2-output-bundle: "HG20", 1 parts total\n- bundle2-output-part: "reply:changegroup" (advisory) (params: 0 advisory) empty payload\n- bundle2-input-bundle: no-transaction\n- bundle2-input-part: "reply:changegroup" (advisory) (params: 0 advisory) supported\n- bundle2-input-bundle: 1 parts total\n- updating bookmark moving-bookmark\n- listing keys for "phases"\n- repository tip rolled back to revision 0 (undo push)\n+ bundle2-output-bundle: "HG20", 5 parts total\n+ bundle2-output-part: "replycaps" 224 bytes payload\n+ bundle2-output-part: "check:phases" 24 bytes payload\n+ bundle2-output-part: "check:updated-heads" streamed payload\n+ bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n+ bundle2-output-part: "phase-heads" 24 bytes payload\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n 0:6675d58eff77\n \n \n@@ -851,52 +704,14 @@\n 1 changesets found\n list of changesets:\n ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n- bundle2-output-bundle: "HG20", 7 parts total\n- bundle2-output-part: "replycaps" 224 bytes payload\n- bundle2-output-part: "check:bookmarks" 37 bytes payload\n- bundle2-output-part: "check:phases" 24 bytes payload\n- bundle2-output-part: "check:updated-heads" streamed payload\n- bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n- bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-output-part: "bookmarks" 37 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:bookmarks" supported\n- bundle2-input-part: total payload size 37\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- adding manifests\n- adding file changes\n- adding foo/file.txt revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "fred"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 1 entries for user fred\n- acl: acl.deny enabled, 2 entries for user fred\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- bundle2-input-part: total payload size 520\n- bundle2-input-part: "phase-heads" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "bookmarks" supported\n- bundle2-input-part: total payload size 37\n- calling hook prepushkey.acl: hgext.acl.hook\n- acl: checking access for user "fred"\n- acl: acl.allow.bookmarks not enabled\n- acl: acl.deny.bookmarks enabled, 1 entries for user fred\n- error: prepushkey.acl hook failed: acl: user "fred" denied on bookmark "moving-bookmark" (changeset "ef1ea85a6374b77d6da9dcda9541f498f2d17df7")\n- bundle2-input-bundle: 7 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "fred" denied on bookmark "moving-bookmark" (changeset "ef1ea85a6374b77d6da9dcda9541f498f2d17df7")\n+ bundle2-output-bundle: "HG20", 5 parts total\n+ bundle2-output-part: "replycaps" 224 bytes payload\n+ bundle2-output-part: "check:phases" 24 bytes payload\n+ bundle2-output-part: "check:updated-heads" streamed payload\n+ bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n+ bundle2-output-part: "phase-heads" 24 bytes payload\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n no rollback information available\n 0:6675d58eff77\n \n@@ -905,6 +720,9 @@\n \n $ hg book -R a -d moving-bookmark\n $ hg book -R b -d moving-bookmark\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ cp normalconfig $config\n \n barney is allowed everywhere\n@@ -947,49 +765,9 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "barney"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 1 entries for user barney\n- acl: acl.deny enabled, 0 entries for user barney\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- acl: path access granted: "911600dab2ae"\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: "phase-heads" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- updating the branch cache\n- added 3 changesets with 3 changes to 3 files\n- bundle2-output-bundle: "HG20", 1 parts total\n- bundle2-output-part: "reply:changegroup" (advisory) (params: 0 advisory) empty payload\n- bundle2-input-bundle: no-transaction\n- bundle2-input-part: "reply:changegroup" (advisory) (params: 0 advisory) supported\n- bundle2-input-bundle: 1 parts total\n- listing keys for "phases"\n- repository tip rolled back to revision 0 (undo push)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n 0:6675d58eff77\n \n \n@@ -1033,42 +811,8 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "wilma"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 1 entries for user wilma\n- acl: acl.deny enabled, 0 entries for user wilma\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- error: pretxnchangegroup.acl hook failed: acl: user "wilma" not allowed on "quux/file.py" (changeset "911600dab2ae")\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "wilma" not allowed on "quux/file.py" (changeset "911600dab2ae")\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n no rollback information available\n 0:6675d58eff77\n \n@@ -1116,33 +860,8 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "barney"\n- error: pretxnchangegroup.acl hook raised an exception: [Errno *] * (glob)\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: $ENOENT$: \'../acl.config\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n no rollback information available\n 0:6675d58eff77\n \n@@ -1194,42 +913,8 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "betty"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 1 entries for user betty\n- acl: acl.deny enabled, 0 entries for user betty\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- error: pretxnchangegroup.acl hook failed: acl: user "betty" not allowed on "quux/file.py" (changeset "911600dab2ae")\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "betty" not allowed on "quux/file.py" (changeset "911600dab2ae")\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n no rollback information available\n 0:6675d58eff77\n \n@@ -1283,49 +968,9 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "barney"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 1 entries for user barney\n- acl: acl.deny enabled, 0 entries for user barney\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- acl: path access granted: "911600dab2ae"\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: "phase-heads" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- updating the branch cache\n- added 3 changesets with 3 changes to 3 files\n- bundle2-output-bundle: "HG20", 1 parts total\n- bundle2-output-part: "reply:changegroup" (advisory) (params: 0 advisory) empty payload\n- bundle2-input-bundle: no-transaction\n- bundle2-input-part: "reply:changegroup" (advisory) (params: 0 advisory) supported\n- bundle2-input-bundle: 1 parts total\n- listing keys for "phases"\n- repository tip rolled back to revision 0 (undo push)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n 0:6675d58eff77\n \n \n@@ -1373,49 +1018,9 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "fred"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 1 entries for user fred\n- acl: acl.deny not enabled\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- acl: path access granted: "911600dab2ae"\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: "phase-heads" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- updating the branch cache\n- added 3 changesets with 3 changes to 3 files\n- bundle2-output-bundle: "HG20", 1 parts total\n- bundle2-output-part: "reply:changegroup" (advisory) (params: 0 advisory) empty payload\n- bundle2-input-bundle: no-transaction\n- bundle2-input-part: "reply:changegroup" (advisory) (params: 0 advisory) supported\n- bundle2-input-bundle: 1 parts total\n- listing keys for "phases"\n- repository tip rolled back to revision 0 (undo push)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n 0:6675d58eff77\n \n \n@@ -1459,40 +1064,8 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "fred"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow enabled, 1 entries for user fred\n- acl: acl.deny enabled, 1 entries for user fred\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- error: pretxnchangegroup.acl hook failed: acl: user "fred" denied on "foo/Bar/file.txt" (changeset "f9cafe1212c8")\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "fred" denied on "foo/Bar/file.txt" (changeset "f9cafe1212c8")\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n no rollback information available\n 0:6675d58eff77\n \n@@ -1541,50 +1114,9 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "fred"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: "group1" not defined in [acl.groups]\n- acl: acl.allow enabled, 1 entries for user fred\n- acl: acl.deny not enabled\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- acl: path access granted: "911600dab2ae"\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: "phase-heads" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- updating the branch cache\n- added 3 changesets with 3 changes to 3 files\n- bundle2-output-bundle: "HG20", 1 parts total\n- bundle2-output-part: "reply:changegroup" (advisory) (params: 0 advisory) empty payload\n- bundle2-input-bundle: no-transaction\n- bundle2-input-part: "reply:changegroup" (advisory) (params: 0 advisory) supported\n- bundle2-input-bundle: 1 parts total\n- listing keys for "phases"\n- repository tip rolled back to revision 0 (undo push)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n 0:6675d58eff77\n \n \n@@ -1628,42 +1160,8 @@\n bundle2-output-part: "check:updated-heads" streamed payload\n bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n bundle2-output-part: "phase-heads" 24 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 24\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 20\n- invalid branch cache (served): tip differs\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- adding manifests\n- adding file changes\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "fred"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: "group1" not defined in [acl.groups]\n- acl: acl.allow enabled, 1 entries for user fred\n- acl: "group1" not defined in [acl.groups]\n- acl: acl.deny enabled, 1 entries for user fred\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- error: pretxnchangegroup.acl hook failed: acl: user "fred" denied on "foo/Bar/file.txt" (changeset "f9cafe1212c8")\n- bundle2-input-part: total payload size 1553\n- bundle2-input-part: total payload size 24\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "fred" denied on "foo/Bar/file.txt" (changeset "f9cafe1212c8")\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n no rollback information available\n 0:6675d58eff77\n \n@@ -1678,9 +1176,6 @@\n $ echo "** = @unlikelytoexist" >> $config\n $ do_push fred 2>&1 | grep unlikelytoexist\n ** = @unlikelytoexist\n- acl: "unlikelytoexist" not defined in [acl.groups]\n- error: pretxnchangegroup.acl hook failed: group \'unlikelytoexist\' is undefined\n- abort: group \'unlikelytoexist\' is undefined\n \n \n Branch acl tests setup\n@@ -1693,27 +1188,31 @@\n marked working directory as branch foobar\n (branches are permanent and global, did you want a bookmark?)\n $ hg commit -m \'create foobar\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ echo \'foo contents\' > abc.txt\n $ hg add abc.txt\n $ hg commit -m \'foobar contents\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ cd ..\n $ hg --cwd a pull ../b\n pulling from ../b\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- added 2 changesets with 1 changes to 1 files (+1 heads)\n- new changesets 81fbf4469322:fb35475503ef\n- (run \'hg heads\' to see heads)\n+ no changes found\n \n Create additional changeset on foobar branch\n \n $ cd a\n $ hg up -C foobar\n- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: unknown revision \'foobar\'\n+ [255]\n $ echo \'foo contents2\' > abc.txt\n $ hg commit -m \'foobar contents2\'\n+ nothing changed\n+ [1]\n $ cd ..\n \n \n@@ -1737,66 +1236,23 @@\n listing keys for "phases"\n checking for updated bookmarks\n listing keys for "bookmarks"\n- listing keys for "bookmarks"\n- 4 changesets found\n- list of changesets:\n- ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n- 911600dab2ae7a9baff75958b84fe606851ce955\n- e8fc755d4d8217ee5b0c2bb41558c40d43b92c01\n- bundle2-output-bundle: "HG20", 5 parts total\n- bundle2-output-part: "replycaps" 224 bytes payload\n- bundle2-output-part: "check:phases" 48 bytes payload\n- bundle2-output-part: "check:updated-heads" streamed payload\n- bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n- bundle2-output-part: "phase-heads" 48 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 40\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- add changeset e8fc755d4d82\n- adding manifests\n- adding file changes\n- adding abc.txt revisions\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "astro"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches not enabled\n- acl: acl.allow not enabled\n- acl: acl.deny not enabled\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- acl: path access granted: "911600dab2ae"\n- acl: branch access granted: "e8fc755d4d82" on branch "foobar"\n- acl: path access granted: "e8fc755d4d82"\n- bundle2-input-part: total payload size 2068\n- bundle2-input-part: "phase-heads" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-bundle: 5 parts total\n- updating the branch cache\n- added 4 changesets with 4 changes to 4 files (+1 heads)\n- bundle2-output-bundle: "HG20", 1 parts total\n- bundle2-output-part: "reply:changegroup" (advisory) (params: 0 advisory) empty payload\n- bundle2-input-bundle: no-transaction\n- bundle2-input-part: "reply:changegroup" (advisory) (params: 0 advisory) supported\n- bundle2-input-bundle: 1 parts total\n- listing keys for "phases"\n- repository tip rolled back to revision 2 (undo push)\n- 2:fb35475503ef\n+ invalid branch cache (served): tip differs\n+ listing keys for "bookmarks"\n+ 3 changesets found\n+ list of changesets:\n+ ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n+ f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n+ 911600dab2ae7a9baff75958b84fe606851ce955\n+ bundle2-output-bundle: "HG20", 5 parts total\n+ bundle2-output-part: "replycaps" 224 bytes payload\n+ bundle2-output-part: "check:phases" 24 bytes payload\n+ bundle2-output-part: "check:updated-heads" streamed payload\n+ bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n+ bundle2-output-part: "phase-heads" 24 bytes payload\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n+ 0:6675d58eff77\n \n \n Branch acl deny test\n@@ -1823,59 +1279,23 @@\n listing keys for "phases"\n checking for updated bookmarks\n listing keys for "bookmarks"\n- listing keys for "bookmarks"\n- 4 changesets found\n- list of changesets:\n- ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n- 911600dab2ae7a9baff75958b84fe606851ce955\n- e8fc755d4d8217ee5b0c2bb41558c40d43b92c01\n- bundle2-output-bundle: "HG20", 5 parts total\n- bundle2-output-part: "replycaps" 224 bytes payload\n- bundle2-output-part: "check:phases" 48 bytes payload\n- bundle2-output-part: "check:updated-heads" streamed payload\n- bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n- bundle2-output-part: "phase-heads" 48 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 40\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- add changeset e8fc755d4d82\n- adding manifests\n- adding file changes\n- adding abc.txt revisions\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "astro"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches enabled, 1 entries for user astro\n- acl: acl.allow not enabled\n- acl: acl.deny not enabled\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- acl: path access granted: "911600dab2ae"\n- error: pretxnchangegroup.acl hook failed: acl: user "astro" denied on branch "foobar" (changeset "e8fc755d4d82")\n- bundle2-input-part: total payload size 2068\n- bundle2-input-part: total payload size 48\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "astro" denied on branch "foobar" (changeset "e8fc755d4d82")\n- no rollback information available\n- 2:fb35475503ef\n+ invalid branch cache (served): tip differs\n+ listing keys for "bookmarks"\n+ 3 changesets found\n+ list of changesets:\n+ ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n+ f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n+ 911600dab2ae7a9baff75958b84fe606851ce955\n+ bundle2-output-bundle: "HG20", 5 parts total\n+ bundle2-output-part: "replycaps" 224 bytes payload\n+ bundle2-output-part: "check:phases" 24 bytes payload\n+ bundle2-output-part: "check:updated-heads" streamed payload\n+ bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n+ bundle2-output-part: "phase-heads" 24 bytes payload\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n+ 0:6675d58eff77\n \n \n Branch acl empty allow test\n@@ -1901,53 +1321,23 @@\n listing keys for "phases"\n checking for updated bookmarks\n listing keys for "bookmarks"\n- listing keys for "bookmarks"\n- 4 changesets found\n- list of changesets:\n- ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n- 911600dab2ae7a9baff75958b84fe606851ce955\n- e8fc755d4d8217ee5b0c2bb41558c40d43b92c01\n- bundle2-output-bundle: "HG20", 5 parts total\n- bundle2-output-part: "replycaps" 224 bytes payload\n- bundle2-output-part: "check:phases" 48 bytes payload\n- bundle2-output-part: "check:updated-heads" streamed payload\n- bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n- bundle2-output-part: "phase-heads" 48 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 40\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- add changeset e8fc755d4d82\n- adding manifests\n- adding file changes\n- adding abc.txt revisions\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "astro"\n- acl: acl.allow.branches enabled, 0 entries for user astro\n- acl: acl.deny.branches not enabled\n- acl: acl.allow not enabled\n- acl: acl.deny not enabled\n- error: pretxnchangegroup.acl hook failed: acl: user "astro" not allowed on branch "default" (changeset "ef1ea85a6374")\n- bundle2-input-part: total payload size 2068\n- bundle2-input-part: total payload size 48\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "astro" not allowed on branch "default" (changeset "ef1ea85a6374")\n- no rollback information available\n- 2:fb35475503ef\n+ invalid branch cache (served): tip differs\n+ listing keys for "bookmarks"\n+ 3 changesets found\n+ list of changesets:\n+ ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n+ f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n+ 911600dab2ae7a9baff75958b84fe606851ce955\n+ bundle2-output-bundle: "HG20", 5 parts total\n+ bundle2-output-part: "replycaps" 224 bytes payload\n+ bundle2-output-part: "check:phases" 24 bytes payload\n+ bundle2-output-part: "check:updated-heads" streamed payload\n+ bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n+ bundle2-output-part: "phase-heads" 24 bytes payload\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n+ 0:6675d58eff77\n \n \n Branch acl allow other\n@@ -1975,53 +1365,23 @@\n listing keys for "phases"\n checking for updated bookmarks\n listing keys for "bookmarks"\n- listing keys for "bookmarks"\n- 4 changesets found\n- list of changesets:\n- ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n- 911600dab2ae7a9baff75958b84fe606851ce955\n- e8fc755d4d8217ee5b0c2bb41558c40d43b92c01\n- bundle2-output-bundle: "HG20", 5 parts total\n- bundle2-output-part: "replycaps" 224 bytes payload\n- bundle2-output-part: "check:phases" 48 bytes payload\n- bundle2-output-part: "check:updated-heads" streamed payload\n- bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n- bundle2-output-part: "phase-heads" 48 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 40\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- add changeset e8fc755d4d82\n- adding manifests\n- adding file changes\n- adding abc.txt revisions\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "astro"\n- acl: acl.allow.branches enabled, 0 entries for user astro\n- acl: acl.deny.branches not enabled\n- acl: acl.allow not enabled\n- acl: acl.deny not enabled\n- error: pretxnchangegroup.acl hook failed: acl: user "astro" not allowed on branch "default" (changeset "ef1ea85a6374")\n- bundle2-input-part: total payload size 2068\n- bundle2-input-part: total payload size 48\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "astro" not allowed on branch "default" (changeset "ef1ea85a6374")\n- no rollback information available\n- 2:fb35475503ef\n+ invalid branch cache (served): tip differs\n+ listing keys for "bookmarks"\n+ 3 changesets found\n+ list of changesets:\n+ ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n+ f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n+ 911600dab2ae7a9baff75958b84fe606851ce955\n+ bundle2-output-bundle: "HG20", 5 parts total\n+ bundle2-output-part: "replycaps" 224 bytes payload\n+ bundle2-output-part: "check:phases" 24 bytes payload\n+ bundle2-output-part: "check:updated-heads" streamed payload\n+ bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n+ bundle2-output-part: "phase-heads" 24 bytes payload\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n+ 0:6675d58eff77\n \n $ do_push george\n Pushing as user george\n@@ -2043,66 +1403,23 @@\n listing keys for "phases"\n checking for updated bookmarks\n listing keys for "bookmarks"\n- listing keys for "bookmarks"\n- 4 changesets found\n- list of changesets:\n- ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n- 911600dab2ae7a9baff75958b84fe606851ce955\n- e8fc755d4d8217ee5b0c2bb41558c40d43b92c01\n- bundle2-output-bundle: "HG20", 5 parts total\n- bundle2-output-part: "replycaps" 224 bytes payload\n- bundle2-output-part: "check:phases" 48 bytes payload\n- bundle2-output-part: "check:updated-heads" streamed payload\n- bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n- bundle2-output-part: "phase-heads" 48 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 40\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- add changeset e8fc755d4d82\n- adding manifests\n- adding file changes\n- adding abc.txt revisions\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "george"\n- acl: acl.allow.branches enabled, 1 entries for user george\n- acl: acl.deny.branches not enabled\n- acl: acl.allow not enabled\n- acl: acl.deny not enabled\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- acl: path access granted: "911600dab2ae"\n- acl: branch access granted: "e8fc755d4d82" on branch "foobar"\n- acl: path access granted: "e8fc755d4d82"\n- bundle2-input-part: total payload size 2068\n- bundle2-input-part: "phase-heads" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-bundle: 5 parts total\n- updating the branch cache\n- added 4 changesets with 4 changes to 4 files (+1 heads)\n- bundle2-output-bundle: "HG20", 1 parts total\n- bundle2-output-part: "reply:changegroup" (advisory) (params: 0 advisory) empty payload\n- bundle2-input-bundle: no-transaction\n- bundle2-input-part: "reply:changegroup" (advisory) (params: 0 advisory) supported\n- bundle2-input-bundle: 1 parts total\n- listing keys for "phases"\n- repository tip rolled back to revision 2 (undo push)\n- 2:fb35475503ef\n+ invalid branch cache (served): tip differs\n+ listing keys for "bookmarks"\n+ 3 changesets found\n+ list of changesets:\n+ ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n+ f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n+ 911600dab2ae7a9baff75958b84fe606851ce955\n+ bundle2-output-bundle: "HG20", 5 parts total\n+ bundle2-output-part: "replycaps" 224 bytes payload\n+ bundle2-output-part: "check:phases" 24 bytes payload\n+ bundle2-output-part: "check:updated-heads" streamed payload\n+ bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n+ bundle2-output-part: "phase-heads" 24 bytes payload\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n+ 0:6675d58eff77\n \n \n Branch acl conflicting allow\n@@ -2134,66 +1451,23 @@\n listing keys for "phases"\n checking for updated bookmarks\n listing keys for "bookmarks"\n- listing keys for "bookmarks"\n- 4 changesets found\n- list of changesets:\n- ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n- 911600dab2ae7a9baff75958b84fe606851ce955\n- e8fc755d4d8217ee5b0c2bb41558c40d43b92c01\n- bundle2-output-bundle: "HG20", 5 parts total\n- bundle2-output-part: "replycaps" 224 bytes payload\n- bundle2-output-part: "check:phases" 48 bytes payload\n- bundle2-output-part: "check:updated-heads" streamed payload\n- bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n- bundle2-output-part: "phase-heads" 48 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 40\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- add changeset e8fc755d4d82\n- adding manifests\n- adding file changes\n- adding abc.txt revisions\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "george"\n- acl: acl.allow.branches enabled, 1 entries for user george\n- acl: acl.deny.branches not enabled\n- acl: acl.allow not enabled\n- acl: acl.deny not enabled\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- acl: path access granted: "911600dab2ae"\n- acl: branch access granted: "e8fc755d4d82" on branch "foobar"\n- acl: path access granted: "e8fc755d4d82"\n- bundle2-input-part: total payload size 2068\n- bundle2-input-part: "phase-heads" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-bundle: 5 parts total\n- updating the branch cache\n- added 4 changesets with 4 changes to 4 files (+1 heads)\n- bundle2-output-bundle: "HG20", 1 parts total\n- bundle2-output-part: "reply:changegroup" (advisory) (params: 0 advisory) empty payload\n- bundle2-input-bundle: no-transaction\n- bundle2-input-part: "reply:changegroup" (advisory) (params: 0 advisory) supported\n- bundle2-input-bundle: 1 parts total\n- listing keys for "phases"\n- repository tip rolled back to revision 2 (undo push)\n- 2:fb35475503ef\n+ invalid branch cache (served): tip differs\n+ listing keys for "bookmarks"\n+ 3 changesets found\n+ list of changesets:\n+ ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n+ f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n+ 911600dab2ae7a9baff75958b84fe606851ce955\n+ bundle2-output-bundle: "HG20", 5 parts total\n+ bundle2-output-part: "replycaps" 224 bytes payload\n+ bundle2-output-part: "check:phases" 24 bytes payload\n+ bundle2-output-part: "check:updated-heads" streamed payload\n+ bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n+ bundle2-output-part: "phase-heads" 24 bytes payload\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n+ 0:6675d58eff77\n \n Branch acl conflicting deny\n \n@@ -2224,53 +1498,23 @@\n listing keys for "phases"\n checking for updated bookmarks\n listing keys for "bookmarks"\n- listing keys for "bookmarks"\n- 4 changesets found\n- list of changesets:\n- ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n- 911600dab2ae7a9baff75958b84fe606851ce955\n- e8fc755d4d8217ee5b0c2bb41558c40d43b92c01\n- bundle2-output-bundle: "HG20", 5 parts total\n- bundle2-output-part: "replycaps" 224 bytes payload\n- bundle2-output-part: "check:phases" 48 bytes payload\n- bundle2-output-part: "check:updated-heads" streamed payload\n- bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n- bundle2-output-part: "phase-heads" 48 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 40\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- add changeset e8fc755d4d82\n- adding manifests\n- adding file changes\n- adding abc.txt revisions\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "george"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches enabled, 1 entries for user george\n- acl: acl.allow not enabled\n- acl: acl.deny not enabled\n- error: pretxnchangegroup.acl hook failed: acl: user "george" denied on branch "default" (changeset "ef1ea85a6374")\n- bundle2-input-part: total payload size 2068\n- bundle2-input-part: total payload size 48\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "george" denied on branch "default" (changeset "ef1ea85a6374")\n- no rollback information available\n- 2:fb35475503ef\n+ invalid branch cache (served): tip differs\n+ listing keys for "bookmarks"\n+ 3 changesets found\n+ list of changesets:\n+ ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n+ f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n+ 911600dab2ae7a9baff75958b84fe606851ce955\n+ bundle2-output-bundle: "HG20", 5 parts total\n+ bundle2-output-part: "replycaps" 224 bytes payload\n+ bundle2-output-part: "check:phases" 24 bytes payload\n+ bundle2-output-part: "check:updated-heads" streamed payload\n+ bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n+ bundle2-output-part: "phase-heads" 24 bytes payload\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n+ 0:6675d58eff77\n \n User \'astro\' must not be denied\n \n@@ -2297,66 +1541,23 @@\n listing keys for "phases"\n checking for updated bookmarks\n listing keys for "bookmarks"\n- listing keys for "bookmarks"\n- 4 changesets found\n- list of changesets:\n- ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n- 911600dab2ae7a9baff75958b84fe606851ce955\n- e8fc755d4d8217ee5b0c2bb41558c40d43b92c01\n- bundle2-output-bundle: "HG20", 5 parts total\n- bundle2-output-part: "replycaps" 224 bytes payload\n- bundle2-output-part: "check:phases" 48 bytes payload\n- bundle2-output-part: "check:updated-heads" streamed payload\n- bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n- bundle2-output-part: "phase-heads" 48 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 40\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- add changeset e8fc755d4d82\n- adding manifests\n- adding file changes\n- adding abc.txt revisions\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "astro"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches enabled, 0 entries for user astro\n- acl: acl.allow not enabled\n- acl: acl.deny not enabled\n- acl: branch access granted: "ef1ea85a6374" on branch "default"\n- acl: path access granted: "ef1ea85a6374"\n- acl: branch access granted: "f9cafe1212c8" on branch "default"\n- acl: path access granted: "f9cafe1212c8"\n- acl: branch access granted: "911600dab2ae" on branch "default"\n- acl: path access granted: "911600dab2ae"\n- acl: branch access granted: "e8fc755d4d82" on branch "foobar"\n- acl: path access granted: "e8fc755d4d82"\n- bundle2-input-part: total payload size 2068\n- bundle2-input-part: "phase-heads" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-bundle: 5 parts total\n- updating the branch cache\n- added 4 changesets with 4 changes to 4 files (+1 heads)\n- bundle2-output-bundle: "HG20", 1 parts total\n- bundle2-output-part: "reply:changegroup" (advisory) (params: 0 advisory) empty payload\n- bundle2-input-bundle: no-transaction\n- bundle2-input-part: "reply:changegroup" (advisory) (params: 0 advisory) supported\n- bundle2-input-bundle: 1 parts total\n- listing keys for "phases"\n- repository tip rolled back to revision 2 (undo push)\n- 2:fb35475503ef\n+ invalid branch cache (served): tip differs\n+ listing keys for "bookmarks"\n+ 3 changesets found\n+ list of changesets:\n+ ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n+ f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n+ 911600dab2ae7a9baff75958b84fe606851ce955\n+ bundle2-output-bundle: "HG20", 5 parts total\n+ bundle2-output-part: "replycaps" 224 bytes payload\n+ bundle2-output-part: "check:phases" 24 bytes payload\n+ bundle2-output-part: "check:updated-heads" streamed payload\n+ bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n+ bundle2-output-part: "phase-heads" 24 bytes payload\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n+ 0:6675d58eff77\n \n \n Non-astro users must be denied\n@@ -2381,52 +1582,22 @@\n listing keys for "phases"\n checking for updated bookmarks\n listing keys for "bookmarks"\n- listing keys for "bookmarks"\n- 4 changesets found\n- list of changesets:\n- ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n- f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n- 911600dab2ae7a9baff75958b84fe606851ce955\n- e8fc755d4d8217ee5b0c2bb41558c40d43b92c01\n- bundle2-output-bundle: "HG20", 5 parts total\n- bundle2-output-part: "replycaps" 224 bytes payload\n- bundle2-output-part: "check:phases" 48 bytes payload\n- bundle2-output-part: "check:updated-heads" streamed payload\n- bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n- bundle2-output-part: "phase-heads" 48 bytes payload\n- bundle2-input-bundle: with-transaction\n- bundle2-input-part: "replycaps" supported\n- bundle2-input-part: total payload size 224\n- bundle2-input-part: "check:phases" supported\n- bundle2-input-part: total payload size 48\n- bundle2-input-part: "check:updated-heads" supported\n- bundle2-input-part: total payload size 40\n- bundle2-input-part: "changegroup" (params: 1 mandatory) supported\n- adding changesets\n- add changeset ef1ea85a6374\n- add changeset f9cafe1212c8\n- add changeset 911600dab2ae\n- add changeset e8fc755d4d82\n- adding manifests\n- adding file changes\n- adding abc.txt revisions\n- adding foo/Bar/file.txt revisions\n- adding foo/file.txt revisions\n- adding quux/file.py revisions\n- calling hook pretxnchangegroup.acl: hgext.acl.hook\n- acl: checking access for user "george"\n- acl: acl.allow.branches not enabled\n- acl: acl.deny.branches enabled, 1 entries for user george\n- acl: acl.allow not enabled\n- acl: acl.deny not enabled\n- error: pretxnchangegroup.acl hook failed: acl: user "george" denied on branch "default" (changeset "ef1ea85a6374")\n- bundle2-input-part: total payload size 2068\n- bundle2-input-part: total payload size 48\n- bundle2-input-bundle: 5 parts total\n- transaction abort!\n- rollback completed\n- abort: acl: user "george" denied on branch "default" (changeset "ef1ea85a6374")\n- no rollback information available\n- 2:fb35475503ef\n- \n-\n+ invalid branch cache (served): tip differs\n+ listing keys for "bookmarks"\n+ 3 changesets found\n+ list of changesets:\n+ ef1ea85a6374b77d6da9dcda9541f498f2d17df7\n+ f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd\n+ 911600dab2ae7a9baff75958b84fe606851ce955\n+ bundle2-output-bundle: "HG20", 5 parts total\n+ bundle2-output-part: "replycaps" 224 bytes payload\n+ bundle2-output-part: "check:phases" 24 bytes payload\n+ bundle2-output-part: "check:updated-heads" streamed payload\n+ bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload\n+ bundle2-output-part: "phase-heads" 24 bytes payload\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ no rollback information available\n+ 0:6675d58eff77\n+ \n+\n', 2448, 2450, 'truncated \\uXXXX escape') decoding diff, sorry
test-alias.t
--- c:/hgdev/src/tests/test-alias.t
+++ c:/hgdev/src/tests/test-alias.t.err
@@ -595,9 +595,9 @@
rebase rebate
[255]
$ hg rebat
- this is rebate
+ this is $HG_ARGS
(esc)
$ hg rebat --foo-bar
- this is rebate --foo-bar
+ this is $HG_ARGS
(esc)
help for a shell alias
@@ -608,13 +608,14 @@
shell alias for: echo this is %HG_ARGS% (windows !)
shell alias for: echo this is $HG_ARGS (no-windows !)
+ shell alias for: echo this is $HG_ARGS
This is my alias which just prints something.
+ */* (glob) (?)
+ */* (glob) (?)
+ */* (glob) (?)
defined by:* (glob)
- */* (glob) (?)
- */* (glob) (?)
- */* (glob) (?)
(some details hidden, use --verbose to show complete help)
test-amend-subrepo.t#obsstore-off
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-amend-subrepo.t\n+++ c:/hgdev/src/tests/test-amend-subrepo.t#obsstore-off.err\n@@ -32,19 +32,67 @@\n amend without .hgsub\n \n $ hg amend s\n- abort: can\'t commit subrepos without .hgsub\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n amend with subrepo\n \n $ hg amend\n saved backup bundle to * (glob) (obsstore-off !)\n- $ hg status --change .\n- A .hgsub\n- A .hgsubstate\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status --change .\n A a\n $ cat .hgsubstate\n- 0000000000000000000000000000000000000000 s\n+ cat: .hgsubstate: $ENOENT$\n+ [1]\n \n Update subrepo\n --------------\n@@ -53,6 +101,9 @@\n \n $ echo a >> a\n $ hg ci -m1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n amend with dirty subrepo\n \n@@ -60,8 +111,8 @@\n $ hg add -R s\n adding s/a\n $ hg amend\n- abort: uncommitted changes in subrepository "s"\n- (use --subrepos for recursive commit)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n amend with modified subrepo\n@@ -69,19 +120,24 @@\n $ hg ci -R s -m0\n $ hg amend\n saved backup bundle to * (glob) (obsstore-off !)\n- $ hg status --change .\n- M .hgsubstate\n- M a\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status --change .\n+ A a\n $ cat .hgsubstate\n- f7b1eb17ad24730a1651fccd46c43826d1bbc2ac s\n+ 0000000000000000000000000000000000000000 s\n \n revert subrepo change\n \n $ hg up -R s -q null\n $ hg amend\n saved backup bundle to * (glob) (obsstore-off !)\n- $ hg status --change .\n- M a\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status --change .\n+ A a\n \n Link another subrepo\n --------------------\n@@ -90,6 +146,9 @@\n \n $ echo b >> b\n $ hg ci -qAm2\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n also checks if non-subrepo change is included\n \n@@ -104,65 +163,75 @@\n $ echo \'t = t\' >> .hgsub\n $ hg amend\n saved backup bundle to * (glob) (obsstore-off !)\n- $ hg status --change .\n- M .hgsub\n- M .hgsubstate\n- M a\n- A b\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status --change .\n+ A a\n+ $ cat .hgsubstate\n+ 0000000000000000000000000000000000000000 s\n+\n+Unlink one subrepo\n+------------------\n+\n+add new commit to be amended\n+\n+ $ echo a >> a\n+ $ hg ci -m3\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+\n+ $ echo \'t = t\' > .hgsub\n+\n+--interactive won\'t silently ignore dirty subrepos\n+\n+ $ echo modified > t/b\n+ $ hg amend --interactive --config ui.interactive=True\n+ abort: uncommitted changes in subrepository "t"\n+ [255]\n+ $ hg amend --interactive --config ui.interactive=True --config ui.commitsubrepos=True\n+ abort: uncommitted changes in subrepository "t"\n+ [255]\n+\n+ $ hg -R t revert -q --all --no-backup\n+\n+amend with one subrepo dropped\n+\n+ $ hg amend\n+ saved backup bundle to * (glob) (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status --change .\n+ A a\n $ cat .hgsubstate\n 0000000000000000000000000000000000000000 s\n bfb1a4fb358498a9533dabf4f2043d94162f1fcd t\n \n-Unlink one subrepo\n-------------------\n+Unlink subrepos completely\n+--------------------------\n \n add new commit to be amended\n \n $ echo a >> a\n $ hg ci -m3\n-\n- $ echo \'t = t\' > .hgsub\n-\n---interactive won\'t silently ignore dirty subrepos\n-\n- $ echo modified > t/b\n- $ hg amend --interactive --config ui.interactive=True\n- abort: uncommitted changes in subrepository "t"\n- [255]\n- $ hg amend --interactive --config ui.interactive=True --config ui.commitsubrepos=True\n- abort: uncommitted changes in subrepository "t"\n- [255]\n-\n- $ hg -R t revert -q --all --no-backup\n-\n-amend with one subrepo dropped\n-\n- $ hg amend\n- saved backup bundle to * (glob) (obsstore-off !)\n- $ hg status --change .\n- M .hgsub\n- M .hgsubstate\n- M a\n- $ cat .hgsubstate\n- bfb1a4fb358498a9533dabf4f2043d94162f1fcd t\n-\n-Unlink subrepos completely\n---------------------------\n-\n-add new commit to be amended\n-\n- $ echo a >> a\n- $ hg ci -m3\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n amend with .hgsub removed\n \n $ hg rm .hgsub\n- $ hg amend\n- saved backup bundle to * (glob) (obsstore-off !)\n- $ hg status --change .\n- M a\n- R .hgsub\n- R .hgsubstate\n+ not removing .hgsub: file has been marked for add (use \'hg forget\' to undo add)\n+ [1]\n+ $ hg amend\n+ saved backup bundle to * (glob) (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status --change .\n+ A a\n \n broken repositories will refuse to push\n \n@@ -170,9 +239,72 @@\n $ hg up -q -C 2\n #else\n $ hg up -q -C 6\n+ abort: unknown revision \'6\'\n+ [255]\n #endif\n $ echo c >> t/b\n $ hg amend -q -R t\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\t\\.hg\\strip-backup/bfb1a4fb3584-f91bf2bb-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r\\t\\.hg\\strip-backup/bfb1a4fb3584-db68e960-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r\\t\\.hg\\strip-backup/bfb1a4fb3584-db68e960-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg init ../dest\n $ hg init ../dest/t\n@@ -180,19 +312,21 @@\n $ hg push -q ../dest\n abort: subrepo \'t\' is hidden in revision 04aa62396ec6 (obsstore-on !)\n abort: subrepo \'t\' not found in revision 04aa62396ec6 (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n ... unless forced\n \n $ hg push --force -q ../dest\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg verify -R ../dest\n checking changesets\n checking manifests\n crosschecking files in changesets and manifests\n checking files\n- checked 5 changesets with 12 changes to 4 files\n- checking subrepo links\n- subrepo \'t\' not found in revision 04aa62396ec6\n- subrepo \'t\' not found in revision 6bce99600681\n+ checked 1 changesets with 1 changes to 1 files\n \n $ cd ..\n', 2123, 2125, 'truncated \\uXXXX escape') decoding diff, sorry
test-amend-subrepo.t#obsstore-on
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-amend-subrepo.t\n+++ c:/hgdev/src/tests/test-amend-subrepo.t#obsstore-on.err\n@@ -32,19 +32,67 @@\n amend without .hgsub\n \n $ hg amend s\n- abort: can\'t commit subrepos without .hgsub\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n amend with subrepo\n \n $ hg amend\n saved backup bundle to * (glob) (obsstore-off !)\n- $ hg status --change .\n- A .hgsub\n- A .hgsubstate\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status --change .\n A a\n $ cat .hgsubstate\n- 0000000000000000000000000000000000000000 s\n+ cat: .hgsubstate: $ENOENT$\n+ [1]\n \n Update subrepo\n --------------\n@@ -53,6 +101,9 @@\n \n $ echo a >> a\n $ hg ci -m1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n amend with dirty subrepo\n \n@@ -60,8 +111,8 @@\n $ hg add -R s\n adding s/a\n $ hg amend\n- abort: uncommitted changes in subrepository "s"\n- (use --subrepos for recursive commit)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n amend with modified subrepo\n@@ -69,19 +120,24 @@\n $ hg ci -R s -m0\n $ hg amend\n saved backup bundle to * (glob) (obsstore-off !)\n- $ hg status --change .\n- M .hgsubstate\n- M a\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status --change .\n+ A a\n $ cat .hgsubstate\n- f7b1eb17ad24730a1651fccd46c43826d1bbc2ac s\n+ 0000000000000000000000000000000000000000 s\n \n revert subrepo change\n \n $ hg up -R s -q null\n $ hg amend\n saved backup bundle to * (glob) (obsstore-off !)\n- $ hg status --change .\n- M a\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status --change .\n+ A a\n \n Link another subrepo\n --------------------\n@@ -90,6 +146,9 @@\n \n $ echo b >> b\n $ hg ci -qAm2\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n also checks if non-subrepo change is included\n \n@@ -104,65 +163,75 @@\n $ echo \'t = t\' >> .hgsub\n $ hg amend\n saved backup bundle to * (glob) (obsstore-off !)\n- $ hg status --change .\n- M .hgsub\n- M .hgsubstate\n- M a\n- A b\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status --change .\n+ A a\n+ $ cat .hgsubstate\n+ 0000000000000000000000000000000000000000 s\n+\n+Unlink one subrepo\n+------------------\n+\n+add new commit to be amended\n+\n+ $ echo a >> a\n+ $ hg ci -m3\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+\n+ $ echo \'t = t\' > .hgsub\n+\n+--interactive won\'t silently ignore dirty subrepos\n+\n+ $ echo modified > t/b\n+ $ hg amend --interactive --config ui.interactive=True\n+ abort: uncommitted changes in subrepository "t"\n+ [255]\n+ $ hg amend --interactive --config ui.interactive=True --config ui.commitsubrepos=True\n+ abort: uncommitted changes in subrepository "t"\n+ [255]\n+\n+ $ hg -R t revert -q --all --no-backup\n+\n+amend with one subrepo dropped\n+\n+ $ hg amend\n+ saved backup bundle to * (glob) (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status --change .\n+ A a\n $ cat .hgsubstate\n 0000000000000000000000000000000000000000 s\n bfb1a4fb358498a9533dabf4f2043d94162f1fcd t\n \n-Unlink one subrepo\n-------------------\n+Unlink subrepos completely\n+--------------------------\n \n add new commit to be amended\n \n $ echo a >> a\n $ hg ci -m3\n-\n- $ echo \'t = t\' > .hgsub\n-\n---interactive won\'t silently ignore dirty subrepos\n-\n- $ echo modified > t/b\n- $ hg amend --interactive --config ui.interactive=True\n- abort: uncommitted changes in subrepository "t"\n- [255]\n- $ hg amend --interactive --config ui.interactive=True --config ui.commitsubrepos=True\n- abort: uncommitted changes in subrepository "t"\n- [255]\n-\n- $ hg -R t revert -q --all --no-backup\n-\n-amend with one subrepo dropped\n-\n- $ hg amend\n- saved backup bundle to * (glob) (obsstore-off !)\n- $ hg status --change .\n- M .hgsub\n- M .hgsubstate\n- M a\n- $ cat .hgsubstate\n- bfb1a4fb358498a9533dabf4f2043d94162f1fcd t\n-\n-Unlink subrepos completely\n---------------------------\n-\n-add new commit to be amended\n-\n- $ echo a >> a\n- $ hg ci -m3\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n amend with .hgsub removed\n \n $ hg rm .hgsub\n- $ hg amend\n- saved backup bundle to * (glob) (obsstore-off !)\n- $ hg status --change .\n- M a\n- R .hgsub\n- R .hgsubstate\n+ not removing .hgsub: file has been marked for add (use \'hg forget\' to undo add)\n+ [1]\n+ $ hg amend\n+ saved backup bundle to * (glob) (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status --change .\n+ A a\n \n broken repositories will refuse to push\n \n@@ -170,9 +239,72 @@\n $ hg up -q -C 2\n #else\n $ hg up -q -C 6\n+ abort: unknown revision \'6\'\n+ [255]\n #endif\n $ echo c >> t/b\n $ hg amend -q -R t\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\t\\.hg\\strip-backup/bfb1a4fb3584-f91bf2bb-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r\\t\\.hg\\strip-backup/bfb1a4fb3584-db68e960-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r\\t\\.hg\\strip-backup/bfb1a4fb3584-db68e960-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg init ../dest\n $ hg init ../dest/t\n@@ -180,19 +312,21 @@\n $ hg push -q ../dest\n abort: subrepo \'t\' is hidden in revision 04aa62396ec6 (obsstore-on !)\n abort: subrepo \'t\' not found in revision 04aa62396ec6 (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n ... unless forced\n \n $ hg push --force -q ../dest\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg verify -R ../dest\n checking changesets\n checking manifests\n crosschecking files in changesets and manifests\n checking files\n- checked 5 changesets with 12 changes to 4 files\n- checking subrepo links\n- subrepo \'t\' not found in revision 04aa62396ec6\n- subrepo \'t\' not found in revision 6bce99600681\n+ checked 1 changesets with 1 changes to 1 files\n \n $ cd ..\n', 2122, 2124, 'truncated \\uXXXX escape') decoding diff, sorry
test-amend.t#obsstore-off
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-amend.t\n+++ c:/hgdev/src/tests/test-amend.t#obsstore-off.err\n@@ -30,6 +30,70 @@\n \n $ hg amend\n saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/112478962961-7e959a55-amend.hg (obsstore-off !)\n+ saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/112478962961-7e959a55-amend.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo1\\.hg\\strip-backup/112478962961-7e959a55-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo1\\.hg\\strip-backup/112478962961-7684ddc5-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo1\\.hg\\strip-backup/112478962961-7684ddc5-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n #if obsstore-off\n $ hg log -p -G --hidden -T \'{rev} {node|short} {desc}\\n\'\n @ 1 be169c7e8dbe B\n@@ -59,7 +123,7 @@\n | @@ -0,0 +1,1 @@\n | +B2\n |\n- | x 1 112478962961 B\n+ | o 1 112478962961 B\n |/ diff --git a/B b/B\n | new file mode 100644\n | --- /dev/null\n@@ -82,16 +146,19 @@\n Nothing changed\n \n $ hg amend\n- nothing changed\n- [1]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg amend -d "0 0"\n- nothing changed\n- [1]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg amend -d "Thu Jan 01 00:00:00 1970 UTC"\n- nothing changed\n- [1]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n #if obsstore-on\n $ hg init repo-merge-state\n@@ -123,14 +190,20 @@\n $ hg add C D\n $ hg amend -m NEWMESSAGE -I C\n saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/be169c7e8dbe-7684ddc5-amend.hg (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r . -T \'{node|short} {desc} {files}\\n\'\n- c7ba14d9075b NEWMESSAGE B C\n+ be169c7e8dbe B B\n $ echo 5 > E\n $ rm C\n $ hg amend -d \'2000 1000\' -u \'Foo <foo@example.com>\' -A C D\n saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/c7ba14d9075b-b3e76daa-amend.hg (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r . -T \'{node|short} {desc} {files} {author} {date}\\n\'\n- 14f6c4bcc865 NEWMESSAGE B D Foo <foo@example.com> 2000.01000\n+ be169c7e8dbe B B test 0.00\n \n Amend with editor\n \n@@ -143,21 +216,31 @@\n \n $ HGEDITOR="sh $TESTTMP/prefix.sh" hg amend --edit\n saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/14f6c4bcc865-6591f15d-amend.hg (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r . -T \'{node|short} {desc}\\n\'\n- 298f085230c3 EDITED: NEWMESSAGE\n+ be169c7e8dbe B\n $ HGEDITOR="sh $TESTTMP/prefix.sh" hg amend -e -m MSG\n saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/298f085230c3-d81a6ad3-amend.hg (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r . -T \'{node|short} {desc}\\n\'\n- 974f07f28537 EDITED: MSG\n+ be169c7e8dbe B\n \n $ echo FOO > $TESTTMP/msg\n $ hg amend -l $TESTTMP/msg -m BAR\n- abort: cannot specify both --message and --logfile\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg amend -l $TESTTMP/msg\n saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/974f07f28537-edb6470a-amend.hg (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r . -T \'{node|short} {desc}\\n\'\n- 507be9bdac71 FOO\n+ be169c7e8dbe B\n \n Interactive mode\n \n@@ -167,19 +250,24 @@\n > y\n > n\n > EOS\n+ diff --git a/D b/D\n+ new file mode 100644\n+ examine changes to \'D\'?\n+ (enter ? for help) [Ynesfdaq?] y\n+ \n+ @@ -0,0 +1,1 @@\n+ +4\n+ record this change to \'D\'?\n+ (enter ? for help) [Ynesfdaq?] n\n+ \n+ saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/507be9bdac71-c8077452-amend.hg (obsstore-off !)\n diff --git a/F b/F\n new file mode 100644\n examine changes to \'F\'?\n- (enter ? for help) [Ynesfdaq?] y\n- \n- diff --git a/G b/G\n- new file mode 100644\n- examine changes to \'G\'?\n- (enter ? for help) [Ynesfdaq?] n\n- \n- saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/507be9bdac71-c8077452-amend.hg (obsstore-off !)\n+ (enter ? for help) [Ynesfdaq?] abort: response expected\n+ [255]\n $ hg log -r . -T \'{files}\\n\'\n- B D F\n+ B\n \n Amend in the middle of a stack\n \n@@ -254,10 +342,76 @@\n $ hg update -q C\n $ hg amend -m FOO\n saved backup bundle to $TESTTMP/repo3/.hg/strip-backup/a35c07e8a2a4-15ff4612-amend.hg (obsstore-off !)\n+ saved backup bundle to $TESTTMP/repo3/.hg/strip-backup/a35c07e8a2a4-15ff4612-amend.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo3\\.hg\\strip-backup/a35c07e8a2a4-15ff4612-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo3\\.hg\\strip-backup/a35c07e8a2a4-18824ef3-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo3\\.hg\\strip-backup/a35c07e8a2a4-18824ef3-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ rm .hg/localtags\n $ hg log -G -T \'{desc}\\n\'\n @ FOO\n |\\\n+ +---o C\n+ | |/\n | o B\n |\n o A\n@@ -292,6 +446,70 @@\n \n $ hg amend\n saved backup bundle to * (glob) (obsstore-off !)\n+ saved backup bundle to $TESTTMP/wcstates/.hg/strip-backup/c3bf0bdb1cd2-2b3f2de4-amend.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\wcstates\\.hg\\strip-backup/c3bf0bdb1cd2-2b3f2de4-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\wcstates\\.hg\\strip-backup/c3bf0bdb1cd2-b87d05be-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\wcstates\\.hg\\strip-backup/c3bf0bdb1cd2-b87d05be-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n clean/modified/removed/added states of the amended revision\n \n@@ -381,13 +599,82 @@\n \n #else\n $ hg amend\n+ saved backup bundle to $TESTTMP/repo4/.hg/strip-backup/95e899acf2ce-f11cb050-amend.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo4\\.hg\\strip-backup/95e899acf2ce-f11cb050-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo4\\.hg\\strip-backup/95e899acf2ce-dfe00693-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo4\\.hg\\strip-backup/95e899acf2ce-dfe00693-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n When backup-bundle config option is set:\n $ cat << EOF >> $HGRCPATH\n > [rewrite]\n > backup-bundle = False\n > EOF\n+ $TESTTMP.sh: line 193: cannot create temp file for here document: Permission denied\n+ [1]\n $ echo fixed > b\n $ hg amend\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n #endif\n ==========================================\n@@ -416,69 +703,153 @@\n When updatetimestamp is False\n \n $ hg amend --date \'1997-1-1 0:1\'\n- $ hg log --limit 1\n- user: test\n- date: Wed Jan 01 00:01:00 1997 +0000\n- summary: commit 1\n-\n- When update-timestamp is True and no other change than the date\n-\n- $ hg amend --config rewrite.update-timestamp=True\n- nothing changed\n+ saved backup bundle to $TESTTMP/repo5/.hg/strip-backup/cfffdfb584d3-5d9fa6ee-amend.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo5\\.hg\\strip-backup/cfffdfb584d3-5d9fa6ee-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo5\\.hg\\strip-backup/cfffdfb584d3-8962fff7-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo5\\.hg\\strip-backup/cfffdfb584d3-8962fff7-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n [1]\n $ hg log --limit 1\n user: test\n date: Wed Jan 01 00:01:00 1997 +0000\n summary: commit 1\n \n+ When update-timestamp is True and no other change than the date\n+\n+ $ hg amend --config rewrite.update-timestamp=True\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg log --limit 1\n+ user: test\n+ date: Wed Jan 01 00:01:00 1997 +0000\n+ summary: commit 1\n+\n When update-timestamp is True and there is other change than the date\n $ hg amend --user foobar --config rewrite.update-timestamp=True\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --limit 1\n- user: foobar\n- date: Thu Jan 01 00:00:02 1970 +0000\n+ user: test\n+ date: Wed Jan 01 00:01:00 1997 +0000\n summary: commit 1\n \n When date option is applicable and update-timestamp is True\n $ hg amend --date \'1998-1-1 0:1\' --config rewrite.update-timestamp=True\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --limit 1\n- user: foobar\n- date: Thu Jan 01 00:01:00 1998 +0000\n+ user: test\n+ date: Wed Jan 01 00:01:00 1997 +0000\n summary: commit 1\n \n Unlike rewrite.update-timestamp, -D/--currentdate always updates the timestamp\n \n $ hg amend -D\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --limit 1\n- user: foobar\n- date: Thu Jan 01 00:00:04 1970 +0000\n+ user: test\n+ date: Wed Jan 01 00:01:00 1997 +0000\n summary: commit 1\n \n $ hg amend -D --config rewrite.update-timestamp=True\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --limit 1\n- user: foobar\n- date: Thu Jan 01 00:00:05 1970 +0000\n+ user: test\n+ date: Wed Jan 01 00:01:00 1997 +0000\n summary: commit 1\n \n rewrite.update-timestamp can be negated by --no-currentdate\n \n $ hg amend --config rewrite.update-timestamp=True --no-currentdate -u baz\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --limit 1\n- user: baz\n- date: Thu Jan 01 00:00:05 1970 +0000\n+ user: test\n+ date: Wed Jan 01 00:01:00 1997 +0000\n summary: commit 1\n \n Bad combination of date options:\n \n $ hg amend -D --date \'0 0\'\n- abort: cannot specify both --date and --currentdate\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Close branch\n \n $ hg amend --secret --close-branch\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --limit 1 -T \'close={get(extras, "close")}\\nphase={phase}\\n\'\n- close=1\n- phase=secret\n+ close=\n+ phase=draft\n \n $ cd ..\n \n@@ -495,6 +866,69 @@\n a | 2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n $ echo a > a; echo b2 > b; hg amend -q b\n+ strip failed, backup bundle stored in \'$TESTTMP\\6157\\.hg\\strip-backup/dbf67b88f892-2d65775c-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\6157\\.hg\\strip-backup/dbf67b88f892-7d5de567-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\6157\\.hg\\strip-backup/dbf67b88f892-7d5de567-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg diff --stat -c .\n a | 2 +-\n b | 2 +-\n@@ -516,6 +950,70 @@\n > sleep 1\n > EOF\n $ HGEDITOR="sh $TESTTMP/touchy_editor.sh" hg commit --amend\n+ saved backup bundle to $TESTTMP/modify-during-amend/.hg/strip-backup/dc0126abbc9d-6e167cc1-amend.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\modify-during-amend\\.hg\\strip-backup/dc0126abbc9d-6e167cc1-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\modify-during-amend\\.hg\\strip-backup/dc0126abbc9d-04f5f123-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\modify-during-amend\\.hg\\strip-backup/dc0126abbc9d-04f5f123-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ if (hg diff -c . | grep \'delta\' >/dev/null) || [ -n "$(hg status)" ]; then\n > echo "OK."\n > else\n', 2767, 2769, 'truncated \\uXXXX escape') decoding diff, sorry
test-amend.t#obsstore-on
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-amend.t\n+++ c:/hgdev/src/tests/test-amend.t#obsstore-on.err\n@@ -30,6 +30,70 @@\n \n $ hg amend\n saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/112478962961-7e959a55-amend.hg (obsstore-off !)\n+ saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/112478962961-7e959a55-amend.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo1\\.hg\\strip-backup/112478962961-7e959a55-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo1\\.hg\\strip-backup/112478962961-7684ddc5-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo1\\.hg\\strip-backup/112478962961-7684ddc5-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n #if obsstore-off\n $ hg log -p -G --hidden -T \'{rev} {node|short} {desc}\\n\'\n @ 1 be169c7e8dbe B\n@@ -59,7 +123,7 @@\n | @@ -0,0 +1,1 @@\n | +B2\n |\n- | x 1 112478962961 B\n+ | o 1 112478962961 B\n |/ diff --git a/B b/B\n | new file mode 100644\n | --- /dev/null\n@@ -82,16 +146,19 @@\n Nothing changed\n \n $ hg amend\n- nothing changed\n- [1]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg amend -d "0 0"\n- nothing changed\n- [1]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg amend -d "Thu Jan 01 00:00:00 1970 UTC"\n- nothing changed\n- [1]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n #if obsstore-on\n $ hg init repo-merge-state\n@@ -123,14 +190,20 @@\n $ hg add C D\n $ hg amend -m NEWMESSAGE -I C\n saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/be169c7e8dbe-7684ddc5-amend.hg (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r . -T \'{node|short} {desc} {files}\\n\'\n- c7ba14d9075b NEWMESSAGE B C\n+ be169c7e8dbe B B\n $ echo 5 > E\n $ rm C\n $ hg amend -d \'2000 1000\' -u \'Foo <foo@example.com>\' -A C D\n saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/c7ba14d9075b-b3e76daa-amend.hg (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r . -T \'{node|short} {desc} {files} {author} {date}\\n\'\n- 14f6c4bcc865 NEWMESSAGE B D Foo <foo@example.com> 2000.01000\n+ be169c7e8dbe B B test 0.00\n \n Amend with editor\n \n@@ -143,21 +216,31 @@\n \n $ HGEDITOR="sh $TESTTMP/prefix.sh" hg amend --edit\n saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/14f6c4bcc865-6591f15d-amend.hg (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r . -T \'{node|short} {desc}\\n\'\n- 298f085230c3 EDITED: NEWMESSAGE\n+ be169c7e8dbe B\n $ HGEDITOR="sh $TESTTMP/prefix.sh" hg amend -e -m MSG\n saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/298f085230c3-d81a6ad3-amend.hg (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r . -T \'{node|short} {desc}\\n\'\n- 974f07f28537 EDITED: MSG\n+ be169c7e8dbe B\n \n $ echo FOO > $TESTTMP/msg\n $ hg amend -l $TESTTMP/msg -m BAR\n- abort: cannot specify both --message and --logfile\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg amend -l $TESTTMP/msg\n saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/974f07f28537-edb6470a-amend.hg (obsstore-off !)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r . -T \'{node|short} {desc}\\n\'\n- 507be9bdac71 FOO\n+ be169c7e8dbe B\n \n Interactive mode\n \n@@ -167,19 +250,24 @@\n > y\n > n\n > EOS\n+ diff --git a/D b/D\n+ new file mode 100644\n+ examine changes to \'D\'?\n+ (enter ? for help) [Ynesfdaq?] y\n+ \n+ @@ -0,0 +1,1 @@\n+ +4\n+ record this change to \'D\'?\n+ (enter ? for help) [Ynesfdaq?] n\n+ \n+ saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/507be9bdac71-c8077452-amend.hg (obsstore-off !)\n diff --git a/F b/F\n new file mode 100644\n examine changes to \'F\'?\n- (enter ? for help) [Ynesfdaq?] y\n- \n- diff --git a/G b/G\n- new file mode 100644\n- examine changes to \'G\'?\n- (enter ? for help) [Ynesfdaq?] n\n- \n- saved backup bundle to $TESTTMP/repo1/.hg/strip-backup/507be9bdac71-c8077452-amend.hg (obsstore-off !)\n+ (enter ? for help) [Ynesfdaq?] abort: response expected\n+ [255]\n $ hg log -r . -T \'{files}\\n\'\n- B D F\n+ B\n \n Amend in the middle of a stack\n \n@@ -254,10 +342,76 @@\n $ hg update -q C\n $ hg amend -m FOO\n saved backup bundle to $TESTTMP/repo3/.hg/strip-backup/a35c07e8a2a4-15ff4612-amend.hg (obsstore-off !)\n+ saved backup bundle to $TESTTMP/repo3/.hg/strip-backup/a35c07e8a2a4-15ff4612-amend.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo3\\.hg\\strip-backup/a35c07e8a2a4-15ff4612-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo3\\.hg\\strip-backup/a35c07e8a2a4-18824ef3-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo3\\.hg\\strip-backup/a35c07e8a2a4-18824ef3-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ rm .hg/localtags\n $ hg log -G -T \'{desc}\\n\'\n @ FOO\n |\\\n+ +---o C\n+ | |/\n | o B\n |\n o A\n@@ -292,6 +446,70 @@\n \n $ hg amend\n saved backup bundle to * (glob) (obsstore-off !)\n+ saved backup bundle to $TESTTMP/wcstates/.hg/strip-backup/c3bf0bdb1cd2-2b3f2de4-amend.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\wcstates\\.hg\\strip-backup/c3bf0bdb1cd2-2b3f2de4-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\wcstates\\.hg\\strip-backup/c3bf0bdb1cd2-b87d05be-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\wcstates\\.hg\\strip-backup/c3bf0bdb1cd2-b87d05be-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n clean/modified/removed/added states of the amended revision\n \n@@ -381,6 +599,70 @@\n \n #else\n $ hg amend\n+ saved backup bundle to $TESTTMP/repo4/.hg/strip-backup/95e899acf2ce-f11cb050-amend.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo4\\.hg\\strip-backup/95e899acf2ce-f11cb050-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo4\\.hg\\strip-backup/95e899acf2ce-dfe00693-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo4\\.hg\\strip-backup/95e899acf2ce-dfe00693-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n When backup-bundle config option is set:\n $ cat << EOF >> $HGRCPATH\n > [rewrite]\n@@ -388,6 +670,9 @@\n > EOF\n $ echo fixed > b\n $ hg amend\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n #endif\n ==========================================\n@@ -416,69 +701,151 @@\n When updatetimestamp is False\n \n $ hg amend --date \'1997-1-1 0:1\'\n- $ hg log --limit 1\n- user: test\n- date: Wed Jan 01 00:01:00 1997 +0000\n- summary: commit 1\n-\n- When update-timestamp is True and no other change than the date\n-\n- $ hg amend --config rewrite.update-timestamp=True\n- nothing changed\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo5\\.hg\\strip-backup/cfffdfb584d3-8962fff7-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo5\\.hg\\strip-backup/cfffdfb584d3-8962fff7-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n [1]\n $ hg log --limit 1\n user: test\n date: Wed Jan 01 00:01:00 1997 +0000\n summary: commit 1\n \n+ When update-timestamp is True and no other change than the date\n+\n+ $ hg amend --config rewrite.update-timestamp=True\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg log --limit 1\n+ user: test\n+ date: Wed Jan 01 00:01:00 1997 +0000\n+ summary: commit 1\n+\n When update-timestamp is True and there is other change than the date\n $ hg amend --user foobar --config rewrite.update-timestamp=True\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --limit 1\n- user: foobar\n- date: Thu Jan 01 00:00:02 1970 +0000\n+ user: test\n+ date: Wed Jan 01 00:01:00 1997 +0000\n summary: commit 1\n \n When date option is applicable and update-timestamp is True\n $ hg amend --date \'1998-1-1 0:1\' --config rewrite.update-timestamp=True\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --limit 1\n- user: foobar\n- date: Thu Jan 01 00:01:00 1998 +0000\n+ user: test\n+ date: Wed Jan 01 00:01:00 1997 +0000\n summary: commit 1\n \n Unlike rewrite.update-timestamp, -D/--currentdate always updates the timestamp\n \n $ hg amend -D\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --limit 1\n- user: foobar\n- date: Thu Jan 01 00:00:04 1970 +0000\n+ user: test\n+ date: Wed Jan 01 00:01:00 1997 +0000\n summary: commit 1\n \n $ hg amend -D --config rewrite.update-timestamp=True\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --limit 1\n- user: foobar\n- date: Thu Jan 01 00:00:05 1970 +0000\n+ user: test\n+ date: Wed Jan 01 00:01:00 1997 +0000\n summary: commit 1\n \n rewrite.update-timestamp can be negated by --no-currentdate\n \n $ hg amend --config rewrite.update-timestamp=True --no-currentdate -u baz\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --limit 1\n- user: baz\n- date: Thu Jan 01 00:00:05 1970 +0000\n+ user: test\n+ date: Wed Jan 01 00:01:00 1997 +0000\n summary: commit 1\n \n Bad combination of date options:\n \n $ hg amend -D --date \'0 0\'\n- abort: cannot specify both --date and --currentdate\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Close branch\n \n $ hg amend --secret --close-branch\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --limit 1 -T \'close={get(extras, "close")}\\nphase={phase}\\n\'\n- close=1\n- phase=secret\n+ close=\n+ phase=draft\n \n $ cd ..\n \n@@ -495,6 +862,68 @@\n a | 2 +-\n 1 files changed, 1 insertions(+), 1 deletions(-)\n $ echo a > a; echo b2 > b; hg amend -q b\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\6157\\.hg\\strip-backup/dbf67b88f892-7d5de567-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\6157\\.hg\\strip-backup/dbf67b88f892-7d5de567-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\amend.py", line 76, in amend\n+ return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg diff --stat -c .\n a | 2 +-\n b | 2 +-\n@@ -516,6 +945,68 @@\n > sleep 1\n > EOF\n $ HGEDITOR="sh $TESTTMP/touchy_editor.sh" hg commit --amend\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\modify-during-amend\\.hg\\strip-backup/dc0126abbc9d-04f5f123-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\modify-during-amend\\.hg\\strip-backup/dc0126abbc9d-04f5f123-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: amend, debugdrawdag, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ if (hg diff -c . | grep \'delta\' >/dev/null) || [ -n "$(hg status)" ]; then\n > echo "OK."\n > else\n', 2766, 2768, 'truncated \\uXXXX escape') decoding diff, sorry
test-annotate.t
--- c:/hgdev/src/tests/test-annotate.t
+++ c:/hgdev/src/tests/test-annotate.t.err
@@ -341,6 +341,7 @@
0 a:1: a
1 a:2* z (no-pure !)
0 a:1* z (pure !)
+ 1 a:2* z
1 a:3: a
3 b:4: b4
4 b:5: c
@@ -633,6 +634,7 @@
$ hg annotate -ncr "wdir()" baz
abort: $TESTTMP
epoaz: $ENOENT$ (windows !)
abort: $ENOENT$: '$TESTTMP/repo/baz' (no-windows !)
+ abort: $TESTTMP
epoaz: $ENOENT$
[255]
annotate removed file
@@ -642,6 +644,7 @@
$ hg annotate -ncr "wdir()" baz
abort: $TESTTMP
epoaz: $ENOENT$ (windows !)
abort: $ENOENT$: '$TESTTMP/repo/baz' (no-windows !)
+ abort: $TESTTMP
epoaz: $ENOENT$
[255]
$ hg revert --all --no-backup --quiet
test-audit-subrepo.t
--- c:/hgdev/src/tests/test-audit-subrepo.t
+++ c:/hgdev/src/tests/test-audit-subrepo.t.err
@@ -723,10 +723,11 @@
#else
$ hg clone -q driveletter driveletter2
+ abort: path contains illegal component: X:
+ [255]
$ ls -A driveletter2
.hg
.hgsub
.hgsubstate
- X:
#endif
test-automv.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-automv.t\n+++ c:/hgdev/src/tests/test-automv.t.err\n@@ -163,6 +163,75 @@\n $ hg commit --amend -m \'amended\'\n detected move of 1 files\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-amend.hg (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/4aea8b92b748-67bcfee4-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/4aea8b92b748-76158f03-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/4aea8b92b748-76158f03-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "automv" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "automv" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: automv, rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\automv.py", line 78, in mvcheck\n+ return orig(ui, repo, *pats, **pycompat.strkwargs(opts))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg status --change . -C\n A b.txt\n a.txt\n@@ -175,91 +244,116 @@\n $ echo \'c\' > c.txt\n $ hg add c.txt\n $ hg commit -m \'revision to amend to\'\n- created new head\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ mv a.txt b.txt\n $ hg rm a.txt\n $ hg add b.txt\n $ printf \'\\n\' >> b.txt\n $ hg status -C\n A b.txt\n- R a.txt\n- $ hg commit --amend -m \'amended\'\n- detected move of 1 files\n- saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-amend.hg (glob)\n- $ hg status --change . -C\n- A b.txt\n- a.txt\n- A c.txt\n- R a.txt\n- $ hg up -r 0\n- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved\n+ A c.txt\n+ R a.txt\n+ $ hg commit --amend -m \'amended\'\n+ detected move of 1 files\n+ abort: cannot amend changeset with children\n+ [10]\n+ $ hg status --change . -C\n+ A a.txt\n+ $ hg up -r 0\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n \n mv/rm/add/modif\n $ echo \'c\' > c.txt\n $ hg add c.txt\n- $ hg commit -m \'revision to amend to\'\n- created new head\n- $ mv a.txt b.txt\n- $ hg rm a.txt\n- $ hg add b.txt\n+ c.txt already tracked!\n+ $ hg commit -m \'revision to amend to\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ mv a.txt b.txt\n+ mv: cannot stat `a.txt\': $ENOENT$\n+ [1]\n+ $ hg rm a.txt\n+ $ hg add b.txt\n+ b.txt already tracked!\n $ printf \'\\nfoo\\n\' >> b.txt\n $ hg status -C\n A b.txt\n- R a.txt\n- $ hg commit --amend -m \'amended\'\n- saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-amend.hg (glob)\n- $ hg status --change . -C\n- A b.txt\n- A c.txt\n- R a.txt\n- $ hg up -r 0\n- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved\n+ a.txt\n+ A c.txt\n+ R a.txt\n+ $ hg commit --amend -m \'amended\'\n+ abort: cannot amend changeset with children\n+ [10]\n+ $ hg status --change . -C\n+ A a.txt\n+ $ hg up -r 0\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n \n mv/rm/add/modif/changethreshold\n $ echo \'c\' > c.txt\n $ hg add c.txt\n- $ hg commit -m \'revision to amend to\'\n- created new head\n- $ mv a.txt b.txt\n- $ hg rm a.txt\n- $ hg add b.txt\n+ c.txt already tracked!\n+ $ hg commit -m \'revision to amend to\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ mv a.txt b.txt\n+ mv: cannot stat `a.txt\': $ENOENT$\n+ [1]\n+ $ hg rm a.txt\n+ $ hg add b.txt\n+ b.txt already tracked!\n $ printf \'\\nfoo\\n\' >> b.txt\n $ hg status -C\n A b.txt\n+ a.txt\n+ A c.txt\n R a.txt\n $ hg commit --amend --config automv.similarity=\'60\' -m \'amended\'\n- detected move of 1 files\n- saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-amend.hg (glob)\n- $ hg status --change . -C\n- A b.txt\n- a.txt\n- A c.txt\n- R a.txt\n- $ hg up -r 0\n- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved\n+ abort: cannot amend changeset with children\n+ [10]\n+ $ hg status --change . -C\n+ A a.txt\n+ $ hg up -r 0\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n \n mv\n $ echo \'c\' > c.txt\n $ hg add c.txt\n- $ hg commit -m \'revision to amend to\'\n- created new head\n- $ mv a.txt b.txt\n- $ hg status -C\n- ! a.txt\n- ? b.txt\n- $ hg commit --amend -m \'amended\'\n- saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-amend.hg (glob)\n- $ hg status -C\n- ! a.txt\n- ? b.txt\n+ c.txt already tracked!\n+ $ hg commit -m \'revision to amend to\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ mv a.txt b.txt\n+ mv: cannot stat `a.txt\': $ENOENT$\n+ [1]\n+ $ hg status -C\n+ A b.txt\n+ a.txt\n+ A c.txt\n+ R a.txt\n+ $ hg commit --amend -m \'amended\'\n+ abort: cannot amend changeset with children\n+ [10]\n+ $ hg status -C\n+ A b.txt\n+ a.txt\n+ A c.txt\n+ R a.txt\n $ hg up -Cr 0\n- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved\n+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n \n mv/rm/add/notincommitfiles\n $ echo \'c\' > c.txt\n $ hg add c.txt\n $ hg commit -m \'revision to amend to\'\n- created new head\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ mv a.txt b.txt\n $ hg rm a.txt\n $ hg add b.txt\n@@ -267,65 +361,85 @@\n $ hg add d.txt\n $ hg status -C\n A b.txt\n+ A c.txt\n A d.txt\n R a.txt\n $ hg commit --amend -m \'amended\' d.txt\n- saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-amend.hg (glob)\n- $ hg status --change . -C\n+ abort: cannot amend changeset with children\n+ [10]\n+ $ hg status --change . -C\n+ A a.txt\n+ $ hg status -C\n+ A b.txt\n A c.txt\n A d.txt\n- $ hg status -C\n- A b.txt\n- R a.txt\n- $ hg commit --amend -m \'amended\'\n- detected move of 1 files\n- saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-amend.hg (glob)\n- $ hg status --change . -C\n+ R a.txt\n+ $ hg commit --amend -m \'amended\'\n+ detected move of 1 files\n+ abort: cannot amend changeset with children\n+ [10]\n+ $ hg status --change . -C\n+ A a.txt\n+ $ hg up -r 0\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+\n+mv/rm/add/--no-automv\n+ $ echo \'c\' > c.txt\n+ $ hg add c.txt\n+ c.txt already tracked!\n+ $ hg commit -m \'revision to amend to\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ mv a.txt b.txt\n+ mv: cannot stat `a.txt\': $ENOENT$\n+ [1]\n+ $ hg rm a.txt\n+ $ hg add b.txt\n+ b.txt already tracked!\n+ $ hg status -C\n A b.txt\n a.txt\n A c.txt\n A d.txt\n R a.txt\n- $ hg up -r 0\n- 1 files updated, 0 files merged, 3 files removed, 0 files unresolved\n-\n-mv/rm/add/--no-automv\n- $ echo \'c\' > c.txt\n- $ hg add c.txt\n- $ hg commit -m \'revision to amend to\'\n- created new head\n- $ mv a.txt b.txt\n- $ hg rm a.txt\n- $ hg add b.txt\n- $ hg status -C\n- A b.txt\n- R a.txt\n $ hg commit --amend -m \'amended\' --no-automv\n- saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-amend.hg (glob)\n- $ hg status --change . -C\n- A b.txt\n- A c.txt\n- R a.txt\n- $ hg up -r 0\n- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved\n+ abort: cannot amend changeset with children\n+ [10]\n+ $ hg status --change . -C\n+ A a.txt\n+ $ hg up -r 0\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n \n mv/rm/commit/add/amend\n $ echo \'c\' > c.txt\n $ hg add c.txt\n- $ hg commit -m \'revision to amend to\'\n- created new head\n- $ mv a.txt b.txt\n- $ hg rm a.txt\n- $ hg status -C\n- R a.txt\n- ? b.txt\n+ c.txt already tracked!\n+ $ hg commit -m \'revision to amend to\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ mv a.txt b.txt\n+ mv: cannot stat `a.txt\': $ENOENT$\n+ [1]\n+ $ hg rm a.txt\n+ $ hg status -C\n+ A b.txt\n+ a.txt\n+ A c.txt\n+ A d.txt\n+ R a.txt\n $ hg commit -m "removed a"\n- $ hg add b.txt\n- $ hg commit --amend -m \'amended\'\n- saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-amend.hg (glob)\n- $ hg status --change . -C\n- A b.txt\n- R a.txt\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg add b.txt\n+ b.txt already tracked!\n+ $ hg commit --amend -m \'amended\'\n+ abort: cannot amend changeset with children\n+ [10]\n+ $ hg status --change . -C\n+ A a.txt\n \n error conditions\n \n', 2666, 2668, 'truncated \\uXXXX escape') decoding diff, sorry
test-backout.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-backout.t\n+++ c:/hgdev/src/tests/test-backout.t.err\n@@ -308,6 +308,55 @@\n $ hg update -q -C 2\n $ hg --config extensions.strip= strip 3\n saved backup bundle to * (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\merge\\.hg\\strip-backup/26b8ccb9ad91-1c85643d-backup.hg\'\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ cat >> .hg/hgrc <<EOF\n > [hooks]\n@@ -322,18 +371,9 @@\n 2:6ea3f2a197a2\n ====\n reverting a\n- created new head\n- changeset 3:d92a3f57f067 backs out changeset 1:5a50a024c182\n- ==== preupdate:\n- 3:d92a3f57f067\n- ====\n- merging with changeset 3:d92a3f57f067\n- ==== preupdate:\n- 2:6ea3f2a197a2\n- ====\n- merging a\n- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved\n- (branch merge, don\'t forget to commit)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ cat >> .hg/hgrc <<EOF\n > [hooks]\n@@ -345,6 +385,10 @@\n $ hg update -q -C 2\n $ hg --config extensions.strip= strip 3\n saved backup bundle to * (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\merge\\.hg\\strip-backup/26b8ccb9ad91-1c85643d-backup.hg\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ cat >> .hg/hgrc <<EOF\n > [hooks]\n@@ -356,19 +400,9 @@\n 1:5a50a024c182\n ====\n reverting a\n- created new head\n- changeset 3:d92a3f57f067 backs out changeset 1:5a50a024c182\n- ==== update:\n- 2:6ea3f2a197a2\n- ====\n- merging with changeset 3:d92a3f57f067\n- merging a\n- ==== update:\n- 2:6ea3f2a197a2\n- 3:d92a3f57f067\n- ====\n- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved\n- (branch merge, don\'t forget to commit)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ cat >> .hg/hgrc <<EOF\n > [hooks]\n', 2211, 2213, 'truncated \\uXXXX escape') decoding diff, sorry
test-blackbox.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-blackbox.t\n+++ c:/hgdev/src/tests/test-blackbox.t.err\n@@ -190,12 +190,117 @@\n $ hg strip tip\n 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n saved backup bundle to $TESTTMP/blackboxtest2/.hg/strip-backup/*-backup.hg (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\blackboxtest2\\.hg\\strip-backup/73f6ee326b27-7612e004-backup.hg\'\n+ ** Unknown exception encountered with possibly-broken third-party extension "mock" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mock" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: blackbox, mock, mq, myextension, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 4237, in mqcommand\n+ return orig(ui, repo, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg blackbox -l 6\n+ 1970/01/01 00:00:00 bob @73f6ee326b27d820b0472f1a825e3a50f3dc489b (5000)> commit -Amd exited 0 after 0.17 seconds\n 1970/01/01 00:00:00 bob @73f6ee326b27d820b0472f1a825e3a50f3dc489b (5000)> strip tip\n- 1970/01/01 00:00:00 bob @6563da9dcf87b1949716e38ff3e3dfaa3198eb06 (5000)> saved backup bundle to $TESTTMP/blackboxtest2/.hg/strip-backup/73f6ee326b27-7612e004-backup.hg\n- 1970/01/01 00:00:00 bob @6563da9dcf87b1949716e38ff3e3dfaa3198eb06 (5000)> updated branch cache (base) in * seconds (glob)\n- 1970/01/01 00:00:00 bob @6563da9dcf87b1949716e38ff3e3dfaa3198eb06 (5000)> wrote branch cache (base) with 1 labels and 2 nodes\n- 1970/01/01 00:00:00 bob @6563da9dcf87b1949716e38ff3e3dfaa3198eb06 (5000)> strip tip exited 0 after * seconds (glob)\n+ 1970/01/01 00:00:00 bob @6563da9dcf87b1949716e38ff3e3dfaa3198eb06 (5000)> saved backup bundle to $TESTTMP\\blackboxtest2\\.hg\\strip-backup/73f6ee326b27-7612e004-backup.hg\n+ 1970/01/01 00:00:00 bob @6563da9dcf87b1949716e38ff3e3dfaa3198eb06 (5000)> ** Unknown exception encountered with possibly-broken third-party extension "mock" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mock" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: blackbox, mock, mq, myextension, strip\n+ \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 4237, in mqcommand\n+ return orig(ui, repo, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ \n+ 1970/01/01 00:00:00 bob @6563da9dcf87b1949716e38ff3e3dfaa3198eb06 (5000)> strip tip exited 1 after 0.27 seconds\n 1970/01/01 00:00:00 bob @6563da9dcf87b1949716e38ff3e3dfaa3198eb06 (5000)> blackbox -l 6\n \n extension and python hooks - use the eol extension for a pythonhook\n@@ -208,8 +313,8 @@\n The fsmonitor extension is incompatible with the eol extension and has been disabled. (fsmonitor !)\n hooked\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- updated to "d02f48003e62: c"\n- 1 other heads for branch "default"\n+ updated to "73f6ee326b27: d"\n+ 2 other heads for branch "default"\n $ cat >> .hg/hgrc <<EOF\n > [extensions]\n > # disable eol, because it is not needed for subsequent tests\n@@ -218,11 +323,12 @@\n > EOF\n $ hg blackbox -l 5\n 1970/01/01 00:00:00 bob @6563da9dcf87b1949716e38ff3e3dfaa3198eb06 (5000)> update (no-chg !)\n+ 1970/01/01 00:00:00 bob @d02f48003e62c24e2659d97d30f2a83abe5d5d51 (5000)> serve --cmdserver chgunix --address $TESTTMP.chgsock/server.* --daemon-postexec \'chdir:/\' (glob) (chg !)\n+ 1970/01/01 00:00:00 bob @6563da9dcf87b1949716e38ff3e3dfaa3198eb06 (5000)> update\n 1970/01/01 00:00:00 bob @6563da9dcf87b1949716e38ff3e3dfaa3198eb06 (5000)> pythonhook-preupdate: hgext.eol.preupdate finished in * seconds (glob)\n- 1970/01/01 00:00:00 bob @d02f48003e62c24e2659d97d30f2a83abe5d5d51 (5000)> exthook-update: echo hooked finished in * seconds (glob)\n- 1970/01/01 00:00:00 bob @d02f48003e62c24e2659d97d30f2a83abe5d5d51 (5000)> update exited 0 after * seconds (glob)\n- 1970/01/01 00:00:00 bob @d02f48003e62c24e2659d97d30f2a83abe5d5d51 (5000)> serve --cmdserver chgunix --address $TESTTMP.chgsock/server.* --daemon-postexec \'chdir:/\' (glob) (chg !)\n- 1970/01/01 00:00:00 bob @d02f48003e62c24e2659d97d30f2a83abe5d5d51 (5000)> blackbox -l 5\n+ 1970/01/01 00:00:00 bob @73f6ee326b27d820b0472f1a825e3a50f3dc489b (5000)> exthook-update: echo hooked finished in 0.01 seconds\n+ 1970/01/01 00:00:00 bob @73f6ee326b27d820b0472f1a825e3a50f3dc489b (5000)> update exited 0 after 0.14 seconds\n+ 1970/01/01 00:00:00 bob @73f6ee326b27d820b0472f1a825e3a50f3dc489b (5000)> blackbox -l 5\n \n log rotation\n \n@@ -233,7 +339,7 @@\n $ hg status\n $ hg status\n $ hg tip -q\n- 2:d02f48003e62\n+ 3:73f6ee326b27\n $ ls .hg/blackbox.log*\n .hg/blackbox.log\n .hg/blackbox.log.1\n@@ -254,57 +360,59 @@\n running: --debug add foo\n warning: cannot write to blackbox.log: Is a directory (no-windows !)\n warning: cannot write to blackbox.log: $TESTTMP/blackboxtest3/.hg/blackbox.log: Access is denied (windows !)\n- adding foo\n- result: 0\n- running: --debug commit -m commit1 -d 2000-01-01 foo\n+ warning: cannot write to blackbox.log: $TESTTMP\\\\blackboxtest3\\\\.hg\\\\blackbox.log: Access is denied\\r (esc)\n+ adding foo\\r (esc)\n+ result: 0\\r (esc)\n warning: cannot write to blackbox.log: Is a directory (no-windows !)\n warning: cannot write to blackbox.log: $TESTTMP/blackboxtest3/.hg/blackbox.log: Access is denied (windows !)\n- committing files:\n- foo\n- committing manifest\n- committing changelog\n- updating the branch cache\n- committed changeset 0:0e46349438790c460c5c9f7546bfcd39b267bbd2\n- result: 0\n- running: --debug commit -m commit2 -d 2000-01-02 foo\n- committing files:\n- foo\n- committing manifest\n- committing changelog\n- updating the branch cache\n- committed changeset 1:45589e459b2edfbf3dbde7e01f611d2c1e7453d7\n- result: 0\n- running: --debug log -r 0\n- changeset: 0:0e46349438790c460c5c9f7546bfcd39b267bbd2\n- phase: draft\n- parent: -1:0000000000000000000000000000000000000000\n- parent: -1:0000000000000000000000000000000000000000\n- manifest: 0:9091aa5df980aea60860a2e39c95182e68d1ddec\n- user: test\n- date: Sat Jan 01 00:00:00 2000 +0000\n- files+: foo\n- extra: branch=default\n- description:\n- commit1\n- \n- \n- result: 0\n- running: --debug log -r tip\n- changeset: 1:45589e459b2edfbf3dbde7e01f611d2c1e7453d7\n- tag: tip\n- phase: draft\n- parent: 0:0e46349438790c460c5c9f7546bfcd39b267bbd2\n- parent: -1:0000000000000000000000000000000000000000\n- manifest: 1:895aa9b7886f89dd017a6d62524e1f9180b04df9\n- user: test\n- date: Sun Jan 02 00:00:00 2000 +0000\n- files: foo\n- extra: branch=default\n- description:\n- commit2\n- \n- \n- result: 0\n+ running: --debug commit -m commit1 -d 2000-01-01 foo\\r (esc)\n+ warning: cannot write to blackbox.log: $TESTTMP\\\\blackboxtest3\\\\.hg\\\\blackbox.log: Access is denied\\r (esc)\n+ committing files:\\r (esc)\n+ foo\\r (esc)\n+ committing manifest\\r (esc)\n+ committing changelog\\r (esc)\n+ updating the branch cache\\r (esc)\n+ committed changeset 0:0e46349438790c460c5c9f7546bfcd39b267bbd2\\r (esc)\n+ result: 0\\r (esc)\n+ running: --debug commit -m commit2 -d 2000-01-02 foo\\r (esc)\n+ committing files:\\r (esc)\n+ foo\\r (esc)\n+ committing manifest\\r (esc)\n+ committing changelog\\r (esc)\n+ updating the branch cache\\r (esc)\n+ committed changeset 1:45589e459b2edfbf3dbde7e01f611d2c1e7453d7\\r (esc)\n+ result: 0\\r (esc)\n+ running: --debug log -r 0\\r (esc)\n+ changeset: 0:0e46349438790c460c5c9f7546bfcd39b267bbd2\\r (esc)\n+ phase: draft\\r (esc)\n+ parent: -1:0000000000000000000000000000000000000000\\r (esc)\n+ parent: -1:0000000000000000000000000000000000000000\\r (esc)\n+ manifest: 0:9091aa5df980aea60860a2e39c95182e68d1ddec\\r (esc)\n+ user: test\\r (esc)\n+ date: Sat Jan 01 00:00:00 2000 +0000\\r (esc)\n+ files+: foo\\r (esc)\n+ extra: branch=default\\r (esc)\n+ description:\\r (esc)\n+ commit1\\r (esc)\n+ \\r (esc)\n+ \\r (esc)\n+ result: 0\\r (esc)\n+ running: --debug log -r tip\\r (esc)\n+ changeset: 1:45589e459b2edfbf3dbde7e01f611d2c1e7453d7\\r (esc)\n+ tag: tip\\r (esc)\n+ phase: draft\\r (esc)\n+ parent: 0:0e46349438790c460c5c9f7546bfcd39b267bbd2\\r (esc)\n+ parent: -1:0000000000000000000000000000000000000000\\r (esc)\n+ manifest: 1:895aa9b7886f89dd017a6d62524e1f9180b04df9\\r (esc)\n+ user: test\\r (esc)\n+ date: Sun Jan 02 00:00:00 2000 +0000\\r (esc)\n+ files: foo\\r (esc)\n+ extra: branch=default\\r (esc)\n+ description:\\r (esc)\n+ commit2\\r (esc)\n+ \\r (esc)\n+ \\r (esc)\n+ result: 0\\r (esc)\n $ hg blackbox\n 1970/01/01 00:00:00 bob @45589e459b2edfbf3dbde7e01f611d2c1e7453d7 (5000)> updating the branch cache\n 1970/01/01 00:00:00 bob @45589e459b2edfbf3dbde7e01f611d2c1e7453d7 (5000)> updated branch cache (served) in * seconds (glob)\n@@ -356,6 +464,7 @@\n removing $TESTTMP/gone/.hg\n warning: cannot write to blackbox.log: $ENOENT$ (no-windows !)\n warning: cannot write to blackbox.log: $TESTTMP/gone/.hg/blackbox.log: $ENOTDIR$ (windows !)\n+ warning: cannot write to blackbox.log: $TESTTMP\\gone\\.hg\\blackbox.log: $ENOTDIR$\n $ cd ..\n \n blackbox should disable itself if track is empty\n', 2496, 2498, 'truncated \\uXXXX escape') decoding diff, sorry
test-bookflow.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-bookflow.t\n+++ c:/hgdev/src/tests/test-bookflow.t.err\n@@ -33,18 +33,68 @@\n $ hg bookmarks\n * X 0:* (glob)\n $ hg bookmark X\n- abort: bookmark X already exists, to move use the --rev option\n- [255]\n- $ make_changes\n+ ** Unknown exception encountered with possibly-broken third-party extension "bookflow" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "bookflow" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: bookflow\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 1278, in bookmark\n+ bookmarks.deactivate(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+ $ make_changes\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg push ../a -q\n-\n- $ hg bookmarks\n- \\* X 1:* (glob)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+\n+ $ hg bookmarks\n+ * X 0:4e3505fd9583\n \n change a\n $ cd ../a\n $ hg up\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ echo \'test\' >> test; hg commit -Am\'test\'\n \n \n@@ -53,45 +103,49 @@\n $ hg pull -u\n pulling from $TESTTMP/a\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 1 changes to 1 files\n- new changesets * (glob)\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- (leaving bookmark X)\n- $ hg status\n- $ hg bookmarks\n- X 1:* (glob)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status\n+ M test\n+ $ hg bookmarks\n+ * X 0:4e3505fd9583\n \n check protection of @ bookmark\n $ hg bookmark @\n- $ hg bookmarks\n- \\* @ 2:* (glob)\n- X 1:* (glob)\n- $ make_changes\n- abort: cannot commit, bookmark @ is protected\n- [255]\n-\n- $ hg status\n- M test\n- $ hg bookmarks\n- \\* @ 2:* (glob)\n- X 1:* (glob)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg bookmarks\n+ * X 0:4e3505fd9583\n+ $ make_changes\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+\n+ $ hg status\n+ M test\n+ $ hg bookmarks\n+ * X 0:4e3505fd9583\n \n $ hg --config bookflow.protect= commit -Am"Updated test"\n-\n- $ hg bookmarks\n- \\* @ 3:* (glob)\n- X 1:* (glob)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+\n+ $ hg bookmarks\n+ * X 0:4e3505fd9583\n \n check requirement for an active bookmark\n $ hg bookmark -i\n- $ hg bookmarks\n- @ 3:* (glob)\n- X 1:* (glob)\n- $ make_changes\n- abort: cannot commit without an active bookmark\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg bookmarks\n+ * X 0:4e3505fd9583\n+ $ make_changes\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n $ hg revert test\n $ rm test.orig\n@@ -103,102 +157,115 @@\n $ cd ../a\n $ hg bookmark X\n $ hg bookmarks\n- \\* X 2:* (glob)\n- $ make_changes\n- $ hg bookmarks\n- * X 3:81af7977fdb9\n+ * X 1:eeb87222e65d\n+ $ make_changes\n+ $ hg bookmarks\n+ * X 2:dab9afca328b\n \n # go back to b, and check out X\n $ cd ../b\n $ hg up X\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- (activating bookmark X)\n- $ hg bookmarks\n- @ 3:* (glob)\n- \\* X 1:* (glob)\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ $ hg bookmarks\n+ * X 0:4e3505fd9583\n \n # pull, this should move the bookmark forward, because it was changed remotely\n $ hg pull -u | grep "updating to active bookmark X"\n- updating to active bookmark X\n-\n- $ hg bookmarks\n- @ 3:* (glob)\n- * X 4:81af7977fdb9\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [1]\n+\n+ $ hg bookmarks\n+ * X 0:4e3505fd9583\n \n the bookmark should not move if it diverged from remote\n $ hg -R ../a status\n $ hg -R ../b status\n $ make_changes ../a\n $ make_changes ../b\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg -R ../a status\n $ hg -R ../b status\n+ M test\n $ hg -R ../a bookmarks\n- * X 4:238292f60a57\n+ * X 3:041a5155619d\n $ hg -R ../b bookmarks\n- @ 3:* (glob)\n- * X 5:096f7e86892d\n+ * X 0:4e3505fd9583\n $ cd ../b\n $ # make sure we cannot push after bookmarks diverged\n $ hg push -B X | grep abort\n- abort: push creates new remote head * with bookmark \'X\' (glob)\n- (pull and merge or see \'hg help push\' for details about pushing new heads)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [1]\n $ hg pull -u | grep divergent\n- divergent bookmark X stored as X@default\n- 1 other divergent bookmarks for "X"\n- $ hg bookmarks\n- @ 3:* (glob)\n- * X 5:096f7e86892d\n- X@default 6:238292f60a57\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [1]\n+ $ hg bookmarks\n+ * X 0:4e3505fd9583\n $ hg id -in\n- 096f7e86892d 5\n- $ make_changes\n- $ hg status\n- $ hg bookmarks\n- @ 3:* (glob)\n- * X 7:227f941aeb07\n- X@default 6:238292f60a57\n+ 4e3505fd9583+ 0+\n+ $ make_changes\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg status\n+ M test\n+ $ hg bookmarks\n+ * X 0:4e3505fd9583\n \n now merge with the remote bookmark\n $ hg merge X@default --tool :local -q\n+ abort: unknown revision \'X@default\'\n+ [255]\n $ hg status\n M test\n $ hg commit -m"Merged with X@default"\n- $ hg bookmarks\n- @ 3:* (glob)\n- * X 8:26fed9bb3219\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg bookmarks\n+ * X 0:4e3505fd9583\n $ hg push -B X | grep bookmark\n pushing to $TESTTMP/a (?)\n- updating bookmark X\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [1]\n $ cd ../a\n $ hg up -q\n $ hg bookmarks\n- * X 7:26fed9bb3219\n+ * X 0:4e3505fd9583\n \n test hg pull when there is more than one descendant\n $ cd ../a\n $ hg bookmark Z\n $ hg bookmark Y\n $ make_changes . YY\n+ created new head\n $ hg up Z -q\n $ make_changes . ZZ\n created new head\n $ hg bookmarks\n- X 7:26fed9bb3219\n- Y 8:131e663dbd2a\n- * Z 9:b74a4149df25\n+ X 0:4e3505fd9583\n+ Y 4:96fcd182bd02\n+ * Z 5:2133d6e798ea\n $ hg log -r \'p1(Y)\' -r \'p1(Z)\' -T \'{rev}\\n\' # prove that Y and Z share the same parent\n- 7\n+ 0\n $ hg log -r \'Y%Z\' -T \'{rev}\\n\' # revs in Y but not in Z\n- 8\n+ 4\n $ hg log -r \'Z%Y\' -T \'{rev}\\n\' # revs in Z but not in Y\n- 9\n+ 5\n $ cd ../b\n $ hg pull -uq\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg id\n- b74a4149df25 tip Z\n+ 4e3505fd9583+ tip X\n $ hg bookmarks | grep \\* # no active bookmark\n- [1]\n+ * X 0:4e3505fd9583\n \n \n test shelving\n@@ -208,23 +275,28 @@\n $ hg commit -m"Change in a"\n $ cd ../b\n $ hg up Z | grep Z\n- (activating bookmark Z)\n+ abort: unknown revision \'Z\'\n+ [1]\n $ hg book | grep \\* # make sure active bookmark\n- \\* Z 10:* (glob)\n+ * X 0:4e3505fd9583\n $ echo "test b" >> test\n $ hg diff --stat\n- test | 1 +\n- 1 files changed, 1 insertions(+), 0 deletions(-)\n+ test | 3 +++\n+ 1 files changed, 3 insertions(+), 0 deletions(-)\n $ hg shelve\n- shelved as Z\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg pull -uq\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg unshelve\n- unshelving change \'Z\'\n- rebasing shelved changes\n+ abort: no shelved changes to apply!\n+ [255]\n $ hg diff --stat\n- test | 1 +\n- 1 files changed, 1 insertions(+), 0 deletions(-)\n+ test | 3 +++\n+ 1 files changed, 3 insertions(+), 0 deletions(-)\n \n \n make the bookmark move by updating it on a, and then pulling with a local change\n@@ -235,58 +307,53 @@\n # go back to b, and check out X\n $ cd ../b\n $ hg up -C X |fgrep "activating bookmark X"\n- (activating bookmark X)\n+ [1]\n # update and push from a\n $ make_changes ../a\n created new head\n $ echo "more" >> test\n $ hg pull -u 2>&1 | fgrep -v TESTTMP| fgrep -v "searching for changes" | fgrep -v adding\n pulling from $TESTTMP/a\n- updating bookmark X\n- added 1 changesets with 0 changes to 0 files (+1 heads)\n- new changesets * (glob)\n- updating to active bookmark X\n- merging test\n- warning: conflicts while merging test! (edit, then use \'hg resolve --mark\')\n- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved\n- use \'hg resolve\' to retry unresolved file merges\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n $ hg update -Cq\n $ rm test.orig\n+ rm: cannot lstat `test.orig\': $ENOENT$\n+ [1]\n \n make sure that commits aren\'t possible if working directory is not pointing to active bookmark\n $ hg -R ../a status\n $ hg -R ../b status\n $ hg -R ../a id -i\n- 36a6e592ec06\n+ 2dbb5a29b191\n $ hg -R ../a book | grep X\n- \\* X \\d+:36a6e592ec06 (re)\n+ * X 7:2dbb5a29b191\n $ hg -R ../b id -i\n- 36a6e592ec06\n+ 4e3505fd9583\n $ hg -R ../b book | grep X\n- \\* X \\d+:36a6e592ec06 (re)\n+ * X 0:4e3505fd9583\n $ make_changes ../a\n $ hg -R ../a book | grep X\n- \\* X \\d+:f73a71c992b8 (re)\n+ * X 8:fccc96134769\n $ cd ../b\n $ hg pull 2>&1 | grep -v add | grep -v pulling | grep -v searching | grep -v changeset\n- updating bookmark X\n- (run \'hg update\' to get a working copy)\n- working directory out of sync with active bookmark, run \'hg up X\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n $ hg id -i # we\'re still on the old commit\n- 36a6e592ec06\n+ 4e3505fd9583\n $ hg book | grep X # while the bookmark moved\n- \\* X \\d+:f73a71c992b8 (re)\n- $ make_changes\n- abort: cannot commit, working directory out of sync with active bookmark\n- (run \'hg up X\')\n+ * X 0:4e3505fd9583\n+ $ make_changes\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n $ hg up -Cq -r . # cleanup local changes\n $ hg status\n $ hg id -i # we\'re still on the old commit\n- 36a6e592ec06\n+ 4e3505fd9583\n $ hg up X -q\n $ hg id -i # now we\'re on X\n- f73a71c992b8\n+ 4e3505fd9583\n $ hg book | grep X\n- \\* X \\d+:f73a71c992b8 (re)\n-\n+ * X 0:4e3505fd9583\n+\n', 2353, 2355, 'truncated \\uXXXX escape') decoding diff, sorry
test-bookmarks-rebase.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-bookmarks-rebase.t\n+++ c:/hgdev/src/tests/test-bookmarks-rebase.t.err\n@@ -39,12 +39,84 @@\n $ hg rebase -s two -d one\n rebasing 3:2ae46b1d99a7 two tip "3"\n saved backup bundle to $TESTTMP/.hg/strip-backup/2ae46b1d99a7-e6b057bc-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\.hg\\strip-backup/2ae46b1d99a7-e6b057bc-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\.hg\\strip-backup/2ae46b1d99a7-f7f05615-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\.hg\\strip-backup/2ae46b1d99a7-f7f05615-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg log\n- changeset: 3:42e5ed2cdcf4\n+ changeset: 4:42e5ed2cdcf4\n bookmark: two\n tag: tip\n parent: 1:925d80f479bb\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: 3\n+ \n+ changeset: 3:2ae46b1d99a7\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n summary: 3\n@@ -69,37 +141,45 @@\n aborted rebase should restore active bookmark.\n \n $ hg up 1\n- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n- (leaving bookmark two)\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ echo \'e\' > d\n $ hg ci -A -m "4"\n- adding d\n- created new head\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ hg bookmark three\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg rebase -s three -d two\n- rebasing 4:dd7c838e8362 three tip "4"\n- merging d\n- warning: conflicts while merging d! (edit, then use \'hg resolve --mark\')\n- unresolved conflicts (see \'hg resolve\', then \'hg rebase --continue\')\n- [240]\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ hg rebase --abort\n+ saved backup bundle to $TESTTMP/.hg/strip-backup/42e5ed2cdcf4-f7f05615-backup.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\.hg\\strip-backup/42e5ed2cdcf4-f7f05615-backup.hg\'\n rebase aborted\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark\n one 1:925d80f479bb\n- * three 4:dd7c838e8362\n- two 3:42e5ed2cdcf4\n+ two 4:42e5ed2cdcf4\n \n after aborted rebase, restoring a bookmark that has been removed should not fail\n \n $ hg rebase -s three -d two\n- rebasing 4:dd7c838e8362 three tip "4"\n- merging d\n- warning: conflicts while merging d! (edit, then use \'hg resolve --mark\')\n- unresolved conflicts (see \'hg resolve\', then \'hg rebase --continue\')\n- [240]\n+ abort: unknown revision \'three\'\n+ [255]\n $ hg bookmark -d three\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg rebase --abort\n- rebase aborted\n+ abort: no rebase in progress\n+ [20]\n $ hg bookmark\n one 1:925d80f479bb\n- two 3:42e5ed2cdcf4\n+ two 4:42e5ed2cdcf4\n', 2506, 2508, 'truncated \\uXXXX escape') decoding diff, sorry
test-bookmarks-strip.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-bookmarks-strip.t\n+++ c:/hgdev/src/tests/test-bookmarks-strip.t.err\n@@ -57,9 +57,66 @@\n \n $ hg strip 1\n saved backup bundle to $TESTTMP/.hg/strip-backup/*-backup.hg (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\.hg\\strip-backup/25e1ee7a0081-8dd19322-backup.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\.hg\\strip-backup/25e1ee7a0081-1621ad80-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\.hg\\strip-backup/25e1ee7a0081-1621ad80-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: mq, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 4237, in mqcommand\n+ return orig(ui, repo, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n list bookmarks\n \n $ hg book\n- test 0:5c9ad3787638\n- test2 0:5c9ad3787638\n+ test 1:25e1ee7a0081\n+ test2 1:25e1ee7a0081\n', 2443, 2445, 'truncated \\uXXXX escape') decoding diff, sorry
test-bookmarks.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-bookmarks.t\n+++ c:/hgdev/src/tests/test-bookmarks.t.err\n@@ -244,93 +244,188 @@\n rename nonexistent bookmark\n \n $ hg bookmark -m A B\n- abort: bookmark \'A\' does not exist\n- [10]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 1278, in bookmark\n+ bookmarks.deactivate(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n rename to existent bookmark\n \n $ hg bookmark -m X Y\n- abort: bookmark \'Y\' already exists (use -f to force)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n force rename to existent bookmark\n \n $ hg bookmark -f -m X Y\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n rename bookmark using .\n \n $ hg book rename-me\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book -m . renamed --config "$TESTHOOK"\n- test-hook-bookmark: rename-me: db815d6d32e69058eadefc8cffbad37675707975 -> \n- test-hook-bookmark: renamed: -> db815d6d32e69058eadefc8cffbad37675707975\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- Z 0:f7b1eb17ad24\n- * renamed 2:db815d6d32e6\n+ * X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n $ hg up -q Y\n $ hg book -d renamed --config "$TESTHOOK"\n- test-hook-bookmark: renamed: db815d6d32e69058eadefc8cffbad37675707975 -> \n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n rename bookmark using . with no active bookmark\n \n $ hg book rename-me\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book -i rename-me\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book -m . renamed\n- abort: no active bookmark\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n $ hg up -q Y\n $ hg book -d rename-me\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n delete bookmark using .\n \n $ hg book delete-me\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book -d .\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n Z 0:f7b1eb17ad24\n $ hg up -q Y\n \n delete bookmark using . with no active bookmark\n \n $ hg book delete-me\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book -i delete-me\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book -d .\n- abort: no active bookmark\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n $ hg up -q Y\n $ hg book -d delete-me\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n list bookmarks\n \n $ hg bookmark\n- X2 1:925d80f479bb\n- * Y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n Z 0:f7b1eb17ad24\n \n bookmarks from a revset\n $ hg bookmark -r \'.^1\' REVSET\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark -r \':tip\' TIP\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg up -q TIP\n- $ hg bookmarks\n- REVSET 0:f7b1eb17ad24\n- * TIP 2:db815d6d32e6\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n+ abort: unknown revision \'TIP\'\n+ [255]\n+ $ hg bookmarks\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n Z 0:f7b1eb17ad24\n \n $ hg bookmark -d REVSET\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark -d TIP\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n rename without new name or multiple names\n \n $ hg bookmark -m Y\n- abort: new bookmark name required\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark -m Y Y2 Y3\n- abort: only one new bookmark name allowed\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n delete without name\n \n@@ -341,8 +436,9 @@\n delete nonexistent bookmark\n \n $ hg bookmark -d A\n- abort: bookmark \'A\' does not exist\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n delete with --inactive\n \n@@ -353,96 +449,104 @@\n bookmark name with spaces should be stripped\n \n $ hg bookmark \' x y \'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n list bookmarks\n \n $ hg bookmarks\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- Z 0:f7b1eb17ad24\n- * x y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n $ hg log -T \'{bookmarks % "{rev} {bookmark}\\n"}\'\n- 2 Y\n- 2 x y\n+ 2 X\n 1 X2\n 0 Z\n \n look up stripped bookmark name\n \n $ hg log -r \'"x y"\'\n- changeset: 2:db815d6d32e6\n- bookmark: Y\n- bookmark: x y\n- tag: tip\n- parent: 0:f7b1eb17ad24\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n+ abort: unknown revision \'x y\'\n+ [255]\n \n reject bookmark name with newline\n \n $ hg bookmark \'\n > \'\n- abort: bookmark names cannot consist entirely of whitespace\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg bookmark -m Z \'\n > \'\n- abort: bookmark names cannot consist entirely of whitespace\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n bookmark with reserved name\n \n $ hg bookmark tip\n- abort: the name \'tip\' is reserved\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg bookmark .\n- abort: the name \'.\' is reserved\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg bookmark null\n- abort: the name \'null\' is reserved\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n \n bookmark with existing name\n \n $ hg bookmark X2\n- abort: bookmark \'X2\' already exists (use -f to force)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n $ hg bookmark -m Y Z\n- abort: bookmark \'Z\' already exists (use -f to force)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n bookmark with name of branch\n \n $ hg bookmark default\n- abort: a bookmark cannot have the name of an existing branch\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n $ hg bookmark -m Y default\n- abort: a bookmark cannot have the name of an existing branch\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n bookmark with integer name\n \n $ hg bookmark 10\n- abort: cannot use an integer as a name\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n bookmark with a name that matches a node id\n $ hg bookmark 925d80f479bb db815d6d32e6 --config "$TESTHOOK"\n- bookmark 925d80f479bb matches a changeset hash\n- (did you leave a -r out of an \'hg bookmark\' command?)\n- bookmark db815d6d32e6 matches a changeset hash\n- (did you leave a -r out of an \'hg bookmark\' command?)\n- test-hook-bookmark: 925d80f479bb: -> db815d6d32e69058eadefc8cffbad37675707975\n- test-hook-bookmark: db815d6d32e6: -> db815d6d32e69058eadefc8cffbad37675707975\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark -d 925d80f479bb\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark -d db815d6d32e6\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ cd ..\n \n@@ -489,34 +593,40 @@\n force bookmark with existing name\n \n $ hg bookmark -f X2 --config "$TESTHOOK"\n- test-hook-bookmark: X2: 925d80f479bb026b0fb3deb27503780b13f74123 -> db815d6d32e69058eadefc8cffbad37675707975\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n force bookmark back to where it was, should deactivate it\n \n $ hg bookmark -fr1 X2\n- $ hg bookmarks\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- Z 0:f7b1eb17ad24\n- x y 2:db815d6d32e6\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg bookmarks\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n \n forward bookmark to descendant without --force\n \n $ hg bookmark Z\n- moving bookmark \'Z\' forward from f7b1eb17ad24\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n list bookmarks\n \n $ hg bookmark\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- * Z 2:db815d6d32e6\n- x y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n $ hg log -T \'{bookmarks % "{rev} {bookmark}\\n"}\'\n- 2 Y\n- 2 Z\n- 2 x y\n+ 2 X\n 1 X2\n+ 0 Z\n \n revision but no bookmark name\n \n@@ -527,129 +637,167 @@\n bookmark name with whitespace only\n \n $ hg bookmark \' \'\n- abort: bookmark names cannot consist entirely of whitespace\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg bookmark -m Y \' \'\n- abort: bookmark names cannot consist entirely of whitespace\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n invalid bookmark\n \n $ hg bookmark \'foo:bar\'\n- abort: \':\' cannot be used in a name\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg bookmark \'foo\n > bar\'\n- abort: \'\\n\' cannot be used in a name\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n the bookmark extension should be ignored now that it is part of core\n \n $ echo "[extensions]" >> $HGRCPATH\n $ echo "bookmarks=" >> $HGRCPATH\n $ hg bookmarks\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- * Z 2:db815d6d32e6\n- x y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n \n test summary\n \n $ hg summary\n- parent: 2:db815d6d32e6 tip\n- 2\n+ parent: -1:000000000000 (no revision checked out)\n branch: default\n- bookmarks: *Z Y x y\n+ bookmarks: *Y\n commit: (clean)\n- update: 1 new changesets, 2 branch heads (merge)\n+ update: 3 new changesets (update)\n phases: 3 draft\n \n test id\n \n $ hg id\n- db815d6d32e6 tip Y/Z/x y\n+ 000000000000 Y\n \n test rollback\n \n $ echo foo > f1\n $ hg bookmark tmp-rollback\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg ci -Amr\n adding f1\n- $ hg bookmarks\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- Z 2:db815d6d32e6\n- * tmp-rollback 3:2bf5cfec5864\n- x y 2:db815d6d32e6\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg bookmarks\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n $ hg rollback\n- repository tip rolled back to revision 2 (undo commit)\n- working directory now based on revision 2\n- $ hg bookmarks\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- Z 2:db815d6d32e6\n- * tmp-rollback 2:db815d6d32e6\n- x y 2:db815d6d32e6\n+ abort: rollback of last commit while not checked out may lose data\n+ (use -f to force)\n+ [255]\n+ $ hg bookmarks\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n $ hg bookmark -f Z -r 1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg rollback\n- repository tip rolled back to revision 2 (undo bookmark)\n- $ hg bookmarks\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- Z 2:db815d6d32e6\n- * tmp-rollback 2:db815d6d32e6\n- x y 2:db815d6d32e6\n+ abort: rollback of last commit while not checked out may lose data\n+ (use -f to force)\n+ [255]\n+ $ hg bookmarks\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n $ hg bookmark -d tmp-rollback\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n activate bookmark on working dir parent without --force\n \n $ hg bookmark --inactive Z\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark Z\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n deactivate current \'Z\', but also add \'Y\'\n \n $ hg bookmark -d Y\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark --inactive Z Y\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark -l\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- Z 2:db815d6d32e6\n- x y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n $ hg bookmark Z\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n bookmark wdir to activate it (issue6218)\n \n $ hg bookmark -d Z\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark -r \'wdir()\' Z\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark -l\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- * Z 2:db815d6d32e6\n- x y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n \n test clone\n \n $ hg bookmark -r 2 -i @\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark -r 2 -i a@\n- $ hg bookmarks\n- @ 2:db815d6d32e6\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- * Z 2:db815d6d32e6\n- a@ 2:db815d6d32e6\n- x y 2:db815d6d32e6\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg bookmarks\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n $ hg clone . cloned-bookmarks\n- updating to bookmark @\n+ updating to branch default\n 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg -R cloned-bookmarks bookmarks\n- * @ 2:db815d6d32e6\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- Z 2:db815d6d32e6\n- a@ 2:db815d6d32e6\n- x y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n \n test clone with pull protocol\n \n@@ -660,35 +808,41 @@\n adding file changes\n added 3 changesets with 3 changes to 3 files (+1 heads)\n new changesets f7b1eb17ad24:db815d6d32e6\n- updating to bookmark @\n+ updating to branch default\n 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg -R cloned-bookmarks-pull bookmarks\n- * @ 2:db815d6d32e6\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- Z 2:db815d6d32e6\n- a@ 2:db815d6d32e6\n- x y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n \n delete multiple bookmarks at once\n \n $ hg bookmark -d @ a@\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n test clone with a bookmark named "default" (issue3677)\n \n $ hg bookmark -r 1 -f -i default\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg clone . cloned-bookmark-default\n updating to branch default\n 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg -R cloned-bookmark-default bookmarks\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- Z 2:db815d6d32e6\n- default 1:925d80f479bb\n- x y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n $ hg -R cloned-bookmark-default parents -q\n 2:db815d6d32e6\n $ hg bookmark -d default\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n test clone with a specific revision\n \n@@ -702,17 +856,19 @@\n 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg -R cloned-bookmarks-rev bookmarks\n X2 1:925d80f479bb\n+ Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n \n test clone with update to a bookmark\n \n $ hg clone -u Z . ../cloned-bookmarks-update\n updating to branch default\n- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg -R ../cloned-bookmarks-update bookmarks\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- * Z 2:db815d6d32e6\n- x y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ Y -1:000000000000\n+ * Z 0:f7b1eb17ad24\n \n create bundle with two heads\n \n@@ -734,12 +890,9 @@\n searching for changes\n 2 changesets found\n $ hg unbundle tobundle.hg\n- adding changesets\n- adding manifests\n- adding file changes\n- added 2 changesets with 2 changes to 2 files (+1 heads)\n- new changesets 125c9a1d6df6:9ba5f110a0b3 (2 drafts)\n- (run \'hg heads\' to see heads, \'hg merge\' to merge)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n update to active bookmark if it\'s not the parent\n \n@@ -748,46 +901,43 @@\n working directory of current repository)\n \n $ hg summary\n- parent: 2:db815d6d32e6 \n- 2\n+ parent: -1:000000000000 (no revision checked out)\n branch: default\n- bookmarks: *Z Y x y\n+ bookmarks: *Y\n+ commit: 2 unknown (clean)\n commit: 1 added, 1 unknown (new branch head) (no-fsmonitor !)\n commit: 1 added, * unknown (new branch head) (glob) (fsmonitor !)\n- update: 2 new changesets (update)\n- phases: 5 draft\n+ update: 3 new changesets (update)\n+ phases: 3 draft\n $ hg update\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- updating bookmark Z\n- $ hg bookmarks\n- X2 1:925d80f479bb\n- Y 2:db815d6d32e6\n- * Z 3:125c9a1d6df6\n- x y 2:db815d6d32e6\n+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg bookmarks\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n \n pull --update works the same as pull && update\n \n $ hg bookmark -r3 Y\n- moving bookmark \'Y\' forward from db815d6d32e6\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ cp -R ../cloned-bookmarks-update ../cloned-bookmarks-manual-update\n $ cp -R ../cloned-bookmarks-update ../cloned-bookmarks-manual-update-with-divergence\n \n (manual version)\n \n $ hg -R ../cloned-bookmarks-manual-update update Y\n- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n (activating bookmark Y)\n $ hg -R ../cloned-bookmarks-manual-update pull .\n pulling from .\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- updating bookmark Y\n- updating bookmark Z\n- added 2 changesets with 2 changes to 2 files (+1 heads)\n- new changesets 125c9a1d6df6:9ba5f110a0b3\n- (run \'hg heads\' to see heads, \'hg merge\' to merge)\n+ no changes found\n \n (# tests strange but with --date crashing when bookmark have to move)\n \n@@ -795,70 +945,55 @@\n abort: revision matching date not found\n [10]\n $ hg -R ../cloned-bookmarks-manual-update update\n- updating to active bookmark Y\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ updating bookmark Y\n \n (all in one version)\n \n $ hg -R ../cloned-bookmarks-update update Y\n- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n (activating bookmark Y)\n $ hg -R ../cloned-bookmarks-update pull --update .\n pulling from .\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- updating bookmark Y\n- updating bookmark Z\n- added 2 changesets with 2 changes to 2 files (+1 heads)\n- new changesets 125c9a1d6df6:9ba5f110a0b3\n- updating to active bookmark Y\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ no changes found\n \n We warn about divergent during bare update to the active bookmark\n \n $ hg -R ../cloned-bookmarks-manual-update-with-divergence update Y\n- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n (activating bookmark Y)\n $ hg -R ../cloned-bookmarks-manual-update-with-divergence bookmarks -r X2 Y@1\n $ hg -R ../cloned-bookmarks-manual-update-with-divergence bookmarks\n- X2 1:925d80f479bb\n- * Y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n Y@1 1:925d80f479bb\n- Z 2:db815d6d32e6\n- x y 2:db815d6d32e6\n+ Z 0:f7b1eb17ad24\n $ hg -R ../cloned-bookmarks-manual-update-with-divergence pull\n pulling from $TESTTMP/repo\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n+ no changes found\n+ $ hg -R ../cloned-bookmarks-manual-update-with-divergence update\n+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n updating bookmark Y\n- updating bookmark Z\n- added 2 changesets with 2 changes to 2 files (+1 heads)\n- new changesets 125c9a1d6df6:9ba5f110a0b3\n- (run \'hg heads\' to see heads, \'hg merge\' to merge)\n- $ hg -R ../cloned-bookmarks-manual-update-with-divergence update\n- updating to active bookmark Y\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n 1 other divergent bookmarks for "Y"\n \n test wrongly formated bookmark\n \n $ echo \'\' >> .hg/bookmarks\n $ hg bookmarks\n- X2 1:925d80f479bb\n- Y 3:125c9a1d6df6\n- * Z 3:125c9a1d6df6\n- x y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n $ echo "Ican\'thasformatedlines" >> .hg/bookmarks\n $ hg bookmarks\n malformed line in .hg/bookmarks: "Ican\'thasformatedlines"\n- X2 1:925d80f479bb\n- Y 3:125c9a1d6df6\n- * Z 3:125c9a1d6df6\n- x y 2:db815d6d32e6\n+ X 2:db815d6d32e6\n+ X2 1:925d80f479bb\n+ * Y -1:000000000000\n+ Z 0:f7b1eb17ad24\n \n test missing revisions\n \n@@ -869,20 +1004,8 @@\n test stripping a non-checked-out but bookmarked revision\n \n $ hg log --graph\n- o changeset: 4:9ba5f110a0b3\n- | branch: test\n+ @ changeset: 2:db815d6d32e6\n | tag: tip\n- | parent: 2:db815d6d32e6\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: y\n- |\n- | @ changeset: 3:125c9a1d6df6\n- |/ user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: x\n- |\n- o changeset: 2:db815d6d32e6\n | parent: 0:f7b1eb17ad24\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n@@ -899,25 +1022,24 @@\n summary: 0\n \n $ hg book should-end-on-two\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg co --clean 4\n- 1 files updated, 0 files merged, 1 files removed, 0 files unresolved\n- (leaving bookmark should-end-on-two)\n+ abort: unknown revision \'4\'\n+ [255]\n $ hg book four\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg --config extensions.mq= strip 3\n- saved backup bundle to * (glob)\n+ abort: unknown revision \'3\'\n+ [255]\n should-end-on-two should end up pointing to revision 2, as that\'s the\n tipmost surviving ancestor of the stripped revision.\n $ hg log --graph\n- @ changeset: 3:9ba5f110a0b3\n- | branch: test\n- | bookmark: four\n+ @ changeset: 2:db815d6d32e6\n | tag: tip\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: y\n- |\n- o changeset: 2:db815d6d32e6\n- | bookmark: should-end-on-two\n | parent: 0:f7b1eb17ad24\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n@@ -941,58 +1063,75 @@\n working directory of current repository)\n \n $ hg bookmarks\n- * four 3:9ba5f110a0b3\n- should-end-on-two 2:db815d6d32e6\n+ no bookmarks set\n $ hg up four\n- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: unknown revision \'four\'\n+ [255]\n $ hg up\n 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ updated to "db815d6d32e6: 2"\n+ 1 other heads for branch "default"\n $ hg sum\n- parent: 3:9ba5f110a0b3 tip\n- y\n- branch: test\n- bookmarks: *four\n+ parent: 2:db815d6d32e6 tip\n+ 2\n+ branch: default\n+ commit: 2 unknown (clean)\n commit: 2 unknown (clean) (no-fsmonitor !)\n commit: * unknown (clean) (glob) (fsmonitor !)\n- update: (current)\n- phases: 4 draft\n+ update: 1 new changesets, 2 branch heads (merge)\n+ phases: 3 draft\n \n test clearing divergent bookmarks of linear ancestors\n \n $ hg bookmark Z -r 0\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark Z@1 -r 1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark Z@2 -r 2\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bookmark Z@3 -r 3\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book\n- Z 0:f7b1eb17ad24\n- Z@1 1:925d80f479bb\n- Z@2 2:db815d6d32e6\n- Z@3 3:9ba5f110a0b3\n- * four 3:9ba5f110a0b3\n- should-end-on-two 2:db815d6d32e6\n+ no bookmarks set\n $ hg bookmark Z\n- moving bookmark \'Z\' forward from f7b1eb17ad24\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book\n- * Z 3:9ba5f110a0b3\n- Z@1 1:925d80f479bb\n- four 3:9ba5f110a0b3\n- should-end-on-two 2:db815d6d32e6\n+ no bookmarks set\n \n test clearing only a single divergent bookmark across branches\n \n $ hg book foo -r 1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book foo@1 -r 0\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book foo@2 -r 2\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book foo@3 -r 3\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book foo -r foo@3\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book\n- * Z 3:9ba5f110a0b3\n- Z@1 1:925d80f479bb\n- foo 3:9ba5f110a0b3\n- foo@1 0:f7b1eb17ad24\n- foo@2 2:db815d6d32e6\n- four 3:9ba5f110a0b3\n- should-end-on-two 2:db815d6d32e6\n+ no bookmarks set\n \n pull --update works the same as pull && update (case #2)\n \n@@ -1000,7 +1139,9 @@\n bookmark (\'Y\' in tests below).\n \n $ hg pull -q ../cloned-bookmarks-update\n- divergent bookmark Z stored as Z@2\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n (pulling revision on another named branch with --update updates\n neither the working directory nor current active bookmark: "no-op"\n@@ -1008,51 +1149,39 @@\n \n $ echo yy >> y\n $ hg commit -m yy\n+ nothing changed\n+ [1]\n \n $ hg -R ../cloned-bookmarks-update bookmarks | grep \' Y \'\n- * Y 3:125c9a1d6df6\n+ * Y -1:000000000000\n $ hg -R ../cloned-bookmarks-update pull . --update\n pulling from .\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- divergent bookmark Z stored as Z@default\n- adding remote bookmark foo\n- adding remote bookmark four\n- adding remote bookmark should-end-on-two\n- added 1 changesets with 1 changes to 1 files\n- new changesets 5fb12f0f2d51\n- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ no changes found\n $ hg -R ../cloned-bookmarks-update parents -T "{rev}:{node|short}\\n"\n- 3:125c9a1d6df6\n $ hg -R ../cloned-bookmarks-update bookmarks | grep \' Y \'\n- * Y 3:125c9a1d6df6\n+ * Y -1:000000000000\n \n (pulling revision on current named/topological branch with --update\n updates the working directory and current active bookmark)\n \n $ hg update -C -q 125c9a1d6df6\n+ abort: unknown revision \'125c9a1d6df6\'\n+ [255]\n $ echo xx >> x\n $ hg commit -m xx\n+ nothing changed\n+ [1]\n \n $ hg -R ../cloned-bookmarks-update bookmarks | grep \' Y \'\n- * Y 3:125c9a1d6df6\n+ * Y -1:000000000000\n $ hg -R ../cloned-bookmarks-update pull . --update\n pulling from .\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- divergent bookmark Z stored as Z@default\n- added 1 changesets with 1 changes to 1 files\n- new changesets 81dcce76aa0b\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- updating bookmark Y\n+ no changes found\n $ hg -R ../cloned-bookmarks-update parents -T "{rev}:{node|short}\\n"\n- 6:81dcce76aa0b\n $ hg -R ../cloned-bookmarks-update bookmarks | grep \' Y \'\n- * Y 6:81dcce76aa0b\n+ * Y -1:000000000000\n \n $ cd ..\n \n@@ -1122,10 +1251,50 @@\n $ hg add a\n $ hg commit -m \'#0\'\n $ hg --config hooks.pretxnclose="sh $TESTTMP/savepending.sh" bookmarks INVISIBLE\n- transaction abort!\n- rollback completed\n- abort: pretxnclose hook exited with status 1\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 1278, in bookmark\n+ bookmarks.deactivate(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cp .hg/bookmarks.pending.saved .hg/bookmarks.pending\n \n (check visible bookmarks while transaction running in repo)\n@@ -1140,24 +1309,8 @@\n \n $ cd ../repo\n $ hg --config hooks.pretxnclose="sh $TESTTMP/checkpending.sh" bookmarks NEW\n- @repo\n- * NEW 6:81dcce76aa0b\n- X2 1:925d80f479bb\n- Y 4:125c9a1d6df6\n- Z 5:5fb12f0f2d51\n- Z@1 1:925d80f479bb\n- Z@2 4:125c9a1d6df6\n- foo 3:9ba5f110a0b3\n- foo@1 0:f7b1eb17ad24\n- foo@2 2:db815d6d32e6\n- four 3:9ba5f110a0b3\n- should-end-on-two 2:db815d6d32e6\n- x y 2:db815d6d32e6\n- @unrelated\n- no bookmarks set\n- transaction abort!\n- rollback completed\n- abort: pretxnclose hook exited with status 1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n Check pretxnclose-bookmark can abort a transaction\n@@ -1175,62 +1328,22 @@\n > EOF\n \n $ hg log -G -T phases\n- @ changeset: 6:81dcce76aa0b\n+ @ changeset: 2:db815d6d32e6\n | tag: tip\n | phase: draft\n- | parent: 4:125c9a1d6df6\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: xx\n- |\n- | o changeset: 5:5fb12f0f2d51\n- | | branch: test\n- | | bookmark: Z\n- | | phase: draft\n- | | parent: 3:9ba5f110a0b3\n- | | user: test\n- | | date: Thu Jan 01 00:00:00 1970 +0000\n- | | summary: yy\n- | |\n- o | changeset: 4:125c9a1d6df6\n- | | bookmark: Y\n- | | bookmark: Z@2\n- | | phase: public\n- | | parent: 2:db815d6d32e6\n- | | user: test\n- | | date: Thu Jan 01 00:00:00 1970 +0000\n- | | summary: x\n- | |\n- | o changeset: 3:9ba5f110a0b3\n- |/ branch: test\n- | bookmark: foo\n- | bookmark: four\n- | phase: public\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: y\n- |\n- o changeset: 2:db815d6d32e6\n- | bookmark: foo@2\n- | bookmark: should-end-on-two\n- | bookmark: x y\n- | phase: public\n | parent: 0:f7b1eb17ad24\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: 2\n |\n | o changeset: 1:925d80f479bb\n- |/ bookmark: X2\n- | bookmark: Z@1\n- | phase: public\n+ |/ phase: draft\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: 1\n |\n o changeset: 0:f7b1eb17ad24\n- bookmark: foo@1\n- phase: public\n+ phase: draft\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n summary: 0\n@@ -1239,19 +1352,20 @@\n attempt to create on a default changeset\n \n $ hg bookmark -r 81dcce76aa0b NEW\n- transaction abort!\n- rollback completed\n- abort: pretxnclose-bookmark.force-public hook exited with status 1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n create on a public changeset\n \n $ hg bookmark -r 9ba5f110a0b3 NEW\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n move to the other branch\n \n $ hg bookmark -f -r 125c9a1d6df6 NEW\n- transaction abort!\n- rollback completed\n- abort: pretxnclose-bookmark.force-forward hook exited with status 1\n- [255]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n', 2105, 2107, 'truncated \\uXXXX escape') decoding diff, sorry
test-branch-change.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-branch-change.t\n+++ c:/hgdev/src/tests/test-branch-change.t.err\n@@ -51,21 +51,67 @@\n Change on non-linear set of commits\n \n $ hg branch -r 2 -r 4 foo\n- abort: cannot change branch of non-linear revisions\n- [10]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 1358, in branch\n+ return cmdutil.changebranch(ui, repo, revs, label, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 1068, in changebranch\n+ ui.status(_(b"changed branch on %d changesets\\n") % len(replacements))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n Change in middle of the stack (linear commits)\n \n $ hg branch -r 1::3 foo\n- abort: cannot change branch of changeset with children\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Change with dirty working directory\n \n $ echo bar > a\n $ hg branch -r . foo\n- abort: uncommitted changes\n- [20]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg revert --all\n reverting a\n@@ -73,21 +119,23 @@\n Change on empty revision set\n \n $ hg branch -r \'draft() - all()\' foo\n- abort: empty revision set\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Changing branch on linear set of commits from head\n \n Without obsmarkers\n \n $ hg branch -r 3:4 foo --config experimental.evolution=!\n- changed branch on 2 changesets\n- saved backup bundle to $TESTTMP/repo/.hg/strip-backup/62615734edd5-e86bd13a-branch-change.hg\n- $ hg glog\n- @ 4:3938acfb5c0f Added e\n- | foo ()\n- o 3:9435da006bdc Added d\n- | foo ()\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg glog\n+ @ 4:aa98ab95a928 Added e\n+ | default ()\n+ o 3:62615734edd5 Added d\n+ | default ()\n o 2:28ad74487de9 Added c\n | default ()\n o 1:29becc82797a Added b\n@@ -96,18 +144,19 @@\n default ()\n \n $ hg branches\n- foo 4:3938acfb5c0f\n- default 2:28ad74487de9 (inactive)\n+ default 4:aa98ab95a928\n \n With obsmarkers\n \n $ hg branch -r 3::4 bar\n- changed branch on 2 changesets\n- $ hg glog\n- @ 6:7c1991464886 Added e\n- | bar ()\n- o 5:1ea05e93925f Added d\n- | bar ()\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg glog\n+ @ 4:aa98ab95a928 Added e\n+ | default ()\n+ o 3:62615734edd5 Added d\n+ | default ()\n o 2:28ad74487de9 Added c\n | default ()\n o 1:29becc82797a Added b\n@@ -116,20 +165,21 @@\n default ()\n \n $ hg branches\n- bar 6:7c1991464886\n- default 2:28ad74487de9 (inactive)\n+ default 4:aa98ab95a928\n \n Change branch name to an existing branch\n \n $ hg branch -r . default\n- abort: a branch of the same name already exists\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Changing on a branch head which is not topological head\n \n $ hg branch -r 2 stable\n- abort: cannot change branch of changeset with children\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Enabling the allowunstable config and trying to change branch on a branch head\n which is not a topological head\n@@ -137,238 +187,246 @@\n $ echo "[experimental]" >> .hg/hgrc\n $ echo "evolution.allowunstable=yes" >> .hg/hgrc\n $ hg branch -r 2 foo\n- changed branch on 1 changesets\n- 2 new orphan changesets\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Changing branch of an obsoleted changeset\n \n $ hg branch -r 4 foobar\n- abort: hidden revision \'4\' was rewritten as: 7c1991464886\n- (use --hidden to access hidden revisions)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n $ hg branch -r 4 --hidden foobar\n- abort: cannot change branch of a obsolete changeset\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Make sure bookmark movement is correct\n \n $ hg bookmark b1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg glog -r \'.^::\'\n- @ 6:7c1991464886 Added e\n- | bar (b1)\n- * 5:1ea05e93925f Added d\n- | bar ()\n+ @ 4:aa98ab95a928 Added e\n+ | default ()\n+ o 3:62615734edd5 Added d\n+ | default ()\n ~\n \n $ hg branch -r \'(.^)::\' wat --debug\n- changing branch of \'1ea05e93925f806d875a2163f9b76764be644636\' from \'bar\' to \'wat\'\n- committing files:\n- d\n- committing manifest\n- committing changelog\n- new node id is 343660ccab7400da637bd6a211d07f413536d718\n- changing branch of \'7c19914648869f5b02fc7fed31ddee9783fdd680\' from \'bar\' to \'wat\'\n- committing files:\n- e\n- committing manifest\n- committing changelog\n- new node id is de1404b45a69f8cc6437d7679033ee33e9efb4ba\n- moving bookmarks [\'b1\'] from 7c19914648869f5b02fc7fed31ddee9783fdd680 to de1404b45a69f8cc6437d7679033ee33e9efb4ba\n- resolving manifests\n- branchmerge: False, force: False, partial: False\n- ancestor: 7c1991464886, local: 7c1991464886+, remote: de1404b45a69\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n starting 4 threads for background file closing (?)\n- changed branch on 2 changesets\n- updating the branch cache\n- invalid branch cache (served): tip differs\n+ [255]\n \n $ hg glog -r \'(.^)::\'\n- @ 9:de1404b45a69 Added e\n- | wat (b1)\n- * 8:343660ccab74 Added d\n- | wat ()\n+ @ 4:aa98ab95a928 Added e\n+ | default ()\n+ o 3:62615734edd5 Added d\n+ | default ()\n ~\n \n Make sure phase handling is correct\n \n $ echo foo >> bar\n $ hg ci -Aqm "added bar" --secret\n- 1 new orphan changesets\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg glog -r .\n- @ 10:8ad1294c1660 added bar\n- | wat (b1)\n+ @ 4:aa98ab95a928 Added e\n+ | default ()\n ~\n $ hg branch -r . secret\n- changed branch on 1 changesets\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg phase -r .\n- 11: secret\n+ 4: draft\n \n $ hg branches\n- secret 11:38a9b2d53f98\n- foo 7:8a4729a5e2b8\n- wat 9:de1404b45a69 (inactive)\n- default 2:28ad74487de9 (inactive)\n+ default 4:aa98ab95a928\n $ hg branch\n- secret\n+ default\n \n Changing branch of another head, different from one on which we are\n \n $ hg glog\n- @ 11:38a9b2d53f98 added bar\n- | secret (b1)\n- * 9:de1404b45a69 Added e\n- | wat ()\n- * 8:343660ccab74 Added d\n- | wat ()\n- | o 7:8a4729a5e2b8 Added c\n- | | foo ()\n- x | 2:28ad74487de9 Added c\n- |/ default ()\n+ @ 4:aa98ab95a928 Added e\n+ | default ()\n+ o 3:62615734edd5 Added d\n+ | default ()\n+ o 2:28ad74487de9 Added c\n+ | default ()\n o 1:29becc82797a Added b\n | default ()\n o 0:18d04c59bb5d Added a\n default ()\n \n $ hg branch\n- secret\n+ default\n \n $ hg branch -r 7 foobar\n- changed branch on 1 changesets\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n The current branch must be preserved\n $ hg branch\n- secret\n+ default\n \n Changing branch on multiple heads at once\n \n $ hg rebase -s 8 -d 12 --keepbranches -q\n+ abort: unknown revision \'8\'\n+ [255]\n \n $ hg rebase -s 14 -d 1 --keepbranches -q\n+ abort: unknown revision \'14\'\n+ [255]\n \n $ hg branch -r 0: stable\n- changed branch on 6 changesets\n- $ hg glog\n- @ 23:6a5ddbcfb870 added bar\n- | stable (b1)\n- o 22:baedc6e98a67 Added e\n- | stable ()\n- | o 21:99ac7bf8aad1 Added d\n- | | stable ()\n- | o 20:0ecb4d39c4bd Added c\n- |/ stable ()\n- o 19:fd45b986b109 Added b\n- | stable ()\n- o 18:204d2769eca2 Added a\n- stable ()\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg glog\n+ @ 4:aa98ab95a928 Added e\n+ | default ()\n+ o 3:62615734edd5 Added d\n+ | default ()\n+ o 2:28ad74487de9 Added c\n+ | default ()\n+ o 1:29becc82797a Added b\n+ | default ()\n+ o 0:18d04c59bb5d Added a\n+ default ()\n \n $ hg branches\n- stable 23:6a5ddbcfb870\n+ default 4:aa98ab95a928\n \n $ hg branch\n- stable\n+ default\n \n Changing to same branch is no-op\n \n $ hg branch -r 19::21 stable\n- changed branch on 0 changesets\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Changing branch name to existing branch name if the branch of parent of root of\n revs is same as the new branch name\n \n $ hg branch -r 20::21 bugfix\n- changed branch on 2 changesets\n- $ hg glog\n- o 25:714defe1cf34 Added d\n- | bugfix ()\n- o 24:98394def28fc Added c\n- | bugfix ()\n- | @ 23:6a5ddbcfb870 added bar\n- | | stable (b1)\n- | o 22:baedc6e98a67 Added e\n- |/ stable ()\n- o 19:fd45b986b109 Added b\n- | stable ()\n- o 18:204d2769eca2 Added a\n- stable ()\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg glog\n+ @ 4:aa98ab95a928 Added e\n+ | default ()\n+ o 3:62615734edd5 Added d\n+ | default ()\n+ o 2:28ad74487de9 Added c\n+ | default ()\n+ o 1:29becc82797a Added b\n+ | default ()\n+ o 0:18d04c59bb5d Added a\n+ default ()\n \n $ hg branch -r 24:25 stable\n- changed branch on 2 changesets\n- $ hg glog\n- o 27:4ec342341562 Added d\n- | stable ()\n- o 26:83f48859c2de Added c\n- | stable ()\n- | @ 23:6a5ddbcfb870 added bar\n- | | stable (b1)\n- | o 22:baedc6e98a67 Added e\n- |/ stable ()\n- o 19:fd45b986b109 Added b\n- | stable ()\n- o 18:204d2769eca2 Added a\n- stable ()\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg glog\n+ @ 4:aa98ab95a928 Added e\n+ | default ()\n+ o 3:62615734edd5 Added d\n+ | default ()\n+ o 2:28ad74487de9 Added c\n+ | default ()\n+ o 1:29becc82797a Added b\n+ | default ()\n+ o 0:18d04c59bb5d Added a\n+ default ()\n \n Changing branch of a merge commit\n \n $ hg branch -q ghi\n $ echo f > f\n $ hg ci -qAm \'Added f\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg up -q 27\n+ abort: unknown revision \'27\'\n+ [255]\n $ hg branch -q jkl\n $ echo g > g\n $ hg ci -qAm \'Added g\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg glog -r \'heads(:)\'\n- @ 29:6bc1c6c2c9da Added g\n- | jkl ()\n- ~\n- o 28:2f1019bd29d2 Added f\n- | ghi (b1)\n+ @ 4:aa98ab95a928 Added e\n+ | default ()\n ~\n \n $ hg branch -q default\n $ hg merge -r 28\n- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- (branch merge, don\'t forget to commit)\n+ abort: merging with a working directory ancestor has no effect\n+ [255]\n $ hg branch -r . abcd\n- abort: outstanding uncommitted merge\n- [20]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg ci -m "Merge commit"\n+ nothing changed\n+ [1]\n $ hg glog -r \'parents(.)::\'\n- @ 30:4d56e6b1eb6b Merge commit\n- |\\ default ()\n- | o 29:6bc1c6c2c9da Added g\n- | | jkl ()\n- | ~\n- o 28:2f1019bd29d2 Added f\n- | ghi (b1)\n+ @ 4:aa98ab95a928 Added e\n+ | default ()\n+ o 3:62615734edd5 Added d\n+ | default ()\n ~\n \n $ hg branch -r . ghi\n- 0 files updated, 0 files merged, 4 files removed, 0 files unresolved\n- changed branch on 1 changesets\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg branch -r . jkl\n- changed branch on 1 changesets\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg branch -r . default\n- changed branch on 1 changesets\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg branch -r . stable\n- abort: a branch of the same name already exists\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg branch -r . stable --force\n- changed branch on 1 changesets\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg branches\n- stable 34:d1c2addda4a2\n- jkl 29:6bc1c6c2c9da (inactive)\n- ghi 28:2f1019bd29d2 (inactive)\n+ default 4:aa98ab95a928\n \n Changing branch on public changeset\n \n $ hg phase -r . -p\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg branch -r . def\n- abort: cannot change branch of public changesets\n- (see \'hg help phases\' for details)\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Merge commit with conflicts, with evolution and without\n \n@@ -417,11 +475,74 @@\n $ hg branch -r \'(.^)::\' abc\n changed branch on 2 changesets\n saved backup bundle to $TESTTMP/merge-without-evolution/.hg/strip-backup/9a3a2af368f4-8db1a361-branch-change.hg\n- $ hg glog\n- @ 3:c07fa8b34d54 neither\n+ strip failed, backup bundle stored in \'$TESTTMP\\merge-without-evolution\\.hg\\strip-backup/9a3a2af368f4-8db1a361-branch-change.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\merge-without-evolution\\.hg\\strip-backup/9a3a2af368f4-5302be0d-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\merge-without-evolution\\.hg\\strip-backup/9a3a2af368f4-5302be0d-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 1358, in branch\n+ return cmdutil.changebranch(ui, repo, revs, label, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 1068, in changebranch\n+ ui.status(_(b"changed branch on %d changesets\\n") % len(replacements))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+ $ hg glog\n+ @ 5:c07fa8b34d54 neither\n |\\ abc ()\n- | o 2:f2aa51777cc9 baz\n+ | o 4:f2aa51777cc9 baz\n | | abc ()\n+ +---o 3:23352ce8447f neither\n+ | | | default ()\n+ | | o 2:9a3a2af368f4 baz\n+ | |/ default ()\n o | 1:2e33c4f0856b bar\n |/ default ()\n o 0:91cfb6004abf foo\n', 2146, 2148, 'truncated \\uXXXX escape') decoding diff, sorry
test-branches.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-branches.t\n+++ c:/hgdev/src/tests/test-branches.t.err\n@@ -744,24 +744,8 @@\n $ rm -rf .hg/cache; hg head a -T \'{rev}\\n\'\n 5\n $ f --hexdump --size .hg/cache/rbc-*\n- .hg/cache/rbc-names-v1: size=92\n- 0000: 64 65 66 61 75 6c 74 00 61 00 62 00 63 00 61 20 |default.a.b.c.a |\n- 0010: 62 72 61 6e 63 68 20 6e 61 6d 65 20 6d 75 63 68 |branch name much|\n- 0020: 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 74 68 65 | longer than the|\n- 0030: 20 64 65 66 61 75 6c 74 20 6a 75 73 74 69 66 69 | default justifi|\n- 0040: 63 61 74 69 6f 6e 20 75 73 65 64 20 62 79 20 62 |cation used by b|\n- 0050: 72 61 6e 63 68 65 73 00 6d 00 6d 64 |ranches.m.md|\n- .hg/cache/rbc-revs-v1: size=160\n- 0000: 19 70 9c 5a 00 00 00 00 dd 6b 44 0d 00 00 00 01 |.p.Z.....kD.....|\n- 0010: 88 1f e2 b9 00 00 00 01 ac 22 03 33 00 00 00 02 |.........".3....|\n- 0020: ae e3 9c d1 00 00 00 02 d8 cb c6 1d 00 00 00 01 |................|\n- 0030: 58 97 36 a2 00 00 00 03 10 ff 58 95 00 00 00 04 |X.6.......X.....|\n- 0040: ee bb 94 44 00 00 00 02 5f 40 61 bb 00 00 00 02 |...D...._@a.....|\n- 0050: bf be 84 1b 00 00 00 02 d3 f1 63 45 80 00 00 02 |..........cE....|\n- 0060: e3 d4 9c 05 80 00 00 02 e2 3b 55 05 00 00 00 02 |.........;U.....|\n- 0070: f8 94 c2 56 80 00 00 03 f3 44 76 37 00 00 00 05 |...V.....Dv7....|\n- 0080: a5 8c a5 d3 00 00 00 05 df 34 3b 0d 00 00 00 05 |.........4;.....|\n- 0090: c9 14 c9 9f 00 00 00 06 cd 21 a8 0b 80 00 00 05 |.........!......|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n no errors when revbranchcache is not writable\n \n@@ -791,103 +775,129 @@\n 5\n truncating cache/rbc-revs-v1 to 160\n $ f --size .hg/cache/rbc-revs*\n- .hg/cache/rbc-revs-v1: size=160\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n recovery from invalid cache file with partial last record\n $ mv .hg/cache/rbc-revs-v1 .\n $ f -qDB 119 rbc-revs-v1 > .hg/cache/rbc-revs-v1\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ f --size .hg/cache/rbc-revs*\n- .hg/cache/rbc-revs-v1: size=119\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ rm -f .hg/cache/branch* && hg head a -T \'{rev}\\n\' --debug\n 5\n- truncating cache/rbc-revs-v1 to 112\n $ f --size .hg/cache/rbc-revs*\n- .hg/cache/rbc-revs-v1: size=160\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n recovery from invalid cache file with missing record - no truncation\n $ mv .hg/cache/rbc-revs-v1 .\n $ f -qDB 112 rbc-revs-v1 > .hg/cache/rbc-revs-v1\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ rm -f .hg/cache/branch* && hg head a -T \'{rev}\\n\' --debug\n 5\n $ f --size .hg/cache/rbc-revs*\n- .hg/cache/rbc-revs-v1: size=160\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n recovery from invalid cache file with some bad records\n $ mv .hg/cache/rbc-revs-v1 .\n $ f -qDB 8 rbc-revs-v1 > .hg/cache/rbc-revs-v1\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ f --size .hg/cache/rbc-revs*\n- .hg/cache/rbc-revs-v1: size=8\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ f -qDB 112 rbc-revs-v1 >> .hg/cache/rbc-revs-v1\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ f --size .hg/cache/rbc-revs*\n- .hg/cache/rbc-revs-v1: size=120\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ hg log -r \'branch(.)\' -T \'{rev} \' --debug\n- history modification detected - truncating revision branch cache to revision 13\n- history modification detected - truncating revision branch cache to revision 1\n- 3 4 8 9 10 11 12 13 truncating cache/rbc-revs-v1 to 8\n+ 3 4 8 9 10 11 12 13 (no-eol)\n $ rm -f .hg/cache/branch* && hg head a -T \'{rev}\\n\' --debug\n 5\n- truncating cache/rbc-revs-v1 to 104\n $ f --size --hexdump --bytes=16 .hg/cache/rbc-revs*\n- .hg/cache/rbc-revs-v1: size=160\n- 0000: 19 70 9c 5a 00 00 00 00 dd 6b 44 0d 00 00 00 01 |.p.Z.....kD.....|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n cache is updated when committing\n $ hg branch i-will-regret-this\n marked working directory as branch i-will-regret-this\n $ hg ci -m regrets\n $ f --size .hg/cache/rbc-*\n- .hg/cache/rbc-names-v1: size=111\n- .hg/cache/rbc-revs-v1: size=168\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n update after rollback - the cache will be correct but rbc-names will will still\n contain the branch name even though it no longer is used\n $ hg up -qr \'.^\'\n $ hg rollback -qf\n $ f --size --hexdump .hg/cache/rbc-*\n- .hg/cache/rbc-names-v1: size=111\n- 0000: 64 65 66 61 75 6c 74 00 61 00 62 00 63 00 61 20 |default.a.b.c.a |\n- 0010: 62 72 61 6e 63 68 20 6e 61 6d 65 20 6d 75 63 68 |branch name much|\n- 0020: 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 74 68 65 | longer than the|\n- 0030: 20 64 65 66 61 75 6c 74 20 6a 75 73 74 69 66 69 | default justifi|\n- 0040: 63 61 74 69 6f 6e 20 75 73 65 64 20 62 79 20 62 |cation used by b|\n- 0050: 72 61 6e 63 68 65 73 00 6d 00 6d 64 00 69 2d 77 |ranches.m.md.i-w|\n- 0060: 69 6c 6c 2d 72 65 67 72 65 74 2d 74 68 69 73 |ill-regret-this|\n- .hg/cache/rbc-revs-v1: size=160\n- 0000: 19 70 9c 5a 00 00 00 00 dd 6b 44 0d 00 00 00 01 |.p.Z.....kD.....|\n- 0010: 88 1f e2 b9 00 00 00 01 ac 22 03 33 00 00 00 02 |.........".3....|\n- 0020: ae e3 9c d1 00 00 00 02 d8 cb c6 1d 00 00 00 01 |................|\n- 0030: 58 97 36 a2 00 00 00 03 10 ff 58 95 00 00 00 04 |X.6.......X.....|\n- 0040: ee bb 94 44 00 00 00 02 5f 40 61 bb 00 00 00 02 |...D...._@a.....|\n- 0050: bf be 84 1b 00 00 00 02 d3 f1 63 45 80 00 00 02 |..........cE....|\n- 0060: e3 d4 9c 05 80 00 00 02 e2 3b 55 05 00 00 00 02 |.........;U.....|\n- 0070: f8 94 c2 56 80 00 00 03 f3 44 76 37 00 00 00 05 |...V.....Dv7....|\n- 0080: a5 8c a5 d3 00 00 00 05 df 34 3b 0d 00 00 00 05 |.........4;.....|\n- 0090: c9 14 c9 9f 00 00 00 06 cd 21 a8 0b 80 00 00 05 |.........!......|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n cache is updated/truncated when stripping - it is thus very hard to get in a\n situation where the cache is out of sync and the hash check detects it\n $ hg --config extensions.strip= strip -r tip --nob\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ f --size .hg/cache/rbc-revs*\n- .hg/cache/rbc-revs-v1: size=152\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n cache is rebuilt when corruption is detected\n $ echo > .hg/cache/rbc-names-v1\n $ hg log -r \'5:&branch(.)\' -T \'{rev} \' --debug\n referenced branch names not found - rebuilding revision branch cache from scratch\n- 8 9 10 11 12 13 truncating cache/rbc-revs-v1 to 40\n+ 13 truncating cache/rbc-revs-v1 to 40\n $ f --size --hexdump .hg/cache/rbc-*\n- .hg/cache/rbc-names-v1: size=84\n- 0000: 62 00 61 00 63 00 61 20 62 72 61 6e 63 68 20 6e |b.a.c.a branch n|\n- 0010: 61 6d 65 20 6d 75 63 68 20 6c 6f 6e 67 65 72 20 |ame much longer |\n- 0020: 74 68 61 6e 20 74 68 65 20 64 65 66 61 75 6c 74 |than the default|\n- 0030: 20 6a 75 73 74 69 66 69 63 61 74 69 6f 6e 20 75 | justification u|\n- 0040: 73 65 64 20 62 79 20 62 72 61 6e 63 68 65 73 00 |sed by branches.|\n- 0050: 6d 00 6d 64 |m.md|\n- .hg/cache/rbc-revs-v1: size=152\n- 0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0020: 00 00 00 00 00 00 00 00 d8 cb c6 1d 00 00 00 01 |................|\n- 0030: 58 97 36 a2 00 00 00 02 10 ff 58 95 00 00 00 03 |X.6.......X.....|\n- 0040: ee bb 94 44 00 00 00 00 5f 40 61 bb 00 00 00 00 |...D...._@a.....|\n- 0050: bf be 84 1b 00 00 00 00 d3 f1 63 45 80 00 00 00 |..........cE....|\n- 0060: e3 d4 9c 05 80 00 00 00 e2 3b 55 05 00 00 00 00 |.........;U.....|\n- 0070: f8 94 c2 56 80 00 00 02 f3 44 76 37 00 00 00 04 |...V.....Dv7....|\n- 0080: a5 8c a5 d3 00 00 00 04 df 34 3b 0d 00 00 00 04 |.........4;.....|\n- 0090: c9 14 c9 9f 00 00 00 05 |........|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n Test that cache files are created and grows correctly:\n \n@@ -895,19 +905,8 @@\n $ hg log -r "5 & branch(5)" -T "{rev}\\n"\n 5\n $ f --size --hexdump .hg/cache/rbc-*\n- .hg/cache/rbc-names-v1: size=1\n- 0000: 61 |a|\n- .hg/cache/rbc-revs-v1: size=152\n- 0000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0020: 00 00 00 00 00 00 00 00 d8 cb c6 1d 00 00 00 00 |................|\n- 0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0090: 00 00 00 00 00 00 00 00 |........|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n $ cd ..\n \n@@ -923,21 +922,15 @@\n $ hg ci -Amf\n \n $ f --size --hexdump .hg/cache/rbc-*\n- .hg/cache/rbc-names-v1: size=14\n- 0000: 64 65 66 61 75 6c 74 00 62 72 61 6e 63 68 |default.branch|\n- .hg/cache/rbc-revs-v1: size=24\n- 0000: 66 e5 f5 aa 00 00 00 00 fa 4c 04 e5 00 00 00 00 |f........L......|\n- 0010: 56 46 78 69 00 00 00 01 |VFxi....|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ : > .hg/cache/rbc-revs-v1\n \n No superfluous rebuilding of cache:\n $ hg log -r "branch(null)&branch(branch)" --debug\n $ f --size --hexdump .hg/cache/rbc-*\n- .hg/cache/rbc-names-v1: size=14\n- 0000: 64 65 66 61 75 6c 74 00 62 72 61 6e 63 68 |default.branch|\n- .hg/cache/rbc-revs-v1: size=24\n- 0000: 66 e5 f5 aa 00 00 00 00 fa 4c 04 e5 00 00 00 00 |f........L......|\n- 0010: 56 46 78 69 00 00 00 01 |VFxi....|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n $ cd ..\n \n', 7797, 7799, 'truncated \\uXXXX escape') decoding diff, sorry
test-bundle-phases.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-bundle-phases.t\n+++ c:/hgdev/src/tests/test-bundle-phases.t.err\n@@ -46,7 +46,60 @@\n phase-heads -- {} (mandatory: True)\n 26805aba1e600a82e93661149f2313866a221a7b draft\n $ hg strip --no-backup C\n- $ hg unbundle -q bundle\n+ ** Unknown exception encountered with possibly-broken third-party extension "drawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "drawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: drawdag, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+ $ hg unbundle -q bundle\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ rm bundle\n $ hg log -G -T \'{desc} {phase}\\n\'\n o E secret\n@@ -63,7 +116,13 @@\n $ hg bundle -a bundle\n 5 changesets found\n $ hg strip --no-backup A\n- $ hg unbundle -q bundle\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg unbundle -q bundle\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ rm bundle\n $ hg log -G -T \'{desc} {phase}\\n\'\n o E secret\n@@ -78,56 +137,86 @@\n \n Completely public history can be restored\n $ hg phase --public E\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bundle -a bundle\n 5 changesets found\n $ hg strip --no-backup A\n- $ hg unbundle -q bundle\n- $ rm bundle\n- $ hg log -G -T \'{desc} {phase}\\n\'\n- o E public\n- |\n- o D public\n- |\n- o C public\n- |\n- o B public\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg unbundle -q bundle\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ rm bundle\n+ $ hg log -G -T \'{desc} {phase}\\n\'\n+ o E secret\n+ |\n+ o D secret\n+ |\n+ o C draft\n+ |\n+ o B draft\n |\n o A public\n \n Direct transition from public to secret can be restored\n $ hg phase --secret --force D\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bundle -a bundle\n 5 changesets found\n $ hg strip --no-backup A\n- $ hg unbundle -q bundle\n- $ rm bundle\n- $ hg log -G -T \'{desc} {phase}\\n\'\n- o E secret\n- |\n- o D secret\n- |\n- o C public\n- |\n- o B public\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg unbundle -q bundle\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ rm bundle\n+ $ hg log -G -T \'{desc} {phase}\\n\'\n+ o E secret\n+ |\n+ o D secret\n+ |\n+ o C draft\n+ |\n+ o B draft\n |\n o A public\n \n Revisions within bundle preserve their phase even if parent changes its phase\n $ hg phase --draft --force B\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bundle --base B -r E bundle\n 3 changesets found\n $ hg strip --no-backup C\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg phase --public B\n- $ hg unbundle -q bundle\n- $ rm bundle\n- $ hg log -G -T \'{desc} {phase}\\n\'\n- o E secret\n- |\n- o D secret\n- |\n- o C draft\n- |\n- o B public\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg unbundle -q bundle\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ rm bundle\n+ $ hg log -G -T \'{desc} {phase}\\n\'\n+ o E secret\n+ |\n+ o D secret\n+ |\n+ o C draft\n+ |\n+ o B draft\n |\n o A public\n \n@@ -135,8 +224,17 @@\n $ hg bundle --base B -r E bundle\n 3 changesets found\n $ hg strip --no-backup C\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg phase --force --secret B\n- $ hg unbundle -q bundle\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg unbundle -q bundle\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ rm bundle\n $ hg log -G -T \'{desc} {phase}\\n\'\n o E secret\n@@ -153,17 +251,32 @@\n To test that, create a bundle of everything in draft phase and then unbundle\n to see that secret becomes draft, but public remains public.\n $ hg phase --draft --force A\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg phase --draft E\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg bundle -a bundle\n 5 changesets found\n $ hg phase --public A\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg phase --secret --force E\n- $ hg unbundle -q bundle\n- $ rm bundle\n- $ hg log -G -T \'{desc} {phase}\\n\'\n- o E draft\n- |\n- o D draft\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg unbundle -q bundle\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ rm bundle\n+ $ hg log -G -T \'{desc} {phase}\\n\'\n+ o E secret\n+ |\n+ o D secret\n |\n o C draft\n |\n@@ -173,8 +286,16 @@\n \n Unbundling change in the middle of a stack does not affect later changes\n $ hg strip --no-backup E\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg phase --secret --force D\n- $ hg log -G -T \'{desc} {phase}\\n\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg log -G -T \'{desc} {phase}\\n\'\n+ o E secret\n+ |\n o D secret\n |\n o C draft\n@@ -186,8 +307,13 @@\n $ hg bundle --base A -r B bundle\n 1 changesets found\n $ hg unbundle -q bundle\n- $ rm bundle\n- $ hg log -G -T \'{desc} {phase}\\n\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ rm bundle\n+ $ hg log -G -T \'{desc} {phase}\\n\'\n+ o E secret\n+ |\n o D secret\n |\n o C draft\n@@ -239,7 +365,60 @@\n dc0947a82db884575bb76ea10ac97b08536bfa03 public\n 03ca77807e919db8807c3749086dc36fb478cac0 draft\n $ hg strip --no-backup A\n- $ hg unbundle -q bundle\n+ ** Unknown exception encountered with possibly-broken third-party extension "drawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "drawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: drawdag, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+ $ hg unbundle -q bundle\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ rm bundle\n $ hg log -G -T \'{node|short} {desc} {phase}\\n\'\n o 03ca77807e91 E draft\n', 2342, 2344, 'truncated \\uXXXX escape') decoding diff, sorry
test-bundle-r.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-bundle-r.t\n+++ c:/hgdev/src/tests/test-bundle-r.t.err\n@@ -221,98 +221,133 @@\n 2:4ce51a113780\n $ hg unbundle ../test-bundle-should-fail.hg\n adding changesets\n- transaction abort!\n- rollback completed\n- abort: 00changelog.i@93ee6ab32777: unknown parent\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 7400, in unbundle\n+ repo, gen, tr, source=b\'unbundle\', url=url\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n revision 2\n \n $ hg tip -q\n 2:4ce51a113780\n $ hg unbundle ../test-bundle-all.hg\n- adding changesets\n- adding manifests\n- adding file changes\n- added 6 changesets with 4 changes to 4 files (+1 heads)\n- new changesets 93ee6ab32777:916f1afdef90 (6 drafts)\n- (run \'hg heads\' to see heads, \'hg merge\' to merge)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n revision 8\n \n $ hg tip -q\n- 8:916f1afdef90\n- $ hg verify\n- checking changesets\n- checking manifests\n- crosschecking files in changesets and manifests\n- checking files\n- checked 9 changesets with 7 changes to 4 files\n+ 2:4ce51a113780\n+ $ hg verify\n+ abandoned transaction found - run hg recover\n+ checking changesets\n+ checking manifests\n+ crosschecking files in changesets and manifests\n+ checking files\n+ checked 3 changesets with 3 changes to 1 files\n $ hg rollback\n- repository tip rolled back to revision 2 (undo unbundle)\n+ no rollback information available\n+ [1]\n \n revision 2\n \n $ hg tip -q\n 2:4ce51a113780\n $ hg unbundle ../test-bundle-branch1.hg\n- adding changesets\n- adding manifests\n- adding file changes\n- added 2 changesets with 2 changes to 2 files\n- new changesets 93ee6ab32777:916f1afdef90 (2 drafts)\n- (run \'hg update\' to get a working copy)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n revision 4\n \n $ hg tip -q\n- 4:916f1afdef90\n- $ hg verify\n- checking changesets\n- checking manifests\n- crosschecking files in changesets and manifests\n- checking files\n- checked 5 changesets with 5 changes to 2 files\n+ 2:4ce51a113780\n+ $ hg verify\n+ abandoned transaction found - run hg recover\n+ checking changesets\n+ checking manifests\n+ crosschecking files in changesets and manifests\n+ checking files\n+ checked 3 changesets with 3 changes to 1 files\n $ hg rollback\n- repository tip rolled back to revision 2 (undo unbundle)\n+ no rollback information available\n+ [1]\n $ hg unbundle ../test-bundle-branch2.hg\n- adding changesets\n- adding manifests\n- adding file changes\n- added 4 changesets with 3 changes to 3 files (+1 heads)\n- new changesets c70afb1ee985:faa2e4234c7a (4 drafts)\n- (run \'hg heads\' to see heads, \'hg merge\' to merge)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n revision 6\n \n $ hg tip -q\n- 6:faa2e4234c7a\n- $ hg verify\n- checking changesets\n- checking manifests\n- crosschecking files in changesets and manifests\n- checking files\n- checked 7 changesets with 6 changes to 3 files\n+ 2:4ce51a113780\n+ $ hg verify\n+ abandoned transaction found - run hg recover\n+ checking changesets\n+ checking manifests\n+ crosschecking files in changesets and manifests\n+ checking files\n+ checked 3 changesets with 3 changes to 1 files\n $ hg rollback\n- repository tip rolled back to revision 2 (undo unbundle)\n+ no rollback information available\n+ [1]\n $ hg unbundle ../test-bundle-cset-7.hg\n- adding changesets\n- adding manifests\n- adding file changes\n- added 2 changesets with 2 changes to 2 files\n- new changesets 93ee6ab32777:916f1afdef90 (2 drafts)\n- (run \'hg update\' to get a working copy)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n revision 4\n \n $ hg tip -q\n- 4:916f1afdef90\n- $ hg verify\n- checking changesets\n- checking manifests\n- crosschecking files in changesets and manifests\n- checking files\n- checked 5 changesets with 5 changes to 2 files\n+ 2:4ce51a113780\n+ $ hg verify\n+ abandoned transaction found - run hg recover\n+ checking changesets\n+ checking manifests\n+ crosschecking files in changesets and manifests\n+ checking files\n+ checked 3 changesets with 3 changes to 1 files\n \n $ cd ../test\n $ hg merge 7\n', 2194, 2196, 'truncated \\uXXXX escape') decoding diff, sorry
test-bundle-type.t
--- c:/hgdev/src/tests/test-bundle-type.t
+++ c:/hgdev/src/tests/test-bundle-type.t.err
@@ -64,7 +64,8 @@
% test bundle type None
searching for changes
1 changesets found
- HG20 (esc)
+ /usr/bin/env: python3: $ENOENT$
+
Stream params: {}
changegroup -- {nbchanges: 1, version: 02} (mandatory: True)
c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
@@ -74,7 +75,8 @@
% test bundle type bzip2
searching for changes
1 changesets found
- HG20 (esc)
+ /usr/bin/env: python3: $ENOENT$
+
Stream params: {Compression: BZ}
changegroup -- {nbchanges: 1, version: 02} (mandatory: True)
c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
@@ -84,7 +86,8 @@
% test bundle type gzip
searching for changes
1 changesets found
- HG20 (esc)
+ /usr/bin/env: python3: $ENOENT$
+
Stream params: {Compression: GZ}
changegroup -- {nbchanges: 1, version: 02} (mandatory: True)
c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
@@ -94,7 +97,8 @@
% test bundle type none-v2
searching for changes
1 changesets found
- HG20 (esc)
+ /usr/bin/env: python3: $ENOENT$
+
Stream params: {}
changegroup -- {nbchanges: 1, version: 02} (mandatory: True)
c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
@@ -104,7 +108,8 @@
% test bundle type v2
searching for changes
1 changesets found
- HG20 (esc)
+ /usr/bin/env: python3: $ENOENT$
+
Stream params: {Compression: BZ}
changegroup -- {nbchanges: 1, version: 02} (mandatory: True)
c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
@@ -114,14 +119,16 @@
% test bundle type v1
searching for changes
1 changesets found
- HG10BZ
+ /usr/bin/env: python3: $ENOENT$
+
c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
bzip2-v1
% test bundle type gzip-v1
searching for changes
1 changesets found
- HG10GZ
+ /usr/bin/env: python3: $ENOENT$
+
c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
gzip-v1
@@ -147,17 +154,20 @@
$ hg bundle -a -t gzip-v2 gzip-v2.hg
1 changesets found
$ f --size gzip-v2.hg
- gzip-v2.hg: size=468
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ hg --config experimental.bundlecomplevel=1 bundle -a -t gzip-v2 gzip-v2-level1.hg
1 changesets found
$ f --size gzip-v2-level1.hg
- gzip-v2-level1.hg: size=475
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ hg --config experimental.bundlecomplevel.gzip=1 --config experimental.bundlelevel=9 bundle -a -t gzip-v2 gzip-v2-level1.hg
1 changesets found
$ f --size gzip-v2-level1.hg
- gzip-v2-level1.hg: size=475
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ cd ..
@@ -206,8 +216,7 @@
zstd is a valid engine but isn't available
$ hg -R t1 bundle -a -t zstd irrelevant.hg
- abort: compression engine zstd could not be loaded
- [255]
+ 1 changesets found
#endif
test-bundle.t
--- c:/hgdev/src/tests/test-bundle.t
+++ c:/hgdev/src/tests/test-bundle.t.err
@@ -926,8 +926,8 @@
Test the option that create slim bundle
$ hg bundle -a --config devel.bundle.delta=p1 ./slim.hg
- 3 changesets found
+ 4 changesets found
Test the option that create and no-delta's bundle
$ hg bundle -a --config devel.bundle.delta=full ./full.hg
- 3 changesets found
+ 4 changesets found
test-bundle2-exchange.t#sshv1
test-bundle2-exchange.t#sshv2
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-bundle2-format.t\n+++ c:/hgdev/src/tests/test-bundle2-format.t.err\n@@ -262,8 +262,8 @@\n Test bundling\n \n $ hg bundle2 | f --hexdump\n- \n- 0000: 48 47 32 30 00 00 00 00 00 00 00 00 |HG20........|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n Test timeouts during bundling\n $ hg bundle2 --timeout --debug --config devel.bundle2.debug=yes\n@@ -313,9 +313,8 @@\n Test generation simple option\n \n $ hg bundle2 --param \'caution\' | f --hexdump\n- \n- 0000: 48 47 32 30 00 00 00 07 63 61 75 74 69 6f 6e 00 |HG20....caution.|\n- 0010: 00 00 00 |...|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n Test unbundling\n \n@@ -327,9 +326,8 @@\n Test generation multiple option\n \n $ hg bundle2 --param \'caution\' --param \'meal\' | f --hexdump\n- \n- 0000: 48 47 32 30 00 00 00 0c 63 61 75 74 69 6f 6e 20 |HG20....caution |\n- 0010: 6d 65 61 6c 00 00 00 00 |meal....|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n Test unbundling\n \n@@ -345,10 +343,8 @@\n Test generation\n \n $ hg bundle2 --param \'caution\' --param \'meal=vegan\' --param \'elephants\' | f --hexdump\n- \n- 0000: 48 47 32 30 00 00 00 1c 63 61 75 74 69 6f 6e 20 |HG20....caution |\n- 0010: 6d 65 61 6c 3d 76 65 67 61 6e 20 65 6c 65 70 68 |meal=vegan eleph|\n- 0020: 61 6e 74 73 00 00 00 00 |ants....|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n Test unbundling\n \n@@ -366,11 +362,8 @@\n Test generation\n \n $ hg bundle2 --param \'e|! 7/=babar%#==tutu\' --param simple | f --hexdump\n- \n- 0000: 48 47 32 30 00 00 00 29 65 25 37 43 25 32 31 25 |HG20...)e%7C%21%|\n- 0010: 32 30 37 2f 3d 62 61 62 61 72 25 32 35 25 32 33 |207/=babar%25%23|\n- 0020: 25 33 44 25 33 44 74 75 74 75 20 73 69 6d 70 6c |%3D%3Dtutu simpl|\n- 0030: 65 00 00 00 00 |e....|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n Test unbundling\n \n@@ -403,11 +396,8 @@\n file content is ok\n \n $ f --hexdump ../out.hg2\n- ../out.hg2:\n- 0000: 48 47 32 30 00 00 00 29 65 25 37 43 25 32 31 25 |HG20...)e%7C%21%|\n- 0010: 32 30 37 2f 3d 62 61 62 61 72 25 32 35 25 32 33 |207/=babar%25%23|\n- 0020: 25 33 44 25 33 44 74 75 74 75 20 73 69 6d 70 6c |%3D%3Dtutu simpl|\n- 0030: 65 00 00 00 00 |e....|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n unbundling debug\n \n@@ -490,33 +480,8 @@\n bundle2-output: end of bundle\n \n $ f --hexdump ../parts.hg2\n- ../parts.hg2:\n- 0000: 48 47 32 30 00 00 00 00 00 00 00 11 0a 74 65 73 |HG20.........tes|\n- 0010: 74 3a 65 6d 70 74 79 00 00 00 00 00 00 00 00 00 |t:empty.........|\n- 0020: 00 00 00 00 11 0a 74 65 73 74 3a 65 6d 70 74 79 |......test:empty|\n- 0030: 00 00 00 01 00 00 00 00 00 00 00 00 00 10 09 74 |...............t|\n- 0040: 65 73 74 3a 73 6f 6e 67 00 00 00 02 00 00 00 00 |est:song........|\n- 0050: 00 b2 50 61 74 61 6c 69 20 44 69 72 61 70 61 74 |..Patali Dirapat|\n- 0060: 61 2c 20 43 72 6f 6d 64 61 20 43 72 6f 6d 64 61 |a, Cromda Cromda|\n- 0070: 20 52 69 70 61 6c 6f 2c 20 50 61 74 61 20 50 61 | Ripalo, Pata Pa|\n- 0080: 74 61 2c 20 4b 6f 20 4b 6f 20 4b 6f 0a 42 6f 6b |ta, Ko Ko Ko.Bok|\n- 0090: 6f 72 6f 20 44 69 70 6f 75 6c 69 74 6f 2c 20 52 |oro Dipoulito, R|\n- 00a0: 6f 6e 64 69 20 52 6f 6e 64 69 20 50 65 70 69 6e |ondi Rondi Pepin|\n- 00b0: 6f 2c 20 50 61 74 61 20 50 61 74 61 2c 20 4b 6f |o, Pata Pata, Ko|\n- 00c0: 20 4b 6f 20 4b 6f 0a 45 6d 61 6e 61 20 4b 61 72 | Ko Ko.Emana Kar|\n- 00d0: 61 73 73 6f 6c 69 2c 20 4c 6f 75 63 72 61 20 4c |assoli, Loucra L|\n- 00e0: 6f 75 63 72 61 20 50 6f 6e 70 6f 6e 74 6f 2c 20 |oucra Ponponto, |\n- 00f0: 50 61 74 61 20 50 61 74 61 2c 20 4b 6f 20 4b 6f |Pata Pata, Ko Ko|\n- 0100: 20 4b 6f 2e 00 00 00 00 00 00 00 16 0f 74 65 73 | Ko..........tes|\n- 0110: 74 3a 64 65 62 75 67 72 65 70 6c 79 00 00 00 03 |t:debugreply....|\n- 0120: 00 00 00 00 00 00 00 00 00 2b 09 74 65 73 74 3a |.........+.test:|\n- 0130: 6d 61 74 68 00 00 00 04 02 01 02 04 01 04 07 03 |math............|\n- 0140: 70 69 33 2e 31 34 65 32 2e 37 32 63 6f 6f 6b 69 |pi3.14e2.72cooki|\n- 0150: 6e 67 72 61 77 00 00 00 02 34 32 00 00 00 00 00 |ngraw....42.....|\n- 0160: 00 00 1d 09 74 65 73 74 3a 73 6f 6e 67 00 00 00 |....test:song...|\n- 0170: 05 01 00 0b 00 72 61 6e 64 6f 6d 70 61 72 61 6d |.....randomparam|\n- 0180: 00 00 00 00 00 00 00 10 09 74 65 73 74 3a 70 69 |.........test:pi|\n- 0190: 6e 67 00 00 00 06 00 00 00 00 00 00 00 00 00 00 |ng..............|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n \n $ hg statbundle2 < ../parts.hg2\n@@ -714,9 +679,50 @@\n Bokoro Dipoulito, Rondi Rondi Pepino, Pata Pata, Ko Ko Ko\n Emana Karassoli, Loucra Loucra Ponponto, Pata Pata, Ko Ko Ko.\n debugreply: no reply\n- 0 unread bytes\n- abort: missing support for test:unknown\n- [255]\n+ ** Unknown exception encountered with possibly-broken third-party extension "bundle2" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "bundle2" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: bundle2\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "$TESTTMP/bundle2.py", line 185, in cmdunbundle2\n+ tr.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n Unbundle with an unknown mandatory part parameters\n (should abort)\n@@ -724,311 +730,87 @@\n $ hg bundle2 --unknownparams ../unknown.hg2\n \n $ hg unbundle2 < ../unknown.hg2\n- 0 unread bytes\n- abort: missing support for test:song - randomparams\n+ 50 unread bytes\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n unbundle with a reply\n \n $ hg bundle2 --parts --reply ../parts-reply.hg2\n $ hg unbundle2 ../reply.hg2 < ../parts-reply.hg2\n- 0 unread bytes\n- 3 total verses sung\n+ 504 unread bytes\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n The reply is a bundle\n \n $ f --hexdump ../reply.hg2\n- ../reply.hg2:\n- 0000: 48 47 32 30 00 00 00 00 00 00 00 1b 06 6f 75 74 |HG20.........out|\n- 0010: 70 75 74 00 00 00 00 00 01 0b 01 69 6e 2d 72 65 |put........in-re|\n- 0020: 70 6c 79 2d 74 6f 33 00 00 00 d9 54 68 65 20 63 |ply-to3....The c|\n- 0030: 68 6f 69 72 20 73 74 61 72 74 73 20 73 69 6e 67 |hoir starts sing|\n- 0040: 69 6e 67 3a 0a 20 20 20 20 50 61 74 61 6c 69 20 |ing:. Patali |\n- 0050: 44 69 72 61 70 61 74 61 2c 20 43 72 6f 6d 64 61 |Dirapata, Cromda|\n- 0060: 20 43 72 6f 6d 64 61 20 52 69 70 61 6c 6f 2c 20 | Cromda Ripalo, |\n- 0070: 50 61 74 61 20 50 61 74 61 2c 20 4b 6f 20 4b 6f |Pata Pata, Ko Ko|\n- 0080: 20 4b 6f 0a 20 20 20 20 42 6f 6b 6f 72 6f 20 44 | Ko. Bokoro D|\n- 0090: 69 70 6f 75 6c 69 74 6f 2c 20 52 6f 6e 64 69 20 |ipoulito, Rondi |\n- 00a0: 52 6f 6e 64 69 20 50 65 70 69 6e 6f 2c 20 50 61 |Rondi Pepino, Pa|\n- 00b0: 74 61 20 50 61 74 61 2c 20 4b 6f 20 4b 6f 20 4b |ta Pata, Ko Ko K|\n- 00c0: 6f 0a 20 20 20 20 45 6d 61 6e 61 20 4b 61 72 61 |o. Emana Kara|\n- 00d0: 73 73 6f 6c 69 2c 20 4c 6f 75 63 72 61 20 4c 6f |ssoli, Loucra Lo|\n- 00e0: 75 63 72 61 20 50 6f 6e 70 6f 6e 74 6f 2c 20 50 |ucra Ponponto, P|\n- 00f0: 61 74 61 20 50 61 74 61 2c 20 4b 6f 20 4b 6f 20 |ata Pata, Ko Ko |\n- 0100: 4b 6f 2e 0a 00 00 00 00 00 00 00 1b 06 6f 75 74 |Ko...........out|\n- 0110: 70 75 74 00 00 00 01 00 01 0b 01 69 6e 2d 72 65 |put........in-re|\n- 0120: 70 6c 79 2d 74 6f 34 00 00 00 c9 64 65 62 75 67 |ply-to4....debug|\n- 0130: 72 65 70 6c 79 3a 20 63 61 70 61 62 69 6c 69 74 |reply: capabilit|\n- 0140: 69 65 73 3a 0a 64 65 62 75 67 72 65 70 6c 79 3a |ies:.debugreply:|\n- 0150: 20 20 20 20 20 27 63 69 74 79 3d 21 27 0a 64 65 | \'city=!\'.de|\n- 0160: 62 75 67 72 65 70 6c 79 3a 20 20 20 20 20 20 20 |bugreply: |\n- 0170: 20 20 27 63 65 6c 65 73 74 65 2c 76 69 6c 6c 65 | \'celeste,ville|\n- 0180: 27 0a 64 65 62 75 67 72 65 70 6c 79 3a 20 20 20 |\'.debugreply: |\n- 0190: 20 20 27 65 6c 65 70 68 61 6e 74 73 27 0a 64 65 | \'elephants\'.de|\n- 01a0: 62 75 67 72 65 70 6c 79 3a 20 20 20 20 20 20 20 |bugreply: |\n- 01b0: 20 20 27 62 61 62 61 72 27 0a 64 65 62 75 67 72 | \'babar\'.debugr|\n- 01c0: 65 70 6c 79 3a 20 20 20 20 20 20 20 20 20 27 63 |eply: \'c|\n- 01d0: 65 6c 65 73 74 65 27 0a 64 65 62 75 67 72 65 70 |eleste\'.debugrep|\n- 01e0: 6c 79 3a 20 20 20 20 20 27 70 69 6e 67 2d 70 6f |ly: \'ping-po|\n- 01f0: 6e 67 27 0a 00 00 00 00 00 00 00 1e 09 74 65 73 |ng\'..........tes|\n- 0200: 74 3a 70 6f 6e 67 00 00 00 02 01 00 0b 01 69 6e |t:pong........in|\n- 0210: 2d 72 65 70 6c 79 2d 74 6f 37 00 00 00 00 00 00 |-reply-to7......|\n- 0220: 00 1b 06 6f 75 74 70 75 74 00 00 00 03 00 01 0b |...output.......|\n- 0230: 01 69 6e 2d 72 65 70 6c 79 2d 74 6f 37 00 00 00 |.in-reply-to7...|\n- 0240: 3d 72 65 63 65 69 76 65 64 20 70 69 6e 67 20 72 |=received ping r|\n- 0250: 65 71 75 65 73 74 20 28 69 64 20 37 29 0a 72 65 |equest (id 7).re|\n- 0260: 70 6c 79 69 6e 67 20 74 6f 20 70 69 6e 67 20 72 |plying to ping r|\n- 0270: 65 71 75 65 73 74 20 28 69 64 20 37 29 0a 00 00 |equest (id 7)...|\n- 0280: 00 00 00 00 00 00 |......|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n The reply is valid\n \n $ hg statbundle2 < ../reply.hg2\n- options count: 0\n- :output:\n- mandatory: 0\n- advisory: 1\n- payload: 217 bytes\n- :output:\n- mandatory: 0\n- advisory: 1\n- payload: 201 bytes\n- :test:pong:\n- mandatory: 1\n- advisory: 0\n- payload: 0 bytes\n- :output:\n- mandatory: 0\n- advisory: 1\n- payload: 61 bytes\n- parts count: 4\n+ $TESTTMP.sh: line 315: ../reply.hg2: $ENOENT$\n+ [1]\n \n Unbundle the reply to get the output:\n \n $ hg unbundle2 < ../reply.hg2\n- remote: The choir starts singing:\n- remote: Patali Dirapata, Cromda Cromda Ripalo, Pata Pata, Ko Ko Ko\n- remote: Bokoro Dipoulito, Rondi Rondi Pepino, Pata Pata, Ko Ko Ko\n- remote: Emana Karassoli, Loucra Loucra Ponponto, Pata Pata, Ko Ko Ko.\n- remote: debugreply: capabilities:\n- remote: debugreply: \'city=!\'\n- remote: debugreply: \'celeste,ville\'\n- remote: debugreply: \'elephants\'\n- remote: debugreply: \'babar\'\n- remote: debugreply: \'celeste\'\n- remote: debugreply: \'ping-pong\'\n- remote: received ping request (id 7)\n- remote: replying to ping request (id 7)\n- 0 unread bytes\n+ $TESTTMP.sh: line 317: ../reply.hg2: $ENOENT$\n+ [1]\n \n Test push race detection\n \n $ hg bundle2 --pushrace ../part-race.hg2\n \n $ hg unbundle2 < ../part-race.hg2\n- 0 unread bytes\n- abort: push race: remote repository changed while pushing - please try again\n+ 62 unread bytes\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n Support for changegroup\n ===================================\n \n $ hg unbundle $TESTDIR/bundles/rebase.hg\n- adding changesets\n- adding manifests\n- adding file changes\n- added 8 changesets with 7 changes to 7 files (+3 heads)\n- new changesets cd010b8cd998:02de42196ebe (8 drafts)\n- (run \'hg heads\' to see heads, \'hg merge\' to merge)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg log -G\n- o 8:02de42196ebe draft Nicolas Dumazet <nicdumz.commits@gmail.com> H\n- |\n- | o 7:eea13746799a draft Nicolas Dumazet <nicdumz.commits@gmail.com> G\n- |/|\n- o | 6:24b6387c8c8c draft Nicolas Dumazet <nicdumz.commits@gmail.com> F\n- | |\n- | o 5:9520eea781bc draft Nicolas Dumazet <nicdumz.commits@gmail.com> E\n- |/\n- | o 4:32af7686d403 draft Nicolas Dumazet <nicdumz.commits@gmail.com> D\n- | |\n- | o 3:5fddd98957c8 draft Nicolas Dumazet <nicdumz.commits@gmail.com> C\n- | |\n- | o 2:42ccdea3bb16 draft Nicolas Dumazet <nicdumz.commits@gmail.com> B\n- |/\n- o 1:cd010b8cd998 draft Nicolas Dumazet <nicdumz.commits@gmail.com> A\n- \n @ 0:3903775176ed draft test a\n \n \n $ hg bundle2 --debug --config progress.debug=true --config devel.bundle2.debug=true --rev \'8+7+5+4\' ../rev.hg2\n- 4 changesets found\n- list of changesets:\n- 32af7686d403cf45b5d95f2d70cebea587ac806a\n- 9520eea781bcca16c1e15acc0ba14335a0e8e5ba\n- eea13746799a9e0bfd88f29d3c2e9dc9389f524f\n- 02de42196ebee42ef284b6780a87cdc96e8eaab6\n- bundle2-output-bundle: "HG20", 1 parts total\n- bundle2-output: start emission of HG20 stream\n- bundle2-output: bundle parameter: \n- bundle2-output: start of parts\n- bundle2-output: bundle part: "changegroup"\n- bundle2-output-part: "changegroup" (advisory) streamed payload\n- bundle2-output: part 0: "changegroup"\n- bundle2-output: header chunk size: 18\n- changesets: 1/4 chunks (25.00%)\n- changesets: 2/4 chunks (50.00%)\n- changesets: 3/4 chunks (75.00%)\n- changesets: 4/4 chunks (100.00%)\n- manifests: 1/4 chunks (25.00%)\n- manifests: 2/4 chunks (50.00%)\n- manifests: 3/4 chunks (75.00%)\n- manifests: 4/4 chunks (100.00%)\n- files: D 1/3 files (33.33%)\n- files: E 2/3 files (66.67%)\n- files: H 3/3 files (100.00%)\n- bundle2-output: payload chunk size: 1555\n- bundle2-output: closing payload chunk\n- bundle2-output: end of bundle\n+ abort: unknown revision \'8\'\n+ [255]\n \n $ f --hexdump ../rev.hg2\n- ../rev.hg2:\n- 0000: 48 47 32 30 00 00 00 00 00 00 00 12 0b 63 68 61 |HG20.........cha|\n- 0010: 6e 67 65 67 72 6f 75 70 00 00 00 00 00 00 00 00 |ngegroup........|\n- 0020: 06 13 00 00 00 a4 32 af 76 86 d4 03 cf 45 b5 d9 |......2.v....E..|\n- 0030: 5f 2d 70 ce be a5 87 ac 80 6a 5f dd d9 89 57 c8 |_-p......j_...W.|\n- 0040: a5 4a 4d 43 6d fe 1d a9 d8 7f 21 a1 b9 7b 00 00 |.JMCm.....!..{..|\n- 0050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0060: 00 00 32 af 76 86 d4 03 cf 45 b5 d9 5f 2d 70 ce |..2.v....E.._-p.|\n- 0070: be a5 87 ac 80 6a 00 00 00 00 00 00 00 29 00 00 |.....j.......)..|\n- 0080: 00 29 36 65 31 66 34 63 34 37 65 63 62 35 33 33 |.)6e1f4c47ecb533|\n- 0090: 66 66 64 30 63 38 65 35 32 63 64 63 38 38 61 66 |ffd0c8e52cdc88af|\n- 00a0: 62 36 63 64 33 39 65 32 30 63 0a 00 00 00 66 00 |b6cd39e20c....f.|\n- 00b0: 00 00 68 00 00 00 02 44 0a 00 00 00 69 00 00 00 |..h....D....i...|\n- 00c0: 6a 00 00 00 01 44 00 00 00 a4 95 20 ee a7 81 bc |j....D..... ....|\n- 00d0: ca 16 c1 e1 5a cc 0b a1 43 35 a0 e8 e5 ba cd 01 |....Z...C5......|\n- 00e0: 0b 8c d9 98 f3 98 1a 5a 81 15 f9 4f 8d a4 ab 50 |.......Z...O...P|\n- 00f0: 60 89 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |`...............|\n- 0100: 00 00 00 00 00 00 95 20 ee a7 81 bc ca 16 c1 e1 |....... ........|\n- 0110: 5a cc 0b a1 43 35 a0 e8 e5 ba 00 00 00 00 00 00 |Z...C5..........|\n- 0120: 00 29 00 00 00 29 34 64 65 63 65 39 63 38 32 36 |.)...)4dece9c826|\n- 0130: 66 36 39 34 39 30 35 30 37 62 39 38 63 36 33 38 |f69490507b98c638|\n- 0140: 33 61 33 30 30 39 62 32 39 35 38 33 37 64 0a 00 |3a3009b295837d..|\n- 0150: 00 00 66 00 00 00 68 00 00 00 02 45 0a 00 00 00 |..f...h....E....|\n- 0160: 69 00 00 00 6a 00 00 00 01 45 00 00 00 a2 ee a1 |i...j....E......|\n- 0170: 37 46 79 9a 9e 0b fd 88 f2 9d 3c 2e 9d c9 38 9f |7Fy.......<...8.|\n- 0180: 52 4f 24 b6 38 7c 8c 8c ae 37 17 88 80 f3 fa 95 |RO$.8|...7......|\n- 0190: de d3 cb 1c f7 85 95 20 ee a7 81 bc ca 16 c1 e1 |....... ........|\n- 01a0: 5a cc 0b a1 43 35 a0 e8 e5 ba ee a1 37 46 79 9a |Z...C5......7Fy.|\n- 01b0: 9e 0b fd 88 f2 9d 3c 2e 9d c9 38 9f 52 4f 00 00 |......<...8.RO..|\n- 01c0: 00 00 00 00 00 29 00 00 00 29 33 36 35 62 39 33 |.....)...)365b93|\n- 01d0: 64 35 37 66 64 66 34 38 31 34 65 32 62 35 39 31 |d57fdf4814e2b591|\n- 01e0: 31 64 36 62 61 63 66 66 32 62 31 32 30 31 34 34 |1d6bacff2b120144|\n- 01f0: 34 31 0a 00 00 00 66 00 00 00 68 00 00 00 00 00 |41....f...h.....|\n- 0200: 00 00 69 00 00 00 6a 00 00 00 01 47 00 00 00 a4 |..i...j....G....|\n- 0210: 02 de 42 19 6e be e4 2e f2 84 b6 78 0a 87 cd c9 |..B.n......x....|\n- 0220: 6e 8e aa b6 24 b6 38 7c 8c 8c ae 37 17 88 80 f3 |n...$.8|...7....|\n- 0230: fa 95 de d3 cb 1c f7 85 00 00 00 00 00 00 00 00 |................|\n- 0240: 00 00 00 00 00 00 00 00 00 00 00 00 02 de 42 19 |..............B.|\n- 0250: 6e be e4 2e f2 84 b6 78 0a 87 cd c9 6e 8e aa b6 |n......x....n...|\n- 0260: 00 00 00 00 00 00 00 29 00 00 00 29 38 62 65 65 |.......)...)8bee|\n- 0270: 34 38 65 64 63 37 33 31 38 35 34 31 66 63 30 30 |48edc7318541fc00|\n- 0280: 31 33 65 65 34 31 62 30 38 39 32 37 36 61 38 63 |13ee41b089276a8c|\n- 0290: 32 34 62 66 0a 00 00 00 66 00 00 00 66 00 00 00 |24bf....f...f...|\n- 02a0: 02 48 0a 00 00 00 67 00 00 00 68 00 00 00 01 48 |.H....g...h....H|\n- 02b0: 00 00 00 00 00 00 00 8b 6e 1f 4c 47 ec b5 33 ff |........n.LG..3.|\n- 02c0: d0 c8 e5 2c dc 88 af b6 cd 39 e2 0c 66 a5 a0 18 |...,.....9..f...|\n- 02d0: 17 fd f5 23 9c 27 38 02 b5 b7 61 8d 05 1c 89 e4 |...#.\'8...a.....|\n- 02e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 02f0: 00 00 00 00 32 af 76 86 d4 03 cf 45 b5 d9 5f 2d |....2.v....E.._-|\n- 0300: 70 ce be a5 87 ac 80 6a 00 00 00 81 00 00 00 81 |p......j........|\n- 0310: 00 00 00 2b 44 00 63 33 66 31 63 61 32 39 32 34 |...+D.c3f1ca2924|\n- 0320: 63 31 36 61 31 39 62 30 36 35 36 61 38 34 39 30 |c16a19b0656a8490|\n- 0330: 30 65 35 30 34 65 35 62 30 61 65 63 32 64 0a 00 |0e504e5b0aec2d..|\n- 0340: 00 00 8b 4d ec e9 c8 26 f6 94 90 50 7b 98 c6 38 |...M...&...P{..8|\n- 0350: 3a 30 09 b2 95 83 7d 00 7d 8c 9d 88 84 13 25 f5 |:0....}.}.....%.|\n- 0360: c6 b0 63 71 b3 5b 4e 8a 2b 1a 83 00 00 00 00 00 |..cq.[N.+.......|\n- 0370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 95 |................|\n- 0380: 20 ee a7 81 bc ca 16 c1 e1 5a cc 0b a1 43 35 a0 | ........Z...C5.|\n- 0390: e8 e5 ba 00 00 00 2b 00 00 00 ac 00 00 00 2b 45 |......+.......+E|\n- 03a0: 00 39 63 36 66 64 30 33 35 30 61 36 63 30 64 30 |.9c6fd0350a6c0d0|\n- 03b0: 63 34 39 64 34 61 39 63 35 30 31 37 63 66 30 37 |c49d4a9c5017cf07|\n- 03c0: 30 34 33 66 35 34 65 35 38 0a 00 00 00 8b 36 5b |043f54e58.....6[|\n- 03d0: 93 d5 7f df 48 14 e2 b5 91 1d 6b ac ff 2b 12 01 |....H.....k..+..|\n- 03e0: 44 41 28 a5 84 c6 5e f1 21 f8 9e b6 6a b7 d0 bc |DA(...^.!...j...|\n- 03f0: 15 3d 80 99 e7 ce 4d ec e9 c8 26 f6 94 90 50 7b |.=....M...&...P{|\n- 0400: 98 c6 38 3a 30 09 b2 95 83 7d ee a1 37 46 79 9a |..8:0....}..7Fy.|\n- 0410: 9e 0b fd 88 f2 9d 3c 2e 9d c9 38 9f 52 4f 00 00 |......<...8.RO..|\n- 0420: 00 56 00 00 00 56 00 00 00 2b 46 00 32 32 62 66 |.V...V...+F.22bf|\n- 0430: 63 66 64 36 32 61 32 31 61 33 32 38 37 65 64 62 |cfd62a21a3287edb|\n- 0440: 64 34 64 36 35 36 32 31 38 64 30 66 35 32 35 65 |d4d656218d0f525e|\n- 0450: 64 37 36 61 0a 00 00 00 97 8b ee 48 ed c7 31 85 |d76a.......H..1.|\n- 0460: 41 fc 00 13 ee 41 b0 89 27 6a 8c 24 bf 28 a5 84 |A....A..\'j.$.(..|\n- 0470: c6 5e f1 21 f8 9e b6 6a b7 d0 bc 15 3d 80 99 e7 |.^.!...j....=...|\n- 0480: ce 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0490: 00 00 00 00 00 02 de 42 19 6e be e4 2e f2 84 b6 |.......B.n......|\n- 04a0: 78 0a 87 cd c9 6e 8e aa b6 00 00 00 2b 00 00 00 |x....n......+...|\n- 04b0: 56 00 00 00 00 00 00 00 81 00 00 00 81 00 00 00 |V...............|\n- 04c0: 2b 48 00 38 35 30 30 31 38 39 65 37 34 61 39 65 |+H.8500189e74a9e|\n- 04d0: 30 34 37 35 65 38 32 32 30 39 33 62 63 37 64 62 |0475e822093bc7db|\n- 04e0: 30 64 36 33 31 61 65 62 30 62 34 0a 00 00 00 00 |0d631aeb0b4.....|\n- 04f0: 00 00 00 05 44 00 00 00 62 c3 f1 ca 29 24 c1 6a |....D...b...)$.j|\n- 0500: 19 b0 65 6a 84 90 0e 50 4e 5b 0a ec 2d 00 00 00 |..ej...PN[..-...|\n- 0510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0530: 00 00 00 00 00 32 af 76 86 d4 03 cf 45 b5 d9 5f |.....2.v....E.._|\n- 0540: 2d 70 ce be a5 87 ac 80 6a 00 00 00 00 00 00 00 |-p......j.......|\n- 0550: 00 00 00 00 02 44 0a 00 00 00 00 00 00 00 05 45 |.....D.........E|\n- 0560: 00 00 00 62 9c 6f d0 35 0a 6c 0d 0c 49 d4 a9 c5 |...b.o.5.l..I...|\n- 0570: 01 7c f0 70 43 f5 4e 58 00 00 00 00 00 00 00 00 |.|.pC.NX........|\n- 0580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 05a0: 95 20 ee a7 81 bc ca 16 c1 e1 5a cc 0b a1 43 35 |. ........Z...C5|\n- 05b0: a0 e8 e5 ba 00 00 00 00 00 00 00 00 00 00 00 02 |................|\n- 05c0: 45 0a 00 00 00 00 00 00 00 05 48 00 00 00 62 85 |E.........H...b.|\n- 05d0: 00 18 9e 74 a9 e0 47 5e 82 20 93 bc 7d b0 d6 31 |...t..G^. ..}..1|\n- 05e0: ae b0 b4 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 05f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|\n- 0600: 00 00 00 00 00 00 00 00 00 00 00 02 de 42 19 6e |.............B.n|\n- 0610: be e4 2e f2 84 b6 78 0a 87 cd c9 6e 8e aa b6 00 |......x....n....|\n- 0620: 00 00 00 00 00 00 00 00 00 00 02 48 0a 00 00 00 |...........H....|\n- 0630: 00 00 00 00 00 00 00 00 00 00 00 00 00 |.............|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n $ hg debugbundle ../rev.hg2\n- Stream params: {}\n- changegroup -- {} (mandatory: False)\n- 32af7686d403cf45b5d95f2d70cebea587ac806a\n- 9520eea781bcca16c1e15acc0ba14335a0e8e5ba\n- eea13746799a9e0bfd88f29d3c2e9dc9389f524f\n- 02de42196ebee42ef284b6780a87cdc96e8eaab6\n+ abort: ../rev.hg2: $ENOENT$\n+ [255]\n $ hg unbundle ../rev.hg2\n- adding changesets\n- adding manifests\n- adding file changes\n- added 0 changesets with 0 changes to 3 files\n- (run \'hg update\' to get a working copy)\n+ abort: ../rev.hg2: $ENOENT$\n+ [255]\n \n with reply\n \n $ hg bundle2 --rev \'8+7+5+4\' --reply ../rev-rr.hg2\n+ abort: unknown revision \'8\'\n+ [255]\n $ hg unbundle2 ../rev-reply.hg2 < ../rev-rr.hg2\n- added 0 changesets with 0 changes to 3 files\n- 0 unread bytes\n- addchangegroup return: 1\n+ $TESTTMP.sh: line 337: ../rev-rr.hg2: $ENOENT$\n+ [1]\n \n $ f --hexdump ../rev-reply.hg2\n- ../rev-reply.hg2:\n- 0000: 48 47 32 30 00 00 00 00 00 00 00 2f 11 72 65 70 |HG20......./.rep|\n- 0010: 6c 79 3a 63 68 61 6e 67 65 67 72 6f 75 70 00 00 |ly:changegroup..|\n- 0020: 00 00 00 02 0b 01 06 01 69 6e 2d 72 65 70 6c 79 |........in-reply|\n- 0030: 2d 74 6f 31 72 65 74 75 72 6e 31 00 00 00 00 00 |-to1return1.....|\n- 0040: 00 00 1b 06 6f 75 74 70 75 74 00 00 00 01 00 01 |....output......|\n- 0050: 0b 01 69 6e 2d 72 65 70 6c 79 2d 74 6f 31 00 00 |..in-reply-to1..|\n- 0060: 00 37 61 64 64 69 6e 67 20 63 68 61 6e 67 65 73 |.7adding changes|\n- 0070: 65 74 73 0a 61 64 64 69 6e 67 20 6d 61 6e 69 66 |ets.adding manif|\n- 0080: 65 73 74 73 0a 61 64 64 69 6e 67 20 66 69 6c 65 |ests.adding file|\n- 0090: 20 63 68 61 6e 67 65 73 0a 00 00 00 00 00 00 00 | changes........|\n- 00a0: 00 |.|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n Check handling of exception during generation.\n ----------------------------------------------\n@@ -1040,21 +822,15 @@\n Should still be a valid bundle\n \n $ f --hexdump ../genfailed.hg2\n- ../genfailed.hg2:\n- 0000: 48 47 32 30 00 00 00 00 00 00 00 0d 06 6f 75 74 |HG20.........out|\n- 0010: 70 75 74 00 00 00 00 00 00 ff ff ff ff 00 00 00 |put.............|\n- 0020: 48 0b 65 72 72 6f 72 3a 61 62 6f 72 74 00 00 00 |H.error:abort...|\n- 0030: 00 01 00 07 2d 6d 65 73 73 61 67 65 75 6e 65 78 |....-messageunex|\n- 0040: 70 65 63 74 65 64 20 65 72 72 6f 72 3a 20 53 6f |pected error: So|\n- 0050: 6d 65 6f 6e 65 20 73 65 74 20 75 70 20 75 73 20 |meone set up us |\n- 0060: 74 68 65 20 62 6f 6d 62 21 00 00 00 00 00 00 00 |the bomb!.......|\n- 0070: 00 |.|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n And its handling on the other size raise a clean exception\n \n $ cat ../genfailed.hg2 | hg unbundle2\n- 0 unread bytes\n- abort: unexpected error: Someone set up us the bomb!\n+ 113 unread bytes\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n Test compression\n@@ -1064,175 +840,45 @@\n ----------------------------------\n \n $ hg bundle2 --compress GZ --rev \'8+7+5+4\' ../rev.hg2.bz\n+ abort: unknown revision \'8\'\n+ [255]\n $ f --hexdump ../rev.hg2.bz\n- ../rev.hg2.bz:\n- 0000: 48 47 32 30 00 00 00 0e 43 6f 6d 70 72 65 73 73 |HG20....Compress|\n- 0010: 69 6f 6e 3d 47 5a 78 9c 95 94 7d 68 95 55 1c c7 |ion=GZx...}h.U..|\n- 0020: 9f 3b 31 e8 ce fa c3 65 be a0 a4 b4 52 b9 29 e7 |.;1....e....R.).|\n- 0030: f5 79 ce 89 fa 63 ed 5e 77 8b 9c c3 3f 2a 1c 68 |.y...c.^w...?*.h|\n- 0040: cf 79 9b dd 6a ae b0 28 74 b8 e5 96 5b bb 86 61 |.y..j..(t...[..a|\n- 0050: a3 15 6e 3a 71 c8 6a e8 a5 da 95 64 28 22 ce 69 |..n:q.j....d(".i|\n- 0060: cd 06 59 34 28 2b 51 2a 58 c3 17 56 2a 9a 9d 67 |..Y4(+Q*X..V*..g|\n- 0070: dc c6 35 9e c4 1d f8 9e 87 f3 9c f3 3b bf 0f bf |..5.........;...|\n- 0080: 97 e3 38 ce f4 42 b9 d6 af ae d2 55 af ae 7b ad |..8..B.....U..{.|\n- 0090: c6 c9 8d bb 8a ec b4 07 ed 7f fd ed d3 53 be 4e |.............S.N|\n- 00a0: f4 0e af 59 52 73 ea 50 d7 96 9e ba d4 9a 1f 87 |...YRs.P........|\n- 00b0: 9b 9f 1d e8 7a 6a 79 e9 cb 7f cf eb fe 7e d3 82 |....zjy......~..|\n- 00c0: ce 2f 36 38 21 23 cc 36 b7 b5 38 90 ab a1 21 92 |./68!#.6..8...!.|\n- 00d0: 78 5a 0a 8a b1 31 0a 48 a6 29 92 4a 32 e6 1b e1 |xZ...1.H.).J2...|\n- 00e0: 4a 85 b9 46 40 46 ed 61 63 b5 d6 aa 20 1e ac 5e |J..F@F.ac... ..^|\n- 00f0: b0 0a ae 8a c4 03 c6 d6 f9 a3 7b eb fb 4e de 7f |..........{..N..|\n- 0100: e4 97 55 5f 15 76 96 d2 5d bf 9d 3f 38 18 29 4c |..U_.v..]..?8.)L|\n- 0110: 0f b7 5d 6e 9b b3 aa 7e c6 d5 15 5b f7 7c 52 f1 |..]n...~...[.|R.|\n- 0120: 7c 73 18 63 98 6d 3e 23 51 5a 6a 2e 19 72 8d cb ||s.c.m>#QZj..r..|\n- 0130: 09 07 14 78 82 33 e9 62 86 7d 0c 00 17 88 53 86 |...x.3.b.}....S.|\n- 0140: 3d 75 0b 63 e2 16 c6 84 9d 76 8f 76 7a cb de fc |=u.c.....v.vz...|\n- 0150: a8 a3 f0 46 d3 a5 f6 c7 96 b6 9f 60 3b 57 ae 28 |...F.......`;W.(|\n- 0160: ce b2 8d e9 f4 3e 6f 66 53 dd e5 6b ad 67 be f9 |.....>ofS..k.g..|\n- 0170: 72 ee 5f 8d 61 3c 61 b6 f9 8c d8 a5 82 63 45 3d |r._.a<a......cE=|\n- 0180: a3 0c 61 90 68 24 28 87 50 b9 c2 97 c6 20 01 11 |..a.h$(.P.... ..|\n- 0190: 80 84 10 98 cf e8 e4 13 96 05 51 2c 38 f3 c4 ec |..........Q,8...|\n- 01a0: ea 43 e7 96 5e 6a c8 be 11 dd 32 78 a2 fa dd 8f |.C..^j....2x....|\n- 01b0: b3 61 84 61 51 0c b3 cd 27 64 42 6b c2 b4 92 1e |.a.aQ...\'dBk....|\n- 01c0: 86 8c 12 68 24 00 10 db 7f 50 00 c6 91 e7 fa 4c |...h$....P.....L|\n- 01d0: 22 22 cc bf 84 81 0a 92 c1 aa 2a c7 1b 49 e6 ee |""........*..I..|\n- 01e0: 6b a9 7e e0 e9 b2 91 5e 7c 73 68 e0 fc 23 3f 34 |k.~....^|sh..#?4|\n- 01f0: ed cf 0e f2 b3 d3 4c d7 ae 59 33 6f 8c 3d b8 63 |......L..Y3o.=.c|\n- 0200: 21 2b e8 3d e0 6f 9d 3a b7 f9 dc 24 2a b2 3e a7 |!+.=.o.:...$*.>.|\n- 0210: 58 dc 91 d8 40 e9 23 8e 88 84 ae 0f b9 00 2e b5 |X...@.#.........|\n- 0220: 74 36 f3 40 53 40 34 15 c0 d7 12 8d e7 bb 65 f9 |t6.@S@4.......e.|\n- 0230: c8 ef 03 0f ff f9 fe b6 8a 0d 6d fd ec 51 70 f7 |..........m..Qp.|\n- 0240: a7 ad 9b 6b 9d da 74 7b 53 43 d1 43 63 fd 19 f9 |...k..t{SC.Cc...|\n- 0250: ca 67 95 e5 ef c4 e6 6c 9e 44 e1 c5 ac 7a 82 6f |.g.....l.D...z.o|\n- 0260: c2 e1 d2 b5 2d 81 29 f0 5d 09 6c 6f 10 ae 88 cf |....-.).].lo....|\n- 0270: 25 05 d0 93 06 78 80 60 43 2d 10 1b 47 71 2b b7 |%....x.`C-..Gq+.|\n- 0280: 7f bb e9 a7 e4 7d 67 7b df 9b f7 62 cf cd d8 f4 |.....}g{...b....|\n- 0290: 48 bc 64 51 57 43 ff ea 8b 0b ae 74 64 53 07 86 |H.dQWC.....tdS..|\n- 02a0: fa 66 3c 5e f7 e1 af a7 c2 90 ff a7 be 9e c9 29 |.f<^...........)|\n- 02b0: b6 cc 41 48 18 69 94 8b 7c 04 7d 8c 98 a7 95 50 |..AH.i..|.}....P|\n- 02c0: 44 d9 d0 20 c8 14 30 14 51 ad 6c 16 03 94 0f 5a |D.. ..0.Q.l....Z|\n- 02d0: 46 93 7f 1c 87 8d 25 d7 9d a2 d1 92 4c f3 c2 54 |F.....%.....L..T|\n- 02e0: ba f8 70 18 ca 24 0a 29 96 43 71 f2 93 95 74 18 |..p..$.).Cq...t.|\n- 02f0: b5 65 c4 b8 f6 6c 5c 34 20 1e d5 0c 21 c0 b1 90 |.e...l\\4 ...!...|\n- 0300: 9e 12 40 b9 18 fa 5a 00 41 a2 39 d3 a9 c1 73 21 |..@...Z.A.9...s!|\n- 0310: 8e 5e 3c b9 b8 f8 48 6a 76 46 a7 1a b6 dd 5b 51 |.^<...HjvF....[Q|\n- 0320: 5e 19 1d 59 12 c6 32 89 02 9a c0 8f 4f b8 0a ba |^..Y..2.....O...|\n- 0330: 5e ec 58 37 44 a3 2f dd 33 ed c9 d3 dd c7 22 1b |^.X7D./.3.....".|\n- 0340: 2f d4 94 8e 95 3f 77 a7 ae 6e f3 32 8d bb 4a 4c |/....?w..n.2..JL|\n- 0350: b8 0a 5a 43 34 3a b3 3a d6 77 ff 5c b6 fa ad f9 |..ZC4:.:.w.\\....|\n- 0360: db fb 6a 33 df c1 7d 99 cf ef d4 d5 6d da 77 7c |..j3..}.....m.w||\n- 0370: 3b 19 fd af c5 3f f1 60 c3 17 |;....?.`..|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ hg debugbundle ../rev.hg2.bz\n- Stream params: {Compression: GZ}\n- changegroup -- {} (mandatory: False)\n- 32af7686d403cf45b5d95f2d70cebea587ac806a\n- 9520eea781bcca16c1e15acc0ba14335a0e8e5ba\n- eea13746799a9e0bfd88f29d3c2e9dc9389f524f\n- 02de42196ebee42ef284b6780a87cdc96e8eaab6\n+ abort: ../rev.hg2.bz: $ENOENT$\n+ [255]\n $ hg unbundle ../rev.hg2.bz\n- adding changesets\n- adding manifests\n- adding file changes\n- added 0 changesets with 0 changes to 3 files\n- (run \'hg update\' to get a working copy)\n+ abort: ../rev.hg2.bz: $ENOENT$\n+ [255]\n Simple case where it just work: BZ\n ----------------------------------\n \n $ hg bundle2 --compress BZ --rev \'8+7+5+4\' ../rev.hg2.bz\n+ abort: unknown revision \'8\'\n+ [255]\n $ f --hexdump ../rev.hg2.bz\n- ../rev.hg2.bz:\n- 0000: 48 47 32 30 00 00 00 0e 43 6f 6d 70 72 65 73 73 |HG20....Compress|\n- 0010: 69 6f 6e 3d 42 5a 42 5a 68 39 31 41 59 26 53 59 |ion=BZBZh91AY&SY|\n- 0020: a3 4b 18 3d 00 00 1a 7f ff ff bf 5f f6 ef ef 7f |.K.=......._....|\n- 0030: f6 3f f7 d1 d9 ff ff f7 6e ff ff 6e f7 f6 bd df |.?......n..n....|\n- 0040: b5 ab ff cf 67 f6 e7 7b f7 c0 02 d7 33 82 8b 51 |....g..{....3..Q|\n- 0050: 04 a5 53 d5 3d 27 a0 99 18 4d 0d 34 00 d1 a1 e8 |..S.=\'...M.4....|\n- 0060: 80 c8 7a 87 a9 a3 43 6a 3d 46 86 26 80 34 3d 40 |..z...Cj=F.&.4=@|\n- 0070: c8 c9 b5 34 f4 8f 48 0f 51 ea 34 34 fd 4d aa 19 |...4..H.Q.44.M..|\n- 0080: 03 40 0c 08 da 86 43 d4 f5 0f 42 1e a0 f3 54 33 |.@....C...B...T3|\n- 0090: 54 d3 13 4d 03 40 32 00 00 32 03 26 80 0d 00 0d |T..M.@2..2.&....|\n- 00a0: 00 68 c8 c8 03 20 32 30 98 8c 80 00 00 03 4d 00 |.h... 20......M.|\n- 00b0: c8 00 00 0d 00 00 22 99 a1 34 c2 64 a6 d5 34 1a |......"..4.d..4.|\n- 00c0: 00 00 06 86 83 4d 07 a8 d1 a0 68 01 a0 00 00 00 |.....M....h.....|\n- 00d0: 00 0d 06 80 00 00 00 0d 00 03 40 00 00 04 a4 a1 |..........@.....|\n- 00e0: 4d a9 89 89 b4 9a 32 0c 43 46 86 87 a9 8d 41 9a |M.....2.CF....A.|\n- 00f0: 98 46 9a 0d 31 32 1a 34 0d 0c 8d a2 0c 98 4d 06 |.F..12.4......M.|\n- 0100: 8c 40 c2 60 8d 0d 0c 20 c9 89 fa a0 d0 d3 21 a1 |.@.`... ......!.|\n- 0110: ea 34 d3 68 9e a6 d1 74 05 33 cb 66 96 93 28 64 |.4.h...t.3.f..(d|\n- 0120: 40 91 22 ac 55 9b ea 40 7b 38 94 e2 f8 06 00 cb |@.".U..@{8......|\n- 0130: 28 02 00 4d ab 40 24 10 43 18 cf 64 b4 06 83 0c |(..M.@$.C..d....|\n- 0140: 34 6c b4 a3 d4 0a 0a e4 a8 5c 4e 23 c0 c9 7a 31 |4l.......\\N#..z1|\n- 0150: 97 87 77 7a 64 88 80 8e 60 97 20 93 0f 8e eb c4 |..wzd...`. .....|\n- 0160: 62 a4 44 a3 52 20 b2 99 a9 2e e1 d7 29 4a 54 ac |b.D.R ......)JT.|\n- 0170: 44 7a bb cc 04 3d e0 aa bd 6a 33 5e 9b a2 57 36 |Dz...=...j3^..W6|\n- 0180: fa cb 45 bb 6d 3e c1 d9 d9 f5 83 69 8a d0 e0 e2 |..E.m>.....i....|\n- 0190: e7 ae 90 55 24 da 3f ab 78 c0 4c b4 56 a3 9e a4 |...U$.?.x.L.V...|\n- 01a0: af 9c 65 74 86 ec 6d dc 62 dc 33 ca c8 50 dd 9d |..et..m.b.3..P..|\n- 01b0: 98 8e 9e 59 20 f3 f0 42 91 4a 09 f5 75 8d 3d a5 |...Y ..B.J..u.=.|\n- 01c0: a5 15 cb 8d 10 63 b0 c2 2e b2 81 f7 c1 76 0e 53 |.....c.......v.S|\n- 01d0: 6c 0e 46 73 b5 ae 67 f9 4c 0b 45 6b a8 32 2a 2f |l.Fs..g.L.Ek.2*/|\n- 01e0: a2 54 a4 44 05 20 a1 38 d1 a4 c6 09 a8 2b 08 99 |.T.D. .8.....+..|\n- 01f0: a4 14 ae 8d a3 e3 aa 34 27 d8 44 ca c3 5d 21 8b |.......4\'.D..]!.|\n- 0200: 1a 1e 97 29 71 2b 09 4a 4a 55 55 94 58 65 b2 bc |...)q+.JJUU.Xe..|\n- 0210: f3 a5 90 26 36 76 67 7a 51 98 d6 8a 4a 99 50 b5 |...&6vgzQ...J.P.|\n- 0220: 99 8f 94 21 17 a9 8b f3 ad 4c 33 d4 2e 40 c8 0c |...!.....L3..@..|\n- 0230: 3b 90 53 39 db 48 02 34 83 48 d6 b3 99 13 d2 58 |;.S9.H.4.H.....X|\n- 0240: 65 8e 71 ac a9 06 95 f2 c4 8e b4 08 6b d3 0c ae |e.q.........k...|\n- 0250: d9 90 56 71 43 a7 a2 62 16 3e 50 63 d3 57 3c 2d |..VqC..b.>Pc.W<-|\n- 0260: 9f 0f 34 05 08 d8 a6 4b 59 31 54 66 3a 45 0c 8a |..4....KY1Tf:E..|\n- 0270: c7 90 3a f0 6a 83 1b f5 ca fb 80 2b 50 06 fb 51 |..:.j......+P..Q|\n- 0280: 7e a6 a4 d4 81 44 82 21 54 00 5b 1a 30 83 62 a3 |~....D.!T.[.0.b.|\n- 0290: 18 b6 24 19 1e 45 df 4d 5c db a6 af 5b ac 90 fa |..$..E.M\\...[...|\n- 02a0: 3e ed f9 ec 4c ba 36 ee d8 60 20 a7 c7 3b cb d1 |>...L.6..` ..;..|\n- 02b0: 90 43 7d 27 16 50 5d ad f4 14 07 0b 90 5c cc 6b |.C}\'.P]......\\.k|\n- 02c0: 8d 3f a6 88 f4 34 37 a8 cf 14 63 36 19 f7 3e 28 |.?...47...c6..>(|\n- 02d0: de 99 e8 16 a4 9d 0d 40 a1 a7 24 52 14 a6 72 62 |.......@..$R..rb|\n- 02e0: 59 5a ca 2d e5 51 90 78 88 d9 c6 c7 21 d0 f7 46 |YZ.-.Q.x....!..F|\n- 02f0: b2 04 46 44 4e 20 9c 12 b1 03 4e 25 e0 a9 0c 58 |..FDN ....N%...X|\n- 0300: 5b 1d 3c 93 20 01 51 de a9 1c 69 23 32 46 14 b4 |[.<. .Q...i#2F..|\n- 0310: 90 db 17 98 98 50 03 90 29 aa 40 b0 13 d8 43 d2 |.....P..).@...C.|\n- 0320: 5f c5 9d eb f3 f2 ad 41 e8 7a a9 ed a1 58 84 a6 |_......A.z...X..|\n- 0330: 42 bf d6 fc 24 82 c1 20 32 26 4a 15 a6 1d 29 7f |B...$.. 2&J...).|\n- 0340: 7e f4 3d 07 bc 62 9a 5b ec 44 3d 72 1d 41 8b 5c |~.=..b.[.D=r.A.\\|\n- 0350: 80 de 0e 62 9a 2e f8 83 00 d5 07 a0 9c c6 74 98 |...b..........t.|\n- 0360: 11 b2 5e a9 38 02 03 ee fd 86 5c f4 86 b3 ae da |..^.8.....\\.....|\n- 0370: 05 94 01 c5 c6 ea 18 e6 ba 2a ba b3 04 5c 96 89 |.........*...\\..|\n- 0380: 72 63 5b 10 11 f6 67 34 98 cb e4 c0 4e fa e6 99 |rc[...g4....N...|\n- 0390: 19 6e 50 e8 26 8d 0c 17 e0 be ef e1 8e 02 6f 32 |.nP.&.........o2|\n- 03a0: 82 dc 26 f8 a1 08 f3 8a 0d f3 c4 75 00 48 73 b8 |..&........u.Hs.|\n- 03b0: be 3b 0d 7f d0 fd c7 78 96 ec e0 03 80 68 4d 8d |.;.....x.....hM.|\n- 03c0: 43 8c d7 68 58 f9 50 f0 18 cb 21 58 1b 60 cd 1f |C..hX.P...!X.`..|\n- 03d0: 84 36 2e 16 1f 0a f7 4e 8f eb df 01 2d c2 79 0b |.6.....N....-.y.|\n- 03e0: f7 24 ea 0d e8 59 86 51 6e 1c 30 a3 ad 2f ee 8c |.$...Y.Qn.0../..|\n- 03f0: 90 c8 84 d5 e8 34 c1 95 b2 c9 f6 4d 87 1c 7d 19 |.....4.....M..}.|\n- 0400: d6 41 58 56 7a e0 6c ba 10 c7 e8 33 39 36 96 e7 |.AXVz.l....396..|\n- 0410: d2 f9 59 9a 08 95 48 38 e7 0b b7 0a 24 67 c4 39 |..Y...H8....$g.9|\n- 0420: 8b 43 88 57 9c 01 f5 61 b5 e1 27 41 7e af 83 fe |.C.W...a..\'A~...|\n- 0430: 2e e4 8a 70 a1 21 46 96 30 7a |...p.!F.0z|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ hg debugbundle ../rev.hg2.bz\n- Stream params: {Compression: BZ}\n- changegroup -- {} (mandatory: False)\n- 32af7686d403cf45b5d95f2d70cebea587ac806a\n- 9520eea781bcca16c1e15acc0ba14335a0e8e5ba\n- eea13746799a9e0bfd88f29d3c2e9dc9389f524f\n- 02de42196ebee42ef284b6780a87cdc96e8eaab6\n+ abort: ../rev.hg2.bz: $ENOENT$\n+ [255]\n $ hg unbundle ../rev.hg2.bz\n- adding changesets\n- adding manifests\n- adding file changes\n- added 0 changesets with 0 changes to 3 files\n- (run \'hg update\' to get a working copy)\n+ abort: ../rev.hg2.bz: $ENOENT$\n+ [255]\n \n unknown compression while unbundling\n -----------------------------\n \n $ hg bundle2 --param Compression=FooBarUnknown --rev \'8+7+5+4\' ../rev.hg2.bz\n+ abort: unknown revision \'8\'\n+ [255]\n $ cat ../rev.hg2.bz | hg statbundle2\n- abort: unknown parameters: Stream Parameter - Compression=\'FooBarUnknown\'\n+ cat: ../rev.hg2.bz: $ENOENT$\n+ abort: stream ended unexpectedly (got 0 bytes, expected 4)\n [255]\n $ hg unbundle ../rev.hg2.bz\n- abort: ../rev.hg2.bz: unknown bundle feature, Stream Parameter - Compression=\'FooBarUnknown\'\n- (see https://mercurial-scm.org/wiki/BundleFeature for more information)\n+ abort: ../rev.hg2.bz: $ENOENT$\n [255]\n \n $ cd ..\n', 6849, 6851, 'truncated \\uXXXX escape') decoding diff, sorry
test-bundle2-multiple-changegroups.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-bundle2-multiple-changegroups.t\n+++ c:/hgdev/src/tests/test-bundle2-multiple-changegroups.t.err\n@@ -80,85 +80,63 @@\n adding changesets\n adding manifests\n adding file changes\n- pretxnchangegroup hook: HG_HOOKNAME=pretxnchangegroup\n- HG_HOOKTYPE=pretxnchangegroup\n- HG_NODE=27547f69f25460a52fff66ad004e58da7ad3fb56\n- HG_NODE_LAST=27547f69f25460a52fff66ad004e58da7ad3fb56\n- HG_PENDING=$TESTTMP/clone\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- remote: changegroup2\n- adding changesets\n- adding manifests\n- adding file changes\n- pretxnchangegroup hook: HG_HOOKNAME=pretxnchangegroup\n- HG_HOOKTYPE=pretxnchangegroup\n- HG_NODE=f838bfaca5c7226600ebcfd84f3c3c13a28d3757\n- HG_NODE_LAST=f838bfaca5c7226600ebcfd84f3c3c13a28d3757\n- HG_PENDING=$TESTTMP/clone\n- HG_PHASES_MOVED=1\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- added 2 changesets with 2 changes to 2 files\n- new changesets 27547f69f254:f838bfaca5c7\n- changegroup hook: HG_HOOKNAME=changegroup\n- HG_HOOKTYPE=changegroup\n- HG_NODE=27547f69f25460a52fff66ad004e58da7ad3fb56\n- HG_NODE_LAST=27547f69f25460a52fff66ad004e58da7ad3fb56\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- incoming hook: HG_HOOKNAME=incoming\n- HG_HOOKTYPE=incoming\n- HG_NODE=27547f69f25460a52fff66ad004e58da7ad3fb56\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- changegroup hook: HG_HOOKNAME=changegroup\n- HG_HOOKTYPE=changegroup\n- HG_NODE=f838bfaca5c7226600ebcfd84f3c3c13a28d3757\n- HG_NODE_LAST=f838bfaca5c7226600ebcfd84f3c3c13a28d3757\n- HG_PHASES_MOVED=1\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- incoming hook: HG_HOOKNAME=incoming\n- HG_HOOKTYPE=incoming\n- HG_NODE=f838bfaca5c7226600ebcfd84f3c3c13a28d3757\n- HG_PHASES_MOVED=1\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- pullop.cgresult is 1\n- (run \'hg update\' to get a working copy)\n+ /usr/bin/env: python3: $ENOENT$\n+ ** Unknown exception encountered with possibly-broken third-party extension "bundle2" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "bundle2" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: bundle2\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 5398, in pull\n+ confirm=opts.get(b\'confirm\'),\n+ File "$TESTTMP/bundle2.py", line 24, in _pull\n+ pullop = _orig_pull(repo, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1634, in pull\n+ _pullobsolete(pullop)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1462, in release\n+ self._tr.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg update\n- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- $ hg log -G\n- @ 2:f838bfaca5c7 public test C\n- |\n- o 1:27547f69f254 public test B\n- |\n- o 0:4a2df7238c3b public test A\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ $ hg log -G\n+ @ 0:4a2df7238c3b public test A\n \n Add more changesets with multiple heads to the original repository\n \n@@ -204,125 +182,11 @@\n pulling from $TESTTMP/repo\n searching for changes\n remote: changegroup1\n- adding changesets\n- adding manifests\n- adding file changes\n- pretxnchangegroup hook: HG_HOOKNAME=pretxnchangegroup\n- HG_HOOKTYPE=pretxnchangegroup\n- HG_NODE=b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e\n- HG_NODE_LAST=8a5212ebc8527f9fb821601504794e3eb11a1ed3\n- HG_PENDING=$TESTTMP/clone\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- remote: changegroup2\n- adding changesets\n- adding manifests\n- adding file changes\n- pretxnchangegroup hook: HG_HOOKNAME=pretxnchangegroup\n- HG_HOOKTYPE=pretxnchangegroup\n- HG_NODE=7f219660301fe4c8a116f714df5e769695cc2b46\n- HG_NODE_LAST=5cd59d311f6508b8e0ed28a266756c859419c9f1\n- HG_PENDING=$TESTTMP/clone\n- HG_PHASES_MOVED=1\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- added 5 changesets with 5 changes to 5 files (+2 heads)\n- new changesets b3325c91a4d9:5cd59d311f65\n- changegroup hook: HG_HOOKNAME=changegroup\n- HG_HOOKTYPE=changegroup\n- HG_NODE=b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e\n- HG_NODE_LAST=8a5212ebc8527f9fb821601504794e3eb11a1ed3\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- incoming hook: HG_HOOKNAME=incoming\n- HG_HOOKTYPE=incoming\n- HG_NODE=b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- incoming hook: HG_HOOKNAME=incoming\n- HG_HOOKTYPE=incoming\n- HG_NODE=8a5212ebc8527f9fb821601504794e3eb11a1ed3\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- changegroup hook: HG_HOOKNAME=changegroup\n- HG_HOOKTYPE=changegroup\n- HG_NODE=7f219660301fe4c8a116f714df5e769695cc2b46\n- HG_NODE_LAST=5cd59d311f6508b8e0ed28a266756c859419c9f1\n- HG_PHASES_MOVED=1\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- incoming hook: HG_HOOKNAME=incoming\n- HG_HOOKTYPE=incoming\n- HG_NODE=7f219660301fe4c8a116f714df5e769695cc2b46\n- HG_PHASES_MOVED=1\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- incoming hook: HG_HOOKNAME=incoming\n- HG_HOOKTYPE=incoming\n- HG_NODE=1d14c3ce6ac0582d2809220d33e8cd7a696e0156\n- HG_PHASES_MOVED=1\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- incoming hook: HG_HOOKNAME=incoming\n- HG_HOOKTYPE=incoming\n- HG_NODE=5cd59d311f6508b8e0ed28a266756c859419c9f1\n- HG_PHASES_MOVED=1\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- pullop.cgresult is 3\n- (run \'hg heads\' to see heads, \'hg merge\' to merge)\n- $ hg log -G\n- o 7:5cd59d311f65 public test H\n- |\n- | o 6:1d14c3ce6ac0 public test G\n- | |\n- | | o 5:7f219660301f public test F\n- | | |\n- | | o 4:8a5212ebc852 public test E\n- | |/\n- o | 3:b3325c91a4d9 public test D\n- | |\n- @ | 2:f838bfaca5c7 public test C\n- |/\n- o 1:27547f69f254 public test B\n- |\n- o 0:4a2df7238c3b public test A\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg log -G\n+ @ 0:4a2df7238c3b public test A\n \n Removing a head from the original repository by merging it\n \n@@ -360,98 +224,9 @@\n pulling from $TESTTMP/repo\n searching for changes\n remote: changegroup1\n- adding changesets\n- adding manifests\n- adding file changes\n- pretxnchangegroup hook: HG_HOOKNAME=pretxnchangegroup\n- HG_HOOKTYPE=pretxnchangegroup\n- HG_NODE=71bd7b46de72e69a32455bf88d04757d542e6cf4\n- HG_NODE_LAST=71bd7b46de72e69a32455bf88d04757d542e6cf4\n- HG_PENDING=$TESTTMP/clone\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- remote: changegroup2\n- adding changesets\n- adding manifests\n- adding file changes\n- pretxnchangegroup hook: HG_HOOKNAME=pretxnchangegroup\n- HG_HOOKTYPE=pretxnchangegroup\n- HG_NODE=9d18e5bd9ab09337802595d49f1dad0c98df4d84\n- HG_NODE_LAST=9d18e5bd9ab09337802595d49f1dad0c98df4d84\n- HG_PENDING=$TESTTMP/clone\n- HG_PHASES_MOVED=1\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- added 2 changesets with 1 changes to 1 files (-1 heads)\n- new changesets 71bd7b46de72:9d18e5bd9ab0\n- changegroup hook: HG_HOOKNAME=changegroup\n- HG_HOOKTYPE=changegroup\n- HG_NODE=71bd7b46de72e69a32455bf88d04757d542e6cf4\n- HG_NODE_LAST=71bd7b46de72e69a32455bf88d04757d542e6cf4\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- incoming hook: HG_HOOKNAME=incoming\n- HG_HOOKTYPE=incoming\n- HG_NODE=71bd7b46de72e69a32455bf88d04757d542e6cf4\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- changegroup hook: HG_HOOKNAME=changegroup\n- HG_HOOKTYPE=changegroup\n- HG_NODE=9d18e5bd9ab09337802595d49f1dad0c98df4d84\n- HG_NODE_LAST=9d18e5bd9ab09337802595d49f1dad0c98df4d84\n- HG_PHASES_MOVED=1\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- incoming hook: HG_HOOKNAME=incoming\n- HG_HOOKTYPE=incoming\n- HG_NODE=9d18e5bd9ab09337802595d49f1dad0c98df4d84\n- HG_PHASES_MOVED=1\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/repo (glob)\n- HG_URL=file:$TESTTMP/repo\n- \n- pullop.cgresult is -2\n- (run \'hg update\' to get a working copy)\n- $ hg log -G\n- o 9:9d18e5bd9ab0 public test H\n- |\n- o 8:71bd7b46de72 public test Merge\n- |\\\n- | o 7:5cd59d311f65 public test H\n- | |\n- o | 6:1d14c3ce6ac0 public test G\n- | |\n- | | o 5:7f219660301f public test F\n- | | |\n- +---o 4:8a5212ebc852 public test E\n- | |\n- | o 3:b3325c91a4d9 public test D\n- | |\n- | @ 2:f838bfaca5c7 public test C\n- |/\n- o 1:27547f69f254 public test B\n- |\n- o 0:4a2df7238c3b public test A\n- \n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg log -G\n+ @ 0:4a2df7238c3b public test A\n+ \n', 4415, 4417, 'truncated \\uXXXX escape') decoding diff, sorry
test-bundle2-remote-changegroup.t#sshv1
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-bundle2-remote-changegroup.t\n+++ c:/hgdev/src/tests/test-bundle2-remote-changegroup.t#sshv1.err\n@@ -380,11 +380,56 @@\n adding changesets\n adding manifests\n adding file changes\n- transaction abort!\n- rollback completed\n- abort: bundle at http://localhost:$HGPORT/bundle6.hg is corrupted:\n- sha1 mismatch: expected 0000000000000000000000000000000000000000, got 2c880cfec23cff7d8f80c2f12958d1563cbdaba6\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 1933, in clone\n+ depth=opts.get(b\'depth\') or None,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\hg.py", line 948, in clone\n+ depth=depth,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1634, in pull\n+ _pullobsolete(pullop)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1462, in release\n+ self._tr.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n Multiple hash digests can be given\n \n@@ -392,15 +437,8 @@\n > raw-remote-changegroup {\'url\': \'http://localhost:$HGPORT/bundle6.hg\', \'size\': 1663, \'digests\': \'md5 sha1\', \'digest:md5\': \'e22172c2907ef88794b7bea6642c2394\', \'digest:sha1\': \'2c880cfec23cff7d8f80c2f12958d1563cbdaba6\'}\n > EOF\n $ hg clone ssh://user@dummy/repo clone\n- requesting all changes\n- remote: remote-changegroup\n- adding changesets\n- adding manifests\n- adding file changes\n- added 8 changesets with 7 changes to 7 files (+2 heads)\n- new changesets cd010b8cd998:02de42196ebe\n- updating to branch default\n- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: destination \'clone\' is not empty\n+ [10]\n $ rm -rf clone\n \n If either of the multiple hash digests mismatches, an error is thrown\n@@ -414,37 +452,69 @@\n adding changesets\n adding manifests\n adding file changes\n- transaction abort!\n- rollback completed\n- abort: bundle at http://localhost:$HGPORT/bundle6.hg is corrupted:\n- md5 mismatch: expected 00000000000000000000000000000000, got e22172c2907ef88794b7bea6642c2394\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 1933, in clone\n+ depth=opts.get(b\'depth\') or None,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\hg.py", line 948, in clone\n+ depth=depth,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1634, in pull\n+ _pullobsolete(pullop)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1462, in release\n+ self._tr.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ cat > repo/.hg/bundle2maker << EOF\n > raw-remote-changegroup {\'url\': \'http://localhost:$HGPORT/bundle6.hg\', \'size\': 1663, \'digests\': \'md5 sha1\', \'digest:md5\': \'e22172c2907ef88794b7bea6642c2394\', \'digest:sha1\': \'0\' * 40}\n > EOF\n $ hg clone ssh://user@dummy/repo clone\n- requesting all changes\n- remote: remote-changegroup\n- adding changesets\n- adding manifests\n- adding file changes\n- transaction abort!\n- rollback completed\n- abort: bundle at http://localhost:$HGPORT/bundle6.hg is corrupted:\n- sha1 mismatch: expected 0000000000000000000000000000000000000000, got 2c880cfec23cff7d8f80c2f12958d1563cbdaba6\n- [255]\n+ abort: destination \'clone\' is not empty\n+ [10]\n \n Corruption tests\n \n $ hg clone orig clone -r 2\n- adding changesets\n- adding manifests\n- adding file changes\n- added 3 changesets with 3 changes to 3 files\n- new changesets cd010b8cd998:5fddd98957c8\n- updating to branch default\n- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: destination \'clone\' is not empty\n+ [10]\n \n $ cat > repo/.hg/bundle2maker << EOF\n > remote-changegroup http://localhost:$HGPORT/bundle4.hg bundle4.hg\n@@ -453,30 +523,61 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n- remote: remote-changegroup\n- adding changesets\n- adding manifests\n- adding file changes\n- remote: remote-changegroup\n- adding changesets\n- adding manifests\n- adding file changes\n- transaction abort!\n- rollback completed\n- abort: bundle at http://localhost:$HGPORT/bundle5.hg is corrupted:\n- sha1 mismatch: expected 0000000000000000000000000000000000000000, got f29485d6bfd37db99983cfc95ecb52f8ca396106\n- [255]\n+ requesting all changes\n+ remote: remote-changegroup\n+ adding changesets\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 5398, in pull\n+ confirm=opts.get(b\'confirm\'),\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1634, in pull\n+ _pullobsolete(pullop)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1462, in release\n+ self._tr.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n The entire transaction has been rolled back in the pull above\n \n $ hg -R clone log -G\n- @ 2:5fddd98957c8 public Nicolas Dumazet <nicdumz.commits@gmail.com> C\n- |\n- o 1:42ccdea3bb16 public Nicolas Dumazet <nicdumz.commits@gmail.com> B\n- |\n- o 0:cd010b8cd998 public Nicolas Dumazet <nicdumz.commits@gmail.com> A\n- \n \n No params\n \n@@ -485,7 +586,7 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n+ requesting all changes\n remote: remote-changegroup\n abort: remote-changegroup: missing "url" param\n [255]\n@@ -497,7 +598,7 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n+ requesting all changes\n remote: remote-changegroup\n abort: remote-changegroup: missing "size" param\n [255]\n@@ -509,7 +610,7 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n+ requesting all changes\n remote: remote-changegroup\n abort: remote-changegroup: invalid value for param "size"\n [255]\n@@ -521,15 +622,10 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n- remote: remote-changegroup\n- adding changesets\n- adding manifests\n- adding file changes\n- transaction abort!\n- rollback completed\n- abort: bundle at http://localhost:$HGPORT/bundle4.hg is corrupted:\n- size mismatch: expected 42, got 581\n+ requesting all changes\n+ remote: remote-changegroup\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n Unknown digest\n@@ -539,7 +635,7 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n+ requesting all changes\n remote: remote-changegroup\n abort: missing support for remote-changegroup - digest:foo\n [255]\n@@ -551,7 +647,7 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n+ requesting all changes\n remote: remote-changegroup\n abort: remote-changegroup: missing "digest:sha1" param\n [255]\n@@ -563,7 +659,7 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n+ requesting all changes\n remote: remote-changegroup\n abort: remote-changegroup does not support ssh urls\n [255]\n@@ -578,9 +674,10 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n- remote: remote-changegroup\n- abort: http://localhost:$HGPORT/notbundle.hg: not a Mercurial bundle\n+ requesting all changes\n+ remote: remote-changegroup\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n Not a bundle 1.0\n@@ -593,18 +690,15 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n- remote: remote-changegroup\n- abort: http://localhost:$HGPORT/notbundle10.hg: not a bundle version 1.0\n+ requesting all changes\n+ remote: remote-changegroup\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n $ hg -R clone log -G\n- @ 2:5fddd98957c8 public Nicolas Dumazet <nicdumz.commits@gmail.com> C\n- |\n- o 1:42ccdea3bb16 public Nicolas Dumazet <nicdumz.commits@gmail.com> B\n- |\n- o 0:cd010b8cd998 public Nicolas Dumazet <nicdumz.commits@gmail.com> A\n- \n $ rm -rf clone\n \n $ killdaemons.py\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n', 2344, 2346, 'truncated \\uXXXX escape') decoding diff, sorry
test-bundle2-remote-changegroup.t#sshv2
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-bundle2-remote-changegroup.t\n+++ c:/hgdev/src/tests/test-bundle2-remote-changegroup.t#sshv2.err\n@@ -380,11 +380,56 @@\n adding changesets\n adding manifests\n adding file changes\n- transaction abort!\n- rollback completed\n- abort: bundle at http://localhost:$HGPORT/bundle6.hg is corrupted:\n- sha1 mismatch: expected 0000000000000000000000000000000000000000, got 2c880cfec23cff7d8f80c2f12958d1563cbdaba6\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 1933, in clone\n+ depth=opts.get(b\'depth\') or None,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\hg.py", line 948, in clone\n+ depth=depth,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1634, in pull\n+ _pullobsolete(pullop)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1462, in release\n+ self._tr.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n Multiple hash digests can be given\n \n@@ -392,15 +437,8 @@\n > raw-remote-changegroup {\'url\': \'http://localhost:$HGPORT/bundle6.hg\', \'size\': 1663, \'digests\': \'md5 sha1\', \'digest:md5\': \'e22172c2907ef88794b7bea6642c2394\', \'digest:sha1\': \'2c880cfec23cff7d8f80c2f12958d1563cbdaba6\'}\n > EOF\n $ hg clone ssh://user@dummy/repo clone\n- requesting all changes\n- remote: remote-changegroup\n- adding changesets\n- adding manifests\n- adding file changes\n- added 8 changesets with 7 changes to 7 files (+2 heads)\n- new changesets cd010b8cd998:02de42196ebe\n- updating to branch default\n- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: destination \'clone\' is not empty\n+ [10]\n $ rm -rf clone\n \n If either of the multiple hash digests mismatches, an error is thrown\n@@ -414,37 +452,69 @@\n adding changesets\n adding manifests\n adding file changes\n- transaction abort!\n- rollback completed\n- abort: bundle at http://localhost:$HGPORT/bundle6.hg is corrupted:\n- md5 mismatch: expected 00000000000000000000000000000000, got e22172c2907ef88794b7bea6642c2394\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 1933, in clone\n+ depth=opts.get(b\'depth\') or None,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\hg.py", line 948, in clone\n+ depth=depth,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1634, in pull\n+ _pullobsolete(pullop)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1462, in release\n+ self._tr.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ cat > repo/.hg/bundle2maker << EOF\n > raw-remote-changegroup {\'url\': \'http://localhost:$HGPORT/bundle6.hg\', \'size\': 1663, \'digests\': \'md5 sha1\', \'digest:md5\': \'e22172c2907ef88794b7bea6642c2394\', \'digest:sha1\': \'0\' * 40}\n > EOF\n $ hg clone ssh://user@dummy/repo clone\n- requesting all changes\n- remote: remote-changegroup\n- adding changesets\n- adding manifests\n- adding file changes\n- transaction abort!\n- rollback completed\n- abort: bundle at http://localhost:$HGPORT/bundle6.hg is corrupted:\n- sha1 mismatch: expected 0000000000000000000000000000000000000000, got 2c880cfec23cff7d8f80c2f12958d1563cbdaba6\n- [255]\n+ abort: destination \'clone\' is not empty\n+ [10]\n \n Corruption tests\n \n $ hg clone orig clone -r 2\n- adding changesets\n- adding manifests\n- adding file changes\n- added 3 changesets with 3 changes to 3 files\n- new changesets cd010b8cd998:5fddd98957c8\n- updating to branch default\n- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: destination \'clone\' is not empty\n+ [10]\n \n $ cat > repo/.hg/bundle2maker << EOF\n > remote-changegroup http://localhost:$HGPORT/bundle4.hg bundle4.hg\n@@ -453,30 +523,61 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n- remote: remote-changegroup\n- adding changesets\n- adding manifests\n- adding file changes\n- remote: remote-changegroup\n- adding changesets\n- adding manifests\n- adding file changes\n- transaction abort!\n- rollback completed\n- abort: bundle at http://localhost:$HGPORT/bundle5.hg is corrupted:\n- sha1 mismatch: expected 0000000000000000000000000000000000000000, got f29485d6bfd37db99983cfc95ecb52f8ca396106\n- [255]\n+ requesting all changes\n+ remote: remote-changegroup\n+ adding changesets\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 5398, in pull\n+ confirm=opts.get(b\'confirm\'),\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1634, in pull\n+ _pullobsolete(pullop)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1462, in release\n+ self._tr.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n The entire transaction has been rolled back in the pull above\n \n $ hg -R clone log -G\n- @ 2:5fddd98957c8 public Nicolas Dumazet <nicdumz.commits@gmail.com> C\n- |\n- o 1:42ccdea3bb16 public Nicolas Dumazet <nicdumz.commits@gmail.com> B\n- |\n- o 0:cd010b8cd998 public Nicolas Dumazet <nicdumz.commits@gmail.com> A\n- \n \n No params\n \n@@ -485,7 +586,7 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n+ requesting all changes\n remote: remote-changegroup\n abort: remote-changegroup: missing "url" param\n [255]\n@@ -497,7 +598,7 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n+ requesting all changes\n remote: remote-changegroup\n abort: remote-changegroup: missing "size" param\n [255]\n@@ -509,7 +610,7 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n+ requesting all changes\n remote: remote-changegroup\n abort: remote-changegroup: invalid value for param "size"\n [255]\n@@ -521,15 +622,10 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n- remote: remote-changegroup\n- adding changesets\n- adding manifests\n- adding file changes\n- transaction abort!\n- rollback completed\n- abort: bundle at http://localhost:$HGPORT/bundle4.hg is corrupted:\n- size mismatch: expected 42, got 581\n+ requesting all changes\n+ remote: remote-changegroup\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n Unknown digest\n@@ -539,7 +635,7 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n+ requesting all changes\n remote: remote-changegroup\n abort: missing support for remote-changegroup - digest:foo\n [255]\n@@ -551,7 +647,7 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n+ requesting all changes\n remote: remote-changegroup\n abort: remote-changegroup: missing "digest:sha1" param\n [255]\n@@ -563,7 +659,7 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n+ requesting all changes\n remote: remote-changegroup\n abort: remote-changegroup does not support ssh urls\n [255]\n@@ -578,9 +674,10 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n- remote: remote-changegroup\n- abort: http://localhost:$HGPORT/notbundle.hg: not a Mercurial bundle\n+ requesting all changes\n+ remote: remote-changegroup\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n Not a bundle 1.0\n@@ -593,18 +690,15 @@\n > EOF\n $ hg pull -R clone ssh://user@dummy/repo\n pulling from ssh://user@dummy/repo\n- searching for changes\n- remote: remote-changegroup\n- abort: http://localhost:$HGPORT/notbundle10.hg: not a bundle version 1.0\n+ requesting all changes\n+ remote: remote-changegroup\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n $ hg -R clone log -G\n- @ 2:5fddd98957c8 public Nicolas Dumazet <nicdumz.commits@gmail.com> C\n- |\n- o 1:42ccdea3bb16 public Nicolas Dumazet <nicdumz.commits@gmail.com> B\n- |\n- o 0:cd010b8cd998 public Nicolas Dumazet <nicdumz.commits@gmail.com> A\n- \n $ rm -rf clone\n \n $ killdaemons.py\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n', 2344, 2346, 'truncated \\uXXXX escape') decoding diff, sorry
test-clone-pull-corruption.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-clone-pull-corruption.t\n+++ c:/hgdev/src/tests/test-clone-pull-corruption.t.err\n@@ -29,25 +29,81 @@\n $ sleep 1\n $ hg pull ../source 2>/dev/null\n pulling from ../source\n- transaction abort!\n- rollback completed\n- abort: pretxncommit hook exited with status 1\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 1 changes to 1 files\n- new changesets 52998019f625\n- (run \'hg update\' to get a working copy)\n+ [255]\n \n see what happened\n \n $ wait\n $ hg verify\n+ abandoned transaction found - run hg recover\n checking changesets\n checking manifests\n+ manifest@?: rev 1 points to nonexistent changeset 1\n+ manifest@?: e313fc172615 not in changesets\n crosschecking files in changesets and manifests\n+ bar@1: in manifest but not in changeset\n checking files\n- checked 2 changesets with 2 changes to 1 files\n+ warning: revlog \'data/bar.i\' not in fncache!\n+ bar@?: rev 0 points to nonexistent changeset 1\n+ checked 1 changesets with 2 changes to 2 files\n+ 1 warnings encountered!\n+ hint: run "hg debugrebuildfncache" to recover from corrupt fncache\n+ 4 integrity errors encountered!\n+ (first damaged changeset appears to be 1)\n+ [1]\n \n $ cd ..\n', 2192, 2194, 'truncated \\uXXXX escape') decoding diff, sorry
test-clone.t#sshv1
--- c:/hgdev/src/tests/test-clone.t
+++ c:/hgdev/src/tests/test-clone.t#sshv1.err
@@ -102,13 +102,13 @@
#else
$ hg --debug clone -U . ../c --config progress.debug=true
linking: 1 files
- copying: 2 files
- copying: 3 files
- copying: 4 files
- copying: 5 files
- copying: 6 files
- copying: 7 files
- copying: 8 files
+ linking: 2 files
+ linking: 3 files
+ linking: 4 files
+ linking: 5 files
+ linking: 6 files
+ linking: 7 files
+ linked 7 files
copied 8 files (reporevlogstore !)
copying: 9 files (reposimplestore !)
copying: 10 files (reposimplestore !)
@@ -177,13 +177,23 @@
added 11 changesets with 11 changes to 2 files
new changesets acb14030fe0a:a7949464abda
updating to branch default
- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ abort: unknown compression type 'ë'
+ [255]
$ hg -R g verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
+ b@5: unpacking 323983059000: unknown compression type 'ë'
+ b@6: unpacking a09381309476: revlog decompress error: Error -5 while decompressing data: incomplete or truncated stream
+ b@7: unpacking 1c4daecb8230: unknown compression type 'ë'
+ b@8: unpacking be7c09ebbca3: revlog decompress error: Error -5 while decompressing data: incomplete or truncated stream
+ b@9: unpacking 481b5d8ae047: revlog decompress error: Error -5 while decompressing data: incomplete or truncated stream
+ b@10: unpacking f44cbe5dcf64: unknown compression type 'ë'
checked 11 changesets with 11 changes to 2 files
+ 6 integrity errors encountered!
+ (first damaged changeset appears to be 5)
+ [1]
Invalid dest '' with --pull must abort (issue2528):
@@ -299,7 +309,8 @@
added 16 changesets with 16 changes to 3 files (+1 heads)
new changesets acb14030fe0a:0aae7cf88f0d
updating to branch stable
- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ abort: unknown compression type 'ë'
+ [255]
Repo ua has both heads:
@@ -322,7 +333,6 @@
$ hg -R a parents --template "{node|short}
"
e8ece76546a6
$ hg -R ua parents --template "{node|short}
"
- e8ece76546a6
$ rm -r ua
@@ -440,7 +450,8 @@
added 14 changesets with 14 changes to 3 files
new changesets acb14030fe0a:0aae7cf88f0d
updating to branch stable
- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ abort: unknown compression type 'ë'
+ [255]
Repo ua has branch 'stable' and 'default' (was changed in fd511e9eeea6):
@@ -463,7 +474,6 @@
$ hg -R a parents --template "{node|short}
"
e8ece76546a6
$ hg -R ua parents --template "{node|short}
"
- e8ece76546a6
$ rm -r ua
@@ -477,7 +487,8 @@
added 14 changesets with 14 changes to 3 files
new changesets acb14030fe0a:0aae7cf88f0d
updating to branch stable
- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ abort: unknown compression type 'ë'
+ [255]
Repo ua has branch 'stable' and 'default' (was changed in fd511e9eeea6):
@@ -500,7 +511,6 @@
$ hg -R a parents --template "{node|short}
"
e8ece76546a6
$ hg -R ua parents --template "{node|short}
"
- e8ece76546a6
$ rm -r ua
@@ -514,7 +524,8 @@
added 14 changesets with 14 changes to 3 files
new changesets acb14030fe0a:0aae7cf88f0d
updating to branch stable
- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ abort: unknown compression type 'ë'
+ [255]
Repo ua has branch 'stable' and 'default' (was changed in fd511e9eeea6):
@@ -535,13 +546,6 @@
Branch 'stable' is checked out:
$ hg -R ua parents
- changeset: 13:0aae7cf88f0d
- branch: stable
- tag: tip
- user: test
- date: Thu Jan 01 00:00:00 1970 +0000
- summary: another change for branch stable
-
$ rm -r ua
@@ -578,7 +582,39 @@
added 14 changesets with 14 changes to 3 files
new changesets acb14030fe0a:0aae7cf88f0d
updating to branch stable
- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ Traceback (most recent call last):
(esc)
+ File "branchclone.py", line 6, in <module>
(esc)
+ hg.clone(myui, {}, repo, dest=b"ua", branch=[b"stable"])
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\hg.py", line 1033, in clone
(esc)
+ _update(destrepo, uprev)
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\hg.py", line 1084, in update
(esc)
+ stats = mergemod.update(repo[node], updatecheck=updatecheck)
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\merge.py", line 2194, in update
(esc)
+ wc=wc,
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\merge.py", line 2132, in _update
(esc)
+ labels=labels,
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\merge.py", line 1571, in applyupdates
(esc)
+ for final, res in prog:
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\merge.py", line 1403, in batchget
(esc)
+ fctx(f).data(),
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\context.py", line 1311, in data
(esc)
+ return self._filelog.read(self._filenode)
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\filelog.py", line 174, in read
(esc)
+ return storageutil.filtermetadata(self.revision(node))
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\filelog.py", line 93, in revision
(esc)
+ return self._revlog.revision(node, _df=_df, raw=raw)
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\revlog.py", line 1838, in revision
(esc)
+ return self._revisiondata(nodeorrev, _df, raw=raw)[0]
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\revlog.py", line 1864, in _revisiondata
(esc)
+ rev, rawtext, validated = self._rawtext(node, rev, _df=_df)
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\revlog.py", line 1933, in _rawtext
(esc)
+ bins = self._chunks(chain, df=_df, targetsize=targetsize)
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\revlog.py", line 1755, in _chunks
(esc)
+ ladd(decomp(buffer(data, chunkstart - offset, chunklength)))
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\revlog.py", line 2230, in decompress
(esc)
+ raise error.RevlogError(_(b'unknown compression type %r') % t)
(esc)
+ mercurial.error.RevlogError: unknown compression type '\xeb'
(esc)
+ [1]
$ rm -r ua
@@ -1203,14 +1239,14 @@
[255]
#else
$ hg clone "ssh://%3btouch%20owned%20/" --debug
- running sh -c "read l; read l; read l" ';touch owned ' 'hg -R . serve --stdio'
+ running sh -c "read l; read l; read l" ";touch owned " "hg -R . serve --stdio"
sending upgrade request: * proto=exp-ssh-v2-0003 (glob) (sshv2 !)
sending hello command
sending between command
abort: no suitable response from remote hg
[255]
$ hg clone "ssh://example.com:%3btouch%20owned%20/" --debug
- running sh -c "read l; read l; read l" -p ';touch owned ' example.com 'hg -R . serve --stdio'
+ running sh -c "read l; read l; read l" -p ";touch owned " example.com "hg -R . serve --stdio"
sending upgrade request: * proto=exp-ssh-v2-0003 (glob) (sshv2 !)
sending hello command
sending between command
test-clone.t#sshv2
--- c:/hgdev/src/tests/test-clone.t
+++ c:/hgdev/src/tests/test-clone.t#sshv2.err
@@ -102,13 +102,13 @@
#else
$ hg --debug clone -U . ../c --config progress.debug=true
linking: 1 files
- copying: 2 files
- copying: 3 files
- copying: 4 files
- copying: 5 files
- copying: 6 files
- copying: 7 files
- copying: 8 files
+ linking: 2 files
+ linking: 3 files
+ linking: 4 files
+ linking: 5 files
+ linking: 6 files
+ linking: 7 files
+ linked 7 files
copied 8 files (reporevlogstore !)
copying: 9 files (reposimplestore !)
copying: 10 files (reposimplestore !)
@@ -177,13 +177,23 @@
added 11 changesets with 11 changes to 2 files
new changesets acb14030fe0a:a7949464abda
updating to branch default
- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ abort: unknown compression type 'ë'
+ [255]
$ hg -R g verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
+ b@5: unpacking 323983059000: unknown compression type 'ë'
+ b@6: unpacking a09381309476: revlog decompress error: Error -5 while decompressing data: incomplete or truncated stream
+ b@7: unpacking 1c4daecb8230: unknown compression type 'ë'
+ b@8: unpacking be7c09ebbca3: revlog decompress error: Error -5 while decompressing data: incomplete or truncated stream
+ b@9: unpacking 481b5d8ae047: revlog decompress error: Error -5 while decompressing data: incomplete or truncated stream
+ b@10: unpacking f44cbe5dcf64: unknown compression type 'ë'
checked 11 changesets with 11 changes to 2 files
+ 6 integrity errors encountered!
+ (first damaged changeset appears to be 5)
+ [1]
Invalid dest '' with --pull must abort (issue2528):
@@ -299,7 +309,8 @@
added 16 changesets with 16 changes to 3 files (+1 heads)
new changesets acb14030fe0a:0aae7cf88f0d
updating to branch stable
- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ abort: unknown compression type 'ë'
+ [255]
Repo ua has both heads:
@@ -322,7 +333,6 @@
$ hg -R a parents --template "{node|short}
"
e8ece76546a6
$ hg -R ua parents --template "{node|short}
"
- e8ece76546a6
$ rm -r ua
@@ -440,7 +450,8 @@
added 14 changesets with 14 changes to 3 files
new changesets acb14030fe0a:0aae7cf88f0d
updating to branch stable
- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ abort: unknown compression type 'ë'
+ [255]
Repo ua has branch 'stable' and 'default' (was changed in fd511e9eeea6):
@@ -463,7 +474,6 @@
$ hg -R a parents --template "{node|short}
"
e8ece76546a6
$ hg -R ua parents --template "{node|short}
"
- e8ece76546a6
$ rm -r ua
@@ -477,7 +487,8 @@
added 14 changesets with 14 changes to 3 files
new changesets acb14030fe0a:0aae7cf88f0d
updating to branch stable
- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ abort: unknown compression type 'ë'
+ [255]
Repo ua has branch 'stable' and 'default' (was changed in fd511e9eeea6):
@@ -500,7 +511,6 @@
$ hg -R a parents --template "{node|short}
"
e8ece76546a6
$ hg -R ua parents --template "{node|short}
"
- e8ece76546a6
$ rm -r ua
@@ -514,7 +524,8 @@
added 14 changesets with 14 changes to 3 files
new changesets acb14030fe0a:0aae7cf88f0d
updating to branch stable
- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ abort: unknown compression type 'ë'
+ [255]
Repo ua has branch 'stable' and 'default' (was changed in fd511e9eeea6):
@@ -535,13 +546,6 @@
Branch 'stable' is checked out:
$ hg -R ua parents
- changeset: 13:0aae7cf88f0d
- branch: stable
- tag: tip
- user: test
- date: Thu Jan 01 00:00:00 1970 +0000
- summary: another change for branch stable
-
$ rm -r ua
@@ -578,7 +582,39 @@
added 14 changesets with 14 changes to 3 files
new changesets acb14030fe0a:0aae7cf88f0d
updating to branch stable
- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ Traceback (most recent call last):
(esc)
+ File "branchclone.py", line 6, in <module>
(esc)
+ hg.clone(myui, {}, repo, dest=b"ua", branch=[b"stable"])
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\hg.py", line 1033, in clone
(esc)
+ _update(destrepo, uprev)
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\hg.py", line 1084, in update
(esc)
+ stats = mergemod.update(repo[node], updatecheck=updatecheck)
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\merge.py", line 2194, in update
(esc)
+ wc=wc,
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\merge.py", line 2132, in _update
(esc)
+ labels=labels,
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\merge.py", line 1571, in applyupdates
(esc)
+ for final, res in prog:
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\merge.py", line 1403, in batchget
(esc)
+ fctx(f).data(),
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\context.py", line 1311, in data
(esc)
+ return self._filelog.read(self._filenode)
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\filelog.py", line 174, in read
(esc)
+ return storageutil.filtermetadata(self.revision(node))
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\filelog.py", line 93, in revision
(esc)
+ return self._revlog.revision(node, _df=_df, raw=raw)
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\revlog.py", line 1838, in revision
(esc)
+ return self._revisiondata(nodeorrev, _df, raw=raw)[0]
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\revlog.py", line 1864, in _revisiondata
(esc)
+ rev, rawtext, validated = self._rawtext(node, rev, _df=_df)
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\revlog.py", line 1933, in _rawtext
(esc)
+ bins = self._chunks(chain, df=_df, targetsize=targetsize)
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\revlog.py", line 1755, in _chunks
(esc)
+ ladd(decomp(buffer(data, chunkstart - offset, chunklength)))
(esc)
+ File "C:\Temp\hgtests.dstqqw\install\lib\python\mercurial\revlog.py", line 2230, in decompress
(esc)
+ raise error.RevlogError(_(b'unknown compression type %r') % t)
(esc)
+ mercurial.error.RevlogError: unknown compression type '\xeb'
(esc)
+ [1]
$ rm -r ua
@@ -1203,14 +1239,14 @@
[255]
#else
$ hg clone "ssh://%3btouch%20owned%20/" --debug
- running sh -c "read l; read l; read l" ';touch owned ' 'hg -R . serve --stdio'
+ running sh -c "read l; read l; read l" ";touch owned " "hg -R . serve --stdio"
sending upgrade request: * proto=exp-ssh-v2-0003 (glob) (sshv2 !)
sending hello command
sending between command
abort: no suitable response from remote hg
[255]
$ hg clone "ssh://example.com:%3btouch%20owned%20/" --debug
- running sh -c "read l; read l; read l" -p ';touch owned ' example.com 'hg -R . serve --stdio'
+ running sh -c "read l; read l; read l" -p ";touch owned " example.com "hg -R . serve --stdio"
sending upgrade request: * proto=exp-ssh-v2-0003 (glob) (sshv2 !)
sending hello command
sending between command
test-commandserver.t
--- c:/hgdev/src/tests/test-commandserver.t
+++ c:/hgdev/src/tests/test-commandserver.t.err
@@ -17,6 +17,7 @@
>>> import os
>>> import sys
>>> from hgclient import bprint, check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def hellomessage(server):
... ch, data = readchannel(server)
@@ -24,17 +25,17 @@
... # run an arbitrary command to make sure the next thing the server
... # sends isn't part of the hello message
... runcommand(server, [b'id'])
- o, 'capabilities: getencoding runcommand
encoding: *
pid: *' (glob)
- *** runcommand id
- 000000000000 tip
+ NameError("name 'check' is not defined",)
(esc)
>>> from hgclient import check
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def unknowncommand(server):
... server.stdin.write(b'unknowncommand
')
- abort: unknown command unknowncommand
-
- >>> from hgclient import check, readchannel, runcommand
+ NameError("name 'check' is not defined",)
(esc)
+
+ >>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def checkruncommand(server):
... # hello block
@@ -57,43 +58,10 @@
...
... # negative return code should be masked
... runcommand(server, [b'id', b'-runknown'])
- *** runcommand
- Mercurial Distributed SCM
-
- basic commands:
-
- add add the specified files on the next commit
- annotate show changeset information by line for each file
- clone make a copy of an existing repository
- commit commit the specified files or all outstanding changes
- diff diff repository (or selected files)
- export dump the header and diffs for one or more changesets
- forget forget the specified files on the next commit
- init create a new repository in the given directory
- log show revision history of entire repository or files
- merge merge another revision into working directory
- pull pull changes from the specified source
- push push changes to the specified destination
- remove remove the specified files on the next commit
- serve start stand-alone webserver
- status show changed files in the working directory
- summary summarize working directory state
- update update working directory (or switch revisions)
-
- (use 'hg help' for the full list of commands or 'hg -v' for details)
- *** runcommand id --quiet
- 000000000000
- *** runcommand id
- 000000000000 tip
- *** runcommand id --config ui.quiet=True
- 000000000000
- *** runcommand id
- 000000000000 tip
- *** runcommand id -runknown
- abort: unknown revision 'unknown'
- [255]
+ NameError("name 'check' is not defined",)
(esc)
>>> from hgclient import bprint, check, readchannel
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def inputeof(server):
... readchannel(server)
@@ -103,9 +71,10 @@
...
... # server exits with 1 if the pipe closed while reading the command
... bprint(b'server exit code =', b'%d' % server.wait())
- server exit code = 1
+ NameError("name 'check' is not defined",)
(esc)
>>> from hgclient import check, readchannel, runcommand, stringio
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def serverinput(server):
... readchannel(server)
@@ -127,33 +96,25 @@
...
... runcommand(server, [b'import', b'-'], input=stringio(patch))
... runcommand(server, [b'log'])
- *** runcommand import -
- applying patch from stdin
- *** runcommand log
- changeset: 0:eff892de26ec
- tag: tip
- user: test
- date: Thu Jan 01 00:00:00 1970 +0000
- summary: 1
-
+ NameError("name 'check' is not defined",)
(esc)
check strict parsing of early options:
>>> import os
>>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> os.environ['HGPLAIN'] = '+strictflags'
>>> @check
... def cwd(server):
... readchannel(server)
... runcommand(server, [b'log', b'-b', b'--config=alias.log=!echo pwned',
... b'default'])
- *** runcommand log -b --config=alias.log=!echo pwned default
- abort: unknown revision '--config=alias.log=!echo pwned'
- [255]
+ NameError("name 'check' is not defined",)
(esc)
check that "histedit --commands=-" can read rules from the input channel:
>>> from hgclient import check, readchannel, runcommand, stringio
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def serverinput(server):
... readchannel(server)
@@ -161,22 +122,20 @@
... runcommand(server, [b'histedit', b'0', b'--commands=-',
... b'--config', b'extensions.histedit='],
... input=stringio(rules))
- *** runcommand histedit 0 --commands=- --config extensions.histedit=
+ NameError("name 'check' is not defined",)
(esc)
check that --cwd doesn't persist between requests:
$ mkdir foo
$ touch foo/bar
>>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def cwd(server):
... readchannel(server)
... runcommand(server, [b'--cwd', b'foo', b'st', b'bar'])
... runcommand(server, [b'st', b'foo/bar'])
- *** runcommand --cwd foo st bar
- ? bar
- *** runcommand st foo/bar
- ? foo/bar
+ NameError("name 'check' is not defined",)
(esc)
$ rm foo/bar
@@ -248,6 +207,7 @@
> EOF
>>> from hgclient import check, readchannel, runcommand, stringio
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def hookoutput(server):
... readchannel(server)
@@ -255,10 +215,7 @@
... b'hooks.pre-identify=python:hook.hook',
... b'id'],
... input=stringio(b'some input'))
- *** runcommand --config hooks.pre-identify=python:hook.hook id
- eff892de26ec tip
- hook talking
- now try to read something: ''
+ NameError("name 'check' is not defined",)
(esc)
Clean hook cached version
$ rm hook.py*
@@ -267,6 +224,7 @@
$ echo a >> a
>>> import os
>>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def outsidechanges(server):
... readchannel(server)
@@ -274,19 +232,11 @@
... os.system('hg ci -Am2')
... runcommand(server, [b'tip'])
... runcommand(server, [b'status'])
- *** runcommand status
- M a
- *** runcommand tip
- changeset: 1:d3a0a68be6de
- tag: tip
- user: test
- date: Thu Jan 01 00:00:00 1970 +0000
- summary: 2
-
- *** runcommand status
+ NameError("name 'check' is not defined",)
(esc)
>>> import os
>>> from hgclient import bprint, check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def bookmarks(server):
... readchannel(server)
@@ -308,50 +258,33 @@
... runcommand(server, [b'commit', b'-Amm'])
... runcommand(server, [b'bookmarks'])
... bprint(b'')
- *** runcommand bookmarks
- no bookmarks set
- *** runcommand bookmarks
- bm1 1:d3a0a68be6de
- bm2 1:d3a0a68be6de
- *** runcommand bookmarks
- * bm1 1:d3a0a68be6de
- bm2 1:d3a0a68be6de
- *** runcommand bookmarks bm3
- *** runcommand commit -Amm
- *** runcommand bookmarks
- bm1 1:d3a0a68be6de
- bm2 1:d3a0a68be6de
- * bm3 2:aef17e88f5f0
-
-
- >>> import os
- >>> from hgclient import check, readchannel, runcommand
+ NameError("name 'check' is not defined",)
(esc)
+
+ >>> import os
+ >>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def tagscache(server):
... readchannel(server)
... runcommand(server, [b'id', b'-t', b'-r', b'0'])
... os.system('hg tag -r 0 foo')
... runcommand(server, [b'id', b'-t', b'-r', b'0'])
- *** runcommand id -t -r 0
-
- *** runcommand id -t -r 0
- foo
-
- >>> import os
- >>> from hgclient import check, readchannel, runcommand
+ NameError("name 'check' is not defined",)
(esc)
+
+ >>> import os
+ >>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def setphase(server):
... readchannel(server)
... runcommand(server, [b'phase', b'-r', b'.'])
... os.system('hg phase -r . -p')
... runcommand(server, [b'phase', b'-r', b'.'])
- *** runcommand phase -r .
- 3: draft
- *** runcommand phase -r .
- 3: public
+ NameError("name 'check' is not defined",)
(esc)
$ echo a >> a
>>> from hgclient import bprint, check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def rollback(server):
... readchannel(server)
@@ -360,18 +293,11 @@
... runcommand(server, [b'rollback'])
... runcommand(server, [b'phase', b'-r', b'.'])
... bprint(b'')
- *** runcommand phase -r . -p
- no phases changed
- *** runcommand commit -Am.
- *** runcommand rollback
- repository tip rolled back to revision 3 (undo commit)
- working directory now based on revision 3
- *** runcommand phase -r .
- 3: public
-
-
- >>> import os
- >>> from hgclient import check, readchannel, runcommand
+ NameError("name 'check' is not defined",)
(esc)
+
+ >>> import os
+ >>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def branch(server):
... readchannel(server)
@@ -379,18 +305,12 @@
... os.system('hg branch foo')
... runcommand(server, [b'branch'])
... os.system('hg branch default')
- *** runcommand branch
- default
- marked working directory as branch foo
- (branches are permanent and global, did you want a bookmark?)
- *** runcommand branch
- foo
- marked working directory as branch default
- (branches are permanent and global, did you want a bookmark?)
+ NameError("name 'check' is not defined",)
(esc)
$ touch .hgignore
>>> import os
>>> from hgclient import bprint, check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def hgignore(server):
... readchannel(server)
@@ -403,17 +323,14 @@
... f.close()
... runcommand(server, [b'status', b'-i', b'-u'])
... bprint(b'')
- *** runcommand commit -Am.
- adding .hgignore
- *** runcommand status -i -u
- I ignored-file
-
+ NameError("name 'check' is not defined",)
(esc)
cache of non-public revisions should be invalidated on repository change
(issue4855):
>>> import os
>>> from hgclient import bprint, check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def phasesetscacheaftercommit(server):
... readchannel(server)
@@ -429,16 +346,11 @@
... # new commits should be listed as draft revisions
... runcommand(server, [b'log', b'-qr', b'draft()'])
... bprint(b'')
- *** runcommand log -qr draft()
- 4:7966c8e3734d
- *** runcommand log -qr draft()
- 4:7966c8e3734d
- 5:41f6602d1c4f
- 6:10501e202c35
-
+ NameError("name 'check' is not defined",)
(esc)
>>> import os
>>> from hgclient import bprint, check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def phasesetscacheafterstrip(server):
... readchannel(server)
@@ -449,18 +361,13 @@
... # shouldn't abort by "unknown revision '6'"
... runcommand(server, [b'log', b'-qr', b'draft()'])
... bprint(b'')
- *** runcommand log -qr draft()
- 4:7966c8e3734d
- 5:41f6602d1c4f
- 6:10501e202c35
- *** runcommand log -qr draft()
- 4:7966c8e3734d
-
+ NameError("name 'check' is not defined",)
(esc)
cache of phase roots should be invalidated on strip (issue3827):
>>> import os
>>> from hgclient import check, readchannel, runcommand, sep
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def phasecacheafterstrip(server):
... readchannel(server)
@@ -483,52 +390,21 @@
...
... # shouldn't raise "7966c8e3734d: no node!"
... runcommand(server, [b'branches'])
- *** runcommand update -C 0
- 1 files updated, 0 files merged, 2 files removed, 0 files unresolved
- (leaving bookmark bm3)
- *** runcommand commit -Am. a
- created new head
- *** runcommand log -Gq
- @ 5:731265503d86
- |
- | o 4:7966c8e3734d
- | |
- | o 3:b9b85890c400
- | |
- | o 2:aef17e88f5f0
- | |
- | o 1:d3a0a68be6de
- |/
- o 0:eff892de26ec
-
- *** runcommand phase -p .
- *** runcommand phase .
- 5: public
- *** runcommand branches
- default 1:731265503d86
+ NameError("name 'check' is not defined",)
(esc)
in-memory cache must be reloaded if transaction is aborted. otherwise
changelog and manifest would have invalid node:
$ echo a >> a
>>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def txabort(server):
... readchannel(server)
... runcommand(server, [b'commit', b'--config', b'hooks.pretxncommit=false',
... b'-mfoo'])
... runcommand(server, [b'verify'])
- *** runcommand commit --config hooks.pretxncommit=false -mfoo
- transaction abort!
- rollback completed
- abort: pretxncommit hook exited with status 1
- [255]
- *** runcommand verify
- checking changesets
- checking manifests
- crosschecking files in changesets and manifests
- checking files
- checked 2 changesets with 2 changes to 1 files
+ NameError("name 'check' is not defined",)
(esc)
$ hg revert --no-backup -aq
$ cat >> .hg/hgrc << EOF
@@ -538,6 +414,7 @@
>>> import os
>>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def obsolete(server):
... readchannel(server)
@@ -550,37 +427,7 @@
... os.system(cmd)
... runcommand(server, [b'log', b'--hidden'])
... runcommand(server, [b'log'])
- *** runcommand up null
- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
- *** runcommand phase -df tip
- 1 new obsolescence markers
- obsoleted 1 changesets
- *** runcommand log --hidden
- changeset: 1:731265503d86
- tag: tip
- user: test
- date: Thu Jan 01 00:00:00 1970 +0000
- obsolete: pruned
- summary: .
-
- changeset: 0:eff892de26ec
- bookmark: bm1
- bookmark: bm2
- bookmark: bm3
- user: test
- date: Thu Jan 01 00:00:00 1970 +0000
- summary: 1
-
- *** runcommand log
- changeset: 0:eff892de26ec
- bookmark: bm1
- bookmark: bm2
- bookmark: bm3
- tag: tip
- user: test
- date: Thu Jan 01 00:00:00 1970 +0000
- summary: 1
-
+ NameError("name 'check' is not defined",)
(esc)
$ cat <<EOF >> .hg/hgrc
> [extensions]
@@ -589,6 +436,7 @@
>>> import os
>>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def mqoutsidechanges(server):
... readchannel(server)
@@ -603,14 +451,7 @@
... os.system('hg qqueue --create foo')
... # repo.mq should be recreated to point to new queue
... runcommand(server, [b'qqueue', b'--active'])
- *** runcommand qapplied
- *** runcommand qapplied
- 0.diff
- *** runcommand qpop --all
- popping 0.diff
- patch queue now empty
- *** runcommand qqueue --active
- foo
+ NameError("name 'check' is not defined",)
(esc)
$ cat <<'EOF' > ../dbgui.py
> import os
@@ -643,6 +484,7 @@
> EOF
>>> from hgclient import check, readchannel, runcommand, stringio
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def getpass(server):
... readchannel(server)
@@ -663,27 +505,13 @@
... input=stringio(b'
remainder
should
not
be
read
'))
... runcommand(server, [b'debugreadstdin'])
... runcommand(server, [b'debugwritestdout'])
- *** runcommand debuggetpass --config ui.interactive=True
- password: 1234
- *** runcommand debuggetpass --config ui.interactive=True
- password:
- *** runcommand debuggetpass --config ui.interactive=True
- password: abort: response expected
- [255]
- *** runcommand debugprompt --config ui.interactive=True
- prompt: 5678
- *** runcommand debugprompt --config ui.interactive=True
- prompt: y
- *** runcommand debugreadstdin
- read: ''
- *** runcommand debugwritestdout
- low-level stdout fd and
- stdout should be redirected to stderr
+ NameError("name 'check' is not defined",)
(esc)
run commandserver in commandserver, which is silly but should work:
>>> from hgclient import bprint, check, readchannel, runcommand, stringio
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def nested(server):
... bprint(b'%c, %r' % readchannel(server))
@@ -695,10 +523,7 @@
... nestedserver.stdout.seek(0)
... bprint(b'%c, %r' % readchannel(nestedserver)) # hello
... bprint(b'%c, %r' % readchannel(nestedserver)) # getencoding
- o, 'capabilities: getencoding runcommand
encoding: *
pid: *' (glob)
- *** runcommand serve --cmdserver pipe
- o, 'capabilities: getencoding runcommand
encoding: *
pid: *' (glob)
- r, '*' (glob)
+ NameError("name 'check' is not defined",)
(esc)
start without repository:
@@ -706,6 +531,7 @@
$ cd ..
>>> from hgclient import bprint, check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def hellomessage(server):
... ch, data = readchannel(server)
@@ -713,20 +539,16 @@
... # run an arbitrary command to make sure the next thing the server
... # sends isn't part of the hello message
... runcommand(server, [b'id'])
- o, 'capabilities: getencoding runcommand
encoding: *
pid: *' (glob)
- *** runcommand id
- abort: there is no Mercurial repository here (.hg not found)
- [10]
-
- >>> from hgclient import check, readchannel, runcommand
+ NameError("name 'check' is not defined",)
(esc)
+
+ >>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def startwithoutrepo(server):
... readchannel(server)
... runcommand(server, [b'init', b'repo2'])
... runcommand(server, [b'id', b'-R', b'repo2'])
- *** runcommand init repo2
- *** runcommand id -R repo2
- 000000000000 tip
+ NameError("name 'check' is not defined",)
(esc)
don't fall back to cwd if invalid -R path is specified (issue4805):
@@ -790,31 +612,22 @@
> # server --config should precede repository option
> message-output = stdio
> EOF
+ $TESTTMP.sh: line 565: repo2/.hg/hgrc: $ENOENT$
+ [1]
>>> from hgclient import bprint, checkwith, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @checkwith(extraargs=[b'--config', b'ui.message-output=channel',
... b'--config', b'cmdserver.message-encodings=foo cbor'])
... def verify(server):
... _ch, data = readchannel(server)
... bprint(data)
... runcommand(server, [b'-R', b'repo2', b'verify'])
- capabilities: getencoding runcommand
- encoding: ascii
- message-encoding: cbor
- pid: * (glob)
+ NameError("name 'checkwith' is not defined",)
(esc)
pgid: * (glob) (no-windows !)
- *** runcommand -R repo2 verify
- message: '¢DdataTchecking changesets
DtypeFstatus'
- message: '¦Ditem@CposöEtopicHcheckingEtotalöDtypeHprogressDunit@'
- message: '¢DdataSchecking manifests
DtypeFstatus'
- message: '¦Ditem@CposöEtopicHcheckingEtotalöDtypeHprogressDunit@'
- message: '¢DdataX0crosschecking files in changesets and manifests
DtypeFstatus'
- message: '¦Ditem@CposöEtopicMcrosscheckingEtotalöDtypeHprogressDunit@'
- message: '¢DdataOchecking files
DtypeFstatus'
- message: '¦Ditem@CposöEtopicHcheckingEtotalöDtypeHprogressDunit@'
- message: '¢DdataX/checked 0 changesets with 0 changes to 0 files
DtypeFstatus'
>>> from hgclient import checkwith, readchannel, runcommand, stringio
+ ImportError('No module named hgclient',)
(esc)
>>> @checkwith(extraargs=[b'--config', b'ui.message-output=channel',
... b'--config', b'cmdserver.message-encodings=cbor',
... b'--config', b'extensions.dbgui=dbgui.py'])
@@ -827,15 +640,7 @@
... input=stringio(b'5678
'))
... runcommand(server, [b'debugpromptchoice'] + interactive,
... input=stringio(b'n
'))
- *** runcommand debuggetpass --config ui.interactive=True
- message: '£DdataJpassword: HpasswordõDtypeFprompt'
- 1234
- *** runcommand debugprompt --config ui.interactive=True
- message: '£DdataGprompt:GdefaultAyDtypeFprompt'
- 5678
- *** runcommand debugpromptchoice --config ui.interactive=True
- message: '¤GchoicesAyCYesAnBNoDdataTpromptchoice (y/n)? GdefaultAyDtypeFprompt'
- 1
+ NameError("name 'checkwith' is not defined",)
(esc)
bad message encoding:
@@ -1001,6 +806,7 @@
(failure before finalization)
>>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def abort(server):
... readchannel(server)
@@ -1009,17 +815,12 @@
... b'-mfoo'])
... runcommand(server, [b'log'])
... runcommand(server, [b'verify', b'-q'])
- *** runcommand commit --config hooks.pretxncommit=false -mfoo
- transaction abort!
- rollback completed
- abort: pretxncommit hook exited with status 1
- [255]
- *** runcommand log
- *** runcommand verify -q
+ NameError("name 'check' is not defined",)
(esc)
(failure after finalization)
>>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def abort(server):
... readchannel(server)
@@ -1028,13 +829,7 @@
... b'-mfoo'])
... runcommand(server, [b'log'])
... runcommand(server, [b'verify', b'-q'])
- *** runcommand commit --config failafterfinalize.fail=true -mfoo
- transaction abort!
- rollback completed
- abort: fail after finalization
- [255]
- *** runcommand log
- *** runcommand verify -q
+ NameError("name 'check' is not defined",)
(esc)
- test failure with "not-empty changelog"
@@ -1045,6 +840,7 @@
(failure before finalization)
>>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def abort(server):
... readchannel(server)
@@ -1053,18 +849,12 @@
... b'-mfoo', b'foo'])
... runcommand(server, [b'log'])
... runcommand(server, [b'verify', b'-q'])
- *** runcommand commit --config hooks.pretxncommit=false -mfoo foo
- transaction abort!
- rollback completed
- abort: pretxncommit hook exited with status 1
- [255]
- *** runcommand log
- 0 bar (bar)
- *** runcommand verify -q
+ NameError("name 'check' is not defined",)
(esc)
(failure after finalization)
>>> from hgclient import check, readchannel, runcommand
+ ImportError('No module named hgclient',)
(esc)
>>> @check
... def abort(server):
... readchannel(server)
@@ -1073,14 +863,7 @@
... b'-mfoo', b'foo'])
... runcommand(server, [b'log'])
... runcommand(server, [b'verify', b'-q'])
- *** runcommand commit --config failafterfinalize.fail=true -mfoo foo
- transaction abort!
- rollback completed
- abort: fail after finalization
- [255]
- *** runcommand log
- 0 bar (bar)
- *** runcommand verify -q
+ NameError("name 'check' is not defined",)
(esc)
$ cd ..
test-commit-amend.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-commit-amend.t\n+++ c:/hgdev/src/tests/test-commit-amend.t.err\n@@ -37,6 +37,67 @@\n pretxncommit 43f1ba15f28a50abf0aae529cf8a16bfced7b149\n 43f1ba15f28a tip\n saved backup bundle to $TESTTMP/.hg/strip-backup/489edb5b847d-5ab4f721-amend.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\.hg\\strip-backup/489edb5b847d-5ab4f721-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\.hg\\strip-backup/489edb5b847d-007467c2-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\.hg\\strip-backup/489edb5b847d-007467c2-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ echo \'pretxncommit.foo = \' >> $HGRCPATH\n $ hg diff -c .\n diff -r ad120869acf0 -r 43f1ba15f28a a\n@@ -47,11 +108,17 @@\n +a\n +a\n $ hg log\n- changeset: 1:43f1ba15f28a\n+ changeset: 2:43f1ba15f28a\n tag: tip\n+ parent: 0:ad120869acf0\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n summary: amend base1\n+ \n+ changeset: 1:489edb5b847d\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: base1\n \n changeset: 0:ad120869acf0\n user: test\n@@ -75,81 +142,74 @@\n $ echo b > b\n $ hg add b\n $ hg summary\n- parent: 1:43f1ba15f28a tip\n+ parent: 2:43f1ba15f28a tip\n amend base1\n branch: default\n commit: 1 modified, 1 added, 1 unknown\n- update: (current)\n- phases: 2 draft\n+ update: 1 new changesets, 2 branch heads (merge)\n+ phases: 3 draft\n $ HGEDITOR="\\"sh\\" \\"`pwd`/editor.sh\\"" hg commit --amend\n- abort: empty commit message\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg summary\n- parent: 1:43f1ba15f28a tip\n+ parent: 2:43f1ba15f28a tip\n amend base1\n branch: default\n commit: 1 modified, 1 added, 1 unknown\n- update: (current)\n- phases: 2 draft\n+ update: 1 new changesets, 2 branch heads (merge)\n+ phases: 3 draft\n \n Add new file along with modified existing file:\n $ hg ci --amend -m \'amend base1 new file\'\n- saved backup bundle to $TESTTMP/.hg/strip-backup/43f1ba15f28a-007467c2-amend.hg\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Remove file that was added in amended commit:\n (and test logfile option)\n (and test that logfile option do not trigger an editor)\n \n $ hg rm b\n+ not removing b: file has been marked for add (use \'hg forget\' to undo add)\n+ [1]\n $ echo \'amend base1 remove new file\' > ../logfile\n $ HGEDITOR="\\"sh\\" \\"`pwd`/editor.sh\\"" hg ci --amend --logfile ../logfile\n- saved backup bundle to $TESTTMP/.hg/strip-backup/c16295aaf401-1ada9901-amend.hg\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg cat b\n- b: no such file in rev 47343646fa3d\n+ b: no such file in rev 43f1ba15f28a\n [1]\n \n No changes, just a different message:\n \n $ hg ci -v --amend -m \'no changes, new message\'\n- amending changeset 47343646fa3d\n- copying changeset 47343646fa3d to ad120869acf0\n- committing files:\n- a\n- committing manifest\n- committing changelog\n- 1 changesets found\n- uncompressed size of bundle content:\n- 254 (changelog)\n- 163 (manifests)\n- 131 a\n- saved backup bundle to $TESTTMP/.hg/strip-backup/47343646fa3d-c2758885-amend.hg\n- 1 changesets found\n- uncompressed size of bundle content:\n- 250 (changelog)\n- 163 (manifests)\n- 131 a\n- adding branch\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 1 changes to 1 files\n- committed changeset 1:401431e913a1\n+ amending changeset 43f1ba15f28a\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg diff -c .\n- diff -r ad120869acf0 -r 401431e913a1 a\n+ diff -r ad120869acf0 -r 43f1ba15f28a a\n --- a/a\tThu Jan 01 00:00:00 1970 +0000\n +++ b/a\tThu Jan 01 00:00:00 1970 +0000\n- @@ -1,1 +1,4 @@\n+ @@ -1,1 +1,3 @@\n a\n +a\n +a\n- +a\n $ hg log\n- changeset: 1:401431e913a1\n+ changeset: 2:43f1ba15f28a\n tag: tip\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: no changes, new message\n+ parent: 0:ad120869acf0\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: amend base1\n+ \n+ changeset: 1:489edb5b847d\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: base1\n \n changeset: 0:ad120869acf0\n user: test\n@@ -169,17 +229,21 @@\n > true\n > EOF\n $ HGEDITOR="sh .hg/checkeditform.sh" hg ci --amend -u foo -d \'1 0\'\n- HGEDITFORM=commit.amend.normal\n- saved backup bundle to $TESTTMP/.hg/strip-backup/401431e913a1-5e8e532c-amend.hg\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ echo a >> a\n $ hg ci --amend -u foo -d \'1 0\'\n- saved backup bundle to $TESTTMP/.hg/strip-backup/d96b1d28ae33-677e0afb-amend.hg\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r .\n- changeset: 1:a9a13940fc03\n+ changeset: 2:43f1ba15f28a\n tag: tip\n- user: foo\n- date: Thu Jan 01 00:00:01 1970 +0000\n- summary: no changes, new message\n+ parent: 0:ad120869acf0\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: amend base1\n \n \n Open editor with old commit message if a message isn\'t given otherwise:\n@@ -199,45 +263,24 @@\n \n $ rm -f .hg/last-message.txt\n $ hg commit --amend -v -m "message given from command line"\n- amending changeset a9a13940fc03\n- copying changeset a9a13940fc03 to ad120869acf0\n- committing files:\n- a\n- committing manifest\n- committing changelog\n- running hook pretxncommit.test-saving-last-message: false\n- transaction abort!\n- rollback completed\n- abort: pretxncommit.test-saving-last-message hook exited with status 1\n+ amending changeset 43f1ba15f28a\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n $ cat .hg/last-message.txt\n- message given from command line (no-eol)\n+ cat: .hg/last-message.txt: $ENOENT$\n+ [1]\n \n $ rm -f .hg/last-message.txt\n $ HGEDITOR="\\"sh\\" \\"`pwd`/editor.sh\\"" hg commit --amend -v\n- amending changeset a9a13940fc03\n- copying changeset a9a13940fc03 to ad120869acf0\n- no changes, new message\n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: foo\n- HG: branch \'default\'\n- HG: changed a\n- committing files:\n- a\n- committing manifest\n- committing changelog\n- running hook pretxncommit.test-saving-last-message: false\n- transaction abort!\n- rollback completed\n- abort: pretxncommit.test-saving-last-message hook exited with status 1\n+ amending changeset 43f1ba15f28a\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n $ cat .hg/last-message.txt\n- another precious commit message\n+ cat: .hg/last-message.txt: $ENOENT$\n+ [1]\n \n $ cat > .hg/hgrc << \'__EOF__\'\n > [hooks]\n@@ -247,99 +290,53 @@\n then, test editing custom commit message\n \n $ HGEDITOR="\\"sh\\" \\"`pwd`/editor.sh\\"" hg commit --amend -v\n- amending changeset a9a13940fc03\n- copying changeset a9a13940fc03 to ad120869acf0\n- no changes, new message\n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: foo\n- HG: branch \'default\'\n- HG: changed a\n- committing files:\n- a\n- committing manifest\n- committing changelog\n- 1 changesets found\n- uncompressed size of bundle content:\n- 249 (changelog)\n- 163 (manifests)\n- 133 a\n- saved backup bundle to $TESTTMP/.hg/strip-backup/a9a13940fc03-7c2e8674-amend.hg\n- 1 changesets found\n- uncompressed size of bundle content:\n- 257 (changelog)\n- 163 (manifests)\n- 133 a\n- adding branch\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 1 changes to 1 files\n- committed changeset 1:64a124ba1b44\n+ amending changeset 43f1ba15f28a\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Same, but with changes in working dir (different code path):\n \n $ echo a >> a\n $ HGEDITOR="\\"sh\\" \\"`pwd`/editor.sh\\"" hg commit --amend -v\n- amending changeset 64a124ba1b44\n- another precious commit message\n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: foo\n- HG: branch \'default\'\n- HG: changed a\n- committing files:\n- a\n- committing manifest\n- committing changelog\n- 1 changesets found\n- uncompressed size of bundle content:\n- 257 (changelog)\n- 163 (manifests)\n- 133 a\n- saved backup bundle to $TESTTMP/.hg/strip-backup/64a124ba1b44-10374b8f-amend.hg\n- 1 changesets found\n- uncompressed size of bundle content:\n- 257 (changelog)\n- 163 (manifests)\n- 135 a\n- adding branch\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 1 changes to 1 files\n- committed changeset 1:7892795b8e38\n+ amending changeset 43f1ba15f28a\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ rm editor.sh\n $ hg log -r .\n- changeset: 1:7892795b8e38\n+ changeset: 2:43f1ba15f28a\n tag: tip\n- user: foo\n- date: Thu Jan 01 00:00:01 1970 +0000\n- summary: another precious commit message\n+ parent: 0:ad120869acf0\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: amend base1\n \n \n Moving bookmarks, preserve active bookmark:\n \n $ hg book book1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book book2\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg ci --amend -m \'move bookmarks\'\n- saved backup bundle to $TESTTMP/.hg/strip-backup/7892795b8e38-3fb46217-amend.hg\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book\n- book1 1:8311f17e2616\n- * book2 1:8311f17e2616\n+ no bookmarks set\n $ echo a >> a\n $ hg ci --amend -m \'move bookmarks\'\n- saved backup bundle to $TESTTMP/.hg/strip-backup/8311f17e2616-f0504fe3-amend.hg\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book\n- book1 1:a3b65065808c\n- * book2 1:a3b65065808c\n+ no bookmarks set\n \n abort does not loose bookmarks\n \n@@ -349,11 +346,11 @@\n > __EOF__\n $ echo a >> a\n $ HGEDITOR="\\"sh\\" \\"`pwd`/editor.sh\\"" hg commit --amend\n- abort: empty commit message\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg book\n- book1 1:a3b65065808c\n- * book2 1:a3b65065808c\n+ no bookmarks set\n $ hg revert -Caq\n $ rm editor.sh\n \n@@ -367,93 +364,144 @@\n (branches are permanent and global, did you want a bookmark?)\n $ echo a >> a\n $ hg ci -m \'branch foo\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg branch default -f\n marked working directory as branch default\n+ (branches are permanent and global, did you want a bookmark?)\n $ hg ci --amend -m \'back to default\'\n- saved backup bundle to $TESTTMP/.hg/strip-backup/f8339a38efe1-c18453c9-amend.hg\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg branches\n- default 2:9c07515f2650\n+ default 2:43f1ba15f28a\n \n Close branch:\n \n $ hg up -q 0\n+ warning: conflicts while merging a! (edit, then use \'hg resolve --mark\')\n+ [1]\n $ echo b >> b\n $ hg branch foo\n marked working directory as branch foo\n (branches are permanent and global, did you want a bookmark?)\n $ hg ci -Am \'fork\'\n+ adding a.orig\n adding b\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ echo b >> b\n $ hg ci -mb\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ hg ci --amend --close-branch -m \'closing branch foo\'\n- saved backup bundle to $TESTTMP/.hg/strip-backup/c962248fa264-54245dc7-amend.hg\n+ abort: branch "foo" has no heads to close\n+ [10]\n \n Same thing, different code path:\n \n $ echo b >> b\n $ hg ci -m \'reopen branch\'\n- reopening closed branch head 4\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ echo b >> b\n $ hg ci --amend --close-branch\n- saved backup bundle to $TESTTMP/.hg/strip-backup/027371728205-b900d9fa-amend.hg\n+ abort: branch "foo" has no heads to close\n+ [10]\n $ hg branches\n- default 2:9c07515f2650\n+ default 2:43f1ba15f28a\n \n Refuse to amend during a merge:\n \n $ hg up -q default\n+ abort: outstanding merge conflicts\n+ (use \'hg resolve\' to resolve)\n+ [255]\n $ hg merge foo\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- (branch merge, don\'t forget to commit)\n+ abort: unknown revision \'foo\'\n+ [255]\n $ hg ci --amend\n- abort: cannot amend while merging\n+ abort: cannot amend changeset with children\n+ [10]\n+ $ hg ci -m \'merge\'\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n [20]\n- $ hg ci -m \'merge\'\n \n Refuse to amend if there is a merge conflict (issue5805):\n \n $ hg up -q foo\n+ abort: unknown revision \'foo\'\n+ [255]\n $ echo c > a\n $ hg up default -t :fail\n- 0 files updated, 0 files merged, 0 files removed, 1 files unresolved\n- use \'hg resolve\' to retry unresolved file merges\n- [1]\n+ abort: outstanding merge conflicts\n+ (use \'hg resolve\' to resolve)\n+ [255]\n $ hg resolve -l\n U a\n \n $ hg ci --amend\n- abort: unresolved merge conflicts (see \'hg help resolve\')\n- [20]\n+ abort: cannot amend changeset with children\n+ [10]\n \n $ hg up -qC .\n \n Follow copies/renames:\n \n $ hg mv b c\n+ b: not copying - file is not managed\n+ abort: no files to copy\n+ [10]\n $ hg ci -m \'b -> c\'\n+ nothing changed\n+ [1]\n $ hg mv c d\n+ c: $ENOENT$\n+ abort: no files to copy\n+ [10]\n $ hg ci --amend -m \'b -> d\'\n- saved backup bundle to $TESTTMP/.hg/strip-backup/42f3f27a067d-f23cc9f7-amend.hg\n+ abort: cannot amend changeset with children\n+ [10]\n $ hg st --rev \'.^\' --copies d\n- A d\n- b\n+ abort: empty revision range\n+ [255]\n $ hg cp d e\n+ d: $ENOENT$\n+ abort: no files to copy\n+ [10]\n $ hg ci -m \'e = d\'\n+ nothing changed\n+ [1]\n $ hg cp e f\n+ e: $ENOENT$\n+ abort: no files to copy\n+ [10]\n $ hg ci --amend -m \'f = d\'\n- saved backup bundle to $TESTTMP/.hg/strip-backup/9198f73182d5-251d584a-amend.hg\n+ abort: cannot amend changeset with children\n+ [10]\n $ hg st --rev \'.^\' --copies f\n- A f\n- d\n+ abort: empty revision range\n+ [255]\n \n $ mv f f.orig\n+ mv: cannot stat `f\': $ENOENT$\n+ [1]\n $ hg rm -A f\n+ f: $ENOENT$\n+ [1]\n $ hg ci -m removef\n+ nothing changed\n+ [1]\n $ hg cp a f\n $ mv f.orig f\n+ mv: cannot stat `f.orig\': $ENOENT$\n+ [1]\n $ hg ci --amend -m replacef\n- saved backup bundle to $TESTTMP/.hg/strip-backup/f0993ab6b482-eda301bf-amend.hg\n+ abort: cannot amend changeset with children\n+ [10]\n $ hg st --change . --copies\n+ A a\n $ hg log -r . --template "{file_copies}\\n"\n \n \n@@ -461,20 +509,27 @@\n \n $ echo g >> g\n $ hg ci -Am g\n+ adding a.orig\n+ adding b\n adding g\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg mv g h\n+ g: not copying - file is not managed\n+ abort: no files to copy\n+ [10]\n $ hg ci --amend\n- saved backup bundle to $TESTTMP/.hg/strip-backup/58585e3f095c-0f5ebcda-amend.hg\n+ abort: cannot amend changeset with children\n+ [10]\n $ hg st --change . --copies h\n- A h\n $ hg log -r . --template "{file_copies}\\n"\n \n \n Can\'t rollback an amend:\n \n $ hg rollback\n- no rollback information available\n- [1]\n+ repository tip rolled back to revision 1 (undo amend)\n \n Preserve extra dict (issue3430):\n \n@@ -483,14 +538,19 @@\n (branches are permanent and global, did you want a bookmark?)\n $ echo a >> a\n $ hg ci -ma\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg ci --amend -m "a\'"\n- saved backup bundle to $TESTTMP/.hg/strip-backup/39a162f1d65e-9dfe13d8-amend.hg\n+ abort: cannot amend changeset with children\n+ [10]\n $ hg log -r . --template "{branch}\\n"\n- a\n+ default\n $ hg ci --amend -m "a\'\'"\n- saved backup bundle to $TESTTMP/.hg/strip-backup/d5ca7b1ac72b-0b4c1a34-amend.hg\n+ abort: cannot amend changeset with children\n+ [10]\n $ hg log -r . --template "{branch}\\n"\n- a\n+ default\n \n Also preserve other entries in the dict that are in the old commit,\n first graft something so there\'s an additional entry:\n@@ -498,32 +558,37 @@\n $ hg up 0 -q\n $ echo z > z\n $ hg ci -Am \'fork\'\n+ adding a.orig\n+ adding b\n+ adding g\n adding z\n- created new head\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg up 11\n- 5 files updated, 0 files merged, 1 files removed, 0 files unresolved\n+ abort: unknown revision \'11\'\n+ [255]\n $ hg graft 12\n- grafting 12:2647734878ef "fork" (tip)\n+ abort: uncommitted changes\n+ [20]\n $ hg ci --amend -m \'graft amend\'\n- saved backup bundle to $TESTTMP/.hg/strip-backup/fe8c6f7957ca-25638666-amend.hg\n+ abort: cannot amend changeset with children\n+ [10]\n $ hg log -r . --debug | grep extra\n- extra: amend_source=fe8c6f7957ca1665ed77496ed7a07657d469ac60\n- extra: branch=a\n- extra: source=2647734878ef0236dda712fae9c1651cf694ea8a\n+ extra: branch=default\n \n Preserve phase\n \n $ hg phase \'.^::.\'\n- 11: draft\n- 13: draft\n $ hg phase --secret --force .\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg phase \'.^::.\'\n- 11: draft\n- 13: secret\n $ hg commit --amend -m \'amend for phase\' -q\n+ abort: cannot amend changeset with children\n+ [10]\n $ hg phase \'.^::.\'\n- 11: draft\n- 13: secret\n \n Test amend with obsolete\n ---------------------------\n@@ -539,33 +604,27 @@\n Amend with no files changes\n \n $ hg id -n\n- 13\n+ 0+\n $ hg ci --amend -m \'babar\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg id -n\n- 14\n+ 0+\n $ hg log -Gl 3 --style=compact\n- @ 14[tip]:11 682950e85999 1970-01-01 00:00 +0000 test\n- | babar\n+ o 1[tip] 489edb5b847d 1970-01-01 00:00 +0000 test\n+ | base1\n |\n- | o 12:0 2647734878ef 1970-01-01 00:00 +0000 test\n- | | fork\n- | ~\n- o 11 0ddb275cfad1 1970-01-01 00:00 +0000 test\n- | a\'\'\n- ~\n+ @ 0 ad120869acf0 1970-01-01 00:00 +0000 test\n+ base\n+ \n $ hg log -Gl 4 --hidden --style=compact\n- @ 14[tip]:11 682950e85999 1970-01-01 00:00 +0000 test\n- | babar\n+ o 1[tip] 489edb5b847d 1970-01-01 00:00 +0000 test\n+ | base1\n |\n- | x 13:11 5167600b0f7a 1970-01-01 00:00 +0000 test\n- |/ amend for phase\n- |\n- | o 12:0 2647734878ef 1970-01-01 00:00 +0000 test\n- | | fork\n- | ~\n- o 11 0ddb275cfad1 1970-01-01 00:00 +0000 test\n- | a\'\'\n- ~\n+ @ 0 ad120869acf0 1970-01-01 00:00 +0000 test\n+ base\n+ \n \n Amend with files changes\n \n@@ -574,304 +633,289 @@\n \n $ echo \'babar\' >> a\n $ hg commit --amend\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -Gl 6 --hidden --style=compact\n- @ 15[tip]:11 a5b42b49b0d5 1970-01-01 00:00 +0000 test\n- | babar\n+ o 1[tip] 489edb5b847d 1970-01-01 00:00 +0000 test\n+ | base1\n |\n- | x 14:11 682950e85999 1970-01-01 00:00 +0000 test\n- |/ babar\n- |\n- | x 13:11 5167600b0f7a 1970-01-01 00:00 +0000 test\n- |/ amend for phase\n- |\n- | o 12:0 2647734878ef 1970-01-01 00:00 +0000 test\n- | | fork\n- | ~\n- o 11 0ddb275cfad1 1970-01-01 00:00 +0000 test\n- | a\'\'\n- |\n- o 10 5fa75032e226 1970-01-01 00:00 +0000 test\n- | g\n- ~\n+ @ 0 ad120869acf0 1970-01-01 00:00 +0000 test\n+ base\n+ \n \n \n Test that amend does not make it easy to create obsolescence cycle\n ---------------------------------------------------------------------\n \n $ hg id -r 14 --hidden\n- 682950e85999 (a)\n+ abort: unknown revision \'14\'\n+ [255]\n $ hg revert -ar 14 --hidden\n- reverting a\n+ abort: unknown revision \'14\'\n+ [255]\n $ hg commit --amend\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg id\n- 37973c7e0b61 (a) tip\n+ ad120869acf0+ (a)\n \n Test that rewriting leaving instability behind is allowed\n ---------------------------------------------------------------------\n \n $ hg up \'.^\'\n- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n+ abort: empty revision set\n+ [255]\n $ echo \'b\' >> a\n $ hg log --style compact -r \'children(.)\'\n- 16[tip]:11 37973c7e0b61 1970-01-01 00:00 +0000 test\n- babar\n+ 1[tip] 489edb5b847d 1970-01-01 00:00 +0000 test\n+ base1\n \n $ hg commit --amend\n- 1 new orphan changesets\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r \'orphan()\'\n- changeset: 16:37973c7e0b61\n- branch: a\n- parent: 11:0ddb275cfad1\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- instability: orphan\n- summary: babar\n- \n \n Amend a merge changeset (with renames and conflicts from the second parent):\n \n $ hg up -q default\n+ warning: conflicts while merging a! (edit, then use \'hg resolve --mark\')\n+ [1]\n $ hg branch -q bar\n $ hg cp a aa\n $ hg mv z zz\n+ z: not copying - file is not managed\n+ abort: no files to copy\n+ [10]\n $ echo cc > cc\n $ hg add cc\n $ hg ci -m aazzcc\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ hg up -q default\n+ abort: outstanding merge conflicts\n+ (use \'hg resolve\' to resolve)\n+ [255]\n $ echo a >> a\n $ echo dd > cc\n $ hg add cc\n+ cc already tracked!\n $ hg ci -m aa\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ hg merge -q bar\n- warning: conflicts while merging cc! (edit, then use \'hg resolve --mark\')\n- [1]\n+ abort: unknown revision \'bar\'\n+ [255]\n $ hg resolve -m cc\n- (no more unresolved files)\n+ arguments do not match paths that need resolving\n $ hg ci -m \'merge bar\'\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ hg log --config diff.git=1 -pr .\n- changeset: 20:5aba7f3726e6\n+ changeset: 1:489edb5b847d\n tag: tip\n- parent: 19:30d96aeaf27b\n- parent: 18:1aa437659d19\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: merge bar\n- \n- diff --git a/a b/aa\n- copy from a\n- copy to aa\n- diff --git a/cc b/cc\n- --- a/cc\n- +++ b/cc\n- @@ -1,1 +1,5 @@\n- +<<<<<<< working copy: 30d96aeaf27b - test: aa\n- dd\n- +=======\n- +cc\n- +>>>>>>> merge rev: 1aa437659d19 bar - test: aazzcc\n- diff --git a/z b/zz\n- rename from z\n- rename to zz\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: base1\n+ \n+ diff --git a/a b/a\n+ --- a/a\n+ +++ b/a\n+ @@ -1,1 +1,2 @@\n+ a\n+ +a\n \n $ hg debugrename aa\n- aa renamed from a:a80d06849b333b8a3d5c445f8ba3142010dcdc9e\n+ aa: no such file in rev 489edb5b847d\n $ hg debugrename zz\n- zz renamed from z:69a1b67522704ec122181c0890bd16e9d3e7516a\n+ zz: no such file in rev 489edb5b847d\n $ hg debugrename cc\n- cc not renamed\n+ cc: no such file in rev 489edb5b847d\n $ HGEDITOR="sh .hg/checkeditform.sh" hg ci --amend -m \'merge bar (amend message)\' --edit\n- HGEDITFORM=commit.amend.merge\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --config diff.git=1 -pr .\n- changeset: 21:4b0631ef043e\n+ changeset: 1:489edb5b847d\n tag: tip\n- parent: 19:30d96aeaf27b\n- parent: 18:1aa437659d19\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: merge bar (amend message)\n- \n- diff --git a/a b/aa\n- copy from a\n- copy to aa\n- diff --git a/cc b/cc\n- --- a/cc\n- +++ b/cc\n- @@ -1,1 +1,5 @@\n- +<<<<<<< working copy: 30d96aeaf27b - test: aa\n- dd\n- +=======\n- +cc\n- +>>>>>>> merge rev: 1aa437659d19 bar - test: aazzcc\n- diff --git a/z b/zz\n- rename from z\n- rename to zz\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: base1\n+ \n+ diff --git a/a b/a\n+ --- a/a\n+ +++ b/a\n+ @@ -1,1 +1,2 @@\n+ a\n+ +a\n \n $ hg debugrename aa\n- aa renamed from a:a80d06849b333b8a3d5c445f8ba3142010dcdc9e\n+ aa: no such file in rev 489edb5b847d\n $ hg debugrename zz\n- zz renamed from z:69a1b67522704ec122181c0890bd16e9d3e7516a\n+ zz: no such file in rev 489edb5b847d\n $ hg debugrename cc\n- cc not renamed\n+ cc: no such file in rev 489edb5b847d\n $ hg mv zz z\n+ zz: $ENOENT$\n+ abort: no files to copy\n+ [10]\n $ hg ci --amend -m \'merge bar (undo rename)\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --config diff.git=1 -pr .\n- changeset: 22:06423be42d60\n+ changeset: 1:489edb5b847d\n tag: tip\n- parent: 19:30d96aeaf27b\n- parent: 18:1aa437659d19\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: merge bar (undo rename)\n- \n- diff --git a/a b/aa\n- copy from a\n- copy to aa\n- diff --git a/cc b/cc\n- --- a/cc\n- +++ b/cc\n- @@ -1,1 +1,5 @@\n- +<<<<<<< working copy: 30d96aeaf27b - test: aa\n- dd\n- +=======\n- +cc\n- +>>>>>>> merge rev: 1aa437659d19 bar - test: aazzcc\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: base1\n+ \n+ diff --git a/a b/a\n+ --- a/a\n+ +++ b/a\n+ @@ -1,1 +1,2 @@\n+ a\n+ +a\n \n $ hg debugrename z\n- z not renamed\n+ z: no such file in rev 489edb5b847d\n \n Amend a merge changeset (with renames during the merge):\n \n $ hg up -q bar\n+ abort: unknown revision \'bar\'\n+ [255]\n $ echo x > x\n $ hg add x\n $ hg ci -m x\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ hg up -q default\n+ abort: outstanding merge conflicts\n+ (use \'hg resolve\' to resolve)\n+ [255]\n $ hg merge -q bar\n+ abort: unknown revision \'bar\'\n+ [255]\n $ hg mv aa aaa\n $ echo aa >> aaa\n $ hg ci -m \'merge bar again\'\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ hg log --config diff.git=1 -pr .\n- changeset: 24:a89974a20457\n+ changeset: 1:489edb5b847d\n tag: tip\n- parent: 22:06423be42d60\n- parent: 23:4c94d5bc65f5\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: merge bar again\n- \n- diff --git a/aa b/aa\n- deleted file mode 100644\n- --- a/aa\n- +++ /dev/null\n- @@ -1,2 +0,0 @@\n- -a\n- -a\n- diff --git a/aaa b/aaa\n- new file mode 100644\n- --- /dev/null\n- +++ b/aaa\n- @@ -0,0 +1,3 @@\n- +a\n- +a\n- +aa\n- diff --git a/x b/x\n- new file mode 100644\n- --- /dev/null\n- +++ b/x\n- @@ -0,0 +1,1 @@\n- +x\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: base1\n+ \n+ diff --git a/a b/a\n+ --- a/a\n+ +++ b/a\n+ @@ -1,1 +1,2 @@\n+ a\n+ +a\n \n $ hg debugrename aaa\n- aaa renamed from aa:37d9b5d994eab34eda9c16b195ace52c7b129980\n+ aaa: no such file in rev 489edb5b847d\n \n Update to p1 with \'aaa\' modified. \'aaa\' was renamed from \'aa\' in p2. \'aa\' exists\n in p1 too, but it was recorded as copied from p2.\n $ echo modified >> aaa\n $ hg co -m \'.^\' -t :merge3\n- file \'aaa\' was deleted in other [destination] but was modified in local [working copy].\n- You can use (c)hanged version, (d)elete, or leave (u)nresolved.\n- What do you want to do? u\n- 1 files updated, 0 files merged, 1 files removed, 1 files unresolved\n- use \'hg resolve\' to retry unresolved file merges\n- [1]\n+ abort: outstanding merge conflicts\n+ (use \'hg resolve\' to resolve)\n+ [255]\n $ hg co -C tip\n- 2 files updated, 0 files merged, 1 files removed, 0 files unresolved\n+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n \n $ hg mv aaa aa\n+ aaa: not copying - file is not managed\n+ abort: no files to copy\n+ [10]\n $ hg ci --amend -m \'merge bar again (undo rename)\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --config diff.git=1 -pr .\n- changeset: 25:282080768800\n+ changeset: 1:489edb5b847d\n tag: tip\n- parent: 22:06423be42d60\n- parent: 23:4c94d5bc65f5\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: merge bar again (undo rename)\n- \n- diff --git a/aa b/aa\n- --- a/aa\n- +++ b/aa\n- @@ -1,2 +1,3 @@\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: base1\n+ \n+ diff --git a/a b/a\n+ --- a/a\n+ +++ b/a\n+ @@ -1,1 +1,2 @@\n a\n- a\n- +aa\n- diff --git a/x b/x\n- new file mode 100644\n- --- /dev/null\n- +++ b/x\n- @@ -0,0 +1,1 @@\n- +x\n+ +a\n \n $ hg debugrename aa\n- aa not renamed\n+ aa: no such file in rev 489edb5b847d\n $ hg debugrename -r \'.^\' aa\n- aa renamed from a:a80d06849b333b8a3d5c445f8ba3142010dcdc9e\n+ aa: no such file in rev ad120869acf0\n \n Amend a merge changeset (with manifest-level conflicts):\n \n $ hg up -q bar\n+ abort: unknown revision \'bar\'\n+ [255]\n $ hg rm aa\n+ aa: $ENOENT$\n+ [1]\n $ hg ci -m \'rm aa\'\n+ nothing changed\n+ [1]\n $ hg up -q default\n $ echo aa >> aa\n $ hg ci -m aa\n+ nothing changed\n+ [1]\n $ hg merge -q bar --config ui.interactive=True << EOF\n > c\n > EOF\n- file \'aa\' was deleted in other [merge rev] but was modified in local [working copy].\n- You can use (c)hanged version, (d)elete, or leave (u)nresolved.\n- What do you want to do? c\n+ abort: unknown revision \'bar\'\n+ [255]\n $ hg ci -m \'merge bar (with conflicts)\'\n+ nothing changed\n+ [1]\n $ hg log --config diff.git=1 -pr .\n- changeset: 28:ed15db12298d\n+ changeset: 1:489edb5b847d\n tag: tip\n- parent: 27:eb5adec0b43b\n- parent: 26:67db8847a540\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: merge bar (with conflicts)\n- \n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: base1\n+ \n+ diff --git a/a b/a\n+ --- a/a\n+ +++ b/a\n+ @@ -1,1 +1,2 @@\n+ a\n+ +a\n \n $ hg rm aa\n+ not removing aa: file is untracked\n+ [1]\n $ hg ci --amend -m \'merge bar (with conflicts, amended)\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log --config diff.git=1 -pr .\n- changeset: 29:0eeafd043f63\n+ changeset: 1:489edb5b847d\n tag: tip\n- parent: 27:eb5adec0b43b\n- parent: 26:67db8847a540\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: merge bar (with conflicts, amended)\n- \n- diff --git a/aa b/aa\n- deleted file mode 100644\n- --- a/aa\n- +++ /dev/null\n- @@ -1,4 +0,0 @@\n- -a\n- -a\n- -aa\n- -aa\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: base1\n+ \n+ diff --git a/a b/a\n+ --- a/a\n+ +++ b/a\n+ @@ -1,1 +1,2 @@\n+ a\n+ +a\n \n Issue 3445: amending with --close-branch a commit that created a new head should fail\n This shouldn\'t be possible:\n@@ -879,17 +923,22 @@\n $ hg up -q default\n $ hg branch closewithamend\n marked working directory as branch closewithamend\n+ (branches are permanent and global, did you want a bookmark?)\n $ echo foo > foo\n $ hg add foo\n $ hg ci -m..\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg ci --amend --close-branch -m \'closing\'\n- abort: can only close branch heads\n+ abort: branch "closewithamend" has no heads to close\n [10]\n \n This silliness fails:\n \n $ hg branch silliness\n marked working directory as branch silliness\n+ (branches are permanent and global, did you want a bookmark?)\n $ echo b >> b\n $ hg ci --close-branch -m\'open and close\'\n abort: branch "silliness" has no heads to close\n@@ -899,57 +948,70 @@\n ---------------------------------------------------------------------\n \n $ hg phase \'.^::.\'\n- 29: draft\n- 30: draft\n+ 0: draft\n+ 1: draft\n $ hg commit --amend --secret -m \'amend as secret\' -q\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg phase \'.^::.\'\n- 29: draft\n- 31: secret\n+ 0: draft\n+ 1: draft\n \n Test that amend with --edit invokes editor forcibly\n ---------------------------------------------------\n \n $ hg parents --template "{desc}\\n"\n- amend as secret\n+ base1\n $ HGEDITOR=cat hg commit --amend -m "editor should be suppressed"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg parents --template "{desc}\\n"\n- editor should be suppressed\n+ base1\n \n $ hg status --rev \'.^1::.\'\n- A foo\n+ M a\n $ HGEDITOR=cat hg commit --amend -m "editor should be invoked" --edit\n- editor should be invoked\n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: test\n- HG: branch \'silliness\'\n- HG: added foo\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg parents --template "{desc}\\n"\n- editor should be invoked\n+ base1\n \n Test that amend with --no-edit avoids the editor\n ------------------------------------------------\n \n $ hg commit --amend -m "before anything happens"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg parents --template "{desc}\\n"\n- before anything happens\n+ base1\n $ HGEDITOR=cat hg commit --amend --no-edit -m "editor should be suppressed"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg parents --template "{desc}\\n"\n- editor should be suppressed\n+ base1\n \n (We need a file change here since we won\'t have a message change)\n $ cp foo foo.orig\n $ echo hi >> foo\n $ HGEDITOR=cat hg commit --amend --no-edit\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg parents --template "{desc}\\n"\n- editor should be suppressed\n+ base1\n $ hg status -mar\n+ A foo\n (Let\'s undo adding that "hi" so later tests don\'t need to be adjusted)\n $ mv foo.orig foo\n $ hg commit --amend --no-edit\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Test that "diff()" in committemplate works correctly for amending\n -----------------------------------------------------------------\n@@ -964,124 +1026,46 @@\n > EOF\n \n $ hg parents --template "M: {file_mods}\\nA: {file_adds}\\nR: {file_dels}\\n"\n- M: \n- A: foo\n+ M: a\n+ A: \n R: \n $ hg status -amr\n+ A foo\n $ HGEDITOR=cat hg commit --amend -e -m "expecting diff of foo"\n- expecting diff of foo\n- \n- HG: M: \n- HG: A: foo\n- HG: R: \n- HG: diff -r 0eeafd043f63 foo\n- HG: --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ b/foo\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -0,0 +1,1 @@\n- HG: +foo\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ echo y > y\n $ hg add y\n $ HGEDITOR=cat hg commit --amend -e -m "expecting diff of foo and y"\n- expecting diff of foo and y\n- \n- HG: M: \n- HG: A: foo y\n- HG: R: \n- HG: diff -r 0eeafd043f63 foo\n- HG: --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ b/foo\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -0,0 +1,1 @@\n- HG: +foo\n- HG: diff -r 0eeafd043f63 y\n- HG: --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ b/y\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -0,0 +1,1 @@\n- HG: +y\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg rm a\n $ HGEDITOR=cat hg commit --amend -e -m "expecting diff of a, foo and y"\n- expecting diff of a, foo and y\n- \n- HG: M: \n- HG: A: foo y\n- HG: R: a\n- HG: diff -r 0eeafd043f63 a\n- HG: --- a/a\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -1,2 +0,0 @@\n- HG: -a\n- HG: -a\n- HG: diff -r 0eeafd043f63 foo\n- HG: --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ b/foo\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -0,0 +1,1 @@\n- HG: +foo\n- HG: diff -r 0eeafd043f63 y\n- HG: --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ b/y\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -0,0 +1,1 @@\n- HG: +y\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg rm x\n+ not removing x: file is untracked\n+ [1]\n $ HGEDITOR=cat hg commit --amend -e -m "expecting diff of a, foo, x and y"\n- expecting diff of a, foo, x and y\n- \n- HG: M: \n- HG: A: foo y\n- HG: R: a x\n- HG: diff -r 0eeafd043f63 a\n- HG: --- a/a\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -1,2 +0,0 @@\n- HG: -a\n- HG: -a\n- HG: diff -r 0eeafd043f63 foo\n- HG: --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ b/foo\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -0,0 +1,1 @@\n- HG: +foo\n- HG: diff -r 0eeafd043f63 x\n- HG: --- a/x\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -1,1 +0,0 @@\n- HG: -x\n- HG: diff -r 0eeafd043f63 y\n- HG: --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ b/y\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -0,0 +1,1 @@\n- HG: +y\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ echo cccc >> cc\n $ hg status -amr\n- M cc\n+ A foo\n+ A y\n+ R a\n $ HGEDITOR=cat hg commit --amend -e -m "cc should be excluded" -X cc\n- cc should be excluded\n- \n- HG: M: \n- HG: A: foo y\n- HG: R: a x\n- HG: diff -r 0eeafd043f63 a\n- HG: --- a/a\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -1,2 +0,0 @@\n- HG: -a\n- HG: -a\n- HG: diff -r 0eeafd043f63 foo\n- HG: --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ b/foo\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -0,0 +1,1 @@\n- HG: +foo\n- HG: diff -r 0eeafd043f63 x\n- HG: --- a/x\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -1,1 +0,0 @@\n- HG: -x\n- HG: diff -r 0eeafd043f63 y\n- HG: --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- HG: +++ b/y\tThu Jan 01 00:00:00 1970 +0000\n- HG: @@ -0,0 +1,1 @@\n- HG: +y\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Check for issue4405\n -------------------\n', 2498, 2500, 'truncated \\uXXXX escape') decoding diff, sorry
test-commit-unresolved.t#abortcommand
--- c:/hgdev/src/tests/test-commit-unresolved.t
+++ c:/hgdev/src/tests/test-commit-unresolved.t#abortcommand.err
@@ -47,6 +47,7 @@
$ hg abort
abort: no merge in progress (abortflag !)
abort: no operation in progress (abortcommand !)
+ abort: no operation in progress
[20]
$ hg merge
test-commit-unresolved.t#abortflag
--- c:/hgdev/src/tests/test-commit-unresolved.t
+++ c:/hgdev/src/tests/test-commit-unresolved.t#abortflag.err
@@ -47,6 +47,7 @@
$ hg abort
abort: no merge in progress (abortflag !)
abort: no operation in progress (abortcommand !)
+ abort: no operation in progress
[20]
$ hg merge
test-commit.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-commit.t\n+++ c:/hgdev/src/tests/test-commit.t.err\n@@ -868,9 +868,73 @@\n $ echo \'m\' > modified-file\n $ hg ci --amend -m \'reworded\' -X \'re:\'\n saved backup bundle to $TESTTMP/ci-post-st/.hg/strip-backup/*-amend.hg (glob)\n- M modified-file\n- A added-file\n- ? unknown-file\n+ strip failed, backup bundle stored in \'$TESTTMP\\ci-post-st\\.hg\\strip-backup/6fe00abd11a4-bffc2b05-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\ci-post-st\\.hg\\strip-backup/6fe00abd11a4-d2eade31-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\ci-post-st\\.hg\\strip-backup/6fe00abd11a4-d2eade31-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: commitextras\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\commitextras.py", line 89, in _commit\n+ return orig(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg st -mardu\n M modified-file\n A added-file\n', 2579, 2581, 'truncated \\uXXXX escape') decoding diff, sorry
test-committer.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-committer.t\n+++ c:/hgdev/src/tests/test-committer.t.err\n@@ -49,9 +49,60 @@\n $ echo "[ui]" > .hg/hgrc\n $ echo "username = " >> .hg/hgrc\n $ hg commit -m commit-1\n- abort: no username supplied\n- (use \'hg config --edit\' to set your username)\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n # test alternate config var\n \n@@ -59,10 +110,13 @@\n $ echo "[ui]" > .hg/hgrc\n $ echo "user = Foo Bar II <foo2@bar.com>" >> .hg/hgrc\n $ hg commit -m commit-1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg tip\n- changeset: 4:6f24bfb4c617\n+ changeset: 3:957606a725e4\n tag: tip\n- user: Foo Bar II <foo2@bar.com>\n+ user: foo@bar.com\n date: Thu Jan 01 00:00:00 1970 +0000\n summary: commit-1\n \n@@ -75,20 +129,23 @@\n \n $ echo 12345 > asdf\n $ hg commit --config ui.interactive=False -m ask\n- enter a commit username: \n- no username found, using \'[^\']*\' instead (re)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg rollback -q\n \n $ hg commit --config ui.interactive=True -m ask <<EOF\n > Asked User <ask@example.com>\n > EOF\n- enter a commit username: Asked User <ask@example.com>\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg tip\n- changeset: 5:84c91d963b70\n+ changeset: 2:8eeac6695c1c\n tag: tip\n- user: Asked User <ask@example.com>\n+ user: foobar <foo@bar.com>\n date: Thu Jan 01 00:00:00 1970 +0000\n- summary: ask\n+ summary: commit-1\n \n \n # test no .hg/hgrc (uses generated non-interactive username)\n@@ -96,13 +153,14 @@\n $ echo space > asdf\n $ rm .hg/hgrc\n $ hg commit -m commit-1 2>&1\n- no username found, using \'[^\']*\' instead (re)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ echo space2 > asdf\n $ hg commit -u \' \' -m commit-1\n- transaction abort!\n- rollback completed\n- abort: empty username\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n # don\'t add tests here, previous test is unstable\n', 2180, 2182, 'truncated \\uXXXX escape') decoding diff, sorry
test-config.t
--- c:/hgdev/src/tests/test-config.t
+++ c:/hgdev/src/tests/test-config.t.err
@@ -410,5 +410,6 @@
$ for i in `$TESTDIR/seq.py 10 99`; do
> printf "[section]
key=$i" > configs/$i.rc
> done
+ /usr/bin/env: python3: $ENOENT$
$ HGRCPATH=configs hg config section.key
- 99
+ [1]
test-context-metadata.t
--- c:/hgdev/src/tests/test-context-metadata.t
+++ c:/hgdev/src/tests/test-context-metadata.t.err
@@ -38,14 +38,17 @@
summary: Changed
$ hg --config extensions.metaedit=$TESTTMP/metaedit.py metaedit 'parents=0' 2>&1 | egrep '^RuntimeError'
- RuntimeError: can't reuse the manifest: its p1 doesn't match the new ctx p1
+ [1]
$ hg --config extensions.metaedit=$TESTTMP/metaedit.py metaedit 'user=foo <foo@example.com>'
+ abort: abandoned transaction found
+ (run 'hg recover' to clean up transaction)
+ [255]
$ hg log -r tip
- changeset: 4:1f86eaeca92b
+ changeset: 3:ad83e9e00ec9
tag: tip
parent: 1:3afb7afe6632
- user: foo <foo@example.com>
+ user: test
date: Thu Jan 01 00:00:00 1970 +0000
- summary: Remove A
+ summary: Changed
test-contrib-check-code.t
--- c:/hgdev/src/tests/test-contrib-check-code.t
+++ c:/hgdev/src/tests/test-contrib-check-code.t.err
@@ -35,45 +35,16 @@
> NO_CHECK_EOF
$ check_code="$TESTDIR"/../contrib/check-code.py
$ "$check_code" ./wrong.py ./correct.py ./quote.py ./classstyle.py
- ./wrong.py:1:
- > def toto( arg1, arg2):
- gratuitous whitespace in () or []
- ./wrong.py:2:
- > del(arg2)
- Python keyword is not a function
- ./wrong.py:3:
- > return ( 5+6, 9)
- gratuitous whitespace in () or []
- missing whitespace in expression
- ./wrong.py:5:
- > return 1 + - Use () to wrap long lines in Python, not - ./quote.py:5:
- > '"""', 42+1, """and
- missing whitespace in expression
- ./classstyle.py:4:
- > class oldstyle_class:
- old-style class, use class foo(object)
- ./classstyle.py:7:
- > class empty():
- class foo() creates old style object, use class foo(object)
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ cat > python3-compat.py << NO_CHECK_EOF
> foo <> bar
> reduce(lambda a, b: a + b, [1, 2, 3, 4])
> dict(key=value)
> NO_CHECK_EOF
$ "$check_code" python3-compat.py
- python3-compat.py:1:
- > foo <> bar
- <> operator is not available in Python 3+, use !=
- python3-compat.py:2:
- > reduce(lambda a, b: a + b, [1, 2, 3, 4])
- reduce is not available in Python 3+
- python3-compat.py:3:
- > dict(key=value)
- dict() is different in Py2 and 3 and is slower than {}
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ cat > foo.c <<NO_CHECK_EOF
> void narf() {
@@ -83,13 +54,8 @@
> }
> NO_CHECK_EOF
$ "$check_code" ./foo.c
- ./foo.c:2:
- > strcpy(foo, bar);
- don't use strcpy, use strlcpy or memcpy
- ./foo.c:3:
- > // strcpy_s is okay, but this comment is not
- don't use //-style comments
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ cat > is-op.py <<NO_CHECK_EOF
> # is-operator comparing number or string literal
@@ -105,40 +71,15 @@
> NO_CHECK_EOF
$ "$check_code" ./is-op.py
- ./is-op.py:3:
- > y = x is 'foo'
- object comparison with literal
- ./is-op.py:4:
- > y = x is "foo"
- object comparison with literal
- ./is-op.py:5:
- > y = x is 5346
- object comparison with literal
- ./is-op.py:6:
- > y = x is -6
- object comparison with literal
- ./is-op.py:7:
- > y = x is not 'foo'
- object comparison with literal
- ./is-op.py:8:
- > y = x is not "foo"
- object comparison with literal
- ./is-op.py:9:
- > y = x is not 5346
- object comparison with literal
- ./is-op.py:10:
- > y = x is not -6
- object comparison with literal
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ cat > for-nolineno.py <<NO_CHECK_EOF
> except:
> NO_CHECK_EOF
$ "$check_code" for-nolineno.py --nolineno
- for-nolineno.py:0:
- > except:
- naked except clause
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ cat > warning.t <<NO_CHECK_EOF
> $ function warnonly {
@@ -147,25 +88,17 @@
> $ function onwarn {}
> NO_CHECK_EOF
$ "$check_code" warning.t
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ "$check_code" --warn warning.t
- warning.t:1:
- > $ function warnonly {
- warning: don't use 'function', use old style
- warning.t:3:
- > $ diff -N aaa
- warning: don't use 'diff -N'
- warning.t:4:
- > $ function onwarn {}
- warning: don't use 'function', use old style
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ cat > error.t <<NO_CHECK_EOF
> $ [ foo == bar ]
> NO_CHECK_EOF
$ "$check_code" error.t
- error.t:1:
- > $ [ foo == bar ]
- [ foo == bar ] is a bashism, use [ foo = bar ] instead
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ rm error.t
$ cat > raise-format.py <<NO_CHECK_EOF
> raise SomeException, message
@@ -173,21 +106,16 @@
> raise SomeException(arg1, arg2)
> NO_CHECK_EOF
$ "$check_code" not-existing.py raise-format.py
- Skipping*not-existing.py* (glob)
- raise-format.py:1:
- > raise SomeException, message
- don't use old-style two-argument raise, use Exception(message)
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ cat <<NO_CHECK_EOF > tab.t
> indent
> > heredoc
> NO_CHECK_EOF
$ "$check_code" tab.t
- tab.t:1:
- > indent
- don't use tabs to indent
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ rm tab.t
$ cat > rst.py <<NO_CHECK_EOF
@@ -221,13 +149,8 @@
> """
> NO_CHECK_EOF
$ $check_code -w rst.py
- rst.py:3:
- > .. note::
- warning: add two newlines after '.. note::'
- rst.py:26:
- > .. note::
- warning: add two newlines after '.. note::'
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ cat > ./map-inside-gettext.py <<NO_CHECK_EOF
> print(_("map inside gettext %s" % v))
@@ -242,22 +165,8 @@
> "leading spaces inside of '(' %s" % v))
> NO_CHECK_EOF
$ "$check_code" ./map-inside-gettext.py
- ./map-inside-gettext.py:1:
- > print(_("map inside gettext %s" % v))
- don't use % inside _()
- ./map-inside-gettext.py:3:
- > print(_("concatenating " " by " " space %s" % v))
- don't use % inside _()
- ./map-inside-gettext.py:4:
- > print(_("concatenating " + " by " + " '+' %s" % v))
- don't use % inside _()
- ./map-inside-gettext.py:6:
- > print(_("mapping operation in different line %s"
- don't use % inside _()
- ./map-inside-gettext.py:9:
- > print(_(
- don't use % inside _()
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
web templates
@@ -270,10 +179,8 @@
> NO_CHECK_EOF
$ "$check_code" --warnings mercurial/templates/example.tmpl
- mercurial/templates/example.tmpl:2:
- > {desc|escape}
- warning: follow desc keyword with either firstline or websub
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
'string join across lines with no space' detection
@@ -339,46 +246,8 @@
should break rules depending on result of repquote(), in this case)
$ "$check_code" stringjoin.py uigettext.py superfluous_pass.py
- stringjoin.py:1:
- > foo = (' foo'
- string join across lines with no space
- stringjoin.py:2:
- > 'bar foo.'
- string join across lines with no space
- stringjoin.py:3:
- > 'bar foo:'
- string join across lines with no space
- stringjoin.py:4:
- > 'bar foo@'
- string join across lines with no space
- stringjoin.py:5:
- > 'bar foo%'
- string join across lines with no space
- stringjoin.py:6:
- > 'bar foo*'
- string join across lines with no space
- stringjoin.py:7:
- > 'bar foo+'
- string join across lines with no space
- stringjoin.py:8:
- > 'bar foo-'
- string join across lines with no space
- uigettext.py:1:
- > ui.status("% 10s %05d % -3.2f %*s %%"
- missing _() in ui message (use () to hide false-positives)
- superfluous_pass.py:14:
- > if foo:
- omit superfluous pass
- superfluous_pass.py:17:
- > else: # trailing comment doesn't fool checker
- omit superfluous pass
- superfluous_pass.py:20:
- > def nothing():
- omit superfluous pass
- superfluous_pass.py:23:
- > class empty(object):
- omit superfluous pass
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
Check code fragments embedded in test script
@@ -399,31 +268,11 @@
> > EOF
> NO_CHECK_EOF
$ "$check_code" embedded-code.t
- embedded-code.t:2:
- > x = (1,2)
- missing whitespace after ,
- embedded-code.t:4:
- > x = (1,2)
- missing whitespace after ,
- embedded-code.t:8:
- > x = (1,2)
- missing whitespace after ,
- embedded-code.t:13:
- > x = (1,2)
- missing whitespace after ,
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
"max warnings per file" is shared by all embedded code fragments
$ "$check_code" --per-file=3 embedded-code.t
- embedded-code.t:2:
- > x = (1,2)
- missing whitespace after ,
- embedded-code.t:4:
- > x = (1,2)
- missing whitespace after ,
- embedded-code.t:8:
- > x = (1,2)
- missing whitespace after ,
- (too many errors, giving up)
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
test-contrib-check-commit.t
--- c:/hgdev/src/tests/test-contrib-check-commit.t
+++ c:/hgdev/src/tests/test-contrib-check-commit.t.err
@@ -29,6 +29,8 @@
> + pass
> EOF
$ cat patch-with-long-header.diff | $TESTDIR/../contrib/check-commit
+ /usr/bin/env: python3: $ENOENT$
+ [127]
This would normally be against the rules, but it's okay because that's
what tagging and signing looks like:
@@ -53,6 +55,8 @@
> +a1dd2c0c479e0550040542e392e87bc91262517e 4.1-rc
> EOF
$ $TESTDIR/../contrib/check-commit < creates-a-tag.diff
+ /usr/bin/env: python3: $ENOENT$
+ [127]
A patch with lots of errors:
@@ -79,19 +83,8 @@
> if opts.get('all'):
> EOF
$ cat patch-with-long-header.diff | $TESTDIR/../contrib/check-commit
- 1: username is not an email address
- # User timeless
- 7: summary keyword should be most user-relevant one-word command or topic
- transplant/foo: this summary is way too long use Oxford comma (bc) (bug123) (issue 244)
- 7: (BC) needs to be uppercase
- transplant/foo: this summary is way too long use Oxford comma (bc) (bug123) (issue 244)
- 7: use (issueDDDD) instead of bug
- transplant/foo: this summary is way too long use Oxford comma (bc) (bug123) (issue 244)
- 7: no space allowed between issue and number
- transplant/foo: this summary is way too long use Oxford comma (bc) (bug123) (issue 244)
- 7: summary line too long (limit is 78)
- transplant/foo: this summary is way too long use Oxford comma (bc) (bug123) (issue 244)
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
A patch with other errors:
@@ -122,12 +115,5 @@
>
> EOF
$ cat patch-with-long-header.diff | $TESTDIR/../contrib/check-commit
- 1: username is not an email address
- # User timeless
- 7: don't capitalize summary lines
- This has no topic and ends with a period.
- 7: summary line doesn't start with 'topic: '
- This has no topic and ends with a period.
- 7: don't add trailing period on summary line
- This has no topic and ends with a period.
- [1]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
test-convert-filemap.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-convert-filemap.t\n+++ c:/hgdev/src/tests/test-convert-filemap.t.err\n@@ -294,7 +294,6 @@\n $ hg -q convert --filemap renames.fmap --datesort source dummydest\n abort: data/dir/file3.i@e96dce0bc6a2: no match found (reporevlogstore !)\n abort: data/dir/file3/index@e96dce0bc6a2: no node (reposimplestore !)\n- [255]\n $ hg -q convert --filemap renames.fmap --datesort --config convert.hg.ignoreerrors=1 source renames.repo\n ignoring: data/dir/file3.i@e96dce0bc6a2: no match found (reporevlogstore !)\n ignoring: data/dir/file4.i@6edd55f559cd: no match found (reporevlogstore !)\n@@ -308,20 +307,22 @@\n |\n o 2 "2: change foo" files: foo2\n |\n- o 1 "1: add bar quux; copy foo to copied" files: copied2\n- |\n- o 0 "0: add foo baz dir/" files: dir2/dir3/file dir2/dir3/subdir/file3 foo2\n+ o 1 "1: add bar quux; copy foo to copied" files: copied2 dir2/dir3/file4\n+ |\n+ o 0 "0: add foo baz dir/" files: dir2/dir3/file dir2/dir3/file3 dir2/dir3/subdir/file3 foo2\n \n $ hg -R renames.repo verify\n checking changesets\n checking manifests\n crosschecking files in changesets and manifests\n checking files\n- checked 5 changesets with 7 changes to 4 files\n+ checked 5 changesets with 9 changes to 6 files\n \n $ hg -R renames.repo manifest --debug\n d43feacba7a4f1f2080dde4a4b985bd8a0236d46 644 copied2\n 3e20847584beff41d7cd16136b7331ab3d754be0 644 dir2/dir3/file\n+ e96dce0bc6a217656a3a410e5e6bec2c4f42bf7c 644 dir2/dir3/file3\n+ 6edd55f559cdce67132b12ca09e09cee08b60442 644 dir2/dir3/file4\n 5fe139720576e18e34bcc9f79174db8897c8afe9 644 dir2/dir3/subdir/file3\n 9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo2\n $ hg --cwd renames.repo debugrename copied2\n@@ -673,12 +674,70 @@\n $ hg --config extensions.mq= strip tip\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n saved backup bundle to $TESTTMP/namedbranch/.hg/strip-backup/73899bcbe45c-92adf160-backup.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\namedbranch\\.hg\\strip-backup/73899bcbe45c-92adf160-backup.hg\'\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: convert, mq, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 4237, in mqcommand\n+ return orig(ui, repo, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg up foo\n 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg merge default\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n (branch merge, don\'t forget to commit)\n $ hg ci -m merge\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ cd ..\n \n $ hg convert --filemap filemap namedbranch namedbranch-hg2\n@@ -691,19 +750,17 @@\n 1 changeb\n 0 merge\n $ glog -R namedbranch\n- @ 3:e1959de76e1b@foo "merge" files:\n- |\\\n- | o 2:8097982d19fc@foo "changeb" files: b\n+ @ 3:73899bcbe45c@default "merge" files:\n+ |\\\n+ | @ 2:8097982d19fc@foo "changeb" files: b\n | |\n o | 1:1f60ea617824@default "changea" files: a\n |/\n o 0:0146e6129113@default "add" files: a b\n \n $ glog -R namedbranch-hg2\n- o 2:dcf314454667@foo "merge" files:\n- |\\\n- | o 1:cda818e7219b@default "changea" files: a\n- |/\n+ o 1:cda818e7219b@default "changea" files: a\n+ |\n o 0:c334dc3be0da@default "add" files: a\n \n $ cd ..\n', 3984, 3986, 'truncated \\uXXXX escape') decoding diff, sorry
test-convert-hg-source.t
--- c:/hgdev/src/tests/test-convert-hg-source.t
+++ c:/hgdev/src/tests/test-convert-hg-source.t.err
@@ -193,12 +193,13 @@
checking manifests
crosschecking files in changesets and manifests
checking files
- checked 5 changesets with 5 changes to 3 files
+ checked 5 changesets with 9 changes to 4 files
manifest -r 0
$ hg -R fixed manifest -r 0
a
+ b
manifest -r tip
test-copies-chain-merge.t#changeset
--- c:/hgdev/src/tests/test-copies-chain-merge.t
+++ c:/hgdev/src/tests/test-copies-chain-merge.t#changeset.err
@@ -351,9 +351,11 @@
rev linkrev nodeid p1 p2
0 2 169be882533b 000000000000 000000000000 (no-changeset !)
0 2 b789fdd96dc2 000000000000 000000000000 (changeset !)
- 1 8 b004912a8510 000000000000 000000000000
+ 0 2 169be882533b 000000000000 000000000000
2 22 4a067cf8965d 000000000000 000000000000 (no-changeset !)
2 22 fe6f8b4f507f 000000000000 000000000000 (changeset !)
+ 1 8 b004912a8510 000000000000 000000000000
+ 2 22 4a067cf8965d 000000000000 000000000000
$ hg up 'desc("b-1")'
3 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("f-2")'
@@ -1052,13 +1054,16 @@
$ hg manifest --debug --rev 'desc("b-1")' | grep '644 d'
169be882533bc917905d46c0c951aa9a1e288dcf 644 d (no-changeset !)
b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 d (changeset !)
+ 169be882533bc917905d46c0c951aa9a1e288dcf 644 d
$ hg debugindex d | head -n 4
rev linkrev nodeid p1 p2
0 2 169be882533b 000000000000 000000000000 (no-changeset !)
0 2 b789fdd96dc2 000000000000 000000000000 (changeset !)
- 1 8 b004912a8510 000000000000 000000000000
+ 0 2 169be882533b 000000000000 000000000000
2 22 4a067cf8965d 000000000000 000000000000 (no-changeset !)
2 22 fe6f8b4f507f 000000000000 000000000000 (changeset !)
+ 1 8 b004912a8510 000000000000 000000000000
+ 2 22 4a067cf8965d 000000000000 000000000000
Log output should not include a merge commit as it did not happen
@@ -1124,19 +1129,19 @@
3 20 a9a8bc3860c9 71b9b7e73d97 263ea25e220a
#else
$ hg manifest --debug --rev 'desc("mAEm-0")' | grep '644 f'
- 498e8799f49f9da1ca06bb2d6d4accf165c5b572 644 f
+ c39c6083dad048d5138618a46f123e2f397f4f18 644 f
$ hg manifest --debug --rev 'desc("mEAm-0")' | grep '644 f'
- c5b506a7118667a38a9c9348a1f63b679e382f57 644 f
+ a9a8bc3860c9d8fa5f2f7e6ea8d40498322737fd 644 f
$ hg manifest --debug --rev 'desc("a-2")' | grep '644 f'
- b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 f
+ 263ea25e220aaeb7b9bac551c702037849aa75e8 644 f
$ hg manifest --debug --rev 'desc("e-2")' | grep '644 f'
- 1e88685f5ddec574a34c70af492f95b6debc8741 644 f
+ 71b9b7e73d973572ade6dd765477fcee6890e8b1 644 f
$ hg debugindex f
rev linkrev nodeid p1 p2
- 0 4 b789fdd96dc2 000000000000 000000000000
- 1 10 1e88685f5dde 000000000000 000000000000
- 2 19 498e8799f49f b789fdd96dc2 1e88685f5dde
- 3 20 c5b506a71186 1e88685f5dde b789fdd96dc2
+ 0 4 263ea25e220a 000000000000 000000000000
+ 1 10 71b9b7e73d97 000000000000 000000000000
+ 2 19 c39c6083dad0 263ea25e220a 71b9b7e73d97
+ 3 20 a9a8bc3860c9 71b9b7e73d97 263ea25e220a
#endif
# Here the filelog based implementation is not looking at the rename
@@ -1188,6 +1193,7 @@
A f
d (filelog !)
b (no-filelog !)
+ d
R b
R d
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mAEm-0")'
@@ -1199,6 +1205,7 @@
A f
a (filelog !)
b (no-filelog !)
+ a
R a
R b
@@ -1277,7 +1284,10 @@
$ hg log -Gfr 'desc("mBFm-0")' d
o 22 f-2: rename i -> d
|
- ~
+ o 21 f-1: rename h -> i
+ :
+ o 0 i-0 initial commit: a b h
+
#endif
#if no-changeset
@@ -1293,7 +1303,10 @@
$ hg log -Gfr 'desc("mFBm-0")' d
o 22 f-2: rename i -> d
|
- ~
+ o 21 f-1: rename h -> i
+ :
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1330,6 +1343,7 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mDGm-0")'
A d
a (filelog !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mGDm-0")'
A d
@@ -1369,7 +1383,10 @@
|/
o 2 i-2: c -move-> d
|
- ~
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1398,7 +1415,10 @@
|/
o 2 i-2: c -move-> d
|
- ~
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1441,6 +1461,7 @@
A d
a (no-filelog !)
h (filelog !)
+ h
R a
R h
$ hg status --copies --rev 'desc("f-2")' --rev 'desc("mFGm-0")'
@@ -1488,10 +1509,15 @@
| o 25 g-1: update d
| |
o | 22 f-2: rename i -> d
- |/
- o 2 i-2: c -move-> d
- |
- ~
+ | |
+ o | 21 f-1: rename h -> i
+ |/
+ o 2 i-2: c -move-> d
+ |
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
#if no-changeset
@@ -1518,10 +1544,15 @@
| o 25 g-1: update d
| |
o | 22 f-2: rename i -> d
- |/
- o 2 i-2: c -move-> d
- |
- ~
+ | |
+ o | 21 f-1: rename h -> i
+ |/
+ o 2 i-2: c -move-> d
+ |
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1557,10 +1588,12 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mCGm-0")'
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mGCm-0")'
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("c-1")' --rev 'desc("mCGm-0")'
A d
@@ -1603,11 +1636,13 @@
M b
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mBC-revert-m-0")'
M b
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("c-1")' --rev 'desc("mCB-revert-m-0")'
M b
@@ -1646,6 +1681,7 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mCH-delete-before-conflict-m")'
A d
b (no-compatibility no-changeset !)
+ b
R a
R b
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mHC-delete-before-conflict-m")'
test-copies-chain-merge.t#compatibility
--- c:/hgdev/src/tests/test-copies-chain-merge.t
+++ c:/hgdev/src/tests/test-copies-chain-merge.t#compatibility.err
@@ -351,9 +351,11 @@
rev linkrev nodeid p1 p2
0 2 169be882533b 000000000000 000000000000 (no-changeset !)
0 2 b789fdd96dc2 000000000000 000000000000 (changeset !)
- 1 8 b004912a8510 000000000000 000000000000
+ 0 2 169be882533b 000000000000 000000000000
2 22 4a067cf8965d 000000000000 000000000000 (no-changeset !)
2 22 fe6f8b4f507f 000000000000 000000000000 (changeset !)
+ 1 8 b004912a8510 000000000000 000000000000
+ 2 22 4a067cf8965d 000000000000 000000000000
$ hg up 'desc("b-1")'
3 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("f-2")'
@@ -1052,13 +1054,16 @@
$ hg manifest --debug --rev 'desc("b-1")' | grep '644 d'
169be882533bc917905d46c0c951aa9a1e288dcf 644 d (no-changeset !)
b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 d (changeset !)
+ 169be882533bc917905d46c0c951aa9a1e288dcf 644 d
$ hg debugindex d | head -n 4
rev linkrev nodeid p1 p2
0 2 169be882533b 000000000000 000000000000 (no-changeset !)
0 2 b789fdd96dc2 000000000000 000000000000 (changeset !)
- 1 8 b004912a8510 000000000000 000000000000
+ 0 2 169be882533b 000000000000 000000000000
2 22 4a067cf8965d 000000000000 000000000000 (no-changeset !)
2 22 fe6f8b4f507f 000000000000 000000000000 (changeset !)
+ 1 8 b004912a8510 000000000000 000000000000
+ 2 22 4a067cf8965d 000000000000 000000000000
Log output should not include a merge commit as it did not happen
@@ -1124,19 +1129,19 @@
3 20 a9a8bc3860c9 71b9b7e73d97 263ea25e220a
#else
$ hg manifest --debug --rev 'desc("mAEm-0")' | grep '644 f'
- 498e8799f49f9da1ca06bb2d6d4accf165c5b572 644 f
+ c39c6083dad048d5138618a46f123e2f397f4f18 644 f
$ hg manifest --debug --rev 'desc("mEAm-0")' | grep '644 f'
- c5b506a7118667a38a9c9348a1f63b679e382f57 644 f
+ a9a8bc3860c9d8fa5f2f7e6ea8d40498322737fd 644 f
$ hg manifest --debug --rev 'desc("a-2")' | grep '644 f'
- b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 f
+ 263ea25e220aaeb7b9bac551c702037849aa75e8 644 f
$ hg manifest --debug --rev 'desc("e-2")' | grep '644 f'
- 1e88685f5ddec574a34c70af492f95b6debc8741 644 f
+ 71b9b7e73d973572ade6dd765477fcee6890e8b1 644 f
$ hg debugindex f
rev linkrev nodeid p1 p2
- 0 4 b789fdd96dc2 000000000000 000000000000
- 1 10 1e88685f5dde 000000000000 000000000000
- 2 19 498e8799f49f b789fdd96dc2 1e88685f5dde
- 3 20 c5b506a71186 1e88685f5dde b789fdd96dc2
+ 0 4 263ea25e220a 000000000000 000000000000
+ 1 10 71b9b7e73d97 000000000000 000000000000
+ 2 19 c39c6083dad0 263ea25e220a 71b9b7e73d97
+ 3 20 a9a8bc3860c9 71b9b7e73d97 263ea25e220a
#endif
# Here the filelog based implementation is not looking at the rename
@@ -1188,6 +1193,7 @@
A f
d (filelog !)
b (no-filelog !)
+ d
R b
R d
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mAEm-0")'
@@ -1199,6 +1205,7 @@
A f
a (filelog !)
b (no-filelog !)
+ a
R a
R b
@@ -1277,7 +1284,10 @@
$ hg log -Gfr 'desc("mBFm-0")' d
o 22 f-2: rename i -> d
|
- ~
+ o 21 f-1: rename h -> i
+ :
+ o 0 i-0 initial commit: a b h
+
#endif
#if no-changeset
@@ -1293,7 +1303,10 @@
$ hg log -Gfr 'desc("mFBm-0")' d
o 22 f-2: rename i -> d
|
- ~
+ o 21 f-1: rename h -> i
+ :
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1330,6 +1343,7 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mDGm-0")'
A d
a (filelog !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mGDm-0")'
A d
@@ -1369,7 +1383,10 @@
|/
o 2 i-2: c -move-> d
|
- ~
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1398,7 +1415,10 @@
|/
o 2 i-2: c -move-> d
|
- ~
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1441,6 +1461,7 @@
A d
a (no-filelog !)
h (filelog !)
+ h
R a
R h
$ hg status --copies --rev 'desc("f-2")' --rev 'desc("mFGm-0")'
@@ -1488,10 +1509,15 @@
| o 25 g-1: update d
| |
o | 22 f-2: rename i -> d
- |/
- o 2 i-2: c -move-> d
- |
- ~
+ | |
+ o | 21 f-1: rename h -> i
+ |/
+ o 2 i-2: c -move-> d
+ |
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
#if no-changeset
@@ -1518,10 +1544,15 @@
| o 25 g-1: update d
| |
o | 22 f-2: rename i -> d
- |/
- o 2 i-2: c -move-> d
- |
- ~
+ | |
+ o | 21 f-1: rename h -> i
+ |/
+ o 2 i-2: c -move-> d
+ |
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1557,10 +1588,12 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mCGm-0")'
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mGCm-0")'
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("c-1")' --rev 'desc("mCGm-0")'
A d
@@ -1603,11 +1636,13 @@
M b
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mBC-revert-m-0")'
M b
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("c-1")' --rev 'desc("mCB-revert-m-0")'
M b
@@ -1646,6 +1681,7 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mCH-delete-before-conflict-m")'
A d
b (no-compatibility no-changeset !)
+ b
R a
R b
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mHC-delete-before-conflict-m")'
test-copies-chain-merge.t#filelog
--- c:/hgdev/src/tests/test-copies-chain-merge.t
+++ c:/hgdev/src/tests/test-copies-chain-merge.t#filelog.err
@@ -351,9 +351,11 @@
rev linkrev nodeid p1 p2
0 2 169be882533b 000000000000 000000000000 (no-changeset !)
0 2 b789fdd96dc2 000000000000 000000000000 (changeset !)
- 1 8 b004912a8510 000000000000 000000000000
+ 0 2 169be882533b 000000000000 000000000000
2 22 4a067cf8965d 000000000000 000000000000 (no-changeset !)
2 22 fe6f8b4f507f 000000000000 000000000000 (changeset !)
+ 1 8 b004912a8510 000000000000 000000000000
+ 2 22 4a067cf8965d 000000000000 000000000000
$ hg up 'desc("b-1")'
3 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("f-2")'
@@ -1052,13 +1054,16 @@
$ hg manifest --debug --rev 'desc("b-1")' | grep '644 d'
169be882533bc917905d46c0c951aa9a1e288dcf 644 d (no-changeset !)
b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 d (changeset !)
+ 169be882533bc917905d46c0c951aa9a1e288dcf 644 d
$ hg debugindex d | head -n 4
rev linkrev nodeid p1 p2
0 2 169be882533b 000000000000 000000000000 (no-changeset !)
0 2 b789fdd96dc2 000000000000 000000000000 (changeset !)
- 1 8 b004912a8510 000000000000 000000000000
+ 0 2 169be882533b 000000000000 000000000000
2 22 4a067cf8965d 000000000000 000000000000 (no-changeset !)
2 22 fe6f8b4f507f 000000000000 000000000000 (changeset !)
+ 1 8 b004912a8510 000000000000 000000000000
+ 2 22 4a067cf8965d 000000000000 000000000000
Log output should not include a merge commit as it did not happen
@@ -1124,19 +1129,19 @@
3 20 a9a8bc3860c9 71b9b7e73d97 263ea25e220a
#else
$ hg manifest --debug --rev 'desc("mAEm-0")' | grep '644 f'
- 498e8799f49f9da1ca06bb2d6d4accf165c5b572 644 f
+ c39c6083dad048d5138618a46f123e2f397f4f18 644 f
$ hg manifest --debug --rev 'desc("mEAm-0")' | grep '644 f'
- c5b506a7118667a38a9c9348a1f63b679e382f57 644 f
+ a9a8bc3860c9d8fa5f2f7e6ea8d40498322737fd 644 f
$ hg manifest --debug --rev 'desc("a-2")' | grep '644 f'
- b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 f
+ 263ea25e220aaeb7b9bac551c702037849aa75e8 644 f
$ hg manifest --debug --rev 'desc("e-2")' | grep '644 f'
- 1e88685f5ddec574a34c70af492f95b6debc8741 644 f
+ 71b9b7e73d973572ade6dd765477fcee6890e8b1 644 f
$ hg debugindex f
rev linkrev nodeid p1 p2
- 0 4 b789fdd96dc2 000000000000 000000000000
- 1 10 1e88685f5dde 000000000000 000000000000
- 2 19 498e8799f49f b789fdd96dc2 1e88685f5dde
- 3 20 c5b506a71186 1e88685f5dde b789fdd96dc2
+ 0 4 263ea25e220a 000000000000 000000000000
+ 1 10 71b9b7e73d97 000000000000 000000000000
+ 2 19 c39c6083dad0 263ea25e220a 71b9b7e73d97
+ 3 20 a9a8bc3860c9 71b9b7e73d97 263ea25e220a
#endif
# Here the filelog based implementation is not looking at the rename
@@ -1188,6 +1193,7 @@
A f
d (filelog !)
b (no-filelog !)
+ d
R b
R d
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mAEm-0")'
@@ -1199,6 +1205,7 @@
A f
a (filelog !)
b (no-filelog !)
+ a
R a
R b
@@ -1277,7 +1284,10 @@
$ hg log -Gfr 'desc("mBFm-0")' d
o 22 f-2: rename i -> d
|
- ~
+ o 21 f-1: rename h -> i
+ :
+ o 0 i-0 initial commit: a b h
+
#endif
#if no-changeset
@@ -1293,7 +1303,10 @@
$ hg log -Gfr 'desc("mFBm-0")' d
o 22 f-2: rename i -> d
|
- ~
+ o 21 f-1: rename h -> i
+ :
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1330,6 +1343,7 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mDGm-0")'
A d
a (filelog !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mGDm-0")'
A d
@@ -1369,7 +1383,10 @@
|/
o 2 i-2: c -move-> d
|
- ~
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1398,7 +1415,10 @@
|/
o 2 i-2: c -move-> d
|
- ~
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1441,6 +1461,7 @@
A d
a (no-filelog !)
h (filelog !)
+ h
R a
R h
$ hg status --copies --rev 'desc("f-2")' --rev 'desc("mFGm-0")'
@@ -1488,10 +1509,15 @@
| o 25 g-1: update d
| |
o | 22 f-2: rename i -> d
- |/
- o 2 i-2: c -move-> d
- |
- ~
+ | |
+ o | 21 f-1: rename h -> i
+ |/
+ o 2 i-2: c -move-> d
+ |
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
#if no-changeset
@@ -1518,10 +1544,15 @@
| o 25 g-1: update d
| |
o | 22 f-2: rename i -> d
- |/
- o 2 i-2: c -move-> d
- |
- ~
+ | |
+ o | 21 f-1: rename h -> i
+ |/
+ o 2 i-2: c -move-> d
+ |
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1557,10 +1588,12 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mCGm-0")'
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mGCm-0")'
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("c-1")' --rev 'desc("mCGm-0")'
A d
@@ -1603,11 +1636,13 @@
M b
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mBC-revert-m-0")'
M b
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("c-1")' --rev 'desc("mCB-revert-m-0")'
M b
@@ -1646,6 +1681,7 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mCH-delete-before-conflict-m")'
A d
b (no-compatibility no-changeset !)
+ b
R a
R b
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mHC-delete-before-conflict-m")'
test-copies-chain-merge.t#sidedata
--- c:/hgdev/src/tests/test-copies-chain-merge.t
+++ c:/hgdev/src/tests/test-copies-chain-merge.t#sidedata.err
@@ -351,9 +351,11 @@
rev linkrev nodeid p1 p2
0 2 169be882533b 000000000000 000000000000 (no-changeset !)
0 2 b789fdd96dc2 000000000000 000000000000 (changeset !)
- 1 8 b004912a8510 000000000000 000000000000
+ 0 2 169be882533b 000000000000 000000000000
2 22 4a067cf8965d 000000000000 000000000000 (no-changeset !)
2 22 fe6f8b4f507f 000000000000 000000000000 (changeset !)
+ 1 8 b004912a8510 000000000000 000000000000
+ 2 22 4a067cf8965d 000000000000 000000000000
$ hg up 'desc("b-1")'
3 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("f-2")'
@@ -1052,13 +1054,16 @@
$ hg manifest --debug --rev 'desc("b-1")' | grep '644 d'
169be882533bc917905d46c0c951aa9a1e288dcf 644 d (no-changeset !)
b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 d (changeset !)
+ 169be882533bc917905d46c0c951aa9a1e288dcf 644 d
$ hg debugindex d | head -n 4
rev linkrev nodeid p1 p2
0 2 169be882533b 000000000000 000000000000 (no-changeset !)
0 2 b789fdd96dc2 000000000000 000000000000 (changeset !)
- 1 8 b004912a8510 000000000000 000000000000
+ 0 2 169be882533b 000000000000 000000000000
2 22 4a067cf8965d 000000000000 000000000000 (no-changeset !)
2 22 fe6f8b4f507f 000000000000 000000000000 (changeset !)
+ 1 8 b004912a8510 000000000000 000000000000
+ 2 22 4a067cf8965d 000000000000 000000000000
Log output should not include a merge commit as it did not happen
@@ -1124,19 +1129,19 @@
3 20 a9a8bc3860c9 71b9b7e73d97 263ea25e220a
#else
$ hg manifest --debug --rev 'desc("mAEm-0")' | grep '644 f'
- 498e8799f49f9da1ca06bb2d6d4accf165c5b572 644 f
+ c39c6083dad048d5138618a46f123e2f397f4f18 644 f
$ hg manifest --debug --rev 'desc("mEAm-0")' | grep '644 f'
- c5b506a7118667a38a9c9348a1f63b679e382f57 644 f
+ a9a8bc3860c9d8fa5f2f7e6ea8d40498322737fd 644 f
$ hg manifest --debug --rev 'desc("a-2")' | grep '644 f'
- b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 f
+ 263ea25e220aaeb7b9bac551c702037849aa75e8 644 f
$ hg manifest --debug --rev 'desc("e-2")' | grep '644 f'
- 1e88685f5ddec574a34c70af492f95b6debc8741 644 f
+ 71b9b7e73d973572ade6dd765477fcee6890e8b1 644 f
$ hg debugindex f
rev linkrev nodeid p1 p2
- 0 4 b789fdd96dc2 000000000000 000000000000
- 1 10 1e88685f5dde 000000000000 000000000000
- 2 19 498e8799f49f b789fdd96dc2 1e88685f5dde
- 3 20 c5b506a71186 1e88685f5dde b789fdd96dc2
+ 0 4 263ea25e220a 000000000000 000000000000
+ 1 10 71b9b7e73d97 000000000000 000000000000
+ 2 19 c39c6083dad0 263ea25e220a 71b9b7e73d97
+ 3 20 a9a8bc3860c9 71b9b7e73d97 263ea25e220a
#endif
# Here the filelog based implementation is not looking at the rename
@@ -1188,6 +1193,7 @@
A f
d (filelog !)
b (no-filelog !)
+ d
R b
R d
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mAEm-0")'
@@ -1199,6 +1205,7 @@
A f
a (filelog !)
b (no-filelog !)
+ a
R a
R b
@@ -1277,7 +1284,10 @@
$ hg log -Gfr 'desc("mBFm-0")' d
o 22 f-2: rename i -> d
|
- ~
+ o 21 f-1: rename h -> i
+ :
+ o 0 i-0 initial commit: a b h
+
#endif
#if no-changeset
@@ -1293,7 +1303,10 @@
$ hg log -Gfr 'desc("mFBm-0")' d
o 22 f-2: rename i -> d
|
- ~
+ o 21 f-1: rename h -> i
+ :
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1330,6 +1343,7 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mDGm-0")'
A d
a (filelog !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mGDm-0")'
A d
@@ -1369,7 +1383,10 @@
|/
o 2 i-2: c -move-> d
|
- ~
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1398,7 +1415,10 @@
|/
o 2 i-2: c -move-> d
|
- ~
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1441,6 +1461,7 @@
A d
a (no-filelog !)
h (filelog !)
+ h
R a
R h
$ hg status --copies --rev 'desc("f-2")' --rev 'desc("mFGm-0")'
@@ -1488,10 +1509,15 @@
| o 25 g-1: update d
| |
o | 22 f-2: rename i -> d
- |/
- o 2 i-2: c -move-> d
- |
- ~
+ | |
+ o | 21 f-1: rename h -> i
+ |/
+ o 2 i-2: c -move-> d
+ |
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
#if no-changeset
@@ -1518,10 +1544,15 @@
| o 25 g-1: update d
| |
o | 22 f-2: rename i -> d
- |/
- o 2 i-2: c -move-> d
- |
- ~
+ | |
+ o | 21 f-1: rename h -> i
+ |/
+ o 2 i-2: c -move-> d
+ |
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1557,10 +1588,12 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mCGm-0")'
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mGCm-0")'
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("c-1")' --rev 'desc("mCGm-0")'
A d
@@ -1603,11 +1636,13 @@
M b
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mBC-revert-m-0")'
M b
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("c-1")' --rev 'desc("mCB-revert-m-0")'
M b
@@ -1646,6 +1681,7 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mCH-delete-before-conflict-m")'
A d
b (no-compatibility no-changeset !)
+ b
R a
R b
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mHC-delete-before-conflict-m")'
test-copies-chain-merge.t#upgraded
--- c:/hgdev/src/tests/test-copies-chain-merge.t
+++ c:/hgdev/src/tests/test-copies-chain-merge.t#upgraded.err
@@ -351,9 +351,11 @@
rev linkrev nodeid p1 p2
0 2 169be882533b 000000000000 000000000000 (no-changeset !)
0 2 b789fdd96dc2 000000000000 000000000000 (changeset !)
- 1 8 b004912a8510 000000000000 000000000000
+ 0 2 169be882533b 000000000000 000000000000
2 22 4a067cf8965d 000000000000 000000000000 (no-changeset !)
2 22 fe6f8b4f507f 000000000000 000000000000 (changeset !)
+ 1 8 b004912a8510 000000000000 000000000000
+ 2 22 4a067cf8965d 000000000000 000000000000
$ hg up 'desc("b-1")'
3 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("f-2")'
@@ -1052,13 +1054,16 @@
$ hg manifest --debug --rev 'desc("b-1")' | grep '644 d'
169be882533bc917905d46c0c951aa9a1e288dcf 644 d (no-changeset !)
b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 d (changeset !)
+ 169be882533bc917905d46c0c951aa9a1e288dcf 644 d
$ hg debugindex d | head -n 4
rev linkrev nodeid p1 p2
0 2 169be882533b 000000000000 000000000000 (no-changeset !)
0 2 b789fdd96dc2 000000000000 000000000000 (changeset !)
- 1 8 b004912a8510 000000000000 000000000000
+ 0 2 169be882533b 000000000000 000000000000
2 22 4a067cf8965d 000000000000 000000000000 (no-changeset !)
2 22 fe6f8b4f507f 000000000000 000000000000 (changeset !)
+ 1 8 b004912a8510 000000000000 000000000000
+ 2 22 4a067cf8965d 000000000000 000000000000
Log output should not include a merge commit as it did not happen
@@ -1124,19 +1129,19 @@
3 20 a9a8bc3860c9 71b9b7e73d97 263ea25e220a
#else
$ hg manifest --debug --rev 'desc("mAEm-0")' | grep '644 f'
- 498e8799f49f9da1ca06bb2d6d4accf165c5b572 644 f
+ c39c6083dad048d5138618a46f123e2f397f4f18 644 f
$ hg manifest --debug --rev 'desc("mEAm-0")' | grep '644 f'
- c5b506a7118667a38a9c9348a1f63b679e382f57 644 f
+ a9a8bc3860c9d8fa5f2f7e6ea8d40498322737fd 644 f
$ hg manifest --debug --rev 'desc("a-2")' | grep '644 f'
- b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 f
+ 263ea25e220aaeb7b9bac551c702037849aa75e8 644 f
$ hg manifest --debug --rev 'desc("e-2")' | grep '644 f'
- 1e88685f5ddec574a34c70af492f95b6debc8741 644 f
+ 71b9b7e73d973572ade6dd765477fcee6890e8b1 644 f
$ hg debugindex f
rev linkrev nodeid p1 p2
- 0 4 b789fdd96dc2 000000000000 000000000000
- 1 10 1e88685f5dde 000000000000 000000000000
- 2 19 498e8799f49f b789fdd96dc2 1e88685f5dde
- 3 20 c5b506a71186 1e88685f5dde b789fdd96dc2
+ 0 4 263ea25e220a 000000000000 000000000000
+ 1 10 71b9b7e73d97 000000000000 000000000000
+ 2 19 c39c6083dad0 263ea25e220a 71b9b7e73d97
+ 3 20 a9a8bc3860c9 71b9b7e73d97 263ea25e220a
#endif
# Here the filelog based implementation is not looking at the rename
@@ -1188,6 +1193,7 @@
A f
d (filelog !)
b (no-filelog !)
+ d
R b
R d
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mAEm-0")'
@@ -1199,6 +1205,7 @@
A f
a (filelog !)
b (no-filelog !)
+ a
R a
R b
@@ -1277,7 +1284,10 @@
$ hg log -Gfr 'desc("mBFm-0")' d
o 22 f-2: rename i -> d
|
- ~
+ o 21 f-1: rename h -> i
+ :
+ o 0 i-0 initial commit: a b h
+
#endif
#if no-changeset
@@ -1293,7 +1303,10 @@
$ hg log -Gfr 'desc("mFBm-0")' d
o 22 f-2: rename i -> d
|
- ~
+ o 21 f-1: rename h -> i
+ :
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1330,6 +1343,7 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mDGm-0")'
A d
a (filelog !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mGDm-0")'
A d
@@ -1369,7 +1383,10 @@
|/
o 2 i-2: c -move-> d
|
- ~
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1398,7 +1415,10 @@
|/
o 2 i-2: c -move-> d
|
- ~
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1441,6 +1461,7 @@
A d
a (no-filelog !)
h (filelog !)
+ h
R a
R h
$ hg status --copies --rev 'desc("f-2")' --rev 'desc("mFGm-0")'
@@ -1488,10 +1509,15 @@
| o 25 g-1: update d
| |
o | 22 f-2: rename i -> d
- |/
- o 2 i-2: c -move-> d
- |
- ~
+ | |
+ o | 21 f-1: rename h -> i
+ |/
+ o 2 i-2: c -move-> d
+ |
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
#if no-changeset
@@ -1518,10 +1544,15 @@
| o 25 g-1: update d
| |
o | 22 f-2: rename i -> d
- |/
- o 2 i-2: c -move-> d
- |
- ~
+ | |
+ o | 21 f-1: rename h -> i
+ |/
+ o 2 i-2: c -move-> d
+ |
+ o 1 i-1: a -move-> c
+ |
+ o 0 i-0 initial commit: a b h
+
#endif
@@ -1557,10 +1588,12 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mCGm-0")'
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mGCm-0")'
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("c-1")' --rev 'desc("mCGm-0")'
A d
@@ -1603,11 +1636,13 @@
M b
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mBC-revert-m-0")'
M b
A d
a (no-compatibility no-changeset !)
+ a
R a
$ hg status --copies --rev 'desc("c-1")' --rev 'desc("mCB-revert-m-0")'
M b
@@ -1646,6 +1681,7 @@
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mCH-delete-before-conflict-m")'
A d
b (no-compatibility no-changeset !)
+ b
R a
R b
$ hg status --copies --rev 'desc("i-0")' --rev 'desc("mHC-delete-before-conflict-m")'
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-copies-in-changeset.t\n+++ c:/hgdev/src/tests/test-copies-in-changeset.t#extra.err\n@@ -81,9 +81,6 @@\n 2\\x00a (esc)\n #else\n $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 44\n- \'\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x03\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\x00abcd\'\n #endif\n \n $ hg showcopies\n@@ -117,9 +114,6 @@\n \n #else\n $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 25\n- \'\\x00\\x00\\x00\\x02\\x0c\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x03\\x00\\x00\\x00\\x00bb2\'\n #endif\n \n $ hg showcopies\n@@ -160,9 +154,6 @@\n \n #else\n $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 25\n- \'\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x16\\x00\\x00\\x00\\x03\\x00\\x00\\x00\\x00b2c\'\n #endif\n \n $ hg showcopies\n@@ -217,9 +208,6 @@\n \n #else\n $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 64\n- \'\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x03\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\x00\\x07\\x00\\x00\\x00\\x05\\x00\\x00\\x00\\x01\\x06\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x02adfghi\'\n #endif\n \n $ hg showcopies\n@@ -242,9 +230,6 @@\n #else\n $ hg ci -m \'copy a to j\'\n $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 24\n- \'\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00aj\'\n #endif\n $ hg debugdata j 0\n \\x01 (esc)\n@@ -270,10 +255,68 @@\n #else\n $ hg ci --amend -m \'copy a to j, v2\'\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-*-amend.hg (glob)\n- $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 24\n- \'\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00aj\'\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/29db913595f5-876027f5-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/29db913595f5-ad903eb6-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/29db913595f5-ad903eb6-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase, split\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+ $ hg debugsidedata -c -v -- -1\n #endif\n $ hg showcopies --config experimental.copies.read-from=filelog-only\n a -> j\n@@ -291,10 +334,10 @@\n p2copies: \n #else\n $ hg ci -m \'modify j\'\n- $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 14\n- \'\\x00\\x00\\x00\\x01\\x14\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00j\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg debugsidedata -c -v -- -1\n #endif\n \n Test writing only to filelog\n@@ -308,18 +351,15 @@\n \n #else\n $ hg ci -m \'copy a to k\'\n- $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 24\n- \'\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00ak\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg debugsidedata -c -v -- -1\n #endif\n \n $ hg debugdata k 0\n- \\x01 (esc)\n- copy: a\n- copyrev: b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3\n- \\x01 (esc)\n- a\n+ abort: cannot give path to non-revlog\n+ [10]\n #if extra\n $ hg showcopies\n \n@@ -329,7 +369,7 @@\n a -> k\n #else\n $ hg showcopies\n- a -> k\n+ a -> j\n #endif\n \n $ cd ..\n@@ -349,6 +389,69 @@\n rebasing 2:* tip "rename a to b" (glob)\n merging a and b to b\n saved backup bundle to $TESTTMP/rebase-rename/.hg/strip-backup/*-*-rebase.hg (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\rebase-rename\\.hg\\strip-backup/b977edf6f839-0864f570-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\rebase-rename\\.hg\\strip-backup/b977edf6f839-309da888-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\rebase-rename\\.hg\\strip-backup/b977edf6f839-309da888-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase, split\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1113, in rebase\n+ return _dorebase(ui, repo, action, opts, inmemory=inmemory)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "c:\\hgdev\\python27-x64\\Lib\\contextlib.py", line 24, in __exit__\n+ self.gen.next()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1375, in acceptintervention\n+ tr.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg st --change . --copies\n A b\n a\n@@ -396,6 +499,63 @@\n (enter ? for help) [Ynesfdaq?] y\n \n saved backup bundle to $TESTTMP/split/.hg/strip-backup/*-*-split.hg (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\split\\.hg\\strip-backup/c7088e2d8efb-b94c0173-split.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\split\\.hg\\strip-backup/c7088e2d8efb-2be73c28-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\split\\.hg\\strip-backup/c7088e2d8efb-2be73c28-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase, split\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\split.py", line 122, in split\n+ dorebase(ui, repo, torebase, top)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cd ..\n \n Test committing half a rename\n', 4142, 4144, 'truncated \\uXXXX escape') decoding diff, sorry
test-copies-in-changeset.t#sidedata
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-copies-in-changeset.t\n+++ c:/hgdev/src/tests/test-copies-in-changeset.t#sidedata.err\n@@ -81,9 +81,6 @@\n 2\\x00a (esc)\n #else\n $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 44\n- \'\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x03\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\x00abcd\'\n #endif\n \n $ hg showcopies\n@@ -117,9 +114,6 @@\n \n #else\n $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 25\n- \'\\x00\\x00\\x00\\x02\\x0c\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x03\\x00\\x00\\x00\\x00bb2\'\n #endif\n \n $ hg showcopies\n@@ -160,9 +154,6 @@\n \n #else\n $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 25\n- \'\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x16\\x00\\x00\\x00\\x03\\x00\\x00\\x00\\x00b2c\'\n #endif\n \n $ hg showcopies\n@@ -217,9 +208,6 @@\n \n #else\n $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 64\n- \'\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x03\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x04\\x00\\x00\\x00\\x00\\x07\\x00\\x00\\x00\\x05\\x00\\x00\\x00\\x01\\x06\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x02adfghi\'\n #endif\n \n $ hg showcopies\n@@ -242,9 +230,6 @@\n #else\n $ hg ci -m \'copy a to j\'\n $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 24\n- \'\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00aj\'\n #endif\n $ hg debugdata j 0\n \\x01 (esc)\n@@ -270,10 +255,68 @@\n #else\n $ hg ci --amend -m \'copy a to j, v2\'\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-*-amend.hg (glob)\n- $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 24\n- \'\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00aj\'\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/29db913595f5-876027f5-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/29db913595f5-ad903eb6-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/29db913595f5-ad903eb6-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase, split\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+ $ hg debugsidedata -c -v -- -1\n #endif\n $ hg showcopies --config experimental.copies.read-from=filelog-only\n a -> j\n@@ -291,10 +334,10 @@\n p2copies: \n #else\n $ hg ci -m \'modify j\'\n- $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 14\n- \'\\x00\\x00\\x00\\x01\\x14\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00j\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg debugsidedata -c -v -- -1\n #endif\n \n Test writing only to filelog\n@@ -308,18 +351,15 @@\n \n #else\n $ hg ci -m \'copy a to k\'\n- $ hg debugsidedata -c -v -- -1\n- 1 sidedata entries\n- entry-0014 size 24\n- \'\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00\\x01\\x00\\x00\\x00\\x00\\x06\\x00\\x00\\x00\\x02\\x00\\x00\\x00\\x00ak\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg debugsidedata -c -v -- -1\n #endif\n \n $ hg debugdata k 0\n- \\x01 (esc)\n- copy: a\n- copyrev: b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3\n- \\x01 (esc)\n- a\n+ abort: cannot give path to non-revlog\n+ [10]\n #if extra\n $ hg showcopies\n \n@@ -329,7 +369,7 @@\n a -> k\n #else\n $ hg showcopies\n- a -> k\n+ a -> j\n #endif\n \n $ cd ..\n@@ -349,6 +389,69 @@\n rebasing 2:* tip "rename a to b" (glob)\n merging a and b to b\n saved backup bundle to $TESTTMP/rebase-rename/.hg/strip-backup/*-*-rebase.hg (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\rebase-rename\\.hg\\strip-backup/b977edf6f839-0864f570-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\rebase-rename\\.hg\\strip-backup/b977edf6f839-309da888-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\rebase-rename\\.hg\\strip-backup/b977edf6f839-309da888-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase, split\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1113, in rebase\n+ return _dorebase(ui, repo, action, opts, inmemory=inmemory)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "c:\\hgdev\\python27-x64\\Lib\\contextlib.py", line 24, in __exit__\n+ self.gen.next()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1375, in acceptintervention\n+ tr.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg st --change . --copies\n A b\n a\n@@ -396,6 +499,63 @@\n (enter ? for help) [Ynesfdaq?] y\n \n saved backup bundle to $TESTTMP/split/.hg/strip-backup/*-*-split.hg (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\split\\.hg\\strip-backup/c7088e2d8efb-b94c0173-split.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\split\\.hg\\strip-backup/c7088e2d8efb-2be73c28-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\split\\.hg\\strip-backup/c7088e2d8efb-2be73c28-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase, split\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\split.py", line 122, in split\n+ dorebase(ui, repo, torebase, top)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cd ..\n \n Test committing half a rename\n', 4145, 4147, 'truncated \\uXXXX escape') decoding diff, sorry
test-copies.t#changeset
--- c:/hgdev/src/tests/test-copies.t
+++ c:/hgdev/src/tests/test-copies.t#changeset.err
@@ -309,6 +309,7 @@
x -> z
$ hg debugpathcopies 0 2
x -> z (filelog !)
+ x -> z
Copy file that exists on both sides of the merge, different content
$ newrepo
@@ -340,11 +341,13 @@
x -> z (sidedata !)
$ hg debugp2copies -r 2
x -> z (no-changeset no-sidedata !)
+ x -> z
$ hg debugpathcopies 1 2
x -> z (changeset !)
x -> z (sidedata !)
$ hg debugpathcopies 0 2
x -> z (no-changeset no-sidedata !)
+ x -> z
Copy x->y on one side of merge and copy x->z on the other side. Pathcopies from one parent
of the merge to the merge should include the copy from the other side.
@@ -455,6 +458,7 @@
$ hg debugpathcopies 0 4
x -> z (filelog !)
y -> z (no-filelog !)
+ x -> z
$ hg debugpathcopies 1 5
y -> z (no-filelog !)
$ hg debugpathcopies 2 5
@@ -502,11 +506,14 @@
original
#else
$ hg merge 2
- merging x and y to y
- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
- (branch merge, don't forget to commit)
+ file 'x' was deleted in other [merge rev] but was modified in local [working copy].
+ You can use (c)hanged version, (d)elete, or leave (u)nresolved.
+ What do you want to do? u
+ 1 files updated, 0 files merged, 0 files removed, 1 files unresolved
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
+ [1]
$ cat y
- modified
+ original
#endif
Same as above, but in the opposite direction
#if filelog
@@ -524,11 +531,14 @@
#else
$ hg co -qC 2
$ hg merge 3
- merging y and x to y
- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
- (branch merge, don't forget to commit)
+ file 'x' was deleted in local [working copy] but was modified in other [merge rev].
+ You can use (c)hanged version, leave (d)eleted, or leave (u)nresolved.
+ What do you want to do? u
+ 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
+ [1]
$ cat y
- modified
+ original
#endif
Create x and y, then rename x to z on one side of merge, and rename y to z and
@@ -571,6 +581,7 @@
x -> z (no-filelog !)
$ hg debugpathcopies 0 4
x -> z (no-changeset no-compatibility !)
+ x -> z
$ hg debugpathcopies 1 5
$ hg debugpathcopies 2 5
x -> z (no-filelog !)
@@ -627,6 +638,7 @@
$ hg graft -r 4 --base 3 --hidden
grafting 4:af28412ec03c "added d, modified b" (tip) (no-changeset !)
grafting 4:6325ca0b7a1c "added d, modified b" (tip) (changeset !)
+ grafting 4:af28412ec03c "added d, modified b" (tip)
merging b1 and b to b1
$ hg l -l1 -p
@@ -634,6 +646,7 @@
| b1
~ diff -r 5a4825cc2926 -r 94a2f1a0e8e2 b1 (no-changeset !)
~ diff -r 0a0ed3b3251c -r d544fb655520 b1 (changeset !)
+ ~ diff -r 5a4825cc2926 -r 94a2f1a0e8e2 b1
--- a/b1 Thu Jan 01 00:00:00 1970 +0000
+++ b/b1 Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +1,2 @@
@@ -695,6 +708,7 @@
$ hg rebase -r . -d 2 -t :other
rebasing 5:5018b1509e94 tip "added willconflict and d" (no-changeset !)
rebasing 5:af8d273bf580 tip "added willconflict and d" (changeset !)
+ rebasing 5:5018b1509e94 tip "added willconflict and d"
$ hg up 3 -q
$ hg l --hidden
@@ -719,3 +733,4 @@
$ hg graft -r 6 --base 4 --hidden -t :other
grafting 6:99802e4f1e46 "added willconflict and d" (tip) (no-changeset !)
grafting 6:b19f0df72728 "added willconflict and d" (tip) (changeset !)
+ grafting 6:99802e4f1e46 "added willconflict and d" (tip)
test-copies.t#compatibility
--- c:/hgdev/src/tests/test-copies.t
+++ c:/hgdev/src/tests/test-copies.t#compatibility.err
@@ -309,6 +309,7 @@
x -> z
$ hg debugpathcopies 0 2
x -> z (filelog !)
+ x -> z
Copy file that exists on both sides of the merge, different content
$ newrepo
@@ -340,11 +341,13 @@
x -> z (sidedata !)
$ hg debugp2copies -r 2
x -> z (no-changeset no-sidedata !)
+ x -> z
$ hg debugpathcopies 1 2
x -> z (changeset !)
x -> z (sidedata !)
$ hg debugpathcopies 0 2
x -> z (no-changeset no-sidedata !)
+ x -> z
Copy x->y on one side of merge and copy x->z on the other side. Pathcopies from one parent
of the merge to the merge should include the copy from the other side.
@@ -455,6 +458,7 @@
$ hg debugpathcopies 0 4
x -> z (filelog !)
y -> z (no-filelog !)
+ x -> z
$ hg debugpathcopies 1 5
y -> z (no-filelog !)
$ hg debugpathcopies 2 5
@@ -502,11 +506,14 @@
original
#else
$ hg merge 2
- merging x and y to y
- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
- (branch merge, don't forget to commit)
+ file 'x' was deleted in other [merge rev] but was modified in local [working copy].
+ You can use (c)hanged version, (d)elete, or leave (u)nresolved.
+ What do you want to do? u
+ 1 files updated, 0 files merged, 0 files removed, 1 files unresolved
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
+ [1]
$ cat y
- modified
+ original
#endif
Same as above, but in the opposite direction
#if filelog
@@ -524,11 +531,14 @@
#else
$ hg co -qC 2
$ hg merge 3
- merging y and x to y
- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
- (branch merge, don't forget to commit)
+ file 'x' was deleted in local [working copy] but was modified in other [merge rev].
+ You can use (c)hanged version, leave (d)eleted, or leave (u)nresolved.
+ What do you want to do? u
+ 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
+ [1]
$ cat y
- modified
+ original
#endif
Create x and y, then rename x to z on one side of merge, and rename y to z and
@@ -571,6 +581,7 @@
x -> z (no-filelog !)
$ hg debugpathcopies 0 4
x -> z (no-changeset no-compatibility !)
+ x -> z
$ hg debugpathcopies 1 5
$ hg debugpathcopies 2 5
x -> z (no-filelog !)
@@ -627,6 +638,7 @@
$ hg graft -r 4 --base 3 --hidden
grafting 4:af28412ec03c "added d, modified b" (tip) (no-changeset !)
grafting 4:6325ca0b7a1c "added d, modified b" (tip) (changeset !)
+ grafting 4:af28412ec03c "added d, modified b" (tip)
merging b1 and b to b1
$ hg l -l1 -p
@@ -634,6 +646,7 @@
| b1
~ diff -r 5a4825cc2926 -r 94a2f1a0e8e2 b1 (no-changeset !)
~ diff -r 0a0ed3b3251c -r d544fb655520 b1 (changeset !)
+ ~ diff -r 5a4825cc2926 -r 94a2f1a0e8e2 b1
--- a/b1 Thu Jan 01 00:00:00 1970 +0000
+++ b/b1 Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +1,2 @@
@@ -695,6 +708,7 @@
$ hg rebase -r . -d 2 -t :other
rebasing 5:5018b1509e94 tip "added willconflict and d" (no-changeset !)
rebasing 5:af8d273bf580 tip "added willconflict and d" (changeset !)
+ rebasing 5:5018b1509e94 tip "added willconflict and d"
$ hg up 3 -q
$ hg l --hidden
@@ -719,3 +733,4 @@
$ hg graft -r 6 --base 4 --hidden -t :other
grafting 6:99802e4f1e46 "added willconflict and d" (tip) (no-changeset !)
grafting 6:b19f0df72728 "added willconflict and d" (tip) (changeset !)
+ grafting 6:99802e4f1e46 "added willconflict and d" (tip)
test-copies.t#filelog
--- c:/hgdev/src/tests/test-copies.t
+++ c:/hgdev/src/tests/test-copies.t#filelog.err
@@ -309,6 +309,7 @@
x -> z
$ hg debugpathcopies 0 2
x -> z (filelog !)
+ x -> z
Copy file that exists on both sides of the merge, different content
$ newrepo
@@ -340,11 +341,13 @@
x -> z (sidedata !)
$ hg debugp2copies -r 2
x -> z (no-changeset no-sidedata !)
+ x -> z
$ hg debugpathcopies 1 2
x -> z (changeset !)
x -> z (sidedata !)
$ hg debugpathcopies 0 2
x -> z (no-changeset no-sidedata !)
+ x -> z
Copy x->y on one side of merge and copy x->z on the other side. Pathcopies from one parent
of the merge to the merge should include the copy from the other side.
@@ -455,6 +458,7 @@
$ hg debugpathcopies 0 4
x -> z (filelog !)
y -> z (no-filelog !)
+ x -> z
$ hg debugpathcopies 1 5
y -> z (no-filelog !)
$ hg debugpathcopies 2 5
@@ -502,11 +506,14 @@
original
#else
$ hg merge 2
- merging x and y to y
- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
- (branch merge, don't forget to commit)
+ file 'x' was deleted in other [merge rev] but was modified in local [working copy].
+ You can use (c)hanged version, (d)elete, or leave (u)nresolved.
+ What do you want to do? u
+ 1 files updated, 0 files merged, 0 files removed, 1 files unresolved
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
+ [1]
$ cat y
- modified
+ original
#endif
Same as above, but in the opposite direction
#if filelog
@@ -524,11 +531,14 @@
#else
$ hg co -qC 2
$ hg merge 3
- merging y and x to y
- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
- (branch merge, don't forget to commit)
+ file 'x' was deleted in local [working copy] but was modified in other [merge rev].
+ You can use (c)hanged version, leave (d)eleted, or leave (u)nresolved.
+ What do you want to do? u
+ 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
+ [1]
$ cat y
- modified
+ original
#endif
Create x and y, then rename x to z on one side of merge, and rename y to z and
@@ -571,6 +581,7 @@
x -> z (no-filelog !)
$ hg debugpathcopies 0 4
x -> z (no-changeset no-compatibility !)
+ x -> z
$ hg debugpathcopies 1 5
$ hg debugpathcopies 2 5
x -> z (no-filelog !)
@@ -627,6 +638,7 @@
$ hg graft -r 4 --base 3 --hidden
grafting 4:af28412ec03c "added d, modified b" (tip) (no-changeset !)
grafting 4:6325ca0b7a1c "added d, modified b" (tip) (changeset !)
+ grafting 4:af28412ec03c "added d, modified b" (tip)
merging b1 and b to b1
$ hg l -l1 -p
@@ -634,6 +646,7 @@
| b1
~ diff -r 5a4825cc2926 -r 94a2f1a0e8e2 b1 (no-changeset !)
~ diff -r 0a0ed3b3251c -r d544fb655520 b1 (changeset !)
+ ~ diff -r 5a4825cc2926 -r 94a2f1a0e8e2 b1
--- a/b1 Thu Jan 01 00:00:00 1970 +0000
+++ b/b1 Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +1,2 @@
@@ -695,6 +708,7 @@
$ hg rebase -r . -d 2 -t :other
rebasing 5:5018b1509e94 tip "added willconflict and d" (no-changeset !)
rebasing 5:af8d273bf580 tip "added willconflict and d" (changeset !)
+ rebasing 5:5018b1509e94 tip "added willconflict and d"
$ hg up 3 -q
$ hg l --hidden
@@ -719,3 +733,4 @@
$ hg graft -r 6 --base 4 --hidden -t :other
grafting 6:99802e4f1e46 "added willconflict and d" (tip) (no-changeset !)
grafting 6:b19f0df72728 "added willconflict and d" (tip) (changeset !)
+ grafting 6:99802e4f1e46 "added willconflict and d" (tip)
test-copies.t#sidedata
--- c:/hgdev/src/tests/test-copies.t
+++ c:/hgdev/src/tests/test-copies.t#sidedata.err
@@ -309,6 +309,7 @@
x -> z
$ hg debugpathcopies 0 2
x -> z (filelog !)
+ x -> z
Copy file that exists on both sides of the merge, different content
$ newrepo
@@ -340,11 +341,13 @@
x -> z (sidedata !)
$ hg debugp2copies -r 2
x -> z (no-changeset no-sidedata !)
+ x -> z
$ hg debugpathcopies 1 2
x -> z (changeset !)
x -> z (sidedata !)
$ hg debugpathcopies 0 2
x -> z (no-changeset no-sidedata !)
+ x -> z
Copy x->y on one side of merge and copy x->z on the other side. Pathcopies from one parent
of the merge to the merge should include the copy from the other side.
@@ -455,6 +458,7 @@
$ hg debugpathcopies 0 4
x -> z (filelog !)
y -> z (no-filelog !)
+ x -> z
$ hg debugpathcopies 1 5
y -> z (no-filelog !)
$ hg debugpathcopies 2 5
@@ -502,11 +506,14 @@
original
#else
$ hg merge 2
- merging x and y to y
- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
- (branch merge, don't forget to commit)
+ file 'x' was deleted in other [merge rev] but was modified in local [working copy].
+ You can use (c)hanged version, (d)elete, or leave (u)nresolved.
+ What do you want to do? u
+ 1 files updated, 0 files merged, 0 files removed, 1 files unresolved
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
+ [1]
$ cat y
- modified
+ original
#endif
Same as above, but in the opposite direction
#if filelog
@@ -524,11 +531,14 @@
#else
$ hg co -qC 2
$ hg merge 3
- merging y and x to y
- 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
- (branch merge, don't forget to commit)
+ file 'x' was deleted in local [working copy] but was modified in other [merge rev].
+ You can use (c)hanged version, leave (d)eleted, or leave (u)nresolved.
+ What do you want to do? u
+ 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
+ [1]
$ cat y
- modified
+ original
#endif
Create x and y, then rename x to z on one side of merge, and rename y to z and
@@ -571,6 +581,7 @@
x -> z (no-filelog !)
$ hg debugpathcopies 0 4
x -> z (no-changeset no-compatibility !)
+ x -> z
$ hg debugpathcopies 1 5
$ hg debugpathcopies 2 5
x -> z (no-filelog !)
@@ -627,6 +638,7 @@
$ hg graft -r 4 --base 3 --hidden
grafting 4:af28412ec03c "added d, modified b" (tip) (no-changeset !)
grafting 4:6325ca0b7a1c "added d, modified b" (tip) (changeset !)
+ grafting 4:af28412ec03c "added d, modified b" (tip)
merging b1 and b to b1
$ hg l -l1 -p
@@ -634,6 +646,7 @@
| b1
~ diff -r 5a4825cc2926 -r 94a2f1a0e8e2 b1 (no-changeset !)
~ diff -r 0a0ed3b3251c -r d544fb655520 b1 (changeset !)
+ ~ diff -r 5a4825cc2926 -r 94a2f1a0e8e2 b1
--- a/b1 Thu Jan 01 00:00:00 1970 +0000
+++ b/b1 Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +1,2 @@
@@ -695,6 +708,7 @@
$ hg rebase -r . -d 2 -t :other
rebasing 5:5018b1509e94 tip "added willconflict and d" (no-changeset !)
rebasing 5:af8d273bf580 tip "added willconflict and d" (changeset !)
+ rebasing 5:5018b1509e94 tip "added willconflict and d"
$ hg up 3 -q
$ hg l --hidden
@@ -719,3 +733,4 @@
$ hg graft -r 6 --base 4 --hidden -t :other
grafting 6:99802e4f1e46 "added willconflict and d" (tip) (no-changeset !)
grafting 6:b19f0df72728 "added willconflict and d" (tip) (changeset !)
+ grafting 6:99802e4f1e46 "added willconflict and d" (tip)
test-copy-move-merge.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-copy-move-merge.t\n+++ c:/hgdev/src/tests/test-copy-move-merge.t.err\n@@ -100,10 +100,11 @@\n resolving manifests\n branchmerge: True, force: False, partial: False\n ancestor: b8bf91eeebbc, local: add3f11052fa+, remote: 17c05bb7fcb6\n+ starting 4 threads for background file closing\n preserving a for resolve of b\n preserving a for resolve of c\n+ starting 4 threads for background file closing (?)\n removing a\n- starting 4 threads for background file closing (?)\n b: remote moved from a -> m (premerge)\n picked tool \':merge\' for b (binary False symlink False changedelete False)\n merging a and b to b\n@@ -152,14 +153,66 @@\n $ hg strip -r . --config extensions.strip=\n 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n saved backup bundle to $TESTTMP/t/.hg/strip-backup/550bd84c0cd3-fc575957-backup.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\t\\.hg\\strip-backup/550bd84c0cd3-fc575957-backup.hg\'\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg up -qC 2\n $ hg rebase --keep -d 1 -b 2 --config extensions.rebase= --config experimental.copytrace=off --config ui.interactive=True << EOF\n > c\n > EOF\n- rebasing 2:add3f11052fa tip "other"\n+ rebasing 2:add3f11052fa "other"\n file \'a\' was deleted in local [dest] but was modified in other [source].\n You can use (c)hanged version, leave (d)eleted, or leave (u)nresolved.\n What do you want to do? c\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ cat b\n 1\n@@ -194,10 +247,77 @@\n $ hg rebase -d . -b 2 --config extensions.rebase= --config experimental.copytrace=off\n rebasing 2:6adcf8c12e7d "copy b->x"\n saved backup bundle to $TESTTMP/copydisable/.hg/strip-backup/6adcf8c12e7d-ce4b3e75-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\copydisable\\.hg\\strip-backup/6adcf8c12e7d-ce4b3e75-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\copydisable\\.hg\\strip-backup/6adcf8c12e7d-a566e40e-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\copydisable\\.hg\\strip-backup/6adcf8c12e7d-a566e40e-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg up -q 3\n $ hg log -f x -T \'{rev} {desc}\\n\'\n- 3 copy b->x\n- 1 add b, c\n+ abort: cannot follow file not in parent revision: "x"\n+ [255]\n \n $ cd ../\n \n@@ -240,10 +360,78 @@\n $ hg rebase -d 2 -s 3 --config extensions.rebase= --config experimental.copytrace=off\n rebasing 3:47e1a9e6273b tip "copy a->b (2)"\n saved backup bundle to $TESTTMP/copydisable3/.hg/strip-backup/47e1a9e6273b-2d099c59-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\copydisable3\\.hg\\strip-backup/47e1a9e6273b-2d099c59-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\copydisable3\\.hg\\strip-backup/47e1a9e6273b-23c6724f-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\copydisable3\\.hg\\strip-backup/47e1a9e6273b-23c6724f-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg log -G -f b\n- @ changeset: 3:76024fb4b05b\n+ @ changeset: 4:76024fb4b05b\n : tag: tip\n+ : parent: 2:235d81efe3d3\n : user: test\n : date: Thu Jan 01 00:00:00 1970 +0000\n : summary: copy a->b (2)\n', 2880, 2882, 'truncated \\uXXXX escape') decoding diff, sorry
test-copy.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-copy.t\n+++ c:/hgdev/src/tests/test-copy.t.err\n@@ -92,10 +92,12 @@\n #endif\n $ hg cat b > bsum\n $ md5sum.py bsum\n- 60b725f10c9c85c70d97880dfe8191b3 bsum\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ hg cat a > asum\n $ md5sum.py asum\n- 60b725f10c9c85c70d97880dfe8191b3 asum\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ hg verify\n checking changesets\n checking manifests\n@@ -352,6 +354,67 @@\n dirty\n $ hg copy --forget --at-rev . baz\n saved backup bundle to $TESTTMP/part2/.hg/strip-backup/a612dc2edfda-e36b4448-uncopy.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\part2\\.hg\\strip-backup/a612dc2edfda-e36b4448-uncopy.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\part2\\.hg\\strip-backup/a612dc2edfda-6b2a89b9-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\part2\\.hg\\strip-backup/a612dc2edfda-6b2a89b9-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2405, in copy\n+ return cmdutil.copy(ui, repo, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 1516, in copy\n+ repo, replacements, b\'uncopy\', fixphase=True\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n # The unwanted copy is no longer recorded, but the unrelated one is\n $ hg st -C --change .\n A baz\n@@ -359,8 +422,10 @@\n bar\n # The old commit is gone and we have updated to the new commit\n $ hg log -G -T \'{rev}:{node|short} {desc}\\n\' -r $base:\n- @ 5:c45090e5effe copies\n+ @ 6:c45090e5effe copies\n |\n+ | o 5:a612dc2edfda copies\n+ |/\n o 4:4800b1f1f38e add dir/\n |\n ~\n', 2821, 2823, 'truncated \\uXXXX escape') decoding diff, sorry
test-copytrace-heuristics.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-copytrace-heuristics.t\n+++ c:/hgdev/src/tests/test-copytrace-heuristics.t.err\n@@ -58,6 +58,73 @@\n merging b and a to b\n merging dir2/file.txt and dir/file.txt to dir2/file.txt\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/557f403c0afd-9926eeff-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/557f403c0afd-9926eeff-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/557f403c0afd-4d6a9c28-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/557f403c0afd-4d6a9c28-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cd ..\n $ rm -rf repo\n \n@@ -129,6 +196,73 @@\n rebasing 3:9d5cf99c3d9f tip "mod a"\n merging b and a to b\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/9d5cf99c3d9f-f02358cc-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/9d5cf99c3d9f-f02358cc-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/9d5cf99c3d9f-9e890765-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/9d5cf99c3d9f-9e890765-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cd ..\n $ rm -rf repo\n \n@@ -164,6 +298,73 @@\n rebasing 3:fbe97126b396 tip "mod b"\n merging a and b to a\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/fbe97126b396-cf5452a1-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/fbe97126b396-cf5452a1-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/fbe97126b396-bc269fa4-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/fbe97126b396-bc269fa4-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cd ..\n $ rm -rf repo\n \n@@ -201,6 +402,73 @@\n rebasing 3:6b2f4cece40f tip "mod dir/a"\n merging dir/b and dir/a to dir/b\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/6b2f4cece40f-503efe60-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/6b2f4cece40f-503efe60-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/6b2f4cece40f-2bfc3aaa-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/6b2f4cece40f-2bfc3aaa-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cd ..\n $ rm -rf repo\n \n@@ -260,6 +528,73 @@\n rebasing 2:ef716627c70b tip "mod a"\n merging foo and a to foo\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/ef716627c70b-24681561-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/ef716627c70b-24681561-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/ef716627c70b-e63cf491-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/ef716627c70b-e63cf491-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ cd ..\n $ rm -rf repo\n@@ -291,10 +626,79 @@\n $ hg rebase -s 1 -d 2\n rebasing 1:472e38d57782 "mv a b"\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/472e38d57782-17d50e29-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/472e38d57782-17d50e29-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/472e38d57782-56051cdd-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/472e38d57782-56051cdd-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg up -q c492ed3c7e35dcd1dc938053b8adf56e2cfbd062\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ ls -A\n .hg\n- b\n $ cd ..\n $ rm -rf repo\n \n@@ -326,6 +730,73 @@\n rebasing 2:a33d80b6e352 tip "mv dir/ dir2/"\n merging dir/a and dir2/a to dir2/a\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/a33d80b6e352-fecb9ada-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/a33d80b6e352-fecb9ada-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/a33d80b6e352-9b1e03d8-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/a33d80b6e352-9b1e03d8-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cd ..\n $ rm -rf server\n $ rm -rf repo\n@@ -361,6 +832,73 @@\n rebasing 3:d41316942216 tip "mod a"\n merging c and a to c\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/d41316942216-2b5949bc-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/d41316942216-2b5949bc-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/d41316942216-6caae297-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/d41316942216-6caae297-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ cd ..\n $ rm -rf repo\n@@ -397,6 +935,73 @@\n rebasing 2:d3efd280421d "mv b c"\n merging b and c to c\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/472e38d57782-ab8d3c58-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/472e38d57782-ab8d3c58-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/472e38d57782-84c2ae25-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/472e38d57782-84c2ae25-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ cd ..\n $ rm -rf repo\n@@ -434,6 +1039,73 @@\n rebasing 3:ef716627c70b tip "mod a"\n merging b and a to b\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/ef716627c70b-24681561-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/ef716627c70b-24681561-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/ef716627c70b-3f9d0324-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/ef716627c70b-3f9d0324-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ ls -A\n .hg\n b\n@@ -508,6 +1180,73 @@\n merging b and a to b\n merging c and a to c\n saved backup bundle to $TESTTMP/repo/repo/.hg/strip-backup/ef716627c70b-24681561-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\repo\\.hg\\strip-backup/ef716627c70b-24681561-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\repo\\.hg\\strip-backup/ef716627c70b-7957e203-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\repo\\.hg\\strip-backup/ef716627c70b-7957e203-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ ls -A\n .hg\n b\n@@ -581,23 +1320,73 @@\n $ hg shelve\n shelved as default\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 6544, in shelve\n+ return shelvemod.createcmd(ui, repo, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\shelve.py", line 495, in createcmd\n+ return _docreatecmd(ui, repo, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\shelve.py", line 576, in _docreatecmd\n+ lockmod.release(tr, lock)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\lock.py", line 397, in release\n+ lock.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg mv a b\n $ hg ci -m \'mv a b\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg l\n- @ rev: 1\n- | desc: mv a b\n- o rev: 0\n+ @ rev: 0\n desc: initial\n $ hg unshelve\n unshelving change \'default\'\n- rebasing shelved changes\n- merging b and a to b\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ ls -A\n .hg\n b\n $ cat b\n- b\n+ a\n $ cd ..\n $ rm -rf repo\n \n@@ -634,6 +1423,73 @@\n rebasing 2:6207d2d318e7 tip "mod a"\n merging dir2/b and dir1/a to dir2/b\n saved backup bundle to $TESTTMP/repo/repo/.hg/strip-backup/6207d2d318e7-1c9779ad-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\repo\\.hg\\strip-backup/6207d2d318e7-1c9779ad-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\repo\\.hg\\strip-backup/6207d2d318e7-be8964c3-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\repo\\.hg\\strip-backup/6207d2d318e7-be8964c3-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cat dir2/b\n a\n b\n@@ -671,6 +1527,73 @@\n $ hg rebase -s . -d 1 --config experimental.copytrace.sourcecommitlimit=100\n rebasing 2:e8919e7df8d0 tip "mv dir1 dir2"\n saved backup bundle to $TESTTMP/repo/repo/.hg/strip-backup/e8919e7df8d0-f62fab62-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\repo\\.hg\\strip-backup/e8919e7df8d0-f62fab62-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\repo\\.hg\\strip-backup/e8919e7df8d0-f29803ed-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\repo\\.hg\\strip-backup/e8919e7df8d0-f29803ed-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ ls dir2\n a\n dummy\n@@ -722,5 +1645,72 @@\n rebasing 1:8b6e13696c38 "added more things to a"\n merging foo/bar and a to foo/bar\n saved backup bundle to $TESTTMP/repo/repo/repo/.hg/strip-backup/8b6e13696c38-fc14ac83-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\repo\\repo\\.hg\\strip-backup/8b6e13696c38-fc14ac83-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\repo\\repo\\.hg\\strip-backup/8b6e13696c38-e02ea0c1-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\repo\\repo\\.hg\\strip-backup/8b6e13696c38-e02ea0c1-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cd ..\n $ rm -rf repo\n', 2548, 2550, 'truncated \\uXXXX escape') decoding diff, sorry
test-custom-filters.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-custom-filters.t\n+++ c:/hgdev/src/tests/test-custom-filters.t.err\n@@ -60,8 +60,62 @@\n \n $ hg add morestuff.txt\n $ hg ci -m morestuff\n- abort: missing header "Copyright 2046, The Masters" in morestuff.txt\n- [255]\n+ ** Unknown exception encountered with possibly-broken third-party extension "prefixfilter" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "prefixfilter" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: prefixfilter\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg stat\n M stuff.txt\n A morestuff.txt\n', 2337, 2339, 'truncated \\uXXXX escape') decoding diff, sorry
test-debugbackupbundle.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-debugbackupbundle.t\n+++ c:/hgdev/src/tests/test-debugbackupbundle.t.err\n@@ -23,17 +23,59 @@\n $ hg strip .\n 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/d2ae7f538514-2953539b-backup.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/d2ae7f538514-2953539b-backup.hg\'\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg debugbackupbundle\n Recover changesets using: hg debugbackupbundle --recover <changeset hash>\n \n- Available backup changesets:\n- * (glob)\n- d2ae7f538514 b\n+ Available backup changesets: (no-eol)\n \n $ hg debugbackupbundle --recover d2ae7f538514\n- Unbundling d2ae7f538514\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 1 changes to 1 files\n- new changesets d2ae7f538514 (1 drafts)\n+ d2ae7f538514 already exists in the repo\n', 2305, 2307, 'truncated \\uXXXX escape') decoding diff, sorry
test-debugcommands.t
--- c:/hgdev/src/tests/test-debugcommands.t
+++ c:/hgdev/src/tests/test-debugcommands.t.err
@@ -650,6 +650,7 @@
$ hg --config ui.ssh=""$PYTHON" "$TESTDIR/dummyssh"" --debug debugpeer ssh://user@dummy/debugrevlog
running "*" "*/tests/dummyssh" 'user@dummy' 'hg -R debugrevlog serve --stdio' (glob) (no-windows !)
running "*" "* ests/dummyssh" "user@dummy" "hg -R debugrevlog serve --stdio" (glob) (windows !)
+ running "c:/hgdev/python27-x64/python.exe" "c:\hgdev\src ests/dummyssh" "user@dummy" "hg -R debugrevlog serve --stdio"
devel-peer-request: hello+between
devel-peer-request: pairs: 81 bytes
sending hello command
test-default-push.t
--- c:/hgdev/src/tests/test-default-push.t
+++ c:/hgdev/src/tests/test-default-push.t.err
@@ -98,12 +98,8 @@
$ touch pushurl
$ hg -q commit -A -m 'add pushurl'
$ hg push
- pushing to file:/*/$TESTTMP/pushurlsource/../pushurldest (glob)
- searching for changes
- adding changesets
- adding manifests
- adding file changes
- added 1 changesets with 1 changes to 1 files
+ abort: file:// URLs can only refer to localhost
+ [255]
:pushrev is used when no -r is passed
@@ -117,33 +113,21 @@
$ echo head2 > foo
$ hg -q commit -A -m head2
$ hg push -f
- pushing to file:/*/$TESTTMP/pushurlsource/../pushurldest (glob)
- searching for changes
- adding changesets
- adding manifests
- adding file changes
- added 1 changesets with 1 changes to 1 files (+1 heads)
+ abort: file:// URLs can only refer to localhost
+ [255]
$ hg --config 'paths.default:pushrev=draft()' push -f
- pushing to file:/*/$TESTTMP/pushurlsource/../pushurldest (glob)
- searching for changes
- adding changesets
- adding manifests
- adding file changes
- added 1 changesets with 1 changes to 1 files (+1 heads)
+ abort: file:// URLs can only refer to localhost
+ [255]
Invalid :pushrev raises appropriately
$ hg --config 'paths.default:pushrev=notdefined()' push
- pushing to file:/*/$TESTTMP/pushurlsource/../pushurldest (glob)
- hg: parse error: unknown identifier: notdefined
- [10]
+ abort: file:// URLs can only refer to localhost
+ [255]
$ hg --config 'paths.default:pushrev=(' push
- pushing to file:/*/$TESTTMP/pushurlsource/../pushurldest (glob)
- hg: parse error at 1: not a prefix: end
- ((
- ^ here)
- [10]
+ abort: file:// URLs can only refer to localhost
+ [255]
$ cd ..
test-devel-warnings.t
--- c:/hgdev/src/tests/test-devel-warnings.t
+++ c:/hgdev/src/tests/test-devel-warnings.t.err
@@ -129,28 +129,6 @@
*/mercurial/dispatch.py:* in _runcommand (glob)
*/mercurial/dispatch.py:* in <lambda> (glob)
*/mercurial/util.py:* in check (glob)
- */mercurial/commands.py:* in serve (glob)
- */mercurial/server.py:* in runservice (glob)
- */mercurial/commandserver.py:* in run (glob)
- */mercurial/commandserver.py:* in _mainloop (glob)
- */mercurial/commandserver.py:* in _acceptnewconnection (glob)
- */mercurial/commandserver.py:* in _runworker (glob)
- */mercurial/commandserver.py:* in _serverequest (glob)
- */mercurial/commandserver.py:* in serve (glob)
- */mercurial/commandserver.py:* in serveone (glob)
- */mercurial/chgserver.py:* in runcommand (glob)
- */mercurial/commandserver.py:* in runcommand (glob)
- */mercurial/commandserver.py:* in _dispatchcommand (glob)
- */mercurial/dispatch.py:* in dispatch (glob)
- */mercurial/dispatch.py:* in _runcatch (glob)
- */mercurial/dispatch.py:* in _callcatch (glob)
- */mercurial/scmutil.py:* in callcatch (glob)
- */mercurial/dispatch.py:* in _runcatchfunc (glob)
- */mercurial/dispatch.py:* in _dispatch (glob)
- */mercurial/dispatch.py:* in runcommand (glob)
- */mercurial/dispatch.py:* in _runcommand (glob)
- */mercurial/dispatch.py:* in <lambda> (glob)
- */mercurial/util.py:* in check (glob)
$TESTTMP/buggylocking.py:* in buggylocking (glob)
#endif
$ hg properlocking
@@ -200,28 +178,6 @@
(compatibility will be dropped after Mercurial-42.1337, update your code.) at:
*/hg:* in <module> (glob)
*/mercurial/dispatch.py:* in run (glob)
- */mercurial/dispatch.py:* in dispatch (glob)
- */mercurial/dispatch.py:* in _runcatch (glob)
- */mercurial/dispatch.py:* in _callcatch (glob)
- */mercurial/scmutil.py:* in callcatch (glob)
- */mercurial/dispatch.py:* in _runcatchfunc (glob)
- */mercurial/dispatch.py:* in _dispatch (glob)
- */mercurial/dispatch.py:* in runcommand (glob)
- */mercurial/dispatch.py:* in _runcommand (glob)
- */mercurial/dispatch.py:* in <lambda> (glob)
- */mercurial/util.py:* in check (glob)
- */mercurial/commands.py:* in serve (glob)
- */mercurial/server.py:* in runservice (glob)
- */mercurial/commandserver.py:* in run (glob)
- */mercurial/commandserver.py:* in _mainloop (glob)
- */mercurial/commandserver.py:* in _acceptnewconnection (glob)
- */mercurial/commandserver.py:* in _runworker (glob)
- */mercurial/commandserver.py:* in _serverequest (glob)
- */mercurial/commandserver.py:* in serve (glob)
- */mercurial/commandserver.py:* in serveone (glob)
- */mercurial/chgserver.py:* in runcommand (glob)
- */mercurial/commandserver.py:* in runcommand (glob)
- */mercurial/commandserver.py:* in _dispatchcommand (glob)
*/mercurial/dispatch.py:* in dispatch (glob)
*/mercurial/dispatch.py:* in _runcatch (glob)
*/mercurial/dispatch.py:* in _callcatch (glob)
@@ -280,28 +236,6 @@
*/mercurial/dispatch.py:* in _runcommand (glob)
*/mercurial/dispatch.py:* in <lambda> (glob)
*/mercurial/util.py:* in check (glob)
- */mercurial/commands.py:* in serve (glob)
- */mercurial/server.py:* in runservice (glob)
- */mercurial/commandserver.py:* in run (glob)
- */mercurial/commandserver.py:* in _mainloop (glob)
- */mercurial/commandserver.py:* in _acceptnewconnection (glob)
- */mercurial/commandserver.py:* in _runworker (glob)
- */mercurial/commandserver.py:* in _serverequest (glob)
- */mercurial/commandserver.py:* in serve (glob)
- */mercurial/commandserver.py:* in serveone (glob)
- */mercurial/chgserver.py:* in runcommand (glob)
- */mercurial/commandserver.py:* in runcommand (glob)
- */mercurial/commandserver.py:* in _dispatchcommand (glob)
- */mercurial/dispatch.py:* in dispatch (glob)
- */mercurial/dispatch.py:* in _runcatch (glob)
- */mercurial/dispatch.py:* in _callcatch (glob)
- */mercurial/scmutil.py:* in callcatch (glob)
- */mercurial/dispatch.py:* in _runcatchfunc (glob)
- */mercurial/dispatch.py:* in _dispatch (glob)
- */mercurial/dispatch.py:* in runcommand (glob)
- */mercurial/dispatch.py:* in _runcommand (glob)
- */mercurial/dispatch.py:* in <lambda> (glob)
- */mercurial/util.py:* in check (glob)
$TESTTMP/buggylocking.py:* in oldanddeprecated (glob)
1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> oldanddeprecated --traceback exited 0 after * seconds (glob)
1970/01/01 00:00:00 bob @cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b (5000)> blackbox -l 7
test-dirstate-race.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-dirstate-race.t\n+++ c:/hgdev/src/tests/test-dirstate-race.t.err\n@@ -230,6 +230,73 @@\n custom merge tool\n custom merge tool end\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/* (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/b08445fd6b2a-2516f9a4-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/b08445fd6b2a-b87e6973-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/b08445fd6b2a-b87e6973-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n This hg status should be empty, whether or not fsmonitor is enabled (issue5581).\n \n', 2476, 2478, 'truncated \\uXXXX escape') decoding diff, sorry
test-dispatch.t
--- c:/hgdev/src/tests/test-dispatch.t
+++ c:/hgdev/src/tests/test-dispatch.t.err
@@ -190,6 +190,7 @@
$ hg -R a archive ''
abort: $ENOENT$: '' (no-windows !)
abort: $ENOTDIR$: '' (windows !)
+ abort: $ENOTDIR$: ''
[255]
#if no-outer-repo
test-double-merge.t
--- c:/hgdev/src/tests/test-double-merge.t
+++ c:/hgdev/src/tests/test-double-merge.t.err
@@ -35,9 +35,10 @@
resolving manifests
branchmerge: True, force: False, partial: False
ancestor: e6dc8efe11cc, local: 6a0df1dad128+, remote: 484bf6903104
+ starting 4 threads for background file closing
preserving foo for resolve of bar
+ starting 4 threads for background file closing (?)
preserving foo for resolve of foo
- starting 4 threads for background file closing (?)
bar: remote copied from foo -> m (premerge)
picked tool ':merge' for bar (binary False symlink False changedelete False)
merging foo and bar to bar
test-encoding.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-encoding.t\n+++ c:/hgdev/src/tests/test-encoding.t.err\n@@ -29,171 +29,127 @@\n ? latin-1-tag\n ? utf-8\n $ HGENCODING=ascii hg ci -l latin-1\n- transaction abort!\n- rollback completed\n- abort: decoding near \' encoded: \\xe9\': \'ascii\' codec can\'t decode byte 0xe9 in position 20: ordinal not in range(128)! (esc)\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n these should work\n \n $ echo "latin-1" > a\n $ HGENCODING=latin-1 hg ci -l latin-1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ echo "utf-8" > a\n $ HGENCODING=utf-8 hg ci -l utf-8\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ HGENCODING=latin-1 hg tag `cat latin-1-tag`\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ HGENCODING=latin-1 hg branch `cat latin-1-tag`\n marked working directory as branch \\xe9 (esc)\n (branches are permanent and global, did you want a bookmark?)\n $ HGENCODING=latin-1 hg ci -m \'latin1 branch\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg -q rollback\n $ HGENCODING=latin-1 hg branch\n- \\xe9 (esc)\n+ default\n $ HGENCODING=latin-1 hg ci -m \'latin1 branch\'\n+ nothing changed\n+ [1]\n $ rm .hg/branch\n \n hg log (ascii)\n \n $ hg --encoding ascii log\n- changeset: 5:a52c0692f24a\n- branch: ?\n- tag: tip\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: latin1 branch\n- \n- changeset: 4:94db611b4196\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: Added tag ? for changeset ca661e7520de\n- \n- changeset: 3:ca661e7520de\n- tag: ?\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: utf-8 e\' encoded: ?\n- \n- changeset: 2:650c6f3d55dd\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: latin-1 e\' encoded: ?\n- \n- changeset: 1:0e5b7e3f9c4a\n- user: test\n- date: Mon Jan 12 13:46:40 1970 +0000\n- summary: koi8-r: ????? = u\'\\u0440\\u0442\\u0443\\u0442\\u044c\'\n- \n- changeset: 0:1e78a93102a3\n- user: test\n- date: Mon Jan 12 13:46:40 1970 +0000\n- summary: latin-1 e\': ? = u\'\\xe9\'\n- \n \n hg log (latin-1)\n \n $ hg --encoding latin-1 log\n- changeset: 5:a52c0692f24a\n- branch: \\xe9 (esc)\n- tag: tip\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: latin1 branch\n- \n- changeset: 4:94db611b4196\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: Added tag \\xe9 for changeset ca661e7520de (esc)\n- \n- changeset: 3:ca661e7520de\n- tag: \\xe9 (esc)\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: utf-8 e\' encoded: \\xe9 (esc)\n- \n- changeset: 2:650c6f3d55dd\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: latin-1 e\' encoded: \\xe9 (esc)\n- \n- changeset: 1:0e5b7e3f9c4a\n- user: test\n- date: Mon Jan 12 13:46:40 1970 +0000\n- summary: koi8-r: \\xd2\\xd4\\xd5\\xd4\\xd8 = u\'\\\\u0440\\\\u0442\\\\u0443\\\\u0442\\\\u044c\' (esc)\n- \n- changeset: 0:1e78a93102a3\n- user: test\n- date: Mon Jan 12 13:46:40 1970 +0000\n- summary: latin-1 e\': \\xe9 = u\'\\\\xe9\' (esc)\n- \n \n hg log (utf-8)\n \n $ hg --encoding utf-8 log\n- changeset: 5:a52c0692f24a\n- branch: \\xc3\\xa9 (esc)\n- tag: tip\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: latin1 branch\n- \n- changeset: 4:94db611b4196\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: Added tag \\xc3\\xa9 for changeset ca661e7520de (esc)\n- \n- changeset: 3:ca661e7520de\n- tag: \\xc3\\xa9 (esc)\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: utf-8 e\' encoded: \\xc3\\xa9 (esc)\n- \n- changeset: 2:650c6f3d55dd\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: latin-1 e\' encoded: \\xc3\\xa9 (esc)\n- \n- changeset: 1:0e5b7e3f9c4a\n- user: test\n- date: Mon Jan 12 13:46:40 1970 +0000\n- summary: koi8-r: \\xc3\\x92\\xc3\\x94\\xc3\\x95\\xc3\\x94\\xc3\\x98 = u\'\\\\u0440\\\\u0442\\\\u0443\\\\u0442\\\\u044c\' (esc)\n- \n- changeset: 0:1e78a93102a3\n- user: test\n- date: Mon Jan 12 13:46:40 1970 +0000\n- summary: latin-1 e\': \\xc3\\xa9 = u\'\\\\xe9\' (esc)\n- \n \n hg tags (ascii)\n \n $ HGENCODING=ascii hg tags\n- tip 5:a52c0692f24a\n- ? 3:ca661e7520de\n+ tip -1:000000000000\n \n hg tags (latin-1)\n \n $ HGENCODING=latin-1 hg tags\n- tip 5:a52c0692f24a\n- \\xe9 3:ca661e7520de (esc)\n+ tip -1:000000000000\n \n hg tags (utf-8)\n \n $ HGENCODING=utf-8 hg tags\n- tip 5:a52c0692f24a\n- \\xc3\\xa9 3:ca661e7520de (esc)\n+ tip -1:000000000000\n \n hg tags (JSON)\n \n $ hg tags -Tjson\n [\n {\n- "node": "a52c0692f24ad921c0a31e1736e7635a8b23b670",\n- "rev": 5,\n+ "node": "0000000000000000000000000000000000000000",\n+ "rev": -1,\n "tag": "tip",\n- "type": ""\n- },\n- {\n- "node": "ca661e7520dec3f5438a63590c350bebadb04989",\n- "rev": 3,\n- "tag": "\\xc3\\xa9", (esc)\n "type": ""\n }\n ]\n@@ -201,76 +157,38 @@\n hg branches (ascii)\n \n $ HGENCODING=ascii hg branches\n- ? 5:a52c0692f24a\n- default 4:94db611b4196 (inactive)\n \n hg branches (latin-1)\n \n $ HGENCODING=latin-1 hg branches\n- \\xe9 5:a52c0692f24a (esc)\n- default 4:94db611b4196 (inactive)\n \n hg branches (utf-8)\n \n $ HGENCODING=utf-8 hg branches\n- \\xc3\\xa9 5:a52c0692f24a (esc)\n- default 4:94db611b4196 (inactive)\n $ echo \'[ui]\' >> .hg/hgrc\n $ echo \'fallbackencoding = koi8-r\' >> .hg/hgrc\n \n hg log (utf-8)\n \n $ HGENCODING=utf-8 hg log\n- changeset: 5:a52c0692f24a\n- branch: \\xc3\\xa9 (esc)\n- tag: tip\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: latin1 branch\n- \n- changeset: 4:94db611b4196\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: Added tag \\xc3\\xa9 for changeset ca661e7520de (esc)\n- \n- changeset: 3:ca661e7520de\n- tag: \\xc3\\xa9 (esc)\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: utf-8 e\' encoded: \\xc3\\xa9 (esc)\n- \n- changeset: 2:650c6f3d55dd\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: latin-1 e\' encoded: \\xc3\\xa9 (esc)\n- \n- changeset: 1:0e5b7e3f9c4a\n- user: test\n- date: Mon Jan 12 13:46:40 1970 +0000\n- summary: koi8-r: \\xd1\\x80\\xd1\\x82\\xd1\\x83\\xd1\\x82\\xd1\\x8c = u\'\\\\u0440\\\\u0442\\\\u0443\\\\u0442\\\\u044c\' (esc)\n- \n- changeset: 0:1e78a93102a3\n- user: test\n- date: Mon Jan 12 13:46:40 1970 +0000\n- summary: latin-1 e\': \\xd0\\x98 = u\'\\\\xe9\' (esc)\n- \n \n hg log (dolphin)\n \n $ HGENCODING=dolphin hg log\n- abort: unknown encoding: dolphin\n- (please check your locale settings)\n- [255]\n $ HGENCODING=ascii hg branch `cat latin-1-tag`\n abort: decoding near \'\\xe9\': \'ascii\' codec can\'t decode byte 0xe9 in position 0: ordinal not in range(128)! (esc)\n [255]\n $ cp latin-1-tag .hg/branch\n $ HGENCODING=latin-1 hg ci -m \'auto-promote legacy name\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Test roundtrip encoding of lookup tables when not using UTF-8 (issue2763)\n \n $ HGENCODING=latin-1 hg up `cat latin-1-tag`\n- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n+ abort: unknown revision \'\\xe9\' (esc)\n+ [255]\n \n $ cd ..\n \n', 2249, 2251, 'truncated \\uXXXX escape') decoding diff, sorry
test-eol-hook.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-eol-hook.t\n+++ c:/hgdev/src/tests/test-eol-hook.t.err\n@@ -41,21 +41,71 @@\n adding file changes\n error: pretxnchangegroup hook failed: end-of-line check failed:\n a.txt in a8ee6548cd86 should not have CRLF line endings\n- transaction abort!\n- rollback completed\n- abort: end-of-line check failed:\n- a.txt in a8ee6548cd86 should not have CRLF line endings\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: eol\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 5612, in push\n+ opargs=opargs,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 458, in push\n+ _pushbundle2(pushop)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1125, in _pushbundle2\n+ b\'url\': pushop.remote.url(),\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\thirdparty\\concurrent\\futures\\_base.py", line 457, in result\n+ return self.__get_result()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 246, in callcommand\n+ result = fn(**pycompat.strkwargs(args))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 360, in unbundle\n+ ret = exchange.unbundle(self._repo, bundle, heads, b\'push\', url)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 2645, in unbundle\n+ lockmod.release(lockandtr[2], lockandtr[1], lockandtr[0])\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\lock.py", line 397, in release\n+ lock.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ printf "first\\nsecond\\nthird\\n" > a.txt\n $ hg commit -m \'LF a.txt (fixed)\'\n $ hg push ../main\n pushing to ../main\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- added 2 changesets with 2 changes to 1 files\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ printf "first\\nsecond\\nthird\\n" > crlf.txt\n $ hg add crlf.txt\n@@ -63,15 +113,8 @@\n $ hg push ../main\n pushing to ../main\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- error: pretxnchangegroup hook failed: end-of-line check failed:\n- crlf.txt in 004ba2132725 should not have LF line endings\n- transaction abort!\n- rollback completed\n- abort: end-of-line check failed:\n- crlf.txt in 004ba2132725 should not have LF line endings\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n $ printf "first\\r\\nsecond\\r\\nthird\\r\\n" > crlf.txt\n@@ -79,10 +122,9 @@\n $ hg push ../main\n pushing to ../main\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- added 2 changesets with 2 changes to 1 files\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ printf "first\\r\\nsecond" > b.txt\n $ hg add b.txt\n@@ -90,15 +132,8 @@\n $ hg push ../main\n pushing to ../main\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- error: pretxnchangegroup hook failed: end-of-line check failed:\n- b.txt in fbcf9b1025f5 should not have CRLF line endings\n- transaction abort!\n- rollback completed\n- abort: end-of-line check failed:\n- b.txt in fbcf9b1025f5 should not have CRLF line endings\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n $ hg up -r -2\n@@ -110,15 +145,8 @@\n $ hg push -f ../main\n pushing to ../main\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- error: pretxnchangegroup hook failed: end-of-line check failed:\n- b.txt in fbcf9b1025f5 should not have CRLF line endings\n- transaction abort!\n- rollback completed\n- abort: end-of-line check failed:\n- b.txt in fbcf9b1025f5 should not have CRLF line endings\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n Test checkheadshook alias\n@@ -130,15 +158,8 @@\n $ hg push -f ../main\n pushing to ../main\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- error: pretxnchangegroup hook failed: end-of-line check failed:\n- b.txt in fbcf9b1025f5 should not have CRLF line endings\n- transaction abort!\n- rollback completed\n- abort: end-of-line check failed:\n- b.txt in fbcf9b1025f5 should not have CRLF line endings\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n We can fix the head and push again\n@@ -150,12 +171,11 @@\n $ hg push -f ../main\n pushing to ../main\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- added 3 changesets with 3 changes to 2 files (+1 heads)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg -R ../main rollback\n- repository tip rolled back to revision 5 (undo push)\n+ repository tip rolled back to revision -1 (undo push)\n \n Test it still fails with checkallhook\n \n@@ -166,15 +186,8 @@\n $ hg push -f ../main\n pushing to ../main\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- error: pretxnchangegroup hook failed: end-of-line check failed:\n- b.txt in fbcf9b1025f5 should not have CRLF line endings\n- transaction abort!\n- rollback completed\n- abort: end-of-line check failed:\n- b.txt in fbcf9b1025f5 should not have CRLF line endings\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n But we can push the clean head\n@@ -182,10 +195,9 @@\n $ hg push -r7 -f ../main\n pushing to ../main\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 1 changes to 1 files\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Test multiple files/revisions output\n \n@@ -195,17 +207,8 @@\n $ hg push -f ../main\n pushing to ../main\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- error: pretxnchangegroup hook failed: end-of-line check failed:\n- b.txt in fbcf9b1025f5 should not have CRLF line endings\n- d.txt in a7040e68714f should not have CRLF line endings\n- transaction abort!\n- rollback completed\n- abort: end-of-line check failed:\n- b.txt in fbcf9b1025f5 should not have CRLF line endings\n- d.txt in a7040e68714f should not have CRLF line endings\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n $ cd ..\n', 2303, 2305, 'truncated \\uXXXX escape') decoding diff, sorry
test-eol.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-eol.t\n+++ c:/hgdev/src/tests/test-eol.t.err\n@@ -185,10 +185,65 @@\n third\n % hg commit of inconsistent .txt file marked as binary (should work)\n % hg commit of inconsistent .txt file marked as native (should fail)\n- abort: inconsistent newline style in a.txt\n- \n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: eol\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n % hg commit --config eol.only-consistent=False (should work)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n % hg commit of binary .txt file marked as native (binary files always okay)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n $ dotest CRLF\n % hg clone repo repo-CRLF\n 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n@@ -229,10 +284,65 @@\n third\\r (esc)\n % hg commit of inconsistent .txt file marked as binary (should work)\n % hg commit of inconsistent .txt file marked as native (should fail)\n- abort: inconsistent newline style in a.txt\n- \n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: eol\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n % hg commit --config eol.only-consistent=False (should work)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n % hg commit of binary .txt file marked as native (binary files always okay)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n $ rm -r repo\n $ makerepo CRLF\n % setup CRLF repository\n@@ -279,10 +389,65 @@\n third\n % hg commit of inconsistent .txt file marked as binary (should work)\n % hg commit of inconsistent .txt file marked as native (should fail)\n- abort: inconsistent newline style in a.txt\n- \n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: eol\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n % hg commit --config eol.only-consistent=False (should work)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n % hg commit of binary .txt file marked as native (binary files always okay)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n $ dotest CRLF\n % hg clone repo repo-CRLF\n 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n@@ -323,10 +488,65 @@\n third\\r (esc)\n % hg commit of inconsistent .txt file marked as binary (should work)\n % hg commit of inconsistent .txt file marked as native (should fail)\n- abort: inconsistent newline style in a.txt\n- \n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: eol\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n % hg commit --config eol.only-consistent=False (should work)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n % hg commit of binary .txt file marked as native (binary files always okay)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n $ rm -r repo\n \n Mixed tests\n@@ -465,14 +685,68 @@\n > only-consistent = True\n > EOF\n $ hg commit -m \'inconsistent\'\n- abort: inconsistent newline style in a.txt\n- \n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: eol\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cat > .hgeol << EOF\n > [eol]\n > only-consistent = False\n > EOF\n $ hg commit -m \'consistent\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg init subrepo\n $ hg -R subrepo pull -qu .\n@@ -480,16 +754,18 @@\n $ hg ci -Am "add subrepo"\n adding .hgeol\n adding .hgsub\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg archive -S ../archive\n+ abort: no working directory: please specify a revision\n+ [10]\n $ find ../archive/* | sort\n- ../archive/a.txt\n- ../archive/subrepo\n- ../archive/subrepo/a.txt\n+ find: `../archive/*\': $ENOENT$\n $ cat ../archive/a.txt ../archive/subrepo/a.txt\n- first\\r (esc)\n- second\\r (esc)\n- first\\r (esc)\n- second\\r (esc)\n+ cat: ../archive/a.txt: $ENOENT$\n+ cat: ../archive/subrepo/a.txt: $ENOENT$\n+ [1]\n \n Test trailing newline\n \n@@ -551,6 +827,67 @@\n \n $ hg mv a.txt b.txt\n $ hg ci --amend -q\n+ strip failed, backup bundle stored in \'$TESTTMP\\trailing\\.hg\\strip-backup/8f6f21239920-06be46fa-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\trailing\\.hg\\strip-backup/8f6f21239920-28c1d7ef-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\trailing\\.hg\\strip-backup/8f6f21239920-28c1d7ef-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: eol\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg diff -c.\n diff --git a/a.txt b/b.txt\n rename from a.txt\n', 2197, 2199, 'truncated \\uXXXX escape') decoding diff, sorry
test-exchange-obsmarkers-case-D1.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-exchange-obsmarkers-case-D1.t\n+++ c:/hgdev/src/tests/test-exchange-obsmarkers-case-D1.t.err\n@@ -68,9 +68,64 @@\n 1 new obsolescence markers\n obsoleted 1 changesets\n $ hg strip --hidden -q \'desc(A0)\'\n+ strip failed, backup bundle stored in \'$TESTTMP\\D.1\\main\\.hg\\strip-backup/28b51eb45704-a6014ac7-backup.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\D.1\\main\\.hg\\strip-backup/28b51eb45704-c49a5adf-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\D.1\\main\\.hg\\strip-backup/28b51eb45704-c49a5adf-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg log -G --hidden\n @ e5ea8f9c7314 (draft): A1\n |\n+ | x 06055a7959d4 (draft): B\n+ | |\n+ | x 28b51eb45704 (draft): A0\n+ |/\n o a9bdc8b26820 (public): O\n \n $ inspect_obsmarkers\n@@ -104,6 +159,8 @@\n remote: adding file changes\n remote: added 1 changesets with 1 changes to 1 files\n remote: 2 new obsolescence markers\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n ## post push state\n # obstore: main\n 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {\'user\': \'test\'}\n@@ -152,6 +209,8 @@\n remote: adding file changes\n remote: added 1 changesets with 1 changes to 1 files\n remote: 2 new obsolescence markers\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n ## post push state\n # obstore: main\n 06055a7959d4128e6e3bccfd01482e83a2db8a3a 0 {28b51eb45704506b5c603decd6bf7ac5e0f6a52f} (Thu Jan 01 00:00:00 1970 +0000) {\'user\': \'test\'}\n', 2494, 2496, 'truncated \\uXXXX escape') decoding diff, sorry
test-exchange-obsmarkers-case-D2.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-exchange-obsmarkers-case-D2.t\n+++ c:/hgdev/src/tests/test-exchange-obsmarkers-case-D2.t.err\n@@ -60,9 +60,60 @@\n 1 new obsolescence markers\n obsoleted 1 changesets\n $ hg strip --hidden -q \'desc(A1)\'\n+ strip failed, backup bundle stored in \'$TESTTMP\\D.2\\main\\.hg\\strip-backup/e5ea8f9c7314-c49a5adf-backup.hg\'\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg log -G --hidden\n- x 28b51eb45704 (draft): A0\n+ x e5ea8f9c7314 (draft): A1\n |\n+ | x 28b51eb45704 (draft): A0\n+ |/\n @ a9bdc8b26820 (public): O\n \n $ inspect_obsmarkers\n@@ -89,6 +140,8 @@\n searching for changes\n no changes found\n remote: 2 new obsolescence markers\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n ## post push state\n # obstore: main\n 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {\'user\': \'test\'}\n', 2244, 2246, 'truncated \\uXXXX escape') decoding diff, sorry
test-exchange-obsmarkers-case-D3.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-exchange-obsmarkers-case-D3.t\n+++ c:/hgdev/src/tests/test-exchange-obsmarkers-case-D3.t.err\n@@ -63,7 +63,58 @@\n 1 new obsolescence markers\n obsoleted 1 changesets\n $ hg strip --hidden -q \'desc(A1)\'\n+ strip failed, backup bundle stored in \'$TESTTMP\\D.3\\main\\.hg\\strip-backup/6aa67a7b4baa-ee516493-backup.hg\'\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg log -G --hidden\n+ x 6aa67a7b4baa (draft): A1\n+ |\n @ 35b183996678 (draft): B\n |\n | x 28b51eb45704 (draft): A0\n@@ -94,6 +145,8 @@\n pushing to pushdest\n searching for changes\n no changes found\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n ## post push state\n # obstore: main\n 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 6aa67a7b4baa6fb41b06aed38d5b1201436546e2 0 (Thu Jan 01 00:00:00 1970 +0000) {\'user\': \'test\'}\n', 2244, 2246, 'truncated \\uXXXX escape') decoding diff, sorry
test-extdiff.t
--- c:/hgdev/src/tests/test-extdiff.t
+++ c:/hgdev/src/tests/test-extdiff.t.err
@@ -71,6 +71,7 @@
$ hg falabala -r 0:1
diffing "*\extdiff.*\a.8a5febb7f867\a" "a.34eed99112ab\a" (glob) (windows !)
diffing */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !)
+ diffing "c:\temp\extdiff.ljhbqm\a.8a5febb7f867\a" "a.34eed99112ab\a"
(esc)
[1]
Specifying an empty revision should abort.
@@ -96,6 +97,7 @@
$ hg falabala
diffing "*\extdiff.*\a.2a13a4d2da36\a" "*\a\a" (glob) (windows !)
diffing */extdiff.*/a.2a13a4d2da36/a */a/a (glob) (no-windows !)
+ diffing "c:\temp\extdiff.v9f86g\a.2a13a4d2da36\a" "$TESTTMP\a\a"
(esc)
[1]
@@ -106,6 +108,7 @@
$ hg falabala -c 1
diffing "*\extdiff.*\a.8a5febb7f867\a" "a.34eed99112ab\a" (glob) (windows !)
diffing */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !)
+ diffing "c:\temp\extdiff.omfqgl\a.8a5febb7f867\a" "a.34eed99112ab\a"
(esc)
[1]
Check diff are made from the first parent:
@@ -113,6 +116,7 @@
$ hg falabala -c 3 || echo "diff-like tools yield a non-zero exit code"
diffing "*\extdiff.*\a.2a13a4d2da36\a" "a.46c0e4daeb72\a" (glob) (windows !)
diffing */extdiff.*/a.2a13a4d2da36/a a.46c0e4daeb72/a (glob) (no-windows !)
+ diffing "c:\temp\extdiff.7ealiw\a.2a13a4d2da36\a" "a.46c0e4daeb72\a"
(esc)
diff-like tools yield a non-zero exit code
issue3153: ensure using extdiff with removed subrepos doesn't crash:
@@ -146,6 +150,8 @@
diffing */extdiff.*/a.46c0e4daeb72/a a.81906f2b98ac/a (glob) (no-windows !)
diffing "*\extdiff.*\a.46c0e4daeb72\b" "a.81906f2b98ac\b" (glob) (windows !)
diffing */extdiff.*/a.46c0e4daeb72/b a.81906f2b98ac/b (glob) (no-windows !)
+ diffing "c:\temp\extdiff.tzvkbj\a.46c0e4daeb72\a" "a.81906f2b98ac\a"
(esc)
+ diffing "c:\temp\extdiff.tzvkbj\a.46c0e4daeb72\b" "a.81906f2b98ac\b"
(esc)
[1]
Test --per-file option for gui tool:
@@ -190,6 +196,7 @@
diff b (2 of 2) [Yns?] y
diffing "*\extdiff.*\a.46c0e4daeb72\b" "a.81906f2b98ac\b" (glob) (windows !)
diffing */extdiff.*/a.46c0e4daeb72/b a.81906f2b98ac/b (glob) (no-windows !)
+ diffing "c:\temp\extdiff.heub6u\a.46c0e4daeb72\b" "a.81906f2b98ac\b"
(esc)
[1]
Test --per-file and --confirm options with skipping:
@@ -215,12 +222,15 @@
$ hg --debug 4463a | grep '^running'
running 'echo a-naked 'single quoted' "double quoted" "*\a" "*\a"' in */extdiff.* (glob) (windows !)
running 'echo a-naked 'single quoted' "double quoted" */a $TESTTMP/a/a' in */extdiff.* (glob) (no-windows !)
+ running 'echo a-naked 'single quoted' "double quoted" "c:\temp\extdiff.iadq0f\a.8a5febb7f867\a" "C:\Temp\hgtests.dstqqw\child259\test-extdiff.t\a\a"' in c: emp\extdiff.iadq0f
$ hg --debug 4463b | grep '^running'
running 'echo b-naked 'single quoted' "double quoted" "*\a" "*\a"' in */extdiff.* (glob) (windows !)
running 'echo b-naked 'single quoted' "double quoted" */a $TESTTMP/a/a' in */extdiff.* (glob) (no-windows !)
+ running 'echo b-naked 'single quoted' "double quoted" "c:\temp\extdiff.ii1fuo\a.8a5febb7f867\a" "C:\Temp\hgtests.dstqqw\child259\test-extdiff.t\a\a"' in c: emp\extdiff.ii1fuo
$ hg --debug echo | grep '^running'
running '*echo* "*\a" "*\a"' in */extdiff.* (glob) (windows !)
running '*echo */a $TESTTMP/a/a' in */extdiff.* (glob) (no-windows !)
+ running '"C:\hgdev\MinGW\msys\1.0\bin\echo.exe" "c:\temp\extdiff.swa3ct\a.8a5febb7f867\a" "C:\Temp\hgtests.dstqqw\child259\test-extdiff.t\a\a"' in c: emp\extdiff.swa3ct
(getting options from other than extdiff section)
@@ -241,18 +251,23 @@
$ hg --debug 4463b2 | grep '^running'
running 'echo b2-naked 'single quoted' "double quoted" "*\a" "*\a"' in */extdiff.* (glob) (windows !)
running 'echo b2-naked 'single quoted' "double quoted" */a $TESTTMP/a/a' in */extdiff.* (glob) (no-windows !)
+ running 'echo b2-naked 'single quoted' "double quoted" "c:\temp\extdiff.1j5mzg\a.8a5febb7f867\a" "C:\Temp\hgtests.dstqqw\child259\test-extdiff.t\a\a"' in c: emp\extdiff.1j5mzg
$ hg --debug 4463b3 | grep '^running'
running 'echo b3-naked 'single quoted' "double quoted" "*\a" "*\a"' in */extdiff.* (glob) (windows !)
running 'echo b3-naked 'single quoted' "double quoted" */a $TESTTMP/a/a' in */extdiff.* (glob) (no-windows !)
+ running 'echo b3-naked 'single quoted' "double quoted" "c:\temp\extdiff.td52wp\a.8a5febb7f867\a" "C:\Temp\hgtests.dstqqw\child259\test-extdiff.t\a\a"' in c: emp\extdiff.td52wp
$ hg --debug 4463b4 | grep '^running'
running 'echo "*\a" "*\a"' in */extdiff.* (glob) (windows !)
running 'echo */a $TESTTMP/a/a' in */extdiff.* (glob) (no-windows !)
+ running 'echo "c:\temp\extdiff.xja9xu\a.8a5febb7f867\a" "C:\Temp\hgtests.dstqqw\child259\test-extdiff.t\a\a"' in c: emp\extdiff.xja9xu
$ hg --debug 4463b4 --option b4-naked --option 'being quoted' | grep '^running'
running 'echo b4-naked "being quoted" "*\a" "*\a"' in */extdiff.* (glob) (windows !)
running "echo b4-naked 'being quoted' */a $TESTTMP/a/a" in */extdiff.* (glob) (no-windows !)
+ running 'echo b4-naked "being quoted" "c:\temp\extdiff.bl3o9l\a.8a5febb7f867\a" "C:\Temp\hgtests.dstqqw\child259\test-extdiff.t\a\a"' in c: emp\extdiff.bl3o9l
$ hg --debug extdiff -p echo --option echo-naked --option 'being quoted' | grep '^running'
running 'echo echo-naked "being quoted" "*\a" "*\a"' in */extdiff.* (glob) (windows !)
running "echo echo-naked 'being quoted' */a $TESTTMP/a/a" in */extdiff.* (glob) (no-windows !)
+ running 'echo echo-naked "being quoted" "c:\temp\extdiff.fhtanz\a.8a5febb7f867\a" "C:\Temp\hgtests.dstqqw\child259\test-extdiff.t\a\a"' in c: emp\extdiff.fhtanz
$ touch 'sp ace'
$ hg add 'sp ace'
@@ -273,6 +288,7 @@
$ hg --debug odd | grep '^running'
running '"*\echo.exe" --foo="sp ace" "sp ace" --bar="sp ace" "sp ace"' in * (glob) (windows !)
running "*/echo --foo='sp ace' 'sp ace' --bar='sp ace' 'sp ace'" in * (glob) (no-windows !)
+ running '"C:\hgdev\MinGW\msys\1.0\bin\echo.exe" --foo="sp ace" "sp ace" --bar="sp ace" "sp ace"' in c: emp\extdiff.vcpubi
Empty argument must be quoted
@@ -286,6 +302,7 @@
$ hg --debug kdiff3 -r0 | grep '^running'
running 'echo --L1 "@0" --L2 "" a.8a5febb7f867 a' in * (glob) (windows !)
running "echo --L1 '@0' --L2 '' a.8a5febb7f867 a" in * (glob) (no-windows !)
+ running 'echo --L1 "@0" --L2 "" a.8a5febb7f867 a' in c: emp\extdiff.aaylp0
Test extdiff of multiple files in tmp dir:
@@ -371,11 +388,13 @@
$ hg extdiff -p echo -o this -c 1
this "*\a.8a5febb7f867\a" "a.34eed99112ab\a" (glob) (windows !)
this */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !)
+ this "c:\temp\extdiff.cjzguc\a.8a5febb7f867\a" "a.34eed99112ab\a"
(esc)
[1]
$ hg falabala -o this -c 1
diffing this "*\a.8a5febb7f867\a" "a.34eed99112ab\a" (glob) (windows !)
diffing this */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !)
+ diffing this "c:\temp\extdiff.map7am\a.8a5febb7f867\a" "a.34eed99112ab\a"
(esc)
[1]
Test extdiff's handling of options with spaces in them:
@@ -383,11 +402,13 @@
$ hg edspace -c 1
"name <user@example.com>" "*\a.8a5febb7f867\a" "a.34eed99112ab\a" (glob) (windows !)
name <user@example.com> */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !)
+ "name <user@example.com>" "c:\temp\extdiff.vy08cx\a.8a5febb7f867\a" "a.34eed99112ab\a"
(esc)
[1]
$ hg extdiff -p echo -o "name <user@example.com>" -c 1
"name <user@example.com>" "*\a.8a5febb7f867\a" "a.34eed99112ab\a" (glob) (windows !)
name <user@example.com> */extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !)
+ "name <user@example.com>" "c:\temp\extdiff.cfwnvo\a.8a5febb7f867\a" "a.34eed99112ab\a"
(esc)
[1]
Test with revsets:
@@ -395,11 +416,13 @@
$ hg extdif -p echo -c "rev(1)"
"*\a.8a5febb7f867\a" "a.34eed99112ab\a" (glob) (windows !)
*/extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !)
+ "c:\temp\extdiff._eb6vf\a.8a5febb7f867\a" "a.34eed99112ab\a"
(esc)
[1]
$ hg extdif -p echo -r "0::1"
"*\a.8a5febb7f867\a" "a.34eed99112ab\a" (glob) (windows !)
*/extdiff.*/a.8a5febb7f867/a a.34eed99112ab/a (glob) (no-windows !)
+ "c:\temp\extdiff.lrglth\a.8a5febb7f867\a" "a.34eed99112ab\a"
(esc)
[1]
Fallback to merge-tools.tool.executable|regkey
@@ -440,12 +463,14 @@
b
running '$TESTTMP/a/dir/tool.bat a.* a' in */extdiff.* (glob) (windows !)
running '$TESTTMP/a/dir/tool.sh a.* a' in */extdiff.* (glob) (no-windows !)
- ** custom diff **
- file changed while diffing. Overwriting: $TESTTMP/a/a (src: */extdiff.*/a/a) (glob)
+ running 'tl a.8a5febb7f867 a' in c: emp\extdiff.awpzro
+ 'tl' is not recognized as an internal or external command,
(esc)
+ operable program or batch file.
(esc)
cleaning up temp directory
[1]
$ cat a
- a
+ changed
+ edited
#if execbit
$ [ -x a ]
@@ -527,19 +552,23 @@
$ hg falabala
diffing nul "*\a" (glob) (windows !)
diffing /dev/null */a (glob) (no-windows !)
+ diffing nul "$TESTTMP\testsinglefile\a"
(esc)
[1]
$ hg ci -qm a
$ hg falabala -c .
diffing nul "*\a" (glob) (windows !)
diffing /dev/null */a (glob) (no-windows !)
+ diffing nul "testsinglefile.cb9a9f314b8b\a"
(esc)
[1]
$ echo a >> a
$ hg falabala
diffing "*\a" "*\a" (glob) (windows !)
diffing */a */a (glob) (no-windows !)
+ diffing "c:\temp\extdiff.l7kyp0\testsinglefile.cb9a9f314b8b\a" "$TESTTMP\testsinglefile\a"
(esc)
[1]
$ hg ci -qm 2a
$ hg falabala -c .
diffing "*\a" "*\a" (glob) (windows !)
diffing */a */a (glob) (no-windows !)
- [1]
+ diffing "c:\temp\extdiff.smebhx\testsinglefile.cb9a9f314b8b\a" "testsinglefile.2c635a92f535\a"
(esc)
+ [1]
test-extension.t
--- c:/hgdev/src/tests/test-extension.t
+++ c:/hgdev/src/tests/test-extension.t.err
@@ -80,10 +80,11 @@
Foo
$ hg foo --quiet
uisetup called (no-chg !)
- uipopulate called (1 times)
+ uisetup called
uipopulate called (1 times)
uipopulate called (1 times) (chg !)
uipopulate called (1 times) (chg !)
+ uipopulate called (1 times)
uipopulate called (1 times)
reposetup called for a
ui == repo.ui
@@ -92,10 +93,13 @@
uisetup called [debug] (no-chg !)
uisetup called (no-chg !)
uisetup called [status] (no-chg !)
+ uisetup called [debug]
+ uisetup called
+ uipopulate called (1 times) (chg !)
+ uipopulate called (1 times) (chg !)
+ uisetup called [status]
uipopulate called (1 times)
uipopulate called (1 times)
- uipopulate called (1 times) (chg !)
- uipopulate called (1 times) (chg !)
uipopulate called (1 times)
reposetup called for a
ui == repo.ui
@@ -105,8 +109,10 @@
$ hg clone a b
uisetup called (no-chg !)
uisetup called [status] (no-chg !)
+ uisetup called
+ uipopulate called (1 times) (chg !)
+ uisetup called [status]
uipopulate called (1 times)
- uipopulate called (1 times) (chg !)
uipopulate called (1 times)
reposetup called for a
ui == repo.ui
@@ -119,8 +125,10 @@
$ hg bar
uisetup called (no-chg !)
uisetup called [status] (no-chg !)
+ uisetup called
+ uipopulate called (1 times) (chg !)
+ uisetup called [status]
uipopulate called (1 times)
- uipopulate called (1 times) (chg !)
Bar
$ echo 'foobar = !' >> $HGRCPATH
@@ -248,7 +256,7 @@
$ export PATH_INFO
$ SCRIPT_NAME='' QUERY_STRING='rev=foo() and bar()' "$PYTHON" hgweb.cgi > | grep '<a href="/rev/[0-9a-z]*">'
- <a href="/rev/c24b9ac61126">add file</a>
+ [1]
$ echo 'foo = !' >> $HGRCPATH
$ echo 'bar = !' >> $HGRCPATH
@@ -287,7 +295,7 @@
> NO_CHECK_EOF
$ "$PYTHON" $TESTTMP/unflush.py loadabs.py
$ (PYTHONPATH=${PYTHONPATH}${PATHSEP}${TESTTMP}/libroot; hg --config extensions.loadabs=loadabs.py root)
- ambigabs.s=libroot/ambig.py
+ *** failed to import extension loadabs from loadabs.py: No module named mod
$TESTTMP/a
#if no-py3
--- c:/hgdev/src/tests/test-extra-filelog-entry.t
+++ c:/hgdev/src/tests/test-extra-filelog-entry.t.err
@@ -14,8 +14,12 @@
$ hg qnew -f foo.diff
$ echo b > b
$ hg qrefresh
+ abort: $TESTTMP\.hg\dirstate.pending: $ENOENT$.
+ Exception OSError: OSError(2, 'C:\Temp\hgtests.dstqqw\child908\test-extra-filelog-entry.t\.hg\dirstate.pending: $ENOENT$.') in <bound method dirstateguard.__del__ of <mercurial.dirstateguard.dirstateguard object at 0x000000000178BEC8>> ignored
+ [255]
$ hg debugindex b
rev linkrev nodeid p1 p2
0 0 1e88685f5dde 000000000000 000000000000
+ 1 1 74ad70016319 1e88685f5dde 000000000000
test-fastannotate-hg.t
--- c:/hgdev/src/tests/test-fastannotate-hg.t
+++ c:/hgdev/src/tests/test-fastannotate-hg.t.err
@@ -635,6 +635,7 @@
$ hg annotate -ncr "wdir()" baz
abort: $TESTTMP/repo/baz: $ENOENT$ (windows !)
abort: $ENOENT$: '$TESTTMP/repo/baz' (no-windows !)
+ abort: $TESTTMP
epoaz: $ENOENT$
[255]
annotate removed file
@@ -643,6 +644,7 @@
$ hg annotate -ncr "wdir()" baz
abort: $TESTTMP/repo/baz: $ENOENT$ (windows !)
abort: $ENOENT$: '$TESTTMP/repo/baz' (no-windows !)
+ abort: $TESTTMP
epoaz: $ENOENT$
[255]
Test annotate with whitespace options
test-fix-pickle.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-fix-pickle.t\n+++ c:/hgdev/src/tests/test-fix-pickle.t.err\n@@ -36,6 +36,7 @@\n > cat file file > tmp\n > mv -f tmp file\n > done\n+ /usr/bin/env: python3: $ENOENT$\n $ hg commit -Am "add large file"\n adding file\n \n@@ -43,3 +44,60 @@\n \n $ hg fix -r .\n saved backup bundle to $TESTTMP/repo/.hg/strip-backup/*-fix.hg (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/6b5ac193250a-f8fe8343-fix.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/6b5ac193250a-dc209f82-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/6b5ac193250a-dc209f82-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: fix\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\fix.py", line 352, in fix\n+ repo.hook(b\'postfix\', throw=True, **pycompat.strkwargs(hookargs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n', 2607, 2609, 'truncated \\uXXXX escape') decoding diff, sorry
test-fix-topology.t#obsstore-off
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-fix-topology.t\n+++ c:/hgdev/src/tests/test-fix-topology.t#obsstore-off.err\n@@ -132,6 +132,66 @@\n \n $ hg fix -r \'2|4|7|8|9\' --working-dir\n saved backup bundle to * (glob) (obsstore-off !)\n+ saved backup bundle to $TESTTMP/repo/.hg/strip-backup/4e7b9312dad2-9c57dad2-fix.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/4e7b9312dad2-9c57dad2-fix.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/4e7b9312dad2-2e0b954f-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/4e7b9312dad2-2e0b954f-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: debugdrawdag, fix, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\fix.py", line 352, in fix\n+ repo.hook(b\'postfix\', throw=True, **pycompat.strkwargs(hookargs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n The five revisions remain, but the other revisions were fixed and replaced. All\n parent pointers have been accurately set to reproduce the previous topology\n@@ -166,23 +226,33 @@\n $ J=14\n #else\n $ hg log --graph --template \'{rev}:{node|short} {desc}\\n\'\n- o 9:d8d0e7974598 change J (child of 89de0da1d5da)\n- |\n- | o 8:4fc0b354461e change I\n+ o 14:d8d0e7974598 change J (child of 89de0da1d5da)\n+ |\n+ | o 13:4fc0b354461e change I\n | |\\\n- | | @ 7:1c45f3923443 change H (child of b53d63e816fb and 0e49f92ee6e9)\n+ | | @ 12:1c45f3923443 change H (child of b53d63e816fb and 0e49f92ee6e9)\n | | |\\\n- | o | | 6:d75754455722 change E\n+ | o | | 11:d75754455722 change E\n |/| | |\n- o | | | 5:89de0da1d5da change C\n+ o | | | 10:89de0da1d5da change C\n | | | |\n- | | | o 4:0e49f92ee6e9 change G\n- | | | |\n- | | o | 3:b53d63e816fb change F\n- | | |/\n- | o / 2:c015ebfd2bfe change D\n- | |/\n- o / 1:388fdd33fea0 change B\n+ | | | | o 9:884041ccc490 change J (child of 7f371349286e)\n+ | | | | |\n+ | | | | | o 8:b7c772105fd2 change I\n+ | | | | | |\\\n+ | | +-+-----o 7:4e7b9312dad2 change H (child of b53d63e816fb and 0e49f92ee6e9)\n+ | | | | | |\n+ | | | o | | 6:0e49f92ee6e9 change G\n+ | | | | | |\n+ | | o | | | 5:b53d63e816fb change F\n+ | | |/ / /\n+ | +-----o 4:ddad58af5e51 change E\n+ | | | |/\n+ | o | | 3:c015ebfd2bfe change D\n+ | |/ /\n+ +---o 2:7f371349286e change C\n+ | |\n+ o | 1:388fdd33fea0 change B\n |/\n o 0:a55a84d97a24 change A\n \n@@ -198,8 +268,7 @@\n \n $ hg cat -r $C \'set:**\'\n aaaa\n- bbbb\n- CCCC\n+ ffff\n \n Change E is a merge with only one parent being fixed. Its baserevs are the\n unfixed parent plus the baserevs of the other parent. This evaluates to changes\n@@ -209,10 +278,7 @@\n \n $ hg cat -r $E \'set:**\'\n aaaa\n- BBBB\n- CCCC\n- DDDD\n- EEEE\n+ gggg\n \n Change H is a merge with neither parent being fixed. This is essentially\n equivalent to the previous case because there is still only one baserev for\n@@ -220,9 +286,9 @@\n \n $ hg cat -r $H \'set:**\'\n aaaa\n- FFFF\n- GGGG\n- HHHH\n+ ffff\n+ gggg\n+ hhhh\n \n Change I is a merge that has four baserevs; two from each parent. We handle\n multiple baserevs in the same way regardless of how many came from each parent.\n@@ -231,14 +297,14 @@\n \n $ hg cat -r $I \'set:**\'\n aaaa\n- BBBB\n- CCCC\n- DDDD\n- EEEE\n- FFFF\n- GGGG\n- HHHH\n- IIII\n+ bbbb\n+ cccc\n+ dddd\n+ eeee\n+ ffff\n+ gggg\n+ hhhh\n+ iiii\n \n Change J is a simple case with one baserev, but its baserev is not its parent,\n change C. Its baserev is its grandparent, change B.\n@@ -246,8 +312,8 @@\n $ hg cat -r $J \'set:**\'\n aaaa\n bbbb\n- CCCC\n- JJJJ\n+ cccc\n+ jjjj\n \n The working copy was dirty, so it is treated much like a revision. The baserevs\n for the working copy are inherited from its parent, change H, because it is\n@@ -527,10 +593,75 @@\n \n $ hg fix --all\n saved backup bundle to * (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\fixall\\.hg\\strip-backup/0fec95fad0f1-d10112ad-fix.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\fixall\\.hg\\strip-backup/0fec95fad0f1-04e2e367-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\fixall\\.hg\\strip-backup/0fec95fad0f1-04e2e367-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: debugdrawdag, fix, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\fix.py", line 352, in fix\n+ repo.hook(b\'postfix\', throw=True, **pycompat.strkwargs(hookargs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg log --graph --template \'{rev} {desc} {phase}\\n\'\n- @ 3 fourth draft\n- |\n+ @ 6 fourth draft\n+ |\n+ | o 5 third secret\n+ | |\n+ | o 4 second draft\n+ |/\n+ | o 3 fourth draft\n+ |/\n | o 2 third secret\n | |\n | o 1 second draft\n@@ -540,11 +671,11 @@\n $ hg cat -r 0 foo.whole\n one\n $ hg cat -r 1 foo.whole\n- TWO\n+ two\n $ hg cat -r 2 foo.whole\n- THREE\n+ three\n $ hg cat -r 3 foo.whole\n- FOUR\n+ four\n $ cat foo.whole\n UNCOMMITTED\n #endif\n', 2753, 2755, 'truncated \\uXXXX escape') decoding diff, sorry
test-fix-topology.t#obsstore-on
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-fix-topology.t\n+++ c:/hgdev/src/tests/test-fix-topology.t#obsstore-on.err\n@@ -132,6 +132,66 @@\n \n $ hg fix -r \'2|4|7|8|9\' --working-dir\n saved backup bundle to * (glob) (obsstore-off !)\n+ saved backup bundle to $TESTTMP/repo/.hg/strip-backup/4e7b9312dad2-9c57dad2-fix.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo\\.hg\\strip-backup/4e7b9312dad2-9c57dad2-fix.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo\\.hg\\strip-backup/4e7b9312dad2-2e0b954f-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo\\.hg\\strip-backup/4e7b9312dad2-2e0b954f-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: debugdrawdag, fix, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\fix.py", line 352, in fix\n+ repo.hook(b\'postfix\', throw=True, **pycompat.strkwargs(hookargs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n The five revisions remain, but the other revisions were fixed and replaced. All\n parent pointers have been accurately set to reproduce the previous topology\n@@ -166,23 +226,33 @@\n $ J=14\n #else\n $ hg log --graph --template \'{rev}:{node|short} {desc}\\n\'\n- o 9:d8d0e7974598 change J (child of 89de0da1d5da)\n- |\n- | o 8:4fc0b354461e change I\n+ o 14:d8d0e7974598 change J (child of 89de0da1d5da)\n+ |\n+ | o 13:4fc0b354461e change I\n | |\\\n- | | @ 7:1c45f3923443 change H (child of b53d63e816fb and 0e49f92ee6e9)\n+ | | @ 12:1c45f3923443 change H (child of b53d63e816fb and 0e49f92ee6e9)\n | | |\\\n- | o | | 6:d75754455722 change E\n+ | o | | 11:d75754455722 change E\n |/| | |\n- o | | | 5:89de0da1d5da change C\n+ o | | | 10:89de0da1d5da change C\n | | | |\n- | | | o 4:0e49f92ee6e9 change G\n- | | | |\n- | | o | 3:b53d63e816fb change F\n- | | |/\n- | o / 2:c015ebfd2bfe change D\n- | |/\n- o / 1:388fdd33fea0 change B\n+ | | | | o 9:884041ccc490 change J (child of 7f371349286e)\n+ | | | | |\n+ | | | | | o 8:b7c772105fd2 change I\n+ | | | | | |\\\n+ | | +-+-----o 7:4e7b9312dad2 change H (child of b53d63e816fb and 0e49f92ee6e9)\n+ | | | | | |\n+ | | | o | | 6:0e49f92ee6e9 change G\n+ | | | | | |\n+ | | o | | | 5:b53d63e816fb change F\n+ | | |/ / /\n+ | +-----o 4:ddad58af5e51 change E\n+ | | | |/\n+ | o | | 3:c015ebfd2bfe change D\n+ | |/ /\n+ +---o 2:7f371349286e change C\n+ | |\n+ o | 1:388fdd33fea0 change B\n |/\n o 0:a55a84d97a24 change A\n \n@@ -198,8 +268,7 @@\n \n $ hg cat -r $C \'set:**\'\n aaaa\n- bbbb\n- CCCC\n+ ffff\n \n Change E is a merge with only one parent being fixed. Its baserevs are the\n unfixed parent plus the baserevs of the other parent. This evaluates to changes\n@@ -209,10 +278,7 @@\n \n $ hg cat -r $E \'set:**\'\n aaaa\n- BBBB\n- CCCC\n- DDDD\n- EEEE\n+ gggg\n \n Change H is a merge with neither parent being fixed. This is essentially\n equivalent to the previous case because there is still only one baserev for\n@@ -220,9 +286,9 @@\n \n $ hg cat -r $H \'set:**\'\n aaaa\n- FFFF\n- GGGG\n- HHHH\n+ ffff\n+ gggg\n+ hhhh\n \n Change I is a merge that has four baserevs; two from each parent. We handle\n multiple baserevs in the same way regardless of how many came from each parent.\n@@ -231,14 +297,14 @@\n \n $ hg cat -r $I \'set:**\'\n aaaa\n- BBBB\n- CCCC\n- DDDD\n- EEEE\n- FFFF\n- GGGG\n- HHHH\n- IIII\n+ bbbb\n+ cccc\n+ dddd\n+ eeee\n+ ffff\n+ gggg\n+ hhhh\n+ iiii\n \n Change J is a simple case with one baserev, but its baserev is not its parent,\n change C. Its baserev is its grandparent, change B.\n@@ -246,8 +312,8 @@\n $ hg cat -r $J \'set:**\'\n aaaa\n bbbb\n- CCCC\n- JJJJ\n+ cccc\n+ jjjj\n \n The working copy was dirty, so it is treated much like a revision. The baserevs\n for the working copy are inherited from its parent, change H, because it is\n@@ -527,10 +593,75 @@\n \n $ hg fix --all\n saved backup bundle to * (glob)\n+ strip failed, backup bundle stored in \'$TESTTMP\\fixall\\.hg\\strip-backup/0fec95fad0f1-d10112ad-fix.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\fixall\\.hg\\strip-backup/0fec95fad0f1-04e2e367-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\fixall\\.hg\\strip-backup/0fec95fad0f1-04e2e367-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "debugdrawdag" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "debugdrawdag" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: debugdrawdag, fix, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\fix.py", line 352, in fix\n+ repo.hook(b\'postfix\', throw=True, **pycompat.strkwargs(hookargs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg log --graph --template \'{rev} {desc} {phase}\\n\'\n- @ 3 fourth draft\n- |\n+ @ 6 fourth draft\n+ |\n+ | o 5 third secret\n+ | |\n+ | o 4 second draft\n+ |/\n+ | o 3 fourth draft\n+ |/\n | o 2 third secret\n | |\n | o 1 second draft\n@@ -540,11 +671,11 @@\n $ hg cat -r 0 foo.whole\n one\n $ hg cat -r 1 foo.whole\n- TWO\n+ two\n $ hg cat -r 2 foo.whole\n- THREE\n+ three\n $ hg cat -r 3 foo.whole\n- FOUR\n+ four\n $ cat foo.whole\n UNCOMMITTED\n #endif\n', 2752, 2754, 'truncated \\uXXXX escape') decoding diff, sorry
test-fix.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-fix.t\n+++ c:/hgdev/src/tests/test-fix.t.err\n@@ -245,16 +245,57 @@\n $ cd badusage\n \n $ hg fix\n- abort: no changesets specified\n- (use --source or --working-dir)\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: fix\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\fix.py", line 352, in fix\n+ repo.hook(b\'postfix\', throw=True, **pycompat.strkwargs(hookargs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg fix --whole\n- abort: no changesets specified\n- (use --source or --working-dir)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n $ hg fix --base 0\n- abort: no changesets specified\n- (use --source or --working-dir)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n Fixing a public revision isn\'t allowed. It should abort early enough that\n@@ -262,17 +303,24 @@\n \n $ printf "hello\\n" > hello.whole\n $ hg commit -Aqm "hello"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg phase -r 0 --public\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg fix -r 0\n- abort: cannot fix public changesets\n- (see \'hg help phases\' for details)\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg fix -r 0 --working-dir\n- abort: cannot fix public changesets\n- (see \'hg help phases\' for details)\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg cat -r tip hello.whole\n- hello\n+ hello.whole: no such file in rev 000000000000\n+ [1]\n $ cat hello.whole\n hello\n \n@@ -608,7 +656,8 @@\n $ sleep 2 # mtime has a resolution of one or two seconds.\n $ hg fix --working-dir\n $ f foo.whole.orig --newer foo.whole\n- foo.whole.orig: newer than foo.whole\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n $ cd ..\n \n@@ -656,28 +705,72 @@\n > fix --working-dir\n [wdir] fail: hello.txt: some\n [wdir] fail: error that did stop the tool\n- abort: no fixes will be applied\n- (use --config fix.failure=continue to apply any successful fixes anyway)\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: fix\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\fix.py", line 352, in fix\n+ repo.hook(b\'postfix\', throw=True, **pycompat.strkwargs(hookargs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+ $ cat hello.txt\n+ goodbye\n+ $ cat foo.whole\n+ foo\n+\n+ $ hg --config "fix.fail:command=sh $TESTTMP/fail.sh {rootpath}" \\\n+ > --config "fix.fail:pattern=hello.txt" \\\n+ > fix --working-dir\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n $ cat hello.txt\n goodbye\n $ cat foo.whole\n foo\n \n- $ hg --config "fix.fail:command=sh $TESTTMP/fail.sh {rootpath}" \\\n- > --config "fix.fail:pattern=hello.txt" \\\n- > fix --working-dir\n- [wdir] fail: hello.txt: some\n- [wdir] fail: error that did stop the tool\n- $ cat hello.txt\n- goodbye\n- $ cat foo.whole\n- FOO\n-\n $ hg --config "fix.fail:command=exit 42" \\\n > --config "fix.fail:pattern=hello.txt" \\\n > fix --working-dir\n- [wdir] fail: exited with status 42\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ cd ..\n \n@@ -872,14 +965,55 @@\n [240]\n \n $ hg --config extensions.rebase= fix --working-dir\n- abort: unresolved conflicts\n- (use \'hg resolve\')\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: fix, rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\fix.py", line 352, in fix\n+ repo.hook(b\'postfix\', throw=True, **pycompat.strkwargs(hookargs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+\n+ $ hg --config extensions.rebase= fix -r .\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n-\n- $ hg --config extensions.rebase= fix -r .\n- abort: rebase in progress\n- (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n- [20]\n \n $ cd ..\n \n@@ -1110,12 +1244,57 @@\n 1 new obsolescence markers\n obsoleted 1 changesets\n $ hg --hidden fix -r 0\n- abort: fixing obsolete revision could cause divergence\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: fix\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\fix.py", line 352, in fix\n+ repo.hook(b\'postfix\', throw=True, **pycompat.strkwargs(hookargs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+\n+ $ hg --hidden fix -r 0 --config experimental.evolution.allowdivergence=true\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n-\n- $ hg --hidden fix -r 0 --config experimental.evolution.allowdivergence=true\n $ hg cat -r tip foo.changed\n- FOO\n+ foo\n \n $ cd ..\n \n@@ -1173,12 +1352,56 @@\n $ printf "two\\n" > foo.whole\n $ hg commit -m "second"\n $ hg --config experimental.evolution.allowunstable=False fix -r \'.^\'\n- abort: cannot fix changeset with children\n- [10]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: fix\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\fix.py", line 352, in fix\n+ repo.hook(b\'postfix\', throw=True, **pycompat.strkwargs(hookargs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg fix -r \'.^\'\n- 1 new orphan changesets\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg cat -r 2 foo.whole\n- ONE\n+ one\n \n $ cd ..\n \n', 2103, 2105, 'truncated \\uXXXX escape') decoding diff, sorry
test-flagprocessor.t
--- c:/hgdev/src/tests/test-flagprocessor.t
+++ c:/hgdev/src/tests/test-flagprocessor.t.err
@@ -189,7 +189,8 @@
# TEST: ensure a missing processor is handled
$ echo '[FAIL][BASE64][GZIP][NOOP]' > fail-base64-gzip-noop
$ hg commit -Aqm 'fail+base64+gzip+noop'
- abort: missing processor for flag '0x1'
+ abort: $TESTTMP\client2\.hg\dirstate.pending: $ENOENT$.
+ Exception OSError: OSError(2, 'C:\Temp\hgtests.dstqqw\child392\test-flagprocessor.t\client2\.hg\dirstate.pending: $ENOENT$.') in <bound method dirstateguard.__del__ of <mercurial.dirstateguard.dirstateguard object at 0x0000000001724D48>> ignored
[255]
$ rm fail-base64-gzip-noop
@@ -206,17 +207,20 @@
File "*/tests/flagprocessorext.py", line *, in extsetup (glob)
flagutil.addflagprocessor( (py38 !)
validatehash, (no-py38 !)
+ validatehash,
File "*/mercurial/revlogutils/flagutil.py", line *, in addflagprocessor (glob)
insertflagprocessor(flag, processor, flagprocessors)
File "*/mercurial/revlogutils/flagutil.py", line *, in insertflagprocessor (glob)
- raise error.Abort(msg)
mercurial.error.Abort: cannot register multiple processors on flag '0x8'. (py3 !)
Abort: cannot register multiple processors on flag '0x8'. (no-py3 !)
+ raise error.Abort(msg)
+ Abort: cannot register multiple processors on flag '0x8'.
*** failed to set up extension duplicate: cannot register multiple processors on flag '0x8'.
$ hg st 2>&1 | egrep 'cannot register multiple processors|flagprocessorext'
File "*/tests/flagprocessorext.py", line *, in extsetup (glob)
mercurial.error.Abort: cannot register multiple processors on flag '0x8'. (py3 !)
Abort: cannot register multiple processors on flag '0x8'. (no-py3 !)
+ Abort: cannot register multiple processors on flag '0x8'.
*** failed to set up extension duplicate: cannot register multiple processors on flag '0x8'.
File "*/tests/flagprocessorext.py", line *, in b64decode (glob)
test-globalopts.t
--- c:/hgdev/src/tests/test-globalopts.t
+++ c:/hgdev/src/tests/test-globalopts.t.err
@@ -271,7 +271,7 @@
#else
Traceback for '--config' errors not supported with chg.
$ hg --cwd c --config x --traceback id 2>&1 | grep -i 'traceback'
- [1]
+ Traceback (most recent call last):
#endif
Testing --time:
test-graft-interrupted.t#abortcommand
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-graft-interrupted.t\n+++ c:/hgdev/src/tests/test-graft-interrupted.t#abortcommand.err\n@@ -342,6 +342,7 @@\n $ hg abort\n abort: no interrupted graft to abort (abortflag !)\n abort: no operation in progress (abortcommand !)\n+ abort: no operation in progress\n [20]\n \n when stripping is required\n@@ -377,16 +378,66 @@\n #endif\n \n $ hg abort\n- graft aborted\n- working directory is now at 9150fe93bec6\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 204, in abort\n+ return abortstate.abortfunc(ui, repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 3914, in hgabortgraft\n+ return abortgraft(ui, repo, graftstate)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 3887, in abortgraft\n+ repair.strip(repo.ui, repo, strippoints, backup=False)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg log -GT "{rev}:{node|short} {desc}"\n- o 5:36b793615f78 added foo to c\n- |\n- | o 4:863a25e1a9ea added x\n- |/\n- | @ 3:9150fe93bec6 added d\n- | |\n- | o 2:155349b645be added c\n+ o 6:6ec71c037d94 added x\n+ |\n+ | o 5:36b793615f78 added foo to c\n+ | |\n+ | | o 4:863a25e1a9ea added x\n+ | |/\n+ @ | 3:9150fe93bec6 added d\n+ | |\n+ o | 2:155349b645be added c\n |/\n o 1:5f6d8a4bf34a added b\n |\n@@ -394,48 +445,22 @@\n \n when stripping is not required\n $ hg graft -r 5\n- grafting 5:36b793615f78 "added foo to c" (tip)\n- merging c\n- warning: conflicts while merging c! (edit, then use \'hg resolve --mark\')\n- abort: unresolved conflicts, can\'t continue\n- (use \'hg resolve\' and \'hg graft --continue\')\n- [1]\n+ abort: graft in progress\n+ (use \'hg graft --continue\' or \'hg graft --stop\' to stop)\n+ [20]\n \n $ hg abort\n- graft aborted\n- working directory is now at 9150fe93bec6\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -GT "{rev}:{node|short} {desc}"\n- o 5:36b793615f78 added foo to c\n- |\n- | o 4:863a25e1a9ea added x\n- |/\n- | @ 3:9150fe93bec6 added d\n- | |\n- | o 2:155349b645be added c\n- |/\n- o 1:5f6d8a4bf34a added b\n- |\n- o 0:9092f1db7931 added a\n- \n-when some of the changesets became public\n-\n- $ hg graft -r 4 -r 5\n- grafting 4:863a25e1a9ea "added x"\n- grafting 5:36b793615f78 "added foo to c" (tip)\n- merging c\n- warning: conflicts while merging c! (edit, then use \'hg resolve --mark\')\n- abort: unresolved conflicts, can\'t continue\n- (use \'hg resolve\' and \'hg graft --continue\')\n- [1]\n-\n- $ hg log -GT "{rev}:{node|short} {desc}"\n- @ 6:6ec71c037d94 added x\n- |\n- | % 5:36b793615f78 added foo to c\n+ o 6:6ec71c037d94 added x\n+ |\n+ | o 5:36b793615f78 added foo to c\n | |\n | | o 4:863a25e1a9ea added x\n | |/\n- o | 3:9150fe93bec6 added d\n+ @ | 3:9150fe93bec6 added d\n | |\n o | 2:155349b645be added c\n |/\n@@ -443,12 +468,37 @@\n |\n o 0:9092f1db7931 added a\n \n+when some of the changesets became public\n+\n+ $ hg graft -r 4 -r 5\n+ abort: graft in progress\n+ (use \'hg graft --continue\' or \'hg graft --stop\' to stop)\n+ [20]\n+\n+ $ hg log -GT "{rev}:{node|short} {desc}"\n+ o 6:6ec71c037d94 added x\n+ |\n+ | o 5:36b793615f78 added foo to c\n+ | |\n+ | | o 4:863a25e1a9ea added x\n+ | |/\n+ @ | 3:9150fe93bec6 added d\n+ | |\n+ o | 2:155349b645be added c\n+ |/\n+ o 1:5f6d8a4bf34a added b\n+ |\n+ o 0:9092f1db7931 added a\n+ \n $ hg phase -r 6 --public\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg abort\n- cannot clean up public changesets 6ec71c037d94\n- graft aborted\n- working directory is now at 6ec71c037d94\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n when we created new changesets on top of existing one\n \n@@ -456,39 +506,35 @@\n 0 files updated, 0 files merged, 2 files removed, 0 files unresolved\n $ echo y > y\n $ hg ci -Aqm "added y"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ echo z > z\n $ hg ci -Aqm "added z"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg up 3\n- 1 files updated, 0 files merged, 3 files removed, 0 files unresolved\n+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg log -GT "{rev}:{node|short} {desc}"\n- o 8:637f9e9bbfd4 added z\n- |\n- o 7:123221671fd4 added y\n- |\n- | o 6:6ec71c037d94 added x\n- | |\n- | | o 5:36b793615f78 added foo to c\n- | | |\n- | | | o 4:863a25e1a9ea added x\n- | | |/\n- | @ | 3:9150fe93bec6 added d\n- |/ /\n- o / 2:155349b645be added c\n+ o 6:6ec71c037d94 added x\n+ |\n+ | o 5:36b793615f78 added foo to c\n+ | |\n+ | | o 4:863a25e1a9ea added x\n+ | |/\n+ @ | 3:9150fe93bec6 added d\n+ | |\n+ o | 2:155349b645be added c\n |/\n o 1:5f6d8a4bf34a added b\n |\n o 0:9092f1db7931 added a\n \n $ hg graft -r 8 -r 7 -r 5\n- grafting 8:637f9e9bbfd4 "added z" (tip)\n- grafting 7:123221671fd4 "added y"\n- grafting 5:36b793615f78 "added foo to c"\n- merging c\n- warning: conflicts while merging c! (edit, then use \'hg resolve --mark\')\n- abort: unresolved conflicts, can\'t continue\n- (use \'hg resolve\' and \'hg graft --continue\')\n- [1]\n+ abort: unknown revision \'7\'\n+ [255]\n \n $ cd ..\n $ hg init pullrepo\n@@ -503,11 +549,12 @@\n adding changesets\n adding manifests\n adding file changes\n- added 11 changesets with 9 changes to 8 files (+4 heads)\n- new changesets 9092f1db7931:6b98ff0062dd (6 drafts)\n+ added 7 changesets with 6 changes to 5 files (+2 heads)\n+ new changesets 9092f1db7931:6ec71c037d94 (7 drafts)\n (run \'hg heads\' to see heads, \'hg merge\' to merge)\n $ hg up 9\n- 5 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: 00changelog.i@9: ambiguous identifier\n+ [255]\n $ echo w > w\n $ hg ci -Aqm "added w" --config phases.publish=False\n \n@@ -515,17 +562,13 @@\n $ hg pull ../pullrepo\n pulling from ../pullrepo\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 1 changes to 1 files (+1 heads)\n- new changesets 311dfc6cf3bf (1 drafts)\n- (run \'hg heads .\' to see heads, \'hg merge\' to merge)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg abort\n- new changesets detected on destination branch, can\'t strip\n- graft aborted\n- working directory is now at 6b98ff0062dd\n+ abort: no operation in progress\n+ [20]\n \n $ cd ..\n \n', 2330, 2332, 'truncated \\uXXXX escape') decoding diff, sorry
test-graft-interrupted.t#abortflag
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-graft-interrupted.t\n+++ c:/hgdev/src/tests/test-graft-interrupted.t#abortflag.err\n@@ -342,6 +342,7 @@\n $ hg abort\n abort: no interrupted graft to abort (abortflag !)\n abort: no operation in progress (abortcommand !)\n+ abort: no operation in progress\n [20]\n \n when stripping is required\n@@ -377,16 +378,66 @@\n #endif\n \n $ hg abort\n- graft aborted\n- working directory is now at 9150fe93bec6\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 204, in abort\n+ return abortstate.abortfunc(ui, repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 3914, in hgabortgraft\n+ return abortgraft(ui, repo, graftstate)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 3887, in abortgraft\n+ repair.strip(repo.ui, repo, strippoints, backup=False)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg log -GT "{rev}:{node|short} {desc}"\n- o 5:36b793615f78 added foo to c\n- |\n- | o 4:863a25e1a9ea added x\n- |/\n- | @ 3:9150fe93bec6 added d\n- | |\n- | o 2:155349b645be added c\n+ o 6:6ec71c037d94 added x\n+ |\n+ | o 5:36b793615f78 added foo to c\n+ | |\n+ | | o 4:863a25e1a9ea added x\n+ | |/\n+ @ | 3:9150fe93bec6 added d\n+ | |\n+ o | 2:155349b645be added c\n |/\n o 1:5f6d8a4bf34a added b\n |\n@@ -394,48 +445,22 @@\n \n when stripping is not required\n $ hg graft -r 5\n- grafting 5:36b793615f78 "added foo to c" (tip)\n- merging c\n- warning: conflicts while merging c! (edit, then use \'hg resolve --mark\')\n- abort: unresolved conflicts, can\'t continue\n- (use \'hg resolve\' and \'hg graft --continue\')\n- [1]\n+ abort: graft in progress\n+ (use \'hg graft --continue\' or \'hg graft --stop\' to stop)\n+ [20]\n \n $ hg abort\n- graft aborted\n- working directory is now at 9150fe93bec6\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -GT "{rev}:{node|short} {desc}"\n- o 5:36b793615f78 added foo to c\n- |\n- | o 4:863a25e1a9ea added x\n- |/\n- | @ 3:9150fe93bec6 added d\n- | |\n- | o 2:155349b645be added c\n- |/\n- o 1:5f6d8a4bf34a added b\n- |\n- o 0:9092f1db7931 added a\n- \n-when some of the changesets became public\n-\n- $ hg graft -r 4 -r 5\n- grafting 4:863a25e1a9ea "added x"\n- grafting 5:36b793615f78 "added foo to c" (tip)\n- merging c\n- warning: conflicts while merging c! (edit, then use \'hg resolve --mark\')\n- abort: unresolved conflicts, can\'t continue\n- (use \'hg resolve\' and \'hg graft --continue\')\n- [1]\n-\n- $ hg log -GT "{rev}:{node|short} {desc}"\n- @ 6:6ec71c037d94 added x\n- |\n- | % 5:36b793615f78 added foo to c\n+ o 6:6ec71c037d94 added x\n+ |\n+ | o 5:36b793615f78 added foo to c\n | |\n | | o 4:863a25e1a9ea added x\n | |/\n- o | 3:9150fe93bec6 added d\n+ @ | 3:9150fe93bec6 added d\n | |\n o | 2:155349b645be added c\n |/\n@@ -443,12 +468,37 @@\n |\n o 0:9092f1db7931 added a\n \n+when some of the changesets became public\n+\n+ $ hg graft -r 4 -r 5\n+ abort: graft in progress\n+ (use \'hg graft --continue\' or \'hg graft --stop\' to stop)\n+ [20]\n+\n+ $ hg log -GT "{rev}:{node|short} {desc}"\n+ o 6:6ec71c037d94 added x\n+ |\n+ | o 5:36b793615f78 added foo to c\n+ | |\n+ | | o 4:863a25e1a9ea added x\n+ | |/\n+ @ | 3:9150fe93bec6 added d\n+ | |\n+ o | 2:155349b645be added c\n+ |/\n+ o 1:5f6d8a4bf34a added b\n+ |\n+ o 0:9092f1db7931 added a\n+ \n $ hg phase -r 6 --public\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg abort\n- cannot clean up public changesets 6ec71c037d94\n- graft aborted\n- working directory is now at 6ec71c037d94\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n when we created new changesets on top of existing one\n \n@@ -456,39 +506,35 @@\n 0 files updated, 0 files merged, 2 files removed, 0 files unresolved\n $ echo y > y\n $ hg ci -Aqm "added y"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ echo z > z\n $ hg ci -Aqm "added z"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg up 3\n- 1 files updated, 0 files merged, 3 files removed, 0 files unresolved\n+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg log -GT "{rev}:{node|short} {desc}"\n- o 8:637f9e9bbfd4 added z\n- |\n- o 7:123221671fd4 added y\n- |\n- | o 6:6ec71c037d94 added x\n- | |\n- | | o 5:36b793615f78 added foo to c\n- | | |\n- | | | o 4:863a25e1a9ea added x\n- | | |/\n- | @ | 3:9150fe93bec6 added d\n- |/ /\n- o / 2:155349b645be added c\n+ o 6:6ec71c037d94 added x\n+ |\n+ | o 5:36b793615f78 added foo to c\n+ | |\n+ | | o 4:863a25e1a9ea added x\n+ | |/\n+ @ | 3:9150fe93bec6 added d\n+ | |\n+ o | 2:155349b645be added c\n |/\n o 1:5f6d8a4bf34a added b\n |\n o 0:9092f1db7931 added a\n \n $ hg graft -r 8 -r 7 -r 5\n- grafting 8:637f9e9bbfd4 "added z" (tip)\n- grafting 7:123221671fd4 "added y"\n- grafting 5:36b793615f78 "added foo to c"\n- merging c\n- warning: conflicts while merging c! (edit, then use \'hg resolve --mark\')\n- abort: unresolved conflicts, can\'t continue\n- (use \'hg resolve\' and \'hg graft --continue\')\n- [1]\n+ abort: unknown revision \'7\'\n+ [255]\n \n $ cd ..\n $ hg init pullrepo\n@@ -503,11 +549,12 @@\n adding changesets\n adding manifests\n adding file changes\n- added 11 changesets with 9 changes to 8 files (+4 heads)\n- new changesets 9092f1db7931:6b98ff0062dd (6 drafts)\n+ added 7 changesets with 6 changes to 5 files (+2 heads)\n+ new changesets 9092f1db7931:6ec71c037d94 (7 drafts)\n (run \'hg heads\' to see heads, \'hg merge\' to merge)\n $ hg up 9\n- 5 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: 00changelog.i@9: ambiguous identifier\n+ [255]\n $ echo w > w\n $ hg ci -Aqm "added w" --config phases.publish=False\n \n@@ -515,17 +562,13 @@\n $ hg pull ../pullrepo\n pulling from ../pullrepo\n searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 1 changes to 1 files (+1 heads)\n- new changesets 311dfc6cf3bf (1 drafts)\n- (run \'hg heads .\' to see heads, \'hg merge\' to merge)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg abort\n- new changesets detected on destination branch, can\'t strip\n- graft aborted\n- working directory is now at 6b98ff0062dd\n+ abort: no operation in progress\n+ [20]\n \n $ cd ..\n \n', 2327, 2329, 'truncated \\uXXXX escape') decoding diff, sorry
test-graft.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-graft.t\n+++ c:/hgdev/src/tests/test-graft.t.err\n@@ -56,6 +56,55 @@\n M d\n \n $ hg -q strip . --config extensions.strip=\n+ strip failed, backup bundle stored in \'$TESTTMP\\a\\.hg\\strip-backup/a912a4db0e9a-30053e5f-backup.hg\'\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n Test --base for collapsing changesets 2 and 3, thus getting both b and c\n \n@@ -64,24 +113,29 @@\n grafting 3:4c60f11aa304 "3"\n merging a and b to b\n merging a and c to c\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg st --change .\n- A b\n- A c\n- R a\n+ A a\n+ A d\n+ A e\n \n $ hg -q strip . --config extensions.strip=\n+ abort: uncommitted changes\n+ [20]\n \n Specifying child as --base revision fails safely (perhaps slightly confusing, but consistent)\n \n $ hg graft -r 2 --base 3\n- grafting 2:5c095ad7e90f "2"\n- note: possible conflict - c was deleted and renamed to:\n- a\n- note: graft of 2:5c095ad7e90f created no changes to commit\n+ abort: uncommitted changes\n+ [20]\n \n Can\'t continue without starting:\n \n $ hg -q up -cr tip\n+ abort: uncommitted changes\n+ [20]\n $ hg rm -q e\n $ hg graft --continue\n abort: no graft in progress\n@@ -97,22 +151,19 @@\n Can\'t graft ancestor:\n \n $ hg graft 1 2\n- skipping ancestor revision 1:5d205f8b35b6\n- skipping ancestor revision 2:5c095ad7e90f\n- [255]\n+ abort: uncommitted changes\n+ [20]\n \n Specify revisions with -r:\n \n $ hg graft -r 1 -r 2\n- skipping ancestor revision 1:5d205f8b35b6\n- skipping ancestor revision 2:5c095ad7e90f\n- [255]\n+ abort: uncommitted changes\n+ [20]\n \n $ hg graft -r 1 2\n warning: inconsistent use of --rev might give unexpected revision ordering!\n- skipping ancestor revision 2:5c095ad7e90f\n- skipping ancestor revision 1:5d205f8b35b6\n- [255]\n+ abort: uncommitted changes\n+ [20]\n \n Conflicting date/user options:\n \n@@ -140,48 +191,40 @@\n A b\n R a\n $ HGEDITOR=cat hg graft 2 -u foo --edit\n- grafting 2:5c095ad7e90f "2"\n- merging a and b to b\n- 2\n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: foo\n- HG: branch \'default\'\n- HG: added b\n- HG: removed a\n+ abort: uncommitted changes\n+ [20]\n $ hg export tip --git\n # HG changeset patch\n- # User foo\n+ # User test\n # Date 0 0\n # Thu Jan 01 00:00:00 1970 +0000\n- # Node ID ef0ef43d49e79e81ddafdc7997401ba0041efc82\n- # Parent 68795b066622ca79a25816a662041d8f78f3cd9e\n- 2\n- \n- diff --git a/a b/b\n- rename from a\n- rename to b\n+ # Node ID a912a4db0e9af7b6f000e8e9c6b2821e7bcd0475\n+ # Parent 4c60f11aa304a54ae1c199feb94e7fc771e51ed8\n+ 6\n+ \n+ diff --git a/d b/d\n+ --- a/d\n+ +++ b/d\n+ @@ -1,1 +1,1 @@\n+ -a\n+ +b\n \n Look for extra:source\n \n $ hg log --debug -r tip\n- changeset: 7:ef0ef43d49e79e81ddafdc7997401ba0041efc82\n+ changeset: 7:a912a4db0e9af7b6f000e8e9c6b2821e7bcd0475\n tag: tip\n phase: draft\n- parent: 0:68795b066622ca79a25816a662041d8f78f3cd9e\n+ parent: 3:4c60f11aa304a54ae1c199feb94e7fc771e51ed8\n parent: -1:0000000000000000000000000000000000000000\n- manifest: 7:e59b6b228f9cbf9903d5e9abf996e083a1f533eb\n- user: foo\n+ manifest: 7:146880310ffd490df6055fd8c94ddb63ac66ae35\n+ user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n- files+: b\n- files-: a\n+ files: d\n extra: branch=default\n- extra: source=5c095ad7e90f871700f02dd1fa5012cb4498a2d4\n+ extra: source=25a2b029d3aebdabd0fb1659fabe6b434789cd25\n description:\n- 2\n+ 6\n \n \n \n@@ -189,149 +232,70 @@\n (this also tests that editor is not invoked if \'--edit\' is not specified)\n \n $ hg graft 1 5 4 3 \'merge()\' 2 -n\n- skipping ungraftable merge revision 6\n- skipping revision 2:5c095ad7e90f (already grafted to 7:ef0ef43d49e7)\n- grafting 1:5d205f8b35b6 "1"\n- grafting 5:97f8bfe72746 "5"\n- grafting 4:9c233e8e184d "4"\n- grafting 3:4c60f11aa304 "3"\n+ abort: uncommitted changes\n+ [20]\n \n $ HGEDITOR=cat hg graft 1 5 \'merge()\' 2 --debug\n- skipping ungraftable merge revision 6\n- scanning for duplicate grafts\n- skipping revision 2:5c095ad7e90f (already grafted to 7:ef0ef43d49e7)\n- grafting 1:5d205f8b35b6 "1"\n- unmatched files in local:\n- b\n- all copies found (* = to merge, ! = divergent, % = renamed and deleted):\n- on local side:\n- src: \'a\' -> dst: \'b\' *\n- checking for directory renames\n- resolving manifests\n- branchmerge: True, force: True, partial: False\n- ancestor: 68795b066622, local: ef0ef43d49e7+, remote: 5d205f8b35b6\n- preserving b for resolve of b\n+ abort: uncommitted changes\n starting 4 threads for background file closing (?)\n- b: local copied/moved from a -> m (premerge)\n- picked tool \':merge\' for b (binary False symlink False changedelete False)\n- merging b and a to b\n- my b@ef0ef43d49e7+ other a@5d205f8b35b6 ancestor a@68795b066622\n- premerge successful\n- committing files:\n- b\n- committing manifest\n- committing changelog\n- updating the branch cache\n- grafting 5:97f8bfe72746 "5"\n- all copies found (* = to merge, ! = divergent, % = renamed and deleted):\n- on local side:\n- src: \'c\' -> dst: \'b\' \n- checking for directory renames\n- resolving manifests\n- branchmerge: True, force: True, partial: False\n- ancestor: 4c60f11aa304, local: 6b9e5368ca4e+, remote: 97f8bfe72746\n- e: remote is newer -> g\n- getting e\n- committing files:\n- e\n- committing manifest\n- committing changelog\n- updating the branch cache\n+ [20]\n $ HGEDITOR=cat hg graft 4 3 --log --debug\n- scanning for duplicate grafts\n- grafting 4:9c233e8e184d "4"\n- all copies found (* = to merge, ! = divergent, % = renamed and deleted):\n- on local side:\n- src: \'c\' -> dst: \'b\' \n- checking for directory renames\n- resolving manifests\n- branchmerge: True, force: True, partial: False\n- ancestor: 4c60f11aa304, local: 1905859650ec+, remote: 9c233e8e184d\n- d: remote is newer -> g\n- getting d\n- preserving e for resolve of e\n- e: versions differ -> m (premerge)\n- picked tool \':merge\' for e (binary False symlink False changedelete False)\n- merging e\n- my e@1905859650ec+ other e@9c233e8e184d ancestor e@4c60f11aa304\n- e: versions differ -> m (merge)\n- picked tool \':merge\' for e (binary False symlink False changedelete False)\n- my e@1905859650ec+ other e@9c233e8e184d ancestor e@4c60f11aa304\n- warning: conflicts while merging e! (edit, then use \'hg resolve --mark\')\n- abort: unresolved conflicts, can\'t continue\n- (use \'hg resolve\' and \'hg graft --continue\')\n+ abort: uncommitted changes\n+ [20]\n+\n+Summary should mention graft:\n+\n+ $ hg summary |grep graft\n [1]\n \n-Summary should mention graft:\n-\n- $ hg summary |grep graft\n- commit: 2 modified, 2 unknown, 1 unresolved (graft in progress)\n-\n Using status to get more context\n \n $ hg status --verbose\n- M d\n- M e\n+ A b\n+ A c\n ? a.orig\n- ? e.orig\n- # The repository is in an unfinished *graft* state.\n- \n- # Unresolved merge conflicts:\n- # \n- # e\n- # \n- # To mark files as resolved: hg resolve --mark FILE\n- \n- # To continue: hg graft --continue\n- # To abort: hg graft --abort\n- # To stop: hg graft --stop\n+ # No unresolved merge conflicts.\n \n \n Commit while interrupted should fail:\n \n $ hg ci -m \'commit interrupted graft\'\n- abort: graft in progress\n- (use \'hg graft --continue\' or \'hg graft --stop\' to stop)\n- [20]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Abort the graft and try committing:\n \n $ hg up -C .\n- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ echo c >> e\n $ hg ci -mtest\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg strip . --config extensions.strip=\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- saved backup bundle to $TESTTMP/a/.hg/strip-backup/*-backup.hg (glob)\n+ abort: uncommitted changes\n+ [20]\n \n Graft again:\n \n $ hg graft 1 5 4 3 \'merge()\' 2\n- skipping ungraftable merge revision 6\n- skipping revision 2:5c095ad7e90f (already grafted to 7:ef0ef43d49e7)\n- skipping revision 1:5d205f8b35b6 (already grafted to 8:6b9e5368ca4e)\n- skipping revision 5:97f8bfe72746 (already grafted to 9:1905859650ec)\n- grafting 4:9c233e8e184d "4"\n- merging e\n- warning: conflicts while merging e! (edit, then use \'hg resolve --mark\')\n- abort: unresolved conflicts, can\'t continue\n- (use \'hg resolve\' and \'hg graft --continue\')\n- [1]\n+ abort: uncommitted changes\n+ [20]\n \n Continue without resolve should fail:\n \n $ hg graft -c\n- grafting 4:9c233e8e184d "4"\n- abort: unresolved merge conflicts (see \'hg help resolve\')\n+ abort: no graft in progress\n [20]\n \n Fix up:\n \n $ echo b > e\n $ hg resolve -m e\n- (no more unresolved files)\n- continue: hg graft --continue\n+ abort: resolve command not applicable when not merging\n+ [20]\n \n Continue with a revision should fail:\n \n@@ -346,277 +310,246 @@\n Continue for real, clobber usernames\n \n $ hg graft -c -U\n- grafting 4:9c233e8e184d "4"\n- grafting 3:4c60f11aa304 "3"\n+ abort: no graft in progress\n+ [20]\n \n Compare with original:\n \n $ hg diff -r 6\n+ diff -r 25a2b029d3ae a\n+ --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n+ +++ b/a\tThu Jan 01 00:00:00 1970 +0000\n+ @@ -0,0 +1,1 @@\n+ +a\n+ diff -r 25a2b029d3ae b\n+ --- a/b\tThu Jan 01 00:00:00 1970 +0000\n+ +++ /dev/null\tThu Jan 01 00:00:00 1970 +0000\n+ @@ -1,1 +0,0 @@\n+ -b\n+ diff -r 25a2b029d3ae c\n+ --- a/c\tThu Jan 01 00:00:00 1970 +0000\n+ +++ /dev/null\tThu Jan 01 00:00:00 1970 +0000\n+ @@ -1,1 +0,0 @@\n+ -b\n+ diff -r 25a2b029d3ae d\n+ --- a/d\tThu Jan 01 00:00:00 1970 +0000\n+ +++ b/d\tThu Jan 01 00:00:00 1970 +0000\n+ @@ -1,1 +1,1 @@\n+ -b\n+ +a\n $ hg status --rev 0:. -C\n- M d\n- M e\n- A b\n- a\n- A c\n- a\n- R a\n \n View graph:\n \n $ hg log -G --template \'{author}@{rev}.{phase}: {desc}\\n\'\n- @ test@11.draft: 3\n- |\n- o test@10.draft: 4\n- |\n- o test@9.draft: 5\n- |\n- o bar@8.draft: 1\n- |\n- o foo@7.draft: 2\n+ o test@7.draft: 6\n |\n | o test@6.secret: 6\n | |\\\n- | | o test@5.draft: 5\n- | | |\n- | o | test@4.draft: 4\n- | |/\n- | o baz@3.public: 3\n+ +---o test@5.draft: 5\n | |\n- | o test@2.public: 2\n- | |\n- | o bar@1.public: 1\n+ | o test@4.draft: 4\n |/\n- o test@0.public: 0\n+ o baz@3.public: 3\n+ |\n+ o test@2.public: 2\n+ |\n+ o bar@1.public: 1\n+ |\n+ @ test@0.public: 0\n \n Graft again onto another branch should preserve the original source\n $ hg up -q 0\n $ echo \'g\'>g\n $ hg add g\n $ hg ci -m 7\n- created new head\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg graft 7\n- grafting 7:ef0ef43d49e7 "2"\n+ abort: uncommitted changes\n+ [20]\n \n $ hg log -r 7 --template \'{rev}:{node}\\n\'\n- 7:ef0ef43d49e79e81ddafdc7997401ba0041efc82\n+ 7:a912a4db0e9af7b6f000e8e9c6b2821e7bcd0475\n $ hg log -r 2 --template \'{rev}:{node}\\n\'\n 2:5c095ad7e90f871700f02dd1fa5012cb4498a2d4\n \n $ hg log --debug -r tip\n- changeset: 13:7a4785234d87ec1aa420ed6b11afe40fa73e12a9\n+ changeset: 7:a912a4db0e9af7b6f000e8e9c6b2821e7bcd0475\n tag: tip\n phase: draft\n- parent: 12:b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f\n+ parent: 3:4c60f11aa304a54ae1c199feb94e7fc771e51ed8\n parent: -1:0000000000000000000000000000000000000000\n- manifest: 13:dc313617b8c32457c0d589e0dbbedfe71f3cd637\n- user: foo\n+ manifest: 7:146880310ffd490df6055fd8c94ddb63ac66ae35\n+ user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n- files+: b\n- files-: a\n+ files: d\n extra: branch=default\n- extra: intermediate-source=ef0ef43d49e79e81ddafdc7997401ba0041efc82\n- extra: source=5c095ad7e90f871700f02dd1fa5012cb4498a2d4\n+ extra: source=25a2b029d3aebdabd0fb1659fabe6b434789cd25\n description:\n- 2\n+ 6\n \n \n Disallow grafting an already grafted cset onto its original branch\n $ hg up -q 6\n+ b: untracked file differs\n+ c: untracked file differs\n+ abort: untracked files in working directory differ from files in requested revision\n+ [255]\n $ hg graft 7\n- skipping already grafted revision 7:ef0ef43d49e7 (was grafted from 2:5c095ad7e90f)\n- [255]\n+ abort: uncommitted changes\n+ [20]\n \n $ hg pdiff --config extensions.extdiff= --patch -r 2 -r 13\n- --- */hg-5c095ad7e90f.patch\t* (glob)\n- +++ */hg-7a4785234d87.patch\t* (glob)\n- @@ -1,18 +1,18 @@\n- # HG changeset patch\n- -# User test\n- +# User foo\n- # Date 0 0\n- # Thu Jan 01 00:00:00 1970 +0000\n- -# Node ID 5c095ad7e90f871700f02dd1fa5012cb4498a2d4\n- -# Parent 5d205f8b35b66bc36375c9534ffd3237730e8f04\n- +# Node ID 7a4785234d87ec1aa420ed6b11afe40fa73e12a9\n- +# Parent b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f\n- 2\n- \n- -diff -r 5d205f8b35b6 -r 5c095ad7e90f a\n- +diff -r b592ea63bb0c -r 7a4785234d87 a\n- --- a/a\tThu Jan 01 00:00:00 1970 +0000\n- +++ /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- @@ -1,1 +0,0 @@\n- --b\n- -diff -r 5d205f8b35b6 -r 5c095ad7e90f b\n- +-a\n- +diff -r b592ea63bb0c -r 7a4785234d87 b\n- --- /dev/null\tThu Jan 01 00:00:00 1970 +0000\n- +++ b/b\tThu Jan 01 00:00:00 1970 +0000\n- @@ -0,0 +1,1 @@\n- -+b\n- ++a\n- [1]\n+ abort: unknown revision \'13\'\n+ [255]\n \n $ hg pdiff --config extensions.extdiff= --patch -r 2 -r 13 -X .\n- --- */hg-5c095ad7e90f.patch\t* (glob)\n- +++ */hg-7a4785234d87.patch\t* (glob)\n- @@ -1,8 +1,8 @@\n- # HG changeset patch\n- -# User test\n- +# User foo\n- # Date 0 0\n- # Thu Jan 01 00:00:00 1970 +0000\n- -# Node ID 5c095ad7e90f871700f02dd1fa5012cb4498a2d4\n- -# Parent 5d205f8b35b66bc36375c9534ffd3237730e8f04\n- +# Node ID 7a4785234d87ec1aa420ed6b11afe40fa73e12a9\n- +# Parent b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f\n- 2\n- \n- [1]\n+ abort: unknown revision \'13\'\n+ [255]\n \n Disallow grafting already grafted csets with the same origin onto each other\n $ hg up -q 13\n+ abort: unknown revision \'13\'\n+ [255]\n $ hg graft 2\n- skipping revision 2:5c095ad7e90f (already grafted to 13:7a4785234d87)\n- [255]\n+ abort: uncommitted changes\n+ [20]\n $ hg graft 7\n- skipping already grafted revision 7:ef0ef43d49e7 (13:7a4785234d87 also has origin 2:5c095ad7e90f)\n- [255]\n+ abort: uncommitted changes\n+ [20]\n \n $ hg up -q 7\n+ b: untracked file differs\n+ c: untracked file differs\n+ abort: untracked files in working directory differ from files in requested revision\n+ [255]\n $ hg graft 2\n- skipping revision 2:5c095ad7e90f (already grafted to 7:ef0ef43d49e7)\n- [255]\n+ abort: uncommitted changes\n+ [20]\n $ hg graft tip\n- skipping already grafted revision 13:7a4785234d87 (7:ef0ef43d49e7 also has origin 2:5c095ad7e90f)\n- [255]\n+ abort: uncommitted changes\n+ [20]\n \n Graft with --log\n \n $ hg up -Cq 1\n $ hg graft 3 --log -u foo\n grafting 3:4c60f11aa304 "3"\n- $ hg log --template \'{rev}:{node|short} {parents} {desc}\\n\' -r tip\n- 14:0c921c65ef1e 1:5d205f8b35b6 3\n- (grafted from 4c60f11aa304a54ae1c199feb94e7fc771e51ed8)\n-\n-Resolve conflicted graft\n- $ hg up -q 0\n- $ echo b > a\n- $ hg ci -m 8\n- created new head\n- $ echo c > a\n- $ hg ci -m 9\n- $ hg graft 1 --tool internal:fail\n- grafting 1:5d205f8b35b6 "1"\n+ merging c\n+ warning: conflicts while merging c! (edit, then use \'hg resolve --mark\')\n abort: unresolved conflicts, can\'t continue\n (use \'hg resolve\' and \'hg graft --continue\')\n [1]\n+ $ hg log --template \'{rev}:{node|short} {parents} {desc}\\n\' -r tip\n+ 7:a912a4db0e9a 3:4c60f11aa304 6\n+\n+Resolve conflicted graft\n+ $ hg up -q 0\n+ abort: outstanding merge conflicts\n+ (use \'hg resolve\' to resolve)\n+ [255]\n+ $ echo b > a\n+ $ hg ci -m 8\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n+ $ echo c > a\n+ $ hg ci -m 9\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n+ $ hg graft 1 --tool internal:fail\n+ abort: uncommitted changes\n+ [20]\n $ hg resolve --all\n- merging a\n- warning: conflicts while merging a! (edit, then use \'hg resolve --mark\')\n+ merging c\n+ warning: conflicts while merging c! (edit, then use \'hg resolve --mark\')\n [1]\n $ cat a\n- <<<<<<< local: aaa4406d4f0a - test: 9\n c\n- =======\n- b\n- >>>>>>> graft: 5d205f8b35b6 - bar: 1\n $ echo b > a\n $ hg resolve -m a\n- (no more unresolved files)\n- continue: hg graft --continue\n+ arguments do not match paths that need resolving\n $ hg graft -c\n- grafting 1:5d205f8b35b6 "1"\n- $ hg export tip --git\n- # HG changeset patch\n- # User bar\n- # Date 0 0\n- # Thu Jan 01 00:00:00 1970 +0000\n- # Node ID f67661df0c4804d301f064f332b57e7d5ddaf2be\n- # Parent aaa4406d4f0ae9befd6e58c82ec63706460cbca6\n- 1\n- \n- diff --git a/a b/a\n- --- a/a\n- +++ b/a\n- @@ -1,1 +1,1 @@\n- -c\n- +b\n-\n-Resolve conflicted graft with rename\n- $ echo c > a\n- $ hg ci -m 10\n- $ hg graft 2 --tool internal:fail\n- grafting 2:5c095ad7e90f "2"\n- abort: unresolved conflicts, can\'t continue\n- (use \'hg resolve\' and \'hg graft --continue\')\n- [1]\n- $ hg resolve --all\n- merging a and b to b\n- (no more unresolved files)\n- continue: hg graft --continue\n- $ hg graft -c\n- grafting 2:5c095ad7e90f "2"\n+ abort: no graft in progress\n+ [20]\n $ hg export tip --git\n # HG changeset patch\n # User test\n # Date 0 0\n # Thu Jan 01 00:00:00 1970 +0000\n- # Node ID 9627f653b421c61fc1ea4c4e366745070fa3d2bc\n- # Parent ee295f490a40b97f3d18dd4c4f1c8936c233b612\n- 2\n- \n- diff --git a/a b/b\n- rename from a\n- rename to b\n+ # Node ID a912a4db0e9af7b6f000e8e9c6b2821e7bcd0475\n+ # Parent 4c60f11aa304a54ae1c199feb94e7fc771e51ed8\n+ 6\n+ \n+ diff --git a/d b/d\n+ --- a/d\n+ +++ b/d\n+ @@ -1,1 +1,1 @@\n+ -a\n+ +b\n+\n+Resolve conflicted graft with rename\n+ $ echo c > a\n+ $ hg ci -m 10\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n+ $ hg graft 2 --tool internal:fail\n+ abort: uncommitted changes\n+ [20]\n+ $ hg resolve --all\n+ merging c\n+ warning: conflicts while merging c! (edit, then use \'hg resolve --mark\')\n+ [1]\n+ $ hg graft -c\n+ abort: no graft in progress\n+ [20]\n+ $ hg export tip --git\n+ # HG changeset patch\n+ # User test\n+ # Date 0 0\n+ # Thu Jan 01 00:00:00 1970 +0000\n+ # Node ID a912a4db0e9af7b6f000e8e9c6b2821e7bcd0475\n+ # Parent 4c60f11aa304a54ae1c199feb94e7fc771e51ed8\n+ 6\n+ \n+ diff --git a/d b/d\n+ --- a/d\n+ +++ b/d\n+ @@ -1,1 +1,1 @@\n+ -a\n+ +b\n \n Test simple origin(), with and without args\n $ hg log -r \'origin()\'\n- changeset: 1:5d205f8b35b6\n- user: bar\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 1\n- \n- changeset: 2:5c095ad7e90f\n+ changeset: 6:25a2b029d3ae\n+ parent: 5:97f8bfe72746\n+ parent: 4:9c233e8e184d\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n- changeset: 3:4c60f11aa304\n- user: baz\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 3\n- \n- changeset: 4:9c233e8e184d\n+ summary: 6\n+ \n+ $ hg log -r \'origin(7)\'\n+ changeset: 6:25a2b029d3ae\n+ parent: 5:97f8bfe72746\n+ parent: 4:9c233e8e184d\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 4\n- \n- changeset: 5:97f8bfe72746\n- branch: stable\n- parent: 3:4c60f11aa304\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 5\n- \n- $ hg log -r \'origin(7)\'\n- changeset: 2:5c095ad7e90f\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n+ summary: 6\n \n Now transplant a graft to test following through copies\n $ hg up -q 0\n+ abort: outstanding merge conflicts\n+ (use \'hg resolve\' to resolve)\n+ [255]\n $ hg branch -q dev\n $ hg ci -qm "dev branch"\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ hg --config extensions.transplant= transplant -q 7\n+ abort: uncommitted changes\n+ [20]\n $ hg log -r \'origin(.)\'\n- changeset: 2:5c095ad7e90f\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n Test that the graft and transplant markers in extra are converted, allowing\n origin() to still work. Note that these recheck the immediately preceeding two\n tests.\n@@ -624,210 +557,98 @@\n \n The graft case\n $ hg -R ../converted log -r 7 --template "{rev}: {node}\\n{join(extras, \'\\n\')}\\n"\n- 7: 7ae846e9111fc8f57745634250c7b9ac0a60689b\n+ 7: 8be48d9d4fe7ac51b88eea6e198a1bd04aa7a38f\n branch=default\n- convert_revision=ef0ef43d49e79e81ddafdc7997401ba0041efc82\n- source=e0213322b2c1a5d5d236c74e79666441bee67a7d\n+ convert_revision=a912a4db0e9af7b6f000e8e9c6b2821e7bcd0475\n+ source=c2aca035967545af83d22bf9375cdc2933e1dbf7\n $ hg -R ../converted log -r \'origin(7)\'\n- changeset: 2:e0213322b2c1\n+ changeset: 6:c2aca0359675\n+ parent: 5:3a045c74c4ae\n+ parent: 4:2856a614e1bf\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n+ summary: 6\n \n Test that template correctly expands more than one \'extra\' (issue4362), and that\n \'intermediate-source\' is converted.\n $ hg -R ../converted log -r 13 --template "{extras % \' Extra: {extra}\\n\'}"\n- Extra: branch=default\n- Extra: convert_revision=7a4785234d87ec1aa420ed6b11afe40fa73e12a9\n- Extra: intermediate-source=7ae846e9111fc8f57745634250c7b9ac0a60689b\n- Extra: source=e0213322b2c1a5d5d236c74e79666441bee67a7d\n+ abort: unknown revision \'13\'\n+ [255]\n \n The transplant case\n $ hg -R ../converted log -r tip --template "{rev}: {node}\\n{join(extras, \'\\n\')}\\n"\n- 21: fbb6c5cc81002f2b4b49c9d731404688bcae5ade\n- branch=dev\n- convert_revision=7e61b508e709a11d28194a5359bc3532d910af21\n- transplant_source=z\\xe8F\\xe9\\x11\\x1f\\xc8\\xf5wEcBP\\xc7\\xb9\\xac\\n`h\\x9b\n+ 7: 8be48d9d4fe7ac51b88eea6e198a1bd04aa7a38f\n+ branch=default\n+ convert_revision=a912a4db0e9af7b6f000e8e9c6b2821e7bcd0475\n+ source=c2aca035967545af83d22bf9375cdc2933e1dbf7\n $ hg -R ../converted log -r \'origin(tip)\'\n- changeset: 2:e0213322b2c1\n+ changeset: 6:c2aca0359675\n+ parent: 5:3a045c74c4ae\n+ parent: 4:2856a614e1bf\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n+ summary: 6\n \n \n Test simple destination\n $ hg log -r \'destination()\'\n- changeset: 7:ef0ef43d49e7\n- parent: 0:68795b066622\n- user: foo\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n- changeset: 8:6b9e5368ca4e\n- user: bar\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 1\n- \n- changeset: 9:1905859650ec\n+ changeset: 7:a912a4db0e9a\n+ tag: tip\n+ parent: 3:4c60f11aa304\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 5\n- \n- changeset: 10:52dc0b4c6907\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 4\n- \n- changeset: 11:882b35362a6b\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 3\n- \n- changeset: 13:7a4785234d87\n- user: foo\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n- changeset: 14:0c921c65ef1e\n- parent: 1:5d205f8b35b6\n- user: foo\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 3\n- \n- changeset: 17:f67661df0c48\n- user: bar\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 1\n- \n- changeset: 19:9627f653b421\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n- changeset: 21:7e61b508e709\n- branch: dev\n- tag: tip\n- user: foo\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n+ summary: 6\n \n $ hg log -r \'destination(2)\'\n- changeset: 7:ef0ef43d49e7\n- parent: 0:68795b066622\n- user: foo\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n- changeset: 13:7a4785234d87\n- user: foo\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n- changeset: 19:9627f653b421\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n- changeset: 21:7e61b508e709\n- branch: dev\n- tag: tip\n- user: foo\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n Transplants of grafts can find a destination...\n $ hg log -r \'destination(7)\'\n- changeset: 21:7e61b508e709\n- branch: dev\n- tag: tip\n- user: foo\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n ... grafts of grafts unfortunately can\'t\n $ hg graft -q 13 --debug\n- scanning for duplicate grafts\n- grafting 13:7a4785234d87 "2"\n- all copies found (* = to merge, ! = divergent, % = renamed and deleted):\n- on local side:\n- src: \'a\' -> dst: \'b\' *\n- on remote side:\n- src: \'a\' -> dst: \'b\' *\n- checking for directory renames\n- resolving manifests\n- branchmerge: True, force: True, partial: False\n- ancestor: b592ea63bb0c, local: 7e61b508e709+, remote: 7a4785234d87\n+ abort: uncommitted changes\n starting 4 threads for background file closing (?)\n- nothing to commit, clearing merge state\n- note: graft of 13:7a4785234d87 created no changes to commit\n+ [20]\n $ hg log -r \'destination(13)\'\n+ abort: unknown revision \'13\'\n+ [255]\n All copies of a cset\n $ hg log -r \'origin(13) or destination(origin(13))\'\n- changeset: 2:5c095ad7e90f\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n- changeset: 7:ef0ef43d49e7\n- parent: 0:68795b066622\n- user: foo\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n- changeset: 13:7a4785234d87\n- user: foo\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n- changeset: 19:9627f653b421\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n- changeset: 21:7e61b508e709\n- branch: dev\n- tag: tip\n- user: foo\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: 2\n- \n+ abort: unknown revision \'13\'\n+ [255]\n \n graft skips ancestors\n \n $ hg graft 21 3\n- skipping ancestor revision 21:7e61b508e709\n- grafting 3:4c60f11aa304 "3"\n- merging b and c to c\n+ abort: uncommitted changes\n+ [20]\n \n graft with --force (still doesn\'t graft merges)\n \n $ hg graft 19 0 6\n- skipping ungraftable merge revision 6\n- skipping ancestor revision 0:68795b066622\n- grafting 19:9627f653b421 "2"\n- merging b\n- note: graft of 19:9627f653b421 created no changes to commit\n+ abort: uncommitted changes\n+ [20]\n $ hg graft 19 0 6 --force\n- skipping ungraftable merge revision 6\n- grafting 19:9627f653b421 "2"\n- merging b\n- note: graft of 19:9627f653b421 created no changes to commit\n- grafting 0:68795b066622 "0"\n+ abort: uncommitted changes\n+ [20]\n \n graft --force after backout. Do the backout with graft too, to make\n sure we support issue6248.\n \n $ echo abc > a\n $ hg ci -m 24\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ hg graft --base . -r ".^" --no-commit\n- grafting 23:b1cac6de36a9 "0"\n+ abort: uncommitted changes\n+ [20]\n $ hg commit -m \'Backed out changeset 2e7ea477be26\'\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ hg graft 24\n- skipping ancestor revision 24:2e7ea477be26\n- [255]\n+ abort: uncommitted changes\n+ [20]\n $ hg graft 24 --force\n- grafting 24:2e7ea477be26 "24"\n- merging a\n+ abort: uncommitted changes\n+ [20]\n $ cat a\n abc\n \n@@ -835,21 +656,21 @@\n \n $ echo def > a\n $ hg ci -m 27\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ hg graft 24 --force --tool internal:fail\n- grafting 24:2e7ea477be26 "24"\n- abort: unresolved conflicts, can\'t continue\n- (use \'hg resolve\' and \'hg graft --continue\')\n- [1]\n+ abort: uncommitted changes\n+ [20]\n $ hg resolve --all\n- merging a\n- warning: conflicts while merging a! (edit, then use \'hg resolve --mark\')\n+ merging c\n+ warning: conflicts while merging c! (edit, then use \'hg resolve --mark\')\n [1]\n $ echo abc > a\n $ hg resolve -m a\n- (no more unresolved files)\n- continue: hg graft --continue\n+ arguments do not match paths that need resolving\n $ hg graft -c\n- grafting 24:2e7ea477be26 "24"\n+ abort: no graft in progress\n+ [20]\n $ cat a\n abc\n \n@@ -857,41 +678,52 @@\n \n $ echo base > d\n $ hg ci -m _\n+ abort: unresolved merge conflicts (see \'hg help resolve\')\n+ [20]\n $ hg graft -r 6\n- skipping ungraftable merge revision 6\n- [255]\n+ abort: uncommitted changes\n+ [20]\n $ hg graft -r 6 --base 5\n- grafting 6:25a2b029d3ae "6"\n- merging d\n- merging e\n- warning: conflicts while merging d! (edit, then use \'hg resolve --mark\')\n- abort: unresolved conflicts, can\'t continue\n- (use \'hg resolve\' and \'hg graft --continue\')\n- [1]\n+ abort: uncommitted changes\n+ [20]\n $ echo a > d && hg resolve -qm\n- continue: hg graft --continue\n $ hg graft --continue\n- grafting 6:25a2b029d3ae "6"\n+ abort: no graft in progress\n+ [20]\n \n Continue testing same origin policy, using revision numbers from test above\n but do some destructive editing of the repo:\n \n $ hg up -qC 7\n $ hg tag -l -r 13 tmp\n+ abort: unknown revision \'13\'\n+ [255]\n $ hg --config extensions.strip= strip 2\n- saved backup bundle to $TESTTMP/a/.hg/strip-backup/5c095ad7e90f-d323a1e4-backup.hg\n+ 2 files updated, 0 files merged, 2 files removed, 0 files unresolved\n+ saved backup bundle to $TESTTMP/a/.hg/strip-backup/5c095ad7e90f-adf3f402-backup.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\a\\.hg\\strip-backup/5c095ad7e90f-adf3f402-backup.hg\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg graft tmp\n- skipping already grafted revision 8:7a4785234d87 (2:ef0ef43d49e7 also has unknown origin 5c095ad7e90f)\n+ abort: unknown revision \'tmp\'\n [255]\n \n Empty graft\n \n $ hg up -qr 22\n+ abort: unknown revision \'22\'\n+ [255]\n $ hg tag -f something\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg graft -qr 23\n+ abort: uncommitted changes\n+ [20]\n $ hg graft -f 23\n- grafting 23:72d9c7c75bcc "24"\n- note: graft of 23:72d9c7c75bcc created no changes to commit\n+ abort: uncommitted changes\n+ [20]\n \n $ cd ..\n \n', 2155, 2157, 'truncated \\uXXXX escape') decoding diff, sorry
test-hghave.t
--- c:/hgdev/src/tests/test-hghave.t
+++ c:/hgdev/src/tests/test-hghave.t.err
@@ -3,6 +3,7 @@
Testing that hghave does not crash when checking features
$ hghave --test-features 2>/dev/null
+ [127]
Testing hghave extensibility for third party tools
@@ -26,13 +27,16 @@
> $HGTEST_RUN_TESTS_PURE test-hghaveaddon.t > )
running 1 tests using 1 parallel processes
- .
- # Ran 1 tests, 0 skipped, 0 failed.
+ s
+ Skipped test-hghaveaddon.t: skipped
+ # Ran 0 tests, 1 skipped, 0 failed.
(invocation via command line)
$ unset TESTDIR
$ hghave custom
+ /usr/bin/env: python3: $ENOENT$
+ [127]
(terminate with exit code 2 at failure of importing hghaveaddon.py)
@@ -42,5 +46,5 @@
> NO_CHECK_EOF
$ hghave custom
- failed to import hghaveaddon.py from '.': invalid syntax (hghaveaddon.py, line 1)
- [2]
+ /usr/bin/env: python3: $ENOENT$
+ [127]
test-hgrc.t
--- c:/hgdev/src/tests/test-hgrc.t
+++ c:/hgdev/src/tests/test-hgrc.t.err
@@ -288,6 +288,8 @@
$ test -f hg.pid && (cat hg.pid >> $DAEMON_PIDS)
[1]
$ killdaemons.py
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ test -f access.log && cat access.log
[1]
$ test -f errors.log && cat errors.log
@@ -296,6 +298,8 @@
$ HGRCSKIPREPO=1 hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
$ cat hg.pid >> $DAEMON_PIDS
$ killdaemons.py
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ cat access.log
$ cat errors.log
test-histedit-arguments.t#abortcommand
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-arguments.t\n+++ c:/hgdev/src/tests/test-histedit-arguments.t#abortcommand.err\n@@ -59,6 +59,7 @@\n $ hg abort\n abort: no histedit in progress (abortflag !)\n abort: no operation in progress (abortcommand !)\n+ abort: no operation in progress\n [20]\n \n Run a dummy edit to make sure we get tip^^ correctly via revsingle.\n@@ -165,9 +166,80 @@\n \n $ hg histedit --continue\n saved backup bundle to $TESTTMP/foo/.hg/strip-backup/08d98a8350f3-02594089-histedit.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\foo\\.hg\\strip-backup/08d98a8350f3-02594089-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\foo\\.hg\\strip-backup/08d98a8350f3-f0ccb58d-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\foo\\.hg\\strip-backup/08d98a8350f3-f0ccb58d-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg log -G -T \'{rev} {shortest(node)} {desc}\\n\' -r 2::\n- @ 4 f5ed five\n- |\n+ @ 5 f5ed five\n+ |\n+ | o 4 08d9 five\n+ | |\n | o 3 c8e6 four\n |/\n o 2 eb57 three\n@@ -175,8 +247,17 @@\n ~\n \n $ hg unbundle -q $TESTTMP/foo/.hg/strip-backup/08d98a8350f3-02594089-histedit.hg\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg strip -q -r f5ed --config extensions.strip=\n+ abort: histedit in progress\n+ (use \'hg histedit --continue\' or \'hg histedit --abort\')\n+ [20]\n $ hg up -q 08d98a8350f3\n+ abort: histedit in progress\n+ (use \'hg histedit --continue\' or \'hg histedit --abort\')\n+ [20]\n \n Test that missing revisions are detected\n ---------------------------------------\n@@ -185,9 +266,8 @@\n > pick eb57da33312f 2 three\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: missing rules for changeset c8e68270e35a\n- (use "drop c8e68270e35a" to discard, see also: \'hg help -e histedit.config\')\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test that extra revisions are detected\n ---------------------------------------\n@@ -197,9 +277,8 @@\n > pick c8e68270e35a 3 four\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: pick "6058cbb6cfd7" changeset was not a candidate\n- (only use listed changesets)\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test malformed line\n ---------------------------------------\n@@ -209,8 +288,8 @@\n > pick c8e68270e35a 3 four\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: malformed line "pickeb57da33312f2three"\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test unknown changeset\n ---------------------------------------\n@@ -220,8 +299,8 @@\n > pick c8e68270e35a 3 four\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: unknown changeset 0123456789ab listed\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test unknown command\n ---------------------------------------\n@@ -231,8 +310,8 @@\n > pick c8e68270e35a 3 four\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: unknown action "coin"\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test duplicated changeset\n ---------------------------------------\n@@ -244,8 +323,8 @@\n > pick eb57da33312f 2 three\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: duplicated command for changeset eb57da33312f\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test bogus rev\n ---------------------------------------\n@@ -255,8 +334,8 @@\n > pick 0u98\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: invalid changeset 0u98\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test short version of command\n ---------------------------------------\n@@ -269,27 +348,21 @@\n > p c8e68270e35a 3 four\n > f 08d98a8350f3 4 five\n > EOF\n- four\n- ***\n- five\n- \n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: test\n- HG: branch \'default\'\n- HG: changed alpha\n- saved backup bundle to $TESTTMP/foo/.hg/strip-backup/c8e68270e35a-63d8b8d8-histedit.hg\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n $ hg update -q 2\n+ abort: histedit in progress\n+ (use \'hg histedit --continue\' or \'hg histedit --abort\')\n+ [20]\n $ echo x > x\n $ hg add x\n $ hg commit -m\'x\' x\n- created new head\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg histedit -r \'heads(all())\'\n- abort: The specified revisions must have exactly one common root\n+ abort: history edit already in progress, try --continue or --abort\n [255]\n \n Test that trimming description using multi-byte characters\n@@ -307,51 +380,40 @@\n > EOF\n $ echo xx >> x\n $ hg --encoding utf-8 commit --logfile logfile\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ HGEDITOR=cat hg --encoding utf-8 histedit tip\n- pick 3d3ea1f3a10b 5 1234567890123456789012345678901234567890123456789012345\\xe3\\x81\\x82... (esc)\n- \n- # Edit history between 3d3ea1f3a10b and 3d3ea1f3a10b\n- #\n- # Commits are listed from least to most recent\n- #\n- # You can reorder changesets by reordering the lines\n- #\n- # Commands:\n- #\n- # e, edit = use commit, but stop for amending\n- # m, mess = edit commit message without changing commit content\n- # p, pick = use commit\n- # b, base = checkout changeset and apply further changesets from there\n- # d, drop = remove commit from history\n- # f, fold = use commit, but combine it with the one above\n- # r, roll = like fold, but discard this commit\'s description and date\n- #\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test --continue with --keep\n \n $ hg strip -q -r . --config extensions.strip=\n+ abort: histedit in progress\n+ (use \'hg histedit --continue\' or \'hg histedit --abort\')\n+ [20]\n $ hg histedit \'.^\' -q --keep --commands - << EOF\n > edit eb57da33312f 2 three\n > pick f3cfcca30c44 4 x\n > EOF\n- Editing (eb57da33312f), you may commit or record as needed now.\n- (hg histedit --continue to resume)\n- [240]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n $ echo edit >> alpha\n $ hg histedit -q --continue\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -G -T \'{rev}:{node|short} {desc}\'\n- @ 6:8fda0c726bf2 x\n- |\n- o 5:63379946892c three\n- |\n- | o 4:f3cfcca30c44 x\n+ @ 5:f5ede5e4b2e5 five\n+ |\n+ | o 4:08d98a8350f3 five\n | |\n- | | o 3:2a30f3cfee78 four\n- | |/ ***\n- | | five\n- | o 2:eb57da33312f three\n+ | o 3:c8e68270e35a four\n |/\n+ o 2:eb57da33312f three\n+ |\n o 1:579e40513370 two\n |\n o 0:6058cbb6cfd7 one\n@@ -362,22 +424,25 @@\n $ hg histedit . -q --commands - << EOF\n > edit 8fda0c726bf2 6 x\n > EOF\n- Editing (8fda0c726bf2), you may commit or record as needed now.\n- (hg histedit --continue to resume)\n- [240]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n Corrupt histedit state file\n $ sed \'s/8fda0c726bf2/123456789012/\' .hg/histedit-state > ../corrupt-histedit\n $ mv ../corrupt-histedit .hg/histedit-state\n $ hg abort\n- warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n abort: $TESTTMP/foo/.hg/strip-backup/*-histedit.hg: $ENOENT$ (glob) (windows !)\n abort: $ENOENT$: \'$TESTTMP/foo/.hg/strip-backup/*-histedit.hg\' (glob) (no-windows !)\n+ saved backup bundle to $TESTTMP/foo/.hg/strip-backup/f5ede5e4b2e5-f0ccb58d-backup.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\foo\\.hg\\strip-backup/f5ede5e4b2e5-f0ccb58d-backup.hg\'\n+ warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n Histedit state has been exited\n $ hg summary -q\n- parent: 5:63379946892c \n- commit: 1 added, 1 unknown (new branch head)\n- update: 4 new changesets (update)\n+ parent: 4:08d98a8350f3 \n+ update: 1 new changesets, 2 branch heads (merge)\n \n $ cd ..\n \n', 2754, 2756, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-arguments.t#abortflag
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-arguments.t\n+++ c:/hgdev/src/tests/test-histedit-arguments.t#abortflag.err\n@@ -59,6 +59,7 @@\n $ hg abort\n abort: no histedit in progress (abortflag !)\n abort: no operation in progress (abortcommand !)\n+ abort: no operation in progress\n [20]\n \n Run a dummy edit to make sure we get tip^^ correctly via revsingle.\n@@ -165,9 +166,80 @@\n \n $ hg histedit --continue\n saved backup bundle to $TESTTMP/foo/.hg/strip-backup/08d98a8350f3-02594089-histedit.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\foo\\.hg\\strip-backup/08d98a8350f3-02594089-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\foo\\.hg\\strip-backup/08d98a8350f3-f0ccb58d-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\foo\\.hg\\strip-backup/08d98a8350f3-f0ccb58d-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg log -G -T \'{rev} {shortest(node)} {desc}\\n\' -r 2::\n- @ 4 f5ed five\n- |\n+ @ 5 f5ed five\n+ |\n+ | o 4 08d9 five\n+ | |\n | o 3 c8e6 four\n |/\n o 2 eb57 three\n@@ -175,8 +247,17 @@\n ~\n \n $ hg unbundle -q $TESTTMP/foo/.hg/strip-backup/08d98a8350f3-02594089-histedit.hg\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg strip -q -r f5ed --config extensions.strip=\n+ abort: histedit in progress\n+ (use \'hg histedit --continue\' or \'hg histedit --abort\')\n+ [20]\n $ hg up -q 08d98a8350f3\n+ abort: histedit in progress\n+ (use \'hg histedit --continue\' or \'hg histedit --abort\')\n+ [20]\n \n Test that missing revisions are detected\n ---------------------------------------\n@@ -185,9 +266,8 @@\n > pick eb57da33312f 2 three\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: missing rules for changeset c8e68270e35a\n- (use "drop c8e68270e35a" to discard, see also: \'hg help -e histedit.config\')\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test that extra revisions are detected\n ---------------------------------------\n@@ -197,9 +277,8 @@\n > pick c8e68270e35a 3 four\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: pick "6058cbb6cfd7" changeset was not a candidate\n- (only use listed changesets)\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test malformed line\n ---------------------------------------\n@@ -209,8 +288,8 @@\n > pick c8e68270e35a 3 four\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: malformed line "pickeb57da33312f2three"\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test unknown changeset\n ---------------------------------------\n@@ -220,8 +299,8 @@\n > pick c8e68270e35a 3 four\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: unknown changeset 0123456789ab listed\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test unknown command\n ---------------------------------------\n@@ -231,8 +310,8 @@\n > pick c8e68270e35a 3 four\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: unknown action "coin"\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test duplicated changeset\n ---------------------------------------\n@@ -244,8 +323,8 @@\n > pick eb57da33312f 2 three\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: duplicated command for changeset eb57da33312f\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test bogus rev\n ---------------------------------------\n@@ -255,8 +334,8 @@\n > pick 0u98\n > pick 08d98a8350f3 4 five\n > EOF\n- hg: parse error: invalid changeset 0u98\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test short version of command\n ---------------------------------------\n@@ -269,27 +348,21 @@\n > p c8e68270e35a 3 four\n > f 08d98a8350f3 4 five\n > EOF\n- four\n- ***\n- five\n- \n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: test\n- HG: branch \'default\'\n- HG: changed alpha\n- saved backup bundle to $TESTTMP/foo/.hg/strip-backup/c8e68270e35a-63d8b8d8-histedit.hg\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n $ hg update -q 2\n+ abort: histedit in progress\n+ (use \'hg histedit --continue\' or \'hg histedit --abort\')\n+ [20]\n $ echo x > x\n $ hg add x\n $ hg commit -m\'x\' x\n- created new head\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg histedit -r \'heads(all())\'\n- abort: The specified revisions must have exactly one common root\n+ abort: history edit already in progress, try --continue or --abort\n [255]\n \n Test that trimming description using multi-byte characters\n@@ -307,51 +380,40 @@\n > EOF\n $ echo xx >> x\n $ hg --encoding utf-8 commit --logfile logfile\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ HGEDITOR=cat hg --encoding utf-8 histedit tip\n- pick 3d3ea1f3a10b 5 1234567890123456789012345678901234567890123456789012345\\xe3\\x81\\x82... (esc)\n- \n- # Edit history between 3d3ea1f3a10b and 3d3ea1f3a10b\n- #\n- # Commits are listed from least to most recent\n- #\n- # You can reorder changesets by reordering the lines\n- #\n- # Commands:\n- #\n- # e, edit = use commit, but stop for amending\n- # m, mess = edit commit message without changing commit content\n- # p, pick = use commit\n- # b, base = checkout changeset and apply further changesets from there\n- # d, drop = remove commit from history\n- # f, fold = use commit, but combine it with the one above\n- # r, roll = like fold, but discard this commit\'s description and date\n- #\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n Test --continue with --keep\n \n $ hg strip -q -r . --config extensions.strip=\n+ abort: histedit in progress\n+ (use \'hg histedit --continue\' or \'hg histedit --abort\')\n+ [20]\n $ hg histedit \'.^\' -q --keep --commands - << EOF\n > edit eb57da33312f 2 three\n > pick f3cfcca30c44 4 x\n > EOF\n- Editing (eb57da33312f), you may commit or record as needed now.\n- (hg histedit --continue to resume)\n- [240]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n $ echo edit >> alpha\n $ hg histedit -q --continue\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -G -T \'{rev}:{node|short} {desc}\'\n- @ 6:8fda0c726bf2 x\n- |\n- o 5:63379946892c three\n- |\n- | o 4:f3cfcca30c44 x\n+ @ 5:f5ede5e4b2e5 five\n+ |\n+ | o 4:08d98a8350f3 five\n | |\n- | | o 3:2a30f3cfee78 four\n- | |/ ***\n- | | five\n- | o 2:eb57da33312f three\n+ | o 3:c8e68270e35a four\n |/\n+ o 2:eb57da33312f three\n+ |\n o 1:579e40513370 two\n |\n o 0:6058cbb6cfd7 one\n@@ -362,22 +424,25 @@\n $ hg histedit . -q --commands - << EOF\n > edit 8fda0c726bf2 6 x\n > EOF\n- Editing (8fda0c726bf2), you may commit or record as needed now.\n- (hg histedit --continue to resume)\n- [240]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n Corrupt histedit state file\n $ sed \'s/8fda0c726bf2/123456789012/\' .hg/histedit-state > ../corrupt-histedit\n $ mv ../corrupt-histedit .hg/histedit-state\n $ hg abort\n- warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n abort: $TESTTMP/foo/.hg/strip-backup/*-histedit.hg: $ENOENT$ (glob) (windows !)\n abort: $ENOENT$: \'$TESTTMP/foo/.hg/strip-backup/*-histedit.hg\' (glob) (no-windows !)\n+ saved backup bundle to $TESTTMP/foo/.hg/strip-backup/f5ede5e4b2e5-f0ccb58d-backup.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\foo\\.hg\\strip-backup/f5ede5e4b2e5-f0ccb58d-backup.hg\'\n+ warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n Histedit state has been exited\n $ hg summary -q\n- parent: 5:63379946892c \n- commit: 1 added, 1 unknown (new branch head)\n- update: 4 new changesets (update)\n+ parent: 4:08d98a8350f3 \n+ update: 1 new changesets, 2 branch heads (merge)\n \n $ cd ..\n \n', 2751, 2753, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-base.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-base.t\n+++ c:/hgdev/src/tests/test-histedit-base.t.err\n@@ -56,21 +56,95 @@\n > pick 5fddd98957c8 C\n > pick 32af7686d403 D\n > EOF\n-\n- $ hg tglog\n- @ 7:0937e82309df47d14176ee15e45dbec5fbdef340:draft \'D\'\n- |\n- o 6:f778d1cbddac4ab679d9983c9bb92e4c5e09e7fa:draft \'C\'\n- |\n- o 5:3d41b7cc708545206213a842f96d812d2e73d818:draft \'B\'\n- |\n- o 4:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n- |\n- | o 3:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n- |/|\n- o | 2:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n- | |\n- | o 1:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ strip failed, backup bundle stored in \'$TESTTMP\\a\\.hg\\strip-backup/42ccdea3bb16-3cb021d3-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\a\\.hg\\strip-backup/42ccdea3bb16-2072c419-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\a\\.hg\\strip-backup/42ccdea3bb16-2072c419-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+\n+ $ hg tglog\n+ @ 10:0937e82309df47d14176ee15e45dbec5fbdef340:draft \'D\'\n+ |\n+ o 9:f778d1cbddac4ab679d9983c9bb92e4c5e09e7fa:draft \'C\'\n+ |\n+ o 8:3d41b7cc708545206213a842f96d812d2e73d818:draft \'B\'\n+ |\n+ o 7:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n+ |\n+ | o 6:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n+ |/|\n+ o | 5:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n+ | |\n+ | o 4:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ |/\n+ | o 3:32af7686d403cf45b5d95f2d70cebea587ac806a:draft \'D\'\n+ | |\n+ | o 2:5fddd98957c8a54a4d436dfe1da9d87f21a1b97b:draft \'C\'\n+ | |\n+ | o 1:42ccdea3bb16d28e1848c95fe2e44c000f3f21b1:draft \'B\'\n |/\n o 0:cd010b8cd998f3981a5a8115f94f8da4ab506089:draft \'A\'\n \n@@ -81,19 +155,28 @@\n > drop f778d1cbddac C\n > pick 0937e82309df D\n > EOF\n-\n- $ hg tglog\n- @ 6:476cc3e4168da2d036b141f7f7dcff7f8e3fe846:draft \'D\'\n- |\n- o 5:d273e35dcdf21a7eb305192ef2e362887cd0a6f8:draft \'B\'\n- |\n- | o 4:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n- | |\n- | | o 3:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n- | |/|\n- | o | 2:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n- |/ /\n- | o 1:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ abort: history edit already in progress, try --continue or --abort\n+\n+ $ hg tglog\n+ @ 10:0937e82309df47d14176ee15e45dbec5fbdef340:draft \'D\'\n+ |\n+ o 9:f778d1cbddac4ab679d9983c9bb92e4c5e09e7fa:draft \'C\'\n+ |\n+ o 8:3d41b7cc708545206213a842f96d812d2e73d818:draft \'B\'\n+ |\n+ o 7:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n+ |\n+ | o 6:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n+ |/|\n+ o | 5:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n+ | |\n+ | o 4:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ |/\n+ | o 3:32af7686d403cf45b5d95f2d70cebea587ac806a:draft \'D\'\n+ | |\n+ | o 2:5fddd98957c8a54a4d436dfe1da9d87f21a1b97b:draft \'C\'\n+ | |\n+ | o 1:42ccdea3bb16d28e1848c95fe2e44c000f3f21b1:draft \'B\'\n |/\n o 0:cd010b8cd998f3981a5a8115f94f8da4ab506089:draft \'A\'\n \n@@ -104,40 +187,59 @@\n > base cd010b8cd998\n > pick 476cc3e4168d D\n > EOF\n-\n- $ hg tglog\n- @ 6:d7a6f907a822c4ce6f15662ae45a42aa46d3818a:draft \'D\'\n- |\n- | o 5:d273e35dcdf21a7eb305192ef2e362887cd0a6f8:draft \'B\'\n- |/\n- | o 4:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n- | |\n- | | o 3:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n- | |/|\n- | o | 2:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n- |/ /\n- | o 1:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ abort: history edit already in progress, try --continue or --abort\n+\n+ $ hg tglog\n+ @ 10:0937e82309df47d14176ee15e45dbec5fbdef340:draft \'D\'\n+ |\n+ o 9:f778d1cbddac4ab679d9983c9bb92e4c5e09e7fa:draft \'C\'\n+ |\n+ o 8:3d41b7cc708545206213a842f96d812d2e73d818:draft \'B\'\n+ |\n+ o 7:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n+ |\n+ | o 6:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n+ |/|\n+ o | 5:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n+ | |\n+ | o 4:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ |/\n+ | o 3:32af7686d403cf45b5d95f2d70cebea587ac806a:draft \'D\'\n+ | |\n+ | o 2:5fddd98957c8a54a4d436dfe1da9d87f21a1b97b:draft \'C\'\n+ | |\n+ | o 1:42ccdea3bb16d28e1848c95fe2e44c000f3f21b1:draft \'B\'\n |/\n o 0:cd010b8cd998f3981a5a8115f94f8da4ab506089:draft \'A\'\n \n Abort\n $ echo x > B\n $ hg add B\n+ B already tracked!\n $ hg commit -m "X"\n- $ hg tglog\n- @ 7:591369deedfdcbf57471e894999a70d7f676186d:draft \'X\'\n- |\n- o 6:d7a6f907a822c4ce6f15662ae45a42aa46d3818a:draft \'D\'\n- |\n- | o 5:d273e35dcdf21a7eb305192ef2e362887cd0a6f8:draft \'B\'\n- |/\n- | o 4:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n- | |\n- | | o 3:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n- | |/|\n- | o | 2:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n- |/ /\n- | o 1:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg tglog\n+ @ 10:0937e82309df47d14176ee15e45dbec5fbdef340:draft \'D\'\n+ |\n+ o 9:f778d1cbddac4ab679d9983c9bb92e4c5e09e7fa:draft \'C\'\n+ |\n+ o 8:3d41b7cc708545206213a842f96d812d2e73d818:draft \'B\'\n+ |\n+ o 7:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n+ |\n+ | o 6:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n+ |/|\n+ o | 5:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n+ | |\n+ | o 4:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ |/\n+ | o 3:32af7686d403cf45b5d95f2d70cebea587ac806a:draft \'D\'\n+ | |\n+ | o 2:5fddd98957c8a54a4d436dfe1da9d87f21a1b97b:draft \'C\'\n+ | |\n+ | o 1:42ccdea3bb16d28e1848c95fe2e44c000f3f21b1:draft \'B\'\n |/\n o 0:cd010b8cd998f3981a5a8115f94f8da4ab506089:draft \'A\'\n \n@@ -146,26 +248,33 @@\n > drop d7a6f907a822 D\n > pick 591369deedfd X\n > EOF\n- merging B\n- warning: conflicts while merging B! (edit, then use \'hg resolve --mark\')\n- Fix up the change (pick 591369deedfd)\n- (hg histedit --continue to resume)\n+ abort: history edit already in progress, try --continue or --abort\n $ hg histedit --abort | fixbundle\n- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- $ hg tglog\n- @ 7:591369deedfdcbf57471e894999a70d7f676186d:draft \'X\'\n- |\n- o 6:d7a6f907a822c4ce6f15662ae45a42aa46d3818a:draft \'D\'\n- |\n- | o 5:d273e35dcdf21a7eb305192ef2e362887cd0a6f8:draft \'B\'\n- |/\n- | o 4:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n- | |\n- | | o 3:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n- | |/|\n- | o | 2:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n- |/ /\n- | o 1:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ strip failed, backup bundle stored in \'$TESTTMP\\a\\.hg\\strip-backup/3d41b7cc7085-52952dc1-backup.hg\'\n+ warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ 1 files updated, 0 files merged, 2 files removed, 0 files unresolved\n+ $ hg tglog\n+ o 10:0937e82309df47d14176ee15e45dbec5fbdef340:draft \'D\'\n+ |\n+ o 9:f778d1cbddac4ab679d9983c9bb92e4c5e09e7fa:draft \'C\'\n+ |\n+ o 8:3d41b7cc708545206213a842f96d812d2e73d818:draft \'B\'\n+ |\n+ o 7:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n+ |\n+ | o 6:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n+ |/|\n+ o | 5:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n+ | |\n+ | o 4:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ |/\n+ | @ 3:32af7686d403cf45b5d95f2d70cebea587ac806a:draft \'D\'\n+ | |\n+ | o 2:5fddd98957c8a54a4d436dfe1da9d87f21a1b97b:draft \'C\'\n+ | |\n+ | o 1:42ccdea3bb16d28e1848c95fe2e44c000f3f21b1:draft \'B\'\n |/\n o 0:cd010b8cd998f3981a5a8115f94f8da4ab506089:draft \'A\'\n \n@@ -175,27 +284,33 @@\n > drop d7a6f907a822 D\n > pick 591369deedfd X\n > EOF\n- merging B\n- warning: conflicts while merging B! (edit, then use \'hg resolve --mark\')\n- Fix up the change (pick 591369deedfd)\n- (hg histedit --continue to resume)\n+ abort: eea13746799a is not an ancestor of working directory\n $ echo b2 > B\n $ hg resolve --mark B\n- (no more unresolved files)\n- continue: hg histedit --continue\n+ abort: resolve command not applicable when not merging\n+ [20]\n $ hg histedit --continue | fixbundle\n- $ hg tglog\n- @ 6:03772da75548bb42a8f1eacd8c91d0717a147fcd:draft \'X\'\n- |\n- o 5:d273e35dcdf21a7eb305192ef2e362887cd0a6f8:draft \'B\'\n- |\n- | o 4:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n- | |\n- | | o 3:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n- | |/|\n- | o | 2:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n- |/ /\n- | o 1:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ abort: no histedit in progress\n+ $ hg tglog\n+ o 10:0937e82309df47d14176ee15e45dbec5fbdef340:draft \'D\'\n+ |\n+ o 9:f778d1cbddac4ab679d9983c9bb92e4c5e09e7fa:draft \'C\'\n+ |\n+ o 8:3d41b7cc708545206213a842f96d812d2e73d818:draft \'B\'\n+ |\n+ o 7:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n+ |\n+ | o 6:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n+ |/|\n+ o | 5:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n+ | |\n+ | o 4:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ |/\n+ | @ 3:32af7686d403cf45b5d95f2d70cebea587ac806a:draft \'D\'\n+ | |\n+ | o 2:5fddd98957c8a54a4d436dfe1da9d87f21a1b97b:draft \'C\'\n+ | |\n+ | o 1:42ccdea3bb16d28e1848c95fe2e44c000f3f21b1:draft \'B\'\n |/\n o 0:cd010b8cd998f3981a5a8115f94f8da4ab506089:draft \'A\'\n \n@@ -204,25 +319,35 @@\n $ echo i > i\n $ hg add i\n $ hg commit -m "I"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ echo j > j\n $ hg add j\n $ hg commit -m "J"\n- $ hg tglog\n- @ 8:e8c55b19d366b335626e805484110d1d5f6f2ea3:draft \'J\'\n- |\n- o 7:b2f90fd8aa85db5569e3cfc30cd1d7739546368e:draft \'I\'\n- |\n- o 6:03772da75548bb42a8f1eacd8c91d0717a147fcd:draft \'X\'\n- |\n- o 5:d273e35dcdf21a7eb305192ef2e362887cd0a6f8:draft \'B\'\n- |\n- | o 4:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n- | |\n- | | o 3:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n- | |/|\n- | o | 2:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n- |/ /\n- | o 1:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg tglog\n+ o 10:0937e82309df47d14176ee15e45dbec5fbdef340:draft \'D\'\n+ |\n+ o 9:f778d1cbddac4ab679d9983c9bb92e4c5e09e7fa:draft \'C\'\n+ |\n+ o 8:3d41b7cc708545206213a842f96d812d2e73d818:draft \'B\'\n+ |\n+ o 7:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n+ |\n+ | o 6:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n+ |/|\n+ o | 5:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n+ | |\n+ | o 4:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ |/\n+ | @ 3:32af7686d403cf45b5d95f2d70cebea587ac806a:draft \'D\'\n+ | |\n+ | o 2:5fddd98957c8a54a4d436dfe1da9d87f21a1b97b:draft \'C\'\n+ | |\n+ | o 1:42ccdea3bb16d28e1848c95fe2e44c000f3f21b1:draft \'B\'\n |/\n o 0:cd010b8cd998f3981a5a8115f94f8da4ab506089:draft \'A\'\n \n@@ -234,25 +359,28 @@\n > base d273e35dcdf2 B\n > pick b2f90fd8aa85 I\n > EOF\n- hg: parse error: base "d273e35dcdf2" changeset was an edited list candidate\n- (base must only use unlisted changesets)\n-\n- $ hg tglog\n- @ 8:e8c55b19d366b335626e805484110d1d5f6f2ea3:draft \'J\'\n- |\n- o 7:b2f90fd8aa85db5569e3cfc30cd1d7739546368e:draft \'I\'\n- |\n- o 6:03772da75548bb42a8f1eacd8c91d0717a147fcd:draft \'X\'\n- |\n- o 5:d273e35dcdf21a7eb305192ef2e362887cd0a6f8:draft \'B\'\n- |\n- | o 4:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n- | |\n- | | o 3:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n- | |/|\n- | o | 2:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n- |/ /\n- | o 1:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n- |/\n- o 0:cd010b8cd998f3981a5a8115f94f8da4ab506089:draft \'A\'\n- \n+ abort: uncommitted changes\n+\n+ $ hg tglog\n+ o 10:0937e82309df47d14176ee15e45dbec5fbdef340:draft \'D\'\n+ |\n+ o 9:f778d1cbddac4ab679d9983c9bb92e4c5e09e7fa:draft \'C\'\n+ |\n+ o 8:3d41b7cc708545206213a842f96d812d2e73d818:draft \'B\'\n+ |\n+ o 7:02de42196ebee42ef284b6780a87cdc96e8eaab6:draft \'H\'\n+ |\n+ | o 6:eea13746799a9e0bfd88f29d3c2e9dc9389f524f:draft \'G\'\n+ |/|\n+ o | 5:24b6387c8c8cae37178880f3fa95ded3cb1cf785:draft \'F\'\n+ | |\n+ | o 4:9520eea781bcca16c1e15acc0ba14335a0e8e5ba:draft \'E\'\n+ |/\n+ | @ 3:32af7686d403cf45b5d95f2d70cebea587ac806a:draft \'D\'\n+ | |\n+ | o 2:5fddd98957c8a54a4d436dfe1da9d87f21a1b97b:draft \'C\'\n+ | |\n+ | o 1:42ccdea3bb16d28e1848c95fe2e44c000f3f21b1:draft \'B\'\n+ |/\n+ o 0:cd010b8cd998f3981a5a8115f94f8da4ab506089:draft \'A\'\n+ \n', 2886, 2888, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-bookmark-motion.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-bookmark-motion.t\n+++ c:/hgdev/src/tests/test-histedit-bookmark-motion.t.err\n@@ -88,28 +88,133 @@\n > fold e860deea161a 4 e\n > pick 652413bf663e 5 f\n > EOF\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\.hg\\strip-backup/96e494a2d553-45c027ab-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r\\.hg\\strip-backup/96e494a2d553-38f577f4-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r\\.hg\\strip-backup/96e494a2d553-38f577f4-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n saved backup bundle to $TESTTMP/r/.hg/strip-backup/96e494a2d553-45c027ab-histedit.hg\n $ hg log --graph\n- @ changeset: 3:cacdfd884a93\n+ @ changeset: 10:cacdfd884a93\n | bookmark: five\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: f\n |\n- o changeset: 2:59d9f330561f\n+ o changeset: 9:59d9f330561f\n | bookmark: four\n | bookmark: three\n+ | parent: 6:b346ab9a313d\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: d\n |\n- o changeset: 1:b346ab9a313d\n+ | o changeset: 8:b558abc46d09\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: fold-temp-revision e860deea161a\n+ | |\n+ | o changeset: 7:96e494a2d553\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: d\n+ |\n+ o changeset: 6:b346ab9a313d\n | bookmark: also-two\n | bookmark: two\n+ | parent: 0:cb9a9f314b8b\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: c\n+ |\n+ | o changeset: 5:652413bf663e\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 4:e860deea161a\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: e\n+ | |\n+ | o changeset: 3:055a42cdd887\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: d\n+ | |\n+ | o changeset: 2:177f92b77385\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: c\n+ | |\n+ | o changeset: 1:d2ae7f538514\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: b\n |\n o changeset: 0:cb9a9f314b8b\n bookmark: will-move-backwards\n@@ -118,57 +223,77 @@\n summary: a\n \n $ HGEDITOR=cat hg histedit 1\n- pick b346ab9a313d 1 c\n- pick 59d9f330561f 2 d\n- pick cacdfd884a93 3 f\n- \n- # Edit history between b346ab9a313d and cacdfd884a93\n- #\n- # Commits are listed from least to most recent\n- #\n- # You can reorder changesets by reordering the lines\n- #\n- # Commands:\n- #\n- # e, edit = use commit, but stop for amending\n- # m, mess = edit commit message without changing commit content\n- # p, pick = use commit\n- # b, base = checkout changeset and apply further changesets from there\n- # d, drop = remove commit from history\n- # f, fold = use commit, but combine it with the one above\n- # r, roll = like fold, but discard this commit\'s description and date\n- #\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n $ hg histedit 1 --commands - --verbose << EOF | grep histedit\n > pick b346ab9a313d 1 c\n > pick cacdfd884a93 3 f\n > pick 59d9f330561f 2 d\n > EOF\n- saved backup bundle to $TESTTMP/r/.hg/strip-backup/59d9f330561f-073008af-histedit.hg\n+ abort: history edit already in progress, try --continue or --abort\n+ [1]\n \n We expect \'five\' to stay at tip, since the tipmost bookmark is most\n likely the useful signal.\n \n $ hg log --graph\n- @ changeset: 3:c04e50810e4b\n+ @ changeset: 10:cacdfd884a93\n | bookmark: five\n+ | tag: tip\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: f\n+ |\n+ o changeset: 9:59d9f330561f\n | bookmark: four\n | bookmark: three\n- | tag: tip\n+ | parent: 6:b346ab9a313d\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: d\n |\n- o changeset: 2:c13eb81022ca\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: f\n- |\n- o changeset: 1:b346ab9a313d\n+ | o changeset: 8:b558abc46d09\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: fold-temp-revision e860deea161a\n+ | |\n+ | o changeset: 7:96e494a2d553\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: d\n+ |\n+ o changeset: 6:b346ab9a313d\n | bookmark: also-two\n | bookmark: two\n+ | parent: 0:cb9a9f314b8b\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: c\n+ |\n+ | o changeset: 5:652413bf663e\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 4:e860deea161a\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: e\n+ | |\n+ | o changeset: 3:055a42cdd887\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: d\n+ | |\n+ | o changeset: 2:177f92b77385\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: c\n+ | |\n+ | o changeset: 1:d2ae7f538514\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: b\n |\n o changeset: 0:cb9a9f314b8b\n bookmark: will-move-backwards\n', 2444, 2446, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-commute.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-commute.t\n+++ c:/hgdev/src/tests/test-histedit-commute.t.err\n@@ -161,24 +161,108 @@\n > pick 055a42cdd887 d\n > EOF\n $ HGEDITOR="cat \\"$EDITED\\" > " hg histedit 177f92b77385 2>&1 | fixbundle\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\.hg\\strip-backup/055a42cdd887-f970f1c3-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r\\.hg\\strip-backup/055a42cdd887-b5d2f5d5-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r\\.hg\\strip-backup/055a42cdd887-b5d2f5d5-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n log after edit\n $ hg log --graph\n- @ changeset: 5:07114f51870f\n+ @ changeset: 8:07114f51870f\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: d\n |\n- o changeset: 4:8ade9693061e\n+ o changeset: 7:8ade9693061e\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: f\n |\n- o changeset: 3:d8249471110a\n+ o changeset: 6:d8249471110a\n+ | parent: 2:177f92b77385\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: e\n+ |\n+ | o changeset: 5:652413bf663e\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 4:e860deea161a\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: e\n+ | |\n+ | o changeset: 3:055a42cdd887\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: d\n |\n o changeset: 2:177f92b77385\n | user: test\n@@ -205,23 +289,40 @@\n > pick d8249471110a e\n > pick 8ade9693061e f\n > EOF\n+ abort: history edit already in progress, try --continue or --abort\n \n $ hg log --graph\n- @ changeset: 5:7eca9b5b1148\n+ @ changeset: 8:07114f51870f\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: d\n+ |\n+ o changeset: 7:8ade9693061e\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: f\n |\n- o changeset: 4:915da888f2de\n+ o changeset: 6:d8249471110a\n+ | parent: 2:177f92b77385\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: e\n |\n- o changeset: 3:10517e47bbbb\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: d\n+ | o changeset: 5:652413bf663e\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 4:e860deea161a\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: e\n+ | |\n+ | o changeset: 3:055a42cdd887\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: d\n |\n o changeset: 2:177f92b77385\n | user: test\n@@ -248,27 +349,44 @@\n > pick 915da888f2de e\n > pick 177f92b77385 c\n > EOF\n+ abort: history edit already in progress, try --continue or --abort\n $ hg log --graph\n- @ changeset: 5:38b92f448761\n+ @ changeset: 8:07114f51870f\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: d\n+ |\n+ o changeset: 7:8ade9693061e\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: f\n+ |\n+ o changeset: 6:d8249471110a\n+ | parent: 2:177f92b77385\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: e\n+ |\n+ | o changeset: 5:652413bf663e\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 4:e860deea161a\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: e\n+ | |\n+ | o changeset: 3:055a42cdd887\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: d\n+ |\n+ o changeset: 2:177f92b77385\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: c\n- |\n- o changeset: 4:de71b079d9ce\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: e\n- |\n- o changeset: 3:be9ae3a309c6\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: f\n- |\n- o changeset: 2:799205341b6b\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: d\n |\n o changeset: 1:d2ae7f538514\n | user: test\n@@ -289,38 +407,44 @@\n > pick 38b92f448761 c\n > pick de71b079d9ce e\n > EOF\n+ abort: history edit already in progress, try --continue or --abort\n $ hg log --graph\n- @ changeset: 7:803ef1c6fcfd\n+ @ changeset: 8:07114f51870f\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: d\n+ |\n+ o changeset: 7:8ade9693061e\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: f\n+ |\n+ o changeset: 6:d8249471110a\n+ | parent: 2:177f92b77385\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: e\n |\n- o changeset: 6:ece0b8d93dda\n- | parent: 3:be9ae3a309c6\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: c\n- |\n- | o changeset: 5:38b92f448761\n- | | user: test\n- | | date: Thu Jan 01 00:00:00 1970 +0000\n- | | summary: c\n- | |\n- | o changeset: 4:de71b079d9ce\n+ | o changeset: 5:652413bf663e\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 4:e860deea161a\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: e\n+ | |\n+ | o changeset: 3:055a42cdd887\n |/ user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: e\n- |\n- o changeset: 3:be9ae3a309c6\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: f\n- |\n- o changeset: 2:799205341b6b\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: d\n+ | summary: d\n+ |\n+ o changeset: 2:177f92b77385\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: c\n |\n o changeset: 1:d2ae7f538514\n | user: test\n@@ -339,40 +463,44 @@\n > pick de71b079d9ce e\n > pick 38b92f448761 c\n > EOF\n- hg: parse error: pick "de71b079d9ce" changeset was not a candidate\n- (only use listed changesets)\n+ abort: history edit already in progress, try --continue or --abort\n $ hg log --graph\n- @ changeset: 7:803ef1c6fcfd\n+ @ changeset: 8:07114f51870f\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: d\n+ |\n+ o changeset: 7:8ade9693061e\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: f\n+ |\n+ o changeset: 6:d8249471110a\n+ | parent: 2:177f92b77385\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: e\n |\n- o changeset: 6:ece0b8d93dda\n- | parent: 3:be9ae3a309c6\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: c\n- |\n- | o changeset: 5:38b92f448761\n- | | user: test\n- | | date: Thu Jan 01 00:00:00 1970 +0000\n- | | summary: c\n- | |\n- | o changeset: 4:de71b079d9ce\n+ | o changeset: 5:652413bf663e\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 4:e860deea161a\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: e\n+ | |\n+ | o changeset: 3:055a42cdd887\n |/ user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: e\n- |\n- o changeset: 3:be9ae3a309c6\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: f\n- |\n- o changeset: 2:799205341b6b\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: d\n+ | summary: d\n+ |\n+ o changeset: 2:177f92b77385\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: c\n |\n o changeset: 1:d2ae7f538514\n | user: test\n@@ -392,27 +520,12 @@\n > EOF\n $ echo extra commit >> c\n $ hg ci -m \'extra commit to c\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ HGEDITOR=cat hg histedit \'grandparent(.)\'\n- pick ece0b8d93dda 6 c\n- pick 803ef1c6fcfd 7 e\n- pick 9c863c565126 8 extra commit to c\n- \n- # Edit history between ece0b8d93dda and 9c863c565126\n- #\n- # Commits are listed from least to most recent\n- #\n- # You can reorder changesets by reordering the lines\n- #\n- # Commands:\n- #\n- # e, edit = use commit, but stop for amending\n- # m, mess = edit commit message without changing commit content\n- # p, pick = use commit\n- # b, base = checkout changeset and apply further changesets from there\n- # d, drop = remove commit from history\n- # f, fold = use commit, but combine it with the one above\n- # r, roll = like fold, but discard this commit\'s description and date\n- #\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n \n should also work if a commit message is missing\n@@ -482,24 +595,91 @@\n \n $ HGEDITOR="sh ./editor.sh" hg histedit 0\n saved backup bundle to $TESTTMP/issue4251/.hg/strip-backup/b0f4233702ca-4cf5af69-histedit.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\issue4251\\.hg\\strip-backup/b0f4233702ca-4cf5af69-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\issue4251\\.hg\\strip-backup/b0f4233702ca-fc29313a-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\issue4251\\.hg\\strip-backup/b0f4233702ca-fc29313a-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg --config diff.git=yes export 0\n # HG changeset patch\n # User test\n # Date 0 0\n # Thu Jan 01 00:00:00 1970 +0000\n- # Node ID fffadc26f8f85623ce60b028a3f1ccc3730f8530\n+ # Node ID b0f4233702ca3d2dc495941dc98d7136d67a4cf6\n # Parent 0000000000000000000000000000000000000000\n- pick b0f4233702ca 0 initial commit\n- fold 5e8704a8f2d2 1 moved and changed\n- pick 40e7299e8fa7 2 renamed\n- \n- diff --git a/another-dir/initial-file b/another-dir/initial-file\n+ initial commit\n+ \n+ diff --git a/initial-dir/initial-file b/initial-dir/initial-file\n new file mode 100644\n --- /dev/null\n- +++ b/another-dir/initial-file\n+ +++ b/initial-dir/initial-file\n @@ -0,0 +1,1 @@\n- +changed\n+ +foo\n \n \n $ hg --config diff.git=yes export 1\n@@ -507,13 +687,18 @@\n # User test\n # Date 0 0\n # Thu Jan 01 00:00:00 1970 +0000\n- # Node ID 9b730d82b00af8a2766facebfa47cc124405a118\n- # Parent fffadc26f8f85623ce60b028a3f1ccc3730f8530\n- renamed\n- \n- diff --git a/another-dir/initial-file b/another-dir/renamed-file\n- rename from another-dir/initial-file\n- rename to another-dir/renamed-file\n+ # Node ID 5e8704a8f2d2e850b45d790e34c225e3893424a1\n+ # Parent b0f4233702ca3d2dc495941dc98d7136d67a4cf6\n+ moved and changed\n+ \n+ diff --git a/initial-dir/initial-file b/another-dir/initial-file\n+ rename from initial-dir/initial-file\n+ rename to another-dir/initial-file\n+ --- a/initial-dir/initial-file\n+ +++ b/another-dir/initial-file\n+ @@ -1,1 +1,1 @@\n+ -foo\n+ +changed\n \n \n $ cd ..\n@@ -542,7 +727,78 @@\n $ echo "pick 7336e7550422 1 foo-B" >> cmd\n \n $ HGEDITOR=cat hg histedit -r ".^" --commands cmd --quiet\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo-with-branch\\.hg\\strip-backup/7336e7550422-468f28e7-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\repo-with-branch\\.hg\\strip-backup/7336e7550422-aaa227ed-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\repo-with-branch\\.hg\\strip-backup/7336e7550422-aaa227ed-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg log --template \'{rev} {branch}\\n\'\n+ 4 foo\n+ 3 foo\n 2 foo\n 1 foo\n 0 default\n', 2478, 2480, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-drop.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-drop.t\n+++ c:/hgdev/src/tests/test-histedit-drop.t.err\n@@ -59,24 +59,113 @@\n > pick 652413bf663e f\n > pick 055a42cdd887 d\n > EOF\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\.hg\\strip-backup/177f92b77385-bf885b2c-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r\\.hg\\strip-backup/177f92b77385-b06df4f6-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r\\.hg\\strip-backup/177f92b77385-b06df4f6-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n log after edit\n $ hg log --graph\n- @ changeset: 4:f518305ce889\n+ @ changeset: 8:f518305ce889\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: d\n |\n- o changeset: 3:a4f7421b80f7\n+ o changeset: 7:a4f7421b80f7\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: f\n |\n- o changeset: 2:ee283cb5f2d5\n+ o changeset: 6:ee283cb5f2d5\n+ | parent: 1:d2ae7f538514\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: e\n+ |\n+ | o changeset: 5:652413bf663e\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 4:e860deea161a\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: e\n+ | |\n+ | o changeset: 3:055a42cdd887\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: d\n+ | |\n+ | o changeset: 2:177f92b77385\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: c\n |\n o changeset: 1:d2ae7f538514\n | user: test\n@@ -92,12 +181,12 @@\n Check histedit_source\n \n $ hg log --debug --rev f518305ce889\n- changeset: 4:f518305ce889c07cb5bd05522176d75590ef3324\n+ changeset: 8:f518305ce889c07cb5bd05522176d75590ef3324\n tag: tip\n phase: draft\n- parent: 3:a4f7421b80f79fcc59fff01bcbf4a53d127dd6d3\n+ parent: 7:a4f7421b80f79fcc59fff01bcbf4a53d127dd6d3\n parent: -1:0000000000000000000000000000000000000000\n- manifest: 4:d3d4f51c157ff242c32ff745d4799aaa26ccda44\n+ manifest: 8:d3d4f51c157ff242c32ff745d4799aaa26ccda44\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n files+: d\n@@ -123,17 +212,44 @@\n > pick a4f7421b80f7 f\n > drop f518305ce889 d\n > EOF\n+ abort: history edit already in progress, try --continue or --abort\n $ hg log --graph\n- @ changeset: 3:a4f7421b80f7\n+ @ changeset: 8:f518305ce889\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: d\n+ |\n+ o changeset: 7:a4f7421b80f7\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: f\n |\n- o changeset: 2:ee283cb5f2d5\n+ o changeset: 6:ee283cb5f2d5\n+ | parent: 1:d2ae7f538514\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: e\n+ |\n+ | o changeset: 5:652413bf663e\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 4:e860deea161a\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: e\n+ | |\n+ | o changeset: 3:055a42cdd887\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: d\n+ | |\n+ | o changeset: 2:177f92b77385\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: c\n |\n o changeset: 1:d2ae7f538514\n | user: test\n@@ -150,22 +266,57 @@\n > pick cb9a9f314b8b a\n > pick ee283cb5f2d5 e\n > EOF\n- hg: parse error: missing rules for changeset a4f7421b80f7\n- (use "drop a4f7421b80f7" to discard, see also: \'hg help -e histedit.config\')\n+ abort: history edit already in progress, try --continue or --abort\n $ hg --config histedit.dropmissing=True histedit cb9a9f314b8b --commands - 2>&1 << EOF | fixbundle\n > EOF\n- hg: parse error: no rules provided\n- (use strip extension to remove commits)\n+ abort: history edit already in progress, try --continue or --abort\n $ hg --config histedit.dropmissing=True histedit cb9a9f314b8b --commands - 2>&1 << EOF | fixbundle\n > pick cb9a9f314b8b a\n > pick ee283cb5f2d5 e\n > EOF\n+ abort: history edit already in progress, try --continue or --abort\n $ hg log --graph\n- @ changeset: 1:e99c679bf03e\n+ @ changeset: 8:f518305ce889\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: d\n+ |\n+ o changeset: 7:a4f7421b80f7\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: f\n+ |\n+ o changeset: 6:ee283cb5f2d5\n+ | parent: 1:d2ae7f538514\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: e\n+ |\n+ | o changeset: 5:652413bf663e\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 4:e860deea161a\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: e\n+ | |\n+ | o changeset: 3:055a42cdd887\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: d\n+ | |\n+ | o changeset: 2:177f92b77385\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: c\n+ |\n+ o changeset: 1:d2ae7f538514\n+ | user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: b\n |\n o changeset: 0:cb9a9f314b8b\n user: test\n', 2418, 2420, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-edit.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-edit.t\n+++ c:/hgdev/src/tests/test-histedit-edit.t.err\n@@ -155,23 +155,109 @@\n (use \'hg histedit --continue\' or \'hg histedit --abort\')\n [20]\n $ HGEDITOR=\'echo foobaz > \' hg histedit --continue 2>&1 | fixbundle\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\.hg\\strip-backup/e860deea161a-3e6e5461-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r\\.hg\\strip-backup/e860deea161a-c1b3f653-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r\\.hg\\strip-backup/e860deea161a-c1b3f653-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "mockmakedate" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mockmakedate" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, mockmakedate, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n $ hg log --graph\n- @ changeset: 6:b5f70786f9b0\n+ @ changeset: 9:b5f70786f9b0\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: f\n |\n- o changeset: 5:a5e1ba2f7afb\n+ o changeset: 8:a5e1ba2f7afb\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: foobaz\n |\n- o changeset: 4:1a60820cd1f6\n+ o changeset: 7:1a60820cd1f6\n+ | parent: 3:055a42cdd887\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: wat\n+ |\n+ | o changeset: 6:3c6a8ed2ebe8\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: g\n+ | |\n+ | o changeset: 5:652413bf663e\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 4:e860deea161a\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: e\n |\n o changeset: 3:055a42cdd887\n | user: test\n@@ -204,98 +290,89 @@\n > pick a5e1ba2f7afb foobaz\n > pick b5f70786f9b0 g\n > EOF\n- 0 files updated, 0 files merged, 2 files removed, 0 files unresolved\n- Editing (1a60820cd1f6), you may commit or record as needed now.\n- (hg histedit --continue to resume)\n+ abort: history edit already in progress, try --continue or --abort\n \n $ mv .hg/histedit-state .hg/histedit-state.bak\n $ hg strip -q -r b5f70786f9b0\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\.hg\\strip-backup/b5f70786f9b0-c28d9c86-backup.hg\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ mv .hg/histedit-state.bak .hg/histedit-state\n $ hg histedit --abort\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 1 changes to 3 files\n- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 3 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ saved backup bundle to $TESTTMP/r/.hg/strip-backup/a5e1ba2f7afb-8c1c9092-backup.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\.hg\\strip-backup/a5e1ba2f7afb-8c1c9092-backup.hg\'\n+ warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -r .\n- changeset: 6:b5f70786f9b0\n+ changeset: 6:3c6a8ed2ebe8\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: g\n+ \n+\n+check histedit_source\n+\n+ $ hg log --debug --rev 5\n+ changeset: 5:652413bf663ef2a641cab26574e46d5f5a64a55a\n+ phase: draft\n+ parent: 4:e860deea161a2f77de56603b340ebbb4536308ae\n+ parent: -1:0000000000000000000000000000000000000000\n+ manifest: 5:1853a742c28c3a531336bbb3d677d2e2d8937027\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ files+: f\n+ extra: branch=default\n+ description:\n+ f\n+ \n+ \n+\n+ $ hg histedit tip --commands - 2>&1 <<EOF| fixbundle\n+ > edit b5f70786f9b0 f\n+ > EOF\n+ abort: b5f70786f9b0 is not an ancestor of working directory\n+ $ hg status\n+\n+ $ hg summary\n+ parent: 6:3c6a8ed2ebe8 \n+ g\n+ branch: default\n+ commit: (clean)\n+ update: 3 new changesets, 2 branch heads (merge)\n+ phases: 10 draft\n+\n+(test also that editor is invoked if histedit is continued for\n+"edit" action)\n+\n+ $ HGEDITOR=\'cat\' hg histedit --continue\n+ abort: no histedit in progress\n+ [20]\n+\n+ $ hg status\n+\n+log after edit\n+ $ hg log --limit 1\n+ changeset: 9:b5f70786f9b0\n tag: tip\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n summary: f\n \n \n-check histedit_source\n-\n- $ hg log --debug --rev 5\n- changeset: 5:a5e1ba2f7afb899ef1581cea528fd885d2fca70d\n- phase: draft\n- parent: 4:1a60820cd1f6004a362aa622ebc47d59bc48eb34\n- parent: -1:0000000000000000000000000000000000000000\n- manifest: 5:5ad3be8791f39117565557781f5464363b918a45\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- files: e\n- extra: branch=default\n- extra: histedit_source=e860deea161a2f77de56603b340ebbb4536308ae\n- description:\n- foobaz\n- \n- \n-\n- $ hg histedit tip --commands - 2>&1 <<EOF| fixbundle\n- > edit b5f70786f9b0 f\n- > EOF\n- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n- Editing (b5f70786f9b0), you may commit or record as needed now.\n- (hg histedit --continue to resume)\n- $ hg status\n- A f\n-\n- $ hg summary\n- parent: 5:a5e1ba2f7afb \n- foobaz\n- branch: default\n- commit: 1 added (new branch head)\n- update: 1 new changesets (update)\n- phases: 7 draft\n- hist: 1 remaining (histedit --continue)\n-\n-(test also that editor is invoked if histedit is continued for\n-"edit" action)\n-\n- $ HGEDITOR=\'cat\' hg histedit --continue\n- f\n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: test\n- HG: branch \'default\'\n- HG: added f\n- saved backup bundle to $TESTTMP/r/.hg/strip-backup/b5f70786f9b0-c28d9c86-histedit.hg\n-\n- $ hg status\n-\n-log after edit\n- $ hg log --limit 1\n- changeset: 6:a107ee126658\n- tag: tip\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: f\n- \n-\n say we\'ll change the message, but don\'t.\n $ cat > ../edit.sh <<EOF\n > cat "\\$1" | sed s/pick/mess/ > tmp\n > mv tmp "\\$1"\n > EOF\n $ HGEDITOR="sh ../edit.sh" hg histedit tip 2>&1 | fixbundle\n+ abort: b5f70786f9b0 is not an ancestor of working directory\n $ hg status\n $ hg log --limit 1\n- changeset: 6:1fd3b2fe7754\n+ changeset: 9:b5f70786f9b0\n tag: tip\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n@@ -333,7 +410,7 @@\n $ HGEDITOR="sh $TESTTMP/editor.sh" hg histedit tip --commands - 2>&1 << EOF | fixbundle\n > mess 1fd3b2fe7754 f\n > EOF\n- abort: emulating unexpected abort\n+ abort: b5f70786f9b0 is not an ancestor of working directory\n $ test -f .hg/last-message.txt\n [1]\n \n@@ -342,6 +419,8 @@\n > commitfailure = !\n > EOF\n $ hg histedit --abort -q\n+ abort: no histedit in progress\n+ [20]\n \n (test that editor is invoked and commit message is saved into\n "last-message.txt")\n@@ -353,69 +432,43 @@\n > EOF\n \n $ hg status --rev \'1fd3b2fe7754^1\' --rev 1fd3b2fe7754\n- A f\n+ abort: unknown revision \'1fd3b2fe7754\'\n+ [255]\n \n $ rm -f .hg/last-message.txt\n $ HGEDITOR="sh $TESTTMP/editor.sh" hg histedit tip --commands - 2>&1 << EOF\n > mess 1fd3b2fe7754 f\n > EOF\n- ==== before editing\n- f\n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: test\n- HG: branch \'default\'\n- HG: added f\n- ====\n- transaction abort!\n- rollback completed\n- note: commit message saved in .hg/last-message.txt\n- note: use \'hg commit --logfile .hg/last-message.txt --edit\' to reuse it\n- abort: pretxncommit.unexpectedabort hook exited with status 1\n+ abort: b5f70786f9b0 is not an ancestor of working directory\n [255]\n $ cat .hg/last-message.txt\n- f\n- \n- \n- check saving last-message.txt\n+ cat: .hg/last-message.txt: $ENOENT$\n+ [1]\n \n (test also that editor is invoked if histedit is continued for "message"\n action)\n \n $ HGEDITOR=cat hg histedit --continue\n- f\n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: test\n- HG: branch \'default\'\n- HG: added f\n- transaction abort!\n- rollback completed\n- note: commit message saved in .hg/last-message.txt\n- note: use \'hg commit --logfile .hg/last-message.txt --edit\' to reuse it\n- abort: pretxncommit.unexpectedabort hook exited with status 1\n- [255]\n+ abort: no histedit in progress\n+ [20]\n \n $ cat >> .hg/hgrc <<EOF\n > [hooks]\n > pretxncommit.unexpectedabort =\n > EOF\n $ hg histedit --abort -q\n+ abort: no histedit in progress\n+ [20]\n \n then, check "modify the message" itself\n \n $ hg histedit tip --commands - 2>&1 << EOF | fixbundle\n > mess 1fd3b2fe7754 f\n > EOF\n+ abort: b5f70786f9b0 is not an ancestor of working directory\n $ hg status\n $ hg log --limit 1\n- changeset: 6:62feedb1200e\n+ changeset: 9:b5f70786f9b0\n tag: tip\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n@@ -424,8 +477,7 @@\n \n rollback should not work after a histedit\n $ hg rollback\n- no rollback information available\n- [1]\n+ repository tip rolled back to revision 9 (undo cleanup)\n \n $ cd ..\n $ hg clone -qr0 r r0\n@@ -440,10 +492,87 @@\n [240]\n $ HGEDITOR=true hg histedit --continue\n saved backup bundle to $TESTTMP/r0/.hg/strip-backup/cb9a9f314b8b-cc5ccb0b-histedit.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\r0\\.hg\\strip-backup/cb9a9f314b8b-cc5ccb0b-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r0\\.hg\\strip-backup/cb9a9f314b8b-681bbba8-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r0\\.hg\\strip-backup/cb9a9f314b8b-681bbba8-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "mockmakedate" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mockmakedate" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, mockmakedate, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg log -G\n- @ changeset: 0:0efcea34f18a\n+ @ changeset: 1:0efcea34f18a\n tag: tip\n+ parent: -1:000000000000\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: a\n+ \n+ o changeset: 0:cb9a9f314b8b\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n summary: a\n@@ -452,37 +581,29 @@\n $ hg addr\n adding b\n $ hg ci -m \'add b\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ echo foo >> a\n $ hg ci -m \'extend a\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg phase --public 1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n Attempting to fold a change into a public change should not work:\n $ cat > ../edit.sh <<EOF\n > cat "\\$1" | sed s/pick/fold/ > tmp\n > mv tmp "\\$1"\n > EOF\n $ HGEDITOR="sh ../edit.sh" hg histedit 2\n- warning: histedit rules saved to: .hg/histedit-last-edit.txt\n- hg: parse error: first changeset cannot use verb "fold"\n- [10]\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n $ cat .hg/histedit-last-edit.txt\n- fold 0012be4a27ea 2 extend a\n- \n- # Edit history between 0012be4a27ea and 0012be4a27ea\n- #\n- # Commits are listed from least to most recent\n- #\n- # You can reorder changesets by reordering the lines\n- #\n- # Commands:\n- #\n- # e, edit = use commit, but stop for amending\n- # m, mess = edit commit message without changing commit content\n- # p, fold = use commit\n- # b, base = checkout changeset and apply further changesets from there\n- # d, drop = remove commit from history\n- # f, fold = use commit, but combine it with the one above\n- # r, roll = like fold, but discard this commit\'s description and date\n- #\n+ cat: .hg/histedit-last-edit.txt: $ENOENT$\n+ [1]\n \n $ cd ..\n \n@@ -523,12 +644,83 @@\n $ hg histedit tip --commands - 2>&1 --config rewrite.update-timestamp=True << EOF | fixbundle\n > mess 178e35e0ce73 f\n > EOF\n+ strip failed, backup bundle stored in \'$TESTTMP\\r2\\.hg\\strip-backup/178e35e0ce73-afdd642a-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r2\\.hg\\strip-backup/178e35e0ce73-0c61b0b2-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r2\\.hg\\strip-backup/178e35e0ce73-0c61b0b2-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "mockmakedate" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mockmakedate" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, mockmakedate, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n log after edit\n \n $ hg log --limit 1\n- changeset: 5:98bf456d476b\n+ changeset: 6:98bf456d476b\n tag: tip\n+ parent: 4:1ddb6c90f2ee\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n summary: f\n', 2702, 2704, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-fold-non-commute.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-fold-non-commute.t\n+++ c:/hgdev/src/tests/test-histedit-fold-non-commute.t.err\n@@ -132,19 +132,114 @@\n $ hg diff\n $ hg histedit --continue 2>&1 | fixbundle\n 7f3755409b00: skipping changeset (no changes)\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\.hg\\strip-backup/ae78f4c9d74f-b7203cf2-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r\\.hg\\strip-backup/ae78f4c9d74f-f8df86a8-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r\\.hg\\strip-backup/ae78f4c9d74f-f8df86a8-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n log after edit\n $ hg log --graph\n- @ changeset: 5:1300355b1a54\n+ @ changeset: 10:1300355b1a54\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:06 1970 +0000\n | summary: f\n |\n- o changeset: 4:e2ac33269083\n+ o changeset: 9:e2ac33269083\n+ | parent: 3:092e4ce14829\n | user: test\n | date: Thu Jan 01 00:00:07 1970 +0000\n | summary: d\n+ |\n+ | o changeset: 8:da56183fa9b7\n+ | | parent: 4:ae78f4c9d74f\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:07 1970 +0000\n+ | | summary: fold-temp-revision 42abbb61bede\n+ | |\n+ | | o changeset: 7:42abbb61bede\n+ | | | user: test\n+ | | | date: Thu Jan 01 00:00:07 1970 +0000\n+ | | | summary: does not commute with e\n+ | | |\n+ | | o changeset: 6:dd184f2faeb0\n+ | | | user: test\n+ | | | date: Thu Jan 01 00:00:06 1970 +0000\n+ | | | summary: f\n+ | | |\n+ | | o changeset: 5:7f3755409b00\n+ | |/ user: test\n+ | | date: Thu Jan 01 00:00:05 1970 +0000\n+ | | summary: e\n+ | |\n+ | o changeset: 4:ae78f4c9d74f\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:04 1970 +0000\n+ | summary: d\n |\n o changeset: 3:092e4ce14829\n | user: test\n@@ -271,19 +366,114 @@\n continue: hg histedit --continue\n $ hg histedit --continue 2>&1 | fixbundle\n 7f3755409b00: skipping changeset (no changes)\n+ strip failed, backup bundle stored in \'$TESTTMP\\r2\\.hg\\strip-backup/ae78f4c9d74f-b7203cf2-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r2\\.hg\\strip-backup/ae78f4c9d74f-9e4a6d16-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r2\\.hg\\strip-backup/ae78f4c9d74f-9e4a6d16-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n log after edit\n $ hg log --graph\n- @ changeset: 5:b538bcb461be\n+ @ changeset: 10:b538bcb461be\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:06 1970 +0000\n | summary: f\n |\n- o changeset: 4:317e37cb6d66\n+ o changeset: 9:317e37cb6d66\n+ | parent: 3:092e4ce14829\n | user: test\n | date: Thu Jan 01 00:00:04 1970 +0000\n | summary: d\n+ |\n+ | o changeset: 8:da56183fa9b7\n+ | | parent: 4:ae78f4c9d74f\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:07 1970 +0000\n+ | | summary: fold-temp-revision 42abbb61bede\n+ | |\n+ | | o changeset: 7:42abbb61bede\n+ | | | user: test\n+ | | | date: Thu Jan 01 00:00:07 1970 +0000\n+ | | | summary: does not commute with e\n+ | | |\n+ | | o changeset: 6:dd184f2faeb0\n+ | | | user: test\n+ | | | date: Thu Jan 01 00:00:06 1970 +0000\n+ | | | summary: f\n+ | | |\n+ | | o changeset: 5:7f3755409b00\n+ | |/ user: test\n+ | | date: Thu Jan 01 00:00:05 1970 +0000\n+ | | summary: e\n+ | |\n+ | o changeset: 4:ae78f4c9d74f\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:04 1970 +0000\n+ | summary: d\n |\n o changeset: 3:092e4ce14829\n | user: test\n@@ -322,16 +512,15 @@\n description is taken from rollup target commit\n \n $ hg log --debug --rev 4\n- changeset: 4:317e37cb6d66c1c84628c00e5bf4c8c292831951\n+ changeset: 4:ae78f4c9d74ffa4b6cb5045001c303fe9204e890\n phase: draft\n parent: 3:092e4ce14829f4974399ce4316d59f64ef0b6725\n parent: -1:0000000000000000000000000000000000000000\n- manifest: 4:b068a323d969f22af1296ec6a5ea9384cef437ac\n+ manifest: 4:5de30c46fc287545234d8a9e2f9ecb9c67177d27\n user: test\n date: Thu Jan 01 00:00:04 1970 +0000\n- files: d e\n+ files: d\n extra: branch=default\n- extra: histedit_source=ae78f4c9d74ffa4b6cb5045001c303fe9204e890,42abbb61bede6f4366fa1e74a664343e5d558a70\n description:\n d\n \n', 2492, 2494, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-fold.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-fold.t\n+++ c:/hgdev/src/tests/test-histedit-fold.t.err\n@@ -63,15 +63,97 @@\n > fold ff2c9fa2018b c\n > pick 532247a8969b d\n > EOF\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\.hg\\strip-backup/7cad1d703020-bfb27e6d-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r\\.hg\\strip-backup/7cad1d703020-acb6ed92-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r\\.hg\\strip-backup/7cad1d703020-acb6ed92-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "mockmakedate" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mockmakedate" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n log after edit\n $ hg logt --graph\n- @ 4:c4d7f3def76d d\n- |\n- o 3:575228819b7e f\n- |\n- o 2:505a591af19e e\n- |\n+ @ 10:c4d7f3def76d d\n+ |\n+ o 9:575228819b7e f\n+ |\n+ | o 8:5b6926c1aaa1 fold-temp-revision ff2c9fa2018b\n+ | |\n+ | o 7:7cad1d703020 f\n+ |/\n+ o 6:505a591af19e e\n+ |\n+ | o 5:178e35e0ce73 f\n+ | |\n+ | o 4:1ddb6c90f2ee e\n+ | |\n+ | o 3:532247a8969b d\n+ | |\n+ | o 2:ff2c9fa2018b c\n+ |/\n o 1:97d72e5f12c7 b\n |\n o 0:8580ff50825a a\n@@ -90,20 +172,17 @@\n check histedit_source, including that it uses the later date, from the first changeset\n \n $ hg log --debug --rev 3\n- changeset: 3:575228819b7e6ed69e8c0a6a383ee59a80db7358\n+ changeset: 3:532247a8969b0e3a29e4b9156730a127eac56f1d\n phase: draft\n- parent: 2:505a591af19eed18f560af827b9e03d2076773dc\n+ parent: 2:ff2c9fa2018b15fa74b33363bda9527323e2a99f\n parent: -1:0000000000000000000000000000000000000000\n- manifest: 3:81eede616954057198ead0b2c73b41d1f392829a\n- user: test\n- date: Thu Jan 01 00:00:06 1970 +0000\n- files+: c f\n+ manifest: 3:f064a7f8e3e138341587096641d86e9d23cd9778\n+ user: test\n+ date: Thu Jan 01 00:00:04 1970 +0000\n+ files+: d\n extra: branch=default\n- extra: histedit_source=7cad1d7030207872dfd1c3a7cb430f24f2884086,ff2c9fa2018b15fa74b33363bda9527323e2a99f\n description:\n- f\n- ***\n- c\n+ d\n \n \n \n@@ -117,16 +196,31 @@\n > pick 575228819b7e f\n > pick c4d7f3def76d d\n > EOF\n+ abort: history edit already in progress, try --continue or --abort\n \n $ HGEDITOR=$OLDHGEDITOR\n \n log after edit\n $ hg logt --graph\n- @ 3:bab801520cec d\n- |\n- o 2:58c8f2bfc151 f\n- |\n- o 1:5d939c56c72e b\n+ @ 10:c4d7f3def76d d\n+ |\n+ o 9:575228819b7e f\n+ |\n+ | o 8:5b6926c1aaa1 fold-temp-revision ff2c9fa2018b\n+ | |\n+ | o 7:7cad1d703020 f\n+ |/\n+ o 6:505a591af19e e\n+ |\n+ | o 5:178e35e0ce73 f\n+ | |\n+ | o 4:1ddb6c90f2ee e\n+ | |\n+ | o 3:532247a8969b d\n+ | |\n+ | o 2:ff2c9fa2018b c\n+ |/\n+ o 1:97d72e5f12c7 b\n |\n o 0:8580ff50825a a\n \n@@ -134,16 +228,15 @@\n description is taken from rollup target commit\n \n $ hg log --debug --rev 1\n- changeset: 1:5d939c56c72e77e29f5167696218e2131a40f5cf\n+ changeset: 1:97d72e5f12c7e84f85064aa72e5a297142c36ed9\n phase: draft\n parent: 0:8580ff50825a50c8f716709acdf8de0deddcd6ab\n parent: -1:0000000000000000000000000000000000000000\n- manifest: 1:b5e112a3a8354e269b1524729f0918662d847c38\n+ manifest: 1:a539ce0c1a22b0ecf34498f9f5ce8ea56df9ecb7\n user: test\n date: Thu Jan 01 00:00:02 1970 +0000\n- files+: b e\n+ files+: b\n extra: branch=default\n- extra: histedit_source=97d72e5f12c7e84f85064aa72e5a297142c36ed9,505a591af19eed18f560af827b9e03d2076773dc\n description:\n b\n \n@@ -173,47 +266,18 @@\n \n $ rm -f .hg/last-message.txt\n $ hg status --rev \'58c8f2bfc151^1::bab801520cec\'\n- A c\n- A d\n- A f\n+ abort: unknown revision \'58c8f2bfc151\'\n+ [255]\n $ HGEDITOR="sh $TESTTMP/editor.sh" hg histedit 58c8f2bfc151 --commands - 2>&1 <<EOF\n > pick 58c8f2bfc151 f\n > fold bab801520cec d\n > EOF\n- allow non-folding commit\n- ==== before editing\n- f\n- ***\n- c\n- ***\n- d\n- \n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: test\n- HG: branch \'default\'\n- HG: added c\n- HG: added d\n- HG: added f\n- ====\n- transaction abort!\n- rollback completed\n- abort: pretxncommit.abortfolding hook failed\n+ abort: history edit already in progress, try --continue or --abort\n [255]\n \n $ cat .hg/last-message.txt\n- f\n- ***\n- c\n- ***\n- d\n- \n- \n- \n- check saving last-message.txt\n+ cat: .hg/last-message.txt: $ENOENT$\n+ [1]\n \n $ cd ..\n $ rm -r r\n@@ -224,11 +288,79 @@\n $ initrepo\n \n $ hg ci -d \'7 0\' --user "someone else" --amend --quiet\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\.hg\\strip-backup/178e35e0ce73-afdd642a-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r\\.hg\\strip-backup/178e35e0ce73-a73bd023-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r\\.hg\\strip-backup/178e35e0ce73-a73bd023-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "mockmakedate" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mockmakedate" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n tip before edit\n $ hg log --rev .\n- changeset: 5:10c36dd37515\n+ changeset: 6:10c36dd37515\n tag: tip\n+ parent: 4:1ddb6c90f2ee\n user: someone else\n date: Thu Jan 01 00:00:07 1970 +0000\n summary: f\n@@ -240,16 +372,16 @@\n > pick 1ddb6c90f2ee e\n > fold 10c36dd37515 f\n > EOF\n- editing: pick 1ddb6c90f2ee 4 e 1/2 changes (50.00%)\n- editing: fold 10c36dd37515 5 f 2/2 changes (100.00%)\n+ [1]\n \n tip after edit, which should use the later date, from the second changeset\n $ hg log --rev .\n- changeset: 4:e4f3ec5d0b40\n+ changeset: 6:10c36dd37515\n tag: tip\n- user: test\n+ parent: 4:1ddb6c90f2ee\n+ user: someone else\n date: Thu Jan 01 00:00:07 1970 +0000\n- summary: e\n+ summary: f\n \n \n $ cd ..\n@@ -318,7 +450,80 @@\n $ hg histedit --continue\n 251d831eeec5: empty changeset\n saved backup bundle to $TESTTMP/fold-to-empty-test/.hg/strip-backup/888f9082bf99-daa0b8b3-histedit.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\fold-to-empty-test\\.hg\\strip-backup/888f9082bf99-daa0b8b3-histedit.hg\'\n+ ** Unknown exception encountered with possibly-broken third-party extension "mockmakedate" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mockmakedate" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg logt --graph\n+ o 3:251d831eeec5 +6\n+ |\n+ o 2:888f9082bf99 +5\n+ |\n @ 1:617f94f13c0f +4\n |\n o 0:0189ba417d34 1+2+3\n@@ -394,9 +599,90 @@\n HG: branch \'default\'\n HG: changed file\n saved backup bundle to $TESTTMP/fold-with-dropped/.hg/strip-backup/617f94f13c0f-3d69522c-histedit.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\fold-with-dropped\\.hg\\strip-backup/617f94f13c0f-3d69522c-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\fold-with-dropped\\.hg\\strip-backup/617f94f13c0f-45fb180a-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\fold-with-dropped\\.hg\\strip-backup/617f94f13c0f-45fb180a-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "mockmakedate" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mockmakedate" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg logt -G\n- @ 1:10c647b2cdd5 +4\n- |\n+ @ 6:10c647b2cdd5 +4\n+ |\n+ | o 5:55c8d8dc79ce fold-temp-revision 251d831eeec5\n+ | |\n+ | o 4:6fdb948f9d42 +5.2\n+ | |\n+ | | o 3:251d831eeec5 +6\n+ | | |\n+ | | o 2:888f9082bf99 +5\n+ | |/\n+ | o 1:617f94f13c0f +4\n+ |/\n o 0:0189ba417d34 1+2+3\n \n $ hg export tip\n@@ -447,9 +733,79 @@\n > pick 1c4f440a8085 rename\n > fold e0371e0426bc b\n > EOF\n+ strip failed, backup bundle stored in \'$TESTTMP\\fold-rename\\.hg\\strip-backup/1c4f440a8085-7c6c5429-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\fold-rename\\.hg\\strip-backup/1c4f440a8085-9163fbbb-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\fold-rename\\.hg\\strip-backup/1c4f440a8085-9163fbbb-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "mockmakedate" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mockmakedate" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n $ hg logt --follow b.txt\n- 1:cf858d235c76 rename\n+ 4:cf858d235c76 rename\n 0:6c795aa153cb a\n \n $ cd ..\n@@ -483,11 +839,85 @@\n > fold a1a953ffb4b0 c\n > pick 6c795aa153cb a\n > EOF\n- commit 9599899f62c05f4377548c32bf1c9f1a39634b0c\n+ strip failed, backup bundle stored in \'$TESTTMP\\issue4422\\.hg\\strip-backup/16b87e97178d-924e798a-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\issue4422\\.hg\\strip-backup/16b87e97178d-e472764d-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\issue4422\\.hg\\strip-backup/16b87e97178d-e472764d-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "mockmakedate" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mockmakedate" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n $ hg logt\n- 1:9599899f62c0 a\n- 0:79b99e9c8e49 b\n+ 6:9599899f62c0 a\n+ 5:79b99e9c8e49 b\n+ 4:973e98d91193 fold-temp-revision a1a953ffb4b0\n+ 3:16b87e97178d b\n+ 2:a1a953ffb4b0 c\n+ 1:199b6bb90248 b\n+ 0:6c795aa153cb a\n \n Test unix -> windows style variable substitution in external hooks.\n \n@@ -508,8 +938,14 @@\n running hook post-add: echo ran $HG_ARGS, literal \\$non-var, \'also $non-var\', $HG_RESULT (no-windows !)\n ran add -v amended.txt, literal $non-var, "also $non-var", 0 (windows !)\n ran add -v amended.txt, literal $non-var, also $non-var, 0 (no-windows !)\n+ converting hook "post-add" to native\n+ running hook post-add: echo ran %HG_ARGS%, literal $non-var, "also $non-var", %HG_RESULT%\n+ ran add -v amended.txt, literal $non-var, "also $non-var", 0\\r (esc)\n $ hg ci -q --config extensions.largefiles= --amend -I amended.txt\n The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !)\n+ abort: histedit in progress\n+ (use \'hg histedit --continue\' or \'hg histedit --abort\')\n+ [20]\n \n Test that folding multiple changes in a row doesn\'t show multiple\n editors.\n@@ -517,16 +953,27 @@\n $ echo foo >> foo\n $ hg add foo\n $ hg ci -m foo1\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ echo foo >> foo\n $ hg ci -m foo2\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ echo foo >> foo\n $ hg ci -m foo3\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg logt\n- 4:21679ff7675c foo3\n- 3:b7389cc4d66e foo2\n- 2:0e01aeef5fa8 foo1\n- 1:578c7455730c a\n- 0:79b99e9c8e49 b\n+ 6:9599899f62c0 a\n+ 5:79b99e9c8e49 b\n+ 4:973e98d91193 fold-temp-revision a1a953ffb4b0\n+ 3:16b87e97178d b\n+ 2:a1a953ffb4b0 c\n+ 1:199b6bb90248 b\n+ 0:6c795aa153cb a\n $ cat > "$TESTTMP/editor.sh" <<EOF\n > echo ran editor >> "$TESTTMP/editorlog.txt"\n > cat \\$1 >> "$TESTTMP/editorlog.txt"\n@@ -539,29 +986,19 @@\n > fold b7389cc4d66e 3 foo2\n > fold 21679ff7675c 4 foo3\n > EOF\n- merging foo\n+ abort: history edit already in progress, try --continue or --abort\n $ hg logt\n- 2:e8bedbda72c1 merged foos\n- 1:578c7455730c a\n- 0:79b99e9c8e49 b\n+ 6:9599899f62c0 a\n+ 5:79b99e9c8e49 b\n+ 4:973e98d91193 fold-temp-revision a1a953ffb4b0\n+ 3:16b87e97178d b\n+ 2:a1a953ffb4b0 c\n+ 1:199b6bb90248 b\n+ 0:6c795aa153cb a\n Editor should have run only once\n $ cat $TESTTMP/editorlog.txt\n- ran editor\n- foo1\n- ***\n- foo2\n- ***\n- foo3\n- \n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: test\n- HG: branch \'default\'\n- HG: added foo\n- END\n+ cat: $TESTTMP/editorlog.txt: $ENOENT$\n+ [1]\n \n $ cd ..\n \n@@ -663,16 +1100,108 @@\n > pick 178e35e0ce73 f\n > fold 1ddb6c90f2ee e\n > EOF\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\.hg\\strip-backup/750d51d7ae9e-2317cef9-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r\\.hg\\strip-backup/750d51d7ae9e-46c22ac6-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r\\.hg\\strip-backup/750d51d7ae9e-46c22ac6-temp.hg\'")\n+ ** Unknown exception encountered with possibly-broken third-party extension "mockmakedate" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mockmakedate" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n log after edit\n observe time from f is updated\n \n $ hg log\n- changeset: 4:f7909b1863a2\n+ changeset: 8:f7909b1863a2\n tag: tip\n+ parent: 3:532247a8969b\n user: test\n date: Thu Jan 01 00:00:01 1970 +0000\n summary: f\n+ \n+ changeset: 7:e021d48e5b8a\n+ user: test\n+ date: Thu Jan 01 00:00:05 1970 +0000\n+ summary: fold-temp-revision 1ddb6c90f2ee\n+ \n+ changeset: 6:750d51d7ae9e\n+ parent: 3:532247a8969b\n+ user: test\n+ date: Thu Jan 01 00:00:00 1970 +0000\n+ summary: f\n+ \n+ changeset: 5:178e35e0ce73\n+ user: test\n+ date: Thu Jan 01 00:00:06 1970 +0000\n+ summary: f\n+ \n+ changeset: 4:1ddb6c90f2ee\n+ user: test\n+ date: Thu Jan 01 00:00:05 1970 +0000\n+ summary: e\n \n changeset: 3:532247a8969b\n user: test\n', 2613, 2615, 'truncated \\uXXXX escape') decoding diff, sorry
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-merge-tools.t\n+++ c:/hgdev/src/tests/test-histedit-merge-tools.t.err\n@@ -48,6 +48,67 @@\n (hg histedit --continue to resume)\n \n $ hg histedit --abort | fixbundle\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\.hg\\strip-backup/b90fa2e91a6d-c96b97b9-backup.hg\'\n+ warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ ** Unknown exception encountered with possibly-broken third-party extension "mockmakedate" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "mockmakedate" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, mockmakedate\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2010, in _histedit\n+ _aborthistedit(ui, repo, state, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2152, in _aborthistedit\n+ cleanupnode(ui, repo, tmpnodes, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2606, in cleanupnode\n+ repair.strip(ui, repo, roots, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n \n Invert the order of the commits, and pretend the merge succeeded.\n@@ -55,12 +116,9 @@\n > pick 2aa920f62fb9 Second\n > pick 7181f42b8fca First\n > EOF\n- merging file\n- pre-merge message for b90fa2e91a6d11013945a5f684be45b84a8ca6ec\n- 7181f42b8fca: skipping changeset (no changes)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n $ hg histedit --abort\n- abort: no histedit in progress\n- [20]\n $ cd ..\n \n Test legacy config name\n', 2523, 2525, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-no-backup.t#abortcommand
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-no-backup.t\n+++ c:/hgdev/src/tests/test-histedit-no-backup.t#abortcommand.err\n@@ -56,7 +56,64 @@\n $ hg abort\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n saved backup bundle to $TESTTMP/foo/.hg/strip-backup/1d8f701c7b35-cf7be322-backup.hg\n- saved backup bundle to $TESTTMP/foo/.hg/strip-backup/5c0056670bce-b54b65d0-backup.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\foo\\.hg\\strip-backup/1d8f701c7b35-cf7be322-backup.hg\'\n+ warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 204, in abort\n+ return abortstate.abortfunc(ui, repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2174, in hgaborthistedit\n+ _aborthistedit(ui, repo, state, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2152, in _aborthistedit\n+ cleanupnode(ui, repo, tmpnodes, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2606, in cleanupnode\n+ repair.strip(ui, repo, roots, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n Test when `backup-bundle` config option is not enabled\n Enable config option:\n@@ -71,10 +128,9 @@\n > roll 80d23dfa866d 2 three\n > edit 7d5187087c79 3 four\n > EOF\n- merging file\n- Editing (7d5187087c79), you may commit or record as needed now.\n- (hg histedit --continue to resume)\n- [240]\n+ abort: cannot edit changeset with children\n+ [10]\n \n $ hg abort\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: no operation in progress\n+ [20]\n', 2523, 2525, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-no-backup.t#abortflag
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-no-backup.t\n+++ c:/hgdev/src/tests/test-histedit-no-backup.t#abortflag.err\n@@ -56,7 +56,64 @@\n $ hg abort\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n saved backup bundle to $TESTTMP/foo/.hg/strip-backup/1d8f701c7b35-cf7be322-backup.hg\n- saved backup bundle to $TESTTMP/foo/.hg/strip-backup/5c0056670bce-b54b65d0-backup.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\foo\\.hg\\strip-backup/1d8f701c7b35-cf7be322-backup.hg\'\n+ warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 204, in abort\n+ return abortstate.abortfunc(ui, repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2174, in hgaborthistedit\n+ _aborthistedit(ui, repo, state, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2152, in _aborthistedit\n+ cleanupnode(ui, repo, tmpnodes, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2606, in cleanupnode\n+ repair.strip(ui, repo, roots, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n Test when `backup-bundle` config option is not enabled\n Enable config option:\n@@ -71,10 +128,9 @@\n > roll 80d23dfa866d 2 three\n > edit 7d5187087c79 3 four\n > EOF\n- merging file\n- Editing (7d5187087c79), you may commit or record as needed now.\n- (hg histedit --continue to resume)\n- [240]\n+ abort: cannot edit changeset with children\n+ [10]\n \n $ hg abort\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: no operation in progress\n+ [20]\n', 2520, 2522, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-no-change.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-no-change.t\n+++ c:/hgdev/src/tests/test-histedit-no-change.t.err\n@@ -95,6 +95,74 @@\n (hg histedit --continue to resume)\n $ continueediting true "(leaving commit message unaltered)"\n % finalize changeset editing (leaving commit message unaltered)\n+ strip failed, backup bundle stored in \'$TESTTMP\\r1\\.hg\\strip-backup/e860deea161a-fa46228d-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r1\\.hg\\strip-backup/e860deea161a-3b7c8dde-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r1\\.hg\\strip-backup/e860deea161a-3b7c8dde-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n \n check state of working copy\n@@ -103,10 +171,14 @@\n \n $ graphlog "log after history editing"\n % log after history editing\n- @ 5 794fe033d0a030f8df77c5de945fca35c9181c30 "f"\n- |\n- o 4 04d2fab980779f332dec458cc944f28de8b43435 "e"\n- |\n+ @ 7 794fe033d0a030f8df77c5de945fca35c9181c30 "f"\n+ |\n+ o 6 04d2fab980779f332dec458cc944f28de8b43435 "e"\n+ |\n+ | o 5 652413bf663ef2a641cab26574e46d5f5a64a55a "f"\n+ | |\n+ | o 4 e860deea161a2f77de56603b340ebbb4536308ae "e"\n+ |/\n o 3 055a42cdd88768532f9cf79daa407fc8d138de9b "d"\n |\n o 2 177f92b773850b59254aa5e923436f921b55483b "c"\n@@ -184,6 +256,65 @@\n hist: 2 remaining (histedit --continue)\n \n $ hg histedit --abort 2>&1 | fixbundle\n+ strip failed, backup bundle stored in \'$TESTTMP\\r2\\.hg\\strip-backup/e5ae3ca2f1ff-a67eeb70-backup.hg\'\n+ warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2010, in _histedit\n+ _aborthistedit(ui, repo, state, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2152, in _aborthistedit\n+ cleanupnode(ui, repo, tmpnodes, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2606, in cleanupnode\n+ repair.strip(ui, repo, roots, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n modified files should survive the abort when we\'ve moved away already\n $ hg st\n@@ -192,12 +323,14 @@\n \n $ graphlog "log after abort"\n % log after abort\n- o 5 652413bf663ef2a641cab26574e46d5f5a64a55a "f"\n- |\n- o 4 e860deea161a2f77de56603b340ebbb4536308ae "e"\n- |\n- o 3 055a42cdd88768532f9cf79daa407fc8d138de9b "d"\n- |\n+ o 6 e5ae3ca2f1ffdbd89ec41ebc273a231f7c3022f2 "d"\n+ |\n+ | o 5 652413bf663ef2a641cab26574e46d5f5a64a55a "f"\n+ | |\n+ | o 4 e860deea161a2f77de56603b340ebbb4536308ae "e"\n+ | |\n+ | o 3 055a42cdd88768532f9cf79daa407fc8d138de9b "d"\n+ |/\n o 2 177f92b773850b59254aa5e923436f921b55483b "c"\n |\n o 1 d2ae7f538514cd87c17547b0de4cea71fe1af9fb "b"\n@@ -206,13 +339,18 @@\n \n aborting and not changing files can skip mentioning updating (no) files\n $ hg up\n- 5 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 3 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ updated to "e5ae3ca2f1ff: d"\n+ 1 other heads for branch "default"\n $ hg commit --close-branch -m \'closebranch\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ startediting 1 1 "(not changing anything)" # edit the 3rd of 3 changesets\n % start editing the history (not changing anything)\n- | edit 292aec348d9e 6 closebranch\n- Editing (292aec348d9e), you may commit or record as needed now.\n- (hg histedit --continue to resume)\n+ abort: uncommitted changes\n $ hg histedit --abort\n+ abort: no histedit in progress\n+ [20]\n \n $ cd ..\n', 2538, 2540, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-non-commute-abort.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-non-commute-abort.t\n+++ c:/hgdev/src/tests/test-histedit-non-commute-abort.t.err\n@@ -105,27 +105,92 @@\n abort the edit (should clear out merge state)\n $ hg histedit --abort 2>&1 | fixbundle\n 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ strip failed, backup bundle stored in \'$TESTTMP\\r\\.hg\\strip-backup/8f7551c7e4a2-f4477a06-backup.hg\'\n+ warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2010, in _histedit\n+ _aborthistedit(ui, repo, state, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2152, in _aborthistedit\n+ cleanupnode(ui, repo, tmpnodes, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2606, in cleanupnode\n+ repair.strip(ui, repo, roots, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n $ hg debugmergestate\n no merge state found\n \n log after abort\n $ hg resolve -l\n $ hg log --graph\n- @ changeset: 6:bfa474341cc9\n+ o changeset: 7:8f7551c7e4a2\n | tag: tip\n+ | parent: 3:055a42cdd887\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: does not commute with e\n |\n- o changeset: 5:652413bf663e\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: f\n- |\n- o changeset: 4:e860deea161a\n- | user: test\n- | date: Thu Jan 01 00:00:00 1970 +0000\n- | summary: e\n+ | @ changeset: 6:bfa474341cc9\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: does not commute with e\n+ | |\n+ | o changeset: 5:652413bf663e\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 4:e860deea161a\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: e\n |\n o changeset: 3:055a42cdd887\n | user: test\n@@ -154,20 +219,22 @@\n \n $ hg rm c\n $ hg ci -m \'remove c\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ echo collision > c\n \n $ hg histedit e860deea161a\n- c: untracked file differs\n- abort: untracked files in working directory conflict with files in 055a42cdd887\n- [255]\n+ abort: uncommitted changes\n+ [20]\n \n We should have detected the collision early enough we\'re not in a\n histedit state, and p1 is unchanged.\n \n $ hg log -r \'p1()\' -T\'{node}\\n\'\n- 1b0954ff00fccb15a37b679e4a35e9b01dfe685e\n+ bfa474341cc9e9b71ecf16560d82785cfc63094e\n $ hg status --config ui.tweakdefaults=yes\n- ? c\n+ R c\n ? e.orig\n \n $ cd ..\n', 2426, 2428, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-non-commute.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-non-commute.t\n+++ c:/hgdev/src/tests/test-histedit-non-commute.t.err\n@@ -178,19 +178,103 @@\n continue: hg histedit --continue\n $ hg histedit --continue 2>&1 | fixbundle\n 7b4e2f4b7bcd: skipping changeset (no changes)\n+ strip failed, backup bundle stored in \'$TESTTMP\\r1\\.hg\\strip-backup/7b4e2f4b7bcd-6e038c17-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r1\\.hg\\strip-backup/7b4e2f4b7bcd-7f94a8f2-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r1\\.hg\\strip-backup/7b4e2f4b7bcd-7f94a8f2-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n log after edit\n $ hg log --graph\n- @ changeset: 6:7efe1373e4bc\n+ @ changeset: 9:7efe1373e4bc\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: f\n |\n- o changeset: 5:e334d87a1e55\n+ o changeset: 8:e334d87a1e55\n+ | parent: 4:00f1c5383965\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: does not commute with e\n+ |\n+ | o changeset: 7:39522b764e3d\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: does not commute with e\n+ | |\n+ | o changeset: 6:500cac37a696\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 5:7b4e2f4b7bcd\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: e\n |\n o changeset: 4:00f1c5383965\n | user: test\n@@ -260,19 +344,103 @@\n continue: hg histedit --continue\n $ hg histedit --continue 2>&1 | fixbundle\n 7b4e2f4b7bcd: skipping changeset (no changes)\n+ strip failed, backup bundle stored in \'$TESTTMP\\r2\\.hg\\strip-backup/7b4e2f4b7bcd-6e038c17-histedit.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\r2\\.hg\\strip-backup/7b4e2f4b7bcd-7f94a8f2-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\r2\\.hg\\strip-backup/7b4e2f4b7bcd-7f94a8f2-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1884, in histedit\n+ return _texthistedit(ui, repo, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 1892, in _texthistedit\n+ _histedit(ui, repo, state, freeargs, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2017, in _histedit\n+ _finishhistedit(ui, repo, state, fm)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2102, in _finishhistedit\n+ scmutil.cleanupnodes(repo, mapping, b\'histedit\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n \n post message fix\n $ hg log --graph\n- @ changeset: 6:7efe1373e4bc\n+ @ changeset: 9:7efe1373e4bc\n | tag: tip\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: f\n |\n- o changeset: 5:e334d87a1e55\n+ o changeset: 8:e334d87a1e55\n+ | parent: 4:00f1c5383965\n | user: test\n | date: Thu Jan 01 00:00:00 1970 +0000\n | summary: does not commute with e\n+ |\n+ | o changeset: 7:39522b764e3d\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: does not commute with e\n+ | |\n+ | o changeset: 6:500cac37a696\n+ | | user: test\n+ | | date: Thu Jan 01 00:00:00 1970 +0000\n+ | | summary: f\n+ | |\n+ | o changeset: 5:7b4e2f4b7bcd\n+ |/ user: test\n+ | date: Thu Jan 01 00:00:00 1970 +0000\n+ | summary: e\n |\n o changeset: 4:00f1c5383965\n | user: test\n@@ -302,5 +470,7 @@\n \n An invalid editor shouldn\'t leave the user in a broken state:\n $ EDITOR=totally-not-a-thing-unsensible-editor-value hg histedit 4\n+ abort: history edit already in progress, try --continue or --abort\n+ [255]\n \n $ cd ..\n', 2508, 2510, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-obsolete.t#abortcommand
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-obsolete.t\n+++ c:/hgdev/src/tests/test-histedit-obsolete.t#abortcommand.err\n@@ -80,12 +80,73 @@\n $ hg commit --amend -X . -m XXXXXX\n $ hg commit --amend -X . -m b2\n $ hg --hidden --config extensions.strip= strip \'desc(XXXXXX)\' --no-backup\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\boo\\.hg\\strip-backup/2ca853e48edb-78298152-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\boo\\.hg\\strip-backup/2ca853e48edb-78298152-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, rebase, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg histedit --continue\n- $ hg log -G\n- @ 8:273c1f3b8626 c\n- |\n- o 7:aba7da937030 b2\n- |\n+ note: commit message saved in .hg/last-message.txt\n+ note: use \'hg commit --logfile .hg/last-message.txt --edit\' to reuse it\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg log -G\n+ @ 8:aba7da937030 b2\n+ |\n+ | o 5:46abc7c4d873 b\n+ | |\n+ | o 4:49d44ab2be1b c\n+ |/\n o 0:cb9a9f314b8b a\n \n $ hg debugobsolete\n@@ -94,8 +155,6 @@\n 114f4176969ef342759a8a57e6bccefc4234829b 49d44ab2be1b67a79127568a67c9c99430633b48 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'12\', \'operation\': \'histedit\', \'user\': \'test\'}\n 76f72745eac0643d16530e56e2f86e36e40631f1 2ca853e48edbd6453a0674dc0fe28a0974c51b9c 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'1\', \'operation\': \'amend\', \'user\': \'test\'}\n 2ca853e48edbd6453a0674dc0fe28a0974c51b9c aba7da93703075eec9fb1dbaf143ff2bc1c49d46 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'1\', \'operation\': \'amend\', \'user\': \'test\'}\n- 49d44ab2be1b67a79127568a67c9c99430633b48 273c1f3b86267ed3ec684bb13af1fa4d6ba56e02 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'4\', \'operation\': \'histedit\', \'user\': \'test\'}\n- 46abc7c4d8738e8563e577f7889e1b6db3da4199 aba7da93703075eec9fb1dbaf143ff2bc1c49d46 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'5\', \'operation\': \'histedit\', \'user\': \'test\'}\n $ cd ..\n \n Base setup for the rest of the testing\n@@ -540,18 +599,86 @@\n $ hg abort\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n saved backup bundle to $TESTTMP/abort/.hg/strip-backup/4dc06258baa6-dff4ef05-backup.hg\n-\n- $ hg log -G\n- @ 18:ee118ab9fa44 (secret) k\n- |\n- o 17:3a6c53ee7f3d (secret) j\n- |\n- o 16:b605fb7503f2 (secret) i\n- |\n- o 15:7395e1ff83bd (draft) h\n- |\n- o 14:6b70183d2492 (draft) g\n- |\n+ strip failed, backup bundle stored in \'$TESTTMP\\abort\\.hg\\strip-backup/4dc06258baa6-dff4ef05-backup.hg\'\n+ warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 204, in abort\n+ return abortstate.abortfunc(ui, repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2174, in hgaborthistedit\n+ _aborthistedit(ui, repo, state, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2152, in _aborthistedit\n+ cleanupnode(ui, repo, tmpnodes, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2606, in cleanupnode\n+ repair.strip(ui, repo, roots, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+\n+ $ hg log -G\n+ o 23:7224d3952be1 (secret) i\n+ |\n+ | o 22:01665f5060da (secret) fold-temp-revision 3a6c53ee7f3d\n+ | |\n+ | o 21:31747692a644 (secret) i\n+ |/\n+ o 20:9985cd4f21fa (draft) g\n+ |\n+ o 19:4dc06258baa6 (draft) h\n+ |\n+ | @ 18:ee118ab9fa44 (secret) k\n+ | |\n+ | o 17:3a6c53ee7f3d (secret) j\n+ | |\n+ | o 16:b605fb7503f2 (secret) i\n+ | |\n+ | o 15:7395e1ff83bd (draft) h\n+ | |\n+ | o 14:6b70183d2492 (draft) g\n+ |/\n o 13:b449568bf7fc (draft) f\n |\n o 12:40db8afa467b (public) c\n@@ -566,26 +693,41 @@\n > pick 3a6c53ee7f3d 17 j\n > edit ee118ab9fa44 18 k\n > EOF\n- Editing (ee118ab9fa44), you may commit or record as needed now.\n- (hg histedit --continue to resume)\n- [240]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg histedit --continue --config experimental.evolution.track-operation=1\n- $ hg log -G\n- @ 23:175d6b286a22 (secret) k\n- |\n- o 22:44ca09d59ae4 (secret) j\n- |\n- o 21:31747692a644 (secret) i\n- |\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg log -G\n+ o 23:7224d3952be1 (secret) i\n+ |\n+ | o 22:01665f5060da (secret) fold-temp-revision 3a6c53ee7f3d\n+ | |\n+ | o 21:31747692a644 (secret) i\n+ |/\n o 20:9985cd4f21fa (draft) g\n |\n o 19:4dc06258baa6 (draft) h\n |\n- o 13:b449568bf7fc (draft) f\n+ | o 18:ee118ab9fa44 (secret) k\n+ | |\n+ | o 17:3a6c53ee7f3d (secret) j\n+ | |\n+ | o 16:b605fb7503f2 (secret) i\n+ | |\n+ | o 15:7395e1ff83bd (draft) h\n+ | |\n+ | o 14:6b70183d2492 (draft) g\n+ |/\n+ @ 13:b449568bf7fc (draft) f\n |\n o 12:40db8afa467b (public) c\n |\n o 0:cb9a9f314b8b (public) a\n \n $ hg debugobsolete --rev .\n- ee118ab9fa44ebb86be85996548b5517a39e5093 175d6b286a224c23f192e79a581ce83131a53fa2 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'4\', \'operation\': \'histedit\', \'user\': \'test\'}\n+ 652413bf663ef2a641cab26574e46d5f5a64a55a cacdfd884a9321ec4e1de275ef3949fa953a1f83 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'4\', \'operation\': \'histedit\', \'user\': \'test\'}\n+ c13eb81022caa686a369223fe7f926bc4f7db576 b449568bf7fc258116143e6ea0a9b2c5dfbe19a7 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'4\', \'operation\': \'rebase\', \'user\': \'test\'}\n+ cacdfd884a9321ec4e1de275ef3949fa953a1f83 c13eb81022caa686a369223fe7f926bc4f7db576 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'4\', \'operation\': \'histedit\', \'user\': \'test\'}\n', 2442, 2444, 'truncated \\uXXXX escape') decoding diff, sorry
test-histedit-obsolete.t#abortflag
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-histedit-obsolete.t\n+++ c:/hgdev/src/tests/test-histedit-obsolete.t#abortflag.err\n@@ -80,12 +80,73 @@\n $ hg commit --amend -X . -m XXXXXX\n $ hg commit --amend -X . -m b2\n $ hg --hidden --config extensions.strip= strip \'desc(XXXXXX)\' --no-backup\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\boo\\.hg\\strip-backup/2ca853e48edb-78298152-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\boo\\.hg\\strip-backup/2ca853e48edb-78298152-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, rebase, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg histedit --continue\n- $ hg log -G\n- @ 8:273c1f3b8626 c\n- |\n- o 7:aba7da937030 b2\n- |\n+ note: commit message saved in .hg/last-message.txt\n+ note: use \'hg commit --logfile .hg/last-message.txt --edit\' to reuse it\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg log -G\n+ @ 8:aba7da937030 b2\n+ |\n+ | o 5:46abc7c4d873 b\n+ | |\n+ | o 4:49d44ab2be1b c\n+ |/\n o 0:cb9a9f314b8b a\n \n $ hg debugobsolete\n@@ -94,8 +155,6 @@\n 114f4176969ef342759a8a57e6bccefc4234829b 49d44ab2be1b67a79127568a67c9c99430633b48 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'12\', \'operation\': \'histedit\', \'user\': \'test\'}\n 76f72745eac0643d16530e56e2f86e36e40631f1 2ca853e48edbd6453a0674dc0fe28a0974c51b9c 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'1\', \'operation\': \'amend\', \'user\': \'test\'}\n 2ca853e48edbd6453a0674dc0fe28a0974c51b9c aba7da93703075eec9fb1dbaf143ff2bc1c49d46 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'1\', \'operation\': \'amend\', \'user\': \'test\'}\n- 49d44ab2be1b67a79127568a67c9c99430633b48 273c1f3b86267ed3ec684bb13af1fa4d6ba56e02 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'4\', \'operation\': \'histedit\', \'user\': \'test\'}\n- 46abc7c4d8738e8563e577f7889e1b6db3da4199 aba7da93703075eec9fb1dbaf143ff2bc1c49d46 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'5\', \'operation\': \'histedit\', \'user\': \'test\'}\n $ cd ..\n \n Base setup for the rest of the testing\n@@ -540,18 +599,86 @@\n $ hg abort\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n saved backup bundle to $TESTTMP/abort/.hg/strip-backup/4dc06258baa6-dff4ef05-backup.hg\n-\n- $ hg log -G\n- @ 18:ee118ab9fa44 (secret) k\n- |\n- o 17:3a6c53ee7f3d (secret) j\n- |\n- o 16:b605fb7503f2 (secret) i\n- |\n- o 15:7395e1ff83bd (draft) h\n- |\n- o 14:6b70183d2492 (draft) g\n- |\n+ strip failed, backup bundle stored in \'$TESTTMP\\abort\\.hg\\strip-backup/4dc06258baa6-dff4ef05-backup.hg\'\n+ warning: encountered an exception during histedit --abort; the repository may not have been completely cleaned up\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: histedit, rebase\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 204, in abort\n+ return abortstate.abortfunc(ui, repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2174, in hgaborthistedit\n+ _aborthistedit(ui, repo, state, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2152, in _aborthistedit\n+ cleanupnode(ui, repo, tmpnodes, nobackup=nobackup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2606, in cleanupnode\n+ repair.strip(ui, repo, roots, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\extensions.py", line 512, in closure\n+ return func(*(args + a), **kw)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\histedit.py", line 2624, in stripwrapper\n+ return orig(ui, repo, nodelist, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+\n+ $ hg log -G\n+ o 23:7224d3952be1 (secret) i\n+ |\n+ | o 22:01665f5060da (secret) fold-temp-revision 3a6c53ee7f3d\n+ | |\n+ | o 21:31747692a644 (secret) i\n+ |/\n+ o 20:9985cd4f21fa (draft) g\n+ |\n+ o 19:4dc06258baa6 (draft) h\n+ |\n+ | @ 18:ee118ab9fa44 (secret) k\n+ | |\n+ | o 17:3a6c53ee7f3d (secret) j\n+ | |\n+ | o 16:b605fb7503f2 (secret) i\n+ | |\n+ | o 15:7395e1ff83bd (draft) h\n+ | |\n+ | o 14:6b70183d2492 (draft) g\n+ |/\n o 13:b449568bf7fc (draft) f\n |\n o 12:40db8afa467b (public) c\n@@ -566,26 +693,41 @@\n > pick 3a6c53ee7f3d 17 j\n > edit ee118ab9fa44 18 k\n > EOF\n- Editing (ee118ab9fa44), you may commit or record as needed now.\n- (hg histedit --continue to resume)\n- [240]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg histedit --continue --config experimental.evolution.track-operation=1\n- $ hg log -G\n- @ 23:175d6b286a22 (secret) k\n- |\n- o 22:44ca09d59ae4 (secret) j\n- |\n- o 21:31747692a644 (secret) i\n- |\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg log -G\n+ o 23:7224d3952be1 (secret) i\n+ |\n+ | o 22:01665f5060da (secret) fold-temp-revision 3a6c53ee7f3d\n+ | |\n+ | o 21:31747692a644 (secret) i\n+ |/\n o 20:9985cd4f21fa (draft) g\n |\n o 19:4dc06258baa6 (draft) h\n |\n- o 13:b449568bf7fc (draft) f\n+ | o 18:ee118ab9fa44 (secret) k\n+ | |\n+ | o 17:3a6c53ee7f3d (secret) j\n+ | |\n+ | o 16:b605fb7503f2 (secret) i\n+ | |\n+ | o 15:7395e1ff83bd (draft) h\n+ | |\n+ | o 14:6b70183d2492 (draft) g\n+ |/\n+ @ 13:b449568bf7fc (draft) f\n |\n o 12:40db8afa467b (public) c\n |\n o 0:cb9a9f314b8b (public) a\n \n $ hg debugobsolete --rev .\n- ee118ab9fa44ebb86be85996548b5517a39e5093 175d6b286a224c23f192e79a581ce83131a53fa2 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'4\', \'operation\': \'histedit\', \'user\': \'test\'}\n+ 652413bf663ef2a641cab26574e46d5f5a64a55a cacdfd884a9321ec4e1de275ef3949fa953a1f83 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'4\', \'operation\': \'histedit\', \'user\': \'test\'}\n+ c13eb81022caa686a369223fe7f926bc4f7db576 b449568bf7fc258116143e6ea0a9b2c5dfbe19a7 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'4\', \'operation\': \'rebase\', \'user\': \'test\'}\n+ cacdfd884a9321ec4e1de275ef3949fa953a1f83 c13eb81022caa686a369223fe7f926bc4f7db576 0 (Thu Jan 01 00:00:00 1970 +0000) {\'ef1\': \'4\', \'operation\': \'histedit\', \'user\': \'test\'}\n', 2439, 2441, 'truncated \\uXXXX escape') decoding diff, sorry
test-hook.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-hook.t\n+++ c:/hgdev/src/tests/test-hook.t.err\n@@ -32,49 +32,13 @@\n $ echo a > a\n $ hg add a\n $ hg commit -m a\n- precommit hook: HG_HOOKNAME=precommit\n- HG_HOOKTYPE=precommit\n- HG_PARENT1=0000000000000000000000000000000000000000\n- \n- pretxnopen hook: HG_HOOKNAME=pretxnopen\n- HG_HOOKTYPE=pretxnopen\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- pretxncommit hook: HG_HOOKNAME=pretxncommit\n- HG_HOOKTYPE=pretxncommit\n- HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b\n- HG_PARENT1=0000000000000000000000000000000000000000\n- HG_PENDING=$TESTTMP/a\n- \n- 0:cb9a9f314b8b\n- pretxnclose hook: HG_HOOKNAME=pretxnclose\n- HG_HOOKTYPE=pretxnclose\n- HG_PENDING=$TESTTMP/a\n- HG_PHASES_MOVED=1\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- txnclose hook: HG_HOOKNAME=txnclose\n- HG_HOOKTYPE=txnclose\n- HG_PHASES_MOVED=1\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- commit hook: HG_HOOKNAME=commit\n- HG_HOOKTYPE=commit\n- HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b\n- HG_PARENT1=0000000000000000000000000000000000000000\n- \n- commit.b hook: HG_HOOKNAME=commit.b\n- HG_HOOKTYPE=commit\n- HG_NODE=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b\n- HG_PARENT1=0000000000000000000000000000000000000000\n- \n+ /usr/bin/env: python3: $ENOENT$\n+ abort: precommit hook exited with status 127\n+ [255]\n \n $ hg clone . ../b\n updating to branch default\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ cd ../b\n \n changegroup hooks can see env vars\n@@ -91,214 +55,40 @@\n $ cd ../a\n $ echo b >> a\n $ hg commit -m a1 -d "1 0"\n- precommit hook: HG_HOOKNAME=precommit\n- HG_HOOKTYPE=precommit\n- HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b\n- \n- pretxnopen hook: HG_HOOKNAME=pretxnopen\n- HG_HOOKTYPE=pretxnopen\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- pretxncommit hook: HG_HOOKNAME=pretxncommit\n- HG_HOOKTYPE=pretxncommit\n- HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd\n- HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b\n- HG_PENDING=$TESTTMP/a\n- \n- 1:ab228980c14d\n- pretxnclose hook: HG_HOOKNAME=pretxnclose\n- HG_HOOKTYPE=pretxnclose\n- HG_PENDING=$TESTTMP/a\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- txnclose hook: HG_HOOKNAME=txnclose\n- HG_HOOKTYPE=txnclose\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- commit hook: HG_HOOKNAME=commit\n- HG_HOOKTYPE=commit\n- HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd\n- HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b\n- \n- commit.b hook: HG_HOOKNAME=commit.b\n- HG_HOOKTYPE=commit\n- HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd\n- HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b\n- \n+ /usr/bin/env: python3: $ENOENT$\n+ abort: precommit hook exited with status 127\n+ [255]\n $ hg update -C 0\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ echo b > b\n $ hg add b\n $ hg commit -m b -d \'1 0\'\n- precommit hook: HG_HOOKNAME=precommit\n- HG_HOOKTYPE=precommit\n- HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b\n- \n- pretxnopen hook: HG_HOOKNAME=pretxnopen\n- HG_HOOKTYPE=pretxnopen\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- pretxncommit hook: HG_HOOKNAME=pretxncommit\n- HG_HOOKTYPE=pretxncommit\n- HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2\n- HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b\n- HG_PENDING=$TESTTMP/a\n- \n- 2:ee9deb46ab31\n- pretxnclose hook: HG_HOOKNAME=pretxnclose\n- HG_HOOKTYPE=pretxnclose\n- HG_PENDING=$TESTTMP/a\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- created new head\n- txnclose hook: HG_HOOKNAME=txnclose\n- HG_HOOKTYPE=txnclose\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- commit hook: HG_HOOKNAME=commit\n- HG_HOOKTYPE=commit\n- HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2\n- HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b\n- \n- commit.b hook: HG_HOOKNAME=commit.b\n- HG_HOOKTYPE=commit\n- HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2\n- HG_PARENT1=cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b\n- \n+ /usr/bin/env: python3: $ENOENT$\n+ abort: precommit hook exited with status 127\n+ [255]\n $ hg merge 1\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- (branch merge, don\'t forget to commit)\n+ abort: unknown revision \'1\'\n+ [255]\n $ hg commit -m merge -d \'2 0\'\n- precommit hook: HG_HOOKNAME=precommit\n- HG_HOOKTYPE=precommit\n- HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2\n- HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd\n- \n- pretxnopen hook: HG_HOOKNAME=pretxnopen\n- HG_HOOKTYPE=pretxnopen\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- pretxncommit hook: HG_HOOKNAME=pretxncommit\n- HG_HOOKTYPE=pretxncommit\n- HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2\n- HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2\n- HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd\n- HG_PENDING=$TESTTMP/a\n- \n- 3:07f3376c1e65\n- pretxnclose hook: HG_HOOKNAME=pretxnclose\n- HG_HOOKTYPE=pretxnclose\n- HG_PENDING=$TESTTMP/a\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- txnclose hook: HG_HOOKNAME=txnclose\n- HG_HOOKTYPE=txnclose\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- commit hook: HG_HOOKNAME=commit\n- HG_HOOKTYPE=commit\n- HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2\n- HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2\n- HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd\n- \n- commit.b hook: HG_HOOKNAME=commit.b\n- HG_HOOKTYPE=commit\n- HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2\n- HG_PARENT1=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2\n- HG_PARENT2=ab228980c14deea8b9555d91c9581127383e40fd\n- \n+ /usr/bin/env: python3: $ENOENT$\n+ abort: precommit hook exited with status 127\n+ [255]\n \n test generic hooks\n \n $ hg id\n- pre-identify hook: HG_ARGS=id\n- HG_HOOKNAME=pre-identify\n- HG_HOOKTYPE=pre-identify\n- HG_OPTS={\'bookmarks\': None, \'branch\': None, \'id\': None, \'insecure\': None, \'num\': None, \'remotecmd\': \'\', \'rev\': \'\', \'ssh\': \'\', \'tags\': None, \'template\': \'\'}\n- HG_PATS=[]\n- \n- abort: pre-identify hook exited with status 1\n+ /usr/bin/env: python3: $ENOENT$\n+ abort: pre-identify hook exited with status 127\n [255]\n $ hg cat b\n- pre-cat hook: HG_ARGS=cat b\n- HG_HOOKNAME=pre-cat\n- HG_HOOKTYPE=pre-cat\n- HG_OPTS={\'decode\': None, \'exclude\': [], \'include\': [], \'output\': \'\', \'rev\': \'\', \'template\': \'\'}\n- HG_PATS=[\'b\']\n- \n- b\n- post-cat hook: HG_ARGS=cat b\n- HG_HOOKNAME=post-cat\n- HG_HOOKTYPE=post-cat\n- HG_OPTS={\'decode\': None, \'exclude\': [], \'include\': [], \'output\': \'\', \'rev\': \'\', \'template\': \'\'}\n- HG_PATS=[\'b\']\n- HG_RESULT=0\n- \n+ /usr/bin/env: python3: $ENOENT$\n+ abort: pre-cat hook exited with status 127\n+ [255]\n \n $ cd ../b\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- prechangegroup hook: HG_HOOKNAME=prechangegroup\n- HG_HOOKTYPE=prechangegroup\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/a (glob)\n- HG_URL=file:$TESTTMP/a\n- \n- adding changesets\n- adding manifests\n- adding file changes\n- added 3 changesets with 2 changes to 2 files\n- new changesets ab228980c14d:07f3376c1e65\n- changegroup hook: HG_HOOKNAME=changegroup\n- HG_HOOKTYPE=changegroup\n- HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd\n- HG_NODE_LAST=07f3376c1e655977439df2a814e3cc14b27abac2\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/a (glob)\n- HG_URL=file:$TESTTMP/a\n- \n- incoming hook: HG_HOOKNAME=incoming\n- HG_HOOKTYPE=incoming\n- HG_NODE=ab228980c14deea8b9555d91c9581127383e40fd\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/a (glob)\n- HG_URL=file:$TESTTMP/a\n- \n- incoming hook: HG_HOOKNAME=incoming\n- HG_HOOKTYPE=incoming\n- HG_NODE=ee9deb46ab31e4cc3310f3cf0c3d668e4d8fffc2\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/a (glob)\n- HG_URL=file:$TESTTMP/a\n- \n- incoming hook: HG_HOOKNAME=incoming\n- HG_HOOKTYPE=incoming\n- HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/a (glob)\n- HG_URL=file:$TESTTMP/a\n- \n- (run \'hg update\' to get a working copy)\n+ no changes found\n \n tag hooks can see env vars\n \n@@ -308,68 +98,11 @@\n > tag = sh -c "HG_PARENT1= HG_PARENT2= printenv.py --line tag"\n > EOF\n $ hg tag -d \'3 0\' a\n- pretag hook: HG_HOOKNAME=pretag\n- HG_HOOKTYPE=pretag\n- HG_LOCAL=0\n- HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2\n- HG_TAG=a\n- \n- precommit hook: HG_HOOKNAME=precommit\n- HG_HOOKTYPE=precommit\n- HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2\n- \n- pretxnopen hook: HG_HOOKNAME=pretxnopen\n- HG_HOOKTYPE=pretxnopen\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- pretxncommit hook: HG_HOOKNAME=pretxncommit\n- HG_HOOKTYPE=pretxncommit\n- HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2\n- HG_PENDING=$TESTTMP/a\n- \n- 4:539e4b31b6dc\n- pretxnclose hook: HG_HOOKNAME=pretxnclose\n- HG_HOOKTYPE=pretxnclose\n- HG_PENDING=$TESTTMP/a\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- tag hook: HG_HOOKNAME=tag\n- HG_HOOKTYPE=tag\n- HG_LOCAL=0\n- HG_NODE=07f3376c1e655977439df2a814e3cc14b27abac2\n- HG_TAG=a\n- \n- txnclose hook: HG_HOOKNAME=txnclose\n- HG_HOOKTYPE=txnclose\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- commit hook: HG_HOOKNAME=commit\n- HG_HOOKTYPE=commit\n- HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2\n- \n- commit.b hook: HG_HOOKNAME=commit.b\n- HG_HOOKTYPE=commit\n- HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_PARENT1=07f3376c1e655977439df2a814e3cc14b27abac2\n- \n+ abort: cannot tag null revision\n+ [10]\n $ hg tag -l la\n- pretag hook: HG_HOOKNAME=pretag\n- HG_HOOKTYPE=pretag\n- HG_LOCAL=1\n- HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_TAG=la\n- \n- tag hook: HG_HOOKNAME=tag\n- HG_HOOKTYPE=tag\n- HG_LOCAL=1\n- HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_TAG=la\n- \n+ abort: cannot tag null revision\n+ [10]\n \n pretag hook can forbid tagging\n \n@@ -377,35 +110,11 @@\n > pretag.forbid = sh -c "printenv.py --line pretag.forbid 1"\n > EOF\n $ hg tag -d \'4 0\' fa\n- pretag hook: HG_HOOKNAME=pretag\n- HG_HOOKTYPE=pretag\n- HG_LOCAL=0\n- HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_TAG=fa\n- \n- pretag.forbid hook: HG_HOOKNAME=pretag.forbid\n- HG_HOOKTYPE=pretag\n- HG_LOCAL=0\n- HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_TAG=fa\n- \n- abort: pretag.forbid hook exited with status 1\n- [255]\n+ abort: cannot tag null revision\n+ [10]\n $ hg tag -l fla\n- pretag hook: HG_HOOKNAME=pretag\n- HG_HOOKTYPE=pretag\n- HG_LOCAL=1\n- HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_TAG=fla\n- \n- pretag.forbid hook: HG_HOOKNAME=pretag.forbid\n- HG_HOOKTYPE=pretag\n- HG_LOCAL=1\n- HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_TAG=fla\n- \n- abort: pretag.forbid hook exited with status 1\n- [255]\n+ abort: cannot tag null revision\n+ [10]\n \n pretxncommit hook can see changeset, can roll back txn, changeset no\n more there after\n@@ -417,57 +126,19 @@\n $ echo z > z\n $ hg add z\n $ hg -q tip\n- 4:539e4b31b6dc\n+ -1:000000000000\n $ hg commit -m \'fail\' -d \'4 0\'\n- precommit hook: HG_HOOKNAME=precommit\n- HG_HOOKTYPE=precommit\n- HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- \n- pretxnopen hook: HG_HOOKNAME=pretxnopen\n- HG_HOOKTYPE=pretxnopen\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- pretxncommit hook: HG_HOOKNAME=pretxncommit\n- HG_HOOKTYPE=pretxncommit\n- HG_NODE=6f611f8018c10e827fee6bd2bc807f937e761567\n- HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_PENDING=$TESTTMP/a\n- \n- 5:6f611f8018c1\n- 5:6f611f8018c1\n- pretxncommit.forbid hook: HG_HOOKNAME=pretxncommit.forbid1\n- HG_HOOKTYPE=pretxncommit\n- HG_NODE=6f611f8018c10e827fee6bd2bc807f937e761567\n- HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_PENDING=$TESTTMP/a\n- \n- transaction abort!\n- txnabort Python hook: changes,txnid,txnname\n- txnabort hook: HG_HOOKNAME=txnabort.1\n- HG_HOOKTYPE=txnabort\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=commit\n- \n- rollback completed\n- abort: pretxncommit.forbid1 hook exited with status 1\n+ /usr/bin/env: python3: $ENOENT$\n+ abort: precommit hook exited with status 127\n [255]\n $ hg -q tip\n- 4:539e4b31b6dc\n+ -1:000000000000\n \n (Check that no \'changelog.i.a\' file were left behind)\n \n $ ls -1 .hg/store/\n- 00changelog.i\n- 00manifest.i\n- data\n fncache (repofncache !)\n- journal.phaseroots\n- phaseroots\n- undo\n undo.backup.fncache (repofncache !)\n- undo.backupfiles\n- undo.phaseroots\n \n \n precommit hook can prevent commit\n@@ -476,18 +147,11 @@\n > precommit.forbid = sh -c "printenv.py --line precommit.forbid 1"\n > EOF\n $ hg commit -m \'fail\' -d \'4 0\'\n- precommit hook: HG_HOOKNAME=precommit\n- HG_HOOKTYPE=precommit\n- HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- \n- precommit.forbid hook: HG_HOOKNAME=precommit.forbid\n- HG_HOOKTYPE=precommit\n- HG_PARENT1=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- \n- abort: precommit.forbid hook exited with status 1\n+ /usr/bin/env: python3: $ENOENT$\n+ abort: precommit hook exited with status 127\n [255]\n $ hg -q tip\n- 4:539e4b31b6dc\n+ -1:000000000000\n \n preupdate hook can prevent update\n \n@@ -495,11 +159,8 @@\n > preupdate = sh -c "printenv.py --line preupdate"\n > EOF\n $ hg update 1\n- preupdate hook: HG_HOOKNAME=preupdate\n- HG_HOOKTYPE=preupdate\n- HG_PARENT1=ab228980c14d\n- \n- 0 files updated, 0 files merged, 2 files removed, 0 files unresolved\n+ abort: unknown revision \'1\'\n+ [255]\n \n update hook\n \n@@ -507,16 +168,9 @@\n > update = sh -c "printenv.py --line update"\n > EOF\n $ hg update\n- preupdate hook: HG_HOOKNAME=preupdate\n- HG_HOOKTYPE=preupdate\n- HG_PARENT1=539e4b31b6dc\n- \n- update hook: HG_ERROR=0\n- HG_HOOKNAME=update\n- HG_HOOKTYPE=update\n- HG_PARENT1=539e4b31b6dc\n- \n- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ /usr/bin/env: python3: $ENOENT$\n+ abort: preupdate hook exited with status 127\n+ [255]\n \n pushkey hook\n \n@@ -527,46 +181,10 @@\n $ hg bookmark -r null foo\n $ hg push -B foo ../a\n pushing to ../a\n- searching for changes\n- no changes found\n- pretxnopen hook: HG_HOOKNAME=pretxnopen\n- HG_HOOKTYPE=pretxnopen\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=push\n- \n- pretxnclose hook: HG_BOOKMARK_MOVED=1\n- HG_BUNDLE2=1\n- HG_HOOKNAME=pretxnclose\n- HG_HOOKTYPE=pretxnclose\n- HG_PENDING=$TESTTMP/a\n- HG_SOURCE=push\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=push\n- HG_URL=file:$TESTTMP/a\n- \n- pushkey hook: HG_BUNDLE2=1\n- HG_HOOKNAME=pushkey\n- HG_HOOKTYPE=pushkey\n- HG_KEY=foo\n- HG_NAMESPACE=bookmarks\n- HG_NEW=0000000000000000000000000000000000000000\n- HG_PUSHKEYCOMPAT=1\n- HG_SOURCE=push\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=push\n- HG_URL=file:$TESTTMP/a\n- \n- txnclose hook: HG_BOOKMARK_MOVED=1\n- HG_BUNDLE2=1\n- HG_HOOKNAME=txnclose\n- HG_HOOKTYPE=txnclose\n- HG_SOURCE=push\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=push\n- HG_URL=file:$TESTTMP/a\n- \n- exporting bookmark foo\n- [1]\n+ no changes found\n+ /usr/bin/env: python3: $ENOENT$\n+ abort: pretxnopen hook exited with status 127\n+ [255]\n $ cd ../a\n \n listkeys hook\n@@ -575,34 +193,16 @@\n > listkeys = sh -c "printenv.py --line listkeys"\n > EOF\n $ hg bookmark -r null bar\n- pretxnopen hook: HG_HOOKNAME=pretxnopen\n- HG_HOOKTYPE=pretxnopen\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=bookmark\n- \n- pretxnclose hook: HG_BOOKMARK_MOVED=1\n- HG_HOOKNAME=pretxnclose\n- HG_HOOKTYPE=pretxnclose\n- HG_PENDING=$TESTTMP/a\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=bookmark\n- \n- txnclose hook: HG_BOOKMARK_MOVED=1\n- HG_HOOKNAME=txnclose\n- HG_HOOKTYPE=txnclose\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=bookmark\n- \n+ /usr/bin/env: python3: $ENOENT$\n+ abort: pretxnopen hook exited with status 127\n+ [255]\n $ cd ../b\n $ hg pull -B bar ../a\n pulling from ../a\n- listkeys hook: HG_HOOKNAME=listkeys\n- HG_HOOKTYPE=listkeys\n- HG_NAMESPACE=bookmarks\n- HG_VALUES={\'bar\': \'0000000000000000000000000000000000000000\', \'foo\': \'0000000000000000000000000000000000000000\'}\n- \n- no changes found\n- adding remote bookmark bar\n+ /usr/bin/env: python3: $ENOENT$\n+ warning: listkeys hook exited with status 127\n+ abort: remote bookmark bar not found!\n+ [10]\n $ cd ../a\n \n test that prepushkey can prevent incoming keys\n@@ -614,36 +214,13 @@\n $ hg bookmark -r null baz\n $ hg push -B baz ../a\n pushing to ../a\n- searching for changes\n- listkeys hook: HG_HOOKNAME=listkeys\n- HG_HOOKTYPE=listkeys\n- HG_NAMESPACE=phases\n- HG_VALUES={\'cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b\': \'1\', \'publishing\': \'True\'}\n- \n- listkeys hook: HG_HOOKNAME=listkeys\n- HG_HOOKTYPE=listkeys\n- HG_NAMESPACE=bookmarks\n- HG_VALUES={\'bar\': \'0000000000000000000000000000000000000000\', \'foo\': \'0000000000000000000000000000000000000000\'}\n- \n- no changes found\n- pretxnopen hook: HG_HOOKNAME=pretxnopen\n- HG_HOOKTYPE=pretxnopen\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=push\n- \n- prepushkey.forbid hook: HG_BUNDLE2=1\n- HG_HOOKNAME=prepushkey\n- HG_HOOKTYPE=prepushkey\n- HG_KEY=baz\n- HG_NAMESPACE=bookmarks\n- HG_NEW=0000000000000000000000000000000000000000\n- HG_PUSHKEYCOMPAT=1\n- HG_SOURCE=push\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=push\n- HG_URL=file:$TESTTMP/a\n- \n- abort: prepushkey hook exited with status 1\n+ /usr/bin/env: python3: $ENOENT$\n+ warning: listkeys hook exited with status 127\n+ /usr/bin/env: python3: $ENOENT$\n+ warning: listkeys hook exited with status 127\n+ no changes found\n+ /usr/bin/env: python3: $ENOENT$\n+ abort: pretxnopen hook exited with status 127\n [255]\n $ cd ../a\n \n@@ -653,32 +230,14 @@\n > prelistkeys = sh -c "printenv.py --line prelistkeys.forbid 1"\n > EOF\n $ hg bookmark -r null quux\n- pretxnopen hook: HG_HOOKNAME=pretxnopen\n- HG_HOOKTYPE=pretxnopen\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=bookmark\n- \n- pretxnclose hook: HG_BOOKMARK_MOVED=1\n- HG_HOOKNAME=pretxnclose\n- HG_HOOKTYPE=pretxnclose\n- HG_PENDING=$TESTTMP/a\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=bookmark\n- \n- txnclose hook: HG_BOOKMARK_MOVED=1\n- HG_HOOKNAME=txnclose\n- HG_HOOKTYPE=txnclose\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=bookmark\n- \n+ /usr/bin/env: python3: $ENOENT$\n+ abort: pretxnopen hook exited with status 127\n+ [255]\n $ cd ../b\n $ hg pull -B quux ../a\n pulling from ../a\n- prelistkeys.forbid hook: HG_HOOKNAME=prelistkeys\n- HG_HOOKTYPE=prelistkeys\n- HG_NAMESPACE=bookmarks\n- \n- abort: prelistkeys hook exited with status 1\n+ /usr/bin/env: python3: $ENOENT$\n+ abort: prelistkeys hook exited with status 127\n [255]\n $ cd ../a\n $ rm .hg/hgrc\n@@ -687,24 +246,14 @@\n \n $ cd ../b\n $ hg -q tip\n- 3:07f3376c1e65\n+ -1:000000000000\n $ cat > .hg/hgrc <<EOF\n > [hooks]\n > prechangegroup.forbid = sh -c "printenv.py --line prechangegroup.forbid 1"\n > EOF\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- prechangegroup.forbid hook: HG_HOOKNAME=prechangegroup.forbid\n- HG_HOOKTYPE=prechangegroup\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/a (glob)\n- HG_URL=file:$TESTTMP/a\n- \n- abort: prechangegroup.forbid hook exited with status 1\n- [255]\n+ no changes found\n \n pretxnchangegroup hook can see incoming changes, can roll back txn,\n incoming changes no longer there after\n@@ -716,28 +265,9 @@\n > EOF\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- 4:539e4b31b6dc\n- pretxnchangegroup.forbid hook: HG_HOOKNAME=pretxnchangegroup.forbid1\n- HG_HOOKTYPE=pretxnchangegroup\n- HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_NODE_LAST=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_PENDING=$TESTTMP/b\n- HG_SOURCE=pull\n- HG_TXNID=TXN:$ID$\n- HG_TXNNAME=pull\n- file:/*/$TESTTMP/a (glob)\n- HG_URL=file:$TESTTMP/a\n- \n- transaction abort!\n- rollback completed\n- abort: pretxnchangegroup.forbid1 hook exited with status 1\n- [255]\n+ no changes found\n $ hg -q tip\n- 3:07f3376c1e65\n+ -1:000000000000\n \n outgoing hooks can see env vars\n \n@@ -749,25 +279,9 @@\n > EOF\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- preoutgoing hook: HG_HOOKNAME=preoutgoing\n- HG_HOOKTYPE=preoutgoing\n- HG_SOURCE=pull\n- \n- outgoing hook: HG_HOOKNAME=outgoing\n- HG_HOOKTYPE=outgoing\n- HG_NODE=539e4b31b6dc99b3cfbaa6b53cbc1c1f9a1e3a10\n- HG_SOURCE=pull\n- \n- adding changesets\n- adding manifests\n- adding file changes\n- adding remote bookmark quux\n- added 1 changesets with 1 changes to 1 files\n- new changesets 539e4b31b6dc\n- (run \'hg update\' to get a working copy)\n+ no changes found\n $ hg rollback\n- repository tip rolled back to revision 3 (undo pull)\n+ repository tip rolled back to revision -1 (undo bookmark)\n \n preoutgoing hook can prevent outgoing changes\n \n@@ -776,17 +290,7 @@\n > EOF\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- preoutgoing hook: HG_HOOKNAME=preoutgoing\n- HG_HOOKTYPE=preoutgoing\n- HG_SOURCE=pull\n- \n- preoutgoing.forbid hook: HG_HOOKNAME=preoutgoing.forbid\n- HG_HOOKTYPE=preoutgoing\n- HG_SOURCE=pull\n- \n- abort: preoutgoing.forbid hook exited with status 1\n- [255]\n+ no changes found\n \n outgoing hooks work for local clones\n \n@@ -797,17 +301,9 @@\n > outgoing = sh -c "printenv.py --line outgoing"\n > EOF\n $ hg clone a c\n- preoutgoing hook: HG_HOOKNAME=preoutgoing\n- HG_HOOKTYPE=preoutgoing\n- HG_SOURCE=clone\n- \n- outgoing hook: HG_HOOKNAME=outgoing\n- HG_HOOKTYPE=outgoing\n- HG_NODE=0000000000000000000000000000000000000000\n- HG_SOURCE=clone\n- \n- updating to branch default\n- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ /usr/bin/env: python3: $ENOENT$\n+ abort: preoutgoing hook exited with status 127\n+ [255]\n $ rm -rf c\n \n preoutgoing hook can prevent outgoing changes for local clones\n@@ -816,15 +312,8 @@\n > preoutgoing.forbid = sh -c "printenv.py --line preoutgoing.forbid 1"\n > EOF\n $ hg clone a zzz\n- preoutgoing hook: HG_HOOKNAME=preoutgoing\n- HG_HOOKTYPE=preoutgoing\n- HG_SOURCE=clone\n- \n- preoutgoing.forbid hook: HG_HOOKNAME=preoutgoing.forbid\n- HG_HOOKTYPE=preoutgoing\n- HG_SOURCE=clone\n- \n- abort: preoutgoing.forbid hook exited with status 1\n+ /usr/bin/env: python3: $ENOENT$\n+ abort: preoutgoing hook exited with status 127\n [255]\n \n $ cd "$TESTTMP/b"\n@@ -890,98 +379,68 @@\n $ echo \'[hooks]\' > ../a/.hg/hgrc\n $ echo \'preoutgoing.broken = python:hooktests.brokenhook\' >> ../a/.hg/hgrc\n $ hg pull ../a 2>&1 | grep \'raised an exception\'\n- error: preoutgoing.broken hook raised an exception: unsupported operand type(s) for +: \'int\' and \'dict\'\n+ [1]\n \n $ echo \'[hooks]\' > ../a/.hg/hgrc\n $ echo \'preoutgoing.raise = python:hooktests.raisehook\' >> ../a/.hg/hgrc\n $ hg pull ../a 2>&1 | grep \'raised an exception\'\n- error: preoutgoing.raise hook raised an exception: exception from hook\n+ [1]\n \n $ echo \'[hooks]\' > ../a/.hg/hgrc\n $ echo \'preoutgoing.abort = python:hooktests.aborthook\' >> ../a/.hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- error: preoutgoing.abort hook failed: raise abort from hook\n- abort: raise abort from hook\n- [255]\n+ no changes found\n \n $ echo \'[hooks]\' > ../a/.hg/hgrc\n $ echo \'preoutgoing.fail = python:hooktests.failhook\' >> ../a/.hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- hook args:\n- hooktype preoutgoing\n- source pull\n- abort: preoutgoing.fail hook failed\n- [255]\n+ no changes found\n \n $ echo \'[hooks]\' > ../a/.hg/hgrc\n $ echo \'preoutgoing.uncallable = python:hooktests.uncallable\' >> ../a/.hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- abort: preoutgoing.uncallable hook is invalid: "hooktests.uncallable" is not callable\n- [255]\n+ no changes found\n \n $ echo \'[hooks]\' > ../a/.hg/hgrc\n $ echo \'preoutgoing.nohook = python:hooktests.nohook\' >> ../a/.hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- abort: preoutgoing.nohook hook is invalid: "hooktests.nohook" is not defined\n- [255]\n+ no changes found\n \n $ echo \'[hooks]\' > ../a/.hg/hgrc\n $ echo \'preoutgoing.nomodule = python:nomodule\' >> ../a/.hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- abort: preoutgoing.nomodule hook is invalid: "nomodule" not in a module\n- [255]\n+ no changes found\n \n $ echo \'[hooks]\' > ../a/.hg/hgrc\n $ echo \'preoutgoing.badmodule = python:nomodule.nowhere\' >> ../a/.hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- abort: preoutgoing.badmodule hook is invalid: import of "nomodule" failed\n- (run with --traceback for stack trace)\n- [255]\n+ no changes found\n \n $ echo \'[hooks]\' > ../a/.hg/hgrc\n $ echo \'preoutgoing.unreachable = python:hooktests.container.unreachable\' >> ../a/.hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- abort: preoutgoing.unreachable hook is invalid: import of "hooktests.container" failed\n- (run with --traceback for stack trace)\n- [255]\n+ no changes found\n \n $ echo \'[hooks]\' > ../a/.hg/hgrc\n $ echo \'preoutgoing.syntaxerror = python:syntaxerror.syntaxerror\' >> ../a/.hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- abort: preoutgoing.syntaxerror hook is invalid: import of "syntaxerror" failed\n- (run with --traceback for stack trace)\n- [255]\n+ no changes found\n \n $ hg pull ../a --traceback 2>&1 | egrep \'pulling|searching|^exception|Traceback|SyntaxError|ImportError|ModuleNotFoundError|HookLoadError|abort\'\n pulling from ../a\n- searching for changes\n- exception from first failed import attempt:\n- Traceback (most recent call last):\n- SyntaxError: * (glob)\n- exception from second failed import attempt:\n Traceback (most recent call last): (py3 !)\n SyntaxError: * (glob) (py3 !)\n- Traceback (most recent call last):\n ImportError: No module named hgext_syntaxerror (no-py3 !)\n ImportError: No module named \'hgext_syntaxerror\' (py3 no-py36 !)\n ModuleNotFoundError: No module named \'hgext_syntaxerror\' (py36 !)\n- Traceback (most recent call last):\n SyntaxError: * (glob) (py3 !)\n Traceback (most recent call last): (py3 !)\n ImportError: No module named \'hgext_syntaxerror\' (py3 no-py36 !)\n@@ -990,23 +449,12 @@\n HookLoadError: preoutgoing.syntaxerror hook is invalid: import of "syntaxerror" failed (no-py3 !)\n raise error.HookLoadError( (py38 !)\n mercurial.error.HookLoadError: preoutgoing.syntaxerror hook is invalid: import of "syntaxerror" failed (py3 !)\n- abort: preoutgoing.syntaxerror hook is invalid: import of "syntaxerror" failed\n \n $ echo \'[hooks]\' > ../a/.hg/hgrc\n $ echo \'preoutgoing.pass = python:hooktests.passhook\' >> ../a/.hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n- hook args:\n- hooktype preoutgoing\n- source pull\n- adding changesets\n- adding manifests\n- adding file changes\n- adding remote bookmark quux\n- added 1 changesets with 1 changes to 1 files\n- new changesets 539e4b31b6dc\n- (run \'hg update\' to get a working copy)\n+ no changes found\n \n post- python hooks that fail to *run* don\'t cause an abort\n $ rm ../a/.hg/hgrc\n@@ -1014,7 +462,6 @@\n $ echo \'post-pull.broken = python:hooktests.brokenhook\' >> .hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n no changes found\n error: post-pull.broken hook raised an exception: unsupported operand type(s) for +: \'int\' and \'dict\'\n (run with --traceback for stack trace)\n@@ -1024,7 +471,6 @@\n $ echo \'post-pull.nomodule = python:nomodule\' >> .hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n no changes found\n abort: post-pull.nomodule hook is invalid: "nomodule" not in a module\n [255]\n@@ -1033,7 +479,6 @@\n $ echo \'post-pull.badmodule = python:nomodule.nowhere\' >> .hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n no changes found\n abort: post-pull.badmodule hook is invalid: import of "nomodule" failed\n (run with --traceback for stack trace)\n@@ -1043,7 +488,6 @@\n $ echo \'post-pull.nohook = python:hooktests.nohook\' >> .hg/hgrc\n $ hg pull ../a\n pulling from ../a\n- searching for changes\n no changes found\n abort: post-pull.nohook hook is invalid: "hooktests.nohook" is not defined\n [255]\n@@ -1055,7 +499,7 @@\n \n $ echo aa > a\n $ hg --traceback commit -d \'0 0\' -ma 2>&1 | grep \'^Traceback\'\n- Traceback (most recent call last):\n+ [1]\n \n $ cd ..\n $ hg init c\n@@ -1124,6 +568,7 @@\n loading pre-identify.npmd hook failed:\n abort: No module named repo (no-py3 !)\n abort: No module named \'repo\' (py3 !)\n+ abort: No module named repo\n [255]\n \n $ cd ../../b\n@@ -1141,12 +586,9 @@\n \n $ echo a >> a\n $ hg --traceback commit -ma 2>&1 | egrep \'^exception|ImportError|ModuleNotFoundError|Traceback|HookLoadError|abort\'\n- exception from first failed import attempt:\n- Traceback (most recent call last):\n ImportError: No module named somebogusmodule (no-py3 !)\n ImportError: No module named \'somebogusmodule\' (py3 no-py36 !)\n ModuleNotFoundError: No module named \'somebogusmodule\' (py36 !)\n- exception from second failed import attempt:\n Traceback (most recent call last): (py3 !)\n ImportError: No module named \'somebogusmodule\' (py3 no-py36 !)\n ModuleNotFoundError: No module named \'somebogusmodule\' (py36 !)\n@@ -1156,15 +598,13 @@\n Traceback (most recent call last): (py3 !)\n ImportError: No module named \'somebogusmodule\' (py3 no-py36 !)\n ModuleNotFoundError: No module named \'somebogusmodule\' (py36 !)\n- Traceback (most recent call last):\n ImportError: No module named hgext_importfail (no-py3 !)\n ImportError: No module named \'hgext_importfail\' (py3 no-py36 !)\n ModuleNotFoundError: No module named \'hgext_importfail\' (py36 !)\n- Traceback (most recent call last):\n HookLoadError: precommit.importfail hook is invalid: import of "importfail" failed (no-py3 !)\n raise error.HookLoadError( (py38 !)\n mercurial.error.HookLoadError: precommit.importfail hook is invalid: import of "importfail" failed (py3 !)\n- abort: precommit.importfail hook is invalid: import of "importfail" failed\n+ [1]\n \n Issue1827: Hooks Update & Commit not completely post operation\n \n@@ -1177,11 +617,12 @@\n $ echo \'update = hg id\' >> .hg/hgrc\n $ echo bb > a\n $ hg ci -ma\n- 223eafe2750c tip\n+ nothing changed\n+ [1]\n $ hg up 0 --config extensions.largefiles=\n The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !)\n- cb9a9f314b8b\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 000000000000 tip foo\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n \n make sure --verbose (and --quiet/--debug etc.) are propagated to the local ui\n that is passed to pre/post hooks\n@@ -1189,11 +630,11 @@\n $ echo \'[hooks]\' > .hg/hgrc\n $ echo \'pre-identify = python:hooktests.verbosehook\' >> .hg/hgrc\n $ hg id\n- cb9a9f314b8b\n+ 000000000000 tip foo\n $ hg id --verbose\n calling hook pre-identify: hooktests.verbosehook\n verbose output from hook\n- cb9a9f314b8b\n+ 000000000000 tip foo\n \n Ensure hooks can be prioritized\n \n@@ -1209,13 +650,14 @@\n verbose output from hook\n calling hook pre-identify.c: hooktests.verbosehook\n verbose output from hook\n- cb9a9f314b8b\n+ 000000000000 tip foo\n \n new tags must be visible in pretxncommit (issue3210)\n \n $ echo \'pretxncommit.printtags = python:hooktests.printtags\' >> .hg/hgrc\n $ hg tag -f foo\n- [a, foo, tip]\n+ abort: cannot tag null revision\n+ [10]\n \n post-init hooks must not crash (issue4983)\n This also creates the `to` repo for the next test block.\n@@ -1226,13 +668,8 @@\n > post-init = sh -c "printenv.py --line post-init"\n > EOF\n $ HGRCPATH=hgrc-with-post-init-hook hg init to\n- post-init hook: HG_ARGS=init to\n- HG_HOOKNAME=post-init\n- HG_HOOKTYPE=post-init\n- HG_OPTS={\'insecure\': None, \'remotecmd\': \'\', \'ssh\': \'\'}\n- HG_PATS=[\'to\']\n- HG_RESULT=0\n- \n+ /usr/bin/env: python3: $ENOENT$\n+ warning: post-init hook exited with status 127\n \n new commits must be visible in pretxnchangegroup (issue3428)\n \n@@ -1279,14 +716,58 @@\n $ hg strip -r 0 --config extensions.strip=\n 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n saved backup bundle to * (glob)\n- transaction abort!\n- rollback completed\n- strip failed, backup bundle stored in * (glob)\n- abort: pretxnclose.error hook exited with status 1\n- [255]\n+ strip failed, backup bundle stored in \'$TESTTMP\\txnfailure\\.hg\\strip-backup/3903775176ed-54390173-backup.hg\'\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg recover\n- no interrupted transaction available\n- [1]\n+ rolling back interrupted transaction\n+ (verify step skipped, run `hg verify` to check your repository content)\n $ cd ..\n \n check whether HG_PENDING makes pending changes only in related\n@@ -1301,12 +782,62 @@\n > EOF\n $ cd a\n $ hg tip -q\n- 4:539e4b31b6dc\n+ -1:000000000000\n $ hg --config hooks.pretxnclose="sh $TESTTMP/savepending.sh" commit -m "invisible"\n- transaction abort!\n- rollback completed\n- abort: pretxnclose hook exited with status 1\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cp .hg/store/00changelog.i.a.saved .hg/store/00changelog.i.a\n \n (check (in)visibility of new changeset while transaction running in\n@@ -1325,13 +856,63 @@\n $ hg add a\n $ hg --config hooks.pretxnclose="sh $TESTTMP/checkpending.sh" commit -m \'#0\'\n @a\n- 4:539e4b31b6dc\n+ -1:000000000000\n @a/nested\n 0:bf5e395ced2c\n- transaction abort!\n- rollback completed\n- abort: pretxnclose hook exited with status 1\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n Hook from untrusted hgrc are reported as failure\n ================================================\n@@ -1378,10 +959,8 @@\n > pretxnclose.testing=echo pre-txnclose hook called\n > EOF\n $ touch b && hg commit -Aqm a\n- transaction abort!\n- rollback completed\n- abort: untrusted hook pretxnclose.testing not executed\n- (see \'hg help config.trusted\')\n+ abort: $TESTTMP\\a\\nested\\untrusted\\.hg\\dirstate.pending: $ENOENT$.\n+ Exception OSError: OSError(2, \'C:\\\\Temp\\\\hgtests.dstqqw\\\\child117\\\\test-hook.t\\\\a\\\\nested\\\\untrusted\\\\.hg\\\\dirstate.pending: $ENOENT$.\') in <bound method dirstateguard.__del__ of <mercurial.dirstateguard.dirstateguard object at 0x0000000001724E88>> ignored\n [255]\n $ hg log\n changeset: 0:3903775176ed\n', 34500, 34502, 'truncated \\uXXXX escape') decoding diff, sorry
test-hooklib-enforce_draft_commits.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-hooklib-enforce_draft_commits.t\n+++ c:/hgdev/src/tests/test-hooklib-enforce_draft_commits.t.err\n@@ -21,25 +21,67 @@\n adding manifests\n adding file changes\n error: pretxnclose-phase.enforce_draft_commits hook failed: New changeset 1ea73414a91b in phase \'public\' rejected\n- transaction abort!\n- rollback completed\n- abort: New changeset 1ea73414a91b in phase \'public\' rejected\n- [255]\n+ ** Unknown exception encountered with possibly-broken third-party extension "hooklib" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "hooklib" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: hooklib\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 5398, in pull\n+ confirm=opts.get(b\'confirm\'),\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1634, in pull\n+ _pullobsolete(pullop)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1462, in release\n+ self._tr.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg --cwd a phase --force --draft 0\n $ hg --cwd b pull ../a\n pulling from ../a\n requesting all changes\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 0 changes to 0 files\n- new changesets 1ea73414a91b (1 drafts)\n- (run \'hg update\' to get a working copy)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg --cwd a phase --public 0\n $ hg --cwd b pull ../a\n pulling from ../a\n- searching for changes\n- no changes found\n- error: pretxnclose-phase.enforce_draft_commits hook failed: Phase change from \'draft\' to \'public\' for 1ea73414a91b rejected\n- abort: Phase change from \'draft\' to \'public\' for 1ea73414a91b rejected\n+ requesting all changes\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n', 2497, 2499, 'truncated \\uXXXX escape') decoding diff, sorry
test-hooklib-reject_merge_commits.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-hooklib-reject_merge_commits.t\n+++ c:/hgdev/src/tests/test-hooklib-reject_merge_commits.t.err\n@@ -55,24 +55,63 @@\n adding manifests\n adding file changes\n error: pretxnchangegroup.reject_merge_commits hook failed: a6b287721c3b rejected as merge on the same branch. Please consider rebase.\n- transaction abort!\n- rollback completed\n- abort: a6b287721c3b rejected as merge on the same branch. Please consider rebase.\n- [255]\n+ ** Unknown exception encountered with possibly-broken third-party extension "hooklib" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "hooklib" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: hooklib\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 5398, in pull\n+ confirm=opts.get(b\'confirm\'),\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1634, in pull\n+ _pullobsolete(pullop)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1462, in release\n+ self._tr.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg --cwd b pull ../a -r 1ea73414a91b\n pulling from ../a\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 0 changes to 0 files\n- new changesets 1ea73414a91b (1 drafts)\n- (run \'hg update\' to get a working copy)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg --cwd b pull ../a -r a9fb040caedd\n pulling from ../a\n- searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- added 3 changesets with 0 changes to 0 files\n- new changesets 66f7d451a68b:a9fb040caedd (3 drafts)\n- (run \'hg update\' to get a working copy)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n', 2536, 2538, 'truncated \\uXXXX escape') decoding diff, sorry
test-hooklib-reject_new_heads.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-hooklib-reject_new_heads.t\n+++ c:/hgdev/src/tests/test-hooklib-reject_new_heads.t.err\n@@ -39,15 +39,58 @@\n adding manifests\n adding file changes\n error: pretxnclose.reject_new_heads hook failed: Changes on branch \'default\' resulted in multiple heads\n- transaction abort!\n- rollback completed\n- abort: Changes on branch \'default\' resulted in multiple heads\n- [255]\n+ ** Unknown exception encountered with possibly-broken third-party extension "hooklib" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "hooklib" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: hooklib\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 5398, in pull\n+ confirm=opts.get(b\'confirm\'),\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1634, in pull\n+ _pullobsolete(pullop)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\exchange.py", line 1462, in release\n+ self._tr.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg --cwd b pull ../a -r 1ea73414a91b\n pulling from ../a\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 0 changes to 0 files\n- new changesets 1ea73414a91b (1 drafts)\n- (run \'hg update\' to get a working copy)\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n', 2478, 2480, 'truncated \\uXXXX escape') decoding diff, sorry
test-http-branchmap.t
--- c:/hgdev/src/tests/test-http-branchmap.t
+++ c:/hgdev/src/tests/test-http-branchmap.t.err
@@ -54,6 +54,8 @@
summary: foo
$ killdaemons.py hg.pid
+ /usr/bin/env: python3: $ENOENT$
+ [127]
verify 7e7d56fe4833 (encoding fallback in branchmap to maintain compatibility with 1.3.x)
test-http-permissions.t
test-impexp-branch.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-impexp-branch.t\n+++ c:/hgdev/src/tests/test-impexp-branch.t.err\n@@ -73,11 +73,61 @@\n \n $ hg strip --no-backup .\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n >>> import re\n >>> p = open(\'../r1.patch\', \'rb\').read()\n >>> p = re.sub(br\'Parent\\s+\', b\'Parent \', p)\n >>> open(\'../r1-ws.patch\', \'wb\').write(p) and None\n $ hg import --exact ../r1-ws.patch\n- applying ../r1-ws.patch\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ cd ..\n', 2116, 2118, 'truncated \\uXXXX escape') decoding diff, sorry
test-import-bypass.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-import-bypass.t\n+++ c:/hgdev/src/tests/test-import-bypass.t.err\n@@ -42,8 +42,50 @@\n applying ../test.diff\n unable to find \'a\' for patching\n (use \'--prefix\' to apply patch relative to the current directory)\n- abort: patch failed to apply\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: purge\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg st\n $ shortlog\n o 1:4e322f7ce8e3 test 0 0 - foo - changea\n@@ -56,14 +98,14 @@\n $ hg up 0\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg import --bypass --u test2 -d \'1 0\' -m patch2 ../test.diff\n- applying ../test.diff\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ cat .hg/last-message.txt\n- patch2 (no-eol)\n- $ shortlog\n- o 2:2e127d1da504 test2 1 0 - default - patch2\n- |\n- | o 1:4e322f7ce8e3 test 0 0 - foo - changea\n- |/\n+ changea (no-eol)\n+ $ shortlog\n+ o 1:4e322f7ce8e3 test 0 0 - foo - changea\n+ |\n @ 0:07f494440405 test 0 0 - default - adda\n \n $ hg rollback\n@@ -74,14 +116,17 @@\n patch contains the commit message, regardless of \'--edit\')\n \n $ HGEDITOR=cat hg import --bypass --import-branch --edit ../test.diff\n- applying ../test.diff\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ shortlog\n o 1:4e322f7ce8e3 test 0 0 - foo - changea\n |\n @ 0:07f494440405 test 0 0 - default - adda\n \n $ hg rollback\n- repository tip rolled back to revision 1 (undo import)\n+ no rollback information available\n+ [1]\n \n Test --strip\n \n@@ -101,9 +146,12 @@\n > a\n > +a\n > EOF\n- applying patch from stdin\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg rollback\n- repository tip rolled back to revision 1 (undo import)\n+ no rollback information available\n+ [1]\n \n Test --strip with --bypass\n \n@@ -115,12 +163,13 @@\n adding dir/d\n adding dir/dir2/b\n adding dir/dir2/c\n- $ shortlog\n- @ 2:d805bc8236b6 test 0 0 - default - addabcd\n- |\n- | o 1:4e322f7ce8e3 test 0 0 - foo - changea\n- |/\n- o 0:07f494440405 test 0 0 - default - adda\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ shortlog\n+ o 1:4e322f7ce8e3 test 0 0 - foo - changea\n+ |\n+ @ 0:07f494440405 test 0 0 - default - adda\n \n $ hg import --bypass --strip 2 --prefix dir/ - <<EOF\n > # HG changeset patch\n@@ -150,40 +199,23 @@\n > @@ -1,1 +0,0 @@\n > -d\n > EOF\n- applying patch from stdin\n-\n- $ shortlog\n- o 3:5bd46886ca3e test 0 0 - default - changeabcd\n- |\n- @ 2:d805bc8236b6 test 0 0 - default - addabcd\n- |\n- | o 1:4e322f7ce8e3 test 0 0 - foo - changea\n- |/\n- o 0:07f494440405 test 0 0 - default - adda\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+\n+ $ shortlog\n+ o 1:4e322f7ce8e3 test 0 0 - foo - changea\n+ |\n+ @ 0:07f494440405 test 0 0 - default - adda\n \n $ hg diff --change 3 --git\n- diff --git a/dir/a b/dir/a\n- new file mode 100644\n- --- /dev/null\n- +++ b/dir/a\n- @@ -0,0 +1,1 @@\n- +a\n- diff --git a/dir/d b/dir/d\n- deleted file mode 100644\n- --- a/dir/d\n- +++ /dev/null\n- @@ -1,1 +0,0 @@\n- -d\n- diff --git a/dir/dir2/b b/dir/dir2/b2\n- rename from dir/dir2/b\n- rename to dir/dir2/b2\n- diff --git a/dir/dir2/c b/dir/dir2/c\n- --- a/dir/dir2/c\n- +++ b/dir/dir2/c\n- @@ -1,1 +1,2 @@\n- cc\n- +cc\n+ abort: unknown revision \'3\'\n+ [255]\n $ hg -q --config extensions.strip= strip .\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo-options\\.hg\\strip-backup/07f494440405-4394d8b1-backup.hg\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Test unsupported combinations\n \n@@ -211,17 +243,9 @@\n > +c\n > EOF\n $ HGEDITOR=cat hg import --bypass ../test.diff\n- applying ../test.diff\n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: test\n- HG: branch \'default\'\n- HG: changed a\n- abort: empty commit message\n- [10]\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Test patch.eol is handled\n (this also tests that editor is not invoked for \'--bypass\', if the\n@@ -229,21 +253,19 @@\n \n $ "$PYTHON" -c \'open("a", "wb").write(b"a\\r\\n")\'\n $ hg ci -m makeacrlf\n+ nothing changed\n+ [1]\n $ HGEDITOR=cat hg import -m \'should fail because of eol\' --edit --bypass ../test.diff\n- applying ../test.diff\n- patching file a\n- Hunk #1 FAILED at 0\n- abort: patch failed to apply\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n $ hg --config patch.eol=auto import -d \'0 0\' -m \'test patch.eol\' --bypass ../test.diff\n- applying ../test.diff\n- $ shortlog\n- o 3:c606edafba99 test 0 0 - default - test patch.eol\n- |\n- @ 2:872023de769d test 0 0 - default - makeacrlf\n- |\n- | o 1:4e322f7ce8e3 test 0 0 - foo - changea\n- |/\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ shortlog\n+ o 1:4e322f7ce8e3 test 0 0 - foo - changea\n+ |\n o 0:07f494440405 test 0 0 - default - adda\n \n \n@@ -252,13 +274,25 @@\n $ hg up -qC 0\n $ echo e > e\n $ hg ci -Am adde\n+ adding dir/d\n+ adding dir/dir2/b\n+ adding dir/dir2/c\n adding e\n- created new head\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg export . > ../patch1.diff\n $ hg up -qC 1\n $ echo f > f\n $ hg ci -Am addf\n+ adding dir/d\n+ adding dir/dir2/b\n+ adding dir/dir2/c\n+ adding e\n adding f\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg export . > ../patch2.diff\n $ cd ..\n $ hg clone -r1 repo-options repo-multi1\n@@ -274,14 +308,54 @@\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg import --bypass ../patch1.diff ../patch2.diff\n applying ../patch1.diff\n- applying ../patch2.diff\n- $ shortlog\n- o 3:bc8ca3f8a7c4 test 0 0 - default - addf\n- |\n- o 2:16581080145e test 0 0 - default - adde\n- |\n- | o 1:4e322f7ce8e3 test 0 0 - foo - changea\n- |/\n+ file a already exists\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: purge\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+ $ shortlog\n+ o 1:4e322f7ce8e3 test 0 0 - foo - changea\n+ |\n @ 0:07f494440405 test 0 0 - default - adda\n \n \n@@ -301,12 +375,8 @@\n applying ../patch1.diff\n applying ../patch2.diff\n $ shortlog\n- o 3:d60cb8989666 test 0 0 - foo - addf\n- |\n- | o 2:16581080145e test 0 0 - default - adde\n- | |\n- @ | 1:4e322f7ce8e3 test 0 0 - foo - changea\n- |/\n+ @ 1:4e322f7ce8e3 test 0 0 - foo - changea\n+ |\n o 0:07f494440405 test 0 0 - default - adda\n \n \n@@ -319,15 +389,24 @@\n \n $ echo a >> a\n $ hg commit -m \' \'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg tip -T "{node}\\n"\n- 1b77bc7d1db9f0e7f1716d515b630516ab386c89\n+ 4e322f7ce8e3e4203950eac9ece27bf7e45ffa6c\n $ hg export -o ../empty-log.diff .\n $ hg update -q -C ".^1"\n $ hg --config extensions.strip= strip -q tip\n+ strip failed, backup bundle stored in \'$TESTTMP\\repo-options\\.hg\\strip-backup/4e322f7ce8e3-60ddd5c0-backup.hg\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ HGEDITOR=cat hg import --exact --bypass ../empty-log.diff\n- applying ../empty-log.diff\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg tip -T "{node}\\n"\n- 1b77bc7d1db9f0e7f1716d515b630516ab386c89\n+ 4e322f7ce8e3e4203950eac9ece27bf7e45ffa6c\n \n $ cd ..\n \n', 2183, 2185, 'truncated \\uXXXX escape') decoding diff, sorry
test-import-eol.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-import-eol.t\n+++ c:/hgdev/src/tests/test-import-eol.t.err\n@@ -42,20 +42,86 @@\n \n $ hg --config patch.eol=\'LFCR\' import eol.diff\n applying eol.diff\n- abort: unsupported line endings type: LFCR\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg revert -a\n \n \n force LF\n \n $ hg --traceback --config patch.eol=\'LF\' import eol.diff\n- applying eol.diff\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4123, in import_\n+ with lock(), tr(), dsguard():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4117, in <lambda>\n+ tr = lambda: repo.transaction(b\'import\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2153, in transaction\n+ hint=_(b"run \'hg recover\' to clean up transaction"),\n+ RepoError: abandoned transaction found\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg id\n- 9e4ef7b3d4af tip\n+ 064e24ef79fc tip\n $ cat a\n a\n- yyyy\n+ bbb\n cc\n \n d\n@@ -66,68 +132,147 @@\n \n $ hg up -qC 0\n $ hg --config patch.eol=\'LF\' import eol-empty-crlf.diff\n- applying eol-empty-crlf.diff\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg id\n- 9e4ef7b3d4af tip\n+ 064e24ef79fc tip\n \n $ hg up -qC 0\n $ hg --config patch.eol=\'LF\' import eol-empty-stripped-lf.diff\n- applying eol-empty-stripped-lf.diff\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg id\n- 9e4ef7b3d4af tip\n+ 064e24ef79fc tip\n \n $ hg up -qC 0\n $ hg --config patch.eol=\'LF\' import eol-empty-stripped-crlf.diff\n- applying eol-empty-stripped-crlf.diff\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg id\n- 9e4ef7b3d4af tip\n+ 064e24ef79fc tip\n \n force CRLF\n \n $ hg up -C 0\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg --traceback --config patch.eol=\'CRLF\' import eol.diff\n- applying eol.diff\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4123, in import_\n+ with lock(), tr(), dsguard():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4117, in <lambda>\n+ tr = lambda: repo.transaction(b\'import\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2153, in transaction\n+ hint=_(b"run \'hg recover\' to clean up transaction"),\n+ RepoError: abandoned transaction found\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ cat a\n+ a\n+ bbb\n+ cc\n+ \n+ d\n+ e (no-eol)\n+ $ hg st\n+\n+\n+auto EOL on LF file\n+\n+ $ hg up -C 0\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ $ hg --traceback --config patch.eol=\'auto\' import eol.diff\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4123, in import_\n+ with lock(), tr(), dsguard():\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4117, in <lambda>\n+ tr = lambda: repo.transaction(b\'import\')\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2153, in transaction\n+ hint=_(b"run \'hg recover\' to clean up transaction"),\n+ RepoError: abandoned transaction found\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ cat a\n+ a\n+ bbb\n+ cc\n+ \n+ d\n+ e (no-eol)\n+ $ hg st\n+\n+\n+auto EOL on CRLF file\n+\n+ $ "$PYTHON" -c \'open("a", "wb").write(b"a\\r\\nbbb\\r\\ncc\\r\\n\\r\\nd\\r\\ne")\'\n+ $ hg commit -m \'switch EOLs in a\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ hg --traceback --config patch.eol=\'auto\' import eol.diff\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4113, in import_\n+ cmdutil.bailifchanged(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 1093, in bailifchanged\n+ raise error.StateError(_(b\'uncommitted changes\'), hint=hint)\n+ StateError: uncommitted changes\n+ abort: uncommitted changes\n+ [20]\n $ cat a\n a\\r (esc)\n- yyyy\\r (esc)\n+ bbb\\r (esc)\n cc\\r (esc)\n \\r (esc)\n d\\r (esc)\n e (no-eol)\n $ hg st\n-\n-\n-auto EOL on LF file\n-\n- $ hg up -C 0\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- $ hg --traceback --config patch.eol=\'auto\' import eol.diff\n- applying eol.diff\n- $ cat a\n- a\n- yyyy\n- cc\n- \n- d\n- e (no-eol)\n- $ hg st\n-\n-\n-auto EOL on CRLF file\n-\n- $ "$PYTHON" -c \'open("a", "wb").write(b"a\\r\\nbbb\\r\\ncc\\r\\n\\r\\nd\\r\\ne")\'\n- $ hg commit -m \'switch EOLs in a\'\n- $ hg --traceback --config patch.eol=\'auto\' import eol.diff\n- applying eol.diff\n- $ cat a\n- a\\r (esc)\n- yyyy\\r (esc)\n- cc\\r (esc)\n- \\r (esc)\n- d\\r (esc)\n- e (no-eol)\n- $ hg st\n+ M a\n \n \n auto EOL on new file or source without any EOL\n@@ -135,6 +280,9 @@\n $ "$PYTHON" -c \'open("noeol", "wb").write(b"noeol")\'\n $ hg add noeol\n $ hg commit -m \'add noeol\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ "$PYTHON" -c \'open("noeol", "wb").write(b"noeol\\r\\nnoeol\\n")\'\n $ "$PYTHON" -c \'open("neweol", "wb").write(b"neweol\\nneweol\\r\\n")\'\n $ hg add neweol\n@@ -142,14 +290,37 @@\n $ hg revert --no-backup noeol neweol\n $ rm neweol\n $ hg --traceback --config patch.eol=\'auto\' import -m noeol noeol.diff\n- applying noeol.diff\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4113, in import_\n+ cmdutil.bailifchanged(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 1093, in bailifchanged\n+ raise error.StateError(_(b\'uncommitted changes\'), hint=hint)\n+ StateError: uncommitted changes\n+ abort: uncommitted changes\n+ [20]\n $ cat noeol\n noeol\\r (esc)\n noeol\n $ cat neweol\n- neweol\n- neweol\\r (esc)\n- $ hg st\n+ cat: neweol: $ENOENT$\n+ [1]\n+ $ hg st\n+ M a\n+ ? noeol\n \n \n Test --eol and binary patches\n@@ -157,17 +328,26 @@\n $ "$PYTHON" -c \'open("b", "wb").write(b"a\\x00\\nb\\r\\nd")\'\n $ hg ci -Am addb\n adding b\n+ adding noeol\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ "$PYTHON" -c \'open("b", "wb").write(b"a\\x00\\nc\\r\\nd")\'\n $ hg diff --git > bin.diff\n $ hg revert --no-backup b\n+ file not managed: b\n \n binary patch with --eol\n \n $ hg import --config patch.eol=\'CRLF\' -m changeb bin.diff\n- applying bin.diff\n+ abort: uncommitted changes\n+ [20]\n $ cat b\n a\\x00 (esc)\n c\\r (esc)\n d (no-eol)\n $ hg st\n+ M a\n+ ? b\n+ ? noeol\n $ cd ..\n', 2131, 2133, 'truncated \\uXXXX escape') decoding diff, sorry
test-import-git.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-import-git.t\n+++ c:/hgdev/src/tests/test-import-git.t.err\n@@ -518,8 +518,50 @@\n > \n > EOF\n applying patch from stdin\n- abort: could not decode "binary2" binary patch: bad base85 character at position 6\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n $ hg revert -aq\n $ hg import -d "1000000 0" -m rename-as-binary - <<"EOF"\n@@ -532,8 +574,8 @@\n > Mc$`b*O5$Pw00T?_*Z=?k\n > \n > EOF\n- applying patch from stdin\n- abort: "binary2" length is 5 bytes, should be 6\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n $ hg revert -aq\n@@ -546,8 +588,8 @@\n > Mc$`b*O5$Pw00T?_*Z=?k\n > \n > EOF\n- applying patch from stdin\n- abort: could not extract "binary2" binary data\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n Simulate a copy/paste turning LF into CRLF (issue2870)\n', 2143, 2145, 'truncated \\uXXXX escape') decoding diff, sorry
test-import-merge.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-import-merge.t\n+++ c:/hgdev/src/tests/test-import-merge.t.err\n@@ -67,62 +67,136 @@\n 3:102a90ea7b4a addb\n $ hg strip --no-backup tip\n 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: mq, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 4237, in mqcommand\n+ return orig(ui, repo, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n Test without --exact and diff.p1 != workingdir.p1\n \n $ hg up 2\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg import ../merge.diff\n- applying ../merge.diff\n- warning: import the patch as a normal revision\n- (use --exact to import the patch as a merge)\n- $ tipparents\n- 2:890ecaa90481 addc\n- $ hg strip --no-backup tip\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ tipparents\n+ 1:540395c44225 changea\n+ 3:102a90ea7b4a addb\n+ $ hg strip --no-backup tip\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+\n+Test with --exact\n+\n+ $ hg import --exact ../merge.diff\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ tipparents\n+ 1:540395c44225 changea\n+ 3:102a90ea7b4a addb\n+ $ hg strip --no-backup tip\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+\n+Test with --bypass and diff.p1 == workingdir.p1\n+\n+ $ hg up 1\n 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n-\n-Test with --exact\n-\n- $ hg import --exact ../merge.diff\n- applying ../merge.diff\n- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n- $ tipparents\n- 1:540395c44225 changea\n- 3:102a90ea7b4a addb\n- $ hg strip --no-backup tip\n- 0 files updated, 0 files merged, 1 files removed, 0 files unresolved\n-\n-Test with --bypass and diff.p1 == workingdir.p1\n-\n- $ hg up 1\n- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg import --bypass ../merge.diff\n- applying ../merge.diff\n- $ tipparents\n- 1:540395c44225 changea\n- 3:102a90ea7b4a addb\n- $ hg strip --no-backup tip\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ tipparents\n+ 1:540395c44225 changea\n+ 3:102a90ea7b4a addb\n+ $ hg strip --no-backup tip\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Test with --bypass and diff.p1 != workingdir.p1\n \n $ hg up 2\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg import --bypass ../merge.diff\n- applying ../merge.diff\n- warning: import the patch as a normal revision\n- (use --exact to import the patch as a merge)\n- $ tipparents\n- 2:890ecaa90481 addc\n- $ hg strip --no-backup tip\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ tipparents\n+ 1:540395c44225 changea\n+ 3:102a90ea7b4a addb\n+ $ hg strip --no-backup tip\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n Test with --bypass and --exact\n \n $ hg import --bypass --exact ../merge.diff\n- applying ../merge.diff\n- $ tipparents\n- 1:540395c44225 changea\n- 3:102a90ea7b4a addb\n- $ hg strip --no-backup tip\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+ $ tipparents\n+ 1:540395c44225 changea\n+ 3:102a90ea7b4a addb\n+ $ hg strip --no-backup tip\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ cd ..\n \n@@ -155,13 +229,73 @@\n 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n patching file a\n Hunk #1 succeeded at 1 with fuzz 1 (offset -1 lines).\n- transaction abort!\n- rollback completed\n- abort: patch is damaged or loses information\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: mq, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 4237, in mqcommand\n+ return orig(ui, repo, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 4205, in mqimport\n+ return orig(ui, repo, *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg verify\n+ abandoned transaction found - run hg recover\n checking changesets\n checking manifests\n+ manifest@?: rev 2 points to nonexistent changeset 2\n+ manifest@?: f8f1c7ab3d67 not in changesets\n crosschecking files in changesets and manifests\n checking files\n- checked 2 changesets with 2 changes to 1 files\n+ a@?: rev 2 points to nonexistent changeset 2\n+ (expected )\n+ checked 2 changesets with 3 changes to 1 files\n+ 1 warnings encountered!\n+ 3 integrity errors encountered!\n+ [1]\n', 2142, 2144, 'truncated \\uXXXX escape') decoding diff, sorry
test-import.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-import.t\n+++ c:/hgdev/src/tests/test-import.t.err\n@@ -126,23 +126,74 @@\n HG: user: test\n HG: branch \'default\'\n HG: changed a\n- abort: empty commit message\n- [10]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n Test avoiding editor invocation at applying the patch with --exact,\n even if commit message is empty\n \n $ echo a >> b/a\n $ hg --cwd b commit -m \' \'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg --cwd b tip -T "{node}\\n"\n- d8804f3f5396d800812f579c8452796a5993bdb2\n+ 80971e65b4311420b1d3638e4b38096e0606ea65\n $ hg --cwd b export -o ../empty-log.diff .\n $ hg --cwd b update -q -C ".^1"\n $ hg --cwd b --config extensions.strip= strip -q tip\n+ strip failed, backup bundle stored in \'$TESTTMP\\b\\.hg\\strip-backup/80971e65b431-822eb282-backup.hg\'\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ HGEDITOR=cat hg --cwd b import --exact ../empty-log.diff\n- applying ../empty-log.diff\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg --cwd b tip -T "{node}\\n"\n- d8804f3f5396d800812f579c8452796a5993bdb2\n+ 80971e65b4311420b1d3638e4b38096e0606ea65\n \n $ rm -r b\n \n@@ -233,8 +284,50 @@\n $ sed \'s/1,1/foo/\' < diffed-tip.patch > broken.patch\n $ hg --cwd b import -mpatch ../broken.patch\n applying ../broken.patch\n- abort: bad hunk #1\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ rm -r b\n \n hg -R repo import\n@@ -373,8 +466,50 @@\n 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ egrep -v \'^(Subject|email)\' msg.patch | hg --cwd b import -\n applying patch from stdin\n- abort: empty commit message\n- [10]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ rm -r b\n \n \n@@ -458,32 +593,85 @@\n $ hg --cwd b phase\n 1: secret\n $ hg --cwd b --config extensions.strip= strip 1 --no-backup --quiet\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ HGEDITOR=cat hg --cwd b import --secret --edit ../exported-tip.patch\n- applying ../exported-tip.patch\n- second change\n- \n- \n- HG: Enter commit message. Lines beginning with \'HG:\' are removed.\n- HG: Leave message empty to abort commit.\n- HG: --\n- HG: user: someone\n- HG: branch \'default\'\n- HG: changed a\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg --cwd b diff -c . --nodates\n- diff -r 80971e65b431 -r 1d4bd90af0e4 a\n- --- a/a\n+ diff -r 000000000000 -r 80971e65b431 a\n+ --- /dev/null\n +++ b/a\n- @@ -1,1 +1,2 @@\n- line 1\n- +line 2\n+ @@ -0,0 +1,1 @@\n+ +line 1\n+ diff -r 000000000000 -r 80971e65b431 d1/d2/a\n+ --- /dev/null\n+ +++ b/d1/d2/a\n+ @@ -0,0 +1,1 @@\n+ +line 1\n $ hg --cwd b phase\n- 1: secret\n+ 0: public\n $ hg --cwd b --config extensions.strip= strip 1 --no-backup --quiet\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg --cwd b import --bypass --secret ../exported-tip.patch\n- applying ../exported-tip.patch\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg --cwd b phase -r tip\n 1: secret\n $ hg --cwd b --config extensions.strip= strip 1 --no-backup --quiet\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ rm -r b\n \n \n@@ -575,6 +763,55 @@\n \n $ hg --cwd b update -q -C 0\n $ hg --cwd b --config extensions.strip= strip -q 1\n+ strip failed, backup bundle stored in \'$TESTTMP\\b\\.hg\\strip-backup/3c5fbb1febd4-4f4ff4a1-backup.hg\'\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n Test visibility of in-memory dirstate changes inside transaction to\n external process\n@@ -603,119 +840,31 @@\n ====\n \n $ HGEDITOR="sh $TESTTMP/checkvisibility.sh" hg --cwd b import -v --edit ../patch1 ../patch2 ../patch3\n- applying ../patch1\n- patching file a\n- ====\n- VISIBLE 0:80971e65b431\n- M a\n- ACTUAL 0:80971e65b431\n- M a\n- ====\n- committing files:\n- a\n- committing manifest\n- committing changelog\n- created 1d4bd90af0e4\n- applying ../patch2\n- patching file a\n- ====\n- VISIBLE 1:1d4bd90af0e4\n- M a\n- ACTUAL 0:80971e65b431\n- M a\n- ====\n- committing files:\n- a\n- committing manifest\n- committing changelog\n- created 6d019af21222\n- applying ../patch3\n- patching file foo\n- adding foo\n- ====\n- VISIBLE 2:6d019af21222\n- A foo\n- ACTUAL 0:80971e65b431\n- M a\n- ====\n- committing files:\n- foo\n- committing manifest\n- committing changelog\n- created 55e3f75b2378\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg --cwd b rollback -q\n+ no rollback information available\n+ [1]\n \n (content of file "a" is already changed and it should be recognized as\n "M", even though dirstate is restored to one before "hg import")\n-\n- $ (cd b && sh "$TESTTMP/checkvisibility.sh")\n- ====\n- VISIBLE 0:80971e65b431\n- M a\n- ACTUAL 0:80971e65b431\n- M a\n- ====\n- $ hg --cwd b revert --no-backup a\n- $ rm -f b/foo\n-\n-== test visibility to precommit external hook\n-\n- $ cat >> b/.hg/hgrc <<EOF\n- > [hooks]\n- > precommit.visibility = sh $TESTTMP/checkvisibility.sh\n- > EOF\n \n $ (cd b && sh "$TESTTMP/checkvisibility.sh")\n ====\n VISIBLE 0:80971e65b431\n ACTUAL 0:80971e65b431\n ====\n-\n- $ hg --cwd b import ../patch1 ../patch2 ../patch3\n- applying ../patch1\n- ====\n- VISIBLE 0:80971e65b431\n- M a\n- ACTUAL 0:80971e65b431\n- M a\n- ====\n- applying ../patch2\n- ====\n- VISIBLE 1:1d4bd90af0e4\n- M a\n- ACTUAL 0:80971e65b431\n- M a\n- ====\n- applying ../patch3\n- ====\n- VISIBLE 2:6d019af21222\n- A foo\n- ACTUAL 0:80971e65b431\n- M a\n- ====\n-\n- $ hg --cwd b rollback -q\n- $ (cd b && sh "$TESTTMP/checkvisibility.sh")\n- ====\n- VISIBLE 0:80971e65b431\n- M a\n- ACTUAL 0:80971e65b431\n- M a\n- ====\n $ hg --cwd b revert --no-backup a\n+ no changes needed to a\n $ rm -f b/foo\n+\n+== test visibility to precommit external hook\n \n $ cat >> b/.hg/hgrc <<EOF\n > [hooks]\n- > precommit.visibility =\n- > EOF\n-\n-== test visibility to pretxncommit external hook\n-\n- $ cat >> b/.hg/hgrc <<EOF\n- > [hooks]\n- > pretxncommit.visibility = sh $TESTTMP/checkvisibility.sh\n+ > precommit.visibility = sh $TESTTMP/checkvisibility.sh\n > EOF\n \n $ (cd b && sh "$TESTTMP/checkvisibility.sh")\n@@ -725,37 +874,55 @@\n ====\n \n $ hg --cwd b import ../patch1 ../patch2 ../patch3\n- applying ../patch1\n- ====\n- VISIBLE 0:80971e65b431\n- M a\n- ACTUAL 0:80971e65b431\n- M a\n- ====\n- applying ../patch2\n- ====\n- VISIBLE 1:1d4bd90af0e4\n- M a\n- ACTUAL 0:80971e65b431\n- M a\n- ====\n- applying ../patch3\n- ====\n- VISIBLE 2:6d019af21222\n- A foo\n- ACTUAL 0:80971e65b431\n- M a\n- ====\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg --cwd b rollback -q\n+ no rollback information available\n+ [1]\n $ (cd b && sh "$TESTTMP/checkvisibility.sh")\n ====\n VISIBLE 0:80971e65b431\n- M a\n ACTUAL 0:80971e65b431\n- M a\n ====\n $ hg --cwd b revert --no-backup a\n+ no changes needed to a\n+ $ rm -f b/foo\n+\n+ $ cat >> b/.hg/hgrc <<EOF\n+ > [hooks]\n+ > precommit.visibility =\n+ > EOF\n+\n+== test visibility to pretxncommit external hook\n+\n+ $ cat >> b/.hg/hgrc <<EOF\n+ > [hooks]\n+ > pretxncommit.visibility = sh $TESTTMP/checkvisibility.sh\n+ > EOF\n+\n+ $ (cd b && sh "$TESTTMP/checkvisibility.sh")\n+ ====\n+ VISIBLE 0:80971e65b431\n+ ACTUAL 0:80971e65b431\n+ ====\n+\n+ $ hg --cwd b import ../patch1 ../patch2 ../patch3\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n+\n+ $ hg --cwd b rollback -q\n+ no rollback information available\n+ [1]\n+ $ (cd b && sh "$TESTTMP/checkvisibility.sh")\n+ ====\n+ VISIBLE 0:80971e65b431\n+ ACTUAL 0:80971e65b431\n+ ====\n+ $ hg --cwd b revert --no-backup a\n+ no changes needed to a\n $ rm -f b/foo\n \n $ cat >> b/.hg/hgrc <<EOF\n@@ -833,8 +1000,50 @@\n patching file a\n Hunk #1 FAILED at 0\n 1 out of 1 hunks FAILED -- saving rejects to file a.rej\n- abort: patch failed to apply\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg import --no-commit -v fuzzy-tip.patch\n applying fuzzy-tip.patch\n patching file a\n@@ -848,20 +1057,13 @@\n $ sed \'s/^# Parent .*/# Parent \'"`hg log -r. -T \'{node}\'`"\'/\' \\\n > < fuzzy-tip.patch > fuzzy-reparent.patch\n $ hg import --config patch.fuzz=0 --exact fuzzy-reparent.patch\n- applying fuzzy-reparent.patch\n- patching file a\n- Hunk #1 FAILED at 0\n- 1 out of 1 hunks FAILED -- saving rejects to file a.rej\n- abort: patch failed to apply\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n $ hg up -qC\n $ hg import --config patch.fuzz=2 --exact fuzzy-reparent.patch\n- applying fuzzy-reparent.patch\n- patching file a\n- Hunk #1 succeeded at 2 with fuzz 1 (offset 0 lines).\n- transaction abort!\n- rollback completed\n- abort: patch is damaged or loses information\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n $ hg up -qC\n \n@@ -874,9 +1076,8 @@\n > --- b/a\tThu Jan 01 00:00:00 1970 +0000\n > EOF\n $ hg import --exact empty.patch\n- applying empty.patch\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- abort: patch is damaged or loses information\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n $ hg up -qC\n \n@@ -1083,8 +1284,50 @@\n > rename to bar\n > EOF\n applying patch from stdin\n- abort: path contains illegal component: ../outside/foo\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cd ..\n \n \n@@ -1169,14 +1412,57 @@\n $ hg import a.patch empty.patch\n applying a.patch\n applying empty.patch\n- transaction abort!\n- rollback completed\n- abort: empty.patch: no diffs found\n- [10]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg tip --template \'{rev} {desc|firstline}\\n\'\n+ warning: ignoring unknown working parent 41cb93bb6d69!\n 0 commit\n $ hg -q status\n+ warning: ignoring unknown working parent 41cb93bb6d69!\n M a\n+ M b\n $ cd ..\n \n create file when source is not /dev/null\n@@ -2053,8 +2339,52 @@\n unable to find \'file1\' for patching\n (use \'--prefix\' to apply patch relative to the current directory)\n 1 out of 1 hunks FAILED -- saving rejects to file file1.rej\n- abort: patch failed to apply\n- [255]\n+ ** Unknown exception encountered with possibly-broken third-party extension "parseextra" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "parseextra" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: parseextra\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n test import crash (issue5375)\n $ cd ..\n@@ -2063,8 +2393,52 @@\n $ printf "diff --git a/a b/b\\nrename from a\\nrename to b" | hg import -\n applying patch from stdin\n a not tracked!\n- abort: source file \'a\' does not exist\n- [255]\n+ ** Unknown exception encountered with possibly-broken third-party extension "parseextra" (version N/A)\n+ ** which supports versions unknown of Mercurial.\n+ ** Please disable "parseextra" and try your action again.\n+ ** If that fixes the bug please report it to the extension author.\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: parseextra\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 4163, in import_\n+ repo.savecommitmessage(b\'\\n* * *\\n\'.join(msgs))\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n test immature end of hunk\n \n@@ -2074,8 +2448,8 @@\n > --- b/foo\n > @@ -0,0 +1,1 @@\n > EOF\n- applying patch from stdin\n- abort: bad hunk #1: incomplete hunk\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n \n $ hg import - <<\'EOF\'\n@@ -2085,6 +2459,6 @@\n > @@ -0,0 +1,1 @@\n > \\ No newline at end of file\n > EOF\n- applying patch from stdin\n- abort: bad hunk #1: incomplete hunk\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n [255]\n', 2095, 2097, 'truncated \\uXXXX escape') decoding diff, sorry
test-init.t
--- c:/hgdev/src/tests/test-init.t
+++ c:/hgdev/src/tests/test-init.t.err
@@ -289,4 +289,5 @@
> echo $x >> `expr $x % 5 + 1`
> hg commit -m $x
> done
+ /usr/bin/env: python3: $ENOENT$
$ cd ..
test-install.t
--- c:/hgdev/src/tests/test-install.t
+++ c:/hgdev/src/tests/test-install.t.err
@@ -5,10 +5,11 @@
checking Python implementation (*) (glob)
checking Python version (2.*) (glob) (no-py3 !)
checking Python version (3.*) (glob) (py3 !)
- checking Python lib (.*[Ll]ib.*)... (re)
- checking Python security support (*) (glob)
- TLS 1.2 not supported by Python install; network connections lack modern security (?)
- SNI not supported by Python install; may have connectivity issues with some servers (?)
+ TLS 1.2 not supported by Python install; network connections lack modern security (?)
+ SNI not supported by Python install; may have connectivity issues with some servers (?)
+ checking Python version (2.7.18)
+ checking Python lib (.*[Ll]ib.*)... (re)
+ checking Python security support (*) (glob)
checking Rust extensions \((installed|missing)\) (re)
checking Mercurial version (*) (glob)
checking Mercurial custom build (*) (glob)
@@ -39,6 +40,7 @@
"encoding": "ascii",
"encodingerror": null,
"extensionserror": null, (no-pure !)
+ "extensionserror": null,
"hgmodulepolicy": "*", (glob)
"hgmodules": "*mercurial", (glob)
"hgver": "*", (glob)
@@ -64,10 +66,11 @@
checking Python implementation (*) (glob)
checking Python version (2.*) (glob) (no-py3 !)
checking Python version (3.*) (glob) (py3 !)
- checking Python lib (.*[Ll]ib.*)... (re)
- checking Python security support (*) (glob)
- TLS 1.2 not supported by Python install; network connections lack modern security (?)
- SNI not supported by Python install; may have connectivity issues with some servers (?)
+ TLS 1.2 not supported by Python install; network connections lack modern security (?)
+ SNI not supported by Python install; may have connectivity issues with some servers (?)
+ checking Python version (2.7.18)
+ checking Python lib (.*[Ll]ib.*)... (re)
+ checking Python security support (*) (glob)
checking Rust extensions \((installed|missing)\) (re)
checking Mercurial version (*) (glob)
checking Mercurial custom build (*) (glob)
@@ -97,6 +100,7 @@
"defaulttemplateerror": null,
"encodingerror": "unknown encoding: invalidenc",
"extensionserror": null, (no-pure !)
+ "extensionserror": null,
"usernameerror": "no username supplied",
path variables are expanded (~ is the same as $TESTTMP)
@@ -111,10 +115,11 @@
checking Python implementation (*) (glob)
checking Python version (2.*) (glob) (no-py3 !)
checking Python version (3.*) (glob) (py3 !)
- checking Python lib (.*[Ll]ib.*)... (re)
- checking Python security support (*) (glob)
- TLS 1.2 not supported by Python install; network connections lack modern security (?)
- SNI not supported by Python install; may have connectivity issues with some servers (?)
+ TLS 1.2 not supported by Python install; network connections lack modern security (?)
+ SNI not supported by Python install; may have connectivity issues with some servers (?)
+ checking Python version (2.7.18)
+ checking Python lib (.*[Ll]ib.*)... (re)
+ checking Python security support (*) (glob)
checking Rust extensions \((installed|missing)\) (re)
checking Mercurial version (*) (glob)
checking Mercurial custom build (*) (glob)
@@ -138,25 +143,28 @@
checking Python implementation (*) (glob)
checking Python version (2.*) (glob) (no-py3 !)
checking Python version (3.*) (glob) (py3 !)
- checking Python lib (.*[Ll]ib.*)... (re)
- checking Python security support (*) (glob)
- TLS 1.2 not supported by Python install; network connections lack modern security (?)
- SNI not supported by Python install; may have connectivity issues with some servers (?)
- checking Rust extensions \((installed|missing)\) (re)
- checking Mercurial version (*) (glob)
- checking Mercurial custom build (*) (glob)
- checking module policy (*) (glob)
- checking installed modules (*mercurial)... (glob)
- checking registered compression engines (*zlib*) (glob)
- checking available compression engines (*zlib*) (glob)
- checking available compression engines for wire protocol (*zlib*) (glob)
- checking "re2" regexp engine \((available|missing)\) (re)
- checking templates (*mercurial?templates)... (glob)
- checking default template (*mercurial?templates?map-cmdline.default) (glob)
+ TLS 1.2 not supported by Python install; network connections lack modern security (?)
+ SNI not supported by Python install; may have connectivity issues with some servers (?)
checking commit editor... (c:ooaraz.exe) (windows !)
Can't find editor 'c:ooaraz.exe' in PATH (windows !)
checking commit editor... (c:foobarbaz.exe) (no-windows !)
Can't find editor 'c:foobarbaz.exe' in PATH (no-windows !)
+ checking Python version (2.7.18)
+ checking Python lib (.*[Ll]ib.*)... (re)
+ checking Python security support (*) (glob)
+ checking Rust extensions \((installed|missing)\) (re)
+ checking Mercurial version (*) (glob)
+ checking Mercurial custom build (*) (glob)
+ checking module policy (*) (glob)
+ checking installed modules (*mercurial)... (glob)
+ checking registered compression engines (*zlib*) (glob)
+ checking available compression engines (*zlib*) (glob)
+ checking available compression engines for wire protocol (*zlib*) (glob)
+ checking "re2" regexp engine \((available|missing)\) (re)
+ checking templates (*mercurial?templates)... (glob)
+ checking default template (*mercurial?templates?map-cmdline.default) (glob)
+ checking commit editor... (c:ooaraz.exe)
+ Can't find editor 'c:ooaraz.exe' in PATH
(specify a commit editor in your configuration file)
checking username (test)
1 problems detected, please check your install!
test-issue672.t
--- c:/hgdev/src/tests/test-issue672.t
+++ c:/hgdev/src/tests/test-issue672.t.err
@@ -63,8 +63,9 @@
resolving manifests
branchmerge: True, force: False, partial: False
ancestor: c64f439569a9, local: f4a9cff3cd0b+, remote: 746e9549ea96
+ starting 4 threads for background file closing
+ starting 4 threads for background file closing (?)
preserving 1a for resolve of 1a
- starting 4 threads for background file closing (?)
1a: local copied/moved from 1 -> m (premerge)
picked tool ':merge' for 1a (binary False symlink False changedelete False)
merging 1a and 1 to 1a
@@ -86,9 +87,10 @@
resolving manifests
branchmerge: True, force: False, partial: False
ancestor: c64f439569a9, local: 746e9549ea96+, remote: f4a9cff3cd0b
+ starting 4 threads for background file closing
preserving 1 for resolve of 1a
+ starting 4 threads for background file closing (?)
removing 1
- starting 4 threads for background file closing (?)
1a: remote moved from 1 -> m (premerge)
picked tool ':merge' for 1a (binary False symlink False changedelete False)
merging 1 and 1a to 1a
test-known.t
--- c:/hgdev/src/tests/test-known.t
+++ c:/hgdev/src/tests/test-known.t.err
@@ -34,4 +34,6 @@
$ cat error.log
$ killdaemons.py
+ /usr/bin/env: python3: $ENOENT$
+ [127]
test-largefiles-misc.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-largefiles-misc.t\n+++ c:/hgdev/src/tests/test-largefiles-misc.t.err\n@@ -1099,6 +1099,81 @@\n $ hg -R no-largefiles -q pull --rebase\n Invoking status precommit hook\n A normal3\n+ strip failed, backup bundle stored in \'$TESTTMP\\individualenabling\\no-largefiles\\.hg\\strip-backup/f3c7f05ee7f0-d9658dd7-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\individualenabling\\no-largefiles\\.hg\\strip-backup/f3c7f05ee7f0-446f2741-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\individualenabling\\no-largefiles\\.hg\\strip-backup/f3c7f05ee7f0-446f2741-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: largefiles, purge, rebase, transplant\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2153, in pullrebase\n+ rebase(ui, repo, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\largefiles\\overrides.py", line 1120, in overriderebasecmd\n+ return orig(ui, repo, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\largefiles\\overrides.py", line 1145, in _dorebase\n+ return orig(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n (test reverting)\n \n@@ -1131,6 +1206,7 @@\n $ hg -R subrepo-root extdiff -p echo -S --config extensions.extdiff=\n "*\\\\no-largefiles\\\\normal1" "*\\\\no-largefiles\\\\normal1" (glob) (windows !)\n */no-largefiles/normal1 */no-largefiles/normal1 (glob) (no-windows !)\n+ "c:\\\\temp\\\\extdiff.ucuaib\\\\subrepo-root.0b5e0928b798\\\\no-largefiles\\\\normal1" "$TESTTMP\\\\individualenabling\\\\subrepo-root\\\\no-largefiles\\\\normal1"\\r (esc)\n [1]\n $ hg -R subrepo-root revert --all\n reverting subrepo-root/.hglf/large\n', 2574, 2576, 'truncated \\uXXXX escape') decoding diff, sorry
test-largefiles.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-largefiles.t\n+++ c:/hgdev/src/tests/test-largefiles.t.err\n@@ -1215,10 +1215,86 @@\n M sub/normal4\n M sub2/large6\n saved backup bundle to $TESTTMP/d/.hg/strip-backup/f574fb32bb45-dd1d9f80-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\d\\.hg\\strip-backup/f574fb32bb45-dd1d9f80-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\d\\.hg\\strip-backup/f574fb32bb45-e586d974-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\d\\.hg\\strip-backup/f574fb32bb45-e586d974-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: largefiles, purge, rebase, transplant\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2153, in pullrebase\n+ rebase(ui, repo, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\largefiles\\overrides.py", line 1129, in overriderebasecmd\n+ return orig(ui, repo, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\largefiles\\overrides.py", line 1145, in _dorebase\n+ return orig(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ [ -f .hg/largefiles/e166e74c7303192238d60af5a9c4ce9bef0b7928 ]\n $ hg log --template \'{rev}:{node|short} {desc|firstline}\\n\'\n- 9:598410d3eb9a modify normal file largefile in repo d\n- 8:a381d2c8c80e modify normal file and largefile in repo b\n+ 10:598410d3eb9a modify normal file largefile in repo d\n+ 9:a381d2c8c80e modify normal file and largefile in repo b\n+ 8:f574fb32bb45 modify normal file largefile in repo d\n 7:daea875e9014 add/edit more largefiles\n 6:4355d653f84f edit files yet again\n 5:9d5af5072dbd edit files again\n@@ -1228,10 +1304,12 @@\n 1:ce8896473775 edit files\n 0:30d30fe6a5be add files\n $ hg log -G --template \'{rev}:{node|short} {desc|firstline}\\n\'\n- @ 9:598410d3eb9a modify normal file largefile in repo d\n- |\n- o 8:a381d2c8c80e modify normal file and largefile in repo b\n- |\n+ @ 10:598410d3eb9a modify normal file largefile in repo d\n+ |\n+ o 9:a381d2c8c80e modify normal file and largefile in repo b\n+ |\n+ | o 8:f574fb32bb45 modify normal file largefile in repo d\n+ |/\n o 7:daea875e9014 add/edit more largefiles\n |\n o 6:4355d653f84f edit files yet again\n@@ -1274,9 +1352,85 @@\n M sub/normal4\n M sub2/large6\n saved backup bundle to $TESTTMP/e/.hg/strip-backup/f574fb32bb45-dd1d9f80-rebase.hg\n+ strip failed, backup bundle stored in \'$TESTTMP\\e\\.hg\\strip-backup/f574fb32bb45-dd1d9f80-rebase.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\e\\.hg\\strip-backup/f574fb32bb45-e586d974-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\e\\.hg\\strip-backup/f574fb32bb45-e586d974-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: largefiles, purge, rebase, transplant\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\largefiles\\overrides.py", line 1129, in overriderebasecmd\n+ return orig(ui, repo, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1125, in rebase\n+ return _dorebase(ui, repo, action, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\largefiles\\overrides.py", line 1145, in _dorebase\n+ return orig(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1190, in _dorebase\n+ return _origrebase(ui, repo, action, opts, rbsrt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 1268, in _origrebase\n+ rbsrt._finishrebase()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 775, in _finishrebase\n+ backup=self.backupf,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\rebase.py", line 2100, in clearrebased\n+ scmutil.cleanupnodes(repo, replacements, b\'rebase\', moves, backup=backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 1229, in cleanupnodes\n+ repo.ui, repo, tostrip, operation, backup=backup\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg log --template \'{rev}:{node|short} {desc|firstline}\\n\'\n- 9:598410d3eb9a modify normal file largefile in repo d\n- 8:a381d2c8c80e modify normal file and largefile in repo b\n+ 10:598410d3eb9a modify normal file largefile in repo d\n+ 9:a381d2c8c80e modify normal file and largefile in repo b\n+ 8:f574fb32bb45 modify normal file largefile in repo d\n 7:daea875e9014 add/edit more largefiles\n 6:4355d653f84f edit files yet again\n 5:9d5af5072dbd edit files again\n@@ -1300,12 +1454,12 @@\n \n - same output\n $ hg log --template \'{rev}:{node|short} {desc|firstline}\\n\' .hglf/sub/large4\n- 8:a381d2c8c80e modify normal file and largefile in repo b\n+ 9:a381d2c8c80e modify normal file and largefile in repo b\n 6:4355d653f84f edit files yet again\n 5:9d5af5072dbd edit files again\n 4:74c02385b94c move files\n $ hg log -G --template \'{rev}:{node|short} {desc|firstline}\\n\' .hglf/sub/large4\n- o 8:a381d2c8c80e modify normal file and largefile in repo b\n+ o 9:a381d2c8c80e modify normal file and largefile in repo b\n :\n o 6:4355d653f84f edit files yet again\n |\n@@ -1315,12 +1469,12 @@\n |\n ~\n $ hg log --template \'{rev}:{node|short} {desc|firstline}\\n\' sub/large4\n- 8:a381d2c8c80e modify normal file and largefile in repo b\n+ 9:a381d2c8c80e modify normal file and largefile in repo b\n 6:4355d653f84f edit files yet again\n 5:9d5af5072dbd edit files again\n 4:74c02385b94c move files\n $ hg log -G --template \'{rev}:{node|short} {desc|firstline}\\n\' .hglf/sub/large4\n- o 8:a381d2c8c80e modify normal file and largefile in repo b\n+ o 9:a381d2c8c80e modify normal file and largefile in repo b\n :\n o 6:4355d653f84f edit files yet again\n |\n@@ -1332,14 +1486,14 @@\n \n - .hglf only matches largefiles, without .hglf it matches 9 bco sub/normal\n $ hg log --template \'{rev}:{node|short} {desc|firstline}\\n\' .hglf/sub\n- 8:a381d2c8c80e modify normal file and largefile in repo b\n+ 9:a381d2c8c80e modify normal file and largefile in repo b\n 6:4355d653f84f edit files yet again\n 5:9d5af5072dbd edit files again\n 4:74c02385b94c move files\n 1:ce8896473775 edit files\n 0:30d30fe6a5be add files\n $ hg log -G --template \'{rev}:{node|short} {desc|firstline}\\n\' .hglf/sub\n- o 8:a381d2c8c80e modify normal file and largefile in repo b\n+ o 9:a381d2c8c80e modify normal file and largefile in repo b\n :\n o 6:4355d653f84f edit files yet again\n |\n@@ -1352,18 +1506,21 @@\n o 0:30d30fe6a5be add files\n \n $ hg log --template \'{rev}:{node|short} {desc|firstline}\\n\' sub\n- 9:598410d3eb9a modify normal file largefile in repo d\n- 8:a381d2c8c80e modify normal file and largefile in repo b\n+ 10:598410d3eb9a modify normal file largefile in repo d\n+ 9:a381d2c8c80e modify normal file and largefile in repo b\n+ 8:f574fb32bb45 modify normal file largefile in repo d\n 6:4355d653f84f edit files yet again\n 5:9d5af5072dbd edit files again\n 4:74c02385b94c move files\n 1:ce8896473775 edit files\n 0:30d30fe6a5be add files\n $ hg log -G --template \'{rev}:{node|short} {desc|firstline}\\n\' sub\n- @ 9:598410d3eb9a modify normal file largefile in repo d\n- |\n- o 8:a381d2c8c80e modify normal file and largefile in repo b\n+ @ 10:598410d3eb9a modify normal file largefile in repo d\n+ |\n+ o 9:a381d2c8c80e modify normal file and largefile in repo b\n :\n+ : o 8:f574fb32bb45 modify normal file largefile in repo d\n+ :/\n o 6:4355d653f84f edit files yet again\n |\n o 5:9d5af5072dbd edit files again\n@@ -1376,18 +1533,21 @@\n \n - globbing gives same result\n $ hg log --template \'{rev}:{node|short} {desc|firstline}\\n\' \'glob:sub/*\'\n- 9:598410d3eb9a modify normal file largefile in repo d\n- 8:a381d2c8c80e modify normal file and largefile in repo b\n+ 10:598410d3eb9a modify normal file largefile in repo d\n+ 9:a381d2c8c80e modify normal file and largefile in repo b\n+ 8:f574fb32bb45 modify normal file largefile in repo d\n 6:4355d653f84f edit files yet again\n 5:9d5af5072dbd edit files again\n 4:74c02385b94c move files\n 1:ce8896473775 edit files\n 0:30d30fe6a5be add files\n $ hg log -G --template \'{rev}:{node|short} {desc|firstline}\\n\' \'glob:sub/*\'\n- @ 9:598410d3eb9a modify normal file largefile in repo d\n- |\n- o 8:a381d2c8c80e modify normal file and largefile in repo b\n+ @ 10:598410d3eb9a modify normal file largefile in repo d\n+ |\n+ o 9:a381d2c8c80e modify normal file and largefile in repo b\n :\n+ : o 8:f574fb32bb45 modify normal file largefile in repo d\n+ :/\n o 6:4355d653f84f edit files yet again\n |\n o 5:9d5af5072dbd edit files again\n@@ -1402,16 +1562,17 @@\n \n $ echo large4-modified-again > sub/large4\n $ hg commit -m "Modify large4 again"\n- Invoking status precommit hook\n- M sub/large4\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ hg rollback\n- repository tip rolled back to revision 9 (undo commit)\n- working directory now based on revision 9\n+ repository tip rolled back to revision 10 (undo cleanup)\n $ hg st\n M sub/large4\n $ hg log --template \'{rev}:{node|short} {desc|firstline}\\n\'\n- 9:598410d3eb9a modify normal file largefile in repo d\n- 8:a381d2c8c80e modify normal file and largefile in repo b\n+ 10:598410d3eb9a modify normal file largefile in repo d\n+ 9:a381d2c8c80e modify normal file and largefile in repo b\n+ 8:f574fb32bb45 modify normal file largefile in repo d\n 7:daea875e9014 add/edit more largefiles\n 6:4355d653f84f edit files yet again\n 5:9d5af5072dbd edit files again\n@@ -1425,8 +1586,9 @@\n \n "update --check" refuses to update with uncommitted changes.\n $ hg update --check 8\n- abort: uncommitted changes\n- [255]\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n \n "update --clean" leaves correct largefiles in working copy, even when there is\n .orig files from revert in .hglf.\n@@ -1440,16 +1602,19 @@\n $ test ! -f .hglf/sub2/large7.orig\n \n $ hg -q update --clean -r null\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ hg update --clean\n- getting changed largefiles\n- 3 largefiles updated, 0 removed\n- 5 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ cat normal3\n normal3-modified\n $ cat sub/normal4\n normal4-modified\n $ cat sub/large4\n- large4-modified\n+ large4-modified-again\n $ cat sub2/large6\n large6-modified\n $ cat sub2/large7\n@@ -1460,28 +1625,36 @@\n \n verify that largefile .orig file no longer is overwritten on every update -C:\n $ hg update --clean\n- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ cat sub2/large7.orig\n mistake\n $ rm sub2/large7.orig\n \n Now "update check" is happy.\n $ hg update --check 8\n- getting changed largefiles\n- 1 largefiles updated, 0 removed\n- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ hg update --check\n- getting changed largefiles\n- 1 largefiles updated, 0 removed\n- 2 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n \n Test removing empty largefiles directories on update\n $ test -d sub2 && echo "sub2 exists"\n sub2 exists\n $ hg update -q null\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ test -d sub2 && echo "error: sub2 should not exist anymore"\n- [1]\n+ error: sub2 should not exist anymore\n $ hg update -q\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n \n Test hg remove removes empty largefiles directories\n $ test -d sub2 && echo "sub2 exists"\n@@ -1531,10 +1704,10 @@\n \n revert some files to an older revision\n $ hg revert --no-backup -r 8 sub2\n+ $ cat sub2/large6\n+ large6-modified\n+ $ hg revert --no-backup -C -r \'.^\' sub2\n reverting .hglf/sub2/large6\n- $ cat sub2/large6\n- large6\n- $ hg revert --no-backup -C -r \'.^\' sub2\n $ hg revert --no-backup sub2\n reverting .hglf/sub2/large6\n $ hg status\n@@ -1548,11 +1721,12 @@\n default = $TESTTMP/d\n \n $ hg verify --large\n+ abandoned transaction found - run hg recover\n checking changesets\n checking manifests\n crosschecking files in changesets and manifests\n checking files\n- checked 10 changesets with 28 changes to 10 files\n+ checked 11 changesets with 28 changes to 10 files\n searching 1 changesets for largefiles\n verified existence of 3 revisions of 3 largefiles\n \n@@ -1562,20 +1736,22 @@\n $ mv $TESTTMP/d/.hg/largefiles/e166e74c7303192238d60af5a9c4ce9bef0b7928 .\n $ rm .hg/largefiles/e166e74c7303192238d60af5a9c4ce9bef0b7928\n $ hg verify --large\n+ abandoned transaction found - run hg recover\n checking changesets\n checking manifests\n crosschecking files in changesets and manifests\n checking files\n- checked 10 changesets with 28 changes to 10 files\n+ checked 11 changesets with 28 changes to 10 files\n searching 1 changesets for largefiles\n- changeset 9:598410d3eb9a: sub/large4 references missing $TESTTMP/d/.hg/largefiles/e166e74c7303192238d60af5a9c4ce9bef0b7928\n+ changeset 10:598410d3eb9a: sub/large4 references missing $TESTTMP/d/.hg/largefiles/e166e74c7303192238d60af5a9c4ce9bef0b7928\n verified existence of 3 revisions of 3 largefiles\n [1]\n \n - introduce corruption and make sure that it is caught when checking content:\n $ echo \'5 cents\' > $TESTTMP/d/.hg/largefiles/e166e74c7303192238d60af5a9c4ce9bef0b7928\n $ hg verify -q --large --lfc\n- changeset 9:598410d3eb9a: sub/large4 references corrupted $TESTTMP/d/.hg/largefiles/e166e74c7303192238d60af5a9c4ce9bef0b7928\n+ abandoned transaction found - run hg recover\n+ changeset 10:598410d3eb9a: sub/large4 references corrupted $TESTTMP/d/.hg/largefiles/e166e74c7303192238d60af5a9c4ce9bef0b7928\n [1]\n \n - cleanup\n@@ -1585,6 +1761,7 @@\n - verifying all revisions will fail because we didn\'t clone all largefiles to d:\n $ echo \'T-shirt\' > $TESTTMP/d/.hg/largefiles/eb7338044dc27f9bc59b8dd5a246b065ead7a9c4\n $ hg verify -q --lfa --lfc\n+ abandoned transaction found - run hg recover\n changeset 0:30d30fe6a5be: large1 references missing $TESTTMP/d/.hg/largefiles/4669e532d5b2c093a78eca010077e708a071bb64\n changeset 0:30d30fe6a5be: sub/large2 references missing $TESTTMP/d/.hg/largefiles/1deebade43c8c498a3c8daddac0244dc55d1331d\n changeset 1:ce8896473775: large1 references missing $TESTTMP/d/.hg/largefiles/5f78770c0e77ba4287ad6ef3071c9bf9c379742f\n@@ -1605,55 +1782,58 @@\n \n $ rm ${USERCACHE}/7838695e10da2bb75ac1156565f40a2595fa2fa0\n $ hg up -r 6\n- getting changed largefiles\n- large3: largefile 7838695e10da2bb75ac1156565f40a2595fa2fa0 not available from file:/*/$TESTTMP/d (glob)\n- 1 largefiles updated, 2 removed\n- 4 files updated, 0 files merged, 2 files removed, 0 files unresolved\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ rm normal3\n $ echo >> sub/normal4\n $ hg ci -m \'commit with missing files\'\n- Invoking status precommit hook\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n+ $ hg st\n M sub/normal4\n- ! large3\n- ! normal3\n- created new head\n- $ hg st\n- ! large3\n ! normal3\n $ hg up -r.\n- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ hg st\n- ! large3\n+ M sub/normal4\n ! normal3\n $ hg up -Cr.\n- getting changed largefiles\n- large3: largefile 7838695e10da2bb75ac1156565f40a2595fa2fa0 not available from file:/*/$TESTTMP/d (glob)\n- 0 largefiles updated, 0 removed\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ hg st\n- ! large3\n+ M sub/normal4\n+ ! normal3\n $ hg rollback\n- repository tip rolled back to revision 9 (undo commit)\n- working directory now based on revision 6\n+ no rollback information available\n+ [1]\n \n Merge with revision with missing largefile - and make sure it tries to fetch it.\n \n $ hg up -Cqr null\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ echo f > f\n $ hg ci -Am branch\n- adding f\n- Invoking status precommit hook\n- A f\n- created new head\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n $ hg merge -r 6\n- getting changed largefiles\n- large3: largefile 7838695e10da2bb75ac1156565f40a2595fa2fa0 not available from file:/*/$TESTTMP/d (glob)\n- 1 largefiles updated, 0 removed\n- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- (branch merge, don\'t forget to commit)\n+ abort: merging with a working directory ancestor has no effect\n+ [255]\n \n $ hg rollback -q\n+ no rollback information available\n+ [1]\n $ hg up -Cq\n+ abort: rebase in progress\n+ (use \'hg rebase --continue\', \'hg rebase --abort\', or \'hg rebase --stop\')\n+ [20]\n \n Pulling 0 revisions with --all-largefiles should not fetch for all revisions\n \n@@ -1697,32 +1877,25 @@\n adding changesets\n adding manifests\n adding file changes\n- added 2 changesets with 4 changes to 4 files (+1 heads)\n- new changesets a381d2c8c80e:598410d3eb9a (2 drafts)\n+ added 3 changesets with 4 changes to 4 files (+2 heads)\n+ new changesets f574fb32bb45:598410d3eb9a (3 drafts)\n (run \'hg heads\' to see heads, \'hg merge\' to merge)\n 2 largefiles cached\n $ hg merge\n- largefile sub/large4 has a merge conflict\n- ancestor was 971fb41e78fea4f8e0ba5244784239371cb00591\n- you can keep (l)ocal d846f26643bfa8ec210be40cc93cc6b7ff1128ea or take (o)ther e166e74c7303192238d60af5a9c4ce9bef0b7928.\n- what do you want to do? l\n- getting changed largefiles\n- 1 largefiles updated, 0 removed\n- 3 files updated, 1 files merged, 0 files removed, 0 files unresolved\n- (branch merge, don\'t forget to commit)\n+ abort: branch \'default\' has 3 heads - please merge with an explicit rev\n+ (run \'hg heads .\' to see heads, specify rev with -r)\n+ [255]\n $ hg commit -m "Merge repos e and f"\n- Invoking status precommit hook\n- M normal3\n- M sub/normal4\n- M sub2/large6\n+ nothing changed\n+ [1]\n $ cat normal3\n- normal3-modified\n+ normal33\n $ cat sub/normal4\n- normal4-modified\n+ normal44\n $ cat sub/large4\n large4-merge-test\n $ cat sub2/large6\n- large6-modified\n+ large6\n $ cat sub2/large7\n large7\n \n@@ -1740,22 +1913,18 @@\n M normal3\n created new head\n $ hg merge\n- getting changed largefiles\n- 1 largefiles updated, 0 removed\n- 1 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- (branch merge, don\'t forget to commit)\n+ abort: branch \'default\' has 4 heads - please merge with an explicit rev\n+ (run \'hg heads .\' to see heads, specify rev with -r)\n+ [255]\n $ hg status\n- M large\n \n - make sure update of merge with removed largefiles fails as expected\n $ hg rm sub2/large6\n $ hg up -r.\n- abort: outstanding uncommitted merge\n- [255]\n+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n \n - revert should be able to revert files introduced in a pending merge\n $ hg revert --all -r .\n- removing .hglf/large\n undeleting .hglf/sub2/large6\n \n Test that a normal file and a largefile with the same name and path cannot\n@@ -1774,7 +1943,7 @@\n adding manifests\n adding file changes\n added 9 changesets with 26 changes to 10 files\n- new changesets 30d30fe6a5be:a381d2c8c80e (9 drafts)\n+ new changesets 30d30fe6a5be:f574fb32bb45 (9 drafts)\n updating to branch default\n getting changed largefiles\n 3 largefiles updated, 0 removed\n@@ -1782,15 +1951,18 @@\n $ cd g\n $ hg transplant -s ../d 598410d3eb9a\n searching for changes\n- searching for changes\n- adding changesets\n- adding manifests\n- adding file changes\n- added 1 changesets with 2 changes to 2 files\n- new changesets 598410d3eb9a (1 drafts)\n+ applying 598410d3eb9a\n+ patching file .hglf/sub2/large6\n+ Hunk #1 FAILED at 0\n+ 1 out of 1 hunks FAILED -- saving rejects to file .hglf/sub2/large6.rej\n+ patching file sub/normal4\n+ Hunk #1 FAILED at 0\n+ 1 out of 1 hunks FAILED -- saving rejects to file sub/normal4.rej\n+ patch failed to apply\n+ abort: fix up the working directory and run hg transplant --continue\n+ [255]\n $ hg log --template \'{rev}:{node|short} {desc|firstline}\\n\'\n- 9:598410d3eb9a modify normal file largefile in repo d\n- 8:a381d2c8c80e modify normal file and largefile in repo b\n+ 8:f574fb32bb45 modify normal file largefile in repo d\n 7:daea875e9014 add/edit more largefiles\n 6:4355d653f84f edit files yet again\n 5:9d5af5072dbd edit files again\n@@ -1800,11 +1972,11 @@\n 1:ce8896473775 edit files\n 0:30d30fe6a5be add files\n $ cat normal3\n- normal3-modified\n+ normal33\n $ cat sub/normal4\n normal4-modified\n $ cat sub/large4\n- large4-modified\n+ large44\n $ cat sub2/large6\n large6-modified\n $ cat sub2/large7\n@@ -1812,46 +1984,55 @@\n \n Cat a largefile\n $ hg cat normal3\n- normal3-modified\n+ normal33\n $ hg cat sub/large4\n- large4-modified\n+ large44\n $ rm "${USERCACHE}"/*\n $ hg cat -r a381d2c8c80e -o cat.out sub/large4\n+ abort: unknown revision \'a381d2c8c80e\'\n+ [255]\n $ cat cat.out\n- large4-modified\n+ cat: cat.out: $ENOENT$\n+ [1]\n $ rm cat.out\n+ rm: cannot lstat `cat.out\': $ENOENT$\n+ [1]\n $ hg cat -r a381d2c8c80e normal3\n- normal3-modified\n+ abort: unknown revision \'a381d2c8c80e\'\n+ [255]\n $ hg cat -r \'.^\' normal3\n- normal3-modified\n+ normal33\n $ hg cat -r \'.^\' sub/large4 doesntexist\n- large4-modified\n- doesntexist: no such file in rev a381d2c8c80e\n+ large44\n+ doesntexist: no such file in rev daea875e9014\n $ hg --cwd sub cat -r \'.^\' large4\n- large4-modified\n+ large44\n $ hg --cwd sub cat -r \'.^\' ../normal3\n- normal3-modified\n+ normal33\n Cat a standin\n $ hg cat .hglf/sub/large4\n- e166e74c7303192238d60af5a9c4ce9bef0b7928\n+ 971fb41e78fea4f8e0ba5244784239371cb00591\n $ hg cat .hglf/normal3\n- .hglf/normal3: no such file in rev 598410d3eb9a\n+ .hglf/normal3: no such file in rev f574fb32bb45\n [1]\n \n Test that renaming a largefile results in correct output for status\n \n $ hg rename sub/large4 large4-renamed\n $ hg commit -m "test rename output"\n- Invoking status precommit hook\n- A large4-renamed\n- R sub/large4\n+ abort: transplant in progress\n+ (use \'hg transplant --continue\' or \'hg transplant --stop\')\n+ [20]\n $ cat large4-renamed\n- large4-modified\n+ large44\n $ cd sub2\n $ hg rename large6 large6-renamed\n $ hg st\n+ A large4-renamed\n A sub2/large6-renamed\n+ R sub/large4\n R sub2/large6\n+ ? sub/normal4.rej\n $ cd ..\n \n Test --normal flag\n@@ -1871,6 +2052,8 @@\n \n $ hg up -qC\n $ hg forget normal3 large4-renamed\n+ not removing large4-renamed: file is already untracked\n+ [1]\n $ hg add --large normal3\n $ hg add large4-renamed\n $ hg commit -m \'swap\' normal3 large4-renamed\n@@ -1878,9 +2061,11 @@\n A large4-renamed\n A normal3\n ? new-largefile\n+ ? sub/normal4.rej\n ? sub2/large6-renamed\n $ hg mani\n .hglf/normal3\n+ .hglf/sub/large4\n .hglf/sub2/large6\n .hglf/sub2/large7\n large4-renamed\n', 2503, 2505, 'truncated \\uXXXX escape') decoding diff, sorry
test-lfconvert.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-lfconvert.t\n+++ c:/hgdev/src/tests/test-lfconvert.t.err\n@@ -68,21 +68,74 @@\n $ cd bigfile-repo\n $ hg strip --no-backup 2\n 0 files updated, 0 files merged, 2 files removed, 0 files unresolved\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: convert, share, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ cd ..\n $ rm -rf largefiles-repo largefiles-repo-symlink\n \n $ hg lfconvert --size 0.2 bigfile-repo largefiles-repo\n initializing destination largefiles-repo\n+ skipping incorrectly formatted tag IncorrectlyFormattedTag!\n+ skipping incorrectly formatted id invalidhash\n+ no mapping for id 0123456789abcdef\n \n "lfconvert" converts content correctly\n $ cd largefiles-repo\n $ hg up\n getting changed largefiles\n- 2 largefiles updated, 0 removed\n- 4 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 3 largefiles updated, 0 removed\n+ 6 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg locate\n .hglf/large\n+ .hglf/large2\n .hglf/sub/maybelarge.dat\n+ .hgtags\n normal1\n sub/normal2\n $ cat normal1\n@@ -90,8 +143,8 @@\n $ cat sub/normal2\n alsonormal\n $ md5sum.py large sub/maybelarge.dat\n- ec87a838931d4d5d2e94a04644788a55 large\n- 1276481102f218c981e0324180bafd9f sub/maybelarge.dat\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n \n "lfconvert" adds \'largefiles\' to .hg/requires.\n $ cat .hg/requires\n@@ -114,41 +167,48 @@\n $ cd bigfile-repo\n $ hg mv -q sub stuff\n $ hg commit -m"rename sub/ to stuff/"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg update -q 1\n $ echo blah >> normal3\n $ echo blah >> sub/normal2\n+ $TESTTMP.sh: line 102: sub/normal2: $ENOENT$\n+ [1]\n $ echo blah >> sub/maybelarge.dat\n+ $TESTTMP.sh: line 104: sub/maybelarge.dat: $ENOENT$\n+ [1]\n $ md5sum.py sub/maybelarge.dat\n- 1dd0b99ff80e19cff409702a1d3f5e15 sub/maybelarge.dat\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ hg commit -A -m"add normal3, modify sub/*"\n adding normal3\n- created new head\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg rm large normal3\n+ not removing normal3: file is untracked\n+ [1]\n $ hg commit -q -m"remove large, normal3"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg merge\n- tool internal:merge (for pattern stuff/maybelarge.dat) can\'t handle binary\n- no tool found to merge stuff/maybelarge.dat\n- file \'stuff/maybelarge.dat\' needs to be resolved.\n- You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved.\n- What do you want to do? u\n- merging sub/normal2 and stuff/normal2 to stuff/normal2\n- 0 files updated, 1 files merged, 0 files removed, 1 files unresolved\n- use \'hg resolve\' to retry unresolved file merges or \'hg merge --abort\' to abandon\n- [1]\n+ abort: nothing to merge\n+ (use \'hg update\' instead)\n+ [255]\n $ hg cat -r . sub/maybelarge.dat > stuff/maybelarge.dat\n $ hg resolve -m stuff/maybelarge.dat\n- (no more unresolved files)\n+ abort: resolve command not applicable when not merging\n+ [20]\n $ hg commit -m"merge"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -G --template "{rev}:{node|short} {desc|firstline}\\n"\n- @ 5:4884f215abda merge\n- |\\\n- | o 4:7285f817b77e remove large, normal3\n- | |\n- | o 3:67e3892e3534 add normal3, modify sub/*\n- | |\n- o | 2:c96c8beb5d56 rename sub/ to stuff/\n- |/\n- o 1:020c65d24e11 add sub/*\n+ o 2:5caa4bef4527 add large2\n+ |\n+ @ 1:020c65d24e11 add sub/*\n |\n o 0:117b8328f97a add large, normal1\n \n@@ -158,50 +218,48 @@\n $ rm -rf largefiles-repo\n $ hg lfconvert --size 0.2 bigfile-repo largefiles-repo\n initializing destination largefiles-repo\n+ skipping incorrectly formatted tag IncorrectlyFormattedTag!\n+ skipping incorrectly formatted id invalidhash\n+ no mapping for id 0123456789abcdef\n $ cd largefiles-repo\n $ hg log -G --template "{rev}:{node|short} {desc|firstline}\\n"\n- o 5:9cc5aa7204f0 merge\n- |\\\n- | o 4:a5a02de7a8e4 remove large, normal3\n- | |\n- | o 3:55759520c76f add normal3, modify sub/*\n- | |\n- o | 2:261ad3f3f037 rename sub/ to stuff/\n- |/\n+ o 2:016f2d0bc43e add large2\n+ |\n o 1:334e5237836d add sub/*\n |\n o 0:d4892ec57ce2 add large, normal1\n \n $ hg locate -r 2\n .hglf/large\n- .hglf/stuff/maybelarge.dat\n+ .hglf/large2\n+ .hglf/sub/maybelarge.dat\n+ .hgtags\n normal1\n- stuff/normal2\n+ sub/normal2\n $ hg locate -r 3\n .hglf/large\n .hglf/sub/maybelarge.dat\n normal1\n- normal3\n sub/normal2\n $ hg locate -r 4\n- .hglf/sub/maybelarge.dat\n- normal1\n- sub/normal2\n+ abort: unknown revision \'4\'\n+ [255]\n $ hg locate -r 5\n- .hglf/stuff/maybelarge.dat\n- normal1\n- stuff/normal2\n+ abort: unknown revision \'5\'\n+ [255]\n $ hg update\n getting changed largefiles\n- 1 largefiles updated, 0 removed\n- 3 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 3 largefiles updated, 0 removed\n+ 6 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ cat stuff/normal2\n- alsonormal\n- blah\n+ cat: stuff/normal2: $ENOENT$\n+ [1]\n $ md5sum.py stuff/maybelarge.dat\n- 1dd0b99ff80e19cff409702a1d3f5e15 stuff/maybelarge.dat\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ cat .hglf/stuff/maybelarge.dat\n- 76236b6a2c6102826c61af4297dd738fb3b1de38\n+ cat: .hglf/stuff/maybelarge.dat: $ENOENT$\n+ [1]\n $ cd ..\n \n "lfconvert" error cases\n@@ -244,14 +302,11 @@\n scanning source...\n sorting...\n converting...\n- 7 add large, normal1\n- 6 add sub/*\n- 5 rename sub/ to stuff/\n- 4 add normal3, modify sub/*\n- 3 remove large, normal3\n- 2 merge\n+ 4 add large, normal1\n+ 3 add sub/*\n+ 2 add large2\n 1 add anotherlarge (should be a largefile)\n- 0 Added tag mytag for changeset 17126745edfd\n+ 0 Added tag mytag for changeset bf1fb7f17bb2\n $ cd ../normal-repo\n $ cat >> .hg/hgrc <<EOF\n > [extensions]\n@@ -259,30 +314,26 @@\n > EOF\n \n $ hg log -G --template "{rev}:{node|short} {desc|firstline}\\n"\n- o 7:b5fedc110b9d Added tag mytag for changeset 867ab992ecf4\n- |\n- o 6:867ab992ecf4 add anotherlarge (should be a largefile)\n- |\n- o 5:4884f215abda merge\n- |\\\n- | o 4:7285f817b77e remove large, normal3\n- | |\n- | o 3:67e3892e3534 add normal3, modify sub/*\n- | |\n- o | 2:c96c8beb5d56 rename sub/ to stuff/\n- |/\n+ o 4:212274bef996 Added tag mytag for changeset 6e1a26fd2c06\n+ |\n+ o 3:6e1a26fd2c06 add anotherlarge (should be a largefile)\n+ |\n+ o 2:e5b3a291af7d add large2\n+ |\n o 1:020c65d24e11 add sub/*\n |\n o 0:117b8328f97a add large, normal1\n \n $ hg update\n- 5 files updated, 0 files merged, 0 files removed, 0 files unresolved\n+ 7 files updated, 0 files merged, 0 files removed, 0 files unresolved\n $ hg locate\n .hgtags\n anotherlarge\n+ large\n+ large2\n normal1\n- stuff/maybelarge.dat\n- stuff/normal2\n+ sub/maybelarge.dat\n+ sub/normal2\n $ [ -d .hg/largefiles ] && echo fail || echo pass\n pass\n \n@@ -297,28 +348,19 @@\n scanning source...\n sorting...\n converting...\n- 7 add large, normal1\n- 6 add sub/*\n- 5 rename sub/ to stuff/\n- 4 add normal3, modify sub/*\n- 3 remove large, normal3\n- 2 merge\n+ 4 add large, normal1\n+ 3 add sub/*\n+ 2 add large2\n 1 add anotherlarge (should be a largefile)\n- 0 Added tag mytag for changeset 17126745edfd\n+ 0 Added tag mytag for changeset bf1fb7f17bb2\n \n $ hg -R largefiles-repo-hg log -G --template "{rev}:{node|short} {desc|firstline}\\n"\n- o 7:2f08f66459b7 Added tag mytag for changeset 17126745edfd\n- |\n- o 6:17126745edfd add anotherlarge (should be a largefile)\n- |\n- o 5:9cc5aa7204f0 merge\n- |\\\n- | o 4:a5a02de7a8e4 remove large, normal3\n- | |\n- | o 3:55759520c76f add normal3, modify sub/*\n- | |\n- o | 2:261ad3f3f037 rename sub/ to stuff/\n- |/\n+ o 4:de841e182b29 Added tag mytag for changeset bf1fb7f17bb2\n+ |\n+ o 3:bf1fb7f17bb2 add anotherlarge (should be a largefile)\n+ |\n+ o 2:016f2d0bc43e add large2\n+ |\n o 1:334e5237836d add sub/*\n |\n o 0:d4892ec57ce2 add large, normal1\n@@ -341,15 +383,13 @@\n checking manifests\n crosschecking files in changesets and manifests\n checking files\n- checked 8 changesets with 13 changes to 9 files\n- searching 7 changesets for largefiles\n+ checked 5 changesets with 8 changes to 7 files\n+ searching 4 changesets for largefiles\n changeset 0:d4892ec57ce2: large references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/2e000fa7e85759c7f4c254d4d9c33ef481e459a7\n changeset 1:334e5237836d: sub/maybelarge.dat references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c\n- changeset 2:261ad3f3f037: stuff/maybelarge.dat references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c\n- changeset 3:55759520c76f: sub/maybelarge.dat references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/76236b6a2c6102826c61af4297dd738fb3b1de38\n- changeset 5:9cc5aa7204f0: stuff/maybelarge.dat references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/76236b6a2c6102826c61af4297dd738fb3b1de38\n- changeset 6:17126745edfd: anotherlarge references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/3b71f43ff30f4b15b5cd85dd9e95ebc7e84eb5a3\n- verified existence of 6 revisions of 4 largefiles\n+ changeset 2:016f2d0bc43e: large2 references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/2e000fa7e85759c7f4c254d4d9c33ef481e459a7\n+ changeset 3:bf1fb7f17bb2: anotherlarge references missing $TESTTMP/largefiles-repo-hg/.hg/largefiles/3b71f43ff30f4b15b5cd85dd9e95ebc7e84eb5a3\n+ verified existence of 4 revisions of 4 largefiles\n [1]\n $ hg -R largefiles-repo-hg showconfig paths\n [1]\n@@ -364,18 +404,15 @@\n $ hg -R issue3519 ci -m \'change branch name only\'\n $ hg lfconvert --to-normal issue3519 normalized3519\n initializing destination normalized3519\n- 4 additional largefiles cached\n+ 3 additional largefiles cached\n scanning source...\n sorting...\n converting...\n- 8 add large, normal1\n- 7 add sub/*\n- 6 rename sub/ to stuff/\n- 5 add normal3, modify sub/*\n- 4 remove large, normal3\n- 3 merge\n+ 5 add large, normal1\n+ 4 add sub/*\n+ 3 add large2\n 2 add anotherlarge (should be a largefile)\n- 1 Added tag mytag for changeset 17126745edfd\n+ 1 Added tag mytag for changeset bf1fb7f17bb2\n 0 change branch name only\n \n Ensure empty commits aren\'t lost in the conversion\n@@ -393,15 +430,14 @@\n large: largefile 2e000fa7e85759c7f4c254d4d9c33ef481e459a7 not available from file:/*/$TESTTMP/largefiles-repo (glob)\n sub/maybelarge.dat: largefile 34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c not available from file:/*/$TESTTMP/largefiles-repo (glob)\n large: largefile 2e000fa7e85759c7f4c254d4d9c33ef481e459a7 not available from file:/*/$TESTTMP/largefiles-repo (glob)\n- stuff/maybelarge.dat: largefile 34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c not available from file:/*/$TESTTMP/largefiles-repo (glob)\n+ large2: largefile 2e000fa7e85759c7f4c254d4d9c33ef481e459a7 not available from file:/*/$TESTTMP/largefiles-repo (glob)\n+ sub/maybelarge.dat: largefile 34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c not available from file:/*/$TESTTMP/largefiles-repo (glob)\n+ anotherlarge: largefile 3b71f43ff30f4b15b5cd85dd9e95ebc7e84eb5a3 not available from file:/*/$TESTTMP/largefiles-repo (glob)\n large: largefile 2e000fa7e85759c7f4c254d4d9c33ef481e459a7 not available from file:/*/$TESTTMP/largefiles-repo (glob)\n- sub/maybelarge.dat: largefile 76236b6a2c6102826c61af4297dd738fb3b1de38 not available from file:/*/$TESTTMP/largefiles-repo (glob)\n- sub/maybelarge.dat: largefile 76236b6a2c6102826c61af4297dd738fb3b1de38 not available from file:/*/$TESTTMP/largefiles-repo (glob)\n- stuff/maybelarge.dat: largefile 76236b6a2c6102826c61af4297dd738fb3b1de38 not available from file:/*/$TESTTMP/largefiles-repo (glob)\n- anotherlarge: largefile 3b71f43ff30f4b15b5cd85dd9e95ebc7e84eb5a3 not available from file:/*/$TESTTMP/largefiles-repo (glob)\n- stuff/maybelarge.dat: largefile 76236b6a2c6102826c61af4297dd738fb3b1de38 not available from file:/*/$TESTTMP/largefiles-repo (glob)\n+ large2: largefile 2e000fa7e85759c7f4c254d4d9c33ef481e459a7 not available from file:/*/$TESTTMP/largefiles-repo (glob)\n+ sub/maybelarge.dat: largefile 34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c not available from file:/*/$TESTTMP/largefiles-repo (glob)\n 0 additional largefiles cached\n- 11 largefiles failed to download\n+ 10 largefiles failed to download\n abort: all largefiles must be present locally\n [255]\n \n', 2143, 2145, 'truncated \\uXXXX escape') decoding diff, sorry
test-log.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-log.t\n+++ c:/hgdev/src/tests/test-log.t.err\n@@ -557,6 +557,54 @@\n \n $ hg --config extensions.strip= strip -r. --no-backup\n 1 files updated, 0 files merged, 1 files removed, 0 files unresolved\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 279, in debugstrip\n+ soft=opts[b\'soft\'],\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n follow files from the specified revisions across copies with -p/--patch\n \n@@ -613,6 +661,7 @@\n log copies with --copies\n \n $ hg log -vC --template \'{rev} {file_copies}\\n\'\n+ 5 dir/b/g (g)\n 4 e (dir/b)\n 3 b (a)g (f)\n 2 dir/b (b)\n@@ -622,6 +671,7 @@\n log copies switch without --copies, with old filecopy template\n \n $ hg log -v --template \'{rev} {file_copies_switch%filecopy}\\n\'\n+ 5 \n 4 \n 3 \n 2 \n@@ -631,6 +681,7 @@\n log copies switch with --copies\n \n $ hg log -vC --template \'{rev} {file_copies_switch}\\n\'\n+ 5 dir/b/g (g)\n 4 e (dir/b)\n 3 b (a)g (f)\n 2 dir/b (b)\n@@ -642,7 +693,6 @@\n \n $ hg log -vC -r4\n changeset: 4:7e4639b4691b\n- tag: tip\n user: test\n date: Thu Jan 01 00:00:05 1970 +0000\n files: dir/b e\n@@ -653,7 +703,6 @@\n \n $ hg log -vC -r4 --style=default\n changeset: 4:7e4639b4691b\n- tag: tip\n user: test\n date: Thu Jan 01 00:00:05 1970 +0000\n files: dir/b e\n@@ -675,7 +724,7 @@\n "parents": ["2ca5ba7019804f1f597249caddf22a64d34df0ba"],\n "phase": "draft",\n "rev": 4,\n- "tags": ["tip"],\n+ "tags": [],\n "user": "test"\n }\n ]\n@@ -688,9 +737,11 @@\n $ echo foo > foo\n $ hg ci -Ame2 -d \'6 0\'\n adding foo\n- created new head\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ hg log -v --template \'{rev} {file_copies}\\n\' -r 5\n- 5 e (dir/b)\n+ 5 dir/b/g (g)\n \n \n log copies, execute bit set\n@@ -2796,114 +2847,45 @@\n adding a\n ---- now we are going to add 300 lines to a\n $ for i in `$TESTDIR/seq.py 1 300`; do echo $i >> a; done\n+ /usr/bin/env: python3: $ENOENT$\n $ hg ci -m \'modify a\'\n+ nothing changed\n+ [1]\n $ hg log\n- changeset: 1:a98683e6a834\n+ changeset: 0:ac82d8b1f7c4\n tag: tip\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: modify a\n- \n- changeset: 0:ac82d8b1f7c4\n user: test\n date: Thu Jan 01 00:00:00 1970 +0000\n summary: add a\n \n ---- now visualise the changes we made without template\n $ hg log -l1 -r a98683e6a834 --stat -G\n- @ changeset: 1:a98683e6a834\n- | tag: tip\n- ~ user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: modify a\n- \n- a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n- 1 files changed, 300 insertions(+), 0 deletions(-)\n- \n+ abort: unknown revision \'a98683e6a834\'\n+ [255]\n ---- with template\n $ hg log -l1 -r a98683e6a834 --stat -G -T bisect\n- @ changeset: 1:a98683e6a834\n- | bisect:\n- ~ tag: tip\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: modify a\n- \n- a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n- 1 files changed, 300 insertions(+), 0 deletions(-)\n- \n+ abort: unknown revision \'a98683e6a834\'\n+ [255]\n $ hg log -l1 -r a98683e6a834 --stat -G -T changelog\n- 1970-01-01 test <test>\n- \n- @ \t* a:\n- | \tmodify a\n- ~ \t[a98683e6a834] [tip]\n- \n- a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n- 1 files changed, 300 insertions(+), 0 deletions(-)\n- \n+ abort: unknown revision \'a98683e6a834\'\n+ [255]\n $ hg log -l1 -r a98683e6a834 --stat -G -T compact\n- @ 1[tip] a98683e6a834 1970-01-01 00:00 +0000 test\n- | modify a\n- ~\n- a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n- 1 files changed, 300 insertions(+), 0 deletions(-)\n- \n+ abort: unknown revision \'a98683e6a834\'\n+ [255]\n $ hg log -l1 -r a98683e6a834 --stat -G -T default\n- @ changeset: 1:a98683e6a834\n- | tag: tip\n- ~ user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: modify a\n- \n- a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n- 1 files changed, 300 insertions(+), 0 deletions(-)\n- \n+ abort: unknown revision \'a98683e6a834\'\n+ [255]\n $ hg log -l1 -r a98683e6a834 --stat -G -T phases\n- @ changeset: 1:a98683e6a834\n- | tag: tip\n- ~ phase: draft\n- user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: modify a\n- \n- a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n- 1 files changed, 300 insertions(+), 0 deletions(-)\n- \n+ abort: unknown revision \'a98683e6a834\'\n+ [255]\n $ hg log -l1 -r a98683e6a834 --stat -G -T show\n- @ changeset: 1:a98683e6a834\n- | tag: tip\n- ~ user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: modify a\n- \n- a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n- 1 files changed, 300 insertions(+), 0 deletions(-)\n- \n+ abort: unknown revision \'a98683e6a834\'\n+ [255]\n $ hg log -l1 -r a98683e6a834 --stat -G -T status\n- @ changeset: 1:a98683e6a834\n- | tag: tip\n- ~ user: test\n- date: Thu Jan 01 00:00:00 1970 +0000\n- summary: modify a\n- files:\n- M a\n- \n- a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n- 1 files changed, 300 insertions(+), 0 deletions(-)\n- \n+ abort: unknown revision \'a98683e6a834\'\n+ [255]\n $ hg log -l1 -r a98683e6a834 --stat -G -T xml\n- <?xml version="1.0"?>\n- <log>\n- @ <logentry revision="1" node="a98683e6a8340830a7683909768b62871e84bc9d">\n- | <tag>tip</tag>\n- ~ <author email="test">test</author>\n- <date>1970-01-01T00:00:00+00:00</date>\n- <msg xml:space="preserve">modify a</msg>\n- </logentry>\n- a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n- 1 files changed, 300 insertions(+), 0 deletions(-)\n- \n- </log>\n+ abort: unknown revision \'a98683e6a834\'\n+ [255]\n \n $ cd ..\n', 2126, 2128, 'truncated \\uXXXX escape') decoding diff, sorry
test-logexchange.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-logexchange.t\n+++ c:/hgdev/src/tests/test-logexchange.t.err\n@@ -414,12 +414,57 @@\n $ echo foo > watwat\n $ hg ci -Aqm "added watwat"\n $ hg bookmark bar\n- abort: bookmark \'bar\' already exists (use -f to force)\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: remotenames, show\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 1278, in bookmark\n+ bookmarks.deactivate(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg up ec24\n 3 files updated, 0 files merged, 2 files removed, 0 files unresolved\n $ echo i > i\n $ hg ci -Aqm "added i"\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ cd ../client2\n $ echo "[paths]" >> .hg/hgrc\n@@ -430,24 +475,21 @@\n adding changesets\n adding manifests\n adding file changes\n- added 2 changesets with 2 changes to 2 files\n- new changesets f34adec73c21:bf433e48adea\n+ added 1 changesets with 1 changes to 1 files\n+ new changesets f34adec73c21\n (run \'hg update\' to get a working copy)\n \n $ hg log -Gr \'remotenames()\' -T \'{rev}:{node|short} {desc}\\n({remotebranches}) [{remotebookmarks}]\\n\\n\'\n- o 10:bf433e48adea added i\n- | (server2/default) []\n- |\n- | o 9:f34adec73c21 added watwat\n- | | (server2/wat) []\n- | |\n- | o 8:3e1487808078 added bar\n- | : (default/wat) [default/foo]\n- | :\n- @ : 7:ec2426147f0e Added h\n- | : (default/default) []\n- | :\n- o : 6:87d6d6676308 Added g\n+ o 9:f34adec73c21 added watwat\n+ | (server2/wat) []\n+ |\n+ o 8:3e1487808078 added bar\n+ : (default/wat) [default/foo]\n+ :\n+ : @ 7:ec2426147f0e Added h\n+ : | (default/default server2/default) []\n+ : |\n+ : o 6:87d6d6676308 Added g\n :/ () [default/bar server2/bar]\n :\n o 3:62615734edd5 Added d\n@@ -467,12 +509,10 @@\n ~\n \n $ hg log -r \'remotenames("re:default")\' -GT "{rev}:{node|short} {remotenames}\\n"\n- o 10:bf433e48adea server2/default\n- |\n- | o 8:3e1487808078 default/foo default/wat\n- | |\n- | ~\n- @ 7:ec2426147f0e default/default\n+ o 8:3e1487808078 default/foo default/wat\n+ |\n+ ~\n+ @ 7:ec2426147f0e default/default server2/default\n |\n o 6:87d6d6676308 default/bar server2/bar\n |\n@@ -513,21 +553,19 @@\n Testing pattern matching\n \n $ hg log -r \'remotenames("re:def")\' -GT "{rev}:{node|short} {remotenames}\\n"\n- o 10:bf433e48adea server2/default\n- |\n- | o 8:3e1487808078 default/foo default/wat\n- | |\n- | ~\n- @ 7:ec2426147f0e default/default\n+ o 8:3e1487808078 default/foo default/wat\n+ |\n+ ~\n+ @ 7:ec2426147f0e default/default server2/default\n |\n o 6:87d6d6676308 default/bar server2/bar\n |\n ~\n \n $ hg log -r \'remotebranches("re:ser.*2")\' -GT "{rev}:{node|short} {remotebranches}\\n"\n- o 10:bf433e48adea server2/default\n- |\n- ~\n o 9:f34adec73c21 server2/wat\n |\n ~\n+ @ 7:ec2426147f0e default/default server2/default\n+ |\n+ ~\n', 2166, 2168, 'truncated \\uXXXX escape') decoding diff, sorry
test-mactext.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-mactext.t\n+++ c:/hgdev/src/tests/test-mactext.t.err\n@@ -24,13 +24,63 @@\n $ hg ci -m 2\n attempt to commit or push text file(s) using CR line endings\n in dea860dc51ec: f\n- transaction abort!\n- rollback completed\n- abort: pretxncommit.cr hook failed\n- [255]\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: \n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2127, in _docommit\n+ node = cmdutil.commit(ui, repo, commitfunc, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2754, in commit\n+ return commitfunc(ui, repo, message, matcher, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2124, in commitfunc\n+ extra=extra,\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 199, in wrapper\n+ return orig(repo.unfiltered(), *args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\localrepo.py", line 2962, in commit\n+ ms.reset()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ hg cat f | f --hexdump\n- \n- 0000: 68 65 6c 6c 6f 0a |hello.|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n $ f --hexdump f\n- f:\n- 0000: 68 65 6c 6c 6f 0d |hello.|\n+ /usr/bin/env: python3: $ENOENT$\n+ [127]\n', 2190, 2192, 'truncated \\uXXXX escape') decoding diff, sorry
test-merge-combination.t
--- c:/hgdev/src/tests/test-merge-combination.t
+++ c:/hgdev/src/tests/test-merge-combination.t.err
@@ -89,57 +89,10 @@
> }
$ genmerges
- 1111 : agree on ""
- 1112 : agree on "a"
- 111- : agree on "a"
- 1121 : agree on "a"
- 1122 : agree on ""
- 1123 : agree on "a"
- 112- : agree on "a"
- 11-1 : hg said "", expected "a"
- 11-2 : agree on "a"
- 11-- : agree on ""
- 1211 : agree on "a"
- 1212 : agree on ""
- 1213 : agree on "a"
- 121- : agree on "a"
- 1221 : agree on "a"
- 1222 : agree on ""
- 1223 : agree on "a"
- 122- : agree on "a"
- 1231 C: agree on "a"
- 1232 C: agree on "a"
- 1233 C: agree on "a"
- 1234 C: agree on "a"
- 123- C: agree on "a"
- 12-1 C: agree on "a"
- 12-2 C: hg said "", expected "a"
- 12-3 C: agree on "a"
- 12-- C: agree on "a"
- 1-11 : hg said "", expected "a"
- 1-12 : agree on "a"
- 1-1- : agree on ""
- 1-21 C: agree on "a"
- 1-22 C: hg said "", expected "a"
- 1-23 C: agree on "a"
- 1-2- C: agree on "a"
- 1--1 : agree on "a"
- 1--2 : agree on "a"
- 1--- : agree on ""
- -111 : agree on ""
- -112 : agree on "a"
- -11- : agree on "a"
- -121 C: agree on "a"
- -122 C: agree on "a"
- -123 C: agree on "a"
- -12- C: agree on "a"
- -1-1 : agree on ""
- -1-2 : agree on "a"
- -1-- : agree on "a"
- --11 : agree on ""
- --12 : agree on "a"
- --1- : agree on "a"
- ---1 : agree on "a"
+ /usr/bin/env: python3: $ENOENT$
+ /usr/bin/env: python3: $ENOENT$
+ /usr/bin/env: python3: $ENOENT$
+ /usr/bin/env: python3: $ENOENT$
---- : agree on ""
All the merges of executable bit.
test-merge-commit.t
--- c:/hgdev/src/tests/test-merge-commit.t
+++ c:/hgdev/src/tests/test-merge-commit.t.err
@@ -70,8 +70,9 @@
resolving manifests
branchmerge: True, force: False, partial: False
ancestor: 0f2ff26688b9, local: 2263c1be0967+, remote: 0555950ead28
+ starting 4 threads for background file closing
+ starting 4 threads for background file closing (?)
preserving bar for resolve of bar
- starting 4 threads for background file closing (?)
bar: versions differ -> m (premerge)
picked tool ':merge' for bar (binary False symlink False changedelete False)
merging bar
@@ -157,8 +158,9 @@
resolving manifests
branchmerge: True, force: False, partial: False
ancestor: 0f2ff26688b9, local: 2263c1be0967+, remote: 3ffa6b9e35f0
+ starting 4 threads for background file closing
+ starting 4 threads for background file closing (?)
preserving bar for resolve of bar
- starting 4 threads for background file closing (?)
bar: versions differ -> m (premerge)
picked tool ':merge' for bar (binary False symlink False changedelete False)
merging bar
test-merge-criss-cross.t#newfilenode
--- c:/hgdev/src/tests/test-merge-criss-cross.t
+++ c:/hgdev/src/tests/test-merge-criss-cross.t#newfilenode.err
@@ -105,30 +105,8 @@
[1]
$ f --dump *
- f1:
- >>>
- 5 second change
- <<<
- f2:
- >>>
- 6 second change
- <<<
- f2.base:
- >>>
- 0 base
- <<<
- f2.local:
- >>>
- 6 second change
- <<<
- f2.orig:
- >>>
- 6 second change
- <<<
- f2.other:
- >>>
- 2 first change
- <<<
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ hg up -qC .
$ hg merge -v --tool internal:dump 5 --config merge.preferancestor="null 40663881 3b08d"
@@ -179,14 +157,8 @@
(branch merge, don't forget to commit)
$ f --dump *
- f1:
- >>>
- 5 second change
- <<<
- f2:
- >>>
- 6 second change
- <<<
+ /usr/bin/env: python3: $ENOENT$
+ [127]
The other way around:
@@ -228,14 +200,8 @@
(branch merge, don't forget to commit)
$ f --dump *
- f1:
- >>>
- 5 second change
- <<<
- f2:
- >>>
- 6 second change
- <<<
+ /usr/bin/env: python3: $ENOENT$
+ [127]
Verify how the output looks and and how verbose it is:
@@ -602,6 +568,7 @@
$ hg update 'desc("updating-both-file")'
1 files updated, 0 files merged, 0 files removed, 0 files unresolved (newfilenode !)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved (old !)
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("delete-the-file")' -t :local
0 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
@@ -635,6 +602,7 @@
| +---o 38a4c3e7cac8 merge-keeping-the-file-from-deleted (newfilenode !)
+---o e9b708131723 merge-keeping-the-file-from-deleted (old !)
+ +---o e9b708131723 merge-keeping-the-file-from-deleted
| |/
+---o a4e0e44229dc merge-deleting-the-file-from-updated
| |/
@@ -708,6 +676,7 @@
$ hg update --clean 'desc("merge-deleting-the-file-from-deleted")'
0 files updated, 0 files merged, 1 files removed, 0 files unresolved (newfilenode !)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved (old !)
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("merge-keeping-the-file-from-updated")'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
@@ -776,6 +745,7 @@
$ hg update --clean 'desc("merge-deleting-the-file-from-updated")'
0 files updated, 0 files merged, 1 files removed, 0 files unresolved (newfilenode !)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved (old !)
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("merge-keeping-the-file-from-updated")'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
@@ -793,6 +763,7 @@
$ hg merge 'desc("merge-keeping-the-file-from-deleted")'
1 files updated, 0 files merged, 0 files removed, 0 files unresolved (newfilenode !)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved (old !)
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
$ ls -1
other-file
@@ -813,6 +784,7 @@
$ hg update --clean 'desc("merge-keeping-the-file-from-updated")'
1 files updated, 0 files merged, 0 files removed, 0 files unresolved (newfilenode !)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved (old !)
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("merge-deleting-the-file-from-deleted")'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
@@ -845,6 +817,7 @@
$ hg update --clean 'desc("merge-keeping-the-file-from-deleted")'
1 files updated, 0 files merged, 0 files removed, 0 files unresolved (newfilenode !)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved (old !)
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("merge-keeping-the-file-from-updated")'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
test-merge-criss-cross.t#old
--- c:/hgdev/src/tests/test-merge-criss-cross.t
+++ c:/hgdev/src/tests/test-merge-criss-cross.t#old.err
@@ -105,30 +105,8 @@
[1]
$ f --dump *
- f1:
- >>>
- 5 second change
- <<<
- f2:
- >>>
- 6 second change
- <<<
- f2.base:
- >>>
- 0 base
- <<<
- f2.local:
- >>>
- 6 second change
- <<<
- f2.orig:
- >>>
- 6 second change
- <<<
- f2.other:
- >>>
- 2 first change
- <<<
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ hg up -qC .
$ hg merge -v --tool internal:dump 5 --config merge.preferancestor="null 40663881 3b08d"
@@ -179,14 +157,8 @@
(branch merge, don't forget to commit)
$ f --dump *
- f1:
- >>>
- 5 second change
- <<<
- f2:
- >>>
- 6 second change
- <<<
+ /usr/bin/env: python3: $ENOENT$
+ [127]
The other way around:
@@ -228,14 +200,8 @@
(branch merge, don't forget to commit)
$ f --dump *
- f1:
- >>>
- 5 second change
- <<<
- f2:
- >>>
- 6 second change
- <<<
+ /usr/bin/env: python3: $ENOENT$
+ [127]
Verify how the output looks and and how verbose it is:
@@ -602,6 +568,7 @@
$ hg update 'desc("updating-both-file")'
1 files updated, 0 files merged, 0 files removed, 0 files unresolved (newfilenode !)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved (old !)
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("delete-the-file")' -t :local
0 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
@@ -635,6 +602,7 @@
| +---o 38a4c3e7cac8 merge-keeping-the-file-from-deleted (newfilenode !)
+---o e9b708131723 merge-keeping-the-file-from-deleted (old !)
+ +---o e9b708131723 merge-keeping-the-file-from-deleted
| |/
+---o a4e0e44229dc merge-deleting-the-file-from-updated
| |/
@@ -708,6 +676,7 @@
$ hg update --clean 'desc("merge-deleting-the-file-from-deleted")'
0 files updated, 0 files merged, 1 files removed, 0 files unresolved (newfilenode !)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved (old !)
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("merge-keeping-the-file-from-updated")'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
@@ -776,6 +745,7 @@
$ hg update --clean 'desc("merge-deleting-the-file-from-updated")'
0 files updated, 0 files merged, 1 files removed, 0 files unresolved (newfilenode !)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved (old !)
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("merge-keeping-the-file-from-updated")'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
@@ -793,6 +763,7 @@
$ hg merge 'desc("merge-keeping-the-file-from-deleted")'
1 files updated, 0 files merged, 0 files removed, 0 files unresolved (newfilenode !)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved (old !)
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
$ ls -1
other-file
@@ -813,6 +784,7 @@
$ hg update --clean 'desc("merge-keeping-the-file-from-updated")'
1 files updated, 0 files merged, 0 files removed, 0 files unresolved (newfilenode !)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved (old !)
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("merge-deleting-the-file-from-deleted")'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
@@ -845,6 +817,7 @@
$ hg update --clean 'desc("merge-keeping-the-file-from-deleted")'
1 files updated, 0 files merged, 0 files removed, 0 files unresolved (newfilenode !)
0 files updated, 0 files merged, 0 files removed, 0 files unresolved (old !)
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg merge 'desc("merge-keeping-the-file-from-updated")'
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
test-merge-no-file-change.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-merge-no-file-change.t\n+++ c:/hgdev/src/tests/test-merge-no-file-change.t.err\n@@ -356,21 +356,82 @@\n $ hg ci -qm2\n $ echo foo > a\n $ hg ci -qm3 --amend\n-\n- $ hg merge\n- 0 files updated, 0 files merged, 0 files removed, 0 files unresolved\n- (branch merge, don\'t forget to commit)\n- $ hg ci --debug -m merge\n- reusing manifest from p1 (no file change)\n- committing changelog\n- updating the branch cache\n- committed changeset 3:314e5bc5adf5c58ea571efabe33eedba20a201aa\n+ strip failed, backup bundle stored in \'$TESTTMP\\amend-p1\\.hg\\strip-backup/d08977d2ef2b-531698f1-amend.hg\'\n+ strip failed, unrecovered changes stored in \'$TESTTMP\\amend-p1\\.hg\\strip-backup/d08977d2ef2b-58849c28-temp.hg\'\n+ (fix the problem, then recover the changesets with "hg unbundle \'$TESTTMP\\amend-p1\\.hg\\strip-backup/d08977d2ef2b-58849c28-temp.hg\'")\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: convert\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2026, in commit\n+ return _docommit(ui, repo, *pats, **opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\commands.py", line 2098, in _docommit\n+ node = cmdutil.amend(ui, repo, old, extra, pats, opts)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\cmdutil.py", line 2994, in amend\n+ dirstate.drop(f)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1359, in __exit__\n+ self.close()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 620, in close\n+ self._postclosecallback[cat](self)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 393, in __call__\n+ strip(self.ui, self.repo, roots, self.backup, self.topic)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n+\n+ $ hg merge\n+ abort: branch \'default\' has 3 heads - please merge with an explicit rev\n+ (run \'hg heads .\' to see heads, specify rev with -r)\n+ [255]\n+ $ hg ci --debug -m merge\n+ nothing to commit, clearing merge state\n+ nothing changed\n+ [1]\n $ hg log -GT\'{l} branch={branch}\'\n- @ 3:314e5bc5adf5 p=2,1 m=1:d33ea248bd73 f=[] branch=default\n- |\\\n- | o 2:de9c64f226a3 p=0,-1 m=1:d33ea248bd73 f=["a"] branch=default\n- | |\n- o | 1:6a74aec01b3c p=0,-1 m=1:d33ea248bd73 f=["a"] branch=default\n+ @ 3:de9c64f226a3 p=0,-1 m=1:d33ea248bd73 f=["a"] branch=default\n+ |\n+ | o 2:d08977d2ef2b p=0,-1 m=2:0ad560680a25 f=["a"] branch=default\n+ |/\n+ | o 1:6a74aec01b3c p=0,-1 m=1:d33ea248bd73 f=["a"] branch=default\n |/\n o 0:487a0a245cea p=-1,-1 m=0:8515d4bfda76 f=["a"] branch=default\n \n', 2771, 2773, 'truncated \\uXXXX escape') decoding diff, sorry
--- c:/hgdev/src/tests/test-merge-tools.t
+++ c:/hgdev/src/tests/test-merge-tools.t.err
@@ -1031,7 +1031,8 @@
# hg update -C 1
$ hg update -q 0
$ f -s f
- f: size=17
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ touch -t 200001010000 f
$ hg debugrebuildstate
$ cat >> $HGRCPATH <<EOF
@@ -1044,7 +1045,8 @@
> fakedirstatewritetime = !
> EOF
$ f -s f
- f: size=17
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ touch -t 200001010000 f
$ hg status f
M f
@@ -1076,7 +1078,8 @@
# hg update -C 1
$ hg update -q 0
$ f -s f
- f: size=17
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ touch -t 200001010000 f
$ hg debugrebuildstate
$ cat >> $HGRCPATH <<EOF
@@ -1089,7 +1092,8 @@
> fakedirstatewritetime = !
> EOF
$ f -s f
- f: size=17
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ touch -t 200001010000 f
$ hg status f
M f
@@ -1936,8 +1940,8 @@
internal merge tools is checked strictly.
$ f --hexdump b
- b:
- 0000: 03 02 01 00 |....|
+ /usr/bin/env: python3: $ENOENT$
+ [127]
(for merge-patterns)
@@ -1949,8 +1953,8 @@
0 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
$ f --hexdump b
- b:
- 0000: 00 01 02 03 |....|
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ hg merge --abort -q
(for ui.merge)
@@ -1960,8 +1964,8 @@
0 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
$ f --hexdump b
- b:
- 0000: 00 01 02 03 |....|
+ /usr/bin/env: python3: $ENOENT$
+ [127]
$ hg merge --abort -q
Check that the extra information is printed correctly
@@ -1977,6 +1981,7 @@
Running merge tool for b ("*/bin/echo.exe"): (glob) (windows !)
Running merge tool for b (*/bin/echo): (glob) (no-windows !)
+ Running merge tool for b ("C:\hgdev\MinGW\msys.0in\echo.exe"):
- local (working copy): 10:2d1f533d add binary file (#2) tip default
- base (base): -1:00000000 default
- other (merge rev): 9:1e7ad7d7 add binary file (#1) default
test-merge1.t
--- c:/hgdev/src/tests/test-merge1.t
+++ c:/hgdev/src/tests/test-merge1.t.err
@@ -32,6 +32,7 @@
$ hg up
abort: Unlinking directory not permitted: *$TESTTMP/t/b* (glob) (windows !)
abort: Directory not empty: '?\$TESTTMP/t/b'? (re) (no-windows !)
+ abort: Unlinking directory not permitted: '$TESTTMP '
[255]
$ hg ci
abort: last update was interrupted
test-merge7.t
--- c:/hgdev/src/tests/test-merge7.t
+++ c:/hgdev/src/tests/test-merge7.t.err
@@ -84,8 +84,9 @@
resolving manifests
branchmerge: True, force: False, partial: False
ancestor: 96b70246a118, local: 50c3a7e29886+, remote: 40d11a4173a8
+ starting 4 threads for background file closing
+ starting 4 threads for background file closing (?)
preserving test.txt for resolve of test.txt
- starting 4 threads for background file closing (?)
test.txt: versions differ -> m (premerge)
picked tool ':merge' for test.txt (binary False symlink False changedelete False)
merging test.txt
test-mq-eol.t
UnicodeDecodeError('unicodeescape', '--- c:/hgdev/src/tests/test-mq-eol.t\n+++ c:/hgdev/src/tests/test-mq-eol.t.err\n@@ -69,86 +69,140 @@\n [2]\n $ hg qpop\n popping eol.diff\n- patch queue now empty\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: mq, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 3582, in pop\n+ keepchanges=opts.get(b\'keep_changes\'),\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 1863, in pop\n+ strip(self.ui, repo, [rev], update=False, backup=False)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n \n invalid eol\n \n $ hg --config patch.eol=\'LFCR\' qpush\n- applying eol.diff\n- patch failed, unable to continue (try -v)\n- patch failed, rejects left in working directory\n- errors during apply, please fix and qrefresh eol.diff\n- [2]\n- $ hg qpop\n- popping eol.diff\n- patch queue now empty\n+ (working directory not at a head)\n+ patch series already fully applied\n+ [1]\n+ $ hg qpop\n+ popping eol.diff\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n force LF\n \n $ hg --config patch.eol=\'CRLF\' qpush\n- applying eol.diff\n- now at: eol.diff\n+ (working directory not at a head)\n+ patch series already fully applied\n+ [1]\n $ hg qrefresh\n+ abort: working directory revision is not qtip\n+ [255]\n $ "$PYTHON" ../cateol.py .hg/patches/eol.diff\n- # HG changeset patch<LF>\n- # Parent 0d0bf99a8b7a3842c6f8ef09e34f69156c4bd9d0<LF>\n- test message<LF>\n- <LF>\n- diff -r 0d0bf99a8b7a a<LF>\n- --- a/a<LF>\n- +++ b/a<LF>\n- @@ -1,5 +1,5 @@<LF>\n- -a<LF>\n- -b<LF>\n- -c<LF>\n- -d<LF>\n- -e<LF>\n- \\ No newline at end of file<LF>\n- +a<CR><LF>\n- +y<CR><LF>\n- +c<CR><LF>\n- +d<CR><LF>\n- +z<LF>\n- \\ No newline at end of file<LF>\n+ test message<LF>\\r (esc)\n+ diff --git a/a b/a<LF>\\r (esc)\n+ --- a/a<LF>\\r (esc)\n+ +++ b/a<LF>\\r (esc)\n+ @@ -1,5 +1,5 @@<LF>\\r (esc)\n+ a<LF>\\r (esc)\n+ -b<CR><LF>\\r (esc)\n+ +y<CR><LF>\\r (esc)\n+ c<CR><LF>\\r (esc)\n+ d<LF>\\r (esc)\n+ -e<LF>\\r (esc)\n+ \\\\ No newline at end of file<LF>\\r (esc)\n+ +z<CR><LF>\\r (esc)\n+ \\\\ No newline at end of file<CR><LF>\\r (esc)\n $ "$PYTHON" ../cateol.py a\n- a<CR><LF>\n- y<CR><LF>\n- c<CR><LF>\n- d<CR><LF>\n- z\n- $ hg qpop\n- popping eol.diff\n- patch queue now empty\n+ a<LF>\\r (esc)\n+ b<LF>\\r (esc)\n+ c<LF>\\r (esc)\n+ d<LF>\\r (esc)\n+ e\\r (esc)\n+ $ hg qpop\n+ popping eol.diff\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n push again forcing LF and compare revisions\n \n $ hg --config patch.eol=\'CRLF\' qpush\n- applying eol.diff\n- now at: eol.diff\n+ (working directory not at a head)\n+ patch series already fully applied\n+ [1]\n $ "$PYTHON" ../cateol.py a\n- a<CR><LF>\n- y<CR><LF>\n- c<CR><LF>\n- d<CR><LF>\n- z\n- $ hg qpop\n- popping eol.diff\n- patch queue now empty\n+ a<LF>\\r (esc)\n+ b<LF>\\r (esc)\n+ c<LF>\\r (esc)\n+ d<LF>\\r (esc)\n+ e\\r (esc)\n+ $ hg qpop\n+ popping eol.diff\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n push again without LF and compare revisions\n \n $ hg qpush\n- applying eol.diff\n- now at: eol.diff\n+ (working directory not at a head)\n+ patch series already fully applied\n+ [1]\n $ "$PYTHON" ../cateol.py a\n- a<CR><LF>\n- y<CR><LF>\n- c<CR><LF>\n- d<CR><LF>\n- z\n- $ hg qpop\n- popping eol.diff\n- patch queue now empty\n+ a<LF>\\r (esc)\n+ b<LF>\\r (esc)\n+ c<LF>\\r (esc)\n+ d<LF>\\r (esc)\n+ e\\r (esc)\n+ $ hg qpop\n+ popping eol.diff\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ cd ..\n \n \n@@ -163,53 +217,85 @@\n $ hg qnew patch1\n $ hg qpop\n popping patch1\n- patch queue now empty\n+ ** unknown exception encountered, please report by visiting\n+ ** https://mercurial-scm.org/wiki/BugTracker\n+ ** Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]\n+ ** Mercurial Distributed SCM (version 5.6.1+253-db8597d9bcfc)\n+ ** Extensions loaded: mq, strip\n+ Traceback (most recent call last):\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\bin\\hg", line 43, in <module>\n+ dispatch.run()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 115, in run\n+ status = dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 266, in dispatch\n+ ret = _runcatch(req) or 0\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 442, in _runcatch\n+ return _callcatch(ui, _runcatchfunc)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 451, in _callcatch\n+ return scmutil.callcatch(ui, func)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\scmutil.py", line 155, in callcatch\n+ return func()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 432, in _runcatchfunc\n+ return _dispatch(req)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1229, in _dispatch\n+ lui, repo, cmd, fullargs, ui, options, d, cmdpats, cmdoptions\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 883, in runcommand\n+ ret = _runcommand(ui, options, cmd, d)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1240, in _runcommand\n+ return cmdfunc()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\dispatch.py", line 1226, in <lambda>\n+ d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1867, in check\n+ return func(*args, **kwargs)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 3582, in pop\n+ keepchanges=opts.get(b\'keep_changes\'),\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\hgext\\mq.py", line 1863, in pop\n+ strip(self.ui, repo, [rev], update=False, backup=False)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\strip.py", line 81, in strip\n+ repair.strip(ui, repo, revs, backup)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\repair.py", line 236, in strip\n+ repo._phasecache.filterunknown(repo)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\util.py", line 1361, in __exit__\n+ self.release()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 462, in release\n+ self._abort()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 661, in _abort\n+ entries = self.readjournal()\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 44, in _active\n+ return func(self, *args, **kwds)\n+ File "C:\\Temp\\hgtests.dstqqw\\install\\lib\\python\\mercurial\\transaction.py", line 421, in readjournal\n+ for l in self._file:\n+ TypeError: \'mixedfilemodewrapper\' object is not iterable\n+ [1]\n $ "$PYTHON" -c "open(\'a\', \'wb\').write(b\'1\\r\\n22\\r\\n33\\r\\n4\')"\n $ hg ci -m changea\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n \n $ hg --config \'patch.eol=LF\' qpush\n- applying patch1\n- patching file a\n- Hunk #1 FAILED at 0\n- 1 out of 1 hunks FAILED -- saving rejects to file a.rej\n- patch failed, unable to continue (try -v)\n- patch failed, rejects left in working directory\n- errors during apply, please fix and qrefresh patch1\n- [2]\n+ (working directory not at a head)\n+ patch series already fully applied\n+ [1]\n $ hg qpop\n popping patch1\n- patch queue now empty\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ cat a.rej\n- --- a\n- +++ a\n- @@ -1,4 +1,4 @@\n- 1\\r (esc)\n- 2\\r (esc)\n- -3\\r (esc)\n- +33\\r (esc)\n- 4\n- \\ No newline at end of file\n+ cat: a.rej: $ENOENT$\n+ [1]\n \n $ hg --config \'patch.eol=auto\' qpush\n- applying patch1\n- patching file a\n- Hunk #1 FAILED at 0\n- 1 out of 1 hunks FAILED -- saving rejects to file a.rej\n- patch failed, unable to continue (try -v)\n- patch failed, rejects left in working directory\n- errors during apply, please fix and qrefresh patch1\n- [2]\n+ (working directory not at a head)\n+ patch series already fully applied\n+ [1]\n $ hg qpop\n popping patch1\n- patch queue now empty\n+ abort: abandoned transaction found\n+ (run \'hg recover\' to clean up transaction)\n+ [255]\n $ cat a.rej\n- --- a\n- +++ a\n- @@ -1,4 +1,4 @@\n- 1\\r (esc)\n- 2\\r (esc)\n- -3\\r (esc)\n- +33\\r (esc)\n- 4\n- \\ No newline at end of file\n+ cat: a.rej: $ENOENT$\n+ [1]\n $ cd ..\n', 2070, 2072, 'truncated \\uXXXX escape') decoding diff, sorry
test-mq-git.t
--- c:/hgdev/src/tests/test-mq-git.t
+++ c:/hgdev/src/tests/test-mq-git.t.err
@@ -63,13 +63,17 @@
git=auto: regular patch after qrefresh without --git:
$ hg qrefresh -d '0 0'
+ abort: $TESTTMP
epo-auto\.hg\dirstate.pending: $ENOENT$.
+ Exception OSError: OSError(2, 'C:\Temp\hgtests.dstqqw\child524\test-mq-git.t\repo-auto\.hg\dirstate.pending: $ENOENT$.') in <bound method dirstateguard.__del__ of <mercurial.dirstateguard.dirstateguard object at 0x0000000001644088>> ignored
+ [255]
$ cat .hg/patches/git
# HG changeset patch
# Date 0 0
# Parent 99586d5f048c399e20f81cee41fbb3809c0e735d
- diff -r 99586d5f048c regular
+ diff --git a/regular b/regular
+ new file mode 100644
--- /dev/null
+++ b/regular
@@ -0,0 +1,1 @@
@@ -104,18 +108,20 @@
$ echo a >> a
$ hg qrefresh -d '0 0'
-
- $ cat .hg/patches/git
- # HG changeset patch
- # Date 0 0
- # Parent 0000000000000000000000000000000000000000
-
- diff --git a/a b/a
- new file mode 100644
- --- /dev/null
- +++ b/a
- @@ -0,0 +1,2 @@
- +a
+ abort: $TESTTMP
epo-keep\.hg\dirstate.pending: $ENOENT$.
+ Exception OSError: OSError(2, 'C:\Temp\hgtests.dstqqw\child524\test-mq-git.t\repo-keep\.hg\dirstate.pending: $ENOENT$.') in <bound method dirstateguard.__del__ of <mercurial.dirstateguard.dirstateguard object at 0x0000000001774088>> ignored
+ [255]
+
+ $ cat .hg/patches/git
+ # HG changeset patch
+ # Date 0 0
+ # Parent 0000000000000000000000000000000000000000
+
+ diff --git a/a b/a
+ new file mode 100644
+ --- /dev/null
+ +++ b/a
+ @@ -0,0 +1,1 @@
+a
$ cd ..
@@ -146,18 +152,20 @@
$ echo a >> a
$ hg qrefresh -d '0 0'
-
- $ cat .hg/patches/git
- # HG changeset patch
- # Date 0 0
- # Parent 0000000000000000000000000000000000000000
-
- diff --git a/a b/a
- new file mode 100644
- --- /dev/null
- +++ b/a
- @@ -0,0 +1,2 @@
- +a
+ abort: $TESTTMP
epo-yes\.hg\dirstate.pending: $ENOENT$.
+ Exception OSError: OSError(2, 'C:\Temp\hgtests.dstqqw\child524\test-mq-git.t\repo-yes\.hg\dirstate.pending: $ENOENT$.') in <bound method dirstateguard.__del__ of <mercurial.dirstateguard.dirstateguard object at 0x0000000001704088>> ignored
+ [255]
+
+ $ cat .hg/patches/git
+ # HG changeset patch
+ # Date 0 0
+ # Parent 0000000000000000000000000000000000000000
+
+ diff --git a/a b/a
+ new file mode 100644
+ --- /dev/null
+ +++ b/a
+ @@ -0,0 +1,1 @@
+a
$ cd ..
@@ -191,20 +199,18 @@
$ hg cp a c
$ hg qrefresh -d '0 0'
+ abort: $TESTTMP
epo-no\.hg\dirstate.pending: $ENOENT$.
+ Exception OSError: OSError(2, 'C:\Temp\hgtests.dstqqw\child524\test-mq-git.t\repo-no\.hg\dirstate.pending: $ENOENT$.') in <bound method dirstateguard.__del__ of <mercurial.dirstateguard.dirstateguard object at 0x00000000017B4088>> ignored
+ [255]
$ cat .hg/patches/regular
# HG changeset patch
# Date 0 0
# Parent ef8dafc9fa4caff80f6e243eb0171bcd60c455b4
- diff -r ef8dafc9fa4c b
+ diff -r ef8dafc9fa4c -r a70404f79ba3 b
--- /dev/null
+++ b/b
- @@ -0,0 +1,1 @@
- +a
- diff -r ef8dafc9fa4c c
- --- /dev/null
- +++ b/c
@@ -0,0 +1,1 @@
+a
@@ -225,45 +231,21 @@
$ echo ' a' > a
$ hg qnew prepare -d '0 0'
+ abort: working directory revision is not qtip
+ [255]
$ echo ' a' > a
$ printf '