Patchwork D242: context: rename troubled into isunstable

login
register
mail settings
Submitter phabricator
Date Aug. 9, 2017, 3:37 p.m.
Message ID <ce2668489e8f36c4f7467f9381cc2281@localhost.localdomain>
Download mbox | patch
Permalink /patch/22818/
State Not Applicable
Headers show

Comments

phabricator - Aug. 9, 2017, 3:37 p.m.
This revision was automatically updated to reflect the committed changes.
Closed by commit rHG52c5ff856b49: context: rename troubled into isunstable (authored by lothiraldan).

REPOSITORY
  rHG Mercurial

CHANGES SINCE LAST UPDATE
  https://phab.mercurial-scm.org/D242?vs=665&id=700

REVISION DETAIL
  https://phab.mercurial-scm.org/D242

AFFECTED FILES
  mercurial/cmdutil.py
  mercurial/commands.py
  mercurial/context.py
  mercurial/exchange.py

CHANGE DETAILS




To: lothiraldan, #hg-reviewers
Cc: mercurial-devel
Brandon McCaig - Aug. 9, 2017, 4:32 p.m.
On Wed, Aug 09, 2017 at 03:37:26PM +0000, lothiraldan (Boris Feld) wrote:
> diff --git a/mercurial/context.py b/mercurial/context.py ---
> a/mercurial/context.py +++ b/mercurial/context.py @@ -240,6
> +240,12 @@ return self.rev() in obsmod.getrevs(self._repo,
> 'divergent')
>  
>      def troubled(self):
> +        msg = ("'context.troubled' is deprecated, "
> +               "use 'context.isunstable'")
> +        self._repo.ui.deprecwarn(msg, '4.4')
> +        return self.unstable()

Maybe I'm missing something, but shouldn't this be:

        return self.isunstable()

It sounded like context.unstable() has a different purpose and so
troubled was renamed to isunstable and so troubled() itself
should also be calling isunstable().

> +
> +    def isunstable(self):
>          """True if the changeset is either unstable, bumped or divergent"""
>          return self.orphan() or self.phasedivergent() or self.contentdivergent()

Regards,
Boris Feld - Aug. 9, 2017, 5:19 p.m.
On Wed, 2017-08-09 at 12:32 -0400, Brandon McCaig wrote:
> On Wed, Aug 09, 2017 at 03:37:26PM +0000, lothiraldan (Boris Feld)
> wrote:
> > diff --git a/mercurial/context.py b/mercurial/context.py ---
> > a/mercurial/context.py +++ b/mercurial/context.py @@ -240,6
> > +240,12 @@ return self.rev() in obsmod.getrevs(self._repo,
> > 'divergent')
> >  
> >      def troubled(self):
> > +        msg = ("'context.troubled' is deprecated, "
> > +               "use 'context.isunstable'")
> > +        self._repo.ui.deprecwarn(msg, '4.4')
> > +        return self.unstable()
> 
> Maybe I'm missing something, but shouldn't this be:
> 
>         return self.isunstable()
> 
> It sounded like context.unstable() has a different purpose and so
> troubled was renamed to isunstable and so troubled() itself
> should also be calling isunstable().

Yes, you are right. I am sending a fix right now on phabricator. Thank
you for the catch.

> 
> > +
> > +    def isunstable(self):
> >          """True if the changeset is either unstable, bumped or
> > divergent"""
> >          return self.orphan() or self.phasedivergent() or
> > self.contentdivergent()
> 
> Regards,
> 
> 
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel@mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel

Patch

diff --git a/mercurial/exchange.py b/mercurial/exchange.py
--- a/mercurial/exchange.py
+++ b/mercurial/exchange.py
@@ -680,7 +680,7 @@ 
                 ctx = unfi[node]
                 if ctx.obsolete():
                     raise error.Abort(mso % ctx)
-                elif ctx.troubled():
+                elif ctx.isunstable():
                     # TODO print more than one instability in the abort
                     # message
                     raise error.Abort(mst[ctx.instabilities()[0]] % ctx)
diff --git a/mercurial/context.py b/mercurial/context.py
--- a/mercurial/context.py
+++ b/mercurial/context.py
@@ -240,6 +240,12 @@ 
         return self.rev() in obsmod.getrevs(self._repo, 'divergent')
 
     def troubled(self):
+        msg = ("'context.troubled' is deprecated, "
+               "use 'context.isunstable'")
+        self._repo.ui.deprecwarn(msg, '4.4')
+        return self.unstable()
+
+    def isunstable(self):
         """True if the changeset is either unstable, bumped or divergent"""
         return self.orphan() or self.phasedivergent() or self.contentdivergent()
 
diff --git a/mercurial/commands.py b/mercurial/commands.py
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -4849,7 +4849,7 @@ 
                 ui.write(_(' (no revision checked out)'))
         if p.obsolete():
             ui.write(_(' (obsolete)'))
-        if p.troubled():
+        if p.isunstable():
             instabilities = (ui.label(instability, 'trouble.%s' % instability)
                              for instability in p.instabilities())
             ui.write(' ('
diff --git a/mercurial/cmdutil.py b/mercurial/cmdutil.py
--- a/mercurial/cmdutil.py
+++ b/mercurial/cmdutil.py
@@ -1464,7 +1464,7 @@ 
     labels = ['log.changeset', 'changeset.%s' % ctx.phasestr()]
     if ctx.obsolete():
         labels.append('changeset.obsolete')
-    if ctx.troubled():
+    if ctx.isunstable():
         labels.append('changeset.troubled')
         for instability in ctx.instabilities():
             labels.append('trouble.%s' % instability)
@@ -1577,7 +1577,7 @@ 
         self.ui.write(_("date:        %s\n") % date,
                       label='log.date')
 
-        if ctx.troubled():
+        if ctx.isunstable():
             # i18n: column positioning for "hg log"
             instabilities = ctx.instabilities()
             self.ui.write(_("instability: %s\n") % ', '.join(instabilities),