Merged
Merged
Conversation
| exec(code, glob) | ||
| else: | ||
| exec("exec code in glob") | ||
| exec "exec code in glob" |
| return sorted(attrib.items()) | ||
| elif isinstance(attrib, _Attrib) or ( | ||
| OrderedDict is not None and isinstance(attrib, OrderedDict)): | ||
| elif isinstance(attrib, _Attrib) or (isinstance(attrib, OrderedDict)): |
| diff_parts.append(self.collect_diff(want_doc, got_doc, html, 2)) | ||
| diff_parts = ['Expected:', self.format_doc(want_doc, html, 2), | ||
| 'Got:', self.format_doc(got_doc, html, 2), | ||
| 'Diff:', self.collect_diff(want_doc, got_doc, html, 2)] |
| @@ -66,10 +66,7 @@ cdef object BytesIO, StringIO | |||
| from io import BytesIO, StringIO | |||
|
|
|||
| cdef object OrderedDict = None | |||
| if avoid_hosts is None: | ||
| avoid_hosts = _avoid_hosts | ||
| if avoid_classes is None: | ||
| avoid_classes = _avoid_classes |
| self.assertTrue(tree is not None) | ||
| self.assertEqual(100, len(tree.getroot())) | ||
| self.assertEqual(set(['test']), set(el.tag for el in tree.getroot())) | ||
| self.assertEqual({'test'}, set(el.tag for el in tree.getroot())) |
| "input", "keygen", "link", "meta", "param", | ||
| "source", "track", "wbr" | ||
| ]) | ||
| void_elements = {"area", "base", "br", "col", "embed", "hr", "img", |
| return getattr(self._tmpfile, name) | ||
| else: | ||
| NamedTemporaryFile = tempfile.NamedTemporaryFile | ||
| NamedTemporaryFile = tempfile.NamedTemporaryFile |
| self.assertTrue(schematron.validation_report is None, | ||
| 'validation reporting switched off, still: %s' % | ||
| (schematron.validation_report)) | ||
| schematron.validation_report) |
|
|
||
| [tox] | ||
| envlist = py26, py27, py32, py33, py34 | ||
| envlist = py27, py33, py34 |
You're welcome, and thank you for lxml!
What do you think about dropping support for Python 3.3?
It's also EOL and little used. There probably wouldn't be much, if any, code to remove, but one benefit would be to drop a couple of builds from the CI, and one less thing to worry about.
Here's the pip installs for lxml from PyPI for July 2018:
| python_version | percent | download_count |
|---|---|---|
| 2.7 | 59.75% | 637,606 |
| 3.6 | 22.04% | 235,237 |
| 3.5 | 11.17% | 119,194 |
| 3.4 | 4.08% | 43,500 |
| 3.7 | 2.79% | 29,729 |
| 2.6 | 0.10% | 1,061 |
| 3.3 | 0.05% | 553 |
| 3.8 | 0.01% | 160 |
| 3.2 | 0.00% | 41 |
| None | 0.00% | 5 |
| Total | 1,067,086 |
Source: pypinfo --start-date 2018-07-01 --end-date 2018-07-31 --percent --markdown lxml pyversion
Labels
None yet