This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author einarfd
Recipients einarfd
Date 2012-09-28.08:54:59
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1348822499.83.0.756048401766.issue16076@psf.upfronthosting.co.za>
In-reply-to
Content
The xml.etree.ElementTree.Element class is no longer pickleable in Python 3.3.0rc3 . 

This is a regression from Python 3.2 where the Element class was pickleable, while the xml.etree.cElementTree.Element was not. So this is probably related to switching the ElementTree implementation in Python 3.3.

I've looked at the "what's new" documentation in Python 3.3, and there was nothing that indicated that the ElemenTree switchover would give this kind of issues.  

I've run into this issues because I use the multiprocessing module to pass parsed XML documents between processes, and when I can't pickle Element objects. This stops working. 

You can reproduce the issue with the following code:
import pickle
from xml.etree.ElementTree import Element

print(pickle.dumps(Element("foo")))
History
Date User Action Args
2012-09-28 08:54:59einarfdsetrecipients: + einarfd
2012-09-28 08:54:59einarfdsetmessageid: <1348822499.83.0.756048401766.issue16076@psf.upfronthosting.co.za>
2012-09-28 08:54:59einarfdlinkissue16076 messages
2012-09-28 08:54:59einarfdcreate