--- a/CHANGELOG Fri Oct 26 12:54:40 2018 +0530
+++ b/CHANGELOG Sat Nov 10 00:55:34 2018 +0100
@@ -2,6 +2,14 @@
=========
+8.3.2 - in progress
+-------------------
+
+ * evolve: not longer attempt to translate revision's descriptions (issue6016)
+ * evolve: fix compatibility with mercurial 4.8's narrow extension.
+ * pick: fix summary help text
+ * topic: only use pager when it make senses
+
8.3.1 -- 2018-10-25
-------------------
--- a/hgext3rd/evolve/cmdrewrite.py Fri Oct 26 12:54:40 2018 +0530
+++ b/hgext3rd/evolve/cmdrewrite.py Sat Nov 10 00:55:34 2018 +0100
@@ -1328,8 +1328,7 @@
],
_('[-r] rev'))
def cmdpick(ui, repo, *revs, **opts):
- """grabs a commit, move it on the top of working directory parent and
- updates to it."""
+ """move a commit on the top of working directory parent and updates to it."""
cont = opts.get('continue')
abort = opts.get('abort')
--- a/hgext3rd/evolve/compat.py Fri Oct 26 12:54:40 2018 +0530
+++ b/hgext3rd/evolve/compat.py Sat Nov 10 00:55:34 2018 +0100
@@ -214,6 +214,7 @@
return bool(upres[-1])
return bool(upres.unresolvedcount)
+hg48 = util.safehasattr(copies, 'stringutil')
# code imported from Mercurial core at ae17555ef93f + patch
def fixedcopytracing(repo, c1, c2, base):
"""A complete copy-patse of copies._fullcopytrace with a one line fix to
@@ -280,8 +281,12 @@
}
# find interesting file sets from manifests
- addedinm1 = m1.filesnotin(mb)
- addedinm2 = m2.filesnotin(mb)
+ if hg48:
+ addedinm1 = m1.filesnotin(mb, repo.narrowmatch())
+ addedinm2 = m2.filesnotin(mb, repo.narrowmatch())
+ else:
+ addedinm1 = m1.filesnotin(mb)
+ addedinm2 = m2.filesnotin(mb)
bothnew = sorted(addedinm1 & addedinm2)
if tca == base:
# unmatched file from base
@@ -294,9 +299,16 @@
# unmatched file from topological common ancestors (no DAG rotation)
# need to recompute this for directory move handling when grafting
mta = tca.manifest()
- u1u, u2u = copies._computenonoverlap(repo, c1, c2, m1.filesnotin(mta),
- m2.filesnotin(mta),
- baselabel='topological common ancestor')
+ if hg48:
+ m1f = m1.filesnotin(mta, repo.narrowmatch())
+ m2f = m2.filesnotin(mta, repo.narrowmatch())
+ baselabel = 'topological common ancestor'
+ u1u, u2u = copies._computenonoverlap(repo, c1, c2, m1f, m2f,
+ baselabel=baselabel)
+ else:
+ u1u, u2u = copies._computenonoverlap(repo, c1, c2, m1.filesnotin(mta),
+ m2.filesnotin(mta),
+ baselabel='topological common ancestor')
for f in u1u:
copies._checkcopies(c1, c2, f, base, tca, dirtyc1, limit, data1)
--- a/hgext3rd/evolve/evolvecmd.py Fri Oct 26 12:54:40 2018 +0530
+++ b/hgext3rd/evolve/evolvecmd.py Sat Nov 10 00:55:34 2018 +0100
@@ -1015,6 +1015,8 @@
tovisit = list(parents(rev))
while tovisit:
r = tovisit.pop()
+ if r == -1:
+ continue
succsets = obsutil.successorssets(repo, tonode(r))
if not succsets:
tovisit.extend(parents(r))
--- a/hgext3rd/evolve/utility.py Fri Oct 26 12:54:40 2018 +0530
+++ b/hgext3rd/evolve/utility.py Sat Nov 10 00:55:34 2018 +0100
@@ -161,8 +161,8 @@
promptmsg = customheader + "\n"
for idx, rev in enumerate(revs):
curctx = repo[rev]
- revmsg = _("%d: [%s] %s\n" % (idx, curctx,
- curctx.description().split("\n")[0]))
+ revmsg = "%d: [%s] %s\n" % (idx, curctx,
+ curctx.description().split("\n")[0])
promptmsg += revmsg
promptmsg += _("q: quit the prompt\n")
--- a/hgext3rd/topic/__init__.py Fri Oct 26 12:54:40 2018 +0530
+++ b/hgext3rd/topic/__init__.py Sat Nov 10 00:55:34 2018 +0100
@@ -652,9 +652,8 @@
" '_' and '.' characters")
raise error.Abort(_("invalid topic name: '%s'") % topic, hint=helptxt)
- ui.pager('topics')
-
if list:
+ ui.pager('topics')
if clear or rev:
raise error.Abort(_("cannot use --clear or --rev with --list"))
if not topic:
@@ -700,6 +699,7 @@
ui.status(_('marked working directory as topic: %s\n') % topic)
return _changecurrenttopic(repo, topic)
+ ui.pager('topics')
# `hg topic --current`
ret = 0
if current and not ct:
--- a/tests/test-grab.t Fri Oct 26 12:54:40 2018 +0530
+++ b/tests/test-grab.t Sat Nov 10 00:55:34 2018 +0100
@@ -20,8 +20,7 @@
aliases: grab
- grabs a commit, move it on the top of working directory parent and
- updates to it.
+ move a commit on the top of working directory parent and updates to it.
options: