conda returns 'Solving environment: failed'

2019-06-22 14:35发布

I can not use the conda utility anymore. I use it regularly since years but lately, since I installed the python module scp (with the command conda install scp, I don’t know if it matters) without anything visibly unusual, I get the error below whatever the command as soon as I use conda (conda install …, conda update …, conda uninstall …, … , the message is always the same):

Solving environment: failed

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

    Traceback (most recent call last):
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/exceptions.py", line 819, in __call__
        return func(*args, **kwargs)
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/cli/main.py", line 78, in _main
        exit_code = do_call(args, p)
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/cli/conda_argparse.py", line 77, in do_call
        exit_code = getattr(module, func_name)(args, parser)
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/cli/main_update.py", line 14, in execute
        install(args, parser, 'update')
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/cli/install.py", line 235, in install
        force_reinstall=context.force,
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/core/solve.py", line 506, in solve_for_transaction
        force_remove, force_reinstall)
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/core/solve.py", line 439, in solve_for_diff
        final_precs = self.solve_final_state(deps_modifier, prune, ignore_pinned, force_remove)
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/core/solve.py", line 180, in solve_final_state
        index, r = self._prepare(prepared_specs)
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/core/solve.py", line 580, in _prepare
        self.subdirs, prepared_specs)
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/core/index.py", line 215, in get_reduced_index
        new_records = query_all(spec)
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/core/index.py", line 184, in query_all
        return tuple(concat(future.result() for future in as_completed(futures)))
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/core/subdir_data.py", line 94, in query
        self.load()
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/core/subdir_data.py", line 148, in load
        _internal_state = self._load()
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/core/subdir_data.py", line 216, in _load
        mod_etag_headers.get('_mod'))
      File "/Users/steph/anaconda/lib/python3.5/site-packages/conda/core/subdir_data.py", line 416, in fetch_repodata_remote_request
        timeout=timeout)
      File "/Users/steph/anaconda/lib/python3.5/site-packages/requests/sessions.py", line 501, in get
        return self.request('GET', url, **kwargs)
      File "/Users/steph/anaconda/lib/python3.5/site-packages/requests/sessions.py", line 479, in request
        prep.url, proxies, stream, verify, cert
      File "/Users/steph/anaconda/lib/python3.5/site-packages/requests/sessions.py", line 654, in merge_environment_settings
        env_proxies = get_environ_proxies(url) or {}
      File "/Users/steph/anaconda/lib/python3.5/site-packages/requests/utils.py", line 617, in get_environ_proxies
        if should_bypass_proxies(url):
    TypeError: should_bypass_proxies_patched() missing 1 required positional argument: 'no_proxy'

`$ /Users/steph/anaconda/bin/conda update conda`

  environment variables:
                 CIO_TEST=<not set>
                CLASSPATH=/Users/steph/workspace
               CONDA_ROOT=/Users/steph/anaconda
          LD_LIBRARY_PATH=/opt/local/lib:/opt/local/lib/gcc5:/usr/lib:/usr/local/lib:/Users/step
                          h/anaconda/pkgs/qt-4.8.7-1/lib
                     PATH=/Library/Frameworks/Python.framework/Versions/3.5/bin:/Library/Framewo
                          rks/Python.framework/Versions/3.6/bin:/opt/local/bin:/opt/local/sbin:.
                          :/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/Te
                          X/texbin:/Developer/usr/bin:/Users/steph/anaconda/bin
               PYTHONPATH=/Users/steph/python_work:/Users/steph/python_lib
       REQUESTS_CA_BUNDLE=<not set>
            SSL_CERT_FILE=<not set>

     active environment : None
       user config file : /Users/steph/.condarc
 populated config files : 
          conda version : 4.5.6
    conda-build version : 3.10.5
         python version : 3.5.5.final.0
       base environment : /Users/steph/anaconda  (writable)
           channel URLs : https://repo.anaconda.com/pkgs/main/osx-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/free/osx-64
                          https://repo.anaconda.com/pkgs/free/noarch
                          https://repo.anaconda.com/pkgs/r/osx-64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/pro/osx-64
                          https://repo.anaconda.com/pkgs/pro/noarch
          package cache : /Users/steph/anaconda/pkgs
                          /Users/steph/.conda/pkgs
       envs directories : /Users/steph/anaconda/envs
                          /Users/steph/.conda/envs
               platform : osx-64
             user-agent : conda/4.5.6 requests/2.12.4 CPython/3.5.5 Darwin/15.6.0 OSX/10.11.6
                UID:GID : 504:20
             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?
…

I tried to look at my .condarc file and even removed it but it doesn't change the pb. Do you know what I can do to go back to a working conda ?

5条回答
唯我独甜
2楼-- · 2019-06-22 14:40

Downgrading to conda 4.5.5 fixed this for me.

And with a ranting hat on: This is the third time in the space of about 18 months that a conda update has resulted in an error that causes builds to fail, and there's been plenty of other issues too. I presume it will be fixed by the core conda people at some point, and maybe it is caused by a particular combination of third party dependencies, but one way or another conda always seems extremely buggy. There was once an update that caused conda install conda to delete itself!

查看更多
We Are One
3楼-- · 2019-06-22 14:51

Okay. I was facing the same problem with the Anaconda 3 2018 ver. So what I did is that I used Anaconda prompt. It automatically links the base conda files to the required proxies. just type "conda --version" in the prompt to check the prompt. Then type "conda install numpy". Voila! you are done.

查看更多
Anthone
4楼-- · 2019-06-22 14:59

DELETE to C:\Users\maglk\.condarc and then update Conda. This will solve it in Windows.

conda update conda
查看更多
再贱就再见
5楼-- · 2019-06-22 15:01

This problem is still out in the field - started happening to me on a fresh Windows 10 install with latest stable Anaconda (2018.12). Getting 'Solving environment: failed' on 'conda install -c conda-forge xgboost' command. I could install something from the base channel eg. 'conda install numpy'

(base) C:\Windows\system32>conda info

     active environment : base
    active env location : C:\ProgramData\Anaconda3
            shell level : 1
       user config file : C:\Users\maglk\.condarc
 populated config files : C:\Users\maglk\.condarc
          conda version : 4.5.12
    conda-build version : 3.17.6
         python version : 3.7.1.final.0
       base environment : C:\ProgramData\Anaconda3  (writable)
           channel URLs : https://conda.anaconda.org/conda-forge/win-64
                          https://conda.anaconda.org/conda-forge/noarch
                          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:\ProgramData\Anaconda3\pkgs
                          C:\Users\maglk\AppData\Local\conda\conda\pkgs
       envs directories : C:\ProgramData\Anaconda3\envs
                          C:\Users\maglk\AppData\Local\conda\conda\envs
                          C:\Users\maglk\.conda\envs
               platform : win-64
             user-agent : conda/4.5.12 requests/2.21.0 CPython/3.7.1 Windows/10 Windows/10.0.17134
          administrator : True
             netrc file : None
           offline mode : False
查看更多
老娘就宠你
6楼-- · 2019-06-22 15:03

thank you, that works ! in case the link grows old, here is the simplified copy:

  1. Navigate to your conda base environment, as given by conda info.
  2. Open the file lib/pythonX.Y/site-packages/conda/gateways/connection/init.py. Where X.Y is the python major-minor version.
  3. Replace the function 'should_bypass_proxies_patched' with :

    def should_bypass_proxies_patched(should_bypass_proxies_func, url, no_proxy=None):
        if url.startswith("file://"):
            return True
        try:
            return should_bypass_proxies_func(url, no_proxy)
        except TypeError:
            return should_bypass_proxies_func(url)
    
查看更多
登录 后发表回答