lxml 5.2.1__cp312-cp312-macosx_10_9_x86_64.whl → 5.2.2__cp312-cp312-macosx_10_9_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
lxml/__init__.py CHANGED
@@ -1,6 +1,6 @@
1
1
  # this is a package
2
2
 
3
- __version__ = "5.2.1"
3
+ __version__ = "5.2.2"
4
4
 
5
5
 
6
6
  def get_include():
Binary file
Binary file
Binary file
lxml/etree.h CHANGED
@@ -13,7 +13,7 @@ struct LxmlElementBase;
13
13
  struct LxmlElementClassLookup;
14
14
  struct LxmlFallbackElementClassLookup;
15
15
 
16
- /* "lxml/etree.pyx":333
16
+ /* "lxml/etree.pyx":353
17
17
  *
18
18
  * # type of a function that steps from node to node
19
19
  * ctypedef public xmlNode* (*_node_to_node_function)(xmlNode*) # <<<<<<<<<<<<<<
@@ -22,7 +22,7 @@ struct LxmlFallbackElementClassLookup;
22
22
  */
23
23
  typedef xmlNode *(*_node_to_node_function)(xmlNode *);
24
24
 
25
- /* "lxml/etree.pyx":349
25
+ /* "lxml/etree.pyx":369
26
26
  * @cython.final
27
27
  * @cython.freelist(8)
28
28
  * cdef public class _Document [ type LxmlDocumentType, object LxmlDocument ]: # <<<<<<<<<<<<<<
@@ -38,7 +38,7 @@ struct LxmlDocument {
38
38
  struct __pyx_obj_4lxml_5etree__BaseParser *_parser;
39
39
  };
40
40
 
41
- /* "lxml/etree.pyx":698
41
+ /* "lxml/etree.pyx":718
42
42
  *
43
43
  * @cython.no_gc_clear
44
44
  * cdef public class _Element [ type LxmlElementType, object LxmlElement ]: # <<<<<<<<<<<<<<
@@ -52,7 +52,7 @@ struct LxmlElement {
52
52
  PyObject *_tag;
53
53
  };
54
54
 
55
- /* "lxml/etree.pyx":1872
55
+ /* "lxml/etree.pyx":1892
56
56
  *
57
57
  *
58
58
  * cdef public class _ElementTree [ type LxmlElementTreeType, # <<<<<<<<<<<<<<
@@ -66,7 +66,7 @@ struct LxmlElementTree {
66
66
  struct LxmlElement *_context_node;
67
67
  };
68
68
 
69
- /* "lxml/etree.pyx":2646
69
+ /* "lxml/etree.pyx":2666
70
70
  *
71
71
  *
72
72
  * cdef public class _ElementTagMatcher [ object LxmlElementTagMatcher, # <<<<<<<<<<<<<<
@@ -82,7 +82,7 @@ struct LxmlElementTagMatcher {
82
82
  char *_name;
83
83
  };
84
84
 
85
- /* "lxml/etree.pyx":2677
85
+ /* "lxml/etree.pyx":2697
86
86
  * self._name = NULL
87
87
  *
88
88
  * cdef public class _ElementIterator(_ElementTagMatcher) [ # <<<<<<<<<<<<<<
lxml/etree.pyx CHANGED
@@ -232,7 +232,7 @@ cdef class C14NError(LxmlError):
232
232
  """
233
233
 
234
234
  # version information
235
- cdef __unpackDottedVersion(version):
235
+ cdef tuple __unpackDottedVersion(version):
236
236
  version_list = []
237
237
  l = (version.decode("ascii").replace('-', '.').split('.') + [0]*4)[:4]
238
238
  for item in l:
@@ -255,11 +255,11 @@ cdef __unpackDottedVersion(version):
255
255
  version_list.append(item)
256
256
  return tuple(version_list)
257
257
 
258
- cdef __unpackIntVersion(int c_version):
258
+ cdef tuple __unpackIntVersion(int c_version, int base=100):
259
259
  return (
260
- ((c_version // (100*100)) % 100),
261
- ((c_version // 100) % 100),
262
- (c_version % 100)
260
+ ((c_version // (base*base)) % base),
261
+ ((c_version // base) % base),
262
+ (c_version % base)
263
263
  )
264
264
 
265
265
  cdef int _LIBXML_VERSION_INT
@@ -276,6 +276,26 @@ LXML_VERSION = __unpackDottedVersion(tree.LXML_VERSION_STRING)
276
276
 
277
277
  __version__ = tree.LXML_VERSION_STRING.decode("ascii")
278
278
 
279
+ cdef extern from *:
280
+ """
281
+ #ifdef ZLIB_VERNUM
282
+ #define __lxml_zlib_version (ZLIB_VERNUM >> 4)
283
+ #else
284
+ #define __lxml_zlib_version 0
285
+ #endif
286
+ #ifdef _LIBICONV_VERSION
287
+ #define __lxml_iconv_version (_LIBICONV_VERSION << 8)
288
+ #else
289
+ #define __lxml_iconv_version 0
290
+ #endif
291
+ """
292
+ # zlib isn't included automatically by libxml2's headers
293
+ #long ZLIB_HEX_VERSION "__lxml_zlib_version"
294
+ long LIBICONV_HEX_VERSION "__lxml_iconv_version"
295
+
296
+ #ZLIB_COMPILED_VERSION = __unpackIntVersion(ZLIB_HEX_VERSION, base=0x10)
297
+ ICONV_COMPILED_VERSION = __unpackIntVersion(LIBICONV_HEX_VERSION, base=0x100)[:2]
298
+
279
299
 
280
300
  # class for temporary storage of Python references,
281
301
  # used e.g. for XPath results
Binary file
@@ -1,3 +1,3 @@
1
1
  #ifndef LXML_VERSION_STRING
2
- #define LXML_VERSION_STRING "5.2.1"
2
+ #define LXML_VERSION_STRING "5.2.2"
3
3
  #endif
lxml/lxml.etree.h CHANGED
@@ -13,7 +13,7 @@ struct LxmlElementBase;
13
13
  struct LxmlElementClassLookup;
14
14
  struct LxmlFallbackElementClassLookup;
15
15
 
16
- /* "lxml/etree.pyx":333
16
+ /* "lxml/etree.pyx":353
17
17
  *
18
18
  * # type of a function that steps from node to node
19
19
  * ctypedef public xmlNode* (*_node_to_node_function)(xmlNode*) # <<<<<<<<<<<<<<
@@ -22,7 +22,7 @@ struct LxmlFallbackElementClassLookup;
22
22
  */
23
23
  typedef xmlNode *(*_node_to_node_function)(xmlNode *);
24
24
 
25
- /* "lxml/etree.pyx":349
25
+ /* "lxml/etree.pyx":369
26
26
  * @cython.final
27
27
  * @cython.freelist(8)
28
28
  * cdef public class _Document [ type LxmlDocumentType, object LxmlDocument ]: # <<<<<<<<<<<<<<
@@ -38,7 +38,7 @@ struct LxmlDocument {
38
38
  struct __pyx_obj_4lxml_5etree__BaseParser *_parser;
39
39
  };
40
40
 
41
- /* "lxml/etree.pyx":698
41
+ /* "lxml/etree.pyx":718
42
42
  *
43
43
  * @cython.no_gc_clear
44
44
  * cdef public class _Element [ type LxmlElementType, object LxmlElement ]: # <<<<<<<<<<<<<<
@@ -52,7 +52,7 @@ struct LxmlElement {
52
52
  PyObject *_tag;
53
53
  };
54
54
 
55
- /* "lxml/etree.pyx":1872
55
+ /* "lxml/etree.pyx":1892
56
56
  *
57
57
  *
58
58
  * cdef public class _ElementTree [ type LxmlElementTreeType, # <<<<<<<<<<<<<<
@@ -66,7 +66,7 @@ struct LxmlElementTree {
66
66
  struct LxmlElement *_context_node;
67
67
  };
68
68
 
69
- /* "lxml/etree.pyx":2646
69
+ /* "lxml/etree.pyx":2666
70
70
  *
71
71
  *
72
72
  * cdef public class _ElementTagMatcher [ object LxmlElementTagMatcher, # <<<<<<<<<<<<<<
@@ -82,7 +82,7 @@ struct LxmlElementTagMatcher {
82
82
  char *_name;
83
83
  };
84
84
 
85
- /* "lxml/etree.pyx":2677
85
+ /* "lxml/etree.pyx":2697
86
86
  * self._name = NULL
87
87
  *
88
88
  * cdef public class _ElementIterator(_ElementTagMatcher) [ # <<<<<<<<<<<<<<
Binary file
Binary file
lxml/serializer.pxi CHANGED
@@ -572,7 +572,7 @@ cdef _write_attr_string(tree.xmlOutputBuffer* buf, const char *string):
572
572
  # output to file-like objects
573
573
 
574
574
  cdef object io_open
575
- from io import open
575
+ from io import open as io_open
576
576
 
577
577
  cdef object gzip
578
578
  import gzip
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lxml
3
- Version: 5.2.1
3
+ Version: 5.2.2
4
4
  Summary: Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API.
5
5
  Home-page: https://lxml.de/
6
6
  Author: lxml dev team
@@ -71,19 +71,18 @@ https://github.com/lxml/lxml/tarball/lxml-5.2#egg=lxml-5.2bugfix
71
71
  as soon as a maintenance branch has been established. Note that this
72
72
  requires Cython to be installed at an appropriate version for the build.
73
73
 
74
- 5.2.1 (2024-04-02)
74
+ 5.2.2 (2024-05-12)
75
75
  ==================
76
76
 
77
77
  Bugs fixed
78
78
  ----------
79
79
 
80
- * LP#2059910: The minimum CPU architecture for the Linux x86 binary wheels was set back to
81
- "core2", but with SSE 4.2 enabled.
80
+ * GH#417: The ``test_feed_parser`` test could fail if ``lxml_html_clean`` was not installed.
81
+ It is now skipped in that case.
82
82
 
83
- * LP#2059977: ``Element.iterfind("//absolute_path")`` failed with a ``SyntaxError``
84
- where it should have issued a warning.
83
+ * LP#2059910: The minimum CPU architecture for the Linux x86 binary wheels was set back to
84
+ "core2", without SSE 4.2.
85
85
 
86
- * GH#416: The documentation build was using the non-standard ``which`` command.
87
- Patch by Michał Górny.
86
+ * If libxml2 uses iconv, the compile time version is available as `etree.ICONV_COMPILED_VERSION`.
88
87
 
89
88
 
@@ -1,25 +1,25 @@
1
- lxml-5.2.1.dist-info/RECORD,,
2
- lxml-5.2.1.dist-info/WHEEL,sha256=KYtn_mzb_QwZSHwPlosUO3fDl70znfUFngLlrLVHeBY,111
3
- lxml-5.2.1.dist-info/top_level.txt,sha256=NjD988wqaKq512nshNdLt-uDxsjkp4Bh51m6N-dhUrk,5
4
- lxml-5.2.1.dist-info/LICENSE.txt,sha256=ae20RcEzWoMS1MCScYR-mVbYTw2fck0SU0DMP612eyo,1488
5
- lxml-5.2.1.dist-info/LICENSES.txt,sha256=QdSd1AaqDhVIptXyGjDWv2OLPNlutyid00jYPtLkA5I,1514
6
- lxml-5.2.1.dist-info/METADATA,sha256=gOuJgh--uI1YuhrzK8UoTG-oBMJJB1tljdEWH-Y9_Aw,3444
1
+ lxml-5.2.2.dist-info/RECORD,,
2
+ lxml-5.2.2.dist-info/WHEEL,sha256=KYtn_mzb_QwZSHwPlosUO3fDl70znfUFngLlrLVHeBY,111
3
+ lxml-5.2.2.dist-info/top_level.txt,sha256=NjD988wqaKq512nshNdLt-uDxsjkp4Bh51m6N-dhUrk,5
4
+ lxml-5.2.2.dist-info/LICENSE.txt,sha256=ae20RcEzWoMS1MCScYR-mVbYTw2fck0SU0DMP612eyo,1488
5
+ lxml-5.2.2.dist-info/LICENSES.txt,sha256=QdSd1AaqDhVIptXyGjDWv2OLPNlutyid00jYPtLkA5I,1514
6
+ lxml-5.2.2.dist-info/METADATA,sha256=Eoy02foYKZC4NytS5XkjJC_ni-KmgMp-MEld0m556KM,3428
7
7
  lxml/public-api.pxi,sha256=XoP6_cJOEoQIItvE1RiYCKYD1ry4AobaOr4XLo0KSE4,6666
8
- lxml/builder.cpython-312-darwin.so,sha256=lwrYjfJTdKAHRAle-f0PXfFUcW-YJVDIms13_x955TM,129400
8
+ lxml/builder.cpython-312-darwin.so,sha256=3dXhdW2gQbqSbjxSatzE73o1NlCiwZSdZ95Y5ZoHQZ4,126432
9
9
  lxml/xmlid.pxi,sha256=5zf9oR6bsCtavGiOmilNyHqYwgG_bnrIabSd2SURtm0,6073
10
10
  lxml/cleanup.pxi,sha256=ZNEpbv7qx_ICPzsxhCaMUHCOfiznOoZ_u3jlYXHAuh4,8454
11
11
  lxml/_elementpath.py,sha256=5-PzX8ZIxPIvESKDGVL829sejYkvx991FSQyM-J0LqE,10888
12
- lxml/sax.cpython-312-darwin.so,sha256=PIeqwAcCb8QKy_2kDAUC7525e8fpHNbDTkbQcuZq1E4,203904
12
+ lxml/sax.cpython-312-darwin.so,sha256=RGOFqyqT-Rp700XXjQ2AOrSxSwbbXcalQrezuCiX1UA,197712
13
13
  lxml/xslt.pxi,sha256=R2fpAf0P7GA1Dhjg0-fGVUbxCk8bBAshuoAs4ODwqlc,36023
14
14
  lxml/xpath.pxi,sha256=aqW24V817dUxps4Gnc8h7Tm3QVlITKvxU5_9WgJUIFg,19132
15
15
  lxml/debug.pxi,sha256=zhxiMeNnKtkjn_FWboHk1T-Vtcg_vEGV8jfYK0XyXHM,3282
16
- lxml/_elementpath.cpython-312-darwin.so,sha256=mH8dmolutXN4hEhHsWB51nBOiTZJg1eXhQx7RG5JLR4,238992
17
- lxml/serializer.pxi,sha256=3wqS0zC0Pgh5ev-8Mn3YB6sVeJVH_j7wjpzSEDVTdvM,67951
16
+ lxml/_elementpath.cpython-312-darwin.so,sha256=qvUVBzuxOlog3ZIRUS43whQ_38XhTK5L-9RctxNaZIQ,210736
17
+ lxml/serializer.pxi,sha256=OQ378sWrl0v3Cv1qomE3T0K2x6WMTukkguQ4XLvA_gI,67962
18
18
  lxml/classlookup.pxi,sha256=Tax8Vhbm5C6UCjgmRFsYjW0pFHxIuTthH1MOgASDLgc,22435
19
19
  lxml/saxparser.pxi,sha256=9nJEnVFFFx7vueUJ3fSeDjxG4gLgrXsDBWVkD_f8U1Q,33322
20
20
  lxml/sax.py,sha256=8e9Ef4Cfbwr7AHMGCBBZcotBkOehQtdaCxsVCgWM5_c,9303
21
21
  lxml/pyclasslookup.py,sha256=gLD1HM2HtITYYiGzjEOewSwbB7XkVx_NZv_quCt79Oc,92
22
- lxml/__init__.py,sha256=muWa7ZIKDJW7z7hAmmliO3nRMLRFeGHBjo7qnnf2mIk,574
22
+ lxml/__init__.py,sha256=4yaU1-HfwsVESfRytVX_ANAhtFAmFLhzBtZNkXaaAew,574
23
23
  lxml/objectpath.pxi,sha256=s5TNG2-EbaWWKLFAiX303B95zK_Ui8ausB__3QvFFGw,11450
24
24
  lxml/relaxng.pxi,sha256=3OQ-fZMzP-KF5vM6HTozT_9ee3J0DJnpj9RcHC8LoMw,6339
25
25
  lxml/etree_api.h,sha256=XDHi7lgGoIcyoS8hB27di8OAb0RC6ubGs3ETzd3KDSE,17063
@@ -32,19 +32,19 @@ lxml/dtd.pxi,sha256=y2i_PVKnlWCe9VGchgM6t8lIljtVfbWSXuWC-rEbzeE,15228
32
32
  lxml/apihelpers.pxi,sha256=zipCUecXzy5INij_qdEEqZoLp9LYB3CJQUzIzFVH1Ow,63610
33
33
  lxml/xmlerror.pxi,sha256=K7YIB21sLWdf_2GxyUymRZ5vDr3O4OJ5vGjrklBGa6o,49854
34
34
  lxml/doctestcompare.py,sha256=40EDnkwpcvW86qNa86990OXF42xdHaosSZoiBsEjkzU,17731
35
- lxml/etree.cpython-312-darwin.so,sha256=fKJUdblyk6Rpys7pe49ciDJhZOjxRiN_g5VFrplHIfA,5219464
35
+ lxml/etree.cpython-312-darwin.so,sha256=KJGYgWKuaz1MyKhflhZRYOAGD0AiBZZIhvcm0S1OPAM,4801328
36
36
  lxml/usedoctest.py,sha256=qRgZKQVcAZcl-zN0AIXVJnOsETUXz2nPXkxuzs1lGgk,230
37
37
  lxml/readonlytree.pxi,sha256=ddRYczhHieJ4XUvWvTPW9N9oQ8vuKtv7lC1mtE1qvH8,18976
38
38
  lxml/cssselect.py,sha256=_wZdX-B9p5MeIYABmENIYRWEkwXwX-7jO8Dkf-1rUZU,3306
39
- lxml/etree.pyx,sha256=dHJaEezpj2bZrsiUZgh5ypC79L3FPxMXRiHnGlBkOx8,133885
39
+ lxml/etree.pyx,sha256=LFQbkC_uIMFUS0F5O5tj0Wmog-MsFcF6VBdP8H2yqdQ,134556
40
40
  lxml/extensions.pxi,sha256=58O6mBbDeWnkiIsRd9T7mLodylo7typz2dbjpJryAyY,32088
41
41
  lxml/xmlschema.pxi,sha256=mumNoHni5S3BQPtcmOHRd61KRaVWu4eOie2wQeB0e6E,8490
42
42
  lxml/schematron.pxi,sha256=hFn1p4egpvvz-Tkk2AH7cbVOavTC-A7mzHABHrGh7g4,5908
43
- lxml/lxml.etree.h,sha256=NPhL2CztGkHk3YgMx2j7pkimDavjx_8CTmCRrdMxslM,9912
43
+ lxml/lxml.etree.h,sha256=kF0YtzECn-SGPPgu_M6JgpgpBIrgDqcCMEBnuQKjF38,9912
44
44
  lxml/docloader.pxi,sha256=bYSZAxxbBEfVzfLXTUWFRfOyUTfV23L7i9hR2dgtSNY,5772
45
- lxml/objectify.cpython-312-darwin.so,sha256=8UBW5SmdDefdZAEnNnALkXLxjYdoHmaEWAxJ_vRq9ss,2838744
45
+ lxml/objectify.cpython-312-darwin.so,sha256=Iqxunt8xC52Uf3meGQ5tHjqgEEXjJqfcxOQ8lUlO5lI,2703960
46
46
  lxml/nsclasses.pxi,sha256=5pzNBhBtlqObPdThL9QIGRs1Dxj1qnr0PyXuTCURqTg,9129
47
- lxml/etree.h,sha256=NPhL2CztGkHk3YgMx2j7pkimDavjx_8CTmCRrdMxslM,9912
47
+ lxml/etree.h,sha256=kF0YtzECn-SGPPgu_M6JgpgpBIrgDqcCMEBnuQKjF38,9912
48
48
  lxml/parsertarget.pxi,sha256=v1PidxRaG5giwXcTDkpBI7PDFmsZuOcK0y9LdkQaY8M,6326
49
49
  lxml/ElementInclude.py,sha256=PSLeZFvCa76WHJulPLxcZXJtCI2-4dK2CtqPRiYOAQg,8560
50
50
  lxml/xsltext.pxi,sha256=TImDiAPlAezC07P7RY1N9YChA7AuKFH-G53hXdel9yc,11088
@@ -64,7 +64,7 @@ lxml/includes/xmlerror.pxd,sha256=pNP5juL4hRHdVdXUWzMspbdtgPqJdHLDu4jns3ItvrI,58
64
64
  lxml/includes/c14n.pxd,sha256=DBQcOJ0c_YS245ohMb8fmuEC1kFyv1LrNY_8Mf-syZg,1110
65
65
  lxml/includes/xmlschema.pxd,sha256=OLZPd2WDJyopiXJJyo-dAyyYHaeSYFiMAI4tqIiv-Ik,1702
66
66
  lxml/includes/__init__.pxd,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
67
- lxml/includes/lxml-version.h,sha256=2fN0JTHAnzy65wnMxsss7l72xTYbVKZiJMDuIOQaai0,71
67
+ lxml/includes/lxml-version.h,sha256=Ss9KftoD6dlQuVvmQGRKRM0IUuPI1MWiRGCsjaBft68,71
68
68
  lxml/includes/schematron.pxd,sha256=Hob7xh-K-MKqp7WiG8thMagf5EkQzmgfi4ds0EF91JA,1604
69
69
  lxml/includes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
70
  lxml/includes/tree.pxd,sha256=Z5mHkABQPlnwu81WTTq7R4fz17rJAkamOvXf_Jp-nxg,20391
@@ -160,7 +160,7 @@ lxml/html/soupparser.py,sha256=xo8VvNeOEb-SChuXLKCRECh8J7HBiJLE9sAbEskoUUQ,10197
160
160
  lxml/html/defs.py,sha256=ZzOp2TmY9f_ein9GIcDPyN8-f5HVptzSj56umimWub4,4236
161
161
  lxml/html/_setmixin.py,sha256=8IFIOLmVz0G-XzsD2tCEkSFWO-dgPBHgvHufC8ni67s,1188
162
162
  lxml/html/clean.py,sha256=FghSJy4jt2RaBy6dgusowkU18hxpZ4XLE5ceCK9qxyA,503
163
- lxml/html/diff.cpython-312-darwin.so,sha256=B3RMHEexNA-JcfMj8mvFVsfbEc-nGvRm1U-ubih3ue8,412296
163
+ lxml/html/diff.cpython-312-darwin.so,sha256=CG34FOZe72VfOZ7tutni348nXByridtTcR3RkuWprcY,366816
164
164
  lxml/html/_diffcommand.py,sha256=kz_7EP9PmYWuczlZcGiw74_rG0eTKvQ2lrO0rkiwlYE,2081
165
165
  lxml/html/html5parser.py,sha256=dnyC4cqHxywjZSzk0mu2L7THTZjxhg4yF4pncjusa_w,8634
166
166
  lxml/html/__init__.py,sha256=ap2X3ZzRaufsJppVEVa7ctw1bYtBfs7FSRBCUIKPyDk,64302
File without changes