1

I have Windows 10 x64 en-US and Anaconda3 2021.05. My anaconda prompt was working. Today it failed to launch and shows an error:

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "C:\ProgramData\Anaconda3\lib\site-packages\conda\cli\main.py", line 140, in main
        return activator_main()
      File "C:\ProgramData\Anaconda3\lib\site-packages\conda\activate.py", line 1210, in main
        print(activator.execute(), end='')
      File "C:\ProgramData\Anaconda3\lib\site-packages\conda\activate.py", line 178, in execute
        return getattr(self, self.command)()
      File "C:\ProgramData\Anaconda3\lib\site-packages\conda\activate.py", line 153, in activate
        return self._finalize(self._yield_commands(builder_result), self.tempfile_extension)
      File "C:\ProgramData\Anaconda3\lib\site-packages\conda\activate.py", line 143, in _finalize
        tf.write(self.command_join.join(commands))
      File "C:\ProgramData\Anaconda3\lib\tempfile.py", line 473, in func_wrapper
        return func(*args, **kwargs)
    UnicodeEncodeError: 'utf-8' codec can't encode character '\udd8e' in position 952: surrogates not allowed

`$ C:\ProgramData\Anaconda3\Scripts\conda-script.py shell.cmd.exe activate C:\ProgramData\Anaconda3`

Anaconda PowerShell Prompt also fails to launch with similar error:

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "C:\ProgramData\Anaconda3\lib\site-packages\conda\cli\main.py", line 140, in main
        return activator_main()
      File "C:\ProgramData\Anaconda3\lib\site-packages\conda\activate.py", line 1210, in main
        print(activator.execute(), end='')
    UnicodeEncodeError: 'utf-8' codec can't encode character '\udd8e' in position 954: surrogates not allowed

`$ C:\ProgramData\Anaconda3\Scripts\conda-script.py shell.powershell activate C:\ProgramData\Anaconda3`

I searched around and tried everything, including:

  • Uninstall and reinstall Anaconda.
  • Upgrade Python to the latest version.
  • Add PYTHONIOENCODING=utf8 to environment variables.
  • Add "C:\ProgramData\Anaconda3" and "C:\ProgramData\Anaconda3\Scripts" to PATH.
  • Removing tempfile.py.

etc., couldn't fix it.

I searched this \udd8e character:

This is an unassigned character within a valid range, meaning it could be designated a valid Unicode code point in the future. However, for now it has no assigned value.

How could I fix this? Thank you very much.

fsharp
  • 11
  • 4
  • Here is some useful info: https://stackoverflow.com/q/27366479/11942268 – stackprotector Sep 10 '21 at 10:41
  • command line arguments and environmental variables could also use `surrogateescape`. So you should check the origin of such characters, and check how to solve (ignore, escape, or maybe correct the original data) – Giacomo Catenazzi Sep 10 '21 at 13:15

2 Answers2

3

The issue is a non-unicode letter in you PATH environment, which has to be deleted.

Go to your PATH environment file (control panel > system > advanced settings > environment variables) and delete paths under your local user account with non-unicode letters in it.

Kenan
  • 31
  • 2
1

I had a similar error where setting the PYTHONIOENCODING=utf8 environment variable didn't work, but setting PYTHONUTF8=1fix it.