lxml 5.2.1__cp310-cp310-macosx_10_9_universal2.whl → 5.2.2__cp310-cp310-macosx_10_9_universal2.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,24 +1,24 @@
1
- lxml-5.2.1.dist-info/RECORD,,
2
- lxml-5.2.1.dist-info/WHEEL,sha256=r7U64H7df5k5VoE41bE2otJ6YmrMps4wUd2_S2hHvHQ,115
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=r7U64H7df5k5VoE41bE2otJ6YmrMps4wUd2_S2hHvHQ,115
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
8
  lxml/xmlid.pxi,sha256=5zf9oR6bsCtavGiOmilNyHqYwgG_bnrIabSd2SURtm0,6073
9
9
  lxml/cleanup.pxi,sha256=ZNEpbv7qx_ICPzsxhCaMUHCOfiznOoZ_u3jlYXHAuh4,8454
10
10
  lxml/_elementpath.py,sha256=5-PzX8ZIxPIvESKDGVL829sejYkvx991FSQyM-J0LqE,10888
11
11
  lxml/xslt.pxi,sha256=R2fpAf0P7GA1Dhjg0-fGVUbxCk8bBAshuoAs4ODwqlc,36023
12
- lxml/etree.cpython-310-darwin.so,sha256=W0ICNaSVZSAsatNC6grCVhc2PPX1_nFYJFKfqxOdFRQ,10019592
12
+ lxml/etree.cpython-310-darwin.so,sha256=DMWck1htUvJxSXs-K83vXvvtkqqefuVxvt8LgkjH7EI,9211712
13
13
  lxml/xpath.pxi,sha256=aqW24V817dUxps4Gnc8h7Tm3QVlITKvxU5_9WgJUIFg,19132
14
14
  lxml/debug.pxi,sha256=zhxiMeNnKtkjn_FWboHk1T-Vtcg_vEGV8jfYK0XyXHM,3282
15
- lxml/serializer.pxi,sha256=3wqS0zC0Pgh5ev-8Mn3YB6sVeJVH_j7wjpzSEDVTdvM,67951
15
+ lxml/serializer.pxi,sha256=OQ378sWrl0v3Cv1qomE3T0K2x6WMTukkguQ4XLvA_gI,67962
16
16
  lxml/classlookup.pxi,sha256=Tax8Vhbm5C6UCjgmRFsYjW0pFHxIuTthH1MOgASDLgc,22435
17
- lxml/objectify.cpython-310-darwin.so,sha256=ALEooDbcfbNKClZbcvhGxiLT_E0XyA9pnE4__MXyKz4,5585500
17
+ lxml/objectify.cpython-310-darwin.so,sha256=8Fw1E_mb5kf27pgtzZvDLzvGSz8pDZaHQZMIRY9SXgQ,5345488
18
18
  lxml/saxparser.pxi,sha256=9nJEnVFFFx7vueUJ3fSeDjxG4gLgrXsDBWVkD_f8U1Q,33322
19
19
  lxml/sax.py,sha256=8e9Ef4Cfbwr7AHMGCBBZcotBkOehQtdaCxsVCgWM5_c,9303
20
20
  lxml/pyclasslookup.py,sha256=gLD1HM2HtITYYiGzjEOewSwbB7XkVx_NZv_quCt79Oc,92
21
- lxml/__init__.py,sha256=muWa7ZIKDJW7z7hAmmliO3nRMLRFeGHBjo7qnnf2mIk,574
21
+ lxml/__init__.py,sha256=4yaU1-HfwsVESfRytVX_ANAhtFAmFLhzBtZNkXaaAew,574
22
22
  lxml/objectpath.pxi,sha256=s5TNG2-EbaWWKLFAiX303B95zK_Ui8ausB__3QvFFGw,11450
23
23
  lxml/relaxng.pxi,sha256=3OQ-fZMzP-KF5vM6HTozT_9ee3J0DJnpj9RcHC8LoMw,6339
24
24
  lxml/etree_api.h,sha256=XDHi7lgGoIcyoS8hB27di8OAb0RC6ubGs3ETzd3KDSE,17063
@@ -27,24 +27,24 @@ lxml/iterparse.pxi,sha256=HcHYTLU6cs1R7GOik62rEkTebgsz1fYttk00iKfOtcw,16527
27
27
  lxml/parser.pxi,sha256=9R2rdzq1f8LOaKSAzAnFghB3rAspy4vcMTB6q8u0RSA,81866
28
28
  lxml/objectify.pyx,sha256=pvaZmS21G-qlNjPuVaB_dgGgi0alxNALo7gFOV8Ispc,75735
29
29
  lxml/builder.py,sha256=XD0DQc_G-D950Ym2NwDqxF2v9frtldxdfmvYhxhpP64,8100
30
- lxml/builder.cpython-310-darwin.so,sha256=zutQ5leB16NGtKXmLydc2UXBImBZe2dFKJdFvriUZ6o,307418
30
+ lxml/builder.cpython-310-darwin.so,sha256=eJXhIsqwHbyQpZ2y9E6eyWu7LkGfL7DSwCjCW_Q-Cp8,289696
31
31
  lxml/dtd.pxi,sha256=y2i_PVKnlWCe9VGchgM6t8lIljtVfbWSXuWC-rEbzeE,15228
32
32
  lxml/apihelpers.pxi,sha256=zipCUecXzy5INij_qdEEqZoLp9LYB3CJQUzIzFVH1Ow,63610
33
- lxml/sax.cpython-310-darwin.so,sha256=JCbLQ_Vs_mommDOekbRzJaMsrKwrYlqnEdYRVBxLbtc,429782
33
+ lxml/sax.cpython-310-darwin.so,sha256=o8pAh-N4VMSjGKxZXAVhKOz28FDQbHMBQKz-akhuDAg,409872
34
34
  lxml/xmlerror.pxi,sha256=K7YIB21sLWdf_2GxyUymRZ5vDr3O4OJ5vGjrklBGa6o,49854
35
35
  lxml/doctestcompare.py,sha256=40EDnkwpcvW86qNa86990OXF42xdHaosSZoiBsEjkzU,17731
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/_elementpath.cpython-310-darwin.so,sha256=uKdUyfQ1gCQRGiODvlWF66jpk2AcUE6_YCw6HQohl1k,474751
40
- lxml/etree.pyx,sha256=dHJaEezpj2bZrsiUZgh5ypC79L3FPxMXRiHnGlBkOx8,133885
39
+ lxml/_elementpath.cpython-310-darwin.so,sha256=xCVhbki9fKEPwLTdovCSYFgYGAb_Q8C2hFcdUDW5CsY,435224
40
+ lxml/etree.pyx,sha256=LFQbkC_uIMFUS0F5O5tj0Wmog-MsFcF6VBdP8H2yqdQ,134556
41
41
  lxml/extensions.pxi,sha256=58O6mBbDeWnkiIsRd9T7mLodylo7typz2dbjpJryAyY,32088
42
42
  lxml/xmlschema.pxi,sha256=mumNoHni5S3BQPtcmOHRd61KRaVWu4eOie2wQeB0e6E,8490
43
43
  lxml/schematron.pxi,sha256=hFn1p4egpvvz-Tkk2AH7cbVOavTC-A7mzHABHrGh7g4,5908
44
- lxml/lxml.etree.h,sha256=NPhL2CztGkHk3YgMx2j7pkimDavjx_8CTmCRrdMxslM,9912
44
+ lxml/lxml.etree.h,sha256=kF0YtzECn-SGPPgu_M6JgpgpBIrgDqcCMEBnuQKjF38,9912
45
45
  lxml/docloader.pxi,sha256=bYSZAxxbBEfVzfLXTUWFRfOyUTfV23L7i9hR2dgtSNY,5772
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
@@ -168,5 +168,5 @@ lxml/html/builder.py,sha256=aRgS-Ea9bli-muGX0iUQGKAe9D93P8BspQ2WPuiWJcU,4492
168
168
  lxml/html/ElementSoup.py,sha256=s_dLobLMuKn2DhexR-iDXdZrMFg1RjLy1feHsIeZMpw,320
169
169
  lxml/html/_html5builder.py,sha256=NLaT-Ev-aBgJpeQl-6ZbJChLZK5GV-znDkHOJD5VQC4,3230
170
170
  lxml/html/usedoctest.py,sha256=tPlmVz4KK1GRKV5DJLrdVECeqsT9PlDzSqqTodVi5s0,249
171
- lxml/html/diff.cpython-310-darwin.so,sha256=DnBmjufOG7Jc45Qo95zBl4v0qc1tFORxdCF8v8w3vLs,847751
171
+ lxml/html/diff.cpython-310-darwin.so,sha256=juG1jbngCzxEMzKIS0egRqFj_NZC8EY4mUHAXh3Lxwo,740880
172
172
  lxml/html/diff.py,sha256=n2jMJW8D2OYfG-SKbdmpSjZ3Lwk516WwJfMn6yvQiuM,30393
File without changes