pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/textproc/py-lxml py-lxml: updated to 4.4.0
details: https://anonhg.NetBSD.org/pkgsrc/rev/93211b8ffc25
branches: trunk
changeset: 399104:93211b8ffc25
user: adam <adam%pkgsrc.org@localhost>
date: Sat Aug 03 04:21:13 2019 +0000
description:
py-lxml: updated to 4.4.0
4.4.0:
Features added
--------------
* Element.clear() accepts a new keyword argument keep_tail=True to
clear everything but the tail text. This is helpful in some document-style
use cases.
* When creating attributes or namespaces from a dict in Python 3.6+, lxml now
preserves the original insertion order of that dict, instead of always sorting
the items by name. A similar change was made for ElementTree in CPython 3.8.
See https://bugs.python.org/issue34160
* Integer elements in lxml.objectify implement the __index__() special method.
* Read-only elements in XSLT were missing the nsmap property.
Original patch by Jan Pazdziora.
* ElementInclude can now restrict the maximum inclusion depth via a max_depth
argument to prevent content explosion. It is limited to 6 by default.
* The target object of the XMLParser can have start_ns() and end_ns()
callback methods to listen to namespace declarations.
* The TreeBuilder has new arguments comment_factory and pi_factory to
pass factories for creating comments and processing instructions, as well as
flag arguments insert_comments and insert_pis to discard them from the
tree when set to false.
* A C14N 2.0 <https://www.w3.org/TR/xml-c14n2/>_ implementation was added as
etree.canonicalize(), a corresponding C14NWriterTarget class, and
a c14n2 serialisation method.
Bugs fixed
----------
* When writing to file paths that contain the URL escape character '%', the file
path could wrongly be mangled by URL unescaping and thus write to a different
file or directory. Code that writes to file paths that are provided by untrusted
sources, but that must work with previous versions of lxml, should best either
reject paths that contain '%' characters, or otherwise make sure that the path
does not contain maliciously injected '%XX' URL hex escapes for paths like '../'.
* Assigning to Element child slices with negative step could insert the slice at
the wrong position, starting too far on the left.
* Assigning to Element child slices with overly large step size could take very
long, regardless of the length of the actual slice.
* Assigning to Element child slices of the wrong size could sometimes fail to
raise a ValueError (like a list assignment would) and instead assign outside
of the original slice bounds or leave parts of it unreplaced.
* The comment and pi events in iterwalk() were never triggered, and
instead, comments and processing instructions in the tree were reported as
start elements. Also, when walking an ElementTree (as opposed to its root
element), comments and PIs outside of the root element are now reported.
* The RelaxNG compact syntax support was broken with recent versions
of rnc2rng.
* The HTML elements source and track were added to the list
of empty tags in lxml.html.defs.
* Registering a prefix other than "xml" for the XML namespace is now rejected.
* Failing to write XSLT output to a file could raise a misleading exception.
It now raises IOError.
Other changes
-------------
* Support for Python 3.4 was removed.
* When using Element.find*() with prefix-namespace mappings, the empty string
is now accepted to define a default namespace, in addition to the previously
supported None prefix. Empty strings are more convenient since they keep
all prefix keys in a namespace dict strings, which simplifies sorting etc.
* The ElementTree.write_c14n() method has been deprecated in favour of the
long preferred ElementTree.write(f, method="c14n"). It will be removed
in a future release.
diffstat:
textproc/py-lxml/Makefile | 4 ++--
textproc/py-lxml/distinfo | 10 +++++-----
2 files changed, 7 insertions(+), 7 deletions(-)
diffs (28 lines):
diff -r 2d443f3f8911 -r 93211b8ffc25 textproc/py-lxml/Makefile
--- a/textproc/py-lxml/Makefile Fri Aug 02 21:54:56 2019 +0000
+++ b/textproc/py-lxml/Makefile Sat Aug 03 04:21:13 2019 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.62 2019/06/10 07:36:56 adam Exp $
+# $NetBSD: Makefile,v 1.63 2019/08/03 04:21:13 adam Exp $
-DISTNAME= lxml-4.3.4
+DISTNAME= lxml-4.4.0
PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
CATEGORIES= textproc python
MASTER_SITES= ${MASTER_SITE_PYPI:=l/lxml/}
diff -r 2d443f3f8911 -r 93211b8ffc25 textproc/py-lxml/distinfo
--- a/textproc/py-lxml/distinfo Fri Aug 02 21:54:56 2019 +0000
+++ b/textproc/py-lxml/distinfo Sat Aug 03 04:21:13 2019 +0000
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.49 2019/06/10 07:36:56 adam Exp $
+$NetBSD: distinfo,v 1.50 2019/08/03 04:21:13 adam Exp $
-SHA1 (lxml-4.3.4.tar.gz) = efe0594a52ab6e8a05a46e5b5656d255f98b4993
-RMD160 (lxml-4.3.4.tar.gz) = c1e844d01bf2da1707ef7987ca665eaf7d8b0f63
-SHA512 (lxml-4.3.4.tar.gz) = 7349cb4805e538da5b11edcb79fcd09ddedf0d52e50273a4e587f209e6b147b50737c45dcfc8eb3ee8e7be8f99769046f704c5fc8c35cee74d5d22ef72d503ed
-Size (lxml-4.3.4.tar.gz) = 2488557 bytes
+SHA1 (lxml-4.4.0.tar.gz) = 86785557420bb3aa4a0200118eb94ea62054cb0b
+RMD160 (lxml-4.4.0.tar.gz) = 35d18a9c3c68d0e257f546adf03e4e772c83c82c
+SHA512 (lxml-4.4.0.tar.gz) = 21db932bc0897fec0d8b0d7bc71ff8e8b5d447016691b5d438cb7c835a1dfe5c154da44bbbbde59af35faf11a67055e58160ae810ee75ab0759039396bcf2482
+Size (lxml-4.4.0.tar.gz) = 4529799 bytes
SHA1 (patch-setupinfo.py) = 264e934a4e5c095b0a65769798bf94db394d03e1
Home |
Main Index |
Thread Index |
Old Index