For instance the following is built with bin/buildout -Nvv
...
Getting required 'grokcore.component>=2.5'
required by five.grok 1.3.2.
required by grokcore.viewlet 1.11.
Picked: grokcore.component = 2.5
Getting required 'grokcore.annotation'
required by five.grok 1.3.2.
Picked: grokcore.annotation = 1.3
The constraint, 0.4, is not consistent with the requirement, 'five.localsitemanager>2.0dev'.
While:
Installing instance.
Error: Bad constraint 0.4 five.localsitemanager>2.0dev
The constraint five.localsitemanager>2.0dev
does not seem to be enforced by grokcore.annotation (see https://github.com/zopefoundation/grokcore.annotation/blob/master/setup.py) But how do I find out which egg is actually enforcing this?
I know this is a very old question, but I had the same problem yesterday and my colleague found a way to solve the problem. So I thought I might as well post it here.
All your buildout eggs are either in an eggs
folder in your project or in a .buildout
folder in your home folder, including development eggs. In each egg you'll find a requires.txt
file with the requirements for the egg. This means you can do a find/grep on the .buildout/eggs
folder for the specific constraint to find out which package is enforcing it.
So in your case I would suggest you go to the eggs directory (in my case ~/.buildout/eggs
) and then do:
find .|grep requires.txt|xargs grep 2.0dev
That should find the egg that's enforcing the constraint.
In my case I was upgrading to Django 1.7 and there was one package with the constraint 'Django >= 1.4, < 1.7'
. So executing find .|grep requires.txt|xargs grep 1.7
found the problematic egg.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With