# HG changeset patch # User Boris Feld # Date 1502379451 -7200 # Node ID 38db1466c6fbf3c7ce212bbfb601358ad435dbf3 # Parent 08a64770ed24206b1e41fac6c99a6e2c2f5ff7f1 log: unstable was renamed into orphan Unstable was renamed into orphan, update tests. Match 03039ff3082b mercurial changeset. diff --git a/hgext3rd/evolve/__init__.py b/hgext3rd/evolve/__init__.py --- a/hgext3rd/evolve/__init__.py +++ b/hgext3rd/evolve/__init__.py @@ -993,7 +993,7 @@ wlock = repo.wlock() lock = repo.lock() tr = repo.transaction("evolve") - if 'unstable' == category: + if 'orphan' == category: result = _solveunstable(ui, repo, ctx, dryrun, confirm, progresscb) elif 'bumped' == category: result = _solvebumped(ui, repo, ctx, dryrun, confirm, progresscb) @@ -1010,13 +1010,13 @@ def _handlenotrouble(ui, repo, allopt, revopt, anyopt, targetcat): """Used by the evolve function to display an error message when no troubles can be resolved""" - troublecategories = ['bumped', 'divergent', 'unstable'] + troublecategories = ['bumped', 'divergent', 'orphan'] unselectedcategories = [c for c in troublecategories if c != targetcat] msg = None hint = None troubled = { - "unstable": repo.revs("unstable()"), + "orphan": repo.revs("unstable()"), "divergent": repo.revs("divergent()"), "bumped": repo.revs("bumped()"), "all": repo.revs("troubled()"), @@ -1025,22 +1025,22 @@ hintmap = { 'bumped': _("do you want to use --bumped"), 'bumped+divergent': _("do you want to use --bumped or --divergent"), - 'bumped+unstable': _("do you want to use --bumped or --unstable"), + 'bumped+orphan': _("do you want to use --bumped or --orphan"), 'divergent': _("do you want to use --divergent"), - 'divergent+unstable': _("do you want to use --divergent" - " or --unstable"), - 'unstable': _("do you want to use --unstable"), + 'divergent+orphan': _("do you want to use --divergent" + " or --orphan"), + 'orphan': _("do you want to use --orphan"), 'any+bumped': _("do you want to use --any (or --rev) and --bumped"), 'any+bumped+divergent': _("do you want to use --any (or --rev) and" " --bumped or --divergent"), - 'any+bumped+unstable': _("do you want to use --any (or --rev) and" - "--bumped or --unstable"), + 'any+bumped+orphan': _("do you want to use --any (or --rev) and" + "--bumped or --orphan"), 'any+divergent': _("do you want to use --any (or --rev) and" " --divergent"), - 'any+divergent+unstable': _("do you want to use --any (or --rev)" - " and --divergent or --unstable"), - 'any+unstable': _("do you want to use --any (or --rev)" - "and --unstable"), + 'any+divergent+orphan': _("do you want to use --any (or --rev)" + " and --divergent or --orphan"), + 'any+orphan': _("do you want to use --any (or --rev)" + "and --orphan"), } if revopt: @@ -1067,7 +1067,7 @@ else: # evolve without any option = relative to the current wdir - if targetcat == 'unstable': + if targetcat == 'orphan': msg = _("nothing to evolve on current working copy parent") else: msg = _("current working copy parent is not %s") % targetcat @@ -1194,7 +1194,7 @@ topic = getattr(repo, 'currenttopic', '') if topic: revs = repo.revs('topic(%s)', topic) & revs - elif targetcat == 'unstable': + elif targetcat == 'orphan': revs = _aspiringdescendant(repo, repo.revs('(.::) - obsolete()::')) revs = set(revs) @@ -1203,14 +1203,14 @@ revs = _dedupedivergents(repo, revs) elif anyopt: revs = repo.revs('first(%s())' % (targetcat)) - elif targetcat == 'unstable': + elif targetcat == 'orphan': revs = set(_aspiringchildren(repo, repo.revs('(.::) - obsolete()::'))) if 1 < len(revs): msg = "multiple evolve candidates" hint = (_("select one of %s with --rev") % ', '.join([str(repo[r]) for r in sorted(revs)])) raise error.Abort(msg, hint=hint) - elif targetcat in repo['.'].troubles(): + elif targetcat in repo['.'].instabilities(): revs = set([repo['.'].rev()]) return revs @@ -1287,8 +1287,8 @@ def listtroubles(ui, repo, troublecategories, **opts): """Print all the troubles for the repo (or given revset)""" - troublecategories = troublecategories or ['divergent', 'unstable', 'bumped'] - showunstable = 'unstable' in troublecategories + troublecategories = troublecategories or ['divergent', 'orphan', 'bumped'] + showunstable = 'orphan' in troublecategories showbumped = 'bumped' in troublecategories showdivergent = 'divergent' in troublecategories @@ -1317,7 +1317,7 @@ fm.data(node=ctx.hex(), rev=ctx.rev(), desc=desc, phase=ctx.phasestr()) for unpar in unpars if showunstable else []: - fm.plain(' unstable: %s (unstable parent)\n' % unpar[:hashlen]) + fm.plain(' orphan: %s (orphan parent)\n' % unpar[:hashlen]) for obspar in obspars if showunstable else []: fm.plain(' unstable: %s (obsolete parent)\n' % obspar[:hashlen]) for imprec in imprecs if showbumped else []: @@ -1370,7 +1370,8 @@ ('r', 'rev', [], _('solves troubles of these revisions')), ('', 'bumped', False, _('solves only bumped changesets')), ('', 'divergent', False, _('solves only divergent changesets')), - ('', 'unstable', False, _('solves only unstable changesets (default)')), + ('', 'unstable', False, _('solves only unstable changesets')), + ('', 'orphan', False, _('solves only orphan changesets (default)')), ('a', 'all', False, _('evolve all troubled changesets related to the ' 'current working directory and its descendants')), ('c', 'continue', False, _('continue an interrupted evolution')), @@ -1457,13 +1458,22 @@ dryrunopt = opts['dry_run'] confirmopt = opts['confirm'] revopt = opts['rev'] - troublecategories = ['bumped', 'divergent', 'unstable'] + + # Backward compatibility + if opts['unstable']: + msg = ("'evolve --unstable' is deprecated, " + "use 'evolve --orphan'") + repo.ui.deprecwarn(msg, '4.4') + + opts['orphan'] = opts['divergent'] + + troublecategories = ['bumped', 'divergent', 'orphan'] specifiedcategories = [t for t in troublecategories if opts[t]] if listopt: listtroubles(ui, repo, specifiedcategories, **opts) return - targetcat = 'unstable' + targetcat = 'orphan' if 1 < len(specifiedcategories): msg = _('cannot specify more than one trouble category to solve (yet)') raise error.Abort(msg) @@ -1543,7 +1553,7 @@ # For the progress bar to show count = len(revs) # Order the revisions - if targetcat == 'unstable': + if targetcat == 'orphan': revs = _orderrevs(repo, revs) for rev in revs: progresscb() @@ -2131,7 +2141,7 @@ else: cmdutil.bailifchanged(repo) result = _solveone(ui, repo, repo[aspchildren[0]], dryrunopt, - False, lambda: None, category='unstable') + False, lambda: None, category='orphan') if not result: ui.status(_('working directory now at %s\n') % ui.label(str(repo['.']), 'evolve.node')) diff --git a/hgext3rd/evolve/compat.py b/hgext3rd/evolve/compat.py --- a/hgext3rd/evolve/compat.py +++ b/hgext3rd/evolve/compat.py @@ -7,8 +7,10 @@ """ from mercurial import ( + context, hg, obsolete, + revset, util, ) @@ -90,3 +92,33 @@ else: bookmarks[name] = node bookmarks.recordchange(tr) + +# Evolution renaming compat + +if not util.safehasattr(context.basectx, 'orphan'): + context.basectx.orphan = context.basectx.unstable + +if not util.safehasattr(revset, 'orphan'): + @eh.revset('orphan') + def oprhanrevset(*args, **kwargs): + return revset.unstable(*args, **kwargs) + +if not util.safehasattr(context.basectx, 'instabilities'): + def instabilities(self): + """return the list of instabilities affecting this changeset. + + Instabilities are returned as strings. possible values are: + - orphan, + - phase-divergent, + - content-divergent. + """ + instabilities = [] + if self.orphan(): + instabilities.append('unstable') + if self.bumped(): + instabilities.append('bumped') + if self.divergent(): + instabilities.append('divergent') + return instabilities + + context.basectx.instabilities = instabilities diff --git a/tests/test-evolve-list.t b/tests/test-evolve-list.t --- a/tests/test-evolve-list.t +++ b/tests/test-evolve-list.t @@ -23,7 +23,7 @@ unstable: cb9a9f314b8b (obsolete parent) 177f92b77385: c - unstable: d2ae7f538514 (unstable parent) + orphan: d2ae7f538514 (orphan parent) $ cd .. diff --git a/tests/test-evolve-obshistory-complex.t b/tests/test-evolve-obshistory-complex.t --- a/tests/test-evolve-obshistory-complex.t +++ b/tests/test-evolve-obshistory-complex.t @@ -80,14 +80,14 @@ | parent: 4:868d2e0eb19c | user: test | date: Thu Jan 01 00:00:00 1970 +0000 - | instability: unstable + | instability: orphan | summary: fold2 | | o changeset: 8:d15d0ffc75f6 | | parent: 2:c473644ee0e9 | | user: test | | date: Thu Jan 01 00:00:00 1970 +0000 - | | instability: unstable + | | instability: orphan | | summary: fold1 | | | | o changeset: 7:b868bc49b0a4 @@ -236,27 +236,27 @@ | tag: tip | user: test | date: Thu Jan 01 00:00:00 1970 +0000 - | instability: unstable + | instability: orphan | summary: fold2 | o changeset: 14:ec31316faa9d | parent: 4:868d2e0eb19c | user: test | date: Thu Jan 01 00:00:00 1970 +0000 - | instability: unstable + | instability: orphan | summary: fold2 | | o changeset: 13:d0f33db50670 | | user: test | | date: Thu Jan 01 00:00:00 1970 +0000 - | | instability: unstable + | | instability: orphan | | summary: fold1 | | | o changeset: 12:7b3290f6e0a0 | | parent: 2:c473644ee0e9 | | user: test | | date: Thu Jan 01 00:00:00 1970 +0000 - | | instability: unstable + | | instability: orphan | | summary: fold1 | | | | o changeset: 11:e036916b63ea @@ -312,21 +312,21 @@ | tag: tip | user: test | date: Thu Jan 01 00:00:00 1970 +0000 - | instability: unstable + | instability: orphan | summary: fold2 | o changeset: 14:ec31316faa9d | parent: 4:868d2e0eb19c | user: test | date: Thu Jan 01 00:00:00 1970 +0000 - | instability: unstable + | instability: orphan | summary: fold2 | | o changeset: 12:7b3290f6e0a0 | | parent: 2:c473644ee0e9 | | user: test | | date: Thu Jan 01 00:00:00 1970 +0000 - | | instability: unstable + | | instability: orphan | | summary: fold1 | | | | o changeset: 10:19e14c8397fc diff --git a/tests/test-evolve.t b/tests/test-evolve.t --- a/tests/test-evolve.t +++ b/tests/test-evolve.t @@ -453,9 +453,9 @@ $ hg log -G --template '{rev} {troubles}\n' @ 13 | - | o 11 unstable + | o 11 orphan | | - | o 10 unstable + | o 10 orphan | | | x 9 |/ @@ -971,7 +971,7 @@ $ hg evolve nothing to evolve on current working copy parent - (2 other unstable in the repository, do you want --any or --rev) + (2 other orphan in the repository, do you want --any or --rev) [2] @@ -1112,9 +1112,9 @@ $ hg evolve --rev "14::" --bumped no bumped changesets in specified revisions - (do you want to use --unstable) + (do you want to use --orphan) [2] - $ hg evolve --rev "14::" --unstable + $ hg evolve --rev "14::" --orphan move:[15] add gg atop:[18] a3 move:[16] add gh @@ -1312,7 +1312,7 @@ 1 files updated, 0 files merged, 1 files removed, 0 files unresolved $ hg evolve --all nothing to evolve on current working copy parent - (2 other unstable in the repository, do you want --any or --rev) + (2 other orphan in the repository, do you want --any or --rev) [2] $ hg evolve --all --any move:[22] add j2 diff --git a/tests/test-obsolete.t b/tests/test-obsolete.t --- a/tests/test-obsolete.t +++ b/tests/test-obsolete.t @@ -175,7 +175,7 @@ $ hg push ../other-new pushing to ../other-new searching for changes - abort: push includes unstable changeset: a7a6f2b5d8a5! + abort: push includes orphan changeset: a7a6f2b5d8a5! (use 'hg evolve' to get a stable history or --force to ignore warnings) [255] $ hg push -f ../other-new @@ -230,7 +230,7 @@ $ hg push ../other-new pushing to ../other-new searching for changes - abort: push includes unstable changeset: 95de7fc6918d! + abort: push includes orphan changeset: 95de7fc6918d! (use 'hg evolve' to get a stable history or --force to ignore warnings) [255] $ hg push ../other-new -f # use f because there is unstability @@ -397,7 +397,7 @@ commit: 1 deleted, 2 unknown (clean) update: 2 new changesets, 2 branch heads (merge) phases: 4 draft - unstable: 1 changesets + orphan: 1 changesets $ qlog 6 - 909a0fb57e5d @@ -734,7 +734,7 @@ | parent: 2:4538525df7e2 | user: test | date: Thu Jan 01 00:00:00 1970 +0000 - | instability: unstable + | instability: orphan | summary: add obsol_d'' | | o changeset: 16:50f11e5e3a63 diff --git a/tests/test-stabilize-conflict.t b/tests/test-stabilize-conflict.t --- a/tests/test-stabilize-conflict.t +++ b/tests/test-stabilize-conflict.t @@ -65,7 +65,7 @@ $ safesed 's/huit/eight/' babar $ hg diff diff -r 9d5daf8bd956 babar - --- a/babar Thu Jan 01 00:00:00 1970 +0000 + --- a/babar * (glob) +++ b/babar * (glob) @@ -5,6 +5,6 @@ cinq @@ -114,7 +114,7 @@ $ hg diff diff -r 5977072d13c5 babar --- a/babar Thu Jan 01 00:00:00 1970 +0000 - +++ b/babar * (glob) + +++ b/babar Thu Jan 01 00:00:00 1970 +0000 @@ -7,4 +7,4 @@ sept eight @@ -145,7 +145,7 @@ | o changeset: 5:71c18f70c34f | | user: test | | date: Thu Jan 01 00:00:00 1970 +0000 - | | instability: unstable + | | instability: orphan | | summary: babar count up to fifteen | | | x changeset: 4:5977072d13c5 @@ -237,7 +237,7 @@ | o changeset: 8:1836b91c6c1d | | user: test | | date: Thu Jan 01 00:00:00 1970 +0000 - | | instability: unstable + | | instability: orphan | | summary: babar count up to fifteen | | | x changeset: 7:e04690b09bc6 diff --git a/tests/test-stabilize-order.t b/tests/test-stabilize-order.t --- a/tests/test-stabilize-order.t +++ b/tests/test-stabilize-order.t @@ -110,10 +110,10 @@ --- successors.old* (glob) +++ successors.new* (glob) @@ -3,3 +3,4 @@ - 93418d2c0979643ad446f621195e78720edb05b4 005fe5914f78e8bc64c7eba28117b0b1fa210d0d 0 (*) {'ef1': '*', 'user': 'test'} (glob) - 7a7d76dc97c57751de9e80f61ed2a639bd03cd24 0 {93418d2c0979643ad446f621195e78720edb05b4} (*) {'ef1': '*', 'user': 'test'} (glob) - 22619daeed78036f80fbd326b6852519c4f0c25e 81b8bbcd5892841efed41433d7a5e9df922396cb 0 (*) {'ef1': '*', 'user': 'test'} (glob) - +7a7552255fb5f8bd745e46fba6f0ca633a4dd716 0f691739f91762462bf8ba21f35fdf71fe64310e 0 (*) {'ef1': '*', 'user': 'test'} (glob) + 93418d2c0979643ad446f621195e78720edb05b4 005fe5914f78e8bc64c7eba28117b0b1fa210d0d 0 (*) {'ef1': '8', 'user': 'test'} (glob) + 7a7d76dc97c57751de9e80f61ed2a639bd03cd24 0 {93418d2c0979643ad446f621195e78720edb05b4} (*) {'ef1': '0', 'user': 'test'} (glob) + 22619daeed78036f80fbd326b6852519c4f0c25e 81b8bbcd5892841efed41433d7a5e9df922396cb 0 (*) {'ef1': '4', 'user': 'test'} (glob) + +7a7552255fb5f8bd745e46fba6f0ca633a4dd716 0f691739f91762462bf8ba21f35fdf71fe64310e 0 (*) {'ef1': '4', 'user': 'test'} (glob) [1] @@ -153,7 +153,7 @@ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved $ hg evolve -v nothing to evolve on current working copy parent - (1 other unstable in the repository, do you want --any or --rev) + (1 other orphan in the repository, do you want --any or --rev) [2] $ hg evolve --any -v move:[9] addc @@ -179,7 +179,7 @@ o 0:c471ef929e6a@default(draft) addroot $ hg evolve --any -v - no unstable changesets to evolve + no orphan changesets to evolve [1] Ambiguous evolution @@ -208,13 +208,13 @@ | | parent: 12:2256dae6521f | | user: test | | date: Thu Jan 01 00:00:00 1970 +0000 - | | instability: unstable + | | instability: orphan | | summary: secondambiguous | | | | o changeset: 13:bdc003b6eec2 | |/ user: test | | date: Thu Jan 01 00:00:00 1970 +0000 - | | instability: unstable + | | instability: orphan | | summary: firstambiguous | | | x changeset: 12:2256dae6521f diff --git a/tests/test-stabilize-result.t b/tests/test-stabilize-result.t --- a/tests/test-stabilize-result.t +++ b/tests/test-stabilize-result.t @@ -207,7 +207,7 @@ $ glog @ 15:3932c176bbaa@default(draft) bk:[] More addition | - | o 14:(a7cabd7bd9c2|671b9d7eeaec)@default\(draft\) bk:\[\] bumped update to 1cf0aacfd363: (re) + | o 14:c2c1151aa854@default(draft) bk:[] bumped update to 1cf0aacfd363: | | o | 9:7bc2f5967f5e@default(draft) bk:[] add c | | @@ -234,7 +234,7 @@ | | o 17:d2f173e25686@default(draft) bk:[] More addition |/ - | o 14:(a7cabd7bd9c2|671b9d7eeaec)@default\(draft\) bk:\[\] bumped update to 1cf0aacfd363: (re) + | o 14:c2c1151aa854@default(draft) bk:[] bumped update to 1cf0aacfd363: | | o | 9:7bc2f5967f5e@default(draft) bk:[] add c | | @@ -289,7 +289,7 @@ $ glog @ 21:f344982e63c4@default(draft) bk:[] More addition | - | o 14:(a7cabd7bd9c2|671b9d7eeaec)@default\(draft\) bk:\[\] bumped update to 1cf0aacfd363: (re) + | o 14:c2c1151aa854@default(draft) bk:[] bumped update to 1cf0aacfd363: | | o | 9:7bc2f5967f5e@default(draft) bk:[] add c | | diff --git a/tests/test-topic-stack-data.t b/tests/test-topic-stack-data.t --- a/tests/test-topic-stack-data.t +++ b/tests/test-topic-stack-data.t @@ -103,7 +103,7 @@ commit: (clean) update: 2 new changesets (update) phases: 22 draft - unstable: 3 changesets + orphan: 3 changesets topic: foo $ hg log --graph -T '{desc} ({branch}) [{topic}]' @ add foo_b (lake) [] diff --git a/tests/test-topic-tutorial.t b/tests/test-topic-tutorial.t --- a/tests/test-topic-tutorial.t +++ b/tests/test-topic-tutorial.t @@ -687,14 +687,14 @@ | | topic: tools | | user: test | | date: Thu Jan 01 00:00:00 1970 +0000 - | | instability: unstable + | | instability: orphan | | summary: Adding drill | | | o changeset: 14:d4f97f32f8a1 | | topic: tools | | user: test | | date: Thu Jan 01 00:00:00 1970 +0000 - | | instability: unstable + | | instability: orphan | | summary: Adding saw | | | x changeset: 13:a8ab3599d53d diff --git a/tests/test-topic.t b/tests/test-topic.t --- a/tests/test-topic.t +++ b/tests/test-topic.t @@ -587,7 +587,7 @@ | @ changeset: 10:4073470c35e1 | | user: test | | date: Thu Jan 01 00:00:00 1970 +0000 - | | instability: unstable + | | instability: orphan | | summary: fran? | | @@ -612,17 +612,17 @@ changeset: 12:18b70b8de1f0 user: test date: Thu Jan 01 00:00:00 1970 +0000 - instability: unstable + instability: orphan summary: fran? $ hg sum - parent: 12:18b70b8de1f0 (unstable) + parent: 12:18b70b8de1f0 (orphan) fran? branch: default commit: (clean) update: 5 new changesets, 2 branch heads (merge) phases: 3 draft - unstable: 1 changesets + orphan: 1 changesets $ hg topic wat $ hg log -Gr 'draft() and not obsolete()' @@ -637,7 +637,7 @@ | @ changeset: 12:18b70b8de1f0 | | user: test | | date: Thu Jan 01 00:00:00 1970 +0000 - | | instability: unstable + | | instability: orphan | | summary: fran? | | diff --git a/tests/test-tutorial.t b/tests/test-tutorial.t --- a/tests/test-tutorial.t +++ b/tests/test-tutorial.t @@ -685,7 +685,7 @@ $ hg push other pushing to $TESTTMP/other (glob) searching for changes - abort: push includes unstable changeset: bf1b0d202029! + abort: push includes orphan changeset: bf1b0d202029! (use 'hg evolve' to get a stable history or --force to ignore warnings) [255] diff --git a/tests/test-unstable.t b/tests/test-unstable.t --- a/tests/test-unstable.t +++ b/tests/test-unstable.t @@ -53,7 +53,7 @@ o 0:135f39f4bd78@default(draft) add _a - $ hg evo --all --any --unstable + $ hg evo --all --any --orphan move:[2] add _c atop:[3] bprime working directory is now at fdcf3523a74d @@ -99,7 +99,7 @@ o 0:b4952fcf48cf@default(draft) add base - $ hg evo --all --any --unstable + $ hg evo --all --any --orphan move:[3] merge atop:[4] aprime working directory is now at 0bf3f3a59c8c @@ -152,7 +152,7 @@ o 0:b4952fcf48cf@default(draft) add base - $ hg evo --all --any --unstable + $ hg evo --all --any --orphan warning: no support for evolving merge changesets with two obsolete parents yet (Redo the merge (6b4280e33286) and use `hg prune --succ ` to obsolete the old one) $ hg log -G @@ -198,7 +198,7 @@ o 0:135f39f4bd78@default(draft) add _a - $ hg evo --all --any --unstable + $ hg evo --all --any --orphan move:[2] add _c atop:[4] add bprimesplit2 working directory is now at 387cc1e837d7 @@ -252,7 +252,7 @@ o 0:135f39f4bd78@default(draft) add _a - $ hg evo --all --any --unstable + $ hg evo --all --any --orphan move:[2] add _c atop:[6] add bsecondsplit2 working directory is now at 98e3f21461ff @@ -301,7 +301,7 @@ o 0:135f39f4bd78@default(draft) add _a - $ hg evo --all --any --unstable + $ hg evo --all --any --orphan cannot solve split accross two branches $ hg log -G @ 4:3c69ea6aa93e@default(draft) add bprimesplit2