Conda gives error when doing "source activate" in cmder

1.7k Views Asked by At

When I do source activate my_env, it gives me this error:

λ source activate py36

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

Traceback (most recent call last):
  File "C:\Miniconda3\lib\site-packages\conda\cli\main.py", line 98, in main
    return activator_main()
  File "C:\Miniconda3\lib\site-packages\conda\activate.py", line 632, in 
main
    print(activator.execute(), end='')
  File "C:\Miniconda3\lib\encodings\cp1252.py", line 19, in encode
    return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\u03bb' in 
position 133: character maps to <undefined>

`$ C:\Miniconda3\Scripts\conda shell.posix activate py36`

  environment variables:
         ACLOCAL_PATH=C:\Program Files\Git\mingw64\share\aclocal;C:\Program
                      Files\Git\usr\share\aclocal
             CIO_TEST=<not set>
           CONDA_ROOT=C:\Miniconda3
          CONDA_SHLVL=0
              EXEPATH=C:\Program Files\Git\bin
             HOMEPATH=\Users\patel_223gv41
             INFOPATH=C:\Program Files\Git\usr\local\info;C:\Program
                      Files\Git\usr\share\info;C:\Program Files\Git\usr\info;C:\Program
                      Files\Git\share\info
              MANPATH=C:\Program Files\Git\mingw64\local\man;C:\Program
                      Files\Git\mingw64\share\man;C:\Program
                      Files\Git\usr\local\man;C:\Program Files\Git\usr\share\man;C:\Program
                      Files\Git\usr\man;C:\Program Files\Git\share\man
        ORIGINAL_PATH=C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Users
                      \patel_223gv41\bin;C:\Yash\Cmder\vendor\conemu-
                      maximus5\ConEmu\Scripts;C:\Yash\Cmder\vendor\conemu-
                      maximus5;C:\Yash\Cmder\vendor\conemu-maximus5\ConEmu;C:\Miniconda3;C:\
                      Miniconda3\Library\mingw-w64\bin;C:\Miniconda3\Library\usr\bin;C:\Mini
                      conda3\Library\bin;C:\Miniconda3\Scripts;C:\Program Files
                      (x86)\Intel\iCLS Client;C:\Program Files\Intel\iCLS Client;C:\WINDOWS\
                      system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\Windo
                      wsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files
                      (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program
                      Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files
                      (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program
                      Files\Intel\Intel(R) Management Engine
                      Components\IPT;C:\ProgramData\chocolatey\bin;C:\Program
                      Files\nodejs;C:\Program Files\Intel\WiFi\bin;C:\Program Files\Common
                      Files\Intel\WirelessCommon;C:\Program
                      Files\Java\jdk-10.0.2\bin;C:\Program Files\Git\cmd;C:\Users\patel_223g
                      v41\AppData\Local\Microsoft\WindowsApps;C:\Program Files\Microsoft VS
                      Code\bin;C:\Yash\Cmder;C:\Users\patel_223gv41\AppData\Local\Microsoft\
                      WindowsApps;C:\Users\patel_223gv41\AppData\Roaming\npm;C:\Users\patel_
                      223gv41\AppData\Local\hyper\app-2.0.0\resources\bin;C:\Program Files\J
                      ava\jdk-10.0.2\bin;C:\Users\patel_223gv41\AppData\Local\Programs\Micro
                      soft VS Code\bin;C:\Users\patel_223gv41
                 PATH=C:\Users\patel_223gv41\bin;C:\Program Files\Git\mingw64\bin;C:\Program
                      Files\Git\usr\local\bin;C:\Program Files\Git\usr\bin;C:\Program
                      Files\Git\usr\bin;C:\Program Files\Git\mingw64\bin;C:\Program Files\Gi
                      t\usr\bin;C:\Users\patel_223gv41\bin;C:\Yash\Cmder\vendor\conemu-
                      maximus5\ConEmu\Scripts;C:\Yash\Cmder\vendor\conemu-
                      maximus5;C:\Yash\Cmder\vendor\conemu-maximus5\ConEmu;C:\Miniconda3;C:\
                      Miniconda3\Library\mingw-w64\bin;C:\Miniconda3\Library\usr\bin;C:\Mini
                      conda3\Library\bin;C:\Miniconda3\Scripts;C:\Program Files
                      (x86)\Intel\iCLS Client;C:\Program Files\Intel\iCLS Client;C:\WINDOWS\
                      system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\Windo
                      wsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files
                      (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program
                      Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files
                      (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program
                      Files\Intel\Intel(R) Management Engine
                      Components\IPT;C:\ProgramData\chocolatey\bin;C:\Program
                      Files\nodejs;C:\Program Files\Intel\WiFi\bin;C:\Program Files\Common
                      Files\Intel\WirelessCommon;C:\Program
                      Files\Java\jdk-10.0.2\bin;C:\Program Files\Git\cmd;C:\Users\patel_223g
                      v41\AppData\Local\Microsoft\WindowsApps;C:\Program Files\Microsoft VS
                      Code\bin;C:\Yash\Cmder;C:\Users\patel_223gv41\AppData\Local\Microsoft\
                      WindowsApps;C:\Users\patel_223gv41\AppData\Roaming\npm;C:\Users\patel_
                      223gv41\AppData\Local\hyper\app-2.0.0\resources\bin;C:\Program Files\J
                      ava\jdk-10.0.2\bin;C:\Users\patel_223gv41\AppData\Local\Programs\Micro
                      soft VS Code\bin;C:\Users\patel_223gv41;C:\Program
                      Files\Git\usr\bin\vendor_perl;C:\Program Files\Git\usr\bin\core_perl
      PKG_CONFIG_PATH=C:\Program Files\Git\mingw64\lib\pkgconfig;C:\Program
                      Files\Git\mingw64\share\pkgconfig
         PSMODULEPATH=C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\Windows
                      PowerShell\v1.0\Modules
   REQUESTS_CA_BUNDLE=<not set>
        SSL_CERT_FILE=<not set>

 active environment : None
        shell level : 0
   user config file : C:\Users\patel_223gv41\.condarc
 populated config files : C:\Users\patel_223gv41\.condarc
      conda version : 4.5.11
conda-build version : not installed
     python version : 3.7.1.final.0
   base environment : C:\Miniconda3  (writable)
       channel URLs : https://repo.anaconda.com/pkgs/main/win-64
                      https://repo.anaconda.com/pkgs/main/noarch
                      https://repo.anaconda.com/pkgs/r/win-64
                      https://repo.anaconda.com/pkgs/r/noarch
      package cache : C:\Miniconda3\pkgs
                      C:\Users\patel_223gv41\AppData\Local\conda\conda\pkgs
   envs directories : C:\Miniconda3\envs
                      C:\Users\patel_223gv41\AppData\Local\conda\conda\envs
                      C:\Users\patel_223gv41\.conda\envs
           platform : win-64
         user-agent : conda/4.5.11 requests/2.20.1 CPython/3.7.1 Windows/10 Windows/10.0.17134
      administrator : False
         netrc file : None
       offline mode : False


An unexpected error has occurred. Conda has prepared the above report.
If submitted, this report will be used by core maintainers to improve
future releases of conda.
Would you like conda to send this report to the core maintainers?
[y/N]:

Can you guys please help me out? I just want to be able to activate the conda environments from Git Bash.

Also, activate my_env works when I'm using just the regular command prompt, so there seems to be a problem with Git Bash and conda.

Here's my conda info if you need it:

λ conda info

 active environment : None
        shell level : 0
   user config file : C:\Users\patel_223gv41\.condarc
 populated config files :
      conda version : 4.5.11
conda-build version : not installed
     python version : 3.7.0.final.0
   base environment : C:\Miniconda3  (writable)
       channel URLs : https://repo.anaconda.com/pkgs/main/win-64
                      https://repo.anaconda.com/pkgs/main/noarch
                      https://repo.anaconda.com/pkgs/free/win-64
                      https://repo.anaconda.com/pkgs/free/noarch
                      https://repo.anaconda.com/pkgs/r/win-64
                      https://repo.anaconda.com/pkgs/r/noarch
                      https://repo.anaconda.com/pkgs/pro/win-64
                      https://repo.anaconda.com/pkgs/pro/noarch
                      https://repo.anaconda.com/pkgs/msys2/win-64
                      https://repo.anaconda.com/pkgs/msys2/noarch
      package cache : C:\Miniconda3\pkgs
                      C:\Users\patel_223gv41\AppData\Local\conda\conda\pkgs
   envs directories : C:\Miniconda3\envs
                      C:\Users\patel_223gv41\AppData\Local\conda\conda\envs
                      C:\Users\patel_223gv41\.conda\envs
           platform : win-64
         user-agent : conda/4.5.11 requests/2.19.1 CPython/3.7.0 Windows/10 Windows/10.0.17134
      administrator : False
         netrc file : None
       offline mode : False

EDIT: It seems like the conda activate script scans through my bash prompt and gets stuck on the lambda "λ", because it can't recognise this character. If you read the error message, I think this specific part stands out: UnicodeEncodeError: 'charmap' codec can't encode character '\u03bb' The \u03bb is unicode encoding for the lambda character, but the activate script can't recognize it. Is there a way I can change the encoding somehow so that the conda activate script can recognize this character?

2

There are 2 best solutions below

3
On BEST ANSWER

You seem to be in a Cmder session, which means issue 7445 could apply:

Note that cmder have a lambda charater (λ) in front of each command.

I think it is this lambda charater (i.e. '\u03bb') that is not handled correctly in the encoder/decoder class found in \lib\encodings\cp1252.py.

Workaround:

Remove the lambda character in cmder\vendor\git-for-windows\etc\profile.d\git-prompt.sh at line at line 36.

PS1="$PS1"''                 # prompt: always "λ " 
0
On

Try this instead. Replace the lambda symbol with something else like “>>”. You will need to find the file in “YOURPATHTOCMDER\cmder\vendor\clink.lua” and change the function, function set_prompt_filter(), like this:

function set_prompt_filter()
-- orig: $E[1;32;40m$P$S{git}{hg}$S$_$E[1;30;40m{lamb}$S$E[0m
-- color codes: "\x1b[1;37;40m"
cwd = clink.get_cwd()
prompt = "\x1b[1;32;40m{cwd} {git}{hg} \n\x1b[1;30;40m{lamb} \x1b[0m"
new_value = string.gsub(prompt, "{cwd}", cwd)
clink.prompt.value = string.gsub(new_value, "{lamb}", ">>")

end