[lxml-dev] lxml 1.0.2 and 1.1alpha released

Hi everyone, I just released lxml 1.0.2 mainly with bugfixes and 1.1alpha with loads of new features. So I now hope for no further bug reports on 1.0.2, loads of them for 1.1alpha and some beautiful little eggs for both of them, provided by our helpful egg maintainers. Have fun, Stefan Changes in 1.0.2: Features added * Support for setting a custom default Element class as opposed to namespace specific classes (which still override the default class) Bugs fixed * Rare exceptions in Python list functions were not handled * Parsing accepted unicode strings with XML encoding declaration in certain cases * Parsing 8-bit encoded strings from StringIO objects raised an exception * Module function initThread() was removed - useless (and never worked) * XSLT and parser exception messages include the error line number Features added in 1.1alpha: * Module level iterwalk() function as 'iterparse' for trees * ElementTree compatible iterparse() module function * Element.nsmap property returns a mapping of all namespace prefixes known at the Element to their namespace URI * Reentrant threading support in RelaxNG, XMLSchema and XSLT * Threading support in parsers and serializers: o All in-memory operations (tostring, parse(StringIO), etc.) free the GIL o File operations (on file names) free the GIL o Reading from file-like objects frees the GIL and reacquires it for reading o Serialisation to file-like objects is single-threaded (high lock overhead) * Element iteration over XPath axes: o Element.iterdescendants() iterates over the descendants of an element o Element.iterancestors() iterates over the ancestors of an element (from parent to parent) o Element.itersiblings() iterates over either the following or preceding siblings of an element o Element.iterchildren() iterates over the children of an element in either direction o All iterators support the tag keyword argument to restrict the generated elements * Element.getnext() and Element.getprevious() return the direct siblings of an element

Hi again, I forgot that cheeseshop doesn't provide links to non-current packages, so here are the links for one-click access: http://cheeseshop.python.org/pypi/lxml/1.0.2 http://cheeseshop.python.org/pypi/lxml/1.1alpha Stefan
I just released lxml 1.0.2 mainly with bugfixes and 1.1alpha with loads of new features. So I now hope for no further bug reports on 1.0.2, loads of them for 1.1alpha and some beautiful little eggs for both of them, provided by our helpful egg maintainers.
Changes in 1.0.2:
Features added * Support for setting a custom default Element class as opposed to namespace specific classes (which still override the default class) Bugs fixed * Rare exceptions in Python list functions were not handled * Parsing accepted unicode strings with XML encoding declaration in certain cases * Parsing 8-bit encoded strings from StringIO objects raised an exception * Module function initThread() was removed - useless (and never worked) * XSLT and parser exception messages include the error line number
Features added in 1.1alpha:
* Module level iterwalk() function as 'iterparse' for trees * ElementTree compatible iterparse() module function * Element.nsmap property returns a mapping of all namespace prefixes known at the Element to their namespace URI * Reentrant threading support in RelaxNG, XMLSchema and XSLT * Threading support in parsers and serializers: o All in-memory operations (tostring, parse(StringIO), etc.) free the GIL o File operations (on file names) free the GIL o Reading from file-like objects frees the GIL and reacquires it for reading o Serialisation to file-like objects is single-threaded (high lock overhead) * Element iteration over XPath axes: o Element.iterdescendants() iterates over the descendants of an element o Element.iterancestors() iterates over the ancestors of an element (from parent to parent) o Element.itersiblings() iterates over either the following or preceding siblings of an element o Element.iterchildren() iterates over the children of an element in either direction o All iterators support the tag keyword argument to restrict the generated elements * Element.getnext() and Element.getprevious() return the direct siblings of an element
participants (1)
-
Stefan Behnel