From 71bda40e3259120249d4bdf0b4550a4bfc59f65c Mon Sep 17 00:00:00 2001
From: Hyunjee Kim
Date: Thu, 31 Jan 2019 10:53:59 +0900
Subject: [PATCH] Imported Upstream version 3.6.2
Change-Id: I9a7838c3979faf20c60f2367360df4f244760b87
Signed-off-by: Hyunjee Kim
---
CHANGES.txt | 6 +
MANIFEST.in | 1 +
Makefile | 14 +
PKG-INFO | 26 +-
doc/conf.py | 195 +
doc/donating.txt | 60 +
doc/html/FAQ.html | 6 +-
doc/html/api.html | 4 +-
doc/html/api/abc.ABCMeta-class.html | 2 +-
doc/html/api/api-objects.txt | 14 +-
doc/html/api/class-tree.html | 20 +-
.../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 | 1883 +++--
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 | 26 +-
.../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 | 4 +-
.../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 | 4 +-
.../api/lxml.etree.LxmlRegistryError-class.html | 2 +-
doc/html/api/lxml.etree.LxmlSyntaxError-class.html | 4 +-
.../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 | 2 +-
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 | 4 +-
.../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 | 10 +-
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 | 4 +-
...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 | 6 +-
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 | 6 +-
.../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 | 6 +-
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 | 6 +-
.../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 | 6 +-
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 | 6 +-
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 | 6 +-
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 | 6 +-
.../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 | 6 +-
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 | 6 +-
.../api/lxml.tests.test_isoschematron-pysrc.html | 2 +-
...chematron.ETreeISOSchematronTestCase-class.html | 2 +-
doc/html/api/lxml.tests.test_nsclasses-module.html | 6 +-
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 | 54 +-
doc/html/api/lxml.tests.test_objectify-pysrc.html | 4430 ++++++------
...sts.test_objectify.ObjectifyTestCase-class.html | 82 +-
.../api/lxml.tests.test_pyclasslookup-module.html | 6 +-
.../api/lxml.tests.test_pyclasslookup-pysrc.html | 2 +-
..._pyclasslookup.PyClassLookupTestCase-class.html | 2 +-
doc/html/api/lxml.tests.test_relaxng-module.html | 6 +-
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 | 6 +-
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 | 6 +-
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 | 6 +-
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 | 6 +-
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 | 6 +-
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 | 8 +-
.../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 | 6 +-
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 | 8 +-
doc/html/capi.html | 4 +-
doc/html/changes-3.5.0.beta1.html | 3022 ++++++++
doc/html/changes-3.5.0.html | 3044 ++++++++
doc/html/changes-3.5.dev.html | 3004 ++++++++
.../{changes-3.6.1.html => changes-3.6.0.html} | 699 +-
doc/html/compatibility.html | 4 +-
doc/html/credits.html | 4 +-
doc/html/cssselect.html | 4 +-
doc/html/element_classes.html | 4 +-
doc/html/elementsoup.html | 4 +-
doc/html/extensions.html | 6 +-
doc/html/funding.html | 167 +
doc/html/html5parser.html | 6 +-
doc/html/index.html | 13 +-
doc/html/installation.html | 6 +-
doc/html/intro.html | 4 +-
doc/html/lxml-source-howto.html | 6 +-
doc/html/lxmlhtml.html | 6 +-
doc/html/objectify.html | 4 +-
doc/html/parsing.html | 4 +-
doc/html/performance.html | 6 +-
doc/html/resolvers.html | 4 +-
doc/html/sax.html | 6 +-
doc/html/sitemap.html | 2 +-
doc/html/tutorial.html | 6 +-
doc/html/validation.html | 6 +-
doc/html/xpathxslt.html | 4 +-
doc/main.txt | 8 +-
doc/pdf/pubkey.asc | 36 -
doc/sitemap.txt | 38 +
doc/sphinx/FAQ.html | 938 +++
doc/sphinx/Makefile | 64 +
doc/sphinx/_images/tagpython.png | Bin 0 -> 20864 bytes
doc/sphinx/_sources/FAQ.txt | 989 +++
doc/sphinx/_sources/api.txt | 549 ++
doc/sphinx/_sources/build.txt | 334 +
doc/sphinx/_sources/capi.txt | 94 +
doc/sphinx/_sources/compatibility.txt | 196 +
doc/sphinx/_sources/cssselect.txt | 108 +
doc/sphinx/_sources/element_classes.txt | 537 ++
doc/sphinx/_sources/elementsoup.txt | 201 +
doc/sphinx/_sources/extensions.txt | 587 ++
doc/sphinx/_sources/html/api/api-objects.txt | 7284 +++++++++++++++++++
doc/sphinx/_sources/html5parser.txt | 80 +
doc/sphinx/_sources/index.txt | 29 +
doc/sphinx/_sources/intro.txt | 82 +
doc/sphinx/_sources/licenses/BSD.txt | 29 +
doc/sphinx/_sources/licenses/GPL.txt | 340 +
doc/sphinx/_sources/licenses/ZopePublicLicense.txt | 59 +
doc/sphinx/_sources/licenses/elementtree.txt | 25 +
doc/sphinx/_sources/lxml-source-howto.txt | 313 +
doc/sphinx/_sources/lxml2.txt | 269 +
doc/sphinx/_sources/lxmlhtml.txt | 759 ++
doc/sphinx/_sources/main.txt | 293 +
doc/sphinx/_sources/memorymanagement.txt | 83 +
doc/sphinx/_sources/objectify.txt | 1400 ++++
doc/sphinx/_sources/parsing.txt | 832 +++
doc/sphinx/_sources/performance.txt | 827 +++
doc/sphinx/_sources/resolvers.txt | 283 +
doc/sphinx/_sources/s5/lxml-ep2008.txt | 1130 +++
doc/sphinx/_sources/sax.txt | 137 +
doc/sphinx/_sources/sitemap.txt | 38 +
doc/sphinx/_sources/tutorial.txt | 1262 ++++
doc/sphinx/_sources/valgrind.txt | 3 +
doc/sphinx/_sources/validation.txt | 581 ++
doc/sphinx/_sources/xpathxslt.txt | 751 ++
doc/sphinx/_static/basic.css | 528 ++
doc/sphinx/_static/default.css | 256 +
doc/sphinx/_static/pygments.css | 62 +
doc/sphinx/_static/sphinxdoc.css | 323 +
doc/sphinx/_static/tagpython-big.png | Bin 0 -> 19383 bytes
doc/sphinx/api.html | 516 ++
doc/sphinx/build.html | 381 +
doc/sphinx/capi.html | 184 +
doc/sphinx/compatibility.html | 269 +
doc/sphinx/cssselect.html | 191 +
doc/sphinx/element_classes.html | 556 ++
doc/sphinx/elementsoup.html | 271 +
doc/sphinx/extensions.html | 620 ++
doc/sphinx/genindex.html | 121 +
doc/sphinx/html/api/api-objects.html | 7373 ++++++++++++++++++++
doc/sphinx/html5parser.html | 163 +
doc/sphinx/index.html | 257 +
doc/sphinx/intro.html | 157 +
doc/sphinx/licenses/BSD.html | 115 +
doc/sphinx/licenses/GPL.html | 457 ++
doc/sphinx/licenses/ZopePublicLicense.html | 138 +
doc/sphinx/licenses/elementtree.html | 108 +
doc/sphinx/lxml-source-howto.html | 366 +
doc/sphinx/lxml2.html | 336 +
doc/sphinx/lxmlhtml.html | 808 +++
doc/sphinx/main.html | 260 +
doc/sphinx/memorymanagement.html | 162 +
doc/sphinx/objectify.html | 1317 ++++
doc/sphinx/parsing.html | 814 +++
doc/sphinx/performance.html | 835 +++
doc/sphinx/resolvers.html | 339 +
doc/sphinx/s5/lxml-ep2008.html | 1176 ++++
doc/sphinx/sax.html | 209 +
doc/sphinx/search.html | 99 +
doc/sphinx/sitemap.html | 282 +
doc/sphinx/tutorial.html | 1167 ++++
doc/sphinx/valgrind.html | 89 +
doc/sphinx/validation.html | 584 ++
doc/sphinx/xpathxslt.html | 736 ++
src/lxml.egg-info/PKG-INFO | 26 +-
src/lxml.egg-info/SOURCES.txt | 90 +-
src/lxml.egg-info/requires.txt | 9 +-
src/lxml/includes/lxml-version.h | 2 +-
src/lxml/lxml.etree.c | 131 +-
src/lxml/lxml.objectify.c | 2 +-
tools/manylinux/build-wheels.sh | 66 +
tools/xpathgrep.py | 334 +
version.txt | 2 +-
521 files changed, 61749 insertions(+), 7958 deletions(-)
create mode 100644 doc/conf.py
create mode 100644 doc/donating.txt
create mode 100644 doc/html/changes-3.5.0.beta1.html
create mode 100644 doc/html/changes-3.5.0.html
create mode 100644 doc/html/changes-3.5.dev.html
rename doc/html/{changes-3.6.1.html => changes-3.6.0.html} (98%)
create mode 100644 doc/html/funding.html
delete mode 100644 doc/pdf/pubkey.asc
create mode 100644 doc/sitemap.txt
create mode 100644 doc/sphinx/FAQ.html
create mode 100644 doc/sphinx/Makefile
create mode 100644 doc/sphinx/_images/tagpython.png
create mode 100644 doc/sphinx/_sources/FAQ.txt
create mode 100644 doc/sphinx/_sources/api.txt
create mode 100644 doc/sphinx/_sources/build.txt
create mode 100644 doc/sphinx/_sources/capi.txt
create mode 100644 doc/sphinx/_sources/compatibility.txt
create mode 100644 doc/sphinx/_sources/cssselect.txt
create mode 100644 doc/sphinx/_sources/element_classes.txt
create mode 100644 doc/sphinx/_sources/elementsoup.txt
create mode 100644 doc/sphinx/_sources/extensions.txt
create mode 100644 doc/sphinx/_sources/html/api/api-objects.txt
create mode 100644 doc/sphinx/_sources/html5parser.txt
create mode 100644 doc/sphinx/_sources/index.txt
create mode 100644 doc/sphinx/_sources/intro.txt
create mode 100644 doc/sphinx/_sources/licenses/BSD.txt
create mode 100644 doc/sphinx/_sources/licenses/GPL.txt
create mode 100644 doc/sphinx/_sources/licenses/ZopePublicLicense.txt
create mode 100644 doc/sphinx/_sources/licenses/elementtree.txt
create mode 100644 doc/sphinx/_sources/lxml-source-howto.txt
create mode 100644 doc/sphinx/_sources/lxml2.txt
create mode 100644 doc/sphinx/_sources/lxmlhtml.txt
create mode 100644 doc/sphinx/_sources/main.txt
create mode 100644 doc/sphinx/_sources/memorymanagement.txt
create mode 100644 doc/sphinx/_sources/objectify.txt
create mode 100644 doc/sphinx/_sources/parsing.txt
create mode 100644 doc/sphinx/_sources/performance.txt
create mode 100644 doc/sphinx/_sources/resolvers.txt
create mode 100644 doc/sphinx/_sources/s5/lxml-ep2008.txt
create mode 100644 doc/sphinx/_sources/sax.txt
create mode 100644 doc/sphinx/_sources/sitemap.txt
create mode 100644 doc/sphinx/_sources/tutorial.txt
create mode 100644 doc/sphinx/_sources/valgrind.txt
create mode 100644 doc/sphinx/_sources/validation.txt
create mode 100644 doc/sphinx/_sources/xpathxslt.txt
create mode 100644 doc/sphinx/_static/basic.css
create mode 100644 doc/sphinx/_static/default.css
create mode 100644 doc/sphinx/_static/pygments.css
create mode 100644 doc/sphinx/_static/sphinxdoc.css
create mode 100644 doc/sphinx/_static/tagpython-big.png
create mode 100644 doc/sphinx/api.html
create mode 100644 doc/sphinx/build.html
create mode 100644 doc/sphinx/capi.html
create mode 100644 doc/sphinx/compatibility.html
create mode 100644 doc/sphinx/cssselect.html
create mode 100644 doc/sphinx/element_classes.html
create mode 100644 doc/sphinx/elementsoup.html
create mode 100644 doc/sphinx/extensions.html
create mode 100644 doc/sphinx/genindex.html
create mode 100644 doc/sphinx/html/api/api-objects.html
create mode 100644 doc/sphinx/html5parser.html
create mode 100644 doc/sphinx/index.html
create mode 100644 doc/sphinx/intro.html
create mode 100644 doc/sphinx/licenses/BSD.html
create mode 100644 doc/sphinx/licenses/GPL.html
create mode 100644 doc/sphinx/licenses/ZopePublicLicense.html
create mode 100644 doc/sphinx/licenses/elementtree.html
create mode 100644 doc/sphinx/lxml-source-howto.html
create mode 100644 doc/sphinx/lxml2.html
create mode 100644 doc/sphinx/lxmlhtml.html
create mode 100644 doc/sphinx/main.html
create mode 100644 doc/sphinx/memorymanagement.html
create mode 100644 doc/sphinx/objectify.html
create mode 100644 doc/sphinx/parsing.html
create mode 100644 doc/sphinx/performance.html
create mode 100644 doc/sphinx/resolvers.html
create mode 100644 doc/sphinx/s5/lxml-ep2008.html
create mode 100644 doc/sphinx/sax.html
create mode 100644 doc/sphinx/search.html
create mode 100644 doc/sphinx/sitemap.html
create mode 100644 doc/sphinx/tutorial.html
create mode 100644 doc/sphinx/valgrind.html
create mode 100644 doc/sphinx/validation.html
create mode 100644 doc/sphinx/xpathxslt.html
create mode 100755 tools/manylinux/build-wheels.sh
create mode 100644 tools/xpathgrep.py
diff --git a/CHANGES.txt b/CHANGES.txt
index 83a491f..6f9a579 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -2,6 +2,12 @@
lxml changelog
==============
+3.6.2 (2016-08-18)
+==================
+
+* release without source changes to provide cleanly built Linux wheels
+
+
3.6.1 (2016-07-24)
==================
diff --git a/MANIFEST.in b/MANIFEST.in
index 82a16c9..2ad2039 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -4,6 +4,7 @@ include test.py
include update-error-constants.py
include MANIFEST.in Makefile version.txt requirements.txt
include CHANGES.txt CREDITS.txt INSTALL.txt LICENSES.txt README.rst TODO.txt
+include tools/*.py tools/manylinux/*.sh
recursive-include src *.pyx *.pxd *.pxi *.py
recursive-include src/lxml lxml.etree.c lxml.objectify.c
recursive-include src/lxml lxml.etree.h lxml.etree_api.h etree_defs.h lxml_endian.h
diff --git a/Makefile b/Makefile
index 59fc76d..31d639f 100644
--- a/Makefile
+++ b/Makefile
@@ -10,6 +10,8 @@ PY3_WITH_CYTHON=$(shell $(PYTHON3) -c 'import Cython.Build.Dependencies' >/dev/n
CYTHON_WITH_COVERAGE=$(shell $(PYTHON) -c 'import Cython.Coverage; import sys; assert not hasattr(sys, "pypy_version_info")' >/dev/null 2>/dev/null && echo " --coverage" || true)
CYTHON3_WITH_COVERAGE=$(shell $(PYTHON3) -c 'import Cython.Coverage; import sys; assert not hasattr(sys, "pypy_version_info")' >/dev/null 2>/dev/null && echo " --coverage" || true)
+MANYLINUX_IMAGE_X86_64=quay.io/pypa/manylinux1_x86_64
+
all: inplace
# Build in-place
@@ -22,6 +24,18 @@ sdist:
build:
$(PYTHON) setup.py $(SETUPFLAGS) build $(PYTHON_WITH_CYTHON)
+require-cython:
+ @[ -n "$(PYTHON_WITH_CYTHON)" ] || { \
+ echo "NOTE: missing Cython - please use '$(PYTHON) -m pip install Cython' to install it"; false; }
+
+wheel_manylinux: require-cython sdist
+ time docker run --rm -t \
+ -v $(shell pwd):/io \
+ -e CFLAGS="$(CFLAGS)" \
+ -e LDFLAGS="$(LDFLAGS)" \
+ $(MANYLINUX_IMAGE_X86_64) \
+ bash /io/tools/manylinux/build-wheels.sh /io/dist/lxml-$(LXMLVERSION).tar.gz
+
wheel:
$(PYTHON) setup.py $(SETUPFLAGS) bdist_wheel $(PYTHON_WITH_CYTHON)
diff --git a/PKG-INFO b/PKG-INFO
index b0ade2f..d6a6f22 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: lxml
-Version: 3.6.1
+Version: 3.6.2
Summary: Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API.
Home-page: http://lxml.de/
Author: lxml dev team
@@ -36,30 +36,10 @@ 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.1 (2016-07-24)
+ 3.6.2 (2016-08-18)
==================
- 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.
+ * release without source changes to provide cleanly built Linux wheels
diff --git a/doc/conf.py b/doc/conf.py
new file mode 100644
index 0000000..bd6ec38
--- /dev/null
+++ b/doc/conf.py
@@ -0,0 +1,195 @@
+# -*- coding: utf-8 -*-
+#
+# lxml documentation build configuration file, created by
+# sphinx-quickstart on Thu Mar 10 22:53:40 2011.
+#
+# This file is execfile()d with the current directory set to its containing dir.
+#
+# Note that not all possible configuration values are present in this
+# autogenerated file.
+#
+# All configuration values have a default; values that are commented out
+# serve to show the default.
+
+import sys, os
+
+# If extensions (or modules to document with autodoc) are in another directory,
+# add these directories to sys.path here. If the directory is relative to the
+# documentation root, use os.path.abspath to make it absolute, like shown here.
+#sys.path.append(os.path.abspath('.'))
+
+# -- General configuration -----------------------------------------------------
+
+# Add any Sphinx extension module names here, as strings. They can be extensions
+# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
+extensions = ['sphinx.ext.autodoc', 'sphinx.ext.doctest', 'sphinx.ext.coverage']
+
+# Add any paths that contain templates here, relative to this directory.
+templates_path = ['_templates']
+
+# The suffix of source filenames.
+source_suffix = '.txt'
+
+# The encoding of source files.
+#source_encoding = 'utf-8'
+
+# The master toctree document.
+master_doc = 'main'
+
+# General information about the project.
+project = u'lxml'
+copyright = u'2011, Stefan Behnel et al.'
+
+# The version info for the project you're documenting, acts as replacement for
+# |version| and |release|, also used in various other places throughout the
+# built documents.
+#
+# The short X.Y version.
+version = '2.3'
+# The full version, including alpha/beta/rc tags.
+release = '2.3'
+
+# The language for content autogenerated by Sphinx. Refer to documentation
+# for a list of supported languages.
+language = 'en' # None
+
+# There are two options for replacing |today|: either, you set today to some
+# non-false value, then it is used:
+#today = ''
+# Else, today_fmt is used as the format for a strftime call.
+#today_fmt = '%B %d, %Y'
+
+# List of documents that shouldn't be included in the build.
+unused_docs = ['licenses/GPL', 'licenses/BSD', 'licenses/ZopePublicLicense', 'licenses/elementtree',
+ 'lxml2', 'memorymanagement', 'valgrind']
+
+# List of directories, relative to source directory, that shouldn't be searched
+# for source files.
+exclude_trees = ['_build']
+
+# The reST default role (used for this markup: `text`) to use for all documents.
+#default_role = None
+
+# If true, '()' will be appended to :func: etc. cross-reference text.
+#add_function_parentheses = True
+
+# If true, the current module name will be prepended to all description
+# unit titles (such as .. function::).
+#add_module_names = True
+
+# If true, sectionauthor and moduleauthor directives will be shown in the
+# output. They are ignored by default.
+#show_authors = False
+
+# The name of the Pygments (syntax highlighting) style to use.
+pygments_style = 'sphinx'
+
+# A list of ignored prefixes for module index sorting.
+#modindex_common_prefix = []
+
+
+# -- Options for HTML output ---------------------------------------------------
+
+# The theme to use for HTML and HTML Help pages. Major themes that come with
+# Sphinx are currently 'default' and 'sphinxdoc'.
+html_theme = 'default'
+
+# Theme options are theme-specific and customize the look and feel of a theme
+# further. For a list of options available for each theme, see the
+# documentation.
+#html_theme_options = {}
+
+# Add any paths that contain custom themes here, relative to this directory.
+#html_theme_path = []
+
+# The name for this set of Sphinx documents. If None, it defaults to
+# " v documentation".
+html_title = "lxml v%s - Processing XML and HTML with Python" % release
+
+# A shorter title for the navigation bar. Default is the same as html_title.
+#html_short_title = None
+
+# The name of an image file (relative to this directory) to place at the top
+# of the sidebar.
+html_logo = '_static/python-xml-title.png' # None
+
+# The name of an image file (within the static path) to use as favicon of the
+# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
+# pixels large.
+#html_favicon = 'favicon.ico'
+
+# Add any paths that contain custom static files (such as style sheets) here,
+# relative to this directory. They are copied after the builtin static files,
+# so a file named "default.css" will overwrite the builtin "default.css".
+html_static_path = ['_static']
+
+# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
+# using the given strftime format.
+#html_last_updated_fmt = '%b %d, %Y'
+
+# If true, SmartyPants will be used to convert quotes and dashes to
+# typographically correct entities.
+#html_use_smartypants = True
+
+# Custom sidebar templates, maps document names to template names.
+#html_sidebars = {}
+
+# Additional templates that should be rendered to pages, maps page names to
+# template names.
+#html_additional_pages = {}
+
+# If false, no module index is generated.
+#html_use_modindex = True
+
+# If false, no index is generated.
+#html_use_index = True
+
+# If true, the index is split into individual pages for each letter.
+#html_split_index = False
+
+# If true, links to the reST sources are added to the pages.
+#html_show_sourcelink = True
+
+# If true, an OpenSearch description file will be output, and all pages will
+# contain a tag referring to it. The value of this option must be the
+# base URL from which the finished HTML is served.
+#html_use_opensearch = ''
+
+# If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml").
+#html_file_suffix = ''
+
+# Output file base name for HTML help builder.
+htmlhelp_basename = 'lxmldoc'
+
+
+# -- Options for LaTeX output --------------------------------------------------
+
+# The paper size ('letter' or 'a4').
+#latex_paper_size = 'letter'
+
+# The font size ('10pt', '11pt' or '12pt').
+#latex_font_size = '10pt'
+
+# Grouping the document tree into LaTeX files. List of tuples
+# (source start file, target name, title, author, documentclass [howto/manual]).
+latex_documents = [
+ ('main', 'lxml.tex', u'lxml Documentation',
+ u'Stefan Behnel', 'manual'),
+]
+
+# The name of an image file (relative to this directory) to place at the top of
+# the title page.
+#latex_logo = None
+
+# For "manual" documents, if this is true, then toplevel headings are parts,
+# not chapters.
+#latex_use_parts = False
+
+# Additional stuff for the LaTeX preamble.
+#latex_preamble = ''
+
+# Documents to append as an appendix to all manuals.
+#latex_appendices = []
+
+# If false, no module index is generated.
+#latex_use_modindex = True
diff --git a/doc/donating.txt b/doc/donating.txt
new file mode 100644
index 0000000..0e1a2df
--- /dev/null
+++ b/doc/donating.txt
@@ -0,0 +1,60 @@
+=====================
+Donate to the project
+=====================
+
+PayPal donations are used to cover the costs for project hosting, general
+maintenance and support. Basically, they are what keeps the free lxml
+software alive for everyone to use.
+
+If, instead, you are interested in financing the development of specific
+features or the resolution of a specific problem, get in touch with the
+lead developer, `Stefan Behnel `_.
+
+
+Making a one-time donation
+--------------------------
+
+When you click the PayPal icon, you will be taken to the PayPal website
+where you can donate any amount up to ten thousand US dollars or the
+equivalent in another currency to the lxml project. Note that you do
+not have to create a PayPal account in order to donate money to the
+lxml project. You can also pay with your credit card or by other means
+directly. Please make sure you have read the legal notice at the bottom
+of this page.
+
+ONETIMEBUTTON
+
+Regular contribution each month
+-------------------------------
+
+If you would like to donate money to the lxml project each month through
+your PayPal subscription, please select a currency and amount and then
+click the PayPal icon. You will be taken to the PayPal website where
+you can initiate the monthly donation. After that, your credit card will
+be automatically charged each month via PayPal until you cancel this
+monthly donation. If you do not have a PayPal account, you will need to
+create one on the PayPal website. Please make sure you have read the
+legal notice at the bottom of this page.
+
+REGULARBUTTON
+
+------
+
+Legal notice
+ By making a donation to the lxml project you state that you have
+ acknowledged, understood, accepted, and agreed to the terms and
+ conditions contained in this notice. Your donation to the lxml
+ project is voluntary and is not a fee for any services, goods,
+ or advantages. Making a donation to the lxml project does not
+ entitle you to any services, goods, or advantages. We have the
+ right to use the money you donate to the lxml project in any
+ lawful way and for any lawful purpose we see fit and we are not
+ obligated to disclose the way and purpose to any party unless
+ required by applicable law. Although lxml is free software, to
+ our best knowledge the lxml project does not have any tax exempt
+ status. The lxml project is neither a registered non-profit
+ corporation nor a registered charity in any country. Your donation
+ may or may not be tax-deductible; please consult your tax advisor
+ in this matter. We will not publish or disclose your name and/or
+ e-mail address without your consent, unless required by applicable
+ law. Your donation is non-refundable.
diff --git a/doc/html/FAQ.html b/doc/html/FAQ.html
index ccbf186..dd66f64 100644
--- a/doc/html/FAQ.html
+++ b/doc/html/FAQ.html
@@ -26,7 +26,7 @@ function hide_menu() {
-
lxml FAQ - Frequently Asked Questions
+
lxml FAQ - Frequently Asked Questions
Frequently asked questions on lxml. See also the notes on compatibility to
ElementTree .
@@ -185,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
@@ -955,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 cbec5d8..211a309 100644
--- a/doc/html/api.html
+++ b/doc/html/api.html
@@ -24,7 +24,7 @@ function hide_menu() {
-
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
@@ -512,7 +512,7 @@ example:
diff --git a/doc/html/api/abc.ABCMeta-class.html b/doc/html/api/abc.ABCMeta-class.html
index ea3bf59..78c9a1d 100644
--- a/doc/html/api/abc.ABCMeta-class.html
+++ b/doc/html/api/abc.ABCMeta-class.html
@@ -426,7 +426,7 @@ even via super()).