Jason Tackaberry wrote: > On Mon, 2007-02-26 at 11:14 +0100, Benjamin Zores wrote: >> That would be good from GeeXboX point of view (one big dependency >> less) but from what i could remember, Tack told me libxmlé was >> introduced cause 100x faster than python xml. If it takes 2hours to >> parse xmltv fils with python xml than it might worth fixing libxml2 >> instead. > > It's true that when I rewrote the EPG parser to use libxml2 it was _way_ > faster (70 minutes down to 90 seconds). But it wasn't just libxml2 I > changed, it was also the core logic and the use of sqlite.
OK, my test fail. I stopped the test using minidom after 5 seconds because the test was using about 600 MB RAM (and growing) while I only have 512 MB. So minidom does not work. The SAX parser needs to parse the defined dtd I don't have (for epgdata.com this is what I need). So for kaa.epg libxml2 may still be the way to go. But I would prefer other xml parser for other tasks. kaa.epg is the only module with huge xml data. Why does the user need to install libxml2 for kaa.popcorn? Right, because we need libxml2 to compile the cxml file. IMHO the usage of the internal minidom would be much better in that case. > I recently looked at the xml performance of some of the other parsers > (like cElementTree, which the 1.x xmltv parser uses) were actually quite > comparable to libxml2. So maybe use cElementTree. I never tried that. Here is my suggestion: 1. Use minidom for the cxml stuff. It may be slower, but we don't want an extra dependency jsut to be able to install a module. 2. Use libxml2 or cElementTree for kaa.epg. Both are extra deps. Someone need to compare the two, not only speed but also how code written with that looks like. 3. kaa.metadata only deals with very small xml files (bins). So minidom could be ok. Or we choose the same as we use for kaa.epg. Same for kaa.canvas/candy. IMHO we should make _one_ xml parser a requirement for Freevo. The minidom is shipped with Python so it does not count. After trying to create and manipulate a tree with libxml2 I vote for cElementTree without even trying it. It can't be worse (famous last words). Dischi -- In some cultures what I do would be considered normal.
pgps7ZU3X1ZDe.pgp
Description: PGP signature
------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________ Freevo-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freevo-devel
