[Python-Dev] str(Exception) changed, is that intended? (original) (raw)

Guido van Rossum guido at python.org
Tue Mar 7 23:11:14 CET 2006


On 3/7/06, Barry Warsaw <barry at python.org> wrote:

On Tue, 2006-03-07 at 13:35 -0800, Guido van Rossum wrote:

> IMO it shouldn't be fixed. Classic classes define their str to print > the module name and class name with a dot in between; new-style > classes use the same format as their repr. Making exceptions new-style > classes is going to break a number of things; that's just inevitable. What else do you expect to break? Should we at least try to describe expected breakage in PEP 352?

Anything that depends on the differences in behavior between classic and new-style classes, e.g. multiple inheritance if the inheritance graph contains a diamond, or type(exc) having a specific value (namely, the metaclass for classic classes), or certain broken behaviors (like read-only properties not being really read-only).

It's hard to make a complete list.

-- --Guido van Rossum (home page: http://www.python.org/~guido/)



More information about the Python-Dev mailing list