e42facd28f
license update: BSD-3-Clause and GPL-2.0+ See LICENSES.TXT - test.py is GPL licensed (aggregation) OBS-URL: https://build.opensuse.org/request/show/80719 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-lxml?expand=0&rev=35
473 lines
18 KiB
Plaintext
473 lines
18 KiB
Plaintext
-------------------------------------------------------------------
|
|
Fri Sep 2 17:36:33 UTC 2011 - cfarrell@suse.com
|
|
|
|
- license update: BSD-3-Clause and GPL-2.0+
|
|
See LICENSES.TXT - test.py is GPL licensed (aggregation)
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Sep 2 12:08:59 UTC 2011 - saschpe@suse.de
|
|
|
|
- Simpler PDF install
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Sep 2 11:06:52 UTC 2011 - saschpe@suse.de
|
|
|
|
- Build against Cython instead of pyrex
|
|
- Don't repackage source tarball
|
|
- Remove unneeded rpmlint filters
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Aug 30 18:40:26 UTC 2011 - andrea.turrini@gmail.com
|
|
|
|
- Fixed typo in description of python-lxml.spec
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Mar 3 08:37:49 UTC 2011 - saschpe@suse.de
|
|
|
|
- Update to 2.3 (2011-03-03):
|
|
Features added
|
|
* When looking for children, lxml.objectify takes '{}tag' as
|
|
meaning an empty namespace, as opposed to the parent namespace.
|
|
|
|
Bugs fixed
|
|
* When finished reading from a file-like object, the parser
|
|
immediately calls its close() method.
|
|
* When finished parsing, iterparse() immediately closes the input
|
|
file.
|
|
* Work-around for libxml2 bug that can leave the HTML parser in a
|
|
non-functional state after parsing a severly broken document (fixed
|
|
in libxml2 2.7.8).
|
|
* marque tag in HTML cleanup code is correctly named marquee.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Dec 6 13:33:31 UTC 2010 - toms@suse.de
|
|
|
|
- Fixed bnc#657698: Removed dependency of pyxml
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Sep 2 14:46:19 UTC 2010 - alexandre@exatati.com.br
|
|
|
|
- Update to 2.2.8 (2010-09-02):
|
|
Bugs fixed
|
|
* Crash in newer libxml2 versions when moving elements between documents that had attributes on replaced XInclude nodes.
|
|
* Import fix for urljoin in Python 3.1+.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Mar 2 19:50:28 UTC 2010 - toms@suse.de
|
|
|
|
- Update to 2.2.6 (2010-03-02):
|
|
Fixed several Python 3 regressions by building with Cython 0.11.3
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Mar 1 21:56:05 UTC 2010 - toms@suse.de
|
|
|
|
- Updated to 2.2.5 (2010-02-28):
|
|
Features added
|
|
* Support for running XSLT extension elements on the input root
|
|
node (e.g. in a template matching on "/").
|
|
|
|
Bugs fixed
|
|
* Crash in XPath evaluation when reading smart strings from a
|
|
document other than the original context document.
|
|
* Support recent versions of html5lib by not requiring its
|
|
XHTMLParser in htmlparser.py anymore.
|
|
* Manually instantiating the custom element classes in
|
|
lxml.objectify could crash.
|
|
* Invalid XML text characters were not rejected by the API when
|
|
they appeared in unicode strings directly after non-ASCII characters.
|
|
* lxml.html.open_http_urllib() did not work in Python 3.
|
|
* The functions strip_tags() and strip_elements() in lxml.etree
|
|
did not remove all occurrences of a tag in all cases.
|
|
* Crash in XSLT extension elements when the XSLT context
|
|
node is not an element.
|
|
|
|
- Fixed .changes file to match order from factory
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Nov 13 21:50:52 UTC 2009 - toms@suse.de
|
|
|
|
- Updated to 2.2.4 (2009-11-11):
|
|
Features added
|
|
* None
|
|
|
|
Bugs fixed
|
|
* Static build of libxml2/libxslt was broken.
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Oct 30 17:25:06 UTC 2009 - toms@suse.de
|
|
|
|
- Updated to 2.2.3 (2009-10-30):
|
|
Features added
|
|
None
|
|
Bugs fixed
|
|
* The resolve_entities option did not work in the incremental
|
|
feed parser.
|
|
* Looking up and deleting attributes without a namespace could
|
|
hit a namespaced attribute of the same name instead.
|
|
* Late errors during calls to SubElement() (e.g. attribute related
|
|
ones) could leave a partially initialised element in the tree.
|
|
* Modifying trees that contain parsed entity references could result
|
|
in an infinite loop.
|
|
* ObjectifiedElement.__setattr__ created an empty-string child
|
|
element when the attribute value was rejected as a non-unicode/non-ascii string
|
|
* Syntax errors in lxml.cssselect could result in misleading error messages.
|
|
* Invalid syntax in CSS expressions could lead to an infinite loop
|
|
in the parser of lxml.cssselect.
|
|
* CSS special character escapes were not properly handled in lxml.cssselect.
|
|
* CSS Unicode escapes were not properly decoded in lxml.cssselect.
|
|
* Select options in HTML forms that had no explicit value attribute
|
|
were not handled correctly. The HTML standard dictates that their value
|
|
is defined by their text content. This is now supported by lxml.html.
|
|
* XPath raised a TypeError when finding CDATA sections. This is now fully supported.
|
|
* Calling help(lxml.objectify) didn't work at the prompt.
|
|
* The ElementMaker in lxml.objectify no longer defines the default namespaces
|
|
when annotation is disabled.
|
|
* Feed parser failed to honour the 'recover' option on parse errors.
|
|
* Diverting the error logging to Python's logging system was broken.
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Sep 23 17:37:53 CEST 2009 - toms@suse.de
|
|
|
|
- Improved spec file with help from Alexandre D. Rogoski. Thanks!
|
|
(debug_package macro)
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Jul 20 14:04:56 CEST 2009 - toms@suse.de
|
|
|
|
- Updated to 2.2.2 (2009-06-21):
|
|
Features added
|
|
* New helper functions strip_attributes(), strip_elements(),
|
|
strip_tags() in lxml.etree to remove attributes/subtrees/tags
|
|
from a subtree.
|
|
|
|
Bugs fixed
|
|
* Namespace cleanup on subtree insertions could result in missing
|
|
namespace declarations (and potentially crashes) if the element
|
|
defining a namespace was deleted and the namespace was not used
|
|
by the top element of the inserted subtree but only in deeper
|
|
subtrees.
|
|
* Raising an exception from a parser target callback didn't always
|
|
terminate the parser.
|
|
* Only {true, false, 1, 0} are accepted as the lexical representation
|
|
for BoolElement ({True, False, T, F, t, f} not any more),
|
|
restoring lxml <= 2.0 behaviour.
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Jun 03 10:47:00 CEST 2009 - toms@suse.de
|
|
|
|
- Updated to 2.2.1:
|
|
Features added:
|
|
* Injecting default attributes into a document during XML Schema
|
|
validation (also at parse time).
|
|
* Pass huge_tree parser option to disable parser security restrictions
|
|
imposed by libxml2 2.7.
|
|
|
|
Bugs fixed
|
|
* The script for statically building libxml2 and libxslt didn't work in Py3.
|
|
* XMLSchema() also passes invalid schema documents on to libxml2 for
|
|
parsing (which could lead to a crash before release 2.6.24).
|
|
|
|
Full list: http://codespeak.net/lxml/changes-2.2.1.html
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Apr 03 08:41:00 CEST 2009 - toms@suse.de
|
|
|
|
- Merged changes file with old entries
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Apr 02 08:58:00 CEST 2009 - toms@suse.de
|
|
|
|
- Added rpmlintrc source into SPEC file
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Mar 31 08:34:00 CEST 2009 - toms@suse.de
|
|
|
|
- Fixed SPEC file and added PDF source
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Mar 23 12:56:00 CEST 2009 - toms@suse.de
|
|
|
|
* Updated to 2.2 (excerpt):
|
|
See also http://codespeak.net/lxml/changes-2.2.html
|
|
|
|
Features added:
|
|
- Allow lxml.html.diff.htmldiff to accept Element objects,
|
|
not just HTML strings.
|
|
- XSLT.strparam() class method to wrap quoted string parameters
|
|
that require escaping.
|
|
- Support strings and instantiable Element classes as child
|
|
arguments to the constructor of custom Element classes.
|
|
- GZip compression support for serialisation to files and
|
|
file-like objects.
|
|
- Support for standalone flag in XML declaration through
|
|
tree.docinfo.standalone and by passing standalone=True/False
|
|
on serialisation.
|
|
|
|
Bugs fixed:
|
|
- Memory leak in XPath evaluators.
|
|
- Setting the base attribute in lxml.objectify from a unicode
|
|
string failed.
|
|
- Crash when parsing indented XML in one thread and merging
|
|
it with other documents parsed in another thread.
|
|
- Crash when parsing an XML Schema with external imports from
|
|
a filename.
|
|
- iter_links (and related link-rewriting functions) in lxml.html
|
|
would interpret CSS like url("link") incorrectly (treating the
|
|
quotation marks as part of the link).
|
|
- Failing import on systems that have an io module.
|
|
- Potential memory leak on exception handling. This was due
|
|
to a problem in Cython, not lxml itself.
|
|
- Crash when using an XPath evaluator in multiple threads.
|
|
- Fixed missing whitespace before Link:... in lxml.html.diff.
|
|
|
|
Other changes
|
|
- The global error log (which is copied into the exception log)
|
|
is now local to a thread, which fixes some race conditions.
|
|
- More robust error handling on serialisation.
|
|
- Export lxml.html.parse.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Sep 18 10:00:00 CEST 2008 - toms@suse.de
|
|
|
|
- Updated to 2.1.2
|
|
Features added
|
|
* lxml.etree now tries to find the absolute path name of files
|
|
when parsing from a file-like object. This helps custom resolvers
|
|
when resolving relative URLs, as lixbml2 can prepend them with
|
|
the path of the source document.
|
|
|
|
Bugs fixed
|
|
* Memory problem when passing documents between threads.
|
|
* Target parser did not honour the recover option and raised an
|
|
exception instead of calling .close() on the target.
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Jul 30 07:47:00 CEST 2008 - toms@suse.de
|
|
|
|
- Updated to 2.1.1
|
|
Features added:
|
|
* No new features
|
|
Bugs fixed
|
|
* Crash when parsing XSLT stylesheets in a thread and using them
|
|
in another.
|
|
* Encoding problem when including text with ElementInclude under
|
|
Python 3.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Jul 09 16:21:00 CEST 2008 - toms@suse.de
|
|
|
|
- Corrected SPEC file:
|
|
* requires now libxml2 and libxslt
|
|
* Cleaned up spec file, added %{py_requires}
|
|
* Inserted PDF documentation
|
|
- Updated to 2.1:
|
|
Features added
|
|
* Smart strings can be switched off in XPath (smart_string keyword option).
|
|
* lxml.html.rewrite_links() strips links to work around documents with
|
|
whitespace in URL attributes.
|
|
|
|
Bugs fixed
|
|
* Custom resolvers were not used for XMLSchema includes/imports and
|
|
XInclude processing.
|
|
* CSS selector parser dropped remaining expression after a function
|
|
with parameters.
|
|
|
|
- Other changes
|
|
* objectify.enableRecursiveStr() was removed, use objectify.enable_recursive_str()
|
|
instead
|
|
* Speed-up when running XSLTs on documents from other threads
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Jun 20 11:23:00 CEST 2008 - toms@suse.de
|
|
|
|
- Updated to 2.0.7:
|
|
- Features added:
|
|
* Pickling ElementTree objects in lxml.objectify.
|
|
- Bugs fixed:
|
|
* Descending dot-separated classes in CSS selectors were not
|
|
resolved correctly.
|
|
* ElementTree.parse() didn't handle target parser result.
|
|
* Potential threading problem in XInclude.
|
|
* Crash in Element class lookup classes when the __init__()
|
|
method of the super class is not called from Python subclasses.
|
|
- Other changes:
|
|
* Non-ASCII characters in attribute values are no longer escaped on serialisation.
|
|
|
|
- Changes from 2.0.6:
|
|
- Features added:
|
|
* No new features
|
|
- Bugs fixed
|
|
* Incorrect evaluation of el.find("tag[child]").
|
|
* Windows build was broken.
|
|
* Moving a subtree from a document created in one thread into a
|
|
document of another thread could crash when the rest of the
|
|
source document is deleted while the subtree is still in use.
|
|
* Rare crash when serialising to a file object with certain encodings.
|
|
- Other changes:
|
|
* lxml should now build without problems on MacOS-X (2.0.6)
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Wed May 15 08:37:00 CEST 2008 - toms@suse.de
|
|
|
|
- SPEC: Fixed some warnings from rpmlint and removed duplicate doc dir
|
|
- Updated to 2.0.5
|
|
- Features added:
|
|
- No new features
|
|
- Bugs fixed:
|
|
- Resolving to a filename in custom resolvers didn't work.
|
|
- lxml did not honour libxslt's second error state "STOPPED",
|
|
which let some XSLT errors pass silently.
|
|
- Memory leak in Schematron with libxml2 >= 2.6.31.
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Apr 14 07:46:20 CEST 2008 - toms@suse.de
|
|
|
|
- Features added:
|
|
- No new features
|
|
|
|
- Bugs fixed:
|
|
- Hanging thread in conjunction with GTK threading.
|
|
- Crash bug in iterparse when moving elements into other documents.
|
|
- HTML elements' .cssselect() method was broken.
|
|
- ElementTree.find*() didn't accept QName objects
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Mar 28 11:01:26 CET 2008 - toms@suse.de
|
|
|
|
- Split documentation into subpackage python-lxml-doc
|
|
- Updated to 2.0.3
|
|
- Features added
|
|
- soupparser.parse() allows passing keyword arguments on to
|
|
BeautifulSoup.
|
|
- fromstring() method in lxml.html.soupparser.
|
|
|
|
- Bugs fixed:
|
|
- lxml.html.diff didn't treat empty tags properly (e.g., <br>).
|
|
- Handle entity replacements correctly in target parser.
|
|
- Crash when using iterparse() with XML Schema validation.
|
|
- The BeautifulSoup parser (soupparser.py) did not replace entities,
|
|
which made them turn up in text content.
|
|
- Attribute assignment of custom PyTypes in objectify could fail
|
|
to correctly serialise the value to a string.
|
|
|
|
- Other changes
|
|
- lxml.html.ElementSoup was replaced by a new module lxml.html.soupparser
|
|
with a more consistent API. The old module remains for
|
|
compatibility with ElementTree's own ElementSoup module.
|
|
- Setting the XSLT_CONFIG and XML2_CONFIG environment variables at
|
|
build time will let setup.py pick up the xml2-config and xslt-config
|
|
scripts from the supplied path name.
|
|
- Passing --with-xml2-config=/path/to/xml2-config to setup.py will
|
|
override the xml2-config script that is used to determine the
|
|
C compiler options. The same applies for the --with-xslt-config option.
|
|
|
|
- Older changes:
|
|
- see
|
|
http://pypi.python.org/pypi/lxml/2.0.2
|
|
http://pypi.python.org/pypi/lxml/2.0.1
|
|
http://pypi.python.org/pypi/lxml/2.0
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Oct 30 12:03:16 CET 2007 - toms@suse.de
|
|
|
|
- Updated to 1.3.6
|
|
- Bugs fixed
|
|
- Backported decref crash fix from 2.0
|
|
- Well hidden free-while-in-use crash bug in ObjectPath
|
|
|
|
- Other changes
|
|
- The test suites now run gc.collect() in the tearDown() methods.
|
|
While this makes them take a lot longer to run, it also makes
|
|
it easier to link a specific test to garbage collection problems
|
|
that would otherwise appear in later tests.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Aug 30 13:33:22 CEST 2007 - toms@suse.de
|
|
|
|
- Updated to 1.3.4
|
|
- Features added
|
|
- The ElementMaker in lxml.builder now accepts the keyword arguments
|
|
namespace and nsmap to set a namespace and nsmap for the Elements
|
|
it creates.
|
|
- The docinfo on ElementTree objects has new properties internalDTD
|
|
and externalDTD that return a DTD object for the internal or external
|
|
subset of the document respectively.
|
|
- Serialising an ElementTree now includes any internal DTD subsets
|
|
that are part of the document, as well as comments and PIs that are
|
|
siblings of the root node.
|
|
|
|
- Bugs fixed
|
|
- Parsing with the no_network option could fail
|
|
|
|
- Other changes
|
|
- lxml now raises a TagNameWarning about tag names containing ':' instead
|
|
of an Error as 1.3.3 did. The reason is that a number of projects
|
|
currently misuse the previous lack of tag name validation to generate
|
|
namespace prefixes without declaring namespaces. Apart from the danger
|
|
of generating broken XML this way, it also breaks most of the
|
|
namespace-aware tools in XML, including XPath, XSLT and validation.
|
|
lxml 1.3.x will continue to support this bug with a Warning, while lxml
|
|
2.0 will be strict about well-formed tag names (not only regarding ':').
|
|
- Serialising an Element no longer includes its comment and PI siblings
|
|
(only ElementTree serialisation includes them).
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Jul 30 15:10:07 CEST 2007 - toms@suse.de
|
|
|
|
- Updated to 1.3.3
|
|
- Features added:
|
|
- ElementTree compatible parser ETCompatXMLParser strips
|
|
processing instructions and comments while parsing XML
|
|
- Parsers now support stripping PIs (keyword argument 'remove_pis')
|
|
- etree.fromstring() now supports parsing both HTML and XML,
|
|
depending on the parser you pass
|
|
- Support base_url keyword argument in HTML() and XML()
|
|
|
|
- Bugs fixed:
|
|
- Parsing from Python Unicode strings failed on some platforms
|
|
- Element() did not raise an exception on tag names containing ':'
|
|
- Element.getiterator(tag) did not accept Comment and ProcessingInstruction
|
|
as tags. It also accepts Element now.
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Jan 19 13:03:00 CET 2007 - toms@suse.de
|
|
|
|
- Updated to 1.1.2
|
|
- Features added:
|
|
- Data elements in objectify support repr(), which is now used by dump()
|
|
- Source distribution now ships with a patched Pyrex
|
|
- New C-API function makeElement() to create new elements with text, tail, attributes and namespaces
|
|
- Reuse original parser flags for XInclude
|
|
- Simplified support for handling XSLT processing instructions
|
|
|
|
- Bugs fixed:
|
|
- Parser resources were not freed before the next parser run
|
|
- Open files and XML strings returned by Python resolvers were not closed/freed
|
|
- Crash in the IDDict returned by XMLDTDID
|
|
- Copying Comments and ProcessingInstructions failed
|
|
- Memory leak for external URLs in _XSLTProcessingInstruction.parseXSL()
|
|
- Memory leak when garbage collecting tailed root elements
|
|
- HTML script/style content was not propagated to .text
|
|
- Show text xincluded between text nodes correctly in .text and .tail
|
|
- 'integer - objectify.StringElement' operation was not supported
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Dec 1 11:12:37 CET 2006 - toms@suse.de
|
|
|
|
- New package 1.1.2 moved from openSUSE build server
|