##// END OF EJS Templates
chg: fix chg to work with py3.7+ "coercing" the locale...
chg: fix chg to work with py3.7+ "coercing" the locale When the environment is empty (specifically: it doesn't contain LC_ALL, LC_CTYPE, or LANG), Python will "coerce" the locale environment variables to be a UTF-8 capable one. It sets LC_CTYPE in the environment, and this breaks chg, since chg operates by: - start hg, using whatever environment the user has when chg starts - hg stores a hash of this "original" environment, but python has already set LC_CTYPE even though the user doesn't have it in their environment - chg calls setenv over the commandserver. This clears the environment inside of hg and sets it to be exactly what the environment in chg is (without LC_CTYPE). - chg calls validate to ensure that the environment hg is using (after the setenv call) is the one that the chg process has - if not, it is assumed the user changed their environment and we should use a different server. This will *never* be true in this situation because LC_CTYPE was removed. Differential Revision: https://phab.mercurial-scm.org/D7550
Kyle Lippincott -
r44312:5e0f6451 default
Show More
Name Size Modified Last Commit Author
/ hgext / fsmonitor / pywatchman
__init__.py Loading ...
bser.c Loading ...
capabilities.py Loading ...
compat.py Loading ...
encoding.py Loading ...
load.py Loading ...
pybser.py Loading ...