Mon Jan 27 19:08:50 2014 UTC ()
Update to 3.3.0:

3.3.0 (2014-01-26)
==================

Bugs fixed
----------

* The heuristic that distinguishes file paths from URLs was tightened
  to produce less false negatives.

3.3.0beta5 (2014-01-18)
=======================

Features added
--------------

* The PEP 393 unicode parsing support gained a fallback for wchar strings
  which might still be somewhat common on Windows systems.

Bugs fixed
----------

* Several error handling problems were fixed throughout the code base that
  could previously lead to exceptions being silently swallowed or not
  properly reported.

* The C-API function ``appendChild()`` is now deprecated as it does not
  propagate exceptions (its return type is ``void``).  The new function
  ``appendChildToElement()`` was added as a safe replacement.

* Passing a string into ``fromstringlist()`` raises an exception instead of
  parsing the string character by character.

Other changes
-------------

* Document cleanup code was simplified using the new GC features in
  Cython 0.20.

3.3.0beta4 (2014-01-12)
=======================

Bugs fixed
----------

* The (empty) value returned by the ``attrib`` property of Entity and Comment
  objects was mutable.

* Element class lookup wasn't available for the new pull parsers or when using
  a custom parser target.

* Setting Element attributes on instantiation with both the ``attrib`` argument
  and keyword arguments could modify the mapping passed as ``attrib``.

* LP#1266171: DTDs instantiated from internal/external subsets (i.e. through
  the docinfo property) lost their attribute declarations.

Other changes
-------------

* Built with Cython 0.20pre (gitrev 012ae82eb) to prepare support for
  Python 3.4.

3.3.0beta3 (2014-01-02)
=======================

Features added
--------------

* Unicode string parsing was optimised for Python 3.3 (PEP 393).

Bugs fixed
----------

* HTML parsing of Unicode strings could misdecode the input on some platforms.

* Crash in xmlfile() when closing open elements out of order in an error case.

3.3.0beta2 (2013-12-20)
=======================

Features added
--------------

* ``iterparse()`` supports the ``recover`` option.

Bugs fixed
----------

* Crash in ``iterparse()`` for HTML parsing.

* Crash in target parsing with attributes.

Other changes
-------------

* The safety check in the read-only tree implementation (e.g. used by
  ``PythonElementClassLookup``) raises a more appropriate ``ReferenceError``
  for illegal access after tree disposal instead of an ``AssertionError``.
  This should only impact test code that specifically checks the original
  behaviour.

3.3.0beta1 (2013-12-12)
=======================

Features added
--------------

* New option ``handle_failures`` in ``make_links_absolute()`` and
  ``resolve_base_href()`` (lxml.html) that enables ignoring or
  discarding links that fail to parse as URLs.

* New parser classes ``XMLPullParser`` and ``HTMLPullParser`` for
  incremental parsing, as implemented for ElementTree in Python 3.4.

* ``iterparse()`` enables recovery mode by default for HTML parsing
  (``html=True``).

Bugs fixed
----------

* LP#1255132: crash when trying to run validation over non-Element (e.g.
  comment or PI).

* Error messages in the log and in exception messages that originated
  from libxml2 could accidentally be picked up from preceding warnings
  instead of the actual error.

* The ``ElementMaker`` in lxml.objectify did not accept a dict as
  argument for adding attributes to the element it's building. This
  works as in lxml.builder now.

* LP#1228881: ``repr(XSLTAccessControl)`` failed in Python 3.

* Raise ``ValueError`` when trying to append an Element to itself or
  to one of its own descendants, instead of running into an infinite
  loop.

* LP#1206077: htmldiff discarded whitespace from the output.

* Compressed plain-text serialisation to file-like objects was broken.

* lxml.html.formfill: Fix textarea form filling.
  The textarea used to be cleared before the new content was set,
  which removed the name attribute.

Other changes
-------------

* Some basic API classes use freelists internally for faster
  instantiation.  This can speed up some ``iterparse()`` scenarios,
  for example.

* ``iterparse()`` was rewritten to use the new ``*PullParser``
  classes internally instead of being a parser itself.

3.2.5 (2014-01-02)
==================

Bugs fixed
----------

* Crash in xmlfile() when closing open elements out of order in an error case.

* Crash in target parsing with attributes.

* LP#1255132: crash when trying to run validation over non-Element (e.g.
  comment or PI).


(wiz)
diff -r1.21 -r1.22 pkgsrc/textproc/py-lxml/Makefile
diff -r1.12 -r1.13 pkgsrc/textproc/py-lxml/distinfo

cvs diff -r1.21 -r1.22 pkgsrc/textproc/py-lxml/Makefile (expand / switch to unified diff)

--- pkgsrc/textproc/py-lxml/Makefile 2014/01/25 10:30:24 1.21
+++ pkgsrc/textproc/py-lxml/Makefile 2014/01/27 19:08:50 1.22
@@ -1,18 +1,17 @@ @@ -1,18 +1,17 @@
1# $NetBSD: Makefile,v 1.21 2014/01/25 10:30:24 wiz Exp $ 1# $NetBSD: Makefile,v 1.22 2014/01/27 19:08:50 wiz Exp $
2 2
3DISTNAME= lxml-3.2.4 3DISTNAME= lxml-3.3.0
4PKGNAME= ${PYPKGPREFIX}-${DISTNAME} 4PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
5PKGREVISION= 1 
6CATEGORIES= textproc 5CATEGORIES= textproc
7MASTER_SITES= http://lxml.de/files/ 6MASTER_SITES= http://lxml.de/files/
8EXTRACT_SUFX= .tgz 7EXTRACT_SUFX= .tgz
9 8
10MAINTAINER= pkgsrc-users@NetBSD.org 9MAINTAINER= pkgsrc-users@NetBSD.org
11HOMEPAGE= http://lxml.de/ 10HOMEPAGE= http://lxml.de/
12COMMENT= Python binding for libxml2 and libxslt 11COMMENT= Python binding for libxml2 and libxslt
13LICENSE= modified-bsd 12LICENSE= modified-bsd
14 13
15TEST_TARGET= test_inplace 14TEST_TARGET= test_inplace
16 15
17.include "../../lang/python/egg.mk" 16.include "../../lang/python/egg.mk"
18BUILDLINK_API_DEPENDS.libxml2+= libxml2>=2.7.8 17BUILDLINK_API_DEPENDS.libxml2+= libxml2>=2.7.8

cvs diff -r1.12 -r1.13 pkgsrc/textproc/py-lxml/distinfo (expand / switch to unified diff)

--- pkgsrc/textproc/py-lxml/distinfo 2013/11/29 16:54:42 1.12
+++ pkgsrc/textproc/py-lxml/distinfo 2014/01/27 19:08:50 1.13
@@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
1$NetBSD: distinfo,v 1.12 2013/11/29 16:54:42 wiz Exp $ 1$NetBSD: distinfo,v 1.13 2014/01/27 19:08:50 wiz Exp $
2 2
3SHA1 (lxml-3.2.4.tgz) = 89f561f7bc64e0e7f819d255e7665c849c1abd87 3SHA1 (lxml-3.3.0.tgz) = 7cff413526c9e797fd0b8ced37144e5e89ffc66e
4RMD160 (lxml-3.2.4.tgz) = 5579dfc0bd74ded06ff52411c751c0a5ac031b98 4RMD160 (lxml-3.3.0.tgz) = 24c57f6132ee2dcf0dcb4a7586a261e2176cae96
5Size (lxml-3.2.4.tgz) = 3347893 bytes 5Size (lxml-3.3.0.tgz) = 3435082 bytes