From 7f9ad4efca742994c8fa7b4fe8e44e12199dcd97 Mon Sep 17 00:00:00 2001
From: Hyunjee Kim
Date: Thu, 31 Jan 2019 10:53:27 +0900
Subject: [PATCH] Imported Upstream version 3.6.1
Change-Id: I68f7b3ff950d39cf7edc59e659aa85019cbf8274
Signed-off-by: Hyunjee Kim
---
CHANGES.txt | 44 +-
INSTALL.txt | 2 +-
PKG-INFO | 31 +-
buildlibxml.py | 44 +-
doc/FAQ.txt | 2 +-
doc/build.txt | 4 +-
doc/extensions.txt | 2 +-
doc/html/FAQ.html | 26 +-
doc/html/api.html | 24 +-
doc/html/api/abc.ABCMeta-class.html | 2 +-
doc/html/api/api-objects.txt | 14 +-
doc/html/api/class-tree.html | 16 +-
.../api/cssselect.parser.SelectorError-class.html | 2 +-
...cssselect.parser.SelectorSyntaxError-class.html | 2 +-
.../api/cssselect.xpath.ExpressionError-class.html | 2 +-
doc/html/api/cssselect.xpath.XPathExpr-class.html | 2 +-
doc/html/api/deprecated-index.html | 2 +-
doc/html/api/exceptions.AssertionError-class.html | 2 +-
doc/html/api/help.html | 2 +-
doc/html/api/identifier-index-A.html | 2 +-
doc/html/api/identifier-index-B.html | 2 +-
doc/html/api/identifier-index-C.html | 2 +-
doc/html/api/identifier-index-D.html | 2 +-
doc/html/api/identifier-index-E.html | 2 +-
doc/html/api/identifier-index-F.html | 2 +-
doc/html/api/identifier-index-G.html | 2 +-
doc/html/api/identifier-index-H.html | 2 +-
doc/html/api/identifier-index-I.html | 222 +-
doc/html/api/identifier-index-J.html | 2 +-
doc/html/api/identifier-index-K.html | 2 +-
doc/html/api/identifier-index-L.html | 2 +-
doc/html/api/identifier-index-M.html | 2 +-
doc/html/api/identifier-index-N.html | 2 +-
doc/html/api/identifier-index-O.html | 2 +-
doc/html/api/identifier-index-P.html | 2 +-
doc/html/api/identifier-index-Q.html | 2 +-
doc/html/api/identifier-index-R.html | 2 +-
doc/html/api/identifier-index-S.html | 2 +-
doc/html/api/identifier-index-T.html | 1893 +++----
doc/html/api/identifier-index-U.html | 2 +-
doc/html/api/identifier-index-V.html | 2 +-
doc/html/api/identifier-index-W.html | 2 +-
doc/html/api/identifier-index-X.html | 2 +-
doc/html/api/identifier-index-Y.html | 2 +-
doc/html/api/identifier-index-Z.html | 2 +-
doc/html/api/identifier-index-_.html | 2 +-
doc/html/api/identifier-index.html | 2 +-
doc/html/api/lxml-module.html | 2 +-
doc/html/api/lxml-pysrc.html | 2 +-
doc/html/api/lxml.ElementInclude-module.html | 2 +-
doc/html/api/lxml.ElementInclude-pysrc.html | 2 +-
...xml.ElementInclude.FatalIncludeError-class.html | 2 +-
doc/html/api/lxml.builder-module.html | 2 +-
doc/html/api/lxml.builder-pysrc.html | 2 +-
doc/html/api/lxml.builder.ElementMaker-class.html | 2 +-
doc/html/api/lxml.cssselect-module.html | 2 +-
doc/html/api/lxml.cssselect-pysrc.html | 2 +-
doc/html/api/lxml.cssselect.CSSSelector-class.html | 2 +-
.../lxml.cssselect.LxmlHTMLTranslator-class.html | 2 +-
.../api/lxml.cssselect.LxmlTranslator-class.html | 2 +-
doc/html/api/lxml.doctestcompare-module.html | 2 +-
doc/html/api/lxml.doctestcompare-pysrc.html | 2 +-
...ml.doctestcompare.LHTMLOutputChecker-class.html | 2 +-
...xml.doctestcompare.LXMLOutputChecker-class.html | 2 +-
.../lxml.doctestcompare._RestoreChecker-class.html | 2 +-
doc/html/api/lxml.etree-module.html | 28 +-
.../api/lxml.etree.AncestorsIterator-class.html | 2 +-
...ree.AttributeBasedElementClassLookup-class.html | 2 +-
doc/html/api/lxml.etree.C14NError-class.html | 2 +-
doc/html/api/lxml.etree.CDATA-class.html | 2 +-
doc/html/api/lxml.etree.CommentBase-class.html | 2 +-
.../lxml.etree.CustomElementClassLookup-class.html | 2 +-
doc/html/api/lxml.etree.DTD-class.html | 2 +-
doc/html/api/lxml.etree.DTDError-class.html | 2 +-
doc/html/api/lxml.etree.DTDParseError-class.html | 2 +-
.../api/lxml.etree.DTDValidateError-class.html | 2 +-
doc/html/api/lxml.etree.DocInfo-class.html | 2 +-
doc/html/api/lxml.etree.DocumentInvalid-class.html | 2 +-
.../api/lxml.etree.ETCompatXMLParser-class.html | 2 +-
doc/html/api/lxml.etree.ETXPath-class.html | 2 +-
doc/html/api/lxml.etree.ElementBase-class.html | 2 +-
.../api/lxml.etree.ElementChildIterator-class.html | 2 +-
.../api/lxml.etree.ElementClassLookup-class.html | 2 +-
...lxml.etree.ElementDefaultClassLookup-class.html | 2 +-
...lxml.etree.ElementDepthFirstIterator-class.html | 2 +-
...ml.etree.ElementNamespaceClassLookup-class.html | 2 +-
.../api/lxml.etree.ElementTextIterator-class.html | 2 +-
doc/html/api/lxml.etree.EntityBase-class.html | 2 +-
doc/html/api/lxml.etree.Error-class.html | 2 +-
doc/html/api/lxml.etree.ErrorDomains-class.html | 2 +-
doc/html/api/lxml.etree.ErrorLevels-class.html | 2 +-
doc/html/api/lxml.etree.ErrorTypes-class.html | 2 +-
...xml.etree.FallbackElementClassLookup-class.html | 2 +-
doc/html/api/lxml.etree.HTMLParser-class.html | 8 +-
doc/html/api/lxml.etree.HTMLPullParser-class.html | 2 +-
doc/html/api/lxml.etree.LxmlError-class.html | 2 +-
.../api/lxml.etree.LxmlRegistryError-class.html | 2 +-
doc/html/api/lxml.etree.LxmlSyntaxError-class.html | 2 +-
.../lxml.etree.NamespaceRegistryError-class.html | 2 +-
doc/html/api/lxml.etree.PIBase-class.html | 2 +-
doc/html/api/lxml.etree.ParseError-class.html | 2 +-
....etree.ParserBasedElementClassLookup-class.html | 2 +-
doc/html/api/lxml.etree.ParserError-class.html | 2 +-
doc/html/api/lxml.etree.PyErrorLog-class.html | 2 +-
.../lxml.etree.PythonElementClassLookup-class.html | 2 +-
doc/html/api/lxml.etree.QName-class.html | 2 +-
doc/html/api/lxml.etree.RelaxNG-class.html | 2 +-
doc/html/api/lxml.etree.RelaxNGError-class.html | 2 +-
.../api/lxml.etree.RelaxNGErrorTypes-class.html | 2 +-
.../api/lxml.etree.RelaxNGParseError-class.html | 2 +-
.../api/lxml.etree.RelaxNGValidateError-class.html | 2 +-
doc/html/api/lxml.etree.Resolver-class.html | 2 +-
doc/html/api/lxml.etree.Schematron-class.html | 2 +-
doc/html/api/lxml.etree.SchematronError-class.html | 2 +-
.../api/lxml.etree.SchematronParseError-class.html | 2 +-
.../lxml.etree.SchematronValidateError-class.html | 2 +-
.../api/lxml.etree.SerialisationError-class.html | 2 +-
.../api/lxml.etree.SiblingsIterator-class.html | 2 +-
doc/html/api/lxml.etree.TreeBuilder-class.html | 2 +-
doc/html/api/lxml.etree.XInclude-class.html | 2 +-
doc/html/api/lxml.etree.XIncludeError-class.html | 2 +-
doc/html/api/lxml.etree.XMLParser-class.html | 8 +-
doc/html/api/lxml.etree.XMLPullParser-class.html | 2 +-
doc/html/api/lxml.etree.XMLSchema-class.html | 2 +-
doc/html/api/lxml.etree.XMLSchemaError-class.html | 2 +-
.../api/lxml.etree.XMLSchemaParseError-class.html | 2 +-
.../lxml.etree.XMLSchemaValidateError-class.html | 2 +-
doc/html/api/lxml.etree.XMLSyntaxError-class.html | 2 +-
doc/html/api/lxml.etree.XPath-class.html | 2 +-
.../lxml.etree.XPathDocumentEvaluator-class.html | 2 +-
.../lxml.etree.XPathElementEvaluator-class.html | 2 +-
doc/html/api/lxml.etree.XPathError-class.html | 2 +-
doc/html/api/lxml.etree.XPathEvalError-class.html | 2 +-
.../api/lxml.etree.XPathFunctionError-class.html | 2 +-
.../api/lxml.etree.XPathResultError-class.html | 2 +-
.../api/lxml.etree.XPathSyntaxError-class.html | 2 +-
doc/html/api/lxml.etree.XSLT-class.html | 2 +-
.../api/lxml.etree.XSLTAccessControl-class.html | 2 +-
doc/html/api/lxml.etree.XSLTApplyError-class.html | 2 +-
doc/html/api/lxml.etree.XSLTError-class.html | 2 +-
doc/html/api/lxml.etree.XSLTExtension-class.html | 2 +-
.../api/lxml.etree.XSLTExtensionError-class.html | 2 +-
doc/html/api/lxml.etree.XSLTParseError-class.html | 2 +-
doc/html/api/lxml.etree.XSLTSaveError-class.html | 2 +-
doc/html/api/lxml.etree._Attrib-class.html | 2 +-
doc/html/api/lxml.etree._BaseErrorLog-class.html | 2 +-
doc/html/api/lxml.etree._Comment-class.html | 2 +-
doc/html/api/lxml.etree._Document-class.html | 2 +-
doc/html/api/lxml.etree._DomainErrorLog-class.html | 2 +-
doc/html/api/lxml.etree._Element-class.html | 2 +-
.../api/lxml.etree._ElementIterator-class.html | 2 +-
.../lxml.etree._ElementMatchIterator-class.html | 2 +-
.../api/lxml.etree._ElementStringResult-class.html | 2 +-
.../api/lxml.etree._ElementTagMatcher-class.html | 2 +-
doc/html/api/lxml.etree._ElementTree-class.html | 2 +-
.../lxml.etree._ElementUnicodeResult-class.html | 2 +-
doc/html/api/lxml.etree._Entity-class.html | 2 +-
doc/html/api/lxml.etree._ErrorLog-class.html | 2 +-
doc/html/api/lxml.etree._FeedParser-class.html | 2 +-
doc/html/api/lxml.etree._IDDict-class.html | 2 +-
doc/html/api/lxml.etree._ListErrorLog-class.html | 2 +-
doc/html/api/lxml.etree._LogEntry-class.html | 2 +-
.../lxml.etree._ProcessingInstruction-class.html | 2 +-
.../api/lxml.etree._RotatingErrorLog-class.html | 2 +-
.../api/lxml.etree._SaxParserTarget-class.html | 2 +-
.../api/lxml.etree._TargetParserResult-class.html | 2 +-
doc/html/api/lxml.etree._Validator-class.html | 2 +-
.../api/lxml.etree._XPathEvaluatorBase-class.html | 2 +-
...xml.etree._XSLTProcessingInstruction-class.html | 2 +-
doc/html/api/lxml.etree._XSLTResultTree-class.html | 2 +-
doc/html/api/lxml.etree.htmlfile-class.html | 2 +-
doc/html/api/lxml.etree.iterparse-class.html | 2 +-
doc/html/api/lxml.etree.iterwalk-class.html | 2 +-
doc/html/api/lxml.etree.xmlfile-class.html | 2 +-
doc/html/api/lxml.html-module.html | 22 +-
doc/html/api/lxml.html-pysrc.html | 4 +-
doc/html/api/lxml.html.CheckboxGroup-class.html | 2 +-
doc/html/api/lxml.html.CheckboxValues-class.html | 2 +-
doc/html/api/lxml.html.Classes-class.html | 8 +-
doc/html/api/lxml.html.ElementSoup-module.html | 2 +-
doc/html/api/lxml.html.ElementSoup-pysrc.html | 2 +-
doc/html/api/lxml.html.FieldsDict-class.html | 8 +-
doc/html/api/lxml.html.FormElement-class.html | 2 +-
doc/html/api/lxml.html.HTMLParser-class.html | 2 +-
doc/html/api/lxml.html.HtmlComment-class.html | 2 +-
doc/html/api/lxml.html.HtmlElement-class.html | 2 +-
.../lxml.html.HtmlElementClassLookup-class.html | 2 +-
doc/html/api/lxml.html.HtmlEntity-class.html | 2 +-
doc/html/api/lxml.html.HtmlMixin-class.html | 2 +-
.../lxml.html.HtmlProcessingInstruction-class.html | 2 +-
doc/html/api/lxml.html.InputElement-class.html | 2 +-
doc/html/api/lxml.html.InputGetter-class.html | 2 +-
doc/html/api/lxml.html.InputMixin-class.html | 2 +-
doc/html/api/lxml.html.LabelElement-class.html | 2 +-
.../api/lxml.html.MultipleSelectOptions-class.html | 2 +-
doc/html/api/lxml.html.RadioGroup-class.html | 2 +-
doc/html/api/lxml.html.SelectElement-class.html | 2 +-
doc/html/api/lxml.html.TextareaElement-class.html | 2 +-
doc/html/api/lxml.html.XHTMLParser-class.html | 2 +-
doc/html/api/lxml.html._MethodFunc-class.html | 2 +-
doc/html/api/lxml.html.builder-module.html | 2 +-
doc/html/api/lxml.html.builder-pysrc.html | 2 +-
doc/html/api/lxml.html.clean-module.html | 2 +-
doc/html/api/lxml.html.clean-pysrc.html | 1587 +++---
doc/html/api/lxml.html.clean.Cleaner-class.html | 14 +-
doc/html/api/lxml.html.defs-module.html | 2 +-
doc/html/api/lxml.html.defs-pysrc.html | 2 +-
doc/html/api/lxml.html.diff-module.html | 6 +-
doc/html/api/lxml.html.diff-pysrc.html | 2 +-
doc/html/api/lxml.html.diff.DEL_END-class.html | 2 +-
doc/html/api/lxml.html.diff.DEL_START-class.html | 2 +-
...html.diff.InsensitiveSequenceMatcher-class.html | 2 +-
doc/html/api/lxml.html.diff.NoDeletes-class.html | 2 +-
doc/html/api/lxml.html.diff.href_token-class.html | 2 +-
doc/html/api/lxml.html.diff.tag_token-class.html | 2 +-
doc/html/api/lxml.html.diff.token-class.html | 2 +-
doc/html/api/lxml.html.formfill-module.html | 2 +-
doc/html/api/lxml.html.formfill-pysrc.html | 2 +-
...ml.html.formfill.DefaultErrorCreator-class.html | 2 +-
.../api/lxml.html.formfill.FormNotFound-class.html | 2 +-
doc/html/api/lxml.html.html5parser-module.html | 2 +-
doc/html/api/lxml.html.html5parser-pysrc.html | 2 +-
.../lxml.html.html5parser.HTMLParser-class.html | 2 +-
.../lxml.html.html5parser.XHTMLParser-class.html | 2 +-
doc/html/api/lxml.html.soupparser-module.html | 2 +-
doc/html/api/lxml.html.soupparser-pysrc.html | 2 +-
.../api/lxml.html.soupparser._PseudoTag-class.html | 2 +-
doc/html/api/lxml.html.usedoctest-module.html | 2 +-
doc/html/api/lxml.html.usedoctest-pysrc.html | 2 +-
doc/html/api/lxml.includes-module.html | 2 +-
doc/html/api/lxml.includes-pysrc.html | 2 +-
doc/html/api/lxml.isoschematron-module.html | 2 +-
doc/html/api/lxml.isoschematron-pysrc.html | 2 +-
.../api/lxml.isoschematron.Schematron-class.html | 2 +-
doc/html/api/lxml.objectify-module.html | 6 +-
doc/html/api/lxml.objectify.BoolElement-class.html | 2 +-
.../api/lxml.objectify.ElementMaker-class.html | 2 +-
.../api/lxml.objectify.FloatElement-class.html | 2 +-
doc/html/api/lxml.objectify.IntElement-class.html | 2 +-
doc/html/api/lxml.objectify.LongElement-class.html | 2 +-
doc/html/api/lxml.objectify.NoneElement-class.html | 2 +-
.../api/lxml.objectify.NumberElement-class.html | 2 +-
doc/html/api/lxml.objectify.ObjectPath-class.html | 2 +-
...xml.objectify.ObjectifiedDataElement-class.html | 2 +-
.../lxml.objectify.ObjectifiedElement-class.html | 2 +-
...bjectify.ObjectifyElementClassLookup-class.html | 2 +-
doc/html/api/lxml.objectify.PyType-class.html | 15 +-
.../api/lxml.objectify.StringElement-class.html | 2 +-
doc/html/api/lxml.pyclasslookup-module.html | 2 +-
doc/html/api/lxml.pyclasslookup-pysrc.html | 2 +-
doc/html/api/lxml.sax-module.html | 2 +-
doc/html/api/lxml.sax-pysrc.html | 2 +-
.../lxml.sax.ElementTreeContentHandler-class.html | 2 +-
.../api/lxml.sax.ElementTreeProducer-class.html | 2 +-
doc/html/api/lxml.sax.SaxError-class.html | 2 +-
doc/html/api/lxml.tests-module.html | 2 +-
doc/html/api/lxml.tests-pysrc.html | 2 +-
doc/html/api/lxml.tests.common_imports-module.html | 2 +-
doc/html/api/lxml.tests.common_imports-pysrc.html | 2 +-
....tests.common_imports.HelperTestCase-class.html | 2 +-
...l.tests.common_imports.LargeFileLike-class.html | 2 +-
....common_imports.LargeFileLikeUnicode-class.html | 2 +-
...l.tests.common_imports.SillyFileLike-class.html | 2 +-
.../api/lxml.tests.dummy_http_server-module.html | 2 +-
.../api/lxml.tests.dummy_http_server-pysrc.html | 2 +-
...mmy_http_server.HTTPRequestCollector-class.html | 2 +-
...ml.tests.dummy_http_server.WebServer-class.html | 2 +-
...ts.dummy_http_server._RequestHandler-class.html | 2 +-
doc/html/api/lxml.tests.selftest-module.html | 2 +-
doc/html/api/lxml.tests.selftest-pysrc.html | 2 +-
doc/html/api/lxml.tests.selftest2-module.html | 2 +-
doc/html/api/lxml.tests.selftest2-pysrc.html | 2 +-
doc/html/api/lxml.tests.test_builder-module.html | 2 +-
doc/html/api/lxml.tests.test_builder-pysrc.html | 2 +-
...l.tests.test_builder.BuilderTestCase-class.html | 2 +-
.../api/lxml.tests.test_classlookup-module.html | 2 +-
.../api/lxml.tests.test_classlookup-pysrc.html | 2 +-
...test_classlookup.ClassLookupTestCase-class.html | 2 +-
...tests.test_classlookup.ProxyTestCase-class.html | 2 +-
doc/html/api/lxml.tests.test_css-module.html | 2 +-
doc/html/api/lxml.tests.test_css-pysrc.html | 2 +-
.../api/lxml.tests.test_css.CSSTestCase-class.html | 2 +-
.../api/lxml.tests.test_doctestcompare-module.html | 2 +-
.../api/lxml.tests.test_doctestcompare-pysrc.html | 2 +-
...st_doctestcompare.DoctestCompareTest-class.html | 2 +-
...tests.test_doctestcompare.DummyInput-class.html | 2 +-
doc/html/api/lxml.tests.test_dtd-module.html | 2 +-
doc/html/api/lxml.tests.test_dtd-pysrc.html | 2 +-
...lxml.tests.test_dtd.ETreeDtdTestCase-class.html | 2 +-
.../api/lxml.tests.test_elementpath-module.html | 2 +-
.../api/lxml.tests.test_elementpath-pysrc.html | 2 +-
...elementpath.EtreeElementPathTestCase-class.html | 2 +-
.../api/lxml.tests.test_elementtree-module.html | 2 +-
.../api/lxml.tests.test_elementtree-pysrc.html | 2 +-
...est_elementtree.CElementTreeTestCase-class.html | 2 +-
...s.test_elementtree.ETreePullTestCase-class.html | 2 +-
...tests.test_elementtree.ETreeTestCase-class.html | 2 +-
...test_elementtree.ElementTreeTestCase-class.html | 2 +-
....test_elementtree._ETreeTestCaseBase-class.html | 2 +-
....test_elementtree._XMLPullParserTest-class.html | 2 +-
doc/html/api/lxml.tests.test_errors-module.html | 2 +-
doc/html/api/lxml.tests.test_errors-pysrc.html | 2 +-
...lxml.tests.test_errors.ErrorTestCase-class.html | 2 +-
doc/html/api/lxml.tests.test_etree-module.html | 2 +-
doc/html/api/lxml.tests.test_etree-pysrc.html | 2 +-
...l.tests.test_etree.ETreeC14NTestCase-class.html | 2 +-
...l.tests.test_etree.ETreeErrorLogTest-class.html | 2 +-
...l.tests.test_etree.ETreeOnlyTestCase-class.html | 2 +-
....tests.test_etree.ETreeWriteTestCase-class.html | 2 +-
...sts.test_etree.ETreeXIncludeTestCase-class.html | 2 +-
...ts.test_etree.ElementIncludeTestCase-class.html | 2 +-
...l.tests.test_etree.XMLPullParserTest-class.html | 2 +-
...l.tests.test_etree._XIncludeTestCase-class.html | 2 +-
.../api/lxml.tests.test_htmlparser-module.html | 2 +-
doc/html/api/lxml.tests.test_htmlparser-pysrc.html | 2 +-
...s.test_htmlparser.HtmlParserTestCase-class.html | 2 +-
doc/html/api/lxml.tests.test_http_io-module.html | 2 +-
doc/html/api/lxml.tests.test_http_io-pysrc.html | 2 +-
...ml.tests.test_http_io.HttpIOTestCase-class.html | 2 +-
...lxml.tests.test_incremental_xmlfile-module.html | 2 +-
.../lxml.tests.test_incremental_xmlfile-pysrc.html | 2 +-
...ental_xmlfile.BytesIOXmlFileTestCase-class.html | 2 +-
...incremental_xmlfile.HtmlFileTestCase-class.html | 2 +-
...mlfile.SimpleFileLikeXmlFileTestCase-class.html | 2 +-
...leLikeXmlFileTestCase.SimpleFileLike-class.html | 2 +-
...ntal_xmlfile.TempPathXmlFileTestCase-class.html | 2 +-
...remental_xmlfile.TempXmlFileTestCase-class.html | 2 +-
...emental_xmlfile._XmlFileTestCaseBase-class.html | 2 +-
doc/html/api/lxml.tests.test_io-module.html | 2 +-
doc/html/api/lxml.tests.test_io-pysrc.html | 2 +-
.../lxml.tests.test_io.ETreeIOTestCase-class.html | 2 +-
....tests.test_io.ElementTreeIOTestCase-class.html | 2 +-
.../lxml.tests.test_io._IOTestCaseBase-class.html | 2 +-
.../api/lxml.tests.test_isoschematron-module.html | 2 +-
.../api/lxml.tests.test_isoschematron-pysrc.html | 2 +-
...chematron.ETreeISOSchematronTestCase-class.html | 2 +-
doc/html/api/lxml.tests.test_nsclasses-module.html | 2 +-
doc/html/api/lxml.tests.test_nsclasses-pysrc.html | 2 +-
...lasses.ETreeNamespaceClassesTestCase-class.html | 2 +-
...NamespaceClassesTestCase.bluff_class-class.html | 2 +-
...mespaceClassesTestCase.default_class-class.html | 2 +-
...eNamespaceClassesTestCase.maeh_class-class.html | 2 +-
doc/html/api/lxml.tests.test_objectify-module.html | 4 +-
doc/html/api/lxml.tests.test_objectify-pysrc.html | 4430 +++++++--------
...sts.test_objectify.ObjectifyTestCase-class.html | 82 +-
.../api/lxml.tests.test_pyclasslookup-module.html | 2 +-
.../api/lxml.tests.test_pyclasslookup-pysrc.html | 2 +-
..._pyclasslookup.PyClassLookupTestCase-class.html | 2 +-
doc/html/api/lxml.tests.test_relaxng-module.html | 2 +-
doc/html/api/lxml.tests.test_relaxng-pysrc.html | 2 +-
...ts.test_relaxng.ETreeRelaxNGTestCase-class.html | 2 +-
....test_relaxng.RelaxNGCompactTestCase-class.html | 2 +-
doc/html/api/lxml.tests.test_sax-module.html | 2 +-
doc/html/api/lxml.tests.test_sax-pysrc.html | 2 +-
...lxml.tests.test_sax.ETreeSaxTestCase-class.html | 2 +-
.../api/lxml.tests.test_schematron-module.html | 2 +-
doc/html/api/lxml.tests.test_schematron-pysrc.html | 2 +-
...t_schematron.ETreeSchematronTestCase-class.html | 2 +-
doc/html/api/lxml.tests.test_threading-module.html | 2 +-
doc/html/api/lxml.tests.test_threading-pysrc.html | 2 +-
...est_threading.ThreadPipelineTestCase-class.html | 2 +-
...ipelineTestCase.ParseAndExtendWorker-class.html | 6 +-
...ipelineTestCase.ParseAndInjectWorker-class.html | 6 +-
...g.ThreadPipelineTestCase.ParseWorker-class.html | 6 +-
...ThreadPipelineTestCase.ReverseWorker-class.html | 2 +-
....ThreadPipelineTestCase.RotateWorker-class.html | 2 +-
...readPipelineTestCase.SerialiseWorker-class.html | 2 +-
...ding.ThreadPipelineTestCase.Validate-class.html | 2 +-
...eading.ThreadPipelineTestCase.Worker-class.html | 2 +-
...sts.test_threading.ThreadingTestCase-class.html | 2 +-
doc/html/api/lxml.tests.test_unicode-module.html | 2 +-
doc/html/api/lxml.tests.test_unicode-pysrc.html | 2 +-
...tests.test_unicode.EncodingsTestCase-class.html | 2 +-
...l.tests.test_unicode.UnicodeTestCase-class.html | 2 +-
doc/html/api/lxml.tests.test_xmlschema-module.html | 2 +-
doc/html/api/lxml.tests.test_xmlschema-pysrc.html | 2 +-
...hema.ETreeXMLSchemaResolversTestCase-class.html | 2 +-
...emaResolversTestCase.simple_resolver-class.html | 2 +-
...est_xmlschema.ETreeXMLSchemaTestCase-class.html | 2 +-
.../api/lxml.tests.test_xpathevaluator-module.html | 4 +-
.../api/lxml.tests.test_xpathevaluator-pysrc.html | 2 +-
...hevaluator.ETreeETXPathClassTestCase-class.html | 2 +-
...athevaluator.ETreeXPathClassTestCase-class.html | 2 +-
...athevaluator.ETreeXPathExsltTestCase-class.html | 2 +-
...st_xpathevaluator.ETreeXPathTestCase-class.html | 2 +-
doc/html/api/lxml.tests.test_xslt-module.html | 2 +-
doc/html/api/lxml.tests.test_xslt-pysrc.html | 5192 ++++++++---------
...l.tests.test_xslt.ETreeEXSLTTestCase-class.html | 2 +-
...est_xslt.ETreeXSLTExtElementTestCase-class.html | 2 +-
...s.test_xslt.ETreeXSLTExtFuncTestCase-class.html | 2 +-
...ml.tests.test_xslt.ETreeXSLTTestCase-class.html | 2 +-
...lxml.tests.test_xslt.Py3XSLTTestCase-class.html | 2 +-
doc/html/api/lxml.usedoctest-module.html | 2 +-
doc/html/api/lxml.usedoctest-pysrc.html | 2 +-
doc/html/api/mimetools.Message-class.html | 2 +-
doc/html/api/module-tree.html | 2 +-
doc/html/api/str-class.html | 2 +-
doc/html/api/xml.etree.ElementTree-module.html | 14 +-
doc/html/api/xml.etree.ElementTree-pysrc.html | 2 +-
.../api/xml.etree.ElementTree.Element-class.html | 2 +-
.../xml.etree.ElementTree.ElementTree-class.html | 2 +-
.../xml.etree.ElementTree.ParseError-class.html | 2 +-
.../api/xml.etree.ElementTree.QName-class.html | 2 +-
.../xml.etree.ElementTree.TreeBuilder-class.html | 2 +-
.../api/xml.etree.ElementTree.XMLParser-class.html | 2 +-
...etree.ElementTree._IterParseIterator-class.html | 2 +-
...etree.ElementTree._SimpleElementPath-class.html | 2 +-
doc/html/build.html | 28 +-
doc/html/capi.html | 24 +-
.../{changes-3.6.0.html => changes-3.6.1.html} | 709 +--
doc/html/compatibility.html | 24 +-
doc/html/credits.html | 24 +-
doc/html/cssselect.html | 24 +-
doc/html/element_classes.html | 24 +-
doc/html/elementsoup.html | 24 +-
doc/html/extensions.html | 26 +-
doc/html/html5parser.html | 26 +-
doc/html/index.html | 33 +-
doc/html/installation.html | 26 +-
doc/html/intro.html | 24 +-
doc/html/lxml-source-howto.html | 26 +-
doc/html/lxmlhtml.html | 26 +-
doc/html/objectify.html | 28 +-
doc/html/parsing.html | 24 +-
doc/html/performance.html | 26 +-
doc/html/resolvers.html | 24 +-
doc/html/sax.html | 26 +-
doc/html/sitemap.html | 20 +-
doc/html/style.css | 106 +-
doc/html/tutorial.html | 26 +-
doc/html/validation.html | 26 +-
doc/html/xpathxslt.html | 24 +-
doc/html5parser.txt | 2 +-
doc/lxml-source-howto.txt | 2 +-
doc/lxmlhtml.txt | 2 +-
doc/main.txt | 10 +-
doc/memorymanagement.txt | 2 +-
doc/mkhtml.py | 58 +-
doc/objectify.txt | 4 +-
doc/performance.txt | 2 +-
doc/sax.txt | 2 +-
doc/tutorial.txt | 2 +-
doc/validation.txt | 2 +-
src/lxml.egg-info/PKG-INFO | 31 +-
src/lxml.egg-info/SOURCES.txt | 2 +-
src/lxml/html/__init__.py | 2 +-
src/lxml/html/clean.py | 17 +-
src/lxml/html/tests/test_clean.txt | 23 +-
src/lxml/html/tests/test_forms.txt | 2 +
src/lxml/includes/lxml-version.h | 2 +-
src/lxml/includes/xmlparser.pxd | 1 +
src/lxml/includes/xslt.pxd | 6 +-
src/lxml/lxml.etree.c | 5879 ++++++++++----------
src/lxml/lxml.etree.h | 2 +-
src/lxml/lxml.etree_api.h | 2 +-
src/lxml/lxml.objectify.c | 3484 ++++++------
src/lxml/lxml.objectify.pyx | 15 +-
src/lxml/parser.pxi | 15 +-
src/lxml/tests/test_objectify.py | 44 +
src/lxml/tests/test_xslt.py | 93 +-
src/lxml/xmlerror.pxi | 10 +
version.txt | 2 +-
462 files changed, 13383 insertions(+), 12263 deletions(-)
rename doc/html/{changes-3.6.0.html => changes-3.6.1.html} (98%)
diff --git a/CHANGES.txt b/CHANGES.txt
index 9c911f2..83a491f 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -2,24 +2,56 @@
lxml changelog
==============
+3.6.1 (2016-07-24)
+==================
+
+Features added
+--------------
+
+* GH#180: Separate option ``inline_style`` for Cleaner that only removes ``style``
+ attributes instead of all styles. Patch by Christian Pedersen.
+
+* GH#196: Windows build support for Python 3.5. Contribution by Maximilian Hils.
+
+Bugs fixed
+----------
+
+* GH#199: Exclude ``file`` fields from ``FormElement.form_values`` (as browsers do).
+ Patch by Tomas Divis.
+
+* GH#198, LP#1568167: Try to provide base URL from ``Resolver.resolve_string()``.
+ Patch by Michael van Tellingen.
+
+* GH#191: More accurate float serialisation in ``objectify.FloatElement``.
+ Patch by Holger Joukl.
+
+* LP#1551797: Repair XSLT error logging. Patch by Marcus Brinkmann.
+
+
3.6.0 (2016-03-17)
==================
-* GH#189: Static builds honour FTP proxy configurations when downloading
- the external libs. Patch by Youhei Sakurai.
+Features added
+--------------
* GH#187: Now supports (only) version 5.x and later of PyPy.
Patch by Armin Rigo.
+* GH#181: Direct support for ``.rnc`` files in `RelaxNG()` if ``rnc2rng``
+ is installed. Patch by Dirkjan Ochtman.
+
+Bugs fixed
+----------
+
+* GH#189: Static builds honour FTP proxy configurations when downloading
+ the external libs. Patch by Youhei Sakurai.
+
* GH#186: Soupparser failed to process entities in Python 3.x.
Patch by Duncan Morris.
-* GH#185: Rare encoding related `TypeError` on import was fixed.
+* GH#185: Rare encoding related ``TypeError`` on import was fixed.
Patch by Petr Demin.
-* GH#181: Direct support for `.rnc` files in `RelaxNG()` if `rnc2rng`
- is installed. Patch by Dirkjan Ochtman.
-
3.5.0 (2015-11-13)
==================
diff --git a/INSTALL.txt b/INSTALL.txt
index 84059d9..8508fea 100644
--- a/INSTALL.txt
+++ b/INSTALL.txt
@@ -216,7 +216,7 @@ Source builds on MacOS-X
If you are not using macports or want to use a more recent lxml
release, you have to build it yourself. While the pre-installed system
libraries of libxml2 and libxslt are less outdated in recent MacOS-X
-versions than they used to be, so lxml should work them them out of the
+versions than they used to be, so lxml should work with them out of the
box, it is still recommended to use a static build with the most recent
library versions.
diff --git a/PKG-INFO b/PKG-INFO
index ee61c7e..b0ade2f 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: lxml
-Version: 3.6.0
+Version: 3.6.1
Summary: Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API.
Home-page: http://lxml.de/
Author: lxml dev team
@@ -36,23 +36,30 @@ Description: lxml is a Pythonic, mature binding for the libxml2 and libxslt libr
as soon as a maintenance branch has been established. Note that this
requires Cython to be installed at an appropriate version for the build.
- 3.6.0 (2016-03-17)
+ 3.6.1 (2016-07-24)
==================
- * GH#189: Static builds honour FTP proxy configurations when downloading
- the external libs. Patch by Youhei Sakurai.
+ Features added
+ --------------
- * GH#187: Now supports (only) version 5.x and later of PyPy.
- Patch by Armin Rigo.
+ * GH#180: Separate option ``inline_style`` for Cleaner that only removes ``style``
+ attributes instead of all styles. Patch by Christian Pedersen.
- * GH#186: Soupparser failed to process entities in Python 3.x.
- Patch by Duncan Morris.
+ * GH#196: Windows build support for Python 3.5. Contribution by Maximilian Hils.
- * GH#185: Rare encoding related `TypeError` on import was fixed.
- Patch by Petr Demin.
+ Bugs fixed
+ ----------
- * GH#181: Direct support for `.rnc` files in `RelaxNG()` if `rnc2rng`
- is installed. Patch by Dirkjan Ochtman.
+ * GH#199: Exclude ``file`` fields from ``FormElement.form_values`` (as browsers do).
+ Patch by Tomas Divis.
+
+ * GH#198, LP#1568167: Try to provide base URL from ``Resolver.resolve_string()``.
+ Patch by Michael van Tellingen.
+
+ * GH#191: More accurate float serialisation in ``objectify.FloatElement``.
+ Patch by Holger Joukl.
+
+ * LP#1551797: Repair XSLT error logging. Patch by Marcus Brinkmann.
diff --git a/buildlibxml.py b/buildlibxml.py
index 21284da..5b67132 100644
--- a/buildlibxml.py
+++ b/buildlibxml.py
@@ -24,19 +24,28 @@ except:
# use pre-built libraries on Windows
def download_and_extract_zlatkovic_binaries(destdir):
- url = 'ftp://ftp.zlatkovic.com/pub/libxml/'
- libs = dict(
- libxml2 = None,
- libxslt = None,
- zlib = None,
- iconv = None,
- )
- for fn in ftp_listdir(url):
- for libname in libs:
- if fn.startswith(libname):
- assert libs[libname] is None, 'duplicate listings?'
- assert fn.endswith('.win32.zip')
- libs[libname] = fn
+ if sys.version_info < (3, 5):
+ url = 'ftp://ftp.zlatkovic.com/pub/libxml/'
+ libs = dict(
+ libxml2 = None,
+ libxslt = None,
+ zlib = None,
+ iconv = None,
+ )
+ for fn in ftp_listdir(url):
+ for libname in libs:
+ if fn.startswith(libname):
+ assert libs[libname] is None, 'duplicate listings?'
+ assert fn.endswith('.win32.zip')
+ libs[libname] = fn
+ else:
+ url = "https://github.com/mhils/libxml2-win-binaries/releases/download/lxml/"
+ libs = dict(
+ libxml2 = "libxml2-latest.win32.zip",
+ libxslt = "libxslt-latest.win32.zip",
+ zlib = "zlib-latest.win32.zip",
+ iconv = "iconv-latest.win32.zip",
+ )
if not os.path.exists(destdir): os.makedirs(destdir)
for libname, libfn in libs.items():
@@ -121,8 +130,9 @@ def parse_text_ftplist(s):
for line in s.splitlines():
if not line.startswith('d'):
# -rw-r--r-- 1 ftp ftp 476 Sep 1 2011 md5sum.txt
- # Last (9th) element is 'md5sum.txt' in the above example.
- yield line.split(None, 9)[-1]
+ # Last (9th) element is 'md5sum.txt' in the above example, but there
+ # may be variations, so we discard only the first 8 entries.
+ yield line.split(None, 8)[-1]
def parse_html_ftplist(s):
re_href = re.compile(r']*?\s+)?href=["\'](.*?)[;\?"\']', re.I|re.M)
@@ -139,14 +149,14 @@ def tryint(s):
def download_libxml2(dest_dir, version=None):
"""Downloads libxml2, returning the filename where the library was downloaded"""
- version_re = re.compile(r'^LATEST_LIBXML2_IS_(.*)$')
+ version_re = re.compile(r'LATEST_LIBXML2_IS_([0-9.]+[0-9])')
filename = 'libxml2-%s.tar.gz'
return download_library(dest_dir, LIBXML2_LOCATION, 'libxml2',
version_re, filename, version=version)
def download_libxslt(dest_dir, version=None):
"""Downloads libxslt, returning the filename where the library was downloaded"""
- version_re = re.compile(r'^LATEST_LIBXSLT_IS_(.*)$')
+ version_re = re.compile(r'LATEST_LIBXSLT_IS_([0-9.]+[0-9])')
filename = 'libxslt-%s.tar.gz'
return download_library(dest_dir, LIBXML2_LOCATION, 'libxslt',
version_re, filename, version=version)
diff --git a/doc/FAQ.txt b/doc/FAQ.txt
index 0dc620f..e47183e 100644
--- a/doc/FAQ.txt
+++ b/doc/FAQ.txt
@@ -201,7 +201,7 @@ not take advantage of lxml's enhanced feature set.
a secure HTTP proxy
* `lwebstring `_,
an XML template engine
-* `openpyxl `_,
+* `openpyxl `_,
a library to read/write MS Excel 2007 files
* `OpenXMLlib `_,
a library for handling OpenXML document meta data
diff --git a/doc/build.txt b/doc/build.txt
index efa3a76..afc385f 100644
--- a/doc/build.txt
+++ b/doc/build.txt
@@ -23,7 +23,7 @@ Cython
.. _pip: http://pypi.python.org/pypi/pip
.. _Cython: http://cython.org
-.. _wheel: http://wheel.readthedocs.org/en/latest/
+.. _wheel: https://wheel.readthedocs.io/en/latest/
The lxml.etree and lxml.objectify modules are written in Cython_.
Since we distribute the Cython-generated .c files with lxml releases,
@@ -321,7 +321,7 @@ Building Debian packages from SVN sources
increase the debian version number so apt/dpkg won't get confused
* run ``dpkg-buildpackage -rfakeroot -us -uc`` to build the package
-In case ``dpkg-buildpackage`` tells you that some dependecies are missing, you
+In case ``dpkg-buildpackage`` tells you that some dependencies are missing, you
can either install them manually or run ``apt-get build-dep lxml``.
That will give you .deb packages in the parent directory which can be
diff --git a/doc/extensions.txt b/doc/extensions.txt
index d379ae0..287fb64 100644
--- a/doc/extensions.txt
+++ b/doc/extensions.txt
@@ -277,7 +277,7 @@ and use the ``Extension`` helper:
>>> print(e('l:function1(string(b))'))
1Haegar
-The optional second argument to ``Extension`` can either be be a
+The optional second argument to ``Extension`` can either be a
sequence of names to select from the module, a dictionary that
explicitly maps function names to their XPath alter-ego or ``None``
(explicitly passed) to take all available functions under their
diff --git a/doc/html/FAQ.html b/doc/html/FAQ.html
index d3d8c64..ccbf186 100644
--- a/doc/html/FAQ.html
+++ b/doc/html/FAQ.html
@@ -7,10 +7,26 @@
-
-
+
+
-
lxml FAQ - Frequently Asked Questions
+
lxml FAQ - Frequently Asked Questions
Frequently asked questions on lxml. See also the notes on compatibility to
ElementTree .
@@ -169,7 +185,7 @@ a web server accelerator with on-the-fly XSLT processing
a secure HTTP proxy
lwebstring ,
an XML template engine
-
openpyxl ,
+openpyxl ,
a library to read/write MS Excel 2007 files
OpenXMLlib ,
a library for handling OpenXML document meta data
@@ -939,7 +955,7 @@ map it to your namespace. See also the question above.
diff --git a/doc/html/api.html b/doc/html/api.html
index c7899de..cbec5d8 100644
--- a/doc/html/api.html
+++ b/doc/html/api.html
@@ -5,10 +5,26 @@
APIs specific to lxml.etree
-
-
+
+
-
APIs specific to lxml.etree
+
APIs specific to lxml.etree
lxml.etree tries to follow established APIs wherever possible. Sometimes,
however, the need to expose a feature in an easy way led to the invention of a
@@ -496,7 +512,7 @@ example:
diff --git a/doc/html/api/abc.ABCMeta-class.html b/doc/html/api/abc.ABCMeta-class.html
index de29b57..ea3bf59 100644
--- a/doc/html/api/abc.ABCMeta-class.html
+++ b/doc/html/api/abc.ABCMeta-class.html
@@ -426,7 +426,7 @@ even via super()).