diff --git a/kallithea/lib/vcs/backends/hg/changeset.py b/kallithea/lib/vcs/backends/hg/changeset.py --- a/kallithea/lib/vcs/backends/hg/changeset.py +++ b/kallithea/lib/vcs/backends/hg/changeset.py @@ -88,7 +88,11 @@ class MercurialChangeset(BaseChangeset): @LazyProperty def successors(self): - successors = obsolete.successorssets(self._ctx._repo, self._ctx.node()) + try: + from mercurial import obsutil + successors = obsutil.successorssets(self._ctx._repo, self._ctx.node()) + except ImportError: # moved in Mercurial 4.3 (4f49810a1011) + successors = obsolete.successorssets(self._ctx._repo, self._ctx.node()) if successors: # flatten the list here handles both divergent (len > 1) # and the usual case (len = 1) diff --git a/kallithea/tests/vcs/test_hg.py b/kallithea/tests/vcs/test_hg.py --- a/kallithea/tests/vcs/test_hg.py +++ b/kallithea/tests/vcs/test_hg.py @@ -585,7 +585,6 @@ class TestMercurialChangeset(object): assert 'Lukasz Balcerzak' == self.repo.get_changeset('3803844fdbd3').author_name assert 'marcink' == self.repo.get_changeset('84478366594b').author_name - @pytest.mark.xfail def test_successors(self): init_chset = self.repo.get_changeset(0) assert init_chset.successors == []