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 flox
Recipients effbot, eli.bendersky, ezio.melotti, flox, scoder
Date 2012-02-10.16:30:10
SpamBayes Score 2.8625307e-09
Marked as misclassified No
Message-id <1328891411.04.0.0153696831269.issue13988@psf.upfronthosting.co.za>
In-reply-to
Content
> If possible I would avoid pyElementTree,

Me too:
 - __name__ and __qualname__ would be less confusing
 - the cElementTree accelerator uses large parts of Python implementation

> ElementTree is different - it's pretty much two separate implementations of the same API.

Not fully separated... there's some python code hidden in the C module.

> From a performance point of view, consider the (by far) common case
> - where _elementtree *is* successfully imported.
> ... for each invocation, the whole import of the Python code has
> to be done, just to reach the overriding import * at the end.

This point is wrong... the _elementtree.c accelerator imports Python ElementTree already.

As you can see on lines 2938 to 2945, the change could lead to an import cycle:
http://hg.python.org/cpython/file/705b56512287/Modules/_elementtree.c#l2938

Trying to sort this out, it already gives me a headache.
I would like to remove the Python bootstrap code from the C module and try to do it differently, in a more standard way.
History
Date User Action Args
2012-02-10 16:30:11floxsetrecipients: + flox, effbot, scoder, ezio.melotti, eli.bendersky
2012-02-10 16:30:11floxsetmessageid: <1328891411.04.0.0153696831269.issue13988@psf.upfronthosting.co.za>
2012-02-10 16:30:10floxlinkissue13988 messages
2012-02-10 16:30:10floxcreate