comparison tests/test-evolve-continue.t @ 3503:edabac9e9dc5

evolvecmd: fix broken `evolve --continue` ran after `next --evolve` Recent series broke `evolve --continue`in cases when run after `hg next --evolve`. The previous patch adds test demonstarting the broken behaviour, this patch fixes that by storing the command which leads us to evolve --continue in the evolvestate.
author Pulkit Goyal <7895pulkit@gmail.com>
date Wed, 07 Feb 2018 13:42:30 +0530
parents 8cf1020bd4f9
children d5adce52cef4 92a2d3217de9
comparison
equal deleted inserted replaced
3502:8cf1020bd4f9 3503:edabac9e9dc5
371 $ hg resolve -m 371 $ hg resolve -m
372 (no more unresolved files) 372 (no more unresolved files)
373 continue: hg evolve --continue 373 continue: hg evolve --continue
374 $ hg evolve --continue 374 $ hg evolve --continue
375 evolving 22:d2c94a8f44bd "added g" 375 evolving 22:d2c94a8f44bd "added g"
376 ** Unknown exception encountered with possibly-broken third-party extension evolve
377 ** which supports versions 4.4 of Mercurial.
378 ** Please disable evolve and try your action again.
379 ** If that fixes the bug please report it to https://bz.mercurial-scm.org/
380 ** Python 2.7.12 (default, Dec 4 2017, 14:50:18) [GCC 5.4.0 20160609]
381 ** Mercurial Distributed SCM (version 4.5+71-2e11b6cd6953)
382 ** Extensions loaded: rebase, evolve
383 Traceback (most recent call last):
384 File "/tmp/hgtests.NSvQmE/install/bin/hg", line 41, in <module>
385 dispatch.run()
386 File "/tmp/hgtests.NSvQmE/install/lib/python/mercurial/dispatch.py", line 88, in run
387 status = (dispatch(req) or 0) & 255
388 File "/tmp/hgtests.NSvQmE/install/lib/python/mercurial/dispatch.py", line 183, in dispatch
389 ret = _runcatch(req)
390 File "/tmp/hgtests.NSvQmE/install/lib/python/mercurial/dispatch.py", line 324, in _runcatch
391 return _callcatch(ui, _runcatchfunc)
392 File "/tmp/hgtests.NSvQmE/install/lib/python/mercurial/dispatch.py", line 332, in _callcatch
393 return scmutil.callcatch(ui, func)
394 File "/tmp/hgtests.NSvQmE/install/lib/python/mercurial/scmutil.py", line 154, in callcatch
395 return func()
396 File "/tmp/hgtests.NSvQmE/install/lib/python/mercurial/dispatch.py", line 314, in _runcatchfunc
397 return _dispatch(req)
398 File "/tmp/hgtests.NSvQmE/install/lib/python/mercurial/dispatch.py", line 918, in _dispatch
399 cmdpats, cmdoptions)
400 File "/tmp/hgtests.NSvQmE/install/lib/python/mercurial/dispatch.py", line 673, in runcommand
401 ret = _runcommand(ui, options, cmd, d)
402 File "/tmp/hgtests.NSvQmE/install/lib/python/mercurial/dispatch.py", line 926, in _runcommand
403 return cmdfunc()
404 File "/tmp/hgtests.NSvQmE/install/lib/python/mercurial/dispatch.py", line 915, in <lambda>
405 d = lambda: util.checksignature(func)(ui, *args, **strcmdopt)
406 File "/tmp/hgtests.NSvQmE/install/lib/python/mercurial/util.py", line 1195, in check
407 return func(*args, **kwargs)
408 File "/home/foobar/repo/mutable-history/hgext3rd/evolve/evolvecmd.py", line 1147, in evolve
409 evolvestate['replacements'][ctx.node()] = node
410 File "/home/foobar/repo/mutable-history/hgext3rd/evolve/state.py", line 49, in __getitem__
411 return self.opts[key]
412 KeyError: 'replacements'
413 [1]