Changeset - 9ddb4bd52391
[Not reviewed]
default
0 2 0
Mads Kiilerich - 6 years ago 2020-03-06 18:02:12
mads@kiilerich.com
Grafted from: 678f98b43678
hg: set HGPLAIN globally to minimize potential impact from reading hgrc configuration when creating ui

See `hg help scripting` for HGPLAIN description ... but Kallithea will invoke
Mercurial internals directly, so HGPLAIN shouldn't really impact anything.
2 files changed with 5 insertions and 0 deletions:
0 comments (0 inline, 0 general)
kallithea/lib/utils.py
Show inline comments
 
@@ -371,6 +371,7 @@ def make_ui(repo_path=None):
 
        else:
 
            log.debug('hgrc file is not present at %s, skipping...', hgrc_path)
 

	
 
    assert baseui.plain()  # set by hgcompat.monkey_do (invoked from import of vcs.backends.hg) to minimize potential impact of loading config files
 
    return baseui
 

	
 

	
kallithea/lib/vcs/utils/hgcompat.py
Show inline comments
 
@@ -2,6 +2,7 @@
 
Mercurial libs compatibility
 
"""
 

	
 
import mercurial.encoding
 
import mercurial.localrepo
 

	
 

	
 
@@ -11,3 +12,6 @@ def monkey_do():
 
    mercurial.localrepo.localrepository._lfstatuswriters = [lambda *msg, **opts: None]
 
    # 3.5 7699d3212994 added the invariant that repo.lfstatus must exist before hitting overridearchive
 
    mercurial.localrepo.localrepository.lfstatus = False
 

	
 
    # Minimize potential impact from custom configuration
 
    mercurial.encoding.environ[b'HGPLAIN'] = b'1'
0 comments (0 inline, 0 general)