Bug 447139

Summary: TurboGears version conflict with python-cherrypy
Product: [Fedora] Fedora Reporter: Pieter Krul <pkrul>
Component: TurboGearsAssignee: Luke Macken <lmacken>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: 9CC: a.badger, pfrields
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-05-19 14:36:29 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
New patch for src.rpm
none
Patch to src.rpm none

Description Pieter Krul 2008-05-18 08:13:02 UTC
Description of problem:
Fedora 9 comes with python-cherrypy-3.0.3-2.f9. When you install TurboGears, and
when you try to use it, an error is thrown:

  File "/usr/lib/python2.5/site-packages/pkg_resources.py", line 528, in resolve
    raise VersionConflict(dist,req) # XXX put more info here

When viewing requirements in 
/usr/lib/python2.5/site-packages/TurboGears-1.0.4.4-py2.5.egg-info/requires.txt,
the following is displayed at the top line:
CherryPy >= 2.3.0,<3.0.0alpha

This should read at least CherryPy >= 2.3.0,<=3.0.3, since this version is
actually installed with Fedora 9

Patch #1 from the .src.rpm of TurboGears (TurboGears-1.0.4.4-cherrypyreq.patch),
 is incomplete

Version-Release number of selected component (if applicable):
1.0.4.4-2.fc9

How reproducible:
Always

Steps to Reproduce:
1. yum -y install TurboGears
2. Run python
pkrul@kdc:~ :) > python
Python 2.5.1 (r251:54863, Apr  8 2008, 01:20:16) 
[GCC 4.3.0 20080404 (Red Hat 4.3.0-6)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pkg_resources
>>> pkg_resources.require("TurboGears")

  
Actual results:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.5/site-packages/pkg_resources.py", line 626, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python2.5/site-packages/pkg_resources.py", line 528, in resolve
    raise VersionConflict(dist,req) # XXX put more info here
pkg_resources.VersionConflict: (CherryPy 3.0.3
(/usr/lib/python2.5/site-packages),
Requirement.parse('CherryPy>=2.3.0,<3.0.0alpha'))

Expected results:

[TurboGears 1.0.4.4 (/usr/lib/python2.5/site-packages), TurboKid 1.0.4
(/usr/lib/python2.5/site-packages), TurboJson 1.1.2
(/usr/lib/python2.5/site-packages), TurboCheetah 1.0
(/usr/lib/python2.5/site-packages), simplejson 1.8.1
(/usr/lib/python2.5/site-packages), setuptools 0.6c7
(/usr/lib/python2.5/site-packages), RuleDispatch 0.5a0.dev-r2306
(/usr/lib/python2.5/site-packages), PasteScript 1.6.2
(/usr/lib/python2.5/site-packages), FormEncode 1.0
(/usr/lib/python2.5/site-packages), DecoratorTools 1.7
(/usr/lib/python2.5/site-packages), configobj 4.5.2
(/usr/lib/python2.5/site-packages), CherryPy 3.0.3
(/usr/lib/python2.5/site-packages), kid 0.9.6
(/usr/lib/python2.5/site-packages), RuleDispatch 0.5a0.dev-r2306
(/usr/lib/python2.5/site-packages), Cheetah 2.0.1
(/usr/lib/python2.5/site-packages), PyProtocols 1.0a0dev-r2302
(/usr/lib/python2.5/site-packages), PasteDeploy 1.3.1
(/usr/lib/python2.5/site-packages), Paste 1.6
(/usr/lib/python2.5/site-packages), DecoratorTools 1.7
(/usr/lib/python2.5/site-packages)]

Additional info:

Patch attached. This is required for Freeipa ipa_webgui to run properly

Comment 1 Pieter Krul 2008-05-18 08:13:02 UTC
Created attachment 305836 [details]
New patch for src.rpm

Comment 2 Pieter Krul 2008-05-18 08:16:51 UTC
Created attachment 305837 [details]
Patch to src.rpm

Comment 3 Toshio Ernie Kuratomi 2008-05-19 14:16:44 UTC
TurboGears-1.0.x is not supposed to work with CherryPy-3.x.

The requirements in the TurboGears rpm properly specify the python-cherrypy2
package.

There should have been a note in the release notes explaining that newly created
web applications should be fine but old ones would need to have some changes
made but it looks like we didn't get the correct notes listed :-(  In Fedora 9,
the changes noted here should be necessary for any system with both
python-cherrypy and python-cherrypy2 installed, not just sqlalchemy:
http://docs.fedoraproject.org/release-notes/f9/en_US/sn-WebServers.html#sn-turbogears-apps

If you make those changes and freeipa's webgui doesn't work, I'll be happy to
help you port it.  Just let me know what cvs module I need to checkout and what
command I need to run.

Comment 4 Toshio Ernie Kuratomi 2008-05-19 14:36:29 UTC
Request to update the release notes has been added::
  http://fedoraproject.org/wiki/Docs/Beats/WebServers