On Tue, Feb 21, 2012 at 06:48:11PM +0100, Roman Rakus wrote: > Hi all, > looks like PyXML package is deprecated since python itself provides > xml mechanisms. > When you look deeper, > python's xml provides: > "dom", "parsers", "sax", "etree" > and PyXML provides: > 'dom', 'marshal', 'parsers', 'sax', 'schema', 'utils', 'xpath', 'xslt' > > So, PyXML duplicates dom, parsers and sax (and looks like python's is > in better shape). Is any package using marshall, schema or any other > not in python itself? > > Deprecate PyXML or just remove duplicated parts? > It's not as simple as saying that a library provides something that has the same names as modules in the stdlib, you also have to figure out compatibility and whether removing it will cause any problems for software that Fedora ships. Looking at the sourceforge page, the authors of PyXML are heavily involved in python core development so it's likely that they worked to merge the useful bits of PyXML into the stdlib before they abandoned it: http://sourceforge.net/projects/pyxml/ However, it also looks like PyXML is a collection of works that the sourceforge authors didn't necessarily originate. With that in mind, they may not have been able to get permission of the various original authors to merge a particular module into the python stdlib. However, there may exist independent upstream versions of those modules that would be better to ship than shipping PyXML in those cases. The best way to proceed is likely similar to how I looked at whether it would be okay to retire python-sqlite2: Take all the packages that depend on PyXML and grep through their sources to find where they use the PyXML modules (rpm -ql PyXML shows that everything in PyXML is in an "_xmlplus" python package so you'll see things like "import _xmlplus.dom" and "from _xmlplus import dom". grepping for _xmlplus will probably work). In some cass, you'll likely find this was an old dep and the source no longer uses it. Others may be conditionalized: try: from xml import sax except ImportError: from _xmlplus import sax Testing these packages to know that they behave properly is good but at least you can be confident that the upstream code is intended to work with the stdlib modules instead of the PyXML modules. If you find any code that's using _xmlplus unconditionally, you'll have to write patches to use the stdlib or separate modules. Then test your changes and send the patches upstream. Given the upstream note that PyXML is deprecated and the authors do not intend for people to use it, this category would hopefully be very small. But you won't know until you look. -Toshio
Attachment:
pgpJu1jQRE8H8.pgp
Description: PGP signature
-- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel