Opened 16 years ago

Closed 16 years ago

#1859 defect closed fixed (fixed)

Failure cannot correctly determine the parents of a new-style exception

Reported by: Jean-Paul Calderone Owned by:
Priority: normal Milestone:
Component: core Keywords:
Cc: Branch:


Before Python 2.5, there was no such thing as a new-style exception. In Python 2.5, all exceptions are new-style. Failure needs to handle them.

Change History (4)

comment:1 Changed 16 years ago by Jean-Paul Calderone

(In [17394]) Add new-style exception support to Failure

Refs #1858 Refs #1859 Refs #1867

Change the type-checks against ClassType to use inspect.isclass() instead and change the str() of exception types to a qual().

comment:2 Changed 16 years ago by Jean-Paul Calderone

(In [17395]) Force mtime and atime to be integers, even if the underlying call gives us floats

Refs #1859 Refs #1867

Float atime and mtime values have been available for a while, but the default has been to continue returning integers. In Python 2.5 the default changes to float. This would be nice to exploit, but for now, just preserve the old behavior exactly.

comment:3 Changed 16 years ago by foom

Resolution: fixed
Status: newclosed

(In [17448]) Fix almost all python 2.5 issues.

Merging branches/python-two-point-five-1867.

Authors: mostly exarkun, some jknight Reviewer: jml Closes #1867

In detail:

Fix hashability of three classes in Python 2.5: id() now returns only positive numbers, but no longer always short ints, so returning id(self) as hash breaks. Closes #1842

Truncate mtime and atime floats to be integers in conch's unix sftp server implementation. (They changed to be floats by default in python). The interface is still underspecified. Refs #1860.

Fix Newpb failure handling for new-style exceptions. Use t.p.r.qual to determine exception type names. Closes #1861

Suppress deprecation warning for raising a string exception in test_failure.FailureTestCase.testStringExceptions. Closes #1862

Refactor testPBFailures into multiple test methods to make it easier to debug. Closes #1863

Pass absolute path to interpreter as argv[0] in stdio tests. Using an absolute path lets Python's import machinery figure out what's going on. Closes #1864

Add new-style class support to jelly (absolutely necessary because exceptions are now newstyle classes). Closes #1865

Add new-style exception support to Failure. Closes #1858. Closes #1859.

Fix twisted.python.zipstream to account for the removal of file_offset from the ZipInfo class. Closes #1866.

Use reflect.qual on warning class when logging warnings.

comment:4 Changed 11 years ago by <automation>

Owner: Jean-Paul Calderone deleted
Note: See TracTickets for help on using tickets.