diff -r dc526561111c -r 5b117f82cbdb mercurial/context.py --- a/mercurial/context.py Mon Dec 17 15:06:15 2012 +0100 +++ b/mercurial/context.py Mon Dec 17 15:17:54 2012 +0100 @@ -268,6 +268,23 @@ """True if the changeset is either unstable, bumped or divergent""" return self.unstable() or self.bumped() or self.divergent() + def troubles(self): + """return the list of troubles affecting this changesets. + + Troubles are returned as strings. possible values are: + - unstable, + - bumped, + - divergent. + """ + troubles = [] + if self.unstable(): + troubles.append('unstable') + if self.bumped(): + troubles.append('bumped') + if self.divergent(): + troubles.append('divergent') + return troubles + def _fileinfo(self, path): if '_manifest' in self.__dict__: try: