--- a/.hgtags Fri Aug 03 00:19:45 2018 +0200
+++ b/.hgtags Tue Aug 21 13:25:28 2018 +0200
@@ -67,3 +67,4 @@
e4ac2e2c2086f977afa35e23a62f849e9305a225 7.3.0
116cdd8c102ab0ae6295fb4886b0882e75e4d8f7 8.0.0
0887c30255a1a1808d74a63b16e896d457f8ef32 8.0.1
+2c5d79c6459c6fabe0eb8723fc5041ac0dac7a9a 8.1.0
--- a/CHANGELOG Fri Aug 03 00:19:45 2018 +0200
+++ b/CHANGELOG Tue Aug 21 13:25:28 2018 +0200
@@ -1,23 +1,49 @@
Changelog
=========
-8.1.0 - in progress
+8.1.1 - in progress
+-------------------
+
+ * clone: fix possible crash when using clone bundle and forcing cache warming
+ * evolve: properly set second parent during conflict (issue5927)
+ * next: delete the evolvestate after aborting interrupted `next --evolve`
+ * next: fix topic restriction when passing --evolve
+ * obshashrange: fix speed and consistency issues during cache invalidation
+ * obshashrange: properly persist all caches involved in obshashrange discovery
+ * prune: improve documentation
+
+8.1.0 -- 2018-08-03
-------------------
- * compatibility with mercurial 4.7rc0
- * evolve: handle branch changes when solving content divergence,
- * evolve: improve multiple aspect of divergence resolution
+ * compatibility with mercurial 4.7
+ * evolve: improve multiple aspect of content-divergence resolution
* branch changes handling,
* parent changes handling,
+ * description changes handling,
* divergent stack handling,
- * evolve: merge commit messages when resolving content divergence (issue5877)
+ * improved resume, stop and abort of divergent resolution
+ * evolve: improved automatic resolution of phase-divergence
+
+ * evolve: add a --update and --no-update flag to evolve to control final
+ working copy parent
+ * evolve: show `hg help evolve.interrupted-evolve` in error when conflicts
* evolve: show unfinished state information in `hg status -v` (issue5886)
* evolve: move bookmarks also when updating to successors (issue5923)
+ * evolve: improve orphan resolution when combined with divergence (issue5946)
* amend: abort `--patch` by saving an empty file (issue5925)
+ *
* evolve: add a new `--no-update` flag to keep working copy on the initial
revision.
* evolve: new help section dedicated to resuming operation interrupted by
merge conflit, `hg help evolve.interrupted`.
+ * obslog: --filternonlocal
+
+ * rewind: first limited version of `rewind` command to restore stack of commit to a
+ precusors state (check command help for detail and limitation)
+
+topic (0.10.0)
+
+ * display a hint when a topic becomes empty
8.0.1 -- 2018-06-11
-------------------
--- a/hgext3rd/evolve/__init__.py Fri Aug 03 00:19:45 2018 +0200
+++ b/hgext3rd/evolve/__init__.py Tue Aug 21 13:25:28 2018 +0200
@@ -1142,10 +1142,9 @@
children = [ctx for ctx in wparents[0].children() if not ctx.obsolete()]
topic = _getcurrenttopic(repo)
- filtered = []
+ filtered = set()
if topic and not opts.get("no_topic", False):
- filtered = [ctx for ctx in children if ctx.topic() != topic]
- # XXX N-square membership on children
+ filtered = set(ctx for ctx in children if ctx.topic() != topic)
children = [ctx for ctx in children if ctx not in filtered]
displayer = compat.changesetdisplayer(ui, repo,
{'template': shorttemplate})
@@ -1167,9 +1166,8 @@
else:
aspchildren = evolvecmd._aspiringchildren(repo, [repo['.'].rev()])
if topic:
- filtered.extend(repo[c] for c in children
+ filtered.update(repo[c] for c in aspchildren
if repo[c].topic() != topic)
- # XXX N-square membership on children
aspchildren = [ctx for ctx in aspchildren if ctx not in filtered]
if not opts['evolve'] or not aspchildren:
if filtered:
--- a/hgext3rd/evolve/cmdrewrite.py Fri Aug 03 00:19:45 2018 +0200
+++ b/hgext3rd/evolve/cmdrewrite.py Tue Aug 21 13:25:28 2018 +0200
@@ -952,28 +952,29 @@
_('[OPTION] [-r] REV...'))
# XXX -U --noupdate option to prevent wc update and or bookmarks update ?
def cmdprune(ui, repo, *revs, **opts):
- """hide changesets by marking them obsolete
+ """mark changesets as obsolete or succeeded by another changeset
- Pruned changesets are obsolete with no successors. If they also have no
- descendants, they are hidden (invisible to all commands).
-
- Non-obsolete descendants of pruned changesets become "unstable". Use :hg:`evolve`
- to handle this situation.
+ Pruning changesets marks them obsolete, hiding them from the
+ history log, provided they have no descendants. Otherwise, all
+ such descendants that aren't themselves obsolete become
+ "unstable". Use :hg:`evolve` to handle this situation.
When you prune the parent of your working copy, Mercurial updates the working
copy to a non-obsolete parent.
- You can use ``--succ`` to tell Mercurial that a newer version (successor) of the
+ You can use ``-s/--succ`` to tell Mercurial that a newer version (successor) of the
pruned changeset exists. Mercurial records successor revisions in obsolescence
markers.
- You can use the ``--biject`` option to specify a 1-1 mapping (bijection) between
- revisions to pruned (precursor) and successor changesets. This option may be
- removed in a future release (with the functionality provided automatically).
+ If you prune a single revision and specify multiple revisions in
+ ``-s/--succ``, you are recording a "split" and must acknowledge it by
+ passing ``--split``. Similarly, when you prune multiple changesets with a
+ single successor, you must pass the ``--fold`` option.
- If you specify multiple revisions in ``--succ``, you are recording a "split" and
- must acknowledge it by passing ``--split``. Similarly, when you prune multiple
- changesets with a single successor, you must pass the ``--fold`` option.
+ If you want to supersede multiple revisions at the same time, use
+ ``--biject`` option to pair the pruned precursor and successor changesets.
+ This is commonly useful for resolving history divergence, or when someone
+ else does edits history without obsolescence enabled.
"""
_checknotesize(ui, opts)
revs = scmutil.revrange(repo, list(revs) + opts.get('rev'))
--- a/hgext3rd/evolve/evolvecmd.py Fri Aug 03 00:19:45 2018 +0200
+++ b/hgext3rd/evolve/evolvecmd.py Tue Aug 21 13:25:28 2018 +0200
@@ -21,7 +21,7 @@
hg,
lock as lockmod,
merge,
- node,
+ node as nodemod,
obsolete,
obsutil,
phases,
@@ -299,7 +299,7 @@
text += bumped.description()
new = context.memctx(repo,
- parents=[prec.node(), node.nullid],
+ parents=[prec.node(), nodemod.nullid],
text=text,
files=files,
filectxfn=filectxfn,
@@ -320,10 +320,10 @@
# if rebased happened, update bookmarks from there too
if rebasedbmupdate:
rebasedbmupdate(newid)
- repo.ui.status(_('committed as %s\n') % node.short(newid))
+ repo.ui.status(_('committed as %s\n') % nodemod.short(newid))
# reroute the working copy parent to the new changeset
with repo.dirstate.parentchange():
- repo.dirstate.setparents(newid, node.nullid)
+ repo.dirstate.setparents(newid, nodemod.nullid)
return (True, replacementnode)
def _solvedivergent(ui, repo, divergent, evolvestate, dryrun=False,
@@ -535,7 +535,7 @@
resparent = evolvestate['resolutionparent']
try:
with repo.dirstate.parentchange():
- repo.dirstate.setparents(resparent, node.nullid)
+ repo.dirstate.setparents(resparent, nodemod.nullid)
dirstatedance(repo, divergent, resparent, None)
@@ -798,7 +798,7 @@
# We can't make any assumptions about how to update the hash if the
# cset in question was split or diverged.
if len(successors) == 1 and len(successors[0]) == 1:
- newsha1 = node.hex(successors[0][0])
+ newsha1 = nodemod.hex(successors[0][0])
commitmsg = commitmsg.replace(sha1, newsha1[:len(sha1)])
else:
repo.ui.note(_('The stale commit message reference to %s could '
@@ -814,7 +814,7 @@
nodenew = _relocatecommit(repo, orig, commitmsg)
except error.Abort as exc:
with repo.dirstate.parentchange():
- repo.setparents(repo['.'].node(), node.nullid)
+ repo.setparents(dest.node(), orig.node())
repo.dirstate.write(tr)
# fix up dirstate for copies and renames
copies.duplicatecopies(repo, repo[None], dest.rev(), orig.p1().rev())
@@ -1187,8 +1187,8 @@
for n in dset['divergentnodes']:
t = "%s (%s)" if first else " %s (%s)"
first = False
- fm.plain(t % (node.hex(n)[:hashlen], repo[n].phasestr()))
- comprec = node.hex(dset['commonprecursor'])[:hashlen]
+ fm.plain(t % (nodemod.hex(n)[:hashlen], repo[n].phasestr()))
+ comprec = nodemod.hex(dset['commonprecursor'])[:hashlen]
fm.plain(" (precursor %s)\n" % comprec)
fm.plain("\n")
@@ -1207,11 +1207,11 @@
'sourcenode': imprec,
'sourcetype': 'immutableprecursor'})
for dset in dsets:
- divnodes = [{'node': node.hex(n),
+ divnodes = [{'node': nodemod.hex(n),
'phase': repo[n].phasestr(),
} for n in dset['divergentnodes']]
troubles.append({'troubletype': TROUBLES['CONTENTDIVERGENT'],
- 'commonprecursor': node.hex(dset['commonprecursor']),
+ 'commonprecursor': nodemod.hex(dset['commonprecursor']),
'divergentnodes': divnodes})
fm.data(troubles=troubles)
@@ -1543,6 +1543,7 @@
ui.status(_('evolve aborted\n'))
ui.status(_('working directory is now at %s\n')
% pctx.hex()[:12])
+ evolvestate.delete()
return 0
return abortevolve(ui, repo, evolvestate)
else:
@@ -1691,7 +1692,7 @@
evolvestate.delete()
ui.status(_('evolve aborted\n'))
ui.status(_('working directory is now at %s\n')
- % node.hex(startnode)[:12])
+ % nodemod.hex(startnode)[:12])
else:
raise error.Abort(_("unable to abort interrupted evolve, use 'hg "
"evolve --stop' to stop evolve"))
@@ -1866,6 +1867,9 @@
repo.dirstate.setparents(ctxparents[0].node(),
currentp1)
pass
+ else:
+ with repo.dirstate.parentchange():
+ repo.dirstate.setparents(repo.dirstate.parents()[0], nodemod.nullid)
with repo.ui.configoverride(overrides, 'evolve-continue'):
node = repo.commit(text=message, user=user,
--- a/hgext3rd/evolve/metadata.py Fri Aug 03 00:19:45 2018 +0200
+++ b/hgext3rd/evolve/metadata.py Tue Aug 21 13:25:28 2018 +0200
@@ -5,7 +5,7 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
-__version__ = '8.1.0.dev'
-testedwith = '4.3.2 4.4.2 4.5.2 4.6.1'
+__version__ = '8.1.1.dev'
+testedwith = '4.3.2 4.4.2 4.5.2 4.6.2 4.7'
minimumhgversion = '4.3'
buglink = 'https://bz.mercurial-scm.org/'
--- a/hgext3rd/evolve/obsdiscovery.py Fri Aug 03 00:19:45 2018 +0200
+++ b/hgext3rd/evolve/obsdiscovery.py Tue Aug 21 13:25:28 2018 +0200
@@ -65,7 +65,6 @@
_calcsize = struct.calcsize
eh = exthelper.exthelper()
-eh.merge(stablerangecache.eh)
obsexcmsg = utility.obsexcmsg
# Config
@@ -349,10 +348,50 @@
_updateobshash = "INSERT INTO obshashrange(rev, idx, obshash) VALUES (?,?,?);"
_querymeta = "SELECT schemaversion, tiprev, tipnode, nbobsmarker, obssize, obskey FROM meta;"
_queryobshash = "SELECT obshash FROM obshashrange WHERE (rev = ? AND idx = ?);"
+_query_max_stored = "SELECT MAX(rev) FROM obshashrange"
_reset = "DELETE FROM obshashrange;"
_delete = "DELETE FROM obshashrange WHERE (rev = ? AND idx = ?);"
+def _affectedby(repo, markers):
+ """return all nodes whose relevant set is affected by this changeset
+
+ This is a reversed version of obsstore.relevantmarkers
+ """
+ affected_nodes = set()
+ known_markers = set(markers)
+ node_to_proceed = set()
+ marker_to_proceed = set(known_markers)
+
+ obsstore = repo.obsstore
+
+ while node_to_proceed or marker_to_proceed:
+ while marker_to_proceed:
+ m = marker_to_proceed.pop()
+ # check successors and parent
+ if m[1]:
+ relevant = (m[1], )
+ else: # prune case
+ relevant = ((m[0], ), m[5])
+ for l in relevant:
+ if l is None:
+ continue
+ for n in l:
+ if n not in affected_nodes:
+ node_to_proceed.add(n)
+ affected_nodes.add(n)
+ # marker_to_proceed is now empty:
+ if node_to_proceed:
+ n = node_to_proceed.pop()
+ markers = set()
+ markers.update(obsstore.successors.get(n, ()))
+ markers.update(obsstore.predecessors.get(n, ()))
+ markers -= known_markers
+ marker_to_proceed.update(markers)
+ known_markers.update(markers)
+
+ return affected_nodes
+
class _obshashcache(obscache.dualsourcecache):
_schemaversion = 2
@@ -417,46 +456,43 @@
self._updating = True
- setrevs = set(revs)
- rev = repo.changelog.nodemap.get
- # if we have a new markers affecting a node already covered by the
- # cache, we must abort.
- affected = set()
- for m in obsmarkers:
- # check successors and parent
- for l in (m[1], m[5]):
- if l is None:
- continue
- for p in l:
- r = rev(p)
- if r is not None and r not in setrevs:
- # XXX should check < min(setrevs) or tiprevs
- affected.add(r)
+ con = self._con
+ if con is not None:
+ max_stored = con.execute(_query_max_stored).fetchall()[0][0]
+ affected_nodes = _affectedby(repo, obsmarkers)
+
+ rev = repo.changelog.nodemap.get
+ affected = [rev(n) for n in affected_nodes]
+ affected = [r for r in affected
+ if r is not None and r <= max_stored]
- if affected:
- repo.ui.log('evoext-cache', 'obshashcache clean - '
- 'new markers affect %d changeset and cached ranges\n'
- % len(affected))
- # XXX the current reset is too strong we could just drop the affected range
- con = self._con
- if con is not None:
- con.execute(_reset)
-
- ranges = repo.stablerange.contains(repo, affected)
+ if affected:
+ repo.ui.log('evoext-cache', 'obshashcache clean - '
+ 'new markers affect %d changeset and cached ranges\n'
+ % len(affected))
+ if con is not None:
+ # always reset for now, the code detecting affect is buggy
+ # so we need to reset more broadly than we would like.
+ if repo.stablerange._con is None:
+ con.execute(_reset)
+ self._data.clear()
+ else:
+ ranges = repo.stablerange.contains(repo, affected)
+ con.executemany(_delete, ranges)
+ for r in ranges:
+ self._data.pop(r, None)
- con.executemany(_delete, ranges)
-
- # rewarm key revisions
- #
- # (The current invalidation is too wide, but rewarming every single
- # revision is quite costly)
- newrevs = []
- stop = self._cachekey[0] # tiprev
- for h in repo.filtered('immutable').changelog.headrevs():
- if h <= stop and h in affected:
- newrevs.append(h)
- newrevs.extend(revs)
- revs = newrevs
+ # rewarm key revisions
+ #
+ # (The current invalidation is too wide, but rewarming every
+ # single revision is quite costly)
+ newrevs = []
+ stop = self._cachekey[0] # tiprev
+ for h in repo.filtered('immutable').changelog.headrevs():
+ if h <= stop and h in affected:
+ newrevs.append(h)
+ newrevs.extend(revs)
+ revs = newrevs
repo.depthcache.update(repo)
total = len(revs)
@@ -521,6 +557,8 @@
repo = repo.unfiltered()
try:
with repo.lock():
+ if 'stablerange' in vars(repo):
+ repo.stablerange.save(repo)
self._save(repo)
except error.LockError:
# Exceptionnally we are noisy about it since performance impact
@@ -1003,3 +1041,6 @@
else:
boundaries['common'] = [node.nullid]
return boundaries
+
+# merge later for outer layer wrapping
+eh.merge(stablerangecache.eh)
--- a/hgext3rd/evolve/stablerange.py Fri Aug 03 00:19:45 2018 +0200
+++ b/hgext3rd/evolve/stablerange.py Tue Aug 21 13:25:28 2018 +0200
@@ -32,8 +32,6 @@
filterparents = utility.filterparents
eh = exthelper.exthelper()
-eh.merge(stablesort.eh)
-eh.merge(firstmergecache.eh)
#################################
@@ -864,3 +862,7 @@
top = (rangeid[0], globalindex)
result.append(top)
return result
+
+# merge later for outer layer wrapping
+eh.merge(stablesort.eh)
+eh.merge(firstmergecache.eh)
--- a/hgext3rd/evolve/stablerangecache.py Fri Aug 03 00:19:45 2018 +0200
+++ b/hgext3rd/evolve/stablerangecache.py Tue Aug 21 13:25:28 2018 +0200
@@ -9,6 +9,7 @@
import abc
import heapq
+import random
import sqlite3
import time
import weakref
@@ -29,7 +30,6 @@
from mercurial.i18n import _
eh = exthelper.exthelper()
-eh.merge(stablerange.eh)
class stablerangeondiskbase(stablerange.stablerangecached,
genericcaches.changelogsourcebase):
@@ -120,10 +120,17 @@
FROM subranges
WHERE (suprev = ? AND supidx = ?)
ORDER BY listidx;"""
-_querysuperranges = """SELECT suprev, supidx
- FROM subranges
- WHERE (subrev = ? AND subidx = ?)
- ORDER BY listidx;"""
+
+_querysuperrangesmain = """SELECT DISTINCT suprev, supidx
+ FROM subranges
+ WHERE %s;"""
+
+_querysuperrangesbody = '(subrev = %d and subidx = %d)'
+
+def _make_querysuperranges(ranges):
+ # building a tree of OR would allow for more ranges
+ body = ' OR '.join(_querysuperrangesbody % r for r in ranges)
+ return _querysuperrangesmain % body
class stablerangesqlbase(stablerange.stablerangecached):
"""class that can handle all the bits needed to store range into sql
@@ -144,18 +151,22 @@
self._unsavedsubranges = {}
def contains(self, repo, revs):
+ con = self._con
+ assert con is not None
new = set()
known = set()
depth = repo.depthcache.get
for r in revs:
new.add((r, depth(r) - 1))
new.add((r, 0))
- con = self._con
- while new and con is not None:
- # many execute is not efficient
- next = new.pop()
- known.add(next)
- ranges = set(con.execute(_querysuperranges, next).fetchall())
+ while new:
+ if len(new) < 300:
+ sample = new
+ else:
+ sample = random.sample(new, 300)
+ known.update(sample)
+ query = _make_querysuperranges(sample)
+ ranges = set(con.execute(query).fetchall())
new.update(ranges)
new -= known
return sorted(known)
@@ -214,6 +225,8 @@
def _save(self, repo):
repo = repo.unfiltered()
repo.depthcache.save(repo)
+ repo.stablesort.save(repo)
+ repo.firstmergecache.save(repo)
if not self._unsavedsubranges:
return # no new data
@@ -391,3 +404,5 @@
return tr
repo.__class__ = stablerangerepo
+
+eh.merge(stablerange.eh)
--- a/hgext3rd/evolve/stablesort.py Fri Aug 03 00:19:45 2018 +0200
+++ b/hgext3rd/evolve/stablesort.py Tue Aug 21 13:25:28 2018 +0200
@@ -34,7 +34,6 @@
filterparents = utility.filterparents
eh = exthelper.exthelper()
-eh.merge(depthcache.eh)
def _mergepoint_tie_breaker(repo):
"""the key use to tie break merge parent
@@ -705,3 +704,6 @@
'headcached': stablesort_mergepoint_head_cached,
'headondisk': stablesort_mergepoint_head_ondisk,
}
+
+# merge last so that repo setup wrap after that one.
+eh.merge(depthcache.eh)
--- a/hgext3rd/evolve/templatekw.py Fri Aug 03 00:19:45 2018 +0200
+++ b/hgext3rd/evolve/templatekw.py Tue Aug 21 13:25:28 2018 +0200
@@ -26,13 +26,15 @@
### template keywords
# XXX it does not handle troubles well :-/
-@eh.templatekw('obsolete')
-def obsoletekw(repo, ctx, templ, **args):
- """String. Whether the changeset is ``obsolete``.
- """
- if ctx.obsolete():
- return 'obsolete'
- return ''
+if not util.safehasattr(templatekw, 'showobsolete'):
+ # hg < 4.2
+ @eh.templatekw('obsolete')
+ def obsoletekw(repo, ctx, templ, **args):
+ """String. Whether the changeset is ``obsolete``.
+ """
+ if ctx.obsolete():
+ return 'obsolete'
+ return ''
if util.safehasattr(templatekw, 'compatlist'):
@eh.templatekw('troubles', requires=set(['ctx', 'templ']))
--- a/hgext3rd/topic/__init__.py Fri Aug 03 00:19:45 2018 +0200
+++ b/hgext3rd/topic/__init__.py Tue Aug 21 13:25:28 2018 +0200
@@ -181,9 +181,9 @@
'topic.active': 'green',
}
-__version__ = '0.10.0.dev'
+__version__ = '0.10.1.dev'
-testedwith = '4.3.3 4.4.2 4.5.2 4.6.1'
+testedwith = '4.3.3 4.4.2 4.5.2 4.6.2 4.7'
minimumhgversion = '4.3'
buglink = 'https://bz.mercurial-scm.org/'
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-discovery-obshashrange-cache.t Tue Aug 21 13:25:28 2018 +0200
@@ -0,0 +1,169 @@
+==============================
+Test cache warming strategy
+test for range based discovery
+==============================
+
+ $ . $TESTDIR/testlib/pythonpath.sh
+
+ $ cat << EOF >> $HGRCPATH
+ > [extensions]
+ > hgext3rd.evolve =
+ > blackbox =
+ > [defaults]
+ > blackbox = -l 100
+ > [experimental]
+ > obshashrange=1
+ > verbose-obsolescence-exchange=1
+ > [ui]
+ > logtemplate = "{rev} {node|short} {desc} {tags}\n"
+ > ssh=python "$RUNTESTDIR/dummyssh"
+ > [alias]
+ > debugobsolete=debugobsolete -d '0 0'
+ > [ui]
+ > ssh=$PYTHON "$RUNTESTDIR/dummyssh"
+ > EOF
+
+ $ hg init main
+
+ $ hg -R main debugbuilddag '.+7'
+
+ $ for node in `hg -R main log -T '{node}\n'`; do
+ > echo -n $node | grep -o . | sort |tr -d "\n" > ancfile
+ > anc=`cat ancfile`
+ > rm ancfile
+ > echo "marking $anc as predecessors of $node"
+ > hg -R main debugobsolete $anc $node
+ > done
+ marking 000011223334456677789aaaaabbbbcccddddeef as predecessors of 4de32a90b66cd083ebf3c00b41277aa7abca51dd
+ marking 012234455555666699aaaaabbbccccccefffffff as predecessors of f69452c5b1af6cbaaa56ef50cf94fff5bcc6ca23
+ marking 00001122233445555777778889999abbcccddeef as predecessors of c8d03c1b5e94af74b772900c58259d2e08917735
+ marking 0011222445667777889999aabbbbcddddeeeeeee as predecessors of bebd167eb94d257ace0e814aeb98e6972ed2970d
+ marking 000011222223344555566778899aaaabccddefff as predecessors of 2dc09a01254db841290af0538aa52f6f52c776e3
+ marking 01111222223333444455555566999abbbbcceeef as predecessors of 01241442b3c2bf3211e593b549c655ea65b295e3
+ marking 01122444445555566677888aabbcccddddefffff as predecessors of 66f7d451a68b85ed82ff5fcc254daf50c74144bd
+ marking 000111111234444467777889999aaaabcdeeeeff as predecessors of 1ea73414a91b0920940797d8fc6a11e447f8ea1e
+
+ $ hg debugobsolete -R main
+ 000011223334456677789aaaaabbbbcccddddeef 4de32a90b66cd083ebf3c00b41277aa7abca51dd 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
+ 012234455555666699aaaaabbbccccccefffffff f69452c5b1af6cbaaa56ef50cf94fff5bcc6ca23 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
+ 00001122233445555777778889999abbcccddeef c8d03c1b5e94af74b772900c58259d2e08917735 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
+ 0011222445667777889999aabbbbcddddeeeeeee bebd167eb94d257ace0e814aeb98e6972ed2970d 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
+ 000011222223344555566778899aaaabccddefff 2dc09a01254db841290af0538aa52f6f52c776e3 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
+ 01111222223333444455555566999abbbbcceeef 01241442b3c2bf3211e593b549c655ea65b295e3 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
+ 01122444445555566677888aabbcccddddefffff 66f7d451a68b85ed82ff5fcc254daf50c74144bd 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
+ 000111111234444467777889999aaaabcdeeeeff 1ea73414a91b0920940797d8fc6a11e447f8ea1e 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
+
+Cache mode is "auto" so local commit did not warm the cache yet
+
+ $ f -s main/.hg/cache/evoext*
+ main/.hg/cache/evoext-obscache-00: size=72
+
+Initial push
+------------
+
+ $ hg init server
+ $ hg -R main push ssh://user@dummy/server
+ pushing to ssh://user@dummy/server
+ searching for changes
+ OBSEXC: computing relevant nodes
+ OBSEXC: looking for common markers in 8 nodes
+ OBSEXC: computing markers relevant to 8 nodes
+ remote: adding changesets
+ remote: adding manifests
+ remote: adding file changes
+ remote: added 8 changesets with 0 changes to 0 files
+ remote: 8 new obsolescence markers
+
+sever cash is warm
+
+ $ f -s server/.hg/cache/evoext*
+ server/.hg/cache/evoext-depthcache-00: size=88
+ server/.hg/cache/evoext-firstmerge-00: size=88
+ server/.hg/cache/evoext-obscache-00: size=72
+ server/.hg/cache/evoext-stablesortcache-00: size=92
+ server/.hg/cache/evoext_obshashrange_v2.sqlite: size=?* (glob)
+ server/.hg/cache/evoext_stablerange_v2.sqlite: size=?* (glob)
+
+client cash is warm
+
+ $ f -s main/.hg/cache/evoext*
+ main/.hg/cache/evoext-depthcache-00: size=88
+ main/.hg/cache/evoext-firstmerge-00: size=88
+ main/.hg/cache/evoext-obscache-00: size=72
+ main/.hg/cache/evoext-stablesortcache-00: size=92
+ main/.hg/cache/evoext_obshashrange_v2.sqlite: size=?* (glob)
+ main/.hg/cache/evoext_stablerange_v2.sqlite: size=?* (glob)
+
+initial pull
+------------
+
+ $ rm -rf main
+ $ hg init main
+ $ hg -R main pull ssh://user@dummy/server
+ pulling from ssh://user@dummy/server
+ requesting all changes
+ adding changesets
+ adding manifests
+ adding file changes
+ added 8 changesets with 0 changes to 0 files
+ 8 new obsolescence markers
+ new changesets 1ea73414a91b:4de32a90b66c
+ (run 'hg update' to get a working copy)
+
+client cache is empty because the discovery was empty
+
+ $ f -s main/.hg/cache/evoext*
+ main/.hg/cache/evoext-obscache-00: size=72
+
+no op pull
+------------
+
+clear cache
+
+ $ rm -rf main/.hg/cache/evoext
+
+pull nothing
+
+ $ hg -R main pull ssh://user@dummy/server
+ pulling from ssh://user@dummy/server
+ searching for changes
+ no changes found
+ OBSEXC: looking for common markers in 8 nodes
+
+client cash is warm
+
+ $ f -s main/.hg/cache/evoext*
+ main/.hg/cache/evoext-depthcache-00: size=88
+ main/.hg/cache/evoext-firstmerge-00: size=88
+ main/.hg/cache/evoext-obscache-00: size=72
+ main/.hg/cache/evoext-stablesortcache-00: size=92
+ main/.hg/cache/evoext_obshashrange_v2.sqlite: size=?* (glob)
+ main/.hg/cache/evoext_stablerange_v2.sqlite: size=?* (glob)
+
+no op push
+------------
+
+clear cache
+
+ $ rm -rf main/.hg/cache/evoext
+
+push nothing
+
+ $ hg -R main push ssh://user@dummy/server
+ pushing to ssh://user@dummy/server
+ searching for changes
+ OBSEXC: computing relevant nodes
+ OBSEXC: looking for common markers in 8 nodes
+ OBSEXC: markers already in sync
+ no changes found
+ [1]
+
+client cash is warm
+
+ $ f -s main/.hg/cache/evoext*
+ main/.hg/cache/evoext-depthcache-00: size=88
+ main/.hg/cache/evoext-firstmerge-00: size=88
+ main/.hg/cache/evoext-obscache-00: size=72
+ main/.hg/cache/evoext-stablesortcache-00: size=92
+ main/.hg/cache/evoext_obshashrange_v2.sqlite: size=?* (glob)
+ main/.hg/cache/evoext_stablerange_v2.sqlite: size=?* (glob)
--- a/tests/test-discovery-obshashrange.t Fri Aug 03 00:19:45 2018 +0200
+++ b/tests/test-discovery-obshashrange.t Tue Aug 21 13:25:28 2018 +0200
@@ -140,7 +140,11 @@
* @0000000000000000000000000000000000000000 (*)> strip detected, evo-ext-depthcache cache reset (glob)
* @0000000000000000000000000000000000000000 (*)> updated evo-ext-depthcache in *.???? seconds (8r) (glob)
* @0000000000000000000000000000000000000000 (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (8r) (glob)
- * @0000000000000000000000000000000000000000 (*)> updated evo-ext-obshashrange in *.???? seconds (8r, 5o) (glob)
+ 1970/01/01 00:00:00 * @0000000000000000000000000000000000000000 (*)> updated evo-ext-obshashrange in *.???? seconds (8r, 5o) (glob)
+ 1970/01/01 00:00:00 * @0000000000000000000000000000000000000000 (*)> strip detected, evo-ext-stablesort cache reset (glob)
+ 1970/01/01 00:00:00 * @0000000000000000000000000000000000000000 (*)> updated evo-ext-stablesort in *.???? seconds (8r) (glob)
+ 1970/01/01 00:00:00 * @0000000000000000000000000000000000000000 (*)> strip detected, evo-ext-firstmerge cache reset (glob)
+ 1970/01/01 00:00:00 * @0000000000000000000000000000000000000000 (*)> updated evo-ext-firstmerge in *.???? seconds (8r) (glob)
* @0000000000000000000000000000000000000000 (*)> debugobshashrange --subranges --rev tip exited 0 after *.?? seconds (glob)
* @0000000000000000000000000000000000000000 (*)> -R server serve --stdio (glob)
* @0000000000000000000000000000000000000000 (*)> -R server serve --stdio exited 0 after *.?? seconds (glob)
@@ -236,17 +240,11 @@
received listkey for "phases": 58 bytes
$ hg -R ../server blackbox
* @0000000000000000000000000000000000000000 (*)> -R server serve --stdio (glob)
- * @0000000000000000000000000000000000000000 (*)> strip detected, evo-ext-stablerange-mergepoint cache reset (glob)
- * @0000000000000000000000000000000000000000 (*)> strip detected, evo-ext-depthcache cache reset (glob)
- * @0000000000000000000000000000000000000000 (*)> updated evo-ext-depthcache in *.???? seconds (8r) (glob)
- * @0000000000000000000000000000000000000000 (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (8r) (glob)
+ 1970/01/01 00:00:00 * @0000000000000000000000000000000000000000 (*)> updated evo-ext-firstmerge in *.???? seconds (1r) (glob)
* @0000000000000000000000000000000000000000 (*)> updated evo-ext-depthcache in *.???? seconds (1r) (glob)
- * @0000000000000000000000000000000000000000 (*)> updated evo-ext-obshashrange in *.???? seconds (1r, 1o) (glob)
+ 1970/01/01 00:00:00 * @0000000000000000000000000000000000000000 (*)> updated evo-ext-stablesort in *.???? seconds (1r) (glob)
* @0000000000000000000000000000000000000000 (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (1r) (glob)
- * @0000000000000000000000000000000000000000 (*)> strip detected, evo-ext-firstmerge cache reset (glob)
- * @0000000000000000000000000000000000000000 (*)> updated evo-ext-firstmerge in *.???? seconds (9r) (glob)
- * @0000000000000000000000000000000000000000 (*)> strip detected, evo-ext-stablesort cache reset (glob)
- * @0000000000000000000000000000000000000000 (*)> updated evo-ext-stablesort in *.???? seconds (9r) (glob)
+ 1970/01/01 00:00:00 * @0000000000000000000000000000000000000000 (*)> updated evo-ext-obshashrange in *.???? seconds (1r, 1o) (glob)
* @0000000000000000000000000000000000000000 (*)> obscache is out of date, falling back to slower obsstore version (glob)
* @0000000000000000000000000000000000000000 (*)> updated served branch cache in *.???? seconds (glob)
* @0000000000000000000000000000000000000000 (*)> wrote served branch cache with 1 labels and 2 nodes (glob)
@@ -344,10 +342,14 @@
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-depthcache cache reset (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (6r) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (6r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obshashrange in *.???? seconds (6r, 4o) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obshashrange in *.???? seconds (6r, 4o) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> query 0; add more sample (target 100, current 1) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> query 0; sample size is 9, largest range 5 (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> sending evoext_obshashrange_v1 command (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-stablesort cache reset (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablesort in *.???? seconds (6r) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-firstmerge cache reset (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-firstmerge in *.???? seconds (6r) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 0/5 mismatch - 1 obshashrange queries in *.???? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 0/5 mismatch - 1 obshashrange queries in *.???? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> checking for updated bookmarks (glob)
@@ -382,10 +384,6 @@
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obscache in *.???? seconds (0r, 1o) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobsolete 22222222222222222bbbbbbbbbbbbb2222222222 2dc09a01254db841290af0538aa52f6f52c776e3 exited 0 after *.?? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> push (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-stablerange-mergepoint cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-depthcache cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (6r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (6r) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obshashcache clean - new markers affect 2 changeset and cached ranges (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obshashrange in *.???? seconds (0r, 2o) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 2/6 mismatch - 1 obshashrange queries in *.???? seconds (glob)
@@ -447,7 +445,7 @@
* @0000000000000000000000000000000000000000 (*)> updated evo-ext-obscache in *.???? seconds (0r, 1o) (glob)
* @0000000000000000000000000000000000000000 (*)> -R ../server debugobsolete bbbbbbb2222222222bbbbbbbbbbbbb2222222222 bebd167eb94d257ace0e814aeb98e6972ed2970d exited 0 after *.?? seconds (glob)
* @0000000000000000000000000000000000000000 (*)> -R server serve --stdio (glob)
- * @0000000000000000000000000000000000000000 (*)> obshashcache clean - new markers affect 2 changeset and cached ranges (glob)
+ 1970/01/01 00:00:00 * @0000000000000000000000000000000000000000 (*)> obshashcache clean - new markers affect 2 changeset and cached ranges (glob)
* @0000000000000000000000000000000000000000 (*)> updated evo-ext-obshashrange in *.???? seconds (0r, 2o) (glob)
* @0000000000000000000000000000000000000000 (*)> -R server serve --stdio exited 0 after *.?? seconds (glob)
* @0000000000000000000000000000000000000000 (*)> -R ../server blackbox (glob)
@@ -468,10 +466,6 @@
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> log -G (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> log -G exited 0 after *.?? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull -r 6 (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-stablerange-mergepoint cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-depthcache cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (6r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (6r) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 2/6 mismatch - 1 obshashrange queries in *.???? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated served branch cache in *.???? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> wrote served branch cache with 1 labels and 2 nodes (glob)
@@ -549,39 +543,73 @@
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobsolete --rev ::6 exited 0 after *.?? seconds (glob) (windows !)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' (glob) (no-windows !)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev "heads(all())" (glob) (windows !)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-stablerange-mergepoint cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-depthcache cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (8r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (8r) (glob)
+ * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev "heads(all())" exited 0 after *.?? seconds (glob) (windows !)
+ * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev "desc(\"r3\")" (glob) (windows !)
+ * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev "desc(\"r3\")" exited 0 after *.?? seconds (glob) (windows !)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (2r) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (2r) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obshashcache clean - new markers affect 2 changeset and cached ranges (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obshashrange in *.???? seconds (2r, 3o) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablesort in *.???? seconds (2r) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-firstmerge in *.???? seconds (2r) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' exited 0 after *.?? seconds (glob) (no-windows !)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev "heads(all())" exited 0 after *.?? seconds (glob) (windows !)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull -r f69452c5b1af6cbaaa56ef50cf94fff5bcc6ca23 (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-stablerange-mergepoint cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-depthcache cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (8r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (8r) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 2/7 mismatch - 1 obshashrange queries in *.???? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obscache in *.???? seconds (0r, 2o) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull -r f69452c5b1af6cbaaa56ef50cf94fff5bcc6ca23 exited 0 after *.?? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'desc("r3")' (glob) (no-windows !)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev "desc(\"r3\")" (glob) (windows !)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-stablerange-mergepoint cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-depthcache cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (8r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (8r) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obshashcache clean - new markers affect 2 changeset and cached ranges (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obshashrange in *.???? seconds (0r, 2o) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'desc("r3")' exited 0 after *.?? seconds (glob) (no-windows !)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev "desc(\"r3\")" exited 0 after *.?? seconds (glob) (windows !)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> blackbox (glob)
$ rm .hg/blackbox.log
-Adding prune markers on existing changeset
-------------------------------------------
+Adding markers affecting existing changeset
+-------------------------------------------
+
+Simple prune marker
+ $ hg debugobshashrange -R ../server --subranges --rev 'heads(all())'
+ rev node index size depth obshash
+ 7 4de32a90b66c 0 8 8 3e1f959425c6
+ 8 45f8b879de92 0 6 6 b405cb0bdc2b
+ 3 2dc09a01254d 0 4 4 8932bf980bb4
+ 7 4de32a90b66c 4 4 8 5a7179ca8e73
+ 3 2dc09a01254d 2 2 4 ce1937ca1278
+ 8 45f8b879de92 4 2 6 9c26c72819c0
+ 7 4de32a90b66c 6 2 8 033544c939f0
+ 1 66f7d451a68b 0 2 2 327c7dd73d29
+ 5 c8d03c1b5e94 4 2 6 ec8a3e92c525
+ 2 01241442b3c2 2 1 3 1ed3c61fb39a
+ 0 1ea73414a91b 0 1 1 000000000000
+ 3 2dc09a01254d 3 1 4 26f996446ecb
+ 8 45f8b879de92 5 1 6 1a0c08180b65
+ 7 4de32a90b66c 7 1 8 033544c939f0
+ 1 66f7d451a68b 1 1 2 327c7dd73d29
+ 4 bebd167eb94d 4 1 5 20a2cc572e4b
+ 5 c8d03c1b5e94 5 1 6 446c2dc3bce5
+ 6 f69452c5b1af 6 1 7 000000000000
$ hg -R ../server debugobsolete --record-parents `getid 'desc(foo)'`
+ $ hg debugobshashrange -R ../server --subranges --rev 'heads(all())'
+ rev node index size depth obshash
+ 7 4de32a90b66c 0 8 8 c7f1f7e9925b
+ 8 45f8b879de92 0 6 6 7c49a958a9ac
+ 3 2dc09a01254d 0 4 4 8932bf980bb4
+ 7 4de32a90b66c 4 4 8 c681c3e58c27
+ 3 2dc09a01254d 2 2 4 ce1937ca1278
+ 8 45f8b879de92 4 2 6 c6795525c540
+ 7 4de32a90b66c 6 2 8 033544c939f0
+ 1 66f7d451a68b 0 2 2 327c7dd73d29
+ 5 c8d03c1b5e94 4 2 6 89755fd39e6d
+ 2 01241442b3c2 2 1 3 1ed3c61fb39a
+ 0 1ea73414a91b 0 1 1 000000000000
+ 3 2dc09a01254d 3 1 4 26f996446ecb
+ 8 45f8b879de92 5 1 6 796507769034
+ 7 4de32a90b66c 7 1 8 033544c939f0
+ 1 66f7d451a68b 1 1 2 327c7dd73d29
+ 4 bebd167eb94d 4 1 5 b21465ecb790
+ 5 c8d03c1b5e94 5 1 6 446c2dc3bce5
+ 6 f69452c5b1af 6 1 7 000000000000
$ hg pull -r `getid 'desc(r4)'`
pulling from ssh://user@dummy/server
no changes found
@@ -590,10 +618,6 @@
1 new obsolescence markers
$ hg blackbox
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull -r bebd167eb94d257ace0e814aeb98e6972ed2970d (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-stablerange-mergepoint cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-depthcache cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (8r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (8r) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 1/5 mismatch - 1 obshashrange queries in *.???? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obscache in *.???? seconds (0r, 1o) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull -r bebd167eb94d257ace0e814aeb98e6972ed2970d exited 0 after *.?? seconds (glob)
@@ -618,7 +642,239 @@
6 c8d03c1b5e94 5 1 6 446c2dc3bce5
7 f69452c5b1af 6 1 7 000000000000
+Stacked prune markers
+
+ $ hg -R ../server --hidden up 'desc(foo)'
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo a > ../server/xhf
+ $ hg -R ../server commit -Am "chain_prune"
+ adding xhf
+ $ hg -R ../server update null
+ 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
+ $ hg debugobshashrange -R ../server --subranges --rev 'heads(all())'
+ rev node index size depth obshash
+ 7 4de32a90b66c 0 8 8 c7f1f7e9925b
+ 9 09b2e73c5f20 0 7 7 000000000000
+ 3 2dc09a01254d 0 4 4 8932bf980bb4
+ 7 4de32a90b66c 4 4 8 c681c3e58c27
+ 9 09b2e73c5f20 4 3 7 000000000000
+ 3 2dc09a01254d 2 2 4 ce1937ca1278
+ 8 45f8b879de92 4 2 6 c6795525c540
+ 7 4de32a90b66c 6 2 8 033544c939f0
+ 1 66f7d451a68b 0 2 2 327c7dd73d29
+ 5 c8d03c1b5e94 4 2 6 89755fd39e6d
+ 2 01241442b3c2 2 1 3 1ed3c61fb39a
+ 9 09b2e73c5f20 6 1 7 000000000000
+ 0 1ea73414a91b 0 1 1 000000000000
+ 3 2dc09a01254d 3 1 4 26f996446ecb
+ 8 45f8b879de92 5 1 6 796507769034
+ 7 4de32a90b66c 7 1 8 033544c939f0
+ 1 66f7d451a68b 1 1 2 327c7dd73d29
+ 4 bebd167eb94d 4 1 5 b21465ecb790
+ 5 c8d03c1b5e94 5 1 6 446c2dc3bce5
+ 6 f69452c5b1af 6 1 7 000000000000
+ $ hg -R ../server debugobsolete --record-parents `(cd ../server/; getid 'desc("chain_prune")')`
+ obsoleted 1 changesets
+ $ hg debugobshashrange -R ../server --subranges --rev 'heads(all())'
+ rev node index size depth obshash
+ 7 4de32a90b66c 0 8 8 f966d46c2069
+ 8 45f8b879de92 0 6 6 c9ee11811914
+ 3 2dc09a01254d 0 4 4 8932bf980bb4
+ 7 4de32a90b66c 4 4 8 542cc6dd4c67
+ 3 2dc09a01254d 2 2 4 ce1937ca1278
+ 8 45f8b879de92 4 2 6 b5d53b723b2e
+ 7 4de32a90b66c 6 2 8 033544c939f0
+ 1 66f7d451a68b 0 2 2 327c7dd73d29
+ 5 c8d03c1b5e94 4 2 6 b0302c7614fb
+ 2 01241442b3c2 2 1 3 1ed3c61fb39a
+ 0 1ea73414a91b 0 1 1 000000000000
+ 3 2dc09a01254d 3 1 4 26f996446ecb
+ 8 45f8b879de92 5 1 6 78e8071e893a
+ 7 4de32a90b66c 7 1 8 033544c939f0
+ 1 66f7d451a68b 1 1 2 327c7dd73d29
+ 4 bebd167eb94d 4 1 5 9b4a136d1137
+ 5 c8d03c1b5e94 5 1 6 446c2dc3bce5
+ 6 f69452c5b1af 6 1 7 000000000000
+ $ hg debugobshashrange -R ../server --subranges --rev 'heads(all())' --hidden
+ rev node index size depth obshash
+ 7 4de32a90b66c 0 8 8 f966d46c2069
+ 9 09b2e73c5f20 0 7 7 be139f5b4d01
+ 3 2dc09a01254d 0 4 4 8932bf980bb4
+ 7 4de32a90b66c 4 4 8 542cc6dd4c67
+ 9 09b2e73c5f20 4 3 7 7a88eb008295
+ 3 2dc09a01254d 2 2 4 ce1937ca1278
+ 8 45f8b879de92 4 2 6 b5d53b723b2e
+ 7 4de32a90b66c 6 2 8 033544c939f0
+ 1 66f7d451a68b 0 2 2 327c7dd73d29
+ 5 c8d03c1b5e94 4 2 6 b0302c7614fb
+ 2 01241442b3c2 2 1 3 1ed3c61fb39a
+ 9 09b2e73c5f20 6 1 7 3339d42d829e
+ 0 1ea73414a91b 0 1 1 000000000000
+ 3 2dc09a01254d 3 1 4 26f996446ecb
+ 8 45f8b879de92 5 1 6 78e8071e893a
+ 7 4de32a90b66c 7 1 8 033544c939f0
+ 1 66f7d451a68b 1 1 2 327c7dd73d29
+ 4 bebd167eb94d 4 1 5 9b4a136d1137
+ 5 c8d03c1b5e94 5 1 6 446c2dc3bce5
+ 6 f69452c5b1af 6 1 7 000000000000
+ $ hg pull -r `getid 'desc(r4)'`
+ pulling from ssh://user@dummy/server
+ no changes found
+ OBSEXC: looking for common markers in 5 nodes
+ OBSEXC: request obsmarkers for 1 common nodes
+ 1 new obsolescence markers
+ $ hg blackbox
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obshashcache clean - new markers affect 2 changeset and cached ranges (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obshashrange in *.???? seconds (0r, 1o) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' exited 0 after *.?? seconds (glob)
+ * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull -r bebd167eb94d257ace0e814aeb98e6972ed2970d (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 1/5 mismatch - 1 obshashrange queries in *.???? seconds (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obscache in *.???? seconds (0r, 1o) (glob)
+ * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull -r bebd167eb94d257ace0e814aeb98e6972ed2970d exited 0 after *.?? seconds (glob)
+ * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> blackbox (glob)
+ $ rm .hg/blackbox.log
+ $ hg debugobshashrange --subranges --rev 'heads(all())'
+ rev node index size depth obshash
+ 7 f69452c5b1af 0 7 7 000000000000
+ 5 45f8b879de92 0 6 6 c9ee11811914
+ 3 2dc09a01254d 0 4 4 8932bf980bb4
+ 7 f69452c5b1af 4 3 7 000000000000
+ 3 2dc09a01254d 2 2 4 ce1937ca1278
+ 5 45f8b879de92 4 2 6 b5d53b723b2e
+ 1 66f7d451a68b 0 2 2 327c7dd73d29
+ 6 c8d03c1b5e94 4 2 6 b0302c7614fb
+ 2 01241442b3c2 2 1 3 1ed3c61fb39a
+ 0 1ea73414a91b 0 1 1 000000000000
+ 3 2dc09a01254d 3 1 4 26f996446ecb
+ 5 45f8b879de92 5 1 6 78e8071e893a
+ 1 66f7d451a68b 1 1 2 327c7dd73d29
+ 4 bebd167eb94d 4 1 5 9b4a136d1137
+ 6 c8d03c1b5e94 5 1 6 446c2dc3bce5
+ 7 f69452c5b1af 6 1 7 000000000000
+
+New marker prefixed to another one
+
+ $ hg -R ../server debugobsolete aaaa4444444444444444aaaaaaaaaaaaaaaaaaaa `(cd ../server/; getid 'desc("chain_prune")')`
+ $ hg debugobshashrange -R ../server --subranges --rev 'heads(all())'
+ rev node index size depth obshash
+ 7 4de32a90b66c 0 8 8 0ffc0013bda0
+ 8 45f8b879de92 0 6 6 0ffa86a0054f
+ 3 2dc09a01254d 0 4 4 8932bf980bb4
+ 7 4de32a90b66c 4 4 8 207792ae6aeb
+ 3 2dc09a01254d 2 2 4 ce1937ca1278
+ 8 45f8b879de92 4 2 6 a3de812028fa
+ 7 4de32a90b66c 6 2 8 033544c939f0
+ 1 66f7d451a68b 0 2 2 327c7dd73d29
+ 5 c8d03c1b5e94 4 2 6 e94b0f268773
+ 2 01241442b3c2 2 1 3 1ed3c61fb39a
+ 0 1ea73414a91b 0 1 1 000000000000
+ 3 2dc09a01254d 3 1 4 26f996446ecb
+ 8 45f8b879de92 5 1 6 e765ea1567b3
+ 7 4de32a90b66c 7 1 8 033544c939f0
+ 1 66f7d451a68b 1 1 2 327c7dd73d29
+ 4 bebd167eb94d 4 1 5 8e945c34a0fd
+ 5 c8d03c1b5e94 5 1 6 446c2dc3bce5
+ 6 f69452c5b1af 6 1 7 000000000000
+
+ $ hg pull -r `getid 'desc(r4)'`
+ pulling from ssh://user@dummy/server
+ no changes found
+ OBSEXC: looking for common markers in 5 nodes
+ OBSEXC: request obsmarkers for 1 common nodes
+ 1 new obsolescence markers
+ $ hg blackbox
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obshashcache clean - new markers affect 2 changeset and cached ranges (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obshashrange in *.???? seconds (0r, 1o) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' exited 0 after *.?? seconds (glob)
+ * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull -r bebd167eb94d257ace0e814aeb98e6972ed2970d (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 1/5 mismatch - 1 obshashrange queries in *.???? seconds (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obscache in *.???? seconds (0r, 1o) (glob)
+ * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull -r bebd167eb94d257ace0e814aeb98e6972ed2970d exited 0 after *.?? seconds (glob)
+ * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> blackbox (glob)
+ $ rm .hg/blackbox.log
+ $ hg debugobshashrange --subranges --rev 'heads(all())'
+ rev node index size depth obshash
+ 7 f69452c5b1af 0 7 7 000000000000
+ 5 45f8b879de92 0 6 6 0ffa86a0054f
+ 3 2dc09a01254d 0 4 4 8932bf980bb4
+ 7 f69452c5b1af 4 3 7 000000000000
+ 3 2dc09a01254d 2 2 4 ce1937ca1278
+ 5 45f8b879de92 4 2 6 a3de812028fa
+ 1 66f7d451a68b 0 2 2 327c7dd73d29
+ 6 c8d03c1b5e94 4 2 6 e94b0f268773
+ 2 01241442b3c2 2 1 3 1ed3c61fb39a
+ 0 1ea73414a91b 0 1 1 000000000000
+ 3 2dc09a01254d 3 1 4 26f996446ecb
+ 5 45f8b879de92 5 1 6 e765ea1567b3
+ 1 66f7d451a68b 1 1 2 327c7dd73d29
+ 4 bebd167eb94d 4 1 5 8e945c34a0fd
+ 6 c8d03c1b5e94 5 1 6 446c2dc3bce5
+ 7 f69452c5b1af 6 1 7 000000000000
+
+New prune marker prefixed to another one
+
+ $ hg -R ../server debugobsolete aaaa4444444444444444aaaaaaaaaaaaaaaaaaaa
+ $ hg debugobshashrange -R ../server --subranges --rev 'heads(all())'
+ rev node index size depth obshash
+ 7 4de32a90b66c 0 8 8 87b2a11bd884
+ 8 45f8b879de92 0 6 6 fdbbaec33b20
+ 3 2dc09a01254d 0 4 4 8932bf980bb4
+ 7 4de32a90b66c 4 4 8 20745010e1d8
+ 3 2dc09a01254d 2 2 4 ce1937ca1278
+ 8 45f8b879de92 4 2 6 f45551c1cf4f
+ 7 4de32a90b66c 6 2 8 033544c939f0
+ 1 66f7d451a68b 0 2 2 327c7dd73d29
+ 5 c8d03c1b5e94 4 2 6 149be75f95c0
+ 2 01241442b3c2 2 1 3 1ed3c61fb39a
+ 0 1ea73414a91b 0 1 1 000000000000
+ 3 2dc09a01254d 3 1 4 26f996446ecb
+ 8 45f8b879de92 5 1 6 51df11ea9843
+ 7 4de32a90b66c 7 1 8 033544c939f0
+ 1 66f7d451a68b 1 1 2 327c7dd73d29
+ 4 bebd167eb94d 4 1 5 42574a82229f
+ 5 c8d03c1b5e94 5 1 6 446c2dc3bce5
+ 6 f69452c5b1af 6 1 7 000000000000
+
+ $ hg pull -r `getid 'desc(r4)'`
+ pulling from ssh://user@dummy/server
+ no changes found
+ OBSEXC: looking for common markers in 5 nodes
+ OBSEXC: request obsmarkers for 1 common nodes
+ 1 new obsolescence markers
+ $ hg blackbox
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obshashcache clean - new markers affect 2 changeset and cached ranges (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obshashrange in *.???? seconds (0r, 1o) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' exited 0 after *.?? seconds (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull -r bebd167eb94d257ace0e814aeb98e6972ed2970d (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 1/5 mismatch - 1 obshashrange queries in *.???? seconds (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obscache in *.???? seconds (0r, 1o) (glob)
+ * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull -r bebd167eb94d257ace0e814aeb98e6972ed2970d exited 0 after *.?? seconds (glob)
+ * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> blackbox (glob)
+ $ rm .hg/blackbox.log
+ $ hg debugobshashrange --subranges --rev 'heads(all())'
+ rev node index size depth obshash
+ 7 f69452c5b1af 0 7 7 000000000000
+ 5 45f8b879de92 0 6 6 fdbbaec33b20
+ 3 2dc09a01254d 0 4 4 8932bf980bb4
+ 7 f69452c5b1af 4 3 7 000000000000
+ 3 2dc09a01254d 2 2 4 ce1937ca1278
+ 5 45f8b879de92 4 2 6 f45551c1cf4f
+ 1 66f7d451a68b 0 2 2 327c7dd73d29
+ 6 c8d03c1b5e94 4 2 6 149be75f95c0
+ 2 01241442b3c2 2 1 3 1ed3c61fb39a
+ 0 1ea73414a91b 0 1 1 000000000000
+ 3 2dc09a01254d 3 1 4 26f996446ecb
+ 5 45f8b879de92 5 1 6 51df11ea9843
+ 1 66f7d451a68b 1 1 2 327c7dd73d29
+ 4 bebd167eb94d 4 1 5 42574a82229f
+ 6 c8d03c1b5e94 5 1 6 446c2dc3bce5
+ 7 f69452c5b1af 6 1 7 000000000000
+
Recover after rollback
+----------------------
$ hg pull
pulling from ssh://user@dummy/server
@@ -636,57 +892,41 @@
$ hg blackbox
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' (glob) (no-windows !)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev "heads(all())" (glob) (windows !)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-stablerange-mergepoint cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-depthcache cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (8r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (8r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obshashcache clean - new markers affect 1 changeset and cached ranges (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obshashrange in *.???? seconds (0r, 1o) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' exited 0 after *.?? seconds (glob) (no-windows !)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev "heads(all())" exited 0 after *.?? seconds (glob) (windows !)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obshashcache clean - new markers affect 2 changeset and cached ranges (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obshashrange in *.???? seconds (0r, 1o) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' exited 0 after *.?? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-stablerange-mergepoint cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-depthcache cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (8r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (8r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 0/8 mismatch - 1 obshashrange queries in *.???? seconds (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 0/8 mismatch - 1 obshashrange queries in *.???? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated served branch cache in *.???? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> wrote served branch cache with 1 labels and 2 nodes (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obscache in *.???? seconds (1r, 1o) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> 1 incoming changes - new heads: 4de32a90b66c (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obscache in *.???? seconds (1r, 1o) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> 1 incoming changes - new heads: 4de32a90b66c (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull exited 0 after *.?? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> rollback (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-stablerange-mergepoint cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-depthcache cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (8r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (8r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-firstmerge cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-firstmerge in *.???? seconds (8r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-stablesort cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablesort in *.???? seconds (8r) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated base branch cache in *.???? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> wrote base branch cache with 1 labels and 2 nodes (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> strip detected, evo-ext-obscache cache reset (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obscache in *.???? seconds (8r, 12o) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obscache in *.???? seconds (8r, 15o) (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> rollback exited 0 after *.?? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> blackbox (glob)
$ rm .hg/blackbox.log
$ hg debugobshashrange --subranges --rev 'heads(all())'
rev node index size depth obshash
7 f69452c5b1af 0 7 7 000000000000
- 5 45f8b879de92 0 6 6 7c49a958a9ac
+ 5 45f8b879de92 0 6 6 fdbbaec33b20
3 2dc09a01254d 0 4 4 8932bf980bb4
7 f69452c5b1af 4 3 7 000000000000
3 2dc09a01254d 2 2 4 ce1937ca1278
- 5 45f8b879de92 4 2 6 c6795525c540
+ 5 45f8b879de92 4 2 6 f45551c1cf4f
1 66f7d451a68b 0 2 2 327c7dd73d29
- 6 c8d03c1b5e94 4 2 6 89755fd39e6d
+ 6 c8d03c1b5e94 4 2 6 149be75f95c0
2 01241442b3c2 2 1 3 1ed3c61fb39a
0 1ea73414a91b 0 1 1 000000000000
3 2dc09a01254d 3 1 4 26f996446ecb
- 5 45f8b879de92 5 1 6 796507769034
+ 5 45f8b879de92 5 1 6 51df11ea9843
1 66f7d451a68b 1 1 2 327c7dd73d29
- 4 bebd167eb94d 4 1 5 b21465ecb790
+ 4 bebd167eb94d 4 1 5 42574a82229f
6 c8d03c1b5e94 5 1 6 446c2dc3bce5
7 f69452c5b1af 6 1 7 000000000000
$ hg pull
@@ -706,30 +946,30 @@
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' exited 0 after *.?? seconds (glob) (no-windows !)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev "heads(all())" exited 0 after *.?? seconds (glob) (windows !)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 0/8 mismatch - 1 obshashrange queries in *.???? seconds (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obscache in *.???? seconds (1r, 1o) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> 1 incoming changes - new heads: 4de32a90b66c (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> obsdiscovery, 0/8 mismatch - 1 obshashrange queries in *.???? seconds (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obscache in *.???? seconds (1r, 1o) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> 1 incoming changes - new heads: 4de32a90b66c (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> pull exited 0 after *.?? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> blackbox (glob)
$ rm .hg/blackbox.log
$ hg debugobshashrange --subranges --rev 'heads(all())'
rev node index size depth obshash
- 8 4de32a90b66c 0 8 8 c7f1f7e9925b
- 5 45f8b879de92 0 6 6 7c49a958a9ac
+ 8 4de32a90b66c 0 8 8 87b2a11bd884
+ 5 45f8b879de92 0 6 6 fdbbaec33b20
3 2dc09a01254d 0 4 4 8932bf980bb4
- 8 4de32a90b66c 4 4 8 c681c3e58c27
+ 8 4de32a90b66c 4 4 8 20745010e1d8
3 2dc09a01254d 2 2 4 ce1937ca1278
- 5 45f8b879de92 4 2 6 c6795525c540
+ 5 45f8b879de92 4 2 6 f45551c1cf4f
8 4de32a90b66c 6 2 8 033544c939f0
1 66f7d451a68b 0 2 2 327c7dd73d29
- 6 c8d03c1b5e94 4 2 6 89755fd39e6d
+ 6 c8d03c1b5e94 4 2 6 149be75f95c0
2 01241442b3c2 2 1 3 1ed3c61fb39a
0 1ea73414a91b 0 1 1 000000000000
3 2dc09a01254d 3 1 4 26f996446ecb
- 5 45f8b879de92 5 1 6 796507769034
+ 5 45f8b879de92 5 1 6 51df11ea9843
8 4de32a90b66c 7 1 8 033544c939f0
1 66f7d451a68b 1 1 2 327c7dd73d29
- 4 bebd167eb94d 4 1 5 b21465ecb790
+ 4 bebd167eb94d 4 1 5 42574a82229f
6 c8d03c1b5e94 5 1 6 446c2dc3bce5
7 f69452c5b1af 6 1 7 000000000000
@@ -759,7 +999,7 @@
$ hg --config extensions.strip= strip -r 'desc("foo")'
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
- saved backup bundle to $TESTTMP/client/.hg/strip-backup/45f8b879de92-94c82517-backup.hg (glob)
+ saved backup bundle to $TESTTMP/client/.hg/strip-backup/45f8b879de92-94c82517-backup.hg
$ hg log -G
o 7 4de32a90b66c r7 tip
|
@@ -786,7 +1026,7 @@
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files (+1 heads)
- 2 new obsolescence markers
+ 5 new obsolescence markers
new changesets 45f8b879de92
(run 'hg heads' to see heads, 'hg merge' to merge)
$ hg log -G
@@ -812,43 +1052,45 @@
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' (glob) (no-windows !)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev "heads(all())" (glob) (windows !)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> writing .hg/cache/tags2-visible with 0 tags (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (1r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (1r) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obshashrange in *.???? seconds (1r, 1o) (glob)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' exited 0 after *.?? seconds (glob) (no-windows !)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev "heads(all())" exited 0 after *.?? seconds (glob) (windows !)
+ * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> --config "extensions.strip=" strip -r "desc(\"foo\")" (glob) (windows !)
+ * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> --config "extensions.strip=" strip -r "desc(\"foo\")" exited 0 after *.?? seconds (glob) (windows !)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-depthcache in *.???? seconds (1r) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (1r) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-obshashrange in *.???? seconds (1r, 1o) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-stablesort in *.???? seconds (1r) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> updated evo-ext-firstmerge in *.???? seconds (1r) (glob)
+ 1970/01/01 00:00:00 * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' exited 0 after *.?? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> log -G (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> log -G exited 0 after *.?? seconds (glob)
* @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> --config 'extensions.strip=' strip -r 'desc("foo")' (glob) (no-windows !)
- * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> --config "extensions.strip=" strip -r "desc(\"foo\")" (glob) (windows !)
- * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> saved backup bundle to $TESTTMP/client/.hg/strip-backup/45f8b879de92-94c82517-backup.hg (glob)
+ 1970/01/01 00:00:00 * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> saved backup bundle to $TESTTMP/client/.hg/strip-backup/45f8b879de92-94c82517-backup.hg (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> strip detected, evo-ext-obscache cache reset (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated evo-ext-obscache in *.???? seconds (5r, 11o) (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated evo-ext-obscache in *.???? seconds (3r, 0o) (glob)
- * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> strip detected, evo-ext-obshashrange cache reset (glob)
+ * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> strip detected, evo-ext-firstmerge cache reset (glob)
+ * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated evo-ext-firstmerge in *.???? seconds (8r) (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> strip detected, evo-ext-depthcache cache reset (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated evo-ext-depthcache in *.???? seconds (8r) (glob)
+ * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> strip detected, evo-ext-stablesort cache reset (glob)
+ * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated evo-ext-stablesort in *.???? seconds (8r) (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> strip detected, evo-ext-stablerange-mergepoint cache reset (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated evo-ext-stablerange-mergepoint in *.???? seconds (8r) (glob)
- * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated evo-ext-obshashrange in *.???? seconds (8r, 11o) (glob)
- * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> strip detected, evo-ext-firstmerge cache reset (glob)
- * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated evo-ext-firstmerge in *.???? seconds (8r) (glob)
- * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> strip detected, evo-ext-stablesort cache reset (glob)
- * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated evo-ext-stablesort in *.???? seconds (8r) (glob)
+ * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> strip detected, evo-ext-obshashrange cache reset (glob)
+ 1970/01/01 00:00:00 * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated evo-ext-obshashrange in *.???? seconds (8r, 11o) (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated base branch cache in *.???? seconds (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> wrote base branch cache with 1 labels and 1 nodes (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> 3 incoming changes - new heads: 4de32a90b66c (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> --config 'extensions.strip=' strip -r 'desc("foo")' exited 0 after *.?? seconds (glob) (no-windows !)
- * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> --config "extensions.strip=" strip -r "desc(\"foo\")" exited 0 after *.?? seconds (glob) (windows !)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> log -G (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> writing .hg/cache/tags2-visible with 0 tags (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> log -G exited 0 after *.?? seconds (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> pull (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> obsdiscovery, 1/8 mismatch - 1 obshashrange queries in *.???? seconds (glob)
- * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated base branch cache in *.???? seconds (glob)
- * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> wrote base branch cache with 1 labels and 2 nodes (glob)
- * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated evo-ext-obscache in *.???? seconds (1r, 2o) (glob)
- * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> 1 incoming changes - new heads: 45f8b879de92 (glob)
+ 1970/01/01 00:00:00 * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated base branch cache in *.???? seconds (glob)
+ 1970/01/01 00:00:00 * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> wrote base branch cache with 1 labels and 2 nodes (glob)
+ 1970/01/01 00:00:00 * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> updated evo-ext-obscache in *.???? seconds (1r, 5o) (glob)
+ 1970/01/01 00:00:00 * @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> 1 incoming changes - new heads: 45f8b879de92 (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> pull exited 0 after *.?? seconds (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> log -G (glob)
* @bebd167eb94d257ace0e814aeb98e6972ed2970d (*)> writing .hg/cache/tags2-visible with 0 tags (glob)
@@ -857,22 +1099,22 @@
$ rm .hg/blackbox.log
$ hg debugobshashrange --subranges --rev 'heads(all())'
rev node index size depth obshash
- 7 4de32a90b66c 0 8 8 c7f1f7e9925b
- 8 45f8b879de92 0 6 6 7c49a958a9ac
+ 7 4de32a90b66c 0 8 8 87b2a11bd884
+ 8 45f8b879de92 0 6 6 fdbbaec33b20
3 2dc09a01254d 0 4 4 8932bf980bb4
- 7 4de32a90b66c 4 4 8 c681c3e58c27
+ 7 4de32a90b66c 4 4 8 20745010e1d8
3 2dc09a01254d 2 2 4 ce1937ca1278
- 8 45f8b879de92 4 2 6 c6795525c540
+ 8 45f8b879de92 4 2 6 f45551c1cf4f
7 4de32a90b66c 6 2 8 033544c939f0
1 66f7d451a68b 0 2 2 327c7dd73d29
- 5 c8d03c1b5e94 4 2 6 89755fd39e6d
+ 5 c8d03c1b5e94 4 2 6 149be75f95c0
2 01241442b3c2 2 1 3 1ed3c61fb39a
0 1ea73414a91b 0 1 1 000000000000
3 2dc09a01254d 3 1 4 26f996446ecb
- 8 45f8b879de92 5 1 6 796507769034
+ 8 45f8b879de92 5 1 6 51df11ea9843
7 4de32a90b66c 7 1 8 033544c939f0
1 66f7d451a68b 1 1 2 327c7dd73d29
- 4 bebd167eb94d 4 1 5 b21465ecb790
+ 4 bebd167eb94d 4 1 5 42574a82229f
5 c8d03c1b5e94 5 1 6 446c2dc3bce5
6 f69452c5b1af 6 1 7 000000000000
--- a/tests/test-evolve-abort-contentdiv.t Fri Aug 03 00:19:45 2018 +0200
+++ b/tests/test-evolve-abort-contentdiv.t Tue Aug 21 13:25:28 2018 +0200
@@ -96,6 +96,22 @@
# To stop: hg evolve --stop
# (also see `hg help evolve.interrupted`)
+ $ hg parents
+ changeset: 6:9c1631e352d9
+ tag: tip
+ parent: 3:ca1b80f7960a
+ user: test
+ date: Thu Jan 01 00:00:00 1970 +0000
+ instability: content-divergent
+ summary: added d
+
+ changeset: 5:e49523854bc8
+ parent: 3:ca1b80f7960a
+ user: test
+ date: Thu Jan 01 00:00:00 1970 +0000
+ instability: content-divergent
+ summary: added d
+
$ hg evolve --abort
evolve aborted
--- a/tests/test-evolve-abort-orphan.t Fri Aug 03 00:19:45 2018 +0200
+++ b/tests/test-evolve-abort-orphan.t Tue Aug 21 13:25:28 2018 +0200
@@ -88,6 +88,21 @@
fix conflicts and see `hg help evolve.interrupted`
[1]
+ $ hg parents
+ changeset: 5:e93a9161a274
+ tag: tip
+ parent: 2:b1661037fa25
+ user: test
+ date: Thu Jan 01 00:00:00 1970 +0000
+ summary: added c
+
+ changeset: 4:c41c793e0ef1
+ user: test
+ date: Thu Jan 01 00:00:00 1970 +0000
+ instability: orphan
+ summary: added d
+
+
$ hg evolve --abort
evolve aborted
working directory is now at e93a9161a274
@@ -173,7 +188,7 @@
| () draft
| * 6:e83de241f751 added d
| | () draft
- | * 5:e93a9161a274 added c
+ | @ 5:e93a9161a274 added c
| | () draft
| x 2:b1661037fa25 added b
| | () draft
@@ -266,7 +281,7 @@
|/ () draft
@ 7:807e8e2ca559 added a
| () draft
- | * 6:8f20d4390c21 foo to a
+ | @ 6:8f20d4390c21 foo to a
| | () draft
| | * 5:bcb1c47f8520 added d
| | | () draft
@@ -329,7 +344,7 @@
|/ () draft
@ 7:807e8e2ca559 added a
| () draft
- | * 6:8f20d4390c21 foo to a
+ | @ 6:8f20d4390c21 foo to a
| | () draft
| | * 5:bcb1c47f8520 added d
| | | () draft
@@ -413,7 +428,7 @@
|/ () draft
@ 7:807e8e2ca559 added a
| () draft
- | * 6:8f20d4390c21 foo to a
+ | @ 6:8f20d4390c21 foo to a
| | () draft
| x 1:2f913b0c9220 added a
|/ () draft
@@ -481,7 +496,7 @@
| (bm1) draft
o 4:a0086c17bfc7 added a
| () draft
- | * 3:17509928e5bf added c
+ | @ 3:17509928e5bf added c
| | () draft
| x 2:9f0c80a55ddc added b
| | () draft
@@ -525,3 +540,19 @@
$ hg evolve --abort
evolve aborted
working directory is now at c1f4718020e3
+
+ $ ls .hg/
+ 00changelog.i
+ bookmarks
+ branch
+ cache
+ dirstate
+ last-message.txt
+ requires
+ store
+ undo.backup.bookmarks
+ undo.backup.dirstate
+ undo.bookmarks
+ undo.branch
+ undo.desc
+ undo.dirstate
--- a/tests/test-evolve-abort-phasediv.t Fri Aug 03 00:19:45 2018 +0200
+++ b/tests/test-evolve-abort-phasediv.t Tue Aug 21 13:25:28 2018 +0200
@@ -108,6 +108,21 @@
# (also see `hg help evolve.interrupted`)
+ $ hg parents
+ changeset: 3:ca1b80f7960a
+ user: test
+ date: Thu Jan 01 00:00:00 1970 +0000
+ summary: added c
+
+ changeset: 6:ddba58020bc0
+ tag: tip
+ parent: 1:c7586e2a9264
+ user: test
+ date: Thu Jan 01 00:00:00 1970 +0000
+ instability: phase-divergent
+ summary: added d
+
+
$ hg evolve --abort
evolve aborted
working directory is now at ddba58020bc0
--- a/tests/test-evolve-phase.t Fri Aug 03 00:19:45 2018 +0200
+++ b/tests/test-evolve-phase.t Tue Aug 21 13:25:28 2018 +0200
@@ -103,7 +103,7 @@
$ hg glog
@ 3 - 87495ea7c9ec b (draft)
|
- | * 2 - 13833940840c c (secret)
+ | @ 2 - 13833940840c c (secret)
| |
| x 1 - 1e6c11564562 b (draft)
|/
--- a/tests/test-evolve-stop-orphan.t Fri Aug 03 00:19:45 2018 +0200
+++ b/tests/test-evolve-stop-orphan.t Tue Aug 21 13:25:28 2018 +0200
@@ -169,6 +169,19 @@
() draft
$ hg status
+ $ ls .hg/
+ 00changelog.i
+ branch
+ cache
+ dirstate
+ last-message.txt
+ requires
+ store
+ undo.backup.dirstate
+ undo.bookmarks
+ undo.branch
+ undo.desc
+ undo.dirstate
Checking when multiple revs need to be evolved, some revs evolve without
conflicts
--- a/tests/test-evolve.t Fri Aug 03 00:19:45 2018 +0200
+++ b/tests/test-evolve.t Tue Aug 21 13:25:28 2018 +0200
@@ -1543,7 +1543,7 @@
|
o 37:df89d30f23e2@default(draft) amended
|
- | * 36:59c37c5bebd1@default(draft) will cause conflict at evolve
+ | @ 36:59c37c5bebd1@default(draft) will cause conflict at evolve
| |
| x 35:7cc12c6c7862@default(draft) will be evolved safely
| |
--- a/tests/test-stabilize-conflict.t Fri Aug 03 00:19:45 2018 +0200
+++ b/tests/test-stabilize-conflict.t Tue Aug 21 13:25:28 2018 +0200
@@ -140,7 +140,7 @@
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: babar count up to ten
|
- | * changeset: 4:71c18f70c34f
+ | @ changeset: 4:71c18f70c34f
| | user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
| | instability: orphan
@@ -232,7 +232,7 @@
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: babar count up to ten
|
- | * changeset: 6:1836b91c6c1d
+ | @ changeset: 6:1836b91c6c1d
| | user: test
| | date: Thu Jan 01 00:00:00 1970 +0000
| | instability: orphan