##// END OF EJS Templates
py3: replace list comprehension with for-loop due to scope...
py3: replace list comprehension with for-loop due to scope The scope of the list comprehension variable 'x' will be limited to the list comprehension in python3. Thus switching to a full loop (without this scope restriction) in preparation for python3.

File last commit:

r5357:eb337bda default
r6788:bfd7fc9a default
Show More
hgcompat.py
48 lines | 1.9 KiB | text/x-python | PythonLexer
"""
Mercurial libs compatibility
"""
import mercurial
import mercurial.demandimport
## patch demandimport, due to bug in mercurial when it always triggers demandimport.enable()
mercurial.demandimport.enable = lambda *args, **kwargs: 1
from mercurial import archival, merge as hg_merge, patch, ui
from mercurial import discovery
from mercurial import localrepo
from mercurial import unionrepo
from mercurial import scmutil
from mercurial import config
from mercurial.commands import clone, nullid, pull
from mercurial.context import memctx, memfilectx
from mercurial.error import RepoError, RepoLookupError, Abort
from mercurial.hgweb import hgweb_mod
from mercurial.hgweb.common import get_contact
from mercurial.localrepo import localrepository
from mercurial.match import match
from mercurial.mdiff import diffopts
from mercurial.node import hex
from mercurial.encoding import tolocal
from mercurial.discovery import findcommonoutgoing
from mercurial.hg import peer
from mercurial.httppeer import httppeer
from mercurial.sshpeer import sshpeer
from mercurial.util import url as hg_url
from mercurial.scmutil import revrange
from mercurial.node import nullrev
# those authhandlers are patched for python 2.6.5 bug an
# infinite looping when given invalid resources
from mercurial.url import httpbasicauthhandler, httpdigestauthhandler
import inspect
# Mercurial 3.1 503bb3af70fe
if inspect.getargspec(memfilectx.__init__).args[1] != 'repo':
_org__init__=memfilectx.__init__
def _memfilectx__init__(self, repo, *a, **b):
return _org__init__(self, *a, **b)
memfilectx.__init__ = _memfilectx__init__
# workaround for 3.3 94ac64bcf6fe and not calling largefiles reposetup correctly
localrepository._lfstatuswriters = [lambda *msg, **opts: None]
# 3.5 7699d3212994 added the invariant that repo.lfstatus must exist before hitting overridearchive
localrepository.lfstatus = False