During the porting of Zope2 to python2.5 We are now porting the module Zope2 which was having 4 failures and 1 error. All of these were due to the change in the hierarchy of exception classes. The failures were arised due to the failure of the function 'SetStatus' in / ** /lib/python/ZPublisher/HTTPResponse.py to set the status. In the above function there is one checking if( isinstance(status, types.ClassType) and issubclass(status, Exception)): status = status.__name__ #status is being set here.. in which status is actually the zException class and it is new style class in python2.5 , therefore this condition always fails and the status is set to arbitrary value 500. We tried removing this first condition ( ie using if(issubclass(status, types.ClassType ) ) and it didn't show any new failures or errors in either python2.4 or 2.5 . And the 4 failures also got vanished. We tried to make out the significance of that first checking but couldn't. What is the significance of this checking ? ( so that the code can be edited to adopt the checking in someother way for python2.5 ) Or Can it be just avoided?