ChatGPT解决这个技术问题 Extra ChatGPT

The environment is inconsistent, please check the package plan carefully

I tried to update or install new packages from anaconda and lately, this message has appeared:

The environment is inconsistent, please check the package plan carefully
The following package are causing the inconsistency:

   - defaults/win-32::anaconda==5.3.1=py37_0

done

I tried with conda clean --all and then conda update --all but it persists.

Conda Info

active environment : base
    active env location : C:\Users\NAME\Continuum
            shell level : 1
       user config file : C:\Users\NAME\.condarc
 populated config files : C:\Users\NAME\.condarc
          conda version : 4.6.11
    conda-build version : 3.17.7
         python version : 3.7.3.final.0
       base environment : C:\Users\NAME\Continuum  (writable)
           channel URLs : https://repo.anaconda.com/pkgs/main/win-32
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/free/win-32
                          https://repo.anaconda.com/pkgs/free/noarch
                          https://repo.anaconda.com/pkgs/r/win-32
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/msys2/win-32
                          https://repo.anaconda.com/pkgs/msys2/noarch
          package cache : C:\Users\NAME\Continuum\pkgs
                          C:\Users\NAME\.conda\pkgs
                          C:\Users\NAME\AppData\Local\conda\conda\pkgs
       envs directories : C:\Users\NAME\Continuum\envs
                          C:\Users\NAME\.conda\envs
                          C:\Users\NAME\AppData\Local\conda\conda\envs
               platform : win-32
             user-agent : conda/4.6.11 requests/2.21.0 CPython/3.7.3 Windows/10 Windows/10.0.17763
          administrator : False
             netrc file : None
           offline mode : False
did anyone get any progress on this, if I have to manually update 100 issues it will take me forever. i cant even uninstall anaconda and start over, due to the same issue :(

m
mm49307

I had faced the same problem. Simply running

conda install anaconda

solved the problem for me.


I have the same problem, and I did as you suggested. But I'm still getting inconsistencies. I'm running osx-64, do you run osx also?
I get the error with conda update --all, so it doesn't solve the problem (on some cases), but conda install seems to work (and to update other packages in the list)
For me the solution was in 2 steps: first, conda install anaconda which just installed anaconda package and removed one conda package + updated a few dependencies. Then I followed it with conda update --all and everything was fine again! My system is Ubuntu 18.04 and I ran into this problem after updating spyder package which also caused an update to conda itself, and this caused the inconsistency.
conda install anaconda worked for me too, although I had to wait more than 5 minutes for conda to propose a package plan.
Try conda update conda first before conda update anaconda. The former might solve your problems with minimal needs for installs/upgrades/downgrades and just updates the [ana,mini]conda system and its dependency needs itself, rather than the entirety of anaconda3. Also, running the former first, may make the latter work more efficiently if you decide to do that as well.
t
tys1998

saw this on Google Groups

This message was added in conda 4.6.9, previously there was no indication when conda detected an inconsistent environment unless conda was run in debug mode. It is likely that your environment was inconsistent for some time but the upgrade to conda made it visible. The best option it to run "conda install package_name" for the inconsistent packages to let conda try to restore consistency.

and it really works for me.

Maybe you should try conda install anaconda in your situation.


The inconsistent environment was a nagging issue for ALL of my conda environments, conda install anaconda didn't cut it. I need to do exactly this: (re)install each package it called out individually. Thanks!
@conner.xyz I found myself in a similar situation, and decided that writing a snippet that reinstalled each package was a fair way to go (see my answer below). Was lucky enough to not have to work through multiple environments, however.
Great answer - really nice to have an explanation of why this has happened as well as a succinct fix that (at least for me) works perfectly.
S
Sachin Kumar

The inconsistencies are caused due to different versions of the packages, and their clashing dependencies.

conda update --all

This command updates all the packages, and then conda solves the inconsistency on its own.


This is the better answer, because it only updates packages that conflict and caused the inconsistencies.
This does NOT solve the problem because the inconsistency is not caused by dependencies, but rather by change in metadata on the server side (i.e. in channel). I tried this and it didn't work, however as the link says, it's a warning that can be ignored.
While "conda upgrade conda" fails, "conda install anaconda; conda update --all" solved my problem.
conda update --all just tells me about the package conflicts without attempting to solve them.
j
jschabs

Had this same problem and none of the other solutions worked for me. Ended up having to uninstall and reinstall conda, then reinstall all of my libraries.


Why the downvote? I tried many of the other solutions, which all resulted in the same message about inconsistent packages and conda spinning forever. A full reinstall took just a few minutes and gave me a working system again. I obviously wouldn't recommend this if you have any valuable environments that need to be preserved.
@BasSwinckels lol maybe I didn't emphasize enough that NONE of the other solutions worked for me.
This is the only thing that works for me... I'm already on my third installation of anaconda... I'm never going to update it again.
h
hans

Ultimate solutions:

conda activate base
conda install anaconda
conda update --all

Works on Windows 10 and Ubuntu 18.04 (credits to @MF.OX for ubuntu).

Removed following problems for me:

The environment is inconsistent

WARNING conda.base.context:use_only_tar_bz2(632)


thanks, it works. After base env update, I have activated my virtual env, and repeated conda upadte --all to get # All requested packages alread installed. message.
M
Max Vollmer

If the other solutions don't work, reverting the environment can fix this.

Use conda list --revisions, pick a revision number, and use conda install --revision [#] going back step-by-step until everything works again.


Y
YenForYang

Given a situation like the following,

> conda update -c intel --all
Collecting package metadata: done
Solving environment: |
The environment is inconsistent, please check the package plan carefully
The following packages are causing the inconsistency:

  - intel/win-64::ipython==6.3.1=py36_3
  - intel/win-64::prompt_toolkit==1.0.15=py36_2
done

As mentioned in other answers, the idea is to have some sort of re-installation to occur for the inconsistent packages.

Thus, with a few copy-&-paste's, you could:

> conda install intel/win-64::ipython==6.3.1=py36_3
Collecting package metadata: done
Solving environment: /
The environment is inconsistent, please check the package plan carefully
The following packages are causing the inconsistency:

  - intel/win-64::ipython==6.3.1=py36_3
  - intel/win-64::prompt_toolkit==1.0.15=py36_2
done

## Package Plan ##

  environment location: c:\conda

  added / updated specs:
    - ipython


The following NEW packages will be INSTALLED:

  jedi               intel/win-64::jedi-0.12.0-py36_2
  parso              intel/win-64::parso-0.2.0-py36_2
  pygments           intel/win-64::pygments-2.2.0-py36_5
  wcwidth            intel/win-64::wcwidth-0.1.7-py36_6


Proceed ([y]/n)? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done

(and you would have to repeat for all the packages)

My “Shortcut”

Alternatively, cook up an (ugly) one-liner (this should work for Windows as well as other platforms)

Note: by "ORIGINAL_COMMAND", I'm referring to any command that gives you the error message (without any other side-effects, ideally)

<ORIGINAL_COMMAND> 2>&1 | python -c "import sys,re,conda.cli; conda.cli.main('conda','install','-y',*re.findall(r'^\s*-\s*(\S+)$',sys.stdin.read(),re.MULTILINE))"

Expanding the above one-liner:

from re import findall, MULTILINE
from sys import stdin
from conda.cli import main

main(
    "conda", "install", "-y",
    "--force",  # Maybe add a '--force'/'--force-reinstall' (I didn't add it for the one-liner above)
    *findall(r"^\s*-\s*(\S+)$", stdin.read(), MULTILINE)  # Here are the offenders
)

K
Kris Stern

The command conda install -c anaconda anaconda did the trick for me. For my setup, I need to specify the channel otherwise it would not work. After running the command in the terminal, I was prompted to update a list of packages that was found to be inconsistent. Without this step, I was not able to install or update any packages with conda install <package_name> or conda update <package_name respectively.


J
Jack Kelly

I was getting an environment is inconsistent error when I tried to update my base conda environment. I'm using miniconda. Unfortunately, none of the answers above worked for me.

What did work for me was:

conda activate base
conda install conda --force-reinstall
conda install conda --force-reinstall
conda update --all

(Yes, for some reason it was necessary to run conda install conda --force-reinstall twice!)


I had miniconda and didn't want to install anaconda (as in the accepted answer) and this worked perfectly. And yes it was necessary to run conda install conda --force-reinstall twice! Just in case: change the name of your environment appropriately (conda activate [environemtn_name]). Thanks @Jack Kelly.
I've installed Anaconda on my Mac. I needed pandoc. Could not find it in Anaconda navigator, so I tried conda. Got the same error as the OP. Tried this solution, and it fixed the error. I was able to install pandoc afterwards.
Y
Yogendra

What worked for me was to

`conda remove <offending_packagename>`, 
`conda update --all` 

and then finally

`conda install <offending_packagename>`.

J
Jerzy Dziewierz

I had this problem for ages. The conda install anaconda might work, but it takes just way too long -- more than 24 hours on my machine.

Here is a solution that worked for me in under 5 minutes:

Remove all the unneeded packages -- being careful to leave the ones that are essential for conda to operate. Then, use conda install anaconda.

But how?? there is a lot of them!

This is what I have done:

Make a fresh envinroment with python, fairly bare-bone. then, list the packages in there:

conda create -n fresh python

conda activate fresh

conda list

Save the output, you will need it. 1b. go back to the base envinroment:

conda deactivate

use the following snippet to generate a conda command that will remove all the inconsistent packages:

(good packages are)

exclusion_text = '''
_libgcc_mutex             0.1                        main  
_openmp_mutex             4.5                       1_gnu  
anyio                     2.2.0            py39h06a4308_1  
argon2-cffi               20.1.0           py39h27cfd23_1  
async_generator           1.10               pyhd3eb1b0_0  
...

... and more! get this from a good environment.

Note the usage of triple quotes (''') to use a multiline-string in python.

bad_packages_text = '''
  - https://repo.continuum.io/pkgs/main/linux-64/networkx-2.1-py36_0.tar.bz2/linux-64::networkx==2.1=py36_0
  - https://repo.continuum.io/pkgs/main/linux-64/spyder-3.2.6-> py36_0.tar.bz2/linux-64::spyder==3.2.6=py36_0
py36h4c697fb_0.tar.bz2/linux-64::jdcal==1.3=py36h4c697fb_0
 - defaults/noarch::jupyterlab_server==1.1.4=py_0
 - defaults/linux-64::argh==0.26.2=py37_0
... 

... and more! get this by copy-pasting the "The following packages are causing the inconsistency." message.

then, in python, process this:

exclusions = [line.split(' ')[0] for line in exclusion_text_lines if line !='']
bad_packages_lines = bad_packages_text.split('\n')
bad_packages = [line.split('::')[1].split('==')[0] for line in bad_packages_lines if line!='']
exclusions.append('conda') # make sure!
exclusions.append('tqdm')

finally, construct the life-saving command:

command_line = 'conda remove '
for bad_package in bad_packages:
    if bad_package not in exclusions:
        command_line = f'{command_line} {bad_package}'
command_line   

Since in solving the environment, all the packages on the remove list can be ignored, conda no longer needs to consider their versions, and the process is fast.

Possibly someone can refactor this method to make it easier -- or better yet, upgrade conda to enable quick reset base command.

This worked for me -- it took me longer to write this post than to execute these actions.

Good luck!


Y
Yogendra
conda install anaconda
conda clean --all
conda update --all

fix the problem for me


D
Dijkgraaf

You probably installed anaconda with python 2.7 but later you used python 3.x. Thus, you are getting an error message. In my case, I solved the problem by activating anaconda with python 2.7:

conda create --name py2 python=2.7

Is there a way to determine which python version was used to install conda?
S
Saaru Lindestøkke

To solve this message I had to run conda update --all in my base environment three times after each other. Every time the number of inconsistent packages decreased until conda said:

# All requested packages already installed.

I'm on macOS Big Sur 11.6 using conda version 4.10.3.


h
harabat

To those of us who have miniconda and can't/don't want to install anaconda: the accepted answer works when adapted.

conda install conda conda update --all

Would have commented, but my rep is too low.


T
ThiGre

In my case, none of the above worked. But this did the trick in less than a minute:

1- I downloaded again the lastest installer (miniconda in my case)

2- Run the installer with the -u option:

bash Miniconda3-py39_xxxx-Linux-x86_64.sh -u

3- Answer yes to all questions and let the installer finish

4- Then I could run conda update conda -all

Hope this helps...


V
VojtaK

Try to have a look to the environment management https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html

By using something along the lines

conda create --name astra python=3.5
conda activate astra
conda install -c astra-toolbox astra-toolbox

You can see that you can even specify target python version. Now play with the new packages installed. When unsatisfied, you can always do

conda deactivate
conda env remove -n astra

If you install everything to the base env and something gets broken, then probably better is not to install conda at all and go with default python managing it through pip.


关注公众号,不定期副业成功案例分享
Follow WeChat

Success story sharing

Want to stay one step ahead of the latest teleworks?

Subscribe Now