Error when processing UTF-8 characters in MSYS2
People trying to build my application nxdumpclient (commit 0ecd7038a5aacf6b3ca7ddd0e16e43a108402286) on Windows in MSYS2 (UCRT64) environment run into an error from blueprint-compiler caused by utilization of a unicode quote:
FAILED: src/nxdc-blueprints.dummy.p/PreferencesWindow.ui
"C:/msys64/ucrt64/bin/python.exe" "C:\msys64\ucrt64\bin/blueprint-compiler" "compile" "--output" "src/nxdc-blueprints.dummy.p/PreferencesWindow.ui" "../src/PreferencesWindow.blp"
Traceback (most recent call last):
File "C:/msys64/ucrt64/lib/python3.11/site-packages/blueprintcompiler/main.py", line 81, in main
opts.func(opts)
File "C:/msys64/ucrt64/lib/python3.11/site-packages/blueprintcompiler/main.py", line 104, in cmd_compile
data = opts.input.read()
^^^^^^^^^^^^^^^^^
File "C:/msys64/ucrt64/lib/python3.11/encodings/cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 1251: character maps to <undefined>
A more complete log: Whovian-Build.log. I'm honestly clueless where cp1252
encoding is coming from, since sys.getdefaultencoding()
returns utf-8
. Even setting PYTHONIOENCODING
has no effect.