[Python-checkins] r59967 - in python/trunk: Lib/test/test_structseq.py Misc/ACKS Misc/NEWS Objects/structseq.c
raymond.hettinger
python-checkins at python.org
Tue Jan 15 04:02:37 CET 2008
Author: raymond.hettinger
Date: Tue Jan 15 04:02:37 2008
New Revision: 59967
Modified:
python/trunk/Lib/test/test_structseq.py
python/trunk/Misc/ACKS
python/trunk/Misc/NEWS
python/trunk/Objects/structseq.c
Log:
Issue 1820: structseq objects did not work with the % formatting operator or isinstance(t, tuple).
Orignal patch (without tests) by Leif Walsh.
Modified: python/trunk/Lib/test/test_structseq.py
==============================================================================
--- python/trunk/Lib/test/test_structseq.py (original)
+++ python/trunk/Lib/test/test_structseq.py Tue Jan 15 04:02:37 2008
@@ -26,6 +26,12 @@
for i in xrange(-len(t), len(t)-1):
self.assertEqual(t[i], astuple[i])
+ def test_tuple_subclass(self):
+ # Issue 1820
+ t = time.localtime()
+ s = ('%s ' * len(t)) % t # This used to fail because t was not a tuple subclass
+ self.assert_(isinstance(t, tuple))
+
def test_repr(self):
t = time.gmtime()
self.assert_(repr(t))
Modified: python/trunk/Misc/ACKS
==============================================================================
--- python/trunk/Misc/ACKS (original)
+++ python/trunk/Misc/ACKS Tue Jan 15 04:02:37 2008
@@ -686,6 +686,7 @@
Charles Waldman
Richard Walker
Larry Wall
+Leif Walsh
Greg Ward
Barry Warsaw
Steve Waterbury
Modified: python/trunk/Misc/NEWS
==============================================================================
--- python/trunk/Misc/NEWS (original)
+++ python/trunk/Misc/NEWS Tue Jan 15 04:02:37 2008
@@ -975,6 +975,10 @@
Extension Modules
-----------------
+- Issue 1820: structseq objects did not subclass from tuple so they did
+ not pass isinstance(t, tuple) tests and they could not be passed to
+ the % string formatting operator as an input tuple.
+
- _winreg's HKEY object has gained __enter__ and __exit__ methods to support
the context manager protocol. The _winreg module also gained a new function
``ExpandEnvironmentStrings`` to expand REG_EXPAND_SZ keys.
Modified: python/trunk/Objects/structseq.c
==============================================================================
--- python/trunk/Objects/structseq.c (original)
+++ python/trunk/Objects/structseq.c Tue Jan 15 04:02:37 2008
@@ -460,7 +460,7 @@
structseq_methods, /* tp_methods */
NULL, /* tp_members */
0, /* tp_getset */
- 0, /* tp_base */
+ &PyTuple_Type, /* tp_base */
0, /* tp_dict */
0, /* tp_descr_get */
0, /* tp_descr_set */
More information about the Python-checkins
mailing list