summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorRaymond Hettinger <python@rcn.com>2013-05-03 09:24:15 (GMT)
committerRaymond Hettinger <python@rcn.com>2013-05-03 09:24:15 (GMT)
commitb98dcc1f5307789c3c42af701f81147e240b90ff (patch)
tree48af503a1d85a5fe05b75d5e49be258f69fb449d /Lib
parent8e596a765cf323cbd2ba31b15f2939f903d87913 (diff)
downloadcpython-b98dcc1f5307789c3c42af701f81147e240b90ff.zip
cpython-b98dcc1f5307789c3c42af701f81147e240b90ff.tar.gz
cpython-b98dcc1f5307789c3c42af701f81147e240b90ff.tar.bz2
Issue #15535: Fix pickling of named tuples.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/collections/__init__.py4
-rw-r--r--Lib/test/test_collections.py1
2 files changed, 5 insertions, 0 deletions
diff --git a/Lib/collections/__init__.py b/Lib/collections/__init__.py
index 707c53b..9f55a3e 100644
--- a/Lib/collections/__init__.py
+++ b/Lib/collections/__init__.py
@@ -281,6 +281,10 @@ class {typename}(tuple):
'Return self as a plain tuple. Used by copy and pickle.'
return tuple(self)
+ def __getstate__(self):
+ 'Exclude the OrderedDict from pickling'
+ return None
+
{field_defs}
'''
diff --git a/Lib/test/test_collections.py b/Lib/test/test_collections.py
index 8850e8b..af27d22 100644
--- a/Lib/test/test_collections.py
+++ b/Lib/test/test_collections.py
@@ -273,6 +273,7 @@ class TestNamedTuple(unittest.TestCase):
q = loads(dumps(p, protocol))
self.assertEqual(p, q)
self.assertEqual(p._fields, q._fields)
+ self.assertNotIn(b'OrderedDict', dumps(p, protocol))
def test_copy(self):
p = TestNT(x=10, y=20, z=30)