Mercurial > evolve
view hgext3rd/topic/compat.py @ 4929:bb2b4f6c99dc
compat: compatibility for cl.nodemap.get vs cl.index.get_rev
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Wed, 13 Nov 2019 13:47:55 +0700 |
parents | f9743b13de6d |
children | acc7e27fa5c6 |
line wrap: on
line source
# Copyright 2017 FUJIWARA Katsunori <foozy@lares.dti.ne.jp> # # This software may be used and distributed according to the terms of the # GNU General Public License version 2 or any later version. """ Compatibility module """ from __future__ import absolute_import from mercurial import ( obsolete, pycompat, registrar, util, ) getmarkers = None successorssets = None try: from mercurial import obsutil getmarkers = getattr(obsutil, 'getmarkers', None) successorssets = getattr(obsutil, 'successorssets', None) except ImportError: pass if getmarkers is None: getmarkers = obsolete.getmarkers if successorssets is None: successorssets = obsolete.successorssets if pycompat.ispy3: def branchmapitems(branchmap): return branchmap.items() else: # py3-transform: off def branchmapitems(branchmap): return branchmap.iteritems() # py3-transform: on # help category compatibility # hg <= 4.7 (c303d65d2e34) def helpcategorykwargs(categoryname): """Backwards-compatible specification of the helpategory argument.""" category = getattr(registrar.command, categoryname, None) if not category: return {} return {'helpcategory': category} # nodemap.get and index.[has_node|rev|get_rev] # hg <= 5.3 (02802fa87b74) def getgetrev(cl): """Returns index.get_rev or nodemap.get (for pre-5.3 Mercurial).""" if util.safehasattr(cl.index, 'get_rev'): return cl.index.get_rev return cl.nodemap.get