--- a/tests/test-rebase-parameters.t +++ b/tests/test-rebase-parameters.t @@ -412,6 +412,47 @@ Specify only revs (from 2 onto 8) $ cd .. +Assertion error + + $ hg clone -q -u . a aX + $ cd aX + $ hg rebase -r 3 -r 6 + rebasing 3:32af7686d403 "D" + rebasing 6:eea13746799a "G" + ** unknown exception encountered, please report by visiting + ** https://mercurial-scm.org/wiki/BugTracker + ** Python 2.7.10 (default, Sep 8 2015, 17:20:17) [GCC 5.1.1 20150618 (Red Hat 5.1.1-4)] + ** Mercurial Distributed SCM (version +0-) + ** Extensions loaded: rebase + Traceback (most recent call last): + File "/home/madski/hg/hg", line 43, in <module> + mercurial.dispatch.run() + File "/home/madski/hg/mercurial/dispatch.py", line 54, in run + sys.exit((dispatch(request(sys.argv[1:])) or 0) & 255) + File "/home/madski/hg/mercurial/dispatch.py", line 116, in dispatch + ret = _runcatch(req) + File "/home/madski/hg/mercurial/dispatch.py", line 187, in _runcatch + return _dispatch(req) + File "/home/madski/hg/mercurial/dispatch.py", line 920, in _dispatch + cmdpats, cmdoptions) + File "/home/madski/hg/mercurial/dispatch.py", line 679, in runcommand + ret = _runcommand(ui, options, cmd, d) + File "/home/madski/hg/mercurial/dispatch.py", line 1051, in _runcommand + return checkargs() + File "/home/madski/hg/mercurial/dispatch.py", line 1011, in checkargs + return cmdfunc() + File "/home/madski/hg/mercurial/dispatch.py", line 917, in <lambda> + d = lambda: util.checksignature(func)(ui, *args, **cmdoptions) + File "/home/madski/hg/mercurial/util.py", line 801, in check + return func(*args, **kwargs) + File "/home/madski/hg/hgext/rebase.py", line 434, in rebase + targetancestors) + File "/home/madski/hg/hgext/rebase.py", line 752, in defineparents + raise AssertionError('no base found to rebase on ' + AssertionError: no base found to rebase on (defineparents called wrong) + [1] + $ cd .. + Test --tool parameter: This case passed before ad9db007656f 2013-10-30 stable pierre-yves.david "rebase: fix selection of base used when rebasing merge (issue4041)" introduced UnboundLocalError which was fixed in 9155257e6330 2014-02-14 default simohe "rebase: do not raise an UnboundLocalError when called wrong (issue4106)" (without test coverage) - and then this case failed.
Looks like a (2 years old) regression.
Bug marked urgent for 10 days, bumping
Fixed by https://selenic.com/repo/hg/rev/07a5de79ec30 Martijn Pieters <mj@zopatista.com> rebase: better way to detect non-detaching revisions (issue5044) Rather than look for the lowest revision, see if the rebase state is tracking the parents of this revision. Otherwise we can't handle multiple revisions in one rebase that includes a merge revision. Fixes issue5044. (please test the fix)
Bug was set to TESTING for 7 days, resolving