﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	blockedby	blocking	notify_on_close	platform	project
6961	AlphaFold prediction: A UTF-8 locale is required. Got ANSI_X3.4-1968	Tom Goddard	Tom Goddard	"Restarting an AlphaFold prediction after an OpenMM minimization failure with minimization turned off by pressing the play button after an error gives the following error.  This example is from the standard AlphaFold Colab notebook.  The ChimeraX Colab notebook has the same problem.  The problem is 

{{{
import locale
locale.getpreferredencoding()
}}}

returns ""ANSI_X3.4-1968"" instead of the expected ""UTF-8"".  Before the error the same call gave ""UTF-8"".  So it seems reporting the error traceback somehow changed the preferred encoding.  I was not able to remedy the problem with calls to locale.setlocale().  I could not find any way to get the preferred encoding back to ""UTF-8"".  No relevant environment variables were set.  If I redefine locale.getpreferredencoding() to always return 'UTF-8' then AlphaFold complete successfully.

If encoding is not 'UTF-8' then Google Colab is not able to execute any shell commands in the notebook.

{{{
---------------------------------------------------------------------------
NotImplementedError                       Traceback (most recent call last)
<ipython-input-6-e612fd4aa5be> in <module>()
    210 
    211 # --- Download the predictions ---
--> 212 get_ipython().system('zip -q -r {output_dir}.zip {output_dir}')
    213 files.download(f'{output_dir}.zip')

2 frames
/usr/local/lib/python3.7/dist-packages/google/colab/_shell.py in system(self, *args, **kwargs)
    100       kwargs.update({'also_return_output': True})
    101 
--> 102     output = _system_commands._system_compat(self, *args, **kwargs)  # pylint:disable=protected-access
    103 
    104     if pip_warn:

/usr/local/lib/python3.7/dist-packages/google/colab/_system_commands.py in _system_compat(shell, cmd, also_return_output)
    445   # stack.
    446   result = _run_command(
--> 447       shell.var_expand(cmd, depth=2), clear_streamed_output=False)
    448   shell.user_ns['_exit_code'] = result.returncode
    449   if -result.returncode in _INTERRUPTED_SIGNALS:

/usr/local/lib/python3.7/dist-packages/google/colab/_system_commands.py in _run_command(cmd, clear_streamed_output)
    166   if locale_encoding != _ENCODING:
    167     raise NotImplementedError(
--> 168         'A UTF-8 locale is required. Got {}'.format(locale_encoding))
    169 
    170   parent_pty, child_pty = pty.openpty()

NotImplementedError: A UTF-8 locale is required. Got ANSI_X3.4-1968
}}}
"	defect	closed	moderate		Structure Prediction		can't reproduce						all	ChimeraX
