* A new function indent() was added to insert tail whitespace
for pretty-printing an XML tree.
* LP#1857794 Tail text of nodes that get removed from a document
using item deletion disappeared silently instead of sticking with the node
that was removed.
* LP#1840234: The package version number is now available as lxml.__version__
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-lxml?expand=0&rev=135
- version update to 4.4.0
* ``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.
* GH#269: 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.
* bugfixes, see CHANGES.txt
- deleted sources
- lxmldoc-4.3.3.pdf (renamed)
- added sources
+ lxmldoc-4.4.0.pdf
+ world.txt
OBS-URL: https://build.opensuse.org/request/show/720214
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-lxml?expand=0&rev=127
- Update to 4.2.4 (2018-08-03)
+ Features added
* GH#259: Allow using ``pkg-config`` for build configuration.
Patch by Patrick Griffis.
+ Bugs fixed
* LP#1773749, GH#268: Crash when moving an element to another document with
``Element.insert()``.
Patch by Alexander Weggerle.
- Update to 4.2.3
+ Bugs fixed
* Reverted GH#265: lxml links against zlib as a shared library again.
- Update to 4.2.2
+ Bugs fixed
* GH#266: Fix sporadic crash during GC when parse-time schema validation is used
and the parser participates in a reference cycle.
Original patch by Julien Greard.
* GH#265: lxml no longer links against zlib as a shared library, only on static builds.
Patch by Nehal J Wani.
OBS-URL: https://build.opensuse.org/request/show/627950
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-lxml?expand=0&rev=109
* GH#255: ``SelectElement.value`` returns more standard-compliant and
browser-like defaults for non-multi-selects. If no option is selected, the
value of the first option is returned (instead of None). If multiple options
are selected, the value of the last one is returned (instead of that of the
first one). If no options are present (not standard-compliant)
``SelectElement.value`` still returns ``None``.
* GH#261: The ``HTMLParser()`` now supports the ``huge_tree`` option.
Patch by stranac.
* LP#1551797: Some XSLT messages were not captured by the transform error log.
* LP#1737825: Crash at shutdown after an interrupted iterparse run with XMLSchema
validation.
- Add patch python-lxml-assert.patch to pass test fail on threading
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-lxml?expand=0&rev=105
- update to 4.1.1
- ElementPath supports text predicates for current node, like "[.='text']".
- ElementPath allows spaces in predicates.
- Custom Element classes and XPath functions can now be registered with
a decorator rather than explicit dict assignments.
- LP#1722776: Requesting non-Element objects like comments from
a document with PythonElementClassLookup could fail with a TypeError.
OBS-URL: https://build.opensuse.org/request/show/574238
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-lxml?expand=0&rev=103
- update to 3.6.1:
* Separate option ``inline_style`` for Cleaner that only removes ``style``
attributes instead of all styles.
* Windows build support for Python 3.5.
* Exclude ``file`` fields from ``FormElement.form_values`` (as browsers do).
* Try to provide base URL from ``Resolver.resolve_string()``.
* More accurate float serialisation in ``objectify.FloatElement``.
* Repair XSLT error logging.
OBS-URL: https://build.opensuse.org/request/show/419562
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-lxml?expand=0&rev=90
- Drop lxml-dont-depend-on-URL-formatting-in-test.patch, merged upstream
- Update to 3.4.3:
* Expression cache in ElementPath was ignored. Fix by Changaco.
* LP#1426868: Passing a default namespace and a prefixed namespace mapping
as nsmap into ``xmlfile.element()`` raised a ``TypeError``.
* LP#1421927: DOCTYPE system URLs were incorrectly quoted when containing
double quotes. Patch by Olli Pottonen.
* LP#1419354: meta-redirect URLs were incorrectly processed by
``iterlinks()`` if preceded by whitespace.
* LP#1415907: Crash when creating an XMLSchema from a non-root element
of an XML document.
* LP#1369362: HTML cleaning failed when hitting processing instructions
with pseudo-attributes.
* ``CDATA()`` wrapped content was rejected for tail text.
* CDATA sections were not serialised as tail text of the top-level element.
* New ``htmlfile`` HTML generator to accompany the incremental ``xmlfile``
serialisation API. Patch by Burak Arslan.
* ``lxml.sax.ElementTreeContentHandler`` did not initialise its superclass.
OBS-URL: https://build.opensuse.org/request/show/298550
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-lxml?expand=0&rev=80
- Update to version 3.3.2:
- The properties resolvers and version, as well as the methods
set_element_class_lookup() and makeelement(), were lost from iterparse
objects.
- LP#1222132: instances of XMLSchema, Schematron and RelaxNG did not clear
their local error_log before running a validation.
- LP#1238500: lxml.doctestcompare mixed up "expected" and "actual" in
attribute values.
- Some file I/O tests were failing in MS-Windows due to incorrect temp file
usage. Initial patch by Gabi Davar.
- LP#910014: duplicate IDs in a document were not reported by DTD
validation.
- LP#1185332: tostring(method="html") did not use HTML serialisation
semantics for trailing tail text. Initial patch by Sylvain Viollon.
- LP#1281139: .attrib value of Comments lost its mutation methods in 3.3.0.
Even though it is empty and immutable, it should still provide the same
interface as that returned for Elements.
- Run tests during build
OBS-URL: https://build.opensuse.org/request/show/224393
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-lxml?expand=0&rev=73
- update to 3.2.1:
* The methods ``apply_templates()`` and ``process_children()`` of XSLT
extension elements have gained two new boolean options ``elements_only``
and ``remove_blank_text`` that discard either all strings or whitespace-only
strings from the result list.
* When moving Elements to another tree, the namespace cleanup mechanism
no longer drops namespace prefixes from attributes for which it finds
a default namespace declaration, to prevent them from appearing as
unnamespaced attributes after serialisation.
* Returning non-type objects from a custom class lookup method could lead
to a crash.
* Instantiating and using subtypes of Comments and ProcessingInstructions
crashed.
OBS-URL: https://build.opensuse.org/request/show/175226
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-lxml?expand=0&rev=56
- update to 3.2.0:
* Leading whitespace could change the behaviour of the string
parsing functions in ``lxml.html``.
* LP#599318: The string parsing functions in ``lxml.html`` are more robust
in the face of uncommon HTML content like framesets or missing body tags.
Patch by Stefan Seelmann.
* LP#712941: I/O errors while trying to access files with paths that contain
non-ASCII characters could raise ``UnicodeDecodeError`` instead of properly
reporting the ``IOError``.
* LP#673205: Parsing from in-memory strings disabled network access in the
default parser and made subsequent attempts to parse from a URL fail.
* LP#971754: lxml.html.clean appends 'nofollow' to 'rel' attributes instead
of overwriting the current value.
* LP#715687: lxml.html.clean no longer discards scripts that are explicitly
allowed by the user provided whitelist. Patch by Christine Koppelt.
- update to 3.2.0:
* Leading whitespace could change the behaviour of the string
parsing functions in ``lxml.html``.
* LP#599318: The string parsing functions in ``lxml.html`` are more robust
in the face of uncommon HTML content like framesets or missing body tags.
Patch by Stefan Seelmann.
* LP#712941: I/O errors while trying to access files with paths that contain
non-ASCII characters could raise ``UnicodeDecodeError`` instead of properly
reporting the ``IOError``.
* LP#673205: Parsing from in-memory strings disabled network access in the
default parser and made subsequent attempts to parse from a URL fail.
* LP#971754: lxml.html.clean appends 'nofollow' to 'rel' attributes instead
of overwriting the current value.
* LP#715687: lxml.html.clean no longer discards scripts that are explicitly
OBS-URL: https://build.opensuse.org/request/show/173959
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-lxml?expand=0&rev=54