Mercurial > hg
changeset 38615:443029011990 stable
encoding: alias cp65001 to utf-8 on Windows
As far as I can tell, cp65001 is the Windows name for UTF-8. I don't know
how different it is from the UTF-8, but Python 3 appears to have introduced
new codec for cp65001, so the alias is enabled only for Python 2.
https://bugs.python.org/issue13216
This patch is untested, but hopefully fixes the following issue.
https://bitbucket.org/tortoisehg/thg/issues/5127/
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Sun, 01 Jul 2018 23:36:53 +0900 |
parents | 3a0f322af192 |
children | 7acec9408e1c |
files | mercurial/encoding.py |
diffstat | 1 files changed, 5 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/encoding.py Wed Jul 04 14:19:13 2018 +0200 +++ b/mercurial/encoding.py Sun Jul 01 23:36:53 2018 +0900 @@ -72,6 +72,11 @@ '646': lambda: 'ascii', 'ANSI_X3.4-1968': lambda: 'ascii', } +# cp65001 is a Windows variant of utf-8, which isn't supported on Python 2. +# No idea if it should be rewritten to the canonical name 'utf-8' on Python 3. +# https://bugs.python.org/issue13216 +if pycompat.iswindows and not pycompat.ispy3: + _encodingfixers['cp65001'] = lambda: 'utf-8' try: encoding = environ.get("HGENCODING")