Diwaker Gupta wrote:
pkg_resources.VersionConflict: (CherryPy 2.1.0-rc2
(/usr/lib/python2.4/site-packages/CherryPy-2.1.0_rc2-py2.4.egg),
Requirement.parse('CherryPy=2.1.0,!=2.1.0-beta,!=2.1.0-rc1,!=2.1.0-rc2'))
This message says that CherryPy 2.1.0-rc2 conflicts with the specified
requirement, which explicitly excludes 2.1.0-rc2 ('!=2.1.0-rc2').
Delete the conflicting egg
(/usr/lib/python2.4/site-packages/CherryPy-2.1.0_rc2-py2.4.egg) and
then run:
easy_install 'CherryPy=2.1.0,!=2.1.0-beta,!=2.1.0-rc1,!=2.1.0-rc2'
Notice that this is just pasting the requirement from the error message
above (in quotes so the shell won't think the is a redirect).
This problem is being caused by the 2.1.0-rc2 version number, which
setuptools thinks is a post-release patch rc2 of 2.1.0, not a
prerelease release candidate (which would be spelled 2.1.0rc2 or
2.1.0.rc2). As a result, it thinks the egg you have is newer than
the one that's needed, when in fact it's older.
Kevin, Ian: if I may make a suggestion... it might be easiest to fix
this issue in the field by releasing a CherryPy 2.1.1, and making
TurboGears and PasteScript depend on that, rather than trying to get
people to fix their individual installs like this. Meanwhile, I'll
continue doing penance for not having put prominent enough
documentation in the setuptools manual about how version number parsing
works. (It's buried in the pkg_resources docs under Parsing Utilties
at the moment.)