* Tue Dec 18 2018 Igor Gnatenko - 4.2.5-1- Update to 4.2.5 * Sun Sep 02 2018 Igor Gnatenko - 4.2.4-1- Update to 4.2.4 * Sat Jul 14 2018 Fedora Release Engineering - 4.2.3-2- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Sat Jul 07 2018 Igor Gnatenko - 4.2.3-1- Update to 4.2.3 * Sun Jun 17 2018 Miro Hrončok - 4.2.1-2- Rebuilt for Python 3.7 * Wed Apr 25 2018 Igor Gnatenko - 4.2.1-1- Update to 4.2.1 * Fri Feb 09 2018 Fedora Release Engineering - 4.1.1-2- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Sun Nov 05 2017 Igor Gnatenko - 4.1.1-1- Update to 4.1.1 * Tue Oct 10 2017 Mikolaj Izdebski - 4.0.0-2- Conditionally allow building without Cython * Thu Oct 05 2017 Igor Gnatenko - 4.0.0-1- Update to 4.0.0 * Sat Aug 12 2017 Kevin Fenzi - 3.8.0-1- Update to 3.8.0. Fixes bug #1458529 * Thu Aug 03 2017 Fedora Release Engineering - 3.7.2-4- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Thu Jul 27 2017 Fedora Release Engineering - 3.7.2-3- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Sat Feb 11 2017 Fedora Release Engineering - 3.7.2-2- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Mon Jan 09 2017 Fabio Alessandro Locati - 3.7.2-1- Update to 3.7.2 * Sun Dec 25 2016 Fabio Alessandro Locati - 3.7.1-1- Update to 3.7.1 * Tue Dec 13 2016 Stratakis Charalampos - 3.7.0-2- Rebuild for Python 3.6 * Sun Dec 11 2016 Fabio Alessandro Locati - 3.7.0-1- Update to 3.7.0 * Thu Sep 08 2016 Fabio Alessandro Locati - 3.6.4-1- Update to 3.6.4 * Tue Jul 19 2016 Fedora Release Engineering - 3.4.4-5- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages * Thu Feb 04 2016 Fedora Release Engineering - 3.4.4-4- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Thu Jan 21 2016 Dan Horák - 3.4.4-3- fix conditional * Fri Nov 06 2015 Robert Kuska - 3.4.4-2- Rebuilt for Python3.5 rebuild * Fri Aug 28 2015 Peter Robinson 3.4.4-1- Update to 3.4.4- Use %license, cleanup spec * Thu Jun 18 2015 Fedora Release Engineering - 3.3.6-2- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Fri Aug 29 2014 Jeffrey C. Ollie - 3.3.6-1- 3.3.6 (2014-08-28)- ==================-- Bugs fixed- ------------ * Prevent tree cycle creation when adding Elements as siblings.-- * LP#1361948: crash when deallocating Element siblings without parent.-- * LP#1354652: crash when traversing internally loaded documents in XSLT- extension functions. * Sun Aug 17 2014 Fedora Release Engineering - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Sat Jun 07 2014 Fedora Release Engineering - 3.3.5-3- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Wed May 14 2014 Bohuslav Kabrda - 3.3.5-2- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4 * Mon Apr 28 2014 Jeffrey Ollie - 3.3.5-1- 3.3.5 (2014-04-18)- ==================-- Bugs fixed- ------------ * HTML cleaning could fail to strip javascript links that mix control- characters into the link scheme. * Mon Apr 28 2014 Jeffrey Ollie - 3.3.4-1- 3.3.4 (2014-04-03)- ==================-- Features added- ---------------- * Source line numbers above 65535 are available on Elements when- using libxml2 2.9 or later.-- Bugs fixed- ------------ * lxml.html.fragment_fromstring() failed for bytes input in Py3. * Wed Mar 26 2014 Jeffrey Ollie - 3.3.3-4- Fix macro definition * Wed Mar 26 2014 Jeffrey Ollie - 3.3.3-3- Add python3-cssselect to correct package * Mon Mar 24 2014 Jeffrey Ollie - 3.3.3-3- python3-cssselect is not available on F19 * Mon Mar 24 2014 Jeffrey Ollie - 3.3.3-2- BZ#1075070 add requires and buildrequires for cssselect * Tue Mar 11 2014 Jeffrey Ollie - 3.3.3-1- 3.3.3 (2014-03-04)- ==================-- Bugs fixed- ------------ * LP#1287118: Crash when using Element subtypes with ``__slots__``.-- Other changes- --------------- * The internal classes ``_LogEntry`` and ``_Attrib`` can no longer be- subclassed from Python code. * Tue Mar 11 2014 Alexander Todorov - 3.3.2-2- Add check section #1075070 * Fri Feb 28 2014 Jeffrey Ollie - 3.3.2-1- 3.3.2 (2014-02-26)- ==================-- Bugs fixed- ------------ * 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. * Fri Feb 28 2014 Jeffrey Ollie - 3.3.2-1- 3.3.1 (2014-02-12)- ==================-- Bugs fixed- ------------ * LP#1014290: HTML documents parsed with ``parser.feed()`` failed to find- elements during tag iteration.-- * LP#1273709: Building in PyPy failed due to missing support for- ``PyUnicode_Compare()`` and ``PyByteArray_ *()`` in PyPy\'s C-API.-- * LP#1274413: Compilation in MSVC failed due to missing \"stdint.h\" standard- header file.-- * LP#1274118: iterparse() failed to parse BOM prefixed files. * Mon Jan 27 2014 Jeffrey Ollie - 3.3.0-2- Update Cython requirement to >= 0.20 * Mon Jan 27 2014 Jeffrey Ollie - 3.3.0-1- 3.3.0 (2014-01-26)- ==================-- Features added- ---------------- Bugs fixed- ------------ * The heuristic that distinguishes file paths from URLs was tightened- to produce less false negatives.-- Other changes- ---------------- 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)- =======================-- Features added- ---------------- 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.-- Other changes- ---------------- 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. * Mon Nov 11 2013 Jeffrey Ollie - 3.2.4-1- 3.2.4 (2013-11-07)- ==================-- Bugs fixed- ------------ * Memory leak when creating an XPath evaluator in a thread.-- * 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.-- * LP#1206077: htmldiff discarded whitespace from the output.-- * Compressed plain-text serialisation to file-like objects was broken. * Wed Sep 18 2013 Jeffrey Ollie - 3.2.3-2- Add requirement for on python-cssselect for the python2 version * Sun Jul 28 2013 Jeffrey Ollie - 3.2.3-1- and here\'s a version 3.2.3. The last release accidentally lost the ability- to work on Python 2.4. There are no other changes over 3.2.2.-- 3.2.2 (2013-07-28)- ==================-- Features added- ---------------- Bugs fixed- ------------ * LP#1185701: spurious XMLSyntaxError after finishing iterparse().-- * Crash in lxml.objectify during xsi annotation.-- Other changes- --------------- * Return values of user provided element class lookup methods are now- validated against the type of the XML node they represent to prevent- API class mismatches. * Sun May 12 2013 Jeffrey Ollie - 3.2.1-1- 3.2.1 (2013-05-11)- ==================-- Features added- ---------------- * 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.-- Bugs fixed- ------------ * 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. * Fri May 10 2013 Jeffrey Ollie - 3.2.0-1- 3.2.0 (2013-04-28)- ==================-- Features added- ---------------- Bugs fixed- ------------ * LP#690319: 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.-- 3.1.2 (2013-04-12)- ==================-- Bugs fixed- ------------ * LP#1136509: Passing attributes through the namespace-unaware API of- the sax bridge (i.e. the ``handler.startElement()`` method) failed- with a ``TypeError``. Patch by Mike Bayer.-- * LP#1123074: Fix serialisation error in XSLT output when converting- the result tree to a Unicode string.-- * GH#105: Replace illegal usage of ``xmlBufLength()`` in libxml2 2.9.0- by properly exported API function ``xmlBufUse()``.-- 3.1.1 (2013-03-29)- ==================-- Features added- ---------------- Bugs fixed- ------------ * LP#1160386: Write access to ``lxml.html.FormElement.fields`` raised- an AttributeError in Py3.-- * Illegal memory access during cleanup in incremental xmlfile writer.-- Other changes- --------------- * The externally useless class ``lxml.etree._BaseParser`` was removed- from the module dict. * Fri Mar 08 2013 Jeffrey Ollie - 3.1.0-1- 3.1.0 (2013-02-10)- ==================-- Features added- ---------------- * GH#89: lxml.html.clean allows overriding the set of attributes that it- considers \'safe\'. Patch by Francis Devereux.-- Bugs fixed- ------------ * LP#1104370: ``copy.copy(el.attrib)`` raised an exception. It now returns- a copy of the attributes as a plain Python dict.-- * GH#95: When used with namespace prefixes, the ``el.find *()`` methods- always used the first namespace mapping that was provided for each- path expression instead of using the one that was actually passed- in for the current run.-- * LP#1092521, GH#91: Fix undefined C symbol in Python runtimes compiled- without threading support. Patch by Ulrich Seidl.-- Other changes- ---------------- 3.1beta1 (2012-12-21)- =====================-- Features added- ---------------- * New build-time option ``--with-unicode-strings`` for Python 2 that- makes the API always return Unicode strings for names and text- instead of byte strings for plain ASCII content.-- * New incremental XML file writing API ``etree.xmlfile()``.-- * E factory in lxml.objectify is callable to simplify the creation of- tags with non-identifier names without having to resort to getattr().-- Bugs fixed- ------------ * When starting from a non-namespaced element in lxml.objectify, searching- for a child without explicitly specifying a namespace incorrectly found- namespaced elements with the requested local name, instead of restricting- the search to non-namespaced children.-- * GH#85: Deprecation warnings were fixed for Python 3.x.-- * GH#33: lxml.html.fromstring() failed to accept bytes input in Py3.-- * LP#1080792: Static build of libxml2 2.9.0 failed due to missing file.-- Other changes- --------------- * The externally useless class ``_ObjectifyElementMakerCaller`` was- removed from the module API of lxml.objectify.-- * LP#1075622: lxml.builder is faster for adding text to elements with- many children. Patch by Anders Hammarquist. * Thu Feb 14 2013 Fedora Release Engineering - 3.0.1-2- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Mon Oct 15 2012 Jeffrey Ollie - 3.0.1-1- 3.0.1 (2012-10-14)- Bugs fixed-- * LP#1065924: Element proxies could disappear during garbage collection- in PyPy without proper cleanup.- * GH#71: Failure to work with libxml2 2.6.x.- * LP#1065139: static MacOS-X build failed in Py3. * Wed Oct 10 2012 Jeffrey Ollie - 3.0-1- 3.0 (2012-10-08)- ================-- Features added- ---------------- Bugs fixed- ------------ * End-of-file handling was incorrect in iterparse() when reading from- a low-level C file stream and failed in libxml2 2.9.0 due to its- improved consistency checks.-- Other changes- --------------- * The build no longer uses Cython by default unless the generated C files- are missing. To use Cython, pass the option \"--with-cython\". To ignore- the fatal build error when Cython is required but not available (e.g. to- run special setup.py commands that do not actually run a build), pass- \"--without-cython\".--- 3.0beta1 (2012-09-26)- =====================-- Features added- ---------------- * Python level access to (optional) libxml2 memory debugging features- to simplify debugging of memory leaks etc.-- Bugs fixed- ------------ * Fix a memory leak in XPath by switching to Cython 0.17.1.-- * Some tests were adapted to work with PyPy.-- Other changes- --------------- * The code was adapted to work with the upcoming libxml2 2.9.0 release.--- 3.0alpha2 (2012-08-23)- ======================-- Features added- ---------------- * The .iter() method of elements now accepts tag arguments like \"{ *}name\"- to search for elements with a given local name in any namespace. With- this addition, all combinations of wildcards now work as expected:- \"{ns}name\", \"{}name\", \"{ *}name\", \"{ns} *\", \"{} *\" and \"{ *} *\". Note that- \"name\" is equivalent to \"{}name\", but \" *\" is \"{ *} *\". The same change- applies to the .getiterator(), .itersiblings(), .iterancestors(),- .iterdescendants(), .iterchildren() and .itertext() methods, the- strip_attributes(), strip_elements() and strip_tags() functions as well- as the iterparse() function.-- * C14N allows specifying the inclusive prefixes to be promoted to- top-level during exclusive serialisation.-- Bugs fixed- ------------ * Passing long Unicode strings into the feed() parser interface failed to- read the entire string.-- Other changes- ---------------- 3.0alpha1 (2012-07-31)- ======================-- Features added- ---------------- * Initial support for building in PyPy (through cpyext).-- * DTD objects gained an API that allows read access to their- declarations.-- * xpathgrep.py gained support for parsing line-by-line (e.g.- from grep output) and for surrounding the output with a new root- tag.-- * E-factory in lxml.builder accepts subtypes of known data- types (such as string subtypes) when building elements around them.-- * Tree iteration and iterparse() with a selective tag- argument supports passing a set of tags. Tree nodes will be- returned by the iterators if they match any of the tags.-- Bugs fixed- ------------ * The .find *() methods in lxml.objectify no longer use XPath- internally, which makes them faster in many cases (especially when- short circuiting after a single or couple of elements) and fixes- some behavioural differences compared to lxml.etree. Note that- this means that they no longer support arbitrary XPath expressions- but only the subset that the ElementPath language supports.- The previous implementation was also redundant with the normal- XPath support, which can be used as a replacement.-- * el.find(\' *\') could accidentally return a comment or processing- instruction that happened to be in the wrong spot. (Same for the- other .find *() methods.)-- * The error logging is less intrusive and avoids a global setup where- possible.-- * Fixed undefined names in html5lib parser.-- * xpathgrep.py did not work in Python 3.-- * Element.attrib.update() did not accept an attrib of- another Element as parameter.-- * For subtypes of ElementBase that make the .text or .tail- properties immutable (as in objectify, for example), inserting text- when creating Elements through the E-Factory feature of the class- constructor would fail with an exception, stating that the text- cannot be modified.-- Other changes- ---------------- * The code base was overhauled to properly use \'const\' where the API- of libxml2 and libxslt requests it. This also has an impact on the- public C-API of lxml itself, as defined in etreepublic.pxd, as- well as the provided declarations in the lxml/includes/ directory.- Code that uses these declarations may have to be adapted. On the- plus side, this fixes several C compiler warnings, also for user- code, thus making it easier to spot real problems again.-- * The functionality of \"lxml.cssselect\" was moved into a separate PyPI- package called \"cssselect\". To continue using it, you must install- that package separately. The \"lxml.cssselect\" module is still- available and provides the same interface, provided the \"cssselect\"- package can be imported at runtime.-- * Element attributes passed in as an attrib dict or as keyword- arguments are now sorted by (namespaced) name before being created- to make their order predictable for serialisation and iteration.- Note that adding or deleting attributes afterwards does not take- that order into account, i.e. setting a new attribute appends it- after the existing ones.-- * Several classes that are for internal use only were removed- from the lxml.etree module dict:- _InputDocument, _ResolverRegistry, _ResolverContext, _BaseContext,- _ExsltRegExp, _IterparseContext, _TempStore, _ExceptionContext,- __ContentOnlyElement, _AttribIterator, _NamespaceRegistry,- _ClassNamespaceRegistry, _FunctionNamespaceRegistry,- _XPathFunctionNamespaceRegistry, _ParserDictionaryContext,- _FileReaderContext, _ParserContext, _PythonSaxParserTarget,- _TargetParserContext, _ReadOnlyProxy, _ReadOnlyPIProxy,- _ReadOnlyEntityProxy, _ReadOnlyElementProxy, _OpaqueNodeWrapper,- _OpaqueDocumentWrapper, _ModifyContentOnlyProxy,- _ModifyContentOnlyPIProxy, _ModifyContentOnlyEntityProxy,- _AppendOnlyElementProxy, _SaxParserContext, _FilelikeWriter,- _ParserSchemaValidationContext, _XPathContext,- _XSLTResolverContext, _XSLTContext, _XSLTQuotedStringParam-- * Several internal classes can no longer be inherited from:- _InputDocument, _ResolverRegistry, _ExsltRegExp, _ElementUnicodeResult,- _IterparseContext, _TempStore, _AttribIterator, _ClassNamespaceRegistry,- _XPathFunctionNamespaceRegistry, _ParserDictionaryContext,- _FileReaderContext, _PythonSaxParserTarget, _TargetParserContext,- _ReadOnlyPIProxy, _ReadOnlyEntityProxy, _OpaqueDocumentWrapper,- _ModifyContentOnlyPIProxy, _ModifyContentOnlyEntityProxy,- _AppendOnlyElementProxy, _FilelikeWriter, _ParserSchemaValidationContext,- _XPathContext, _XSLTResolverContext, _XSLTContext,- _XSLTQuotedStringParam, _XSLTResultTree, _XSLTProcessingInstruction * Thu Sep 27 2012 Jeffrey Ollie - 2.3.5-1- Bugs fixed-- * Crash when merging text nodes in element.remove().- * Crash in sax/target parser when reporting empty doctype. * Thu Sep 27 2012 Jeffrey Ollie - 2.3.4-1- Bugs fixed-- * Crash when building an nsmap (Element property) with empty namespace- URIs.- * Crash due to race condition when errors (or user messages) occur during- threaded XSLT processing (or compilation).- * XSLT stylesheet compilation could ignore compilation errors. * Sat Aug 04 2012 David Malcolm - 2.3.3-4- rebuild for https://fedoraproject.org/wiki/Features/Python_3.3 * Fri Aug 03 2012 David Malcolm - 2.3.3-3- remove rhel logic from with_python3 conditional * Sat Jul 21 2012 Fedora Release Engineering - 2.3.3-2- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Thu Jan 05 2012 Jeffrey C. Ollie - 2.3.3-1- 2.3.3 (2012-01-04)- Features added-- * lxml.html.tostring() gained new serialisation options with_tail and- doctype.-- Bugs fixed-- * Fixed a crash when using iterparse() for HTML parsing and requesting- start events.- * Fixed parsing of more selectors in cssselect. Whitespace before pseudo-- elements and pseudo-classes is significant as it is a descendant- combinator. \"E :pseudo\" should parse the same as \"E *:pseudo\", not- \"E:pseudo\". Patch by Simon Sapin.- * lxml.html.diff no longer raises an exception when hitting \'img\' tags- without \'src\' attribute. * Mon Nov 14 2011 Jeffrey C. Ollie - 2.3.2-1- 2.3.2 (2011-11-11)- Features added-- * lxml.objectify.deannotate() has a new boolean option- cleanup_namespaces to remove the objectify namespace declarations- (and generally clean up the namespace declarations) after removing- the type annotations.- * lxml.objectify gained its own SubElement() function as a copy of- etree.SubElement to avoid an otherwise redundant import of- lxml.etree on the user side.-- Bugs fixed-- * Fixed the \"descendant\" bug in cssselect a second time (after a first- fix in lxml 2.3.1). The previous change resulted in a serious- performance regression for the XPath based evaluation of the- translated expression. Note that this breaks the usage of some- of the generated XPath expressions as XSLT location paths that- previously worked in 2.3.1.- * Fixed parsing of some selectors in cssselect. Whitespace after- combinators \">\", \"+\" and \"~\" is now correctly ignored. Previously- it was parsed as a descendant combinator. For example, \"div> .foo\"- was parsed the same as \"div> * .foo\" instead of \"div>.foo\". Patch by- Simon Sapin. * Sun Sep 25 2011 Jeffrey C. Ollie - 2.3.1-1- Features added- ---------------- * New option kill_tags in lxml.html.clean to remove specific- tags and their content (i.e. their whole subtree).-- * pi.get() and pi.attrib on processing instructions to parse- pseudo-attributes from the text content of processing instructions.-- * lxml.get_include() returns a list of include paths that can be- used to compile external C code against lxml.etree. This is- specifically required for statically linked lxml builds when code- needs to compile against the exact same header file versions as lxml- itself.-- * Resolver.resolve_file() takes an additional option- close_file that configures if the file(-like) object will be- closed after reading or not. By default, the file will be closed,- as the user is not expected to keep a reference to it.-- Bugs fixed- ------------ * HTML cleaning didn\'t remove \'data:\' links.-- * The html5lib parser integration now uses the \'official\'- implementation in html5lib itself, which makes it work with newer- releases of the library.-- * In lxml.sax, endElementNS() could incorrectly reject a plain- tag name when the corresponding start event inferred the same plain- tag name to be in the default namespace.-- * When an open file-like object is passed into parse() or- iterparse(), the parser will no longer close it after use. This- reverts a change in lxml 2.3 where all files would be closed. It is- the users responsibility to properly close the file(-like) object,- also in error cases.-- * Assertion error in lxml.html.cleaner when discarding top-level elements.-- * In lxml.cssselect, use the xpath \'A//B\' (short for- \'A/descendant-or-self::node()/B\') instead of \'A/descendant::B\' for the- css descendant selector (\'A B\'). This makes a few edge cases to be- consistent with the selector behavior in WebKit and Firefox, and makes- more css expressions valid location paths (for use in xsl:template- match).-- * In lxml.html, non-selected
\' tag.-- * Using XSLT extension elements around the root of the output document- crashed.-- * ``lxml.cssselect`` did not distinguish between ``x[attr=\"val\"]`` and- ``x [attr=\"val\"]`` (with a space). The latter now matches the- attribute independent of the element.-- * Rewriting multiple links inside of HTML text content could end up- replacing unrelated content as replacements could impact the- reported position of subsequent matches. Modifications are now- simplified by letting the ``iterlinks()`` generator in ``lxml.html``- return links in reversed order if they appear inside the same text- node. Thus, replacements and link-internal modifications no longer- change the position of links reported afterwards.-- * The ``.value`` attribute of ``textarea`` elements in lxml.html did- not represent the complete raw value (including child tags etc.). It- now serialises the complete content on read and replaces the- complete content by a string on write.-- * Target parser didn\'t call ``.close()`` on the target object if- parsing failed. Now it is guaranteed that ``.close()`` will be- called after parsing, regardless of the outcome.-- Other changes- --------------- * Official support for Python 3.1.2 and later.-- * Static MS Windows builds can now download their dependencies- themselves.-- * ``Element.attrib`` no longer uses a cyclic reference back to its- Element object. It therefore no longer requires the garbage- collector to clean up.-- * Static builds include libiconv, in addition to libxml2 and libxslt. * Tue Feb 08 2011 Fedora Release Engineering - 2.2.8-4- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Wed Dec 29 2010 David Malcolm - 2.2.8-3- rebuild for newer python3 * Fri Nov 05 2010 Jeffrey C. Ollie - 2.2.8-2- Rebuild for newer libxml2 * Mon Sep 06 2010 Jeffrey C. Ollie - 2.2.8-1- 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 Aug 24 2010 Jeffrey C. Ollie - 2.2.7-3- Don\'t byte-compile files during install because setup.py doesn\'t properly byte compile for Python version 3.2 * Sun Aug 22 2010 Jeffrey C. Ollie - 2.2.7-2- Rebuild for Python 3.2 * Mon Jul 26 2010 Jeffrey C. Ollie - 2.2.7-1- 2.2.7 (2010-07-24)- Bugs fixed-- * Crash in XSLT when generating text-only result documents with a stylesheet created in a different thread. * Mon Jul 26 2010 David Malcolm - 2.2.6-4- actually add the patch this time * Mon Jul 26 2010 David Malcolm - 2.2.6-3- workaround for 2to3 issue (patch 0; bug 600036) * Thu Jul 22 2010 David Malcolm - 2.2.6-2- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild * Tue Mar 02 2010 Jeffrey C. Ollie - 2.2.6-1- 2.2.6 (2010-03-02)-- Bugs fixed-- * Fixed several Python 3 regressions by building with Cython 0.11.3. * Mon Mar 01 2010 Jeffrey C. Ollie - 2.2.5-1- 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. * Mon Feb 15 2010 Thomas Spura - 2.2.4-2- update to current python3 guidelines- be more explicit in %files- use %global and not %define- create docs subpackage- add stripping 3-byte Byte Order Marker from src/lxml/tests/test_errors.py to get 2to3 to work (dmalcolm)- fixes FTBFS (#564674) * Thu Jan 14 2010 Jeffrey C. Ollie - 2.2.4-1- Update to 2.2.4- Enable Python 3 subpackage * Thu Nov 05 2009 Jeffrey C. Ollie - 2.2.3-3- F-13\'s python build chain must be a little different... * Thu Nov 05 2009 Jeffrey C. Ollie - 2.2.3-2- Add option to build a Python 3 subpackage, original patch by David Malcolm * Fri Oct 30 2009 Jeffrey C. Ollie - 2.2.3-1- 2.2.3 (2009-10-30)- 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. * Sun Jul 26 2009 Fedora Release Engineering - 2.2.2-2- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Sun Jun 21 2009 Jeffrey C. Ollie - 2.2.2-1- 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. * Tue Jun 02 2009 Jeffrey C. Ollie - 2.2.1-1- 2.2.1 (2009-06-02)- 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). * Tue Mar 24 2009 Jeffrey C. Ollie - 2.2-1- 2.2 (2009-03-21)- Features added-- * Support for standalone flag in XML declaration through- tree.docinfo.standalone and by passing standalone=True/False on- serialisation.-- Bugs fixed-- * Crash when parsing an XML Schema with external imports from a- filename. * Fri Feb 27 2009 Jeffrey C. Ollie - 2.2-0.8.beta4- 2.2beta4 (2009-02-27)- Features added-- * 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.-- Bugs fixed-- * Deep-copying an ElementTree copied neither its sibling PIs and- comments nor its internal/external DTD subsets.- * Soupparser failed on broken attributes without values.- * Crash in XSLT when overwriting an already defined attribute using- xsl:attribute.- * Crash bug in exception handling code under Python 3. This was due to- a problem in Cython, not lxml itself.- * lxml.html.FormElement._name() failed for non top-level forms.- * TAG special attribute in constructor of custom Element classes was- evaluated incorrectly.-- Other changes-- * Official support for Python 3.0.1.- * Element.findtext() now returns an empty string instead of None for- Elements without text content. * Thu Feb 26 2009 Fedora Release Engineering - 2.2-0.7.beta3- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Tue Feb 17 2009 Jeffrey C. Ollie - 2.2-0.6.beta3- 2.2beta3 (2009-02-17)- Features added-- * XSLT.strparam() class method to wrap quoted string parameters that- require escaping.-- Bugs fixed-- * Memory leak in XPath evaluators.- * Crash when parsing indented XML in one thread and merging it with- other documents parsed in another thread.- * Setting the base attribute in lxml.objectify from a unicode string- failed.- * Fixes following changes in Python 3.0.1.- * Minor fixes for Python 3.-- 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. * Sun Jan 25 2009 Jeffrey C. Ollie - 2.2-0.5.beta2- 2.2beta2 (2009-01-25)- Bugs fixed-- * Potential memory leak on exception handling. This was due to a- problem in Cython, not lxml itself.- * 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. * Fri Dec 12 2008 Jeffrey C. Ollie - 2.2-0.4.beta1- 2.2beta1 (2008-12-12)- Features added-- * Allow lxml.html.diff.htmldiff to accept Element objects,- not just HTML strings.-- Bugs fixed-- * Crash when using an XPath evaluator in multiple threads.- * Fixed missing whitespace before Link:... in lxml.html.diff.-- Other changes-- * Export lxml.html.parse. * Fri Nov 28 2008 Jeffrey C. Ollie - 2.2-0.3.alpha1- Rebuild for Python 2.6 * Mon Nov 24 2008 Jeffrey C. Ollie - 2.2-0.2.alpha1- Don\'t forget to upload the sources! * Mon Nov 24 2008 Jeffrey C. Ollie - 2.2-0.1.alpha1- 2.2alpha1 (2008-11-23)- Features added-- * Support for XSLT result tree fragments in XPath/XSLT extension- functions.- * QName objects have new properties namespace and localname.- * New options for exclusive C14N and C14N without comments.- * Instantiating a custom Element classes creates a new Element.-- Bugs fixed-- * XSLT didn\'t inherit the parse options of the input document.- * 0-bytes could slip through the API when used inside of Unicode- strings.- * With lxml.html.clean.autolink, links with balanced parenthesis, that- end in a parenthesis, will be linked in their entirety (typical with- Wikipedia links). * Mon Nov 17 2008 Jeffrey C. Ollie - 2.1.3-1- 2.1.3 (2008-11-17)- Bugs fixed-- * Ref-count leaks when lxml enters a try-except statement while an- outside exception lives in sys.exc_ *(). This was due to a problem- in Cython, not lxml itself.- * Parser Unicode decoding errors could get swallowed by other- exceptions.- * Name/import errors in some Python modules.- * Internal DTD subsets that did not specify a system or public ID- were not serialised and did not appear in the docinfo property- of ElementTrees.- * Fix a pre-Py3k warning when parsing from a gzip file in Py2.6.- * Test suite fixes for libxml2 2.7.- * Resolver.resolve_string() did not work for non-ASCII byte strings.- * Resolver.resolve_file() was broken.- * Overriding the parser encoding didn\'t work for many encodings. * Fri Sep 05 2008 Jeffrey C. Ollie - 2.1.2-1- 2.1.2 (2008-09-05)- 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. * Fri Jul 25 2008 Jeffrey C. Ollie - 2.1.1-1- Update to 2.1.1 * Fri Jun 20 2008 Jeffrey C. Ollie - 2.0.7-1- Update to 2.0.7- Update download URL * Sat May 31 2008 Jeffrey C. Ollie - 2.0.6-1- Update to 2.0.6 * Thu May 08 2008 Jeffrey C. Ollie - 2.0.5-1- Update to 2.0.5 * Wed Mar 26 2008 Jeffrey C. Ollie - 2.0.3-1- Update to 2.0.3 * Sat Feb 23 2008 Jeffrey C. Ollie - 2.0.2-1- Update to 2.0.2 * Tue Feb 19 2008 Jeffrey C. Ollie - 2.0.1-1- Update to 2.0.1 * Tue Feb 19 2008 Fedora Release Engineering - 1.3.6-2- Autorebuild for GCC 4.3 * Sun Nov 04 2007 Jeffrey C. Ollie - 1.3.6-1- Update to 1.3.6. * Mon Oct 22 2007 Jeffrey C. Ollie - 1.3.5-1- Update to 1.3.5. * Thu Aug 30 2007 Jeffrey C. Ollie - 1.3.4-1- Update to 1.3.4. * Wed Aug 29 2007 Fedora Release Engineering - 1.3.3-3- Rebuild for selinux ppc32 issue. * Tue Aug 28 2007 Jeffrey C. Ollie - 1.3.3-2- BR python-setuptools-devel * Mon Jul 30 2007 Jeffrey C. Ollie - 1.3.3-1- Update to 1.3.3 * Fri Jan 19 2007 Jeffrey C. Ollie - 1.1.2-1- Update to 1.1.2 * Thu Dec 14 2006 Jason L Tibbitts III - 1.0.3-3- Rebuild for new Python * Sat Sep 16 2006 Shahms E. King 1.0.3-2- Rebuild for FC6 * Thu Aug 17 2006 Shahms E. King 1.0.3-1- Update to new upstream version * Fri Aug 11 2006 Shahms E. King 1.0.2-2- Include, don\'t ghost .pyo files per new guidelines * Fri Jul 07 2006 Shahms E. King 1.0.2-1- Update to new upstream release * Mon Jun 26 2006 Shahms E. King 1.0.1-1- Update to new upstream release * Fri Jun 02 2006 Shahms E. King 1.0-1- Update to new upstream 1.0 release * Wed Apr 26 2006 Shahms E. King 0.9.1-3- Add python-setuptools to BuildRequires- Use dist tag * Wed Apr 26 2006 Shahms E. King 0.9.1-2- Fix summary and description * Tue Apr 18 2006 Shahms E. King 0.9.1-1- update the new upstream version- remove Pyrex build req * Tue Dec 13 2005 Shahms E. King 0.8-1- Initial package