1 |
jpp |
1.1 |
%if 0%{?rhel} >= 7 |
2 |
|
|
# Disable python2 build by default |
3 |
|
|
%bcond_with python2 |
4 |
|
|
%else |
5 |
|
|
%bcond_without python2 |
6 |
|
|
%endif |
7 |
|
|
|
8 |
|
|
%global modname lxml |
9 |
|
|
|
10 |
|
|
Name: python-%{modname} |
11 |
|
|
Version: 4.2.3 |
12 |
|
|
Release: 1%{?dist} |
13 |
|
|
Summary: XML processing library combining libxml2/libxslt with the ElementTree API |
14 |
|
|
|
15 |
|
|
License: BSD |
16 |
|
|
URL: http://lxml.de |
17 |
|
|
Source0: http://lxml.de/files/%{modname}-%{version}.tgz |
18 |
|
|
|
19 |
|
|
BuildRequires: gcc |
20 |
|
|
BuildRequires: libxml2-devel |
21 |
|
|
BuildRequires: libxslt-devel |
22 |
|
|
|
23 |
|
|
%global _description \ |
24 |
|
|
lxml is a Pythonic, mature binding for the libxml2 and libxslt libraries. It\ |
25 |
|
|
provides safe and convenient access to these libraries using the ElementTree It\ |
26 |
|
|
extends the ElementTree API significantly to offer support for XPath, RelaxNG,\ |
27 |
|
|
XML Schema, XSLT, C14N and much more.To contact the project, go to the project\ |
28 |
|
|
home page < or see our bug tracker at case you want to use the current ... |
29 |
|
|
|
30 |
|
|
%description %{_description} |
31 |
|
|
|
32 |
|
|
%if %{with python2} |
33 |
|
|
%package -n python2-%{modname} |
34 |
|
|
Summary: %{summary} |
35 |
|
|
BuildRequires: python2-devel |
36 |
|
|
BuildRequires: python2-setuptools |
37 |
|
|
BuildRequires: python2-Cython |
38 |
|
|
#Recommends: python2-cssselect |
39 |
|
|
#Recommends: python2-html5lib |
40 |
|
|
#Recommends: python2-beautifulsoup4 |
41 |
|
|
%{?python_provide:%python_provide python2-%{modname}} |
42 |
|
|
|
43 |
|
|
%description -n python2-%{modname} %{_description} |
44 |
|
|
|
45 |
|
|
Python 2 version. |
46 |
|
|
%endif # with python2 |
47 |
|
|
|
48 |
|
|
%package -n python3-%{modname} |
49 |
|
|
Summary: %{summary} |
50 |
|
|
BuildRequires: python3-devel |
51 |
|
|
BuildRequires: python3-setuptools |
52 |
|
|
BuildRequires: python36-Cython |
53 |
|
|
#Recommends: python3-cssselect |
54 |
|
|
#Recommends: python3-html5lib |
55 |
|
|
#Recommends: python3-beautifulsoup4 |
56 |
|
|
%{?python_provide:%python_provide python3-%{modname}} |
57 |
|
|
|
58 |
|
|
%description -n python3-%{modname} %{_description} |
59 |
|
|
|
60 |
|
|
Python 3 version. |
61 |
|
|
|
62 |
|
|
%prep |
63 |
|
|
%autosetup -n %{modname}-%{version} |
64 |
|
|
|
65 |
|
|
%build |
66 |
|
|
export WITH_CYTHON=true |
67 |
|
|
%if %{with python2} |
68 |
|
|
%py2_build |
69 |
|
|
%endif # with python2 |
70 |
|
|
%py3_build |
71 |
|
|
|
72 |
|
|
%install |
73 |
|
|
%if %{with python2} |
74 |
|
|
%py2_install |
75 |
|
|
%endif # with python2 |
76 |
|
|
%py3_install |
77 |
|
|
|
78 |
|
|
%check |
79 |
|
|
%if %{with python2} |
80 |
|
|
%{__python2} setup.py test |
81 |
|
|
%endif # with python2 |
82 |
|
|
%{__python3} setup.py test |
83 |
|
|
|
84 |
|
|
%if %{with python2} |
85 |
|
|
%files -n python2-%{modname} |
86 |
|
|
%license doc/licenses/ZopePublicLicense.txt LICENSES.txt |
87 |
|
|
%doc README.rst src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt |
88 |
|
|
%{python2_sitearch}/%{modname}/ |
89 |
|
|
%{python2_sitearch}/%{modname}-*.egg-info/ |
90 |
|
|
%endif # with python2 |
91 |
|
|
|
92 |
|
|
%files -n python3-%{modname} |
93 |
|
|
%license doc/licenses/ZopePublicLicense.txt LICENSES.txt |
94 |
|
|
%doc README.rst src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt |
95 |
|
|
%{python3_sitearch}/%{modname}/ |
96 |
|
|
%{python3_sitearch}/%{modname}-*.egg-info/ |
97 |
|
|
|
98 |
|
|
%changelog |
99 |
|
|
* Thu Aug 02 2018 Sebastian Kisela <skisela@redhat.com> - 4.2.3-1 |
100 |
|
|
- New upstream release 4.2.3 |
101 |
|
|
|
102 |
|
|
* Sun Jul 22 2018 Charalampos Stratakis <cstratak@redhat.com> - 4.1.1-3 |
103 |
|
|
- Conditionalize the python2 subpackage |
104 |
|
|
|
105 |
|
|
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.1.1-2 |
106 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild |
107 |
|
|
|
108 |
|
|
* Sun Nov 05 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 4.1.1-1 |
109 |
|
|
- Update to 4.1.1 |
110 |
|
|
|
111 |
|
|
* Tue Oct 10 2017 Mikolaj Izdebski <mizdebsk@redhat.com> - 4.0.0-2 |
112 |
|
|
- Conditionally allow building without Cython |
113 |
|
|
|
114 |
|
|
* Thu Oct 05 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 4.0.0-1 |
115 |
|
|
- Update to 4.0.0 |
116 |
|
|
|
117 |
|
|
* Sat Aug 12 2017 Kevin Fenzi <kevin@scrye.com> - 3.8.0-1 |
118 |
|
|
- Update to 3.8.0. Fixes bug #1458529 |
119 |
|
|
|
120 |
|
|
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.7.2-4 |
121 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild |
122 |
|
|
|
123 |
|
|
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.7.2-3 |
124 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild |
125 |
|
|
|
126 |
|
|
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.7.2-2 |
127 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild |
128 |
|
|
|
129 |
|
|
* Mon Jan 09 2017 Fabio Alessandro Locati <fale@fedoraproject.org> - 3.7.2-1 |
130 |
|
|
- Update to 3.7.2 |
131 |
|
|
|
132 |
|
|
* Sun Dec 25 2016 Fabio Alessandro Locati <fale@fedoraproject.org> - 3.7.1-1 |
133 |
|
|
- Update to 3.7.1 |
134 |
|
|
|
135 |
|
|
* Tue Dec 13 2016 Stratakis Charalampos <cstratak@redhat.com> - 3.7.0-2 |
136 |
|
|
- Rebuild for Python 3.6 |
137 |
|
|
|
138 |
|
|
* Sun Dec 11 2016 Fabio Alessandro Locati <fale@fedoraproject.org> - 3.7.0-1 |
139 |
|
|
- Update to 3.7.0 |
140 |
|
|
|
141 |
|
|
* Thu Sep 08 2016 Fabio Alessandro Locati <fale@fedoraproject.org> - 3.6.4-1 |
142 |
|
|
- Update to 3.6.4 |
143 |
|
|
|
144 |
|
|
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.4.4-5 |
145 |
|
|
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages |
146 |
|
|
|
147 |
|
|
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.4.4-4 |
148 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild |
149 |
|
|
|
150 |
|
|
* Thu Jan 21 2016 Dan Horák <dan[at]danny.cz> - 3.4.4-3 |
151 |
|
|
- fix conditional |
152 |
|
|
|
153 |
|
|
* Fri Nov 06 2015 Robert Kuska <rkuska@redhat.com> - 3.4.4-2 |
154 |
|
|
- Rebuilt for Python3.5 rebuild |
155 |
|
|
|
156 |
|
|
* Fri Aug 28 2015 Peter Robinson <pbrobinson@fedoraproject.org> 3.4.4-1 |
157 |
|
|
- Update to 3.4.4 |
158 |
|
|
- Use %%license, cleanup spec |
159 |
|
|
|
160 |
|
|
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3.6-2 |
161 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild |
162 |
|
|
|
163 |
|
|
* Fri Aug 29 2014 Jeffrey C. Ollie <jeff@ocjtech.us> - 3.3.6-1 |
164 |
|
|
- 3.3.6 (2014-08-28) |
165 |
|
|
- ================== |
166 |
|
|
- |
167 |
|
|
- Bugs fixed |
168 |
|
|
- ---------- |
169 |
|
|
- |
170 |
|
|
- * Prevent tree cycle creation when adding Elements as siblings. |
171 |
|
|
- |
172 |
|
|
- * LP#1361948: crash when deallocating Element siblings without parent. |
173 |
|
|
- |
174 |
|
|
- * LP#1354652: crash when traversing internally loaded documents in XSLT |
175 |
|
|
- extension functions. |
176 |
|
|
|
177 |
|
|
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> |
178 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild |
179 |
|
|
|
180 |
|
|
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3.5-3 |
181 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild |
182 |
|
|
|
183 |
|
|
* Wed May 14 2014 Bohuslav Kabrda <bkabrda@redhat.com> - 3.3.5-2 |
184 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4 |
185 |
|
|
|
186 |
|
|
* Mon Apr 28 2014 Jeffrey Ollie <jeff@ocjtech.us> - 3.3.5-1 |
187 |
|
|
- 3.3.5 (2014-04-18) |
188 |
|
|
- ================== |
189 |
|
|
- |
190 |
|
|
- Bugs fixed |
191 |
|
|
- ---------- |
192 |
|
|
- |
193 |
|
|
- * HTML cleaning could fail to strip javascript links that mix control |
194 |
|
|
- characters into the link scheme. |
195 |
|
|
|
196 |
|
|
* Mon Apr 28 2014 Jeffrey Ollie <jeff@ocjtech.us> - 3.3.4-1 |
197 |
|
|
- 3.3.4 (2014-04-03) |
198 |
|
|
- ================== |
199 |
|
|
- |
200 |
|
|
- Features added |
201 |
|
|
- -------------- |
202 |
|
|
- |
203 |
|
|
- * Source line numbers above 65535 are available on Elements when |
204 |
|
|
- using libxml2 2.9 or later. |
205 |
|
|
- |
206 |
|
|
- Bugs fixed |
207 |
|
|
- ---------- |
208 |
|
|
- |
209 |
|
|
- * lxml.html.fragment_fromstring() failed for bytes input in Py3. |
210 |
|
|
|
211 |
|
|
* Wed Mar 26 2014 Jeffrey Ollie <jeff@ocjtech.us> - 3.3.3-4 |
212 |
|
|
- Fix macro definition |
213 |
|
|
|
214 |
|
|
* Wed Mar 26 2014 Jeffrey Ollie <jeff@ocjtech.us> - 3.3.3-3 |
215 |
|
|
- Add python3-cssselect to correct package |
216 |
|
|
|
217 |
|
|
* Mon Mar 24 2014 Jeffrey Ollie <jeff@ocjtech.us> - 3.3.3-3 |
218 |
|
|
- python3-cssselect is not available on F19 |
219 |
|
|
|
220 |
|
|
* Mon Mar 24 2014 Jeffrey Ollie <jeff@ocjtech.us> - 3.3.3-2 |
221 |
|
|
- BZ#1075070 add requires and buildrequires for cssselect |
222 |
|
|
|
223 |
|
|
* Tue Mar 11 2014 Jeffrey Ollie <jeff@ocjtech.us> - 3.3.3-1 |
224 |
|
|
- 3.3.3 (2014-03-04) |
225 |
|
|
- ================== |
226 |
|
|
- |
227 |
|
|
- Bugs fixed |
228 |
|
|
- ---------- |
229 |
|
|
- |
230 |
|
|
- * LP#1287118: Crash when using Element subtypes with ``__slots__``. |
231 |
|
|
- |
232 |
|
|
- Other changes |
233 |
|
|
- ------------- |
234 |
|
|
- |
235 |
|
|
- * The internal classes ``_LogEntry`` and ``_Attrib`` can no longer be |
236 |
|
|
- subclassed from Python code. |
237 |
|
|
|
238 |
|
|
* Tue Mar 11 2014 Alexander Todorov <atodorov@redhat.com> - 3.3.2-2 |
239 |
|
|
- Add check section #1075070 |
240 |
|
|
|
241 |
|
|
* Fri Feb 28 2014 Jeffrey Ollie <jeff@ocjtech.us> - 3.3.2-1 |
242 |
|
|
- 3.3.2 (2014-02-26) |
243 |
|
|
- ================== |
244 |
|
|
- |
245 |
|
|
- Bugs fixed |
246 |
|
|
- ---------- |
247 |
|
|
- |
248 |
|
|
- * The properties ``resolvers`` and ``version``, as well as the methods |
249 |
|
|
- ``set_element_class_lookup()`` and ``makeelement()``, were lost from |
250 |
|
|
- ``iterparse`` objects. |
251 |
|
|
- |
252 |
|
|
- * LP#1222132: instances of ``XMLSchema``, ``Schematron`` and ``RelaxNG`` |
253 |
|
|
- did not clear their local ``error_log`` before running a validation. |
254 |
|
|
- |
255 |
|
|
- * LP#1238500: lxml.doctestcompare mixed up "expected" and "actual" in |
256 |
|
|
- attribute values. |
257 |
|
|
- |
258 |
|
|
- * Some file I/O tests were failing in MS-Windows due to incorrect temp |
259 |
|
|
- file usage. Initial patch by Gabi Davar. |
260 |
|
|
- |
261 |
|
|
- * LP#910014: duplicate IDs in a document were not reported by DTD |
262 |
|
|
- validation. |
263 |
|
|
- |
264 |
|
|
- * LP#1185332: ``tostring(method="html")`` did not use HTML serialisation |
265 |
|
|
- semantics for trailing tail text. Initial patch by Sylvain Viollon. |
266 |
|
|
- |
267 |
|
|
- * LP#1281139: ``.attrib`` value of Comments lost its mutation methods |
268 |
|
|
- in 3.3.0. Even though it is empty and immutable, it should still |
269 |
|
|
- provide the same interface as that returned for Elements. |
270 |
|
|
|
271 |
|
|
* Fri Feb 28 2014 Jeffrey Ollie <jeff@ocjtech.us> - 3.3.2-1 |
272 |
|
|
- 3.3.1 (2014-02-12) |
273 |
|
|
- ================== |
274 |
|
|
- |
275 |
|
|
- Bugs fixed |
276 |
|
|
- ---------- |
277 |
|
|
- |
278 |
|
|
- * LP#1014290: HTML documents parsed with ``parser.feed()`` failed to find |
279 |
|
|
- elements during tag iteration. |
280 |
|
|
- |
281 |
|
|
- * LP#1273709: Building in PyPy failed due to missing support for |
282 |
|
|
- ``PyUnicode_Compare()`` and ``PyByteArray_*()`` in PyPy's C-API. |
283 |
|
|
- |
284 |
|
|
- * LP#1274413: Compilation in MSVC failed due to missing "stdint.h" standard |
285 |
|
|
- header file. |
286 |
|
|
- |
287 |
|
|
- * LP#1274118: iterparse() failed to parse BOM prefixed files. |
288 |
|
|
|
289 |
|
|
* Mon Jan 27 2014 Jeffrey Ollie <jeff@ocjtech.us> - 3.3.0-2 |
290 |
|
|
- Update Cython requirement to >= 0.20 |
291 |
|
|
|
292 |
|
|
* Mon Jan 27 2014 Jeffrey Ollie <jeff@ocjtech.us> - 3.3.0-1 |
293 |
|
|
- 3.3.0 (2014-01-26) |
294 |
|
|
- ================== |
295 |
|
|
- |
296 |
|
|
- Features added |
297 |
|
|
- -------------- |
298 |
|
|
- |
299 |
|
|
- Bugs fixed |
300 |
|
|
- ---------- |
301 |
|
|
- |
302 |
|
|
- * The heuristic that distinguishes file paths from URLs was tightened |
303 |
|
|
- to produce less false negatives. |
304 |
|
|
- |
305 |
|
|
- Other changes |
306 |
|
|
- ------------- |
307 |
|
|
- |
308 |
|
|
- |
309 |
|
|
- 3.3.0beta5 (2014-01-18) |
310 |
|
|
- ======================= |
311 |
|
|
- |
312 |
|
|
- Features added |
313 |
|
|
- -------------- |
314 |
|
|
- |
315 |
|
|
- * The PEP 393 unicode parsing support gained a fallback for wchar strings |
316 |
|
|
- which might still be somewhat common on Windows systems. |
317 |
|
|
- |
318 |
|
|
- Bugs fixed |
319 |
|
|
- ---------- |
320 |
|
|
- |
321 |
|
|
- * Several error handling problems were fixed throughout the code base that |
322 |
|
|
- could previously lead to exceptions being silently swallowed or not |
323 |
|
|
- properly reported. |
324 |
|
|
- |
325 |
|
|
- * The C-API function ``appendChild()`` is now deprecated as it does not |
326 |
|
|
- propagate exceptions (its return type is ``void``). The new function |
327 |
|
|
- ``appendChildToElement()`` was added as a safe replacement. |
328 |
|
|
- |
329 |
|
|
- * Passing a string into ``fromstringlist()`` raises an exception instead of |
330 |
|
|
- parsing the string character by character. |
331 |
|
|
- |
332 |
|
|
- Other changes |
333 |
|
|
- ------------- |
334 |
|
|
- |
335 |
|
|
- * Document cleanup code was simplified using the new GC features in |
336 |
|
|
- Cython 0.20. |
337 |
|
|
- |
338 |
|
|
- |
339 |
|
|
- 3.3.0beta4 (2014-01-12) |
340 |
|
|
- ======================= |
341 |
|
|
- |
342 |
|
|
- Features added |
343 |
|
|
- -------------- |
344 |
|
|
- |
345 |
|
|
- Bugs fixed |
346 |
|
|
- ---------- |
347 |
|
|
- |
348 |
|
|
- * The (empty) value returned by the ``attrib`` property of Entity and |
349 |
|
|
- Comment objects was mutable. |
350 |
|
|
- |
351 |
|
|
- * Element class lookup wasn't available for the new pull parsers or when |
352 |
|
|
- using a custom parser target. |
353 |
|
|
- |
354 |
|
|
- * Setting Element attributes on instantiation with both the ``attrib`` |
355 |
|
|
- argument and keyword arguments could modify the mapping passed as |
356 |
|
|
- ``attrib``. |
357 |
|
|
- |
358 |
|
|
- * LP#1266171: DTDs instantiated from internal/external subsets (i.e. |
359 |
|
|
- through the docinfo property) lost their attribute declarations. |
360 |
|
|
- |
361 |
|
|
- Other changes |
362 |
|
|
- ------------- |
363 |
|
|
- |
364 |
|
|
- * Built with Cython 0.20pre (gitrev 012ae82eb) to prepare support for |
365 |
|
|
- Python 3.4. |
366 |
|
|
- |
367 |
|
|
- |
368 |
|
|
- 3.3.0beta3 (2014-01-02) |
369 |
|
|
- ======================= |
370 |
|
|
- |
371 |
|
|
- Features added |
372 |
|
|
- -------------- |
373 |
|
|
- |
374 |
|
|
- * Unicode string parsing was optimised for Python 3.3 (PEP 393). |
375 |
|
|
- |
376 |
|
|
- Bugs fixed |
377 |
|
|
- ---------- |
378 |
|
|
- |
379 |
|
|
- * HTML parsing of Unicode strings could misdecode the input on some |
380 |
|
|
- platforms. |
381 |
|
|
- |
382 |
|
|
- * Crash in xmlfile() when closing open elements out of order in an error |
383 |
|
|
- case. |
384 |
|
|
- |
385 |
|
|
- Other changes |
386 |
|
|
- ------------- |
387 |
|
|
- |
388 |
|
|
- |
389 |
|
|
- 3.3.0beta2 (2013-12-20) |
390 |
|
|
- ======================= |
391 |
|
|
- |
392 |
|
|
- Features added |
393 |
|
|
- -------------- |
394 |
|
|
- |
395 |
|
|
- * ``iterparse()`` supports the ``recover`` option. |
396 |
|
|
- |
397 |
|
|
- Bugs fixed |
398 |
|
|
- ---------- |
399 |
|
|
- |
400 |
|
|
- * Crash in ``iterparse()`` for HTML parsing. |
401 |
|
|
- |
402 |
|
|
- * Crash in target parsing with attributes. |
403 |
|
|
- |
404 |
|
|
- Other changes |
405 |
|
|
- ------------- |
406 |
|
|
- |
407 |
|
|
- * The safety check in the read-only tree implementation (e.g. used by |
408 |
|
|
- ``PythonElementClassLookup``) raises a more appropriate |
409 |
|
|
- ``ReferenceError`` for illegal access after tree disposal instead of |
410 |
|
|
- an ``AssertionError``. This should only impact test code that |
411 |
|
|
- specifically checks the original behaviour. |
412 |
|
|
- |
413 |
|
|
- |
414 |
|
|
- 3.3.0beta1 (2013-12-12) |
415 |
|
|
- ======================= |
416 |
|
|
- |
417 |
|
|
- Features added |
418 |
|
|
- -------------- |
419 |
|
|
- |
420 |
|
|
- * New option ``handle_failures`` in ``make_links_absolute()`` and |
421 |
|
|
- ``resolve_base_href()`` (lxml.html) that enables ignoring or |
422 |
|
|
- discarding links that fail to parse as URLs. |
423 |
|
|
- |
424 |
|
|
- * New parser classes ``XMLPullParser`` and ``HTMLPullParser`` for |
425 |
|
|
- incremental parsing, as implemented for ElementTree in Python 3.4. |
426 |
|
|
- |
427 |
|
|
- * ``iterparse()`` enables recovery mode by default for HTML parsing |
428 |
|
|
- (``html=True``). |
429 |
|
|
- |
430 |
|
|
- Bugs fixed |
431 |
|
|
- ---------- |
432 |
|
|
- |
433 |
|
|
- * LP#1255132: crash when trying to run validation over non-Element (e.g. |
434 |
|
|
- comment or PI). |
435 |
|
|
- |
436 |
|
|
- * Error messages in the log and in exception messages that originated |
437 |
|
|
- from libxml2 could accidentally be picked up from preceding warnings |
438 |
|
|
- instead of the actual error. |
439 |
|
|
- |
440 |
|
|
- * The ``ElementMaker`` in lxml.objectify did not accept a dict as |
441 |
|
|
- argument for adding attributes to the element it's building. This |
442 |
|
|
- works as in lxml.builder now. |
443 |
|
|
- |
444 |
|
|
- * LP#1228881: ``repr(XSLTAccessControl)`` failed in Python 3. |
445 |
|
|
- |
446 |
|
|
- * Raise ``ValueError`` when trying to append an Element to itself or |
447 |
|
|
- to one of its own descendants, instead of running into an infinite |
448 |
|
|
- loop. |
449 |
|
|
- |
450 |
|
|
- * LP#1206077: htmldiff discarded whitespace from the output. |
451 |
|
|
- |
452 |
|
|
- * Compressed plain-text serialisation to file-like objects was broken. |
453 |
|
|
- |
454 |
|
|
- * lxml.html.formfill: Fix textarea form filling. |
455 |
|
|
- The textarea used to be cleared before the new content was set, |
456 |
|
|
- which removed the name attribute. |
457 |
|
|
- |
458 |
|
|
- Other changes |
459 |
|
|
- ------------- |
460 |
|
|
- |
461 |
|
|
- * Some basic API classes use freelists internally for faster |
462 |
|
|
- instantiation. This can speed up some ``iterparse()`` scenarios, |
463 |
|
|
- for example. |
464 |
|
|
- |
465 |
|
|
- * ``iterparse()`` was rewritten to use the new ``*PullParser`` |
466 |
|
|
- classes internally instead of being a parser itself. |
467 |
|
|
|
468 |
|
|
* Mon Nov 11 2013 Jeffrey Ollie <jeff@ocjtech.us> - 3.2.4-1 |
469 |
|
|
- 3.2.4 (2013-11-07) |
470 |
|
|
- ================== |
471 |
|
|
- |
472 |
|
|
- Bugs fixed |
473 |
|
|
- ---------- |
474 |
|
|
- |
475 |
|
|
- * Memory leak when creating an XPath evaluator in a thread. |
476 |
|
|
- |
477 |
|
|
- * LP#1228881: ``repr(XSLTAccessControl)`` failed in Python 3. |
478 |
|
|
- |
479 |
|
|
- * Raise ``ValueError`` when trying to append an Element to itself or |
480 |
|
|
- to one of its own descendants. |
481 |
|
|
- |
482 |
|
|
- * LP#1206077: htmldiff discarded whitespace from the output. |
483 |
|
|
- |
484 |
|
|
- * Compressed plain-text serialisation to file-like objects was broken. |
485 |
|
|
|
486 |
|
|
* Wed Sep 18 2013 Jeffrey Ollie <jeff@ocjtech.us> - 3.2.3-2 |
487 |
|
|
- Add requirement for on python-cssselect for the python2 version |
488 |
|
|
|
489 |
|
|
* Sun Jul 28 2013 Jeffrey Ollie <jeff@ocjtech.us> - 3.2.3-1 |
490 |
|
|
- and here's a version 3.2.3. The last release accidentally lost the ability |
491 |
|
|
- to work on Python 2.4. There are no other changes over 3.2.2. |
492 |
|
|
- |
493 |
|
|
- 3.2.2 (2013-07-28) |
494 |
|
|
- ================== |
495 |
|
|
- |
496 |
|
|
- Features added |
497 |
|
|
- -------------- |
498 |
|
|
- |
499 |
|
|
- Bugs fixed |
500 |
|
|
- ---------- |
501 |
|
|
- |
502 |
|
|
- * LP#1185701: spurious XMLSyntaxError after finishing iterparse(). |
503 |
|
|
- |
504 |
|
|
- * Crash in lxml.objectify during xsi annotation. |
505 |
|
|
- |
506 |
|
|
- Other changes |
507 |
|
|
- ------------- |
508 |
|
|
- |
509 |
|
|
- * Return values of user provided element class lookup methods are now |
510 |
|
|
- validated against the type of the XML node they represent to prevent |
511 |
|
|
- API class mismatches. |
512 |
|
|
|
513 |
|
|
* Sun May 12 2013 Jeffrey Ollie <jeff@ocjtech.us> - 3.2.1-1 |
514 |
|
|
- 3.2.1 (2013-05-11) |
515 |
|
|
- ================== |
516 |
|
|
- |
517 |
|
|
- Features added |
518 |
|
|
- -------------- |
519 |
|
|
- |
520 |
|
|
- * The methods ``apply_templates()`` and ``process_children()`` of XSLT |
521 |
|
|
- extension elements have gained two new boolean options ``elements_only`` |
522 |
|
|
- and ``remove_blank_text`` that discard either all strings or |
523 |
|
|
- whitespace-only strings from the result list. |
524 |
|
|
- |
525 |
|
|
- Bugs fixed |
526 |
|
|
- ---------- |
527 |
|
|
- |
528 |
|
|
- * When moving Elements to another tree, the namespace cleanup mechanism |
529 |
|
|
- no longer drops namespace prefixes from attributes for which it finds |
530 |
|
|
- a default namespace declaration, to prevent them from appearing as |
531 |
|
|
- unnamespaced attributes after serialisation. |
532 |
|
|
- |
533 |
|
|
- * Returning non-type objects from a custom class lookup method could lead |
534 |
|
|
- to a crash. |
535 |
|
|
- |
536 |
|
|
- * Instantiating and using subtypes of Comments and ProcessingInstructions |
537 |
|
|
- crashed. |
538 |
|
|
|
539 |
|
|
* Fri May 10 2013 Jeffrey Ollie <jeff@ocjtech.us> - 3.2.0-1 |
540 |
|
|
- 3.2.0 (2013-04-28) |
541 |
|
|
- ================== |
542 |
|
|
- |
543 |
|
|
- Features added |
544 |
|
|
- -------------- |
545 |
|
|
- |
546 |
|
|
- Bugs fixed |
547 |
|
|
- ---------- |
548 |
|
|
- |
549 |
|
|
- * LP#690319: Leading whitespace could change the behaviour of the string |
550 |
|
|
- parsing functions in ``lxml.html``. |
551 |
|
|
- |
552 |
|
|
- * LP#599318: The string parsing functions in ``lxml.html`` are more robust |
553 |
|
|
- in the face of uncommon HTML content like framesets or missing body tags. |
554 |
|
|
- Patch by Stefan Seelmann. |
555 |
|
|
- |
556 |
|
|
- * LP#712941: I/O errors while trying to access files with paths that |
557 |
|
|
- contain non-ASCII characters could raise ``UnicodeDecodeError`` instead |
558 |
|
|
- of properly reporting the ``IOError``. |
559 |
|
|
- |
560 |
|
|
- * LP#673205: Parsing from in-memory strings disabled network access in the |
561 |
|
|
- default parser and made subsequent attempts to parse from a URL fail. |
562 |
|
|
- |
563 |
|
|
- * LP#971754: lxml.html.clean appends 'nofollow' to 'rel' attributes instead |
564 |
|
|
- of overwriting the current value. |
565 |
|
|
- |
566 |
|
|
- * LP#715687: lxml.html.clean no longer discards scripts that are explicitly |
567 |
|
|
- allowed by the user provided whitelist. Patch by Christine Koppelt. |
568 |
|
|
- |
569 |
|
|
- 3.1.2 (2013-04-12) |
570 |
|
|
- ================== |
571 |
|
|
- |
572 |
|
|
- Bugs fixed |
573 |
|
|
- ---------- |
574 |
|
|
- |
575 |
|
|
- * LP#1136509: Passing attributes through the namespace-unaware API of |
576 |
|
|
- the sax bridge (i.e. the ``handler.startElement()`` method) failed |
577 |
|
|
- with a ``TypeError``. Patch by Mike Bayer. |
578 |
|
|
- |
579 |
|
|
- * LP#1123074: Fix serialisation error in XSLT output when converting |
580 |
|
|
- the result tree to a Unicode string. |
581 |
|
|
- |
582 |
|
|
- * GH#105: Replace illegal usage of ``xmlBufLength()`` in libxml2 2.9.0 |
583 |
|
|
- by properly exported API function ``xmlBufUse()``. |
584 |
|
|
- |
585 |
|
|
- 3.1.1 (2013-03-29) |
586 |
|
|
- ================== |
587 |
|
|
- |
588 |
|
|
- Features added |
589 |
|
|
- -------------- |
590 |
|
|
- |
591 |
|
|
- Bugs fixed |
592 |
|
|
- ---------- |
593 |
|
|
- |
594 |
|
|
- * LP#1160386: Write access to ``lxml.html.FormElement.fields`` raised |
595 |
|
|
- an AttributeError in Py3. |
596 |
|
|
- |
597 |
|
|
- * Illegal memory access during cleanup in incremental xmlfile writer. |
598 |
|
|
- |
599 |
|
|
- Other changes |
600 |
|
|
- ------------- |
601 |
|
|
- |
602 |
|
|
- * The externally useless class ``lxml.etree._BaseParser`` was removed |
603 |
|
|
- from the module dict. |
604 |
|
|
|
605 |
|
|
* Fri Mar 8 2013 Jeffrey Ollie <jeff@ocjtech.us> - 3.1.0-1 |
606 |
|
|
- 3.1.0 (2013-02-10) |
607 |
|
|
- ================== |
608 |
|
|
- |
609 |
|
|
- Features added |
610 |
|
|
- -------------- |
611 |
|
|
- |
612 |
|
|
- * GH#89: lxml.html.clean allows overriding the set of attributes that it |
613 |
|
|
- considers 'safe'. Patch by Francis Devereux. |
614 |
|
|
- |
615 |
|
|
- Bugs fixed |
616 |
|
|
- ---------- |
617 |
|
|
- |
618 |
|
|
- * LP#1104370: ``copy.copy(el.attrib)`` raised an exception. It now returns |
619 |
|
|
- a copy of the attributes as a plain Python dict. |
620 |
|
|
- |
621 |
|
|
- * GH#95: When used with namespace prefixes, the ``el.find*()`` methods |
622 |
|
|
- always used the first namespace mapping that was provided for each |
623 |
|
|
- path expression instead of using the one that was actually passed |
624 |
|
|
- in for the current run. |
625 |
|
|
- |
626 |
|
|
- * LP#1092521, GH#91: Fix undefined C symbol in Python runtimes compiled |
627 |
|
|
- without threading support. Patch by Ulrich Seidl. |
628 |
|
|
- |
629 |
|
|
- Other changes |
630 |
|
|
- ------------- |
631 |
|
|
- |
632 |
|
|
- |
633 |
|
|
- 3.1beta1 (2012-12-21) |
634 |
|
|
- ===================== |
635 |
|
|
- |
636 |
|
|
- Features added |
637 |
|
|
- -------------- |
638 |
|
|
- |
639 |
|
|
- * New build-time option ``--with-unicode-strings`` for Python 2 that |
640 |
|
|
- makes the API always return Unicode strings for names and text |
641 |
|
|
- instead of byte strings for plain ASCII content. |
642 |
|
|
- |
643 |
|
|
- * New incremental XML file writing API ``etree.xmlfile()``. |
644 |
|
|
- |
645 |
|
|
- * E factory in lxml.objectify is callable to simplify the creation of |
646 |
|
|
- tags with non-identifier names without having to resort to getattr(). |
647 |
|
|
- |
648 |
|
|
- Bugs fixed |
649 |
|
|
- ---------- |
650 |
|
|
- |
651 |
|
|
- * When starting from a non-namespaced element in lxml.objectify, searching |
652 |
|
|
- for a child without explicitly specifying a namespace incorrectly found |
653 |
|
|
- namespaced elements with the requested local name, instead of restricting |
654 |
|
|
- the search to non-namespaced children. |
655 |
|
|
- |
656 |
|
|
- * GH#85: Deprecation warnings were fixed for Python 3.x. |
657 |
|
|
- |
658 |
|
|
- * GH#33: lxml.html.fromstring() failed to accept bytes input in Py3. |
659 |
|
|
- |
660 |
|
|
- * LP#1080792: Static build of libxml2 2.9.0 failed due to missing file. |
661 |
|
|
- |
662 |
|
|
- Other changes |
663 |
|
|
- ------------- |
664 |
|
|
- |
665 |
|
|
- * The externally useless class ``_ObjectifyElementMakerCaller`` was |
666 |
|
|
- removed from the module API of lxml.objectify. |
667 |
|
|
- |
668 |
|
|
- * LP#1075622: lxml.builder is faster for adding text to elements with |
669 |
|
|
- many children. Patch by Anders Hammarquist. |
670 |
|
|
|
671 |
|
|
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.1-2 |
672 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild |
673 |
|
|
|
674 |
|
|
* Mon Oct 15 2012 Jeffrey Ollie <jeff@ocjtech.us> - 3.0.1-1 |
675 |
|
|
- 3.0.1 (2012-10-14) |
676 |
|
|
- Bugs fixed |
677 |
|
|
- |
678 |
|
|
- * LP#1065924: Element proxies could disappear during garbage collection |
679 |
|
|
- in PyPy without proper cleanup. |
680 |
|
|
- * GH#71: Failure to work with libxml2 2.6.x. |
681 |
|
|
- * LP#1065139: static MacOS-X build failed in Py3. |
682 |
|
|
|
683 |
|
|
* Wed Oct 10 2012 Jeffrey Ollie <jeff@ocjtech.us> - 3.0-1 |
684 |
|
|
- 3.0 (2012-10-08) |
685 |
|
|
- ================ |
686 |
|
|
- |
687 |
|
|
- Features added |
688 |
|
|
- -------------- |
689 |
|
|
- |
690 |
|
|
- Bugs fixed |
691 |
|
|
- ---------- |
692 |
|
|
- |
693 |
|
|
- * End-of-file handling was incorrect in iterparse() when reading from |
694 |
|
|
- a low-level C file stream and failed in libxml2 2.9.0 due to its |
695 |
|
|
- improved consistency checks. |
696 |
|
|
- |
697 |
|
|
- Other changes |
698 |
|
|
- ------------- |
699 |
|
|
- |
700 |
|
|
- * The build no longer uses Cython by default unless the generated C files |
701 |
|
|
- are missing. To use Cython, pass the option "--with-cython". To ignore |
702 |
|
|
- the fatal build error when Cython is required but not available (e.g. to |
703 |
|
|
- run special setup.py commands that do not actually run a build), pass |
704 |
|
|
- "--without-cython". |
705 |
|
|
- |
706 |
|
|
- |
707 |
|
|
- 3.0beta1 (2012-09-26) |
708 |
|
|
- ===================== |
709 |
|
|
- |
710 |
|
|
- Features added |
711 |
|
|
- -------------- |
712 |
|
|
- |
713 |
|
|
- * Python level access to (optional) libxml2 memory debugging features |
714 |
|
|
- to simplify debugging of memory leaks etc. |
715 |
|
|
- |
716 |
|
|
- Bugs fixed |
717 |
|
|
- ---------- |
718 |
|
|
- |
719 |
|
|
- * Fix a memory leak in XPath by switching to Cython 0.17.1. |
720 |
|
|
- |
721 |
|
|
- * Some tests were adapted to work with PyPy. |
722 |
|
|
- |
723 |
|
|
- Other changes |
724 |
|
|
- ------------- |
725 |
|
|
- |
726 |
|
|
- * The code was adapted to work with the upcoming libxml2 2.9.0 release. |
727 |
|
|
- |
728 |
|
|
- |
729 |
|
|
- 3.0alpha2 (2012-08-23) |
730 |
|
|
- ====================== |
731 |
|
|
- |
732 |
|
|
- Features added |
733 |
|
|
- -------------- |
734 |
|
|
- |
735 |
|
|
- * The .iter() method of elements now accepts tag arguments like "{*}name" |
736 |
|
|
- to search for elements with a given local name in any namespace. With |
737 |
|
|
- this addition, all combinations of wildcards now work as expected: |
738 |
|
|
- "{ns}name", "{}name", "{*}name", "{ns}*", "{}*" and "{*}*". Note that |
739 |
|
|
- "name" is equivalent to "{}name", but "*" is "{*}*". The same change |
740 |
|
|
- applies to the .getiterator(), .itersiblings(), .iterancestors(), |
741 |
|
|
- .iterdescendants(), .iterchildren() and .itertext() methods, the |
742 |
|
|
- strip_attributes(), strip_elements() and strip_tags() functions as well |
743 |
|
|
- as the iterparse() function. |
744 |
|
|
- |
745 |
|
|
- * C14N allows specifying the inclusive prefixes to be promoted to |
746 |
|
|
- top-level during exclusive serialisation. |
747 |
|
|
- |
748 |
|
|
- Bugs fixed |
749 |
|
|
- ---------- |
750 |
|
|
- |
751 |
|
|
- * Passing long Unicode strings into the feed() parser interface failed to |
752 |
|
|
- read the entire string. |
753 |
|
|
- |
754 |
|
|
- Other changes |
755 |
|
|
- ------------- |
756 |
|
|
- |
757 |
|
|
- |
758 |
|
|
- 3.0alpha1 (2012-07-31) |
759 |
|
|
- ====================== |
760 |
|
|
- |
761 |
|
|
- Features added |
762 |
|
|
- -------------- |
763 |
|
|
- |
764 |
|
|
- * Initial support for building in PyPy (through cpyext). |
765 |
|
|
- |
766 |
|
|
- * DTD objects gained an API that allows read access to their |
767 |
|
|
- declarations. |
768 |
|
|
- |
769 |
|
|
- * xpathgrep.py gained support for parsing line-by-line (e.g. |
770 |
|
|
- from grep output) and for surrounding the output with a new root |
771 |
|
|
- tag. |
772 |
|
|
- |
773 |
|
|
- * E-factory in lxml.builder accepts subtypes of known data |
774 |
|
|
- types (such as string subtypes) when building elements around them. |
775 |
|
|
- |
776 |
|
|
- * Tree iteration and iterparse() with a selective tag |
777 |
|
|
- argument supports passing a set of tags. Tree nodes will be |
778 |
|
|
- returned by the iterators if they match any of the tags. |
779 |
|
|
- |
780 |
|
|
- Bugs fixed |
781 |
|
|
- ---------- |
782 |
|
|
- |
783 |
|
|
- * The .find*() methods in lxml.objectify no longer use XPath |
784 |
|
|
- internally, which makes them faster in many cases (especially when |
785 |
|
|
- short circuiting after a single or couple of elements) and fixes |
786 |
|
|
- some behavioural differences compared to lxml.etree. Note that |
787 |
|
|
- this means that they no longer support arbitrary XPath expressions |
788 |
|
|
- but only the subset that the ElementPath language supports. |
789 |
|
|
- The previous implementation was also redundant with the normal |
790 |
|
|
- XPath support, which can be used as a replacement. |
791 |
|
|
- |
792 |
|
|
- * el.find('*') could accidentally return a comment or processing |
793 |
|
|
- instruction that happened to be in the wrong spot. (Same for the |
794 |
|
|
- other .find*() methods.) |
795 |
|
|
- |
796 |
|
|
- * The error logging is less intrusive and avoids a global setup where |
797 |
|
|
- possible. |
798 |
|
|
- |
799 |
|
|
- * Fixed undefined names in html5lib parser. |
800 |
|
|
- |
801 |
|
|
- * xpathgrep.py did not work in Python 3. |
802 |
|
|
- |
803 |
|
|
- * Element.attrib.update() did not accept an attrib of |
804 |
|
|
- another Element as parameter. |
805 |
|
|
- |
806 |
|
|
- * For subtypes of ElementBase that make the .text or .tail |
807 |
|
|
- properties immutable (as in objectify, for example), inserting text |
808 |
|
|
- when creating Elements through the E-Factory feature of the class |
809 |
|
|
- constructor would fail with an exception, stating that the text |
810 |
|
|
- cannot be modified. |
811 |
|
|
- |
812 |
|
|
- Other changes |
813 |
|
|
- -------------- |
814 |
|
|
- |
815 |
|
|
- * The code base was overhauled to properly use 'const' where the API |
816 |
|
|
- of libxml2 and libxslt requests it. This also has an impact on the |
817 |
|
|
- public C-API of lxml itself, as defined in etreepublic.pxd, as |
818 |
|
|
- well as the provided declarations in the lxml/includes/ directory. |
819 |
|
|
- Code that uses these declarations may have to be adapted. On the |
820 |
|
|
- plus side, this fixes several C compiler warnings, also for user |
821 |
|
|
- code, thus making it easier to spot real problems again. |
822 |
|
|
- |
823 |
|
|
- * The functionality of "lxml.cssselect" was moved into a separate PyPI |
824 |
|
|
- package called "cssselect". To continue using it, you must install |
825 |
|
|
- that package separately. The "lxml.cssselect" module is still |
826 |
|
|
- available and provides the same interface, provided the "cssselect" |
827 |
|
|
- package can be imported at runtime. |
828 |
|
|
- |
829 |
|
|
- * Element attributes passed in as an attrib dict or as keyword |
830 |
|
|
- arguments are now sorted by (namespaced) name before being created |
831 |
|
|
- to make their order predictable for serialisation and iteration. |
832 |
|
|
- Note that adding or deleting attributes afterwards does not take |
833 |
|
|
- that order into account, i.e. setting a new attribute appends it |
834 |
|
|
- after the existing ones. |
835 |
|
|
- |
836 |
|
|
- * Several classes that are for internal use only were removed |
837 |
|
|
- from the lxml.etree module dict: |
838 |
|
|
- _InputDocument, _ResolverRegistry, _ResolverContext, _BaseContext, |
839 |
|
|
- _ExsltRegExp, _IterparseContext, _TempStore, _ExceptionContext, |
840 |
|
|
- __ContentOnlyElement, _AttribIterator, _NamespaceRegistry, |
841 |
|
|
- _ClassNamespaceRegistry, _FunctionNamespaceRegistry, |
842 |
|
|
- _XPathFunctionNamespaceRegistry, _ParserDictionaryContext, |
843 |
|
|
- _FileReaderContext, _ParserContext, _PythonSaxParserTarget, |
844 |
|
|
- _TargetParserContext, _ReadOnlyProxy, _ReadOnlyPIProxy, |
845 |
|
|
- _ReadOnlyEntityProxy, _ReadOnlyElementProxy, _OpaqueNodeWrapper, |
846 |
|
|
- _OpaqueDocumentWrapper, _ModifyContentOnlyProxy, |
847 |
|
|
- _ModifyContentOnlyPIProxy, _ModifyContentOnlyEntityProxy, |
848 |
|
|
- _AppendOnlyElementProxy, _SaxParserContext, _FilelikeWriter, |
849 |
|
|
- _ParserSchemaValidationContext, _XPathContext, |
850 |
|
|
- _XSLTResolverContext, _XSLTContext, _XSLTQuotedStringParam |
851 |
|
|
- |
852 |
|
|
- * Several internal classes can no longer be inherited from: |
853 |
|
|
- _InputDocument, _ResolverRegistry, _ExsltRegExp, _ElementUnicodeResult, |
854 |
|
|
- _IterparseContext, _TempStore, _AttribIterator, _ClassNamespaceRegistry, |
855 |
|
|
- _XPathFunctionNamespaceRegistry, _ParserDictionaryContext, |
856 |
|
|
- _FileReaderContext, _PythonSaxParserTarget, _TargetParserContext, |
857 |
|
|
- _ReadOnlyPIProxy, _ReadOnlyEntityProxy, _OpaqueDocumentWrapper, |
858 |
|
|
- _ModifyContentOnlyPIProxy, _ModifyContentOnlyEntityProxy, |
859 |
|
|
- _AppendOnlyElementProxy, _FilelikeWriter, _ParserSchemaValidationContext, |
860 |
|
|
- _XPathContext, _XSLTResolverContext, _XSLTContext, |
861 |
|
|
- _XSLTQuotedStringParam, _XSLTResultTree, _XSLTProcessingInstruction |
862 |
|
|
|
863 |
|
|
* Thu Sep 27 2012 Jeffrey Ollie <jeff@ocjtech.us> - 2.3.5-1 |
864 |
|
|
- Bugs fixed |
865 |
|
|
- |
866 |
|
|
- * Crash when merging text nodes in element.remove(). |
867 |
|
|
- * Crash in sax/target parser when reporting empty doctype. |
868 |
|
|
|
869 |
|
|
* Thu Sep 27 2012 Jeffrey Ollie <jeff@ocjtech.us> - 2.3.4-1 |
870 |
|
|
- Bugs fixed |
871 |
|
|
- |
872 |
|
|
- * Crash when building an nsmap (Element property) with empty namespace |
873 |
|
|
- URIs. |
874 |
|
|
- * Crash due to race condition when errors (or user messages) occur during |
875 |
|
|
- threaded XSLT processing (or compilation). |
876 |
|
|
- * XSLT stylesheet compilation could ignore compilation errors. |
877 |
|
|
|
878 |
|
|
* Sat Aug 04 2012 David Malcolm <dmalcolm@redhat.com> - 2.3.3-4 |
879 |
|
|
- rebuild for https://fedoraproject.org/wiki/Features/Python_3.3 |
880 |
|
|
|
881 |
|
|
* Fri Aug 3 2012 David Malcolm <dmalcolm@redhat.com> - 2.3.3-3 |
882 |
|
|
- remove rhel logic from with_python3 conditional |
883 |
|
|
|
884 |
|
|
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.3-2 |
885 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild |
886 |
|
|
|
887 |
|
|
* Thu Jan 5 2012 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.3.3-1 |
888 |
|
|
- 2.3.3 (2012-01-04) |
889 |
|
|
- Features added |
890 |
|
|
- |
891 |
|
|
- * lxml.html.tostring() gained new serialisation options with_tail and |
892 |
|
|
- doctype. |
893 |
|
|
- |
894 |
|
|
- Bugs fixed |
895 |
|
|
- |
896 |
|
|
- * Fixed a crash when using iterparse() for HTML parsing and requesting |
897 |
|
|
- start events. |
898 |
|
|
- * Fixed parsing of more selectors in cssselect. Whitespace before pseudo- |
899 |
|
|
- elements and pseudo-classes is significant as it is a descendant |
900 |
|
|
- combinator. "E :pseudo" should parse the same as "E *:pseudo", not |
901 |
|
|
- "E:pseudo". Patch by Simon Sapin. |
902 |
|
|
- * lxml.html.diff no longer raises an exception when hitting 'img' tags |
903 |
|
|
- without 'src' attribute. |
904 |
|
|
|
905 |
|
|
* Mon Nov 14 2011 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.3.2-1 |
906 |
|
|
- 2.3.2 (2011-11-11) |
907 |
|
|
- Features added |
908 |
|
|
- |
909 |
|
|
- * lxml.objectify.deannotate() has a new boolean option |
910 |
|
|
- cleanup_namespaces to remove the objectify namespace declarations |
911 |
|
|
- (and generally clean up the namespace declarations) after removing |
912 |
|
|
- the type annotations. |
913 |
|
|
- * lxml.objectify gained its own SubElement() function as a copy of |
914 |
|
|
- etree.SubElement to avoid an otherwise redundant import of |
915 |
|
|
- lxml.etree on the user side. |
916 |
|
|
- |
917 |
|
|
- Bugs fixed |
918 |
|
|
- |
919 |
|
|
- * Fixed the "descendant" bug in cssselect a second time (after a first |
920 |
|
|
- fix in lxml 2.3.1). The previous change resulted in a serious |
921 |
|
|
- performance regression for the XPath based evaluation of the |
922 |
|
|
- translated expression. Note that this breaks the usage of some |
923 |
|
|
- of the generated XPath expressions as XSLT location paths that |
924 |
|
|
- previously worked in 2.3.1. |
925 |
|
|
- * Fixed parsing of some selectors in cssselect. Whitespace after |
926 |
|
|
- combinators ">", "+" and "~" is now correctly ignored. Previously |
927 |
|
|
- it was parsed as a descendant combinator. For example, "div> .foo" |
928 |
|
|
- was parsed the same as "div>* .foo" instead of "div>.foo". Patch by |
929 |
|
|
- Simon Sapin. |
930 |
|
|
|
931 |
|
|
* Sun Sep 25 2011 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.3.1-1 |
932 |
|
|
- Features added |
933 |
|
|
- -------------- |
934 |
|
|
- |
935 |
|
|
- * New option kill_tags in lxml.html.clean to remove specific |
936 |
|
|
- tags and their content (i.e. their whole subtree). |
937 |
|
|
- |
938 |
|
|
- * pi.get() and pi.attrib on processing instructions to parse |
939 |
|
|
- pseudo-attributes from the text content of processing instructions. |
940 |
|
|
- |
941 |
|
|
- * lxml.get_include() returns a list of include paths that can be |
942 |
|
|
- used to compile external C code against lxml.etree. This is |
943 |
|
|
- specifically required for statically linked lxml builds when code |
944 |
|
|
- needs to compile against the exact same header file versions as lxml |
945 |
|
|
- itself. |
946 |
|
|
- |
947 |
|
|
- * Resolver.resolve_file() takes an additional option |
948 |
|
|
- close_file that configures if the file(-like) object will be |
949 |
|
|
- closed after reading or not. By default, the file will be closed, |
950 |
|
|
- as the user is not expected to keep a reference to it. |
951 |
|
|
- |
952 |
|
|
- Bugs fixed |
953 |
|
|
- ---------- |
954 |
|
|
- |
955 |
|
|
- * HTML cleaning didn't remove 'data:' links. |
956 |
|
|
- |
957 |
|
|
- * The html5lib parser integration now uses the 'official' |
958 |
|
|
- implementation in html5lib itself, which makes it work with newer |
959 |
|
|
- releases of the library. |
960 |
|
|
- |
961 |
|
|
- * In lxml.sax, endElementNS() could incorrectly reject a plain |
962 |
|
|
- tag name when the corresponding start event inferred the same plain |
963 |
|
|
- tag name to be in the default namespace. |
964 |
|
|
- |
965 |
|
|
- * When an open file-like object is passed into parse() or |
966 |
|
|
- iterparse(), the parser will no longer close it after use. This |
967 |
|
|
- reverts a change in lxml 2.3 where all files would be closed. It is |
968 |
|
|
- the users responsibility to properly close the file(-like) object, |
969 |
|
|
- also in error cases. |
970 |
|
|
- |
971 |
|
|
- * Assertion error in lxml.html.cleaner when discarding top-level elements. |
972 |
|
|
- |
973 |
|
|
- * In lxml.cssselect, use the xpath 'A//B' (short for |
974 |
|
|
- 'A/descendant-or-self::node()/B') instead of 'A/descendant::B' for the |
975 |
|
|
- css descendant selector ('A B'). This makes a few edge cases to be |
976 |
|
|
- consistent with the selector behavior in WebKit and Firefox, and makes |
977 |
|
|
- more css expressions valid location paths (for use in xsl:template |
978 |
|
|
- match). |
979 |
|
|
- |
980 |
|
|
- * In lxml.html, non-selected <option> tags no longer show up in the |
981 |
|
|
- collected form values. |
982 |
|
|
- |
983 |
|
|
- * Adding/removing <option> values to/from a multiple select form |
984 |
|
|
- field properly selects them and unselects them. |
985 |
|
|
- |
986 |
|
|
- Other changes |
987 |
|
|
- -------------- |
988 |
|
|
- |
989 |
|
|
- * Static builds can specify the download directory with the |
990 |
|
|
- --download-dir option. |
991 |
|
|
|
992 |
|
|
|
993 |
|
|
* Tue Apr 19 2011 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.3-1 |
994 |
|
|
- 2.3 (2011-02-06) |
995 |
|
|
- ================ |
996 |
|
|
- |
997 |
|
|
- Features added |
998 |
|
|
- -------------- |
999 |
|
|
- |
1000 |
|
|
- * When looking for children, ``lxml.objectify`` takes '{}tag' as |
1001 |
|
|
- meaning an empty namespace, as opposed to the parent namespace. |
1002 |
|
|
- |
1003 |
|
|
- Bugs fixed |
1004 |
|
|
- ---------- |
1005 |
|
|
- |
1006 |
|
|
- * When finished reading from a file-like object, the parser |
1007 |
|
|
- immediately calls its ``.close()`` method. |
1008 |
|
|
- |
1009 |
|
|
- * When finished parsing, ``iterparse()`` immediately closes the input |
1010 |
|
|
- file. |
1011 |
|
|
- |
1012 |
|
|
- * Work-around for libxml2 bug that can leave the HTML parser in a |
1013 |
|
|
- non-functional state after parsing a severly broken document (fixed |
1014 |
|
|
- in libxml2 2.7.8). |
1015 |
|
|
- |
1016 |
|
|
- * ``marque`` tag in HTML cleanup code is correctly named ``marquee``. |
1017 |
|
|
- |
1018 |
|
|
- Other changes |
1019 |
|
|
- -------------- |
1020 |
|
|
- |
1021 |
|
|
- * Some public functions in the Cython-level C-API have more explicit |
1022 |
|
|
- return types. |
1023 |
|
|
- |
1024 |
|
|
- 2.3beta1 (2010-09-06) |
1025 |
|
|
- ===================== |
1026 |
|
|
- |
1027 |
|
|
- Features added |
1028 |
|
|
- -------------- |
1029 |
|
|
- |
1030 |
|
|
- Bugs fixed |
1031 |
|
|
- ---------- |
1032 |
|
|
- |
1033 |
|
|
- * Crash in newer libxml2 versions when moving elements between |
1034 |
|
|
- documents that had attributes on replaced XInclude nodes. |
1035 |
|
|
- |
1036 |
|
|
- * ``XMLID()`` function was missing the optional ``parser`` and |
1037 |
|
|
- ``base_url`` parameters. |
1038 |
|
|
- |
1039 |
|
|
- * Searching for wildcard tags in ``iterparse()`` was broken in Py3. |
1040 |
|
|
- |
1041 |
|
|
- * ``lxml.html.open_in_browser()`` didn't work in Python 3 due to the |
1042 |
|
|
- use of os.tempnam. It now takes an optional 'encoding' parameter. |
1043 |
|
|
- |
1044 |
|
|
- Other changes |
1045 |
|
|
- -------------- |
1046 |
|
|
- |
1047 |
|
|
- 2.3alpha2 (2010-07-24) |
1048 |
|
|
- ====================== |
1049 |
|
|
- |
1050 |
|
|
- Features added |
1051 |
|
|
- -------------- |
1052 |
|
|
- |
1053 |
|
|
- Bugs fixed |
1054 |
|
|
- ---------- |
1055 |
|
|
- |
1056 |
|
|
- * Crash in XSLT when generating text-only result documents with a |
1057 |
|
|
- stylesheet created in a different thread. |
1058 |
|
|
- |
1059 |
|
|
- Other changes |
1060 |
|
|
- -------------- |
1061 |
|
|
- |
1062 |
|
|
- * ``repr()`` of Element objects shows the hex ID with leading 0x |
1063 |
|
|
- (following ElementTree 1.3). |
1064 |
|
|
- |
1065 |
|
|
- 2.3alpha1 (2010-06-19) |
1066 |
|
|
- ====================== |
1067 |
|
|
- |
1068 |
|
|
- Features added |
1069 |
|
|
- -------------- |
1070 |
|
|
- |
1071 |
|
|
- * Keyword argument ``namespaces`` in ``lxml.cssselect.CSSSelector()`` |
1072 |
|
|
- to pass a prefix-to-namespace mapping for the selector. |
1073 |
|
|
- |
1074 |
|
|
- * New function ``lxml.etree.register_namespace(prefix, uri)`` that |
1075 |
|
|
- globally registers a namespace prefix for a namespace that newly |
1076 |
|
|
- created Elements in that namespace will use automatically. Follows |
1077 |
|
|
- ElementTree 1.3. |
1078 |
|
|
- |
1079 |
|
|
- * Support 'unicode' string name as encoding parameter in |
1080 |
|
|
- ``tostring()``, following ElementTree 1.3. |
1081 |
|
|
- |
1082 |
|
|
- * Support 'c14n' serialisation method in ``ElementTree.write()`` and |
1083 |
|
|
- ``tostring()``, following ElementTree 1.3. |
1084 |
|
|
- |
1085 |
|
|
- * The ElementPath expression syntax (``el.find*()``) was extended to |
1086 |
|
|
- match the upcoming ElementTree 1.3 that will ship in the standard |
1087 |
|
|
- library of Python 3.2/2.7. This includes extended support for |
1088 |
|
|
- predicates as well as namespace prefixes (as known from XPath). |
1089 |
|
|
- |
1090 |
|
|
- * During regular XPath evaluation, various ESXLT functions are |
1091 |
|
|
- available within their namespace when using libxslt 1.1.26 or later. |
1092 |
|
|
- |
1093 |
|
|
- * Support passing a readily configured logger instance into |
1094 |
|
|
- ``PyErrorLog``, instead of a logger name. |
1095 |
|
|
- |
1096 |
|
|
- * On serialisation, the new ``doctype`` parameter can be used to |
1097 |
|
|
- override the DOCTYPE (internal subset) of the document. |
1098 |
|
|
- |
1099 |
|
|
- * New parameter ``output_parent`` to ``XSLTExtension.apply_templates()`` |
1100 |
|
|
- to append the resulting content directly to an output element. |
1101 |
|
|
- |
1102 |
|
|
- * ``XSLTExtension.process_children()`` to process the content of the |
1103 |
|
|
- XSLT extension element itself. |
1104 |
|
|
- |
1105 |
|
|
- * ISO-Schematron support based on the de-facto Schematron reference |
1106 |
|
|
- 'skeleton implementation'. |
1107 |
|
|
- |
1108 |
|
|
- * XSLT objects now take XPath object as ``__call__`` stylesheet |
1109 |
|
|
- parameters. |
1110 |
|
|
- |
1111 |
|
|
- * Enable path caching in ElementPath (``el.find*()``) to avoid parsing |
1112 |
|
|
- overhead. |
1113 |
|
|
- |
1114 |
|
|
- * Setting the value of a namespaced attribute always uses a prefixed |
1115 |
|
|
- namespace instead of the default namespace even if both declare the |
1116 |
|
|
- same namespace URI. This avoids serialisation problems when an |
1117 |
|
|
- attribute from a default namespace is set on an element from a |
1118 |
|
|
- different namespace. |
1119 |
|
|
- |
1120 |
|
|
- * XSLT extension elements: support for XSLT context nodes other than |
1121 |
|
|
- elements: document root, comments, processing instructions. |
1122 |
|
|
- |
1123 |
|
|
- * Support for strings (in addition to Elements) in node-sets returned |
1124 |
|
|
- by extension functions. |
1125 |
|
|
- |
1126 |
|
|
- * Forms that lack an ``action`` attribute default to the base URL of |
1127 |
|
|
- the document on submit. |
1128 |
|
|
- |
1129 |
|
|
- * XPath attribute result strings have an ``attrname`` property. |
1130 |
|
|
- |
1131 |
|
|
- * Namespace URIs get validated against RFC 3986 at the API level |
1132 |
|
|
- (required by the XML namespace specification). |
1133 |
|
|
- |
1134 |
|
|
- * Target parsers show their target object in the ``.target`` property |
1135 |
|
|
- (compatible with ElementTree). |
1136 |
|
|
- |
1137 |
|
|
- Bugs fixed |
1138 |
|
|
- ---------- |
1139 |
|
|
- |
1140 |
|
|
- * API is hardened against invalid proxy instances to prevent crashes |
1141 |
|
|
- due to incorrectly instantiated Element instances. |
1142 |
|
|
- |
1143 |
|
|
- * Prevent crash when instantiating ``CommentBase`` and friends. |
1144 |
|
|
- |
1145 |
|
|
- * Export ElementTree compatible XML parser class as |
1146 |
|
|
- ``XMLTreeBuilder``, as it is called in ET 1.2. |
1147 |
|
|
- |
1148 |
|
|
- * ObjectifiedDataElements in lxml.objectify were not hashable. They |
1149 |
|
|
- now use the hash value of the underlying Python value (string, |
1150 |
|
|
- number, etc.) to which they compare equal. |
1151 |
|
|
- |
1152 |
|
|
- * Parsing broken fragments in lxml.html could fail if the fragment |
1153 |
|
|
- contained an orphaned closing '</div>' tag. |
1154 |
|
|
- |
1155 |
|
|
- * Using XSLT extension elements around the root of the output document |
1156 |
|
|
- crashed. |
1157 |
|
|
- |
1158 |
|
|
- * ``lxml.cssselect`` did not distinguish between ``x[attr="val"]`` and |
1159 |
|
|
- ``x [attr="val"]`` (with a space). The latter now matches the |
1160 |
|
|
- attribute independent of the element. |
1161 |
|
|
- |
1162 |
|
|
- * Rewriting multiple links inside of HTML text content could end up |
1163 |
|
|
- replacing unrelated content as replacements could impact the |
1164 |
|
|
- reported position of subsequent matches. Modifications are now |
1165 |
|
|
- simplified by letting the ``iterlinks()`` generator in ``lxml.html`` |
1166 |
|
|
- return links in reversed order if they appear inside the same text |
1167 |
|
|
- node. Thus, replacements and link-internal modifications no longer |
1168 |
|
|
- change the position of links reported afterwards. |
1169 |
|
|
- |
1170 |
|
|
- * The ``.value`` attribute of ``textarea`` elements in lxml.html did |
1171 |
|
|
- not represent the complete raw value (including child tags etc.). It |
1172 |
|
|
- now serialises the complete content on read and replaces the |
1173 |
|
|
- complete content by a string on write. |
1174 |
|
|
- |
1175 |
|
|
- * Target parser didn't call ``.close()`` on the target object if |
1176 |
|
|
- parsing failed. Now it is guaranteed that ``.close()`` will be |
1177 |
|
|
- called after parsing, regardless of the outcome. |
1178 |
|
|
- |
1179 |
|
|
- Other changes |
1180 |
|
|
- ------------- |
1181 |
|
|
- |
1182 |
|
|
- * Official support for Python 3.1.2 and later. |
1183 |
|
|
- |
1184 |
|
|
- * Static MS Windows builds can now download their dependencies |
1185 |
|
|
- themselves. |
1186 |
|
|
- |
1187 |
|
|
- * ``Element.attrib`` no longer uses a cyclic reference back to its |
1188 |
|
|
- Element object. It therefore no longer requires the garbage |
1189 |
|
|
- collector to clean up. |
1190 |
|
|
- |
1191 |
|
|
- * Static builds include libiconv, in addition to libxml2 and libxslt. |
1192 |
|
|
|
1193 |
|
|
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.8-4 |
1194 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild |
1195 |
|
|
|
1196 |
|
|
* Wed Dec 29 2010 David Malcolm <dmalcolm@redhat.com> - 2.2.8-3 |
1197 |
|
|
- rebuild for newer python3 |
1198 |
|
|
|
1199 |
|
|
* Fri Nov 5 2010 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.8-2 |
1200 |
|
|
- Rebuild for newer libxml2 |
1201 |
|
|
|
1202 |
|
|
* Mon Sep 6 2010 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.8-1 |
1203 |
|
|
- 2.2.8 (2010-09-02) |
1204 |
|
|
- Bugs fixed |
1205 |
|
|
- |
1206 |
|
|
- * Crash in newer libxml2 versions when moving elements between |
1207 |
|
|
- documents that had attributes on replaced XInclude nodes. |
1208 |
|
|
- * Import fix for urljoin in Python 3.1+. |
1209 |
|
|
|
1210 |
|
|
* Tue Aug 24 2010 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.7-3 |
1211 |
|
|
- Don't byte-compile files during install because setup.py doesn't |
1212 |
|
|
properly byte compile for Python version 3.2 |
1213 |
|
|
|
1214 |
|
|
* Sun Aug 22 2010 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.7-2 |
1215 |
|
|
- Rebuild for Python 3.2 |
1216 |
|
|
|
1217 |
|
|
* Mon Jul 26 2010 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.7-1 |
1218 |
|
|
- 2.2.7 (2010-07-24) |
1219 |
|
|
- Bugs fixed |
1220 |
|
|
- |
1221 |
|
|
- * Crash in XSLT when generating text-only result documents with a stylesheet created in a different thread. |
1222 |
|
|
|
1223 |
|
|
* Mon Jul 26 2010 David Malcolm <dmalcolm@redhat.com> - 2.2.6-4 |
1224 |
|
|
- actually add the patch this time |
1225 |
|
|
|
1226 |
|
|
* Mon Jul 26 2010 David Malcolm <dmalcolm@redhat.com> - 2.2.6-3 |
1227 |
|
|
- workaround for 2to3 issue (patch 0; bug 600036) |
1228 |
|
|
|
1229 |
|
|
* Thu Jul 22 2010 David Malcolm <dmalcolm@redhat.com> - 2.2.6-2 |
1230 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild |
1231 |
|
|
|
1232 |
|
|
* Tue Mar 2 2010 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.6-1 |
1233 |
|
|
- 2.2.6 (2010-03-02) |
1234 |
|
|
- |
1235 |
|
|
- Bugs fixed |
1236 |
|
|
- |
1237 |
|
|
- * Fixed several Python 3 regressions by building with Cython 0.11.3. |
1238 |
|
|
|
1239 |
|
|
* Mon Mar 1 2010 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.5-1 |
1240 |
|
|
- 2.2.5 (2010-02-28) |
1241 |
|
|
- |
1242 |
|
|
- Features added |
1243 |
|
|
- |
1244 |
|
|
- * Support for running XSLT extension elements on the input root node |
1245 |
|
|
- (e.g. in a template matching on "/"). |
1246 |
|
|
- |
1247 |
|
|
- Bugs fixed |
1248 |
|
|
- |
1249 |
|
|
- * Crash in XPath evaluation when reading smart strings from a document |
1250 |
|
|
- other than the original context document. |
1251 |
|
|
- * Support recent versions of html5lib by not requiring its XHTMLParser |
1252 |
|
|
- in htmlparser.py anymore. |
1253 |
|
|
- * Manually instantiating the custom element classes in lxml.objectify |
1254 |
|
|
- could crash. |
1255 |
|
|
- * Invalid XML text characters were not rejected by the API when they |
1256 |
|
|
- appeared in unicode strings directly after non-ASCII characters. |
1257 |
|
|
- * lxml.html.open_http_urllib() did not work in Python 3. |
1258 |
|
|
- * The functions strip_tags() and strip_elements() in lxml.etree did |
1259 |
|
|
- not remove all occurrences of a tag in all cases. |
1260 |
|
|
- * Crash in XSLT extension elements when the XSLT context node is not |
1261 |
|
|
- an element. |
1262 |
|
|
|
1263 |
|
|
* Mon Feb 15 2010 Thomas Spura <tomspur@fedoraproject.org> - 2.2.4-2 |
1264 |
|
|
- update to current python3 guidelines |
1265 |
|
|
- be more explicit in %%files |
1266 |
|
|
- use %%global and not %%define |
1267 |
|
|
- create docs subpackage |
1268 |
|
|
- add stripping 3-byte Byte Order Marker from src/lxml/tests/test_errors.py |
1269 |
|
|
to get 2to3 to work (dmalcolm) |
1270 |
|
|
- fixes FTBFS (#564674) |
1271 |
|
|
|
1272 |
|
|
* Thu Jan 14 2010 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.4-1 |
1273 |
|
|
- Update to 2.2.4 |
1274 |
|
|
- Enable Python 3 subpackage |
1275 |
|
|
|
1276 |
|
|
* Thu Nov 5 2009 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.3-3 |
1277 |
|
|
- F-13's python build chain must be a little different... |
1278 |
|
|
|
1279 |
|
|
* Thu Nov 5 2009 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.3-2 |
1280 |
|
|
- Add option to build a Python 3 subpackage, original patch by David Malcolm |
1281 |
|
|
|
1282 |
|
|
* Fri Oct 30 2009 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.3-1 |
1283 |
|
|
- 2.2.3 (2009-10-30) |
1284 |
|
|
- Bugs fixed |
1285 |
|
|
- |
1286 |
|
|
- * The resolve_entities option did not work in the incremental feed |
1287 |
|
|
- parser. |
1288 |
|
|
- * Looking up and deleting attributes without a namespace could hit a |
1289 |
|
|
- namespaced attribute of the same name instead. |
1290 |
|
|
- * Late errors during calls to SubElement() (e.g. attribute related |
1291 |
|
|
- ones) could leave a partially initialised element in the tree. |
1292 |
|
|
- * Modifying trees that contain parsed entity references could result |
1293 |
|
|
- in an infinite loop. |
1294 |
|
|
- * ObjectifiedElement.__setattr__ created an empty-string child element |
1295 |
|
|
- when the attribute value was rejected as a non-unicode/non-ascii |
1296 |
|
|
- string |
1297 |
|
|
- * Syntax errors in lxml.cssselect could result in misleading error |
1298 |
|
|
- messages. |
1299 |
|
|
- * Invalid syntax in CSS expressions could lead to an infinite loop in |
1300 |
|
|
- the parser of lxml.cssselect. |
1301 |
|
|
- * CSS special character escapes were not properly handled in |
1302 |
|
|
- lxml.cssselect. |
1303 |
|
|
- * CSS Unicode escapes were not properly decoded in lxml.cssselect. |
1304 |
|
|
- * Select options in HTML forms that had no explicit value attribute |
1305 |
|
|
- were not handled correctly. The HTML standard dictates that their |
1306 |
|
|
- value is defined by their text content. This is now supported by |
1307 |
|
|
- lxml.html. |
1308 |
|
|
- * XPath raised a TypeError when finding CDATA sections. This is now |
1309 |
|
|
- fully supported. |
1310 |
|
|
- * Calling help(lxml.objectify) didn't work at the prompt. |
1311 |
|
|
- * The ElementMaker in lxml.objectify no longer defines the default |
1312 |
|
|
- namespaces when annotation is disabled. |
1313 |
|
|
- * Feed parser failed to honour the 'recover' option on parse errors. |
1314 |
|
|
- * Diverting the error logging to Python's logging system was broken. |
1315 |
|
|
|
1316 |
|
|
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.2-2 |
1317 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild |
1318 |
|
|
|
1319 |
|
|
* Sun Jun 21 2009 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.2-1 |
1320 |
|
|
- 2.2.2 (2009-06-21) |
1321 |
|
|
- Features added |
1322 |
|
|
- |
1323 |
|
|
- * New helper functions strip_attributes(), strip_elements(), |
1324 |
|
|
- strip_tags() in lxml.etree to remove attributes/subtrees/tags |
1325 |
|
|
- from a subtree. |
1326 |
|
|
- |
1327 |
|
|
- Bugs fixed |
1328 |
|
|
- |
1329 |
|
|
- * Namespace cleanup on subtree insertions could result in missing |
1330 |
|
|
- namespace declarations (and potentially crashes) if the element |
1331 |
|
|
- defining a namespace was deleted and the namespace was not used |
1332 |
|
|
- by the top element of the inserted subtree but only in deeper |
1333 |
|
|
- subtrees. |
1334 |
|
|
- * Raising an exception from a parser target callback didn't always |
1335 |
|
|
- terminate the parser. |
1336 |
|
|
- * Only {true, false, 1, 0} are accepted as the lexical representation |
1337 |
|
|
- for BoolElement ({True, False, T, F, t, f} not any more), restoring |
1338 |
|
|
- lxml <= 2.0 behaviour. |
1339 |
|
|
|
1340 |
|
|
* Tue Jun 2 2009 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2.1-1 |
1341 |
|
|
- 2.2.1 (2009-06-02) |
1342 |
|
|
- Features added |
1343 |
|
|
- |
1344 |
|
|
- * Injecting default attributes into a document during XML Schema |
1345 |
|
|
- validation (also at parse time). |
1346 |
|
|
- * Pass huge_tree parser option to disable parser security restrictions |
1347 |
|
|
- imposed by libxml2 2.7. |
1348 |
|
|
- |
1349 |
|
|
- Bugs fixed |
1350 |
|
|
- |
1351 |
|
|
- * The script for statically building libxml2 and libxslt didn't work |
1352 |
|
|
- in Py3. |
1353 |
|
|
- * XMLSchema() also passes invalid schema documents on to libxml2 for |
1354 |
|
|
- parsing (which could lead to a crash before release 2.6.24). |
1355 |
|
|
|
1356 |
|
|
* Tue Mar 24 2009 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2-1 |
1357 |
|
|
- 2.2 (2009-03-21) |
1358 |
|
|
- Features added |
1359 |
|
|
- |
1360 |
|
|
- * Support for standalone flag in XML declaration through |
1361 |
|
|
- tree.docinfo.standalone and by passing standalone=True/False on |
1362 |
|
|
- serialisation. |
1363 |
|
|
- |
1364 |
|
|
- Bugs fixed |
1365 |
|
|
- |
1366 |
|
|
- * Crash when parsing an XML Schema with external imports from a |
1367 |
|
|
- filename. |
1368 |
|
|
|
1369 |
|
|
* Fri Feb 27 2009 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2-0.8.beta4 |
1370 |
|
|
- 2.2beta4 (2009-02-27) |
1371 |
|
|
- Features added |
1372 |
|
|
- |
1373 |
|
|
- * Support strings and instantiable Element classes as child arguments |
1374 |
|
|
- to the constructor of custom Element classes. |
1375 |
|
|
- * GZip compression support for serialisation to files and file-like |
1376 |
|
|
- objects. |
1377 |
|
|
- |
1378 |
|
|
- Bugs fixed |
1379 |
|
|
- |
1380 |
|
|
- * Deep-copying an ElementTree copied neither its sibling PIs and |
1381 |
|
|
- comments nor its internal/external DTD subsets. |
1382 |
|
|
- * Soupparser failed on broken attributes without values. |
1383 |
|
|
- * Crash in XSLT when overwriting an already defined attribute using |
1384 |
|
|
- xsl:attribute. |
1385 |
|
|
- * Crash bug in exception handling code under Python 3. This was due to |
1386 |
|
|
- a problem in Cython, not lxml itself. |
1387 |
|
|
- * lxml.html.FormElement._name() failed for non top-level forms. |
1388 |
|
|
- * TAG special attribute in constructor of custom Element classes was |
1389 |
|
|
- evaluated incorrectly. |
1390 |
|
|
- |
1391 |
|
|
- Other changes |
1392 |
|
|
- |
1393 |
|
|
- * Official support for Python 3.0.1. |
1394 |
|
|
- * Element.findtext() now returns an empty string instead of None for |
1395 |
|
|
- Elements without text content. |
1396 |
|
|
|
1397 |
|
|
* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2-0.7.beta3 |
1398 |
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild |
1399 |
|
|
|
1400 |
|
|
* Tue Feb 17 2009 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2-0.6.beta3 |
1401 |
|
|
- 2.2beta3 (2009-02-17) |
1402 |
|
|
- Features added |
1403 |
|
|
- |
1404 |
|
|
- * XSLT.strparam() class method to wrap quoted string parameters that |
1405 |
|
|
- require escaping. |
1406 |
|
|
- |
1407 |
|
|
- Bugs fixed |
1408 |
|
|
- |
1409 |
|
|
- * Memory leak in XPath evaluators. |
1410 |
|
|
- * Crash when parsing indented XML in one thread and merging it with |
1411 |
|
|
- other documents parsed in another thread. |
1412 |
|
|
- * Setting the base attribute in lxml.objectify from a unicode string |
1413 |
|
|
- failed. |
1414 |
|
|
- * Fixes following changes in Python 3.0.1. |
1415 |
|
|
- * Minor fixes for Python 3. |
1416 |
|
|
- |
1417 |
|
|
- Other changes |
1418 |
|
|
- |
1419 |
|
|
- * The global error log (which is copied into the exception log) is now |
1420 |
|
|
- local to a thread, which fixes some race conditions. |
1421 |
|
|
- * More robust error handling on serialisation. |
1422 |
|
|
|
1423 |
|
|
* Sun Jan 25 2009 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2-0.5.beta2 |
1424 |
|
|
- 2.2beta2 (2009-01-25) |
1425 |
|
|
- Bugs fixed |
1426 |
|
|
- |
1427 |
|
|
- * Potential memory leak on exception handling. This was due to a |
1428 |
|
|
- problem in Cython, not lxml itself. |
1429 |
|
|
- * iter_links (and related link-rewriting functions) in lxml.html would |
1430 |
|
|
- interpret CSS like url("link") incorrectly (treating the quotation |
1431 |
|
|
- marks as part of the link). |
1432 |
|
|
- * Failing import on systems that have an io module. |
1433 |
|
|
|
1434 |
|
|
* Fri Dec 12 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2-0.4.beta1 |
1435 |
|
|
- 2.2beta1 (2008-12-12) |
1436 |
|
|
- Features added |
1437 |
|
|
- |
1438 |
|
|
- * Allow lxml.html.diff.htmldiff to accept Element objects, |
1439 |
|
|
- not just HTML strings. |
1440 |
|
|
- |
1441 |
|
|
- Bugs fixed |
1442 |
|
|
- |
1443 |
|
|
- * Crash when using an XPath evaluator in multiple threads. |
1444 |
|
|
- * Fixed missing whitespace before Link:... in lxml.html.diff. |
1445 |
|
|
- |
1446 |
|
|
- Other changes |
1447 |
|
|
- |
1448 |
|
|
- * Export lxml.html.parse. |
1449 |
|
|
|
1450 |
|
|
* Fri Nov 28 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2-0.3.alpha1 |
1451 |
|
|
- Rebuild for Python 2.6 |
1452 |
|
|
|
1453 |
|
|
* Mon Nov 24 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2-0.2.alpha1 |
1454 |
|
|
- Don't forget to upload the sources! |
1455 |
|
|
|
1456 |
|
|
* Mon Nov 24 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.2-0.1.alpha1 |
1457 |
|
|
- 2.2alpha1 (2008-11-23) |
1458 |
|
|
- Features added |
1459 |
|
|
- |
1460 |
|
|
- * Support for XSLT result tree fragments in XPath/XSLT extension |
1461 |
|
|
- functions. |
1462 |
|
|
- * QName objects have new properties namespace and localname. |
1463 |
|
|
- * New options for exclusive C14N and C14N without comments. |
1464 |
|
|
- * Instantiating a custom Element classes creates a new Element. |
1465 |
|
|
- |
1466 |
|
|
- Bugs fixed |
1467 |
|
|
- |
1468 |
|
|
- * XSLT didn't inherit the parse options of the input document. |
1469 |
|
|
- * 0-bytes could slip through the API when used inside of Unicode |
1470 |
|
|
- strings. |
1471 |
|
|
- * With lxml.html.clean.autolink, links with balanced parenthesis, that |
1472 |
|
|
- end in a parenthesis, will be linked in their entirety (typical with |
1473 |
|
|
- Wikipedia links). |
1474 |
|
|
|
1475 |
|
|
* Mon Nov 17 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.1.3-1 |
1476 |
|
|
- 2.1.3 (2008-11-17) |
1477 |
|
|
- Bugs fixed |
1478 |
|
|
- |
1479 |
|
|
- * Ref-count leaks when lxml enters a try-except statement while an |
1480 |
|
|
- outside exception lives in sys.exc_*(). This was due to a problem |
1481 |
|
|
- in Cython, not lxml itself. |
1482 |
|
|
- * Parser Unicode decoding errors could get swallowed by other |
1483 |
|
|
- exceptions. |
1484 |
|
|
- * Name/import errors in some Python modules. |
1485 |
|
|
- * Internal DTD subsets that did not specify a system or public ID |
1486 |
|
|
- were not serialised and did not appear in the docinfo property |
1487 |
|
|
- of ElementTrees. |
1488 |
|
|
- * Fix a pre-Py3k warning when parsing from a gzip file in Py2.6. |
1489 |
|
|
- * Test suite fixes for libxml2 2.7. |
1490 |
|
|
- * Resolver.resolve_string() did not work for non-ASCII byte strings. |
1491 |
|
|
- * Resolver.resolve_file() was broken. |
1492 |
|
|
- * Overriding the parser encoding didn't work for many encodings. |
1493 |
|
|
|
1494 |
|
|
* Fri Sep 5 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.1.2-1 |
1495 |
|
|
- 2.1.2 (2008-09-05) |
1496 |
|
|
- Features added |
1497 |
|
|
- |
1498 |
|
|
- * lxml.etree now tries to find the absolute path name of files when |
1499 |
|
|
- parsing from a file-like object. This helps custom resolvers when |
1500 |
|
|
- resolving relative URLs, as lixbml2 can prepend them with the path of |
1501 |
|
|
- the source document. |
1502 |
|
|
- |
1503 |
|
|
- Bugs fixed |
1504 |
|
|
- |
1505 |
|
|
- * Memory problem when passing documents between threads. |
1506 |
|
|
- * Target parser did not honour the recover option and raised an exception |
1507 |
|
|
- instead of calling .close() on the target. |
1508 |
|
|
|
1509 |
|
|
* Fri Jul 25 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.1.1-1 |
1510 |
|
|
- Update to 2.1.1 |
1511 |
|
|
|
1512 |
|
|
* Fri Jun 20 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.0.7-1 |
1513 |
|
|
- Update to 2.0.7 |
1514 |
|
|
- Update download URL |
1515 |
|
|
|
1516 |
|
|
* Sat May 31 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.0.6-1 |
1517 |
|
|
- Update to 2.0.6 |
1518 |
|
|
|
1519 |
|
|
* Thu May 8 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.0.5-1 |
1520 |
|
|
- Update to 2.0.5 |
1521 |
|
|
|
1522 |
|
|
* Wed Mar 26 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.0.3-1 |
1523 |
|
|
- Update to 2.0.3 |
1524 |
|
|
|
1525 |
|
|
* Sat Feb 23 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.0.2-1 |
1526 |
|
|
- Update to 2.0.2 |
1527 |
|
|
|
1528 |
|
|
* Tue Feb 19 2008 Jeffrey C. Ollie <jeff@ocjtech.us> - 2.0.1-1 |
1529 |
|
|
- Update to 2.0.1 |
1530 |
|
|
|
1531 |
|
|
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.3.6-2 |
1532 |
|
|
- Autorebuild for GCC 4.3 |
1533 |
|
|
|
1534 |
|
|
* Sun Nov 4 2007 Jeffrey C. Ollie <jeff@ocjtech.us> - 1.3.6-1 |
1535 |
|
|
- Update to 1.3.6. |
1536 |
|
|
|
1537 |
|
|
* Mon Oct 22 2007 Jeffrey C. Ollie <jeff@ocjtech.us> - 1.3.5-1 |
1538 |
|
|
- Update to 1.3.5. |
1539 |
|
|
|
1540 |
|
|
* Thu Aug 30 2007 Jeffrey C. Ollie <jeff@ocjtech.us> - 1.3.4-1 |
1541 |
|
|
- Update to 1.3.4. |
1542 |
|
|
|
1543 |
|
|
* Wed Aug 29 2007 Fedora Release Engineering <rel-eng at fedoraproject dot org> - 1.3.3-3 |
1544 |
|
|
- Rebuild for selinux ppc32 issue. |
1545 |
|
|
|
1546 |
|
|
* Tue Aug 28 2007 Jeffrey C. Ollie <jeff@ocjtech.us> - 1.3.3-2 |
1547 |
|
|
- BR python-setuptools-devel |
1548 |
|
|
|
1549 |
|
|
* Mon Jul 30 2007 Jeffrey C. Ollie <jeff@ocjtech.us> - 1.3.3-1 |
1550 |
|
|
- Update to 1.3.3 |
1551 |
|
|
|
1552 |
|
|
* Fri Jan 19 2007 Jeffrey C. Ollie <jeff@ocjtech.us> - 1.1.2-1 |
1553 |
|
|
- Update to 1.1.2 |
1554 |
|
|
|
1555 |
|
|
* Thu Dec 14 2006 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.0.3-3 |
1556 |
|
|
- Rebuild for new Python |
1557 |
|
|
|
1558 |
|
|
* Sat Sep 16 2006 Shahms E. King <shahms@shahms.com> 1.0.3-2 |
1559 |
|
|
- Rebuild for FC6 |
1560 |
|
|
|
1561 |
|
|
* Thu Aug 17 2006 Shahms E. King <shahms@shahms.com> 1.0.3-1 |
1562 |
|
|
- Update to new upstream version |
1563 |
|
|
|
1564 |
|
|
* Fri Aug 11 2006 Shahms E. King <shahms@shahms.com> 1.0.2-2 |
1565 |
|
|
- Include, don't ghost .pyo files per new guidelines |
1566 |
|
|
|
1567 |
|
|
* Fri Jul 07 2006 Shahms E. King <shahms@shahms.com> 1.0.2-1 |
1568 |
|
|
- Update to new upstream release |
1569 |
|
|
|
1570 |
|
|
* Mon Jun 26 2006 Shahms E. King <shahms@shahms.com> 1.0.1-1 |
1571 |
|
|
- Update to new upstream release |
1572 |
|
|
|
1573 |
|
|
* Fri Jun 02 2006 Shahms E. King <shahms@shahms.com> 1.0-1 |
1574 |
|
|
- Update to new upstream 1.0 release |
1575 |
|
|
|
1576 |
|
|
* Wed Apr 26 2006 Shahms E. King <shahms@shahms.com> 0.9.1-3 |
1577 |
|
|
- Add python-setuptools to BuildRequires |
1578 |
|
|
- Use dist tag |
1579 |
|
|
|
1580 |
|
|
* Wed Apr 26 2006 Shahms E. King <shahms@shahms.com> 0.9.1-2 |
1581 |
|
|
- Fix summary and description |
1582 |
|
|
|
1583 |
|
|
* Tue Apr 18 2006 Shahms E. King <shahms@shahms.com> 0.9.1-1 |
1584 |
|
|
- update the new upstream version |
1585 |
|
|
- remove Pyrex build req |
1586 |
|
|
|
1587 |
|
|
* Tue Dec 13 2005 Shahms E. King <shahms@shahms.com> 0.8-1 |
1588 |
|
|
- Initial package |