@pairling/runtime-darwin-x64 0.0.0 → 0.2.0

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.
Files changed (1238) hide show
  1. package/bin/pairling-connectd +0 -0
  2. package/manifest.json +18 -0
  3. package/package.json +2 -2
  4. package/python/bin/2to3-3.12 +7 -0
  5. package/python/bin/idle3.12 +7 -0
  6. package/python/bin/pip +8 -0
  7. package/python/bin/pip3 +8 -0
  8. package/python/bin/pip3.12 +8 -0
  9. package/python/bin/pydoc3.12 +7 -0
  10. package/python/bin/python3 +0 -0
  11. package/python/bin/python3.12 +0 -0
  12. package/python/bin/python3.12-config +76 -0
  13. package/python/include/python3.12/Python.h +109 -0
  14. package/python/include/python3.12/abstract.h +899 -0
  15. package/python/include/python3.12/bltinmodule.h +14 -0
  16. package/python/include/python3.12/boolobject.h +42 -0
  17. package/python/include/python3.12/bytearrayobject.h +44 -0
  18. package/python/include/python3.12/bytesobject.h +69 -0
  19. package/python/include/python3.12/ceval.h +168 -0
  20. package/python/include/python3.12/codecs.h +248 -0
  21. package/python/include/python3.12/compile.h +22 -0
  22. package/python/include/python3.12/complexobject.h +30 -0
  23. package/python/include/python3.12/cpython/abstract.h +206 -0
  24. package/python/include/python3.12/cpython/bytearrayobject.h +34 -0
  25. package/python/include/python3.12/cpython/bytesobject.h +133 -0
  26. package/python/include/python3.12/cpython/cellobject.h +44 -0
  27. package/python/include/python3.12/cpython/ceval.h +35 -0
  28. package/python/include/python3.12/cpython/classobject.h +71 -0
  29. package/python/include/python3.12/cpython/code.h +389 -0
  30. package/python/include/python3.12/cpython/compile.h +69 -0
  31. package/python/include/python3.12/cpython/complexobject.h +44 -0
  32. package/python/include/python3.12/cpython/context.h +78 -0
  33. package/python/include/python3.12/cpython/descrobject.h +64 -0
  34. package/python/include/python3.12/cpython/dictobject.h +118 -0
  35. package/python/include/python3.12/cpython/fileobject.h +19 -0
  36. package/python/include/python3.12/cpython/fileutils.h +8 -0
  37. package/python/include/python3.12/cpython/floatobject.h +27 -0
  38. package/python/include/python3.12/cpython/frameobject.h +29 -0
  39. package/python/include/python3.12/cpython/funcobject.h +190 -0
  40. package/python/include/python3.12/cpython/genobject.h +89 -0
  41. package/python/include/python3.12/cpython/import.h +46 -0
  42. package/python/include/python3.12/cpython/initconfig.h +256 -0
  43. package/python/include/python3.12/cpython/interpreteridobject.h +11 -0
  44. package/python/include/python3.12/cpython/listobject.h +47 -0
  45. package/python/include/python3.12/cpython/longintrepr.h +133 -0
  46. package/python/include/python3.12/cpython/longobject.h +100 -0
  47. package/python/include/python3.12/cpython/memoryobject.h +52 -0
  48. package/python/include/python3.12/cpython/methodobject.h +66 -0
  49. package/python/include/python3.12/cpython/modsupport.h +109 -0
  50. package/python/include/python3.12/cpython/object.h +575 -0
  51. package/python/include/python3.12/cpython/objimpl.h +95 -0
  52. package/python/include/python3.12/cpython/odictobject.h +43 -0
  53. package/python/include/python3.12/cpython/picklebufobject.h +31 -0
  54. package/python/include/python3.12/cpython/pthread_stubs.h +88 -0
  55. package/python/include/python3.12/cpython/pyctype.h +39 -0
  56. package/python/include/python3.12/cpython/pydebug.h +38 -0
  57. package/python/include/python3.12/cpython/pyerrors.h +178 -0
  58. package/python/include/python3.12/cpython/pyfpe.h +15 -0
  59. package/python/include/python3.12/cpython/pyframe.h +35 -0
  60. package/python/include/python3.12/cpython/pylifecycle.h +111 -0
  61. package/python/include/python3.12/cpython/pymem.h +98 -0
  62. package/python/include/python3.12/cpython/pystate.h +456 -0
  63. package/python/include/python3.12/cpython/pythonrun.h +121 -0
  64. package/python/include/python3.12/cpython/pythread.h +42 -0
  65. package/python/include/python3.12/cpython/pytime.h +331 -0
  66. package/python/include/python3.12/cpython/setobject.h +72 -0
  67. package/python/include/python3.12/cpython/sysmodule.h +16 -0
  68. package/python/include/python3.12/cpython/traceback.h +16 -0
  69. package/python/include/python3.12/cpython/tupleobject.h +39 -0
  70. package/python/include/python3.12/cpython/unicodeobject.h +976 -0
  71. package/python/include/python3.12/cpython/warnings.h +20 -0
  72. package/python/include/python3.12/cpython/weakrefobject.h +56 -0
  73. package/python/include/python3.12/datetime.h +267 -0
  74. package/python/include/python3.12/descrobject.h +100 -0
  75. package/python/include/python3.12/dictobject.h +97 -0
  76. package/python/include/python3.12/dynamic_annotations.h +499 -0
  77. package/python/include/python3.12/enumobject.h +17 -0
  78. package/python/include/python3.12/errcode.h +38 -0
  79. package/python/include/python3.12/exports.h +36 -0
  80. package/python/include/python3.12/fileobject.h +49 -0
  81. package/python/include/python3.12/fileutils.h +26 -0
  82. package/python/include/python3.12/floatobject.h +54 -0
  83. package/python/include/python3.12/frameobject.h +20 -0
  84. package/python/include/python3.12/genericaliasobject.h +14 -0
  85. package/python/include/python3.12/import.h +98 -0
  86. package/python/include/python3.12/internal/pycore_abstract.h +25 -0
  87. package/python/include/python3.12/internal/pycore_asdl.h +112 -0
  88. package/python/include/python3.12/internal/pycore_ast.h +922 -0
  89. package/python/include/python3.12/internal/pycore_ast_state.h +265 -0
  90. package/python/include/python3.12/internal/pycore_atexit.h +57 -0
  91. package/python/include/python3.12/internal/pycore_atomic.h +557 -0
  92. package/python/include/python3.12/internal/pycore_atomic_funcs.h +94 -0
  93. package/python/include/python3.12/internal/pycore_bitutils.h +186 -0
  94. package/python/include/python3.12/internal/pycore_blocks_output_buffer.h +317 -0
  95. package/python/include/python3.12/internal/pycore_bytes_methods.h +73 -0
  96. package/python/include/python3.12/internal/pycore_bytesobject.h +47 -0
  97. package/python/include/python3.12/internal/pycore_call.h +133 -0
  98. package/python/include/python3.12/internal/pycore_ceval.h +164 -0
  99. package/python/include/python3.12/internal/pycore_ceval_state.h +103 -0
  100. package/python/include/python3.12/internal/pycore_code.h +496 -0
  101. package/python/include/python3.12/internal/pycore_compile.h +118 -0
  102. package/python/include/python3.12/internal/pycore_condvar.h +99 -0
  103. package/python/include/python3.12/internal/pycore_context.h +71 -0
  104. package/python/include/python3.12/internal/pycore_descrobject.h +26 -0
  105. package/python/include/python3.12/internal/pycore_dict.h +199 -0
  106. package/python/include/python3.12/internal/pycore_dict_state.h +50 -0
  107. package/python/include/python3.12/internal/pycore_dtoa.h +69 -0
  108. package/python/include/python3.12/internal/pycore_emscripten_signal.h +25 -0
  109. package/python/include/python3.12/internal/pycore_exceptions.h +37 -0
  110. package/python/include/python3.12/internal/pycore_faulthandler.h +99 -0
  111. package/python/include/python3.12/internal/pycore_fileutils.h +292 -0
  112. package/python/include/python3.12/internal/pycore_fileutils_windows.h +98 -0
  113. package/python/include/python3.12/internal/pycore_floatobject.h +71 -0
  114. package/python/include/python3.12/internal/pycore_flowgraph.h +120 -0
  115. package/python/include/python3.12/internal/pycore_format.h +27 -0
  116. package/python/include/python3.12/internal/pycore_frame.h +283 -0
  117. package/python/include/python3.12/internal/pycore_function.h +26 -0
  118. package/python/include/python3.12/internal/pycore_gc.h +211 -0
  119. package/python/include/python3.12/internal/pycore_genobject.h +49 -0
  120. package/python/include/python3.12/internal/pycore_getopt.h +22 -0
  121. package/python/include/python3.12/internal/pycore_gil.h +50 -0
  122. package/python/include/python3.12/internal/pycore_global_objects.h +105 -0
  123. package/python/include/python3.12/internal/pycore_global_objects_fini_generated.h +1517 -0
  124. package/python/include/python3.12/internal/pycore_global_strings.h +777 -0
  125. package/python/include/python3.12/internal/pycore_hamt.h +134 -0
  126. package/python/include/python3.12/internal/pycore_hashtable.h +149 -0
  127. package/python/include/python3.12/internal/pycore_import.h +183 -0
  128. package/python/include/python3.12/internal/pycore_initconfig.h +179 -0
  129. package/python/include/python3.12/internal/pycore_instruments.h +106 -0
  130. package/python/include/python3.12/internal/pycore_interp.h +275 -0
  131. package/python/include/python3.12/internal/pycore_intrinsics.h +32 -0
  132. package/python/include/python3.12/internal/pycore_list.h +83 -0
  133. package/python/include/python3.12/internal/pycore_long.h +258 -0
  134. package/python/include/python3.12/internal/pycore_memoryobject.h +18 -0
  135. package/python/include/python3.12/internal/pycore_moduleobject.h +45 -0
  136. package/python/include/python3.12/internal/pycore_namespace.h +20 -0
  137. package/python/include/python3.12/internal/pycore_object.h +455 -0
  138. package/python/include/python3.12/internal/pycore_object_state.h +42 -0
  139. package/python/include/python3.12/internal/pycore_obmalloc.h +700 -0
  140. package/python/include/python3.12/internal/pycore_obmalloc_init.h +73 -0
  141. package/python/include/python3.12/internal/pycore_opcode.h +587 -0
  142. package/python/include/python3.12/internal/pycore_opcode_utils.h +92 -0
  143. package/python/include/python3.12/internal/pycore_parser.h +66 -0
  144. package/python/include/python3.12/internal/pycore_pathconfig.h +24 -0
  145. package/python/include/python3.12/internal/pycore_pyarena.h +64 -0
  146. package/python/include/python3.12/internal/pycore_pyerrors.h +129 -0
  147. package/python/include/python3.12/internal/pycore_pyhash.h +40 -0
  148. package/python/include/python3.12/internal/pycore_pylifecycle.h +99 -0
  149. package/python/include/python3.12/internal/pycore_pymath.h +205 -0
  150. package/python/include/python3.12/internal/pycore_pymem.h +98 -0
  151. package/python/include/python3.12/internal/pycore_pymem_init.h +85 -0
  152. package/python/include/python3.12/internal/pycore_pystate.h +180 -0
  153. package/python/include/python3.12/internal/pycore_pythread.h +81 -0
  154. package/python/include/python3.12/internal/pycore_range.h +21 -0
  155. package/python/include/python3.12/internal/pycore_runtime.h +235 -0
  156. package/python/include/python3.12/internal/pycore_runtime_init.h +188 -0
  157. package/python/include/python3.12/internal/pycore_runtime_init_generated.h +1511 -0
  158. package/python/include/python3.12/internal/pycore_signal.h +98 -0
  159. package/python/include/python3.12/internal/pycore_sliceobject.h +22 -0
  160. package/python/include/python3.12/internal/pycore_strhex.h +36 -0
  161. package/python/include/python3.12/internal/pycore_structseq.h +39 -0
  162. package/python/include/python3.12/internal/pycore_symtable.h +160 -0
  163. package/python/include/python3.12/internal/pycore_sysmodule.h +34 -0
  164. package/python/include/python3.12/internal/pycore_time.h +25 -0
  165. package/python/include/python3.12/internal/pycore_token.h +108 -0
  166. package/python/include/python3.12/internal/pycore_traceback.h +101 -0
  167. package/python/include/python3.12/internal/pycore_tracemalloc.h +123 -0
  168. package/python/include/python3.12/internal/pycore_tuple.h +79 -0
  169. package/python/include/python3.12/internal/pycore_typeobject.h +151 -0
  170. package/python/include/python3.12/internal/pycore_typevarobject.h +24 -0
  171. package/python/include/python3.12/internal/pycore_ucnhash.h +34 -0
  172. package/python/include/python3.12/internal/pycore_unicodeobject.h +86 -0
  173. package/python/include/python3.12/internal/pycore_unicodeobject_generated.h +2832 -0
  174. package/python/include/python3.12/internal/pycore_unionobject.h +23 -0
  175. package/python/include/python3.12/internal/pycore_warnings.h +29 -0
  176. package/python/include/python3.12/interpreteridobject.h +17 -0
  177. package/python/include/python3.12/intrcheck.h +30 -0
  178. package/python/include/python3.12/iterobject.h +27 -0
  179. package/python/include/python3.12/listobject.h +52 -0
  180. package/python/include/python3.12/longobject.h +108 -0
  181. package/python/include/python3.12/marshal.h +31 -0
  182. package/python/include/python3.12/memoryobject.h +34 -0
  183. package/python/include/python3.12/methodobject.h +132 -0
  184. package/python/include/python3.12/modsupport.h +168 -0
  185. package/python/include/python3.12/moduleobject.h +119 -0
  186. package/python/include/python3.12/object.h +993 -0
  187. package/python/include/python3.12/objimpl.h +234 -0
  188. package/python/include/python3.12/opcode.h +271 -0
  189. package/python/include/python3.12/osdefs.h +51 -0
  190. package/python/include/python3.12/osmodule.h +17 -0
  191. package/python/include/python3.12/patchlevel.h +35 -0
  192. package/python/include/python3.12/py_curses.h +99 -0
  193. package/python/include/python3.12/pybuffer.h +145 -0
  194. package/python/include/python3.12/pycapsule.h +59 -0
  195. package/python/include/python3.12/pyconfig.h +1943 -0
  196. package/python/include/python3.12/pydtrace.h +59 -0
  197. package/python/include/python3.12/pyerrors.h +337 -0
  198. package/python/include/python3.12/pyexpat.h +62 -0
  199. package/python/include/python3.12/pyframe.h +26 -0
  200. package/python/include/python3.12/pyhash.h +144 -0
  201. package/python/include/python3.12/pylifecycle.h +78 -0
  202. package/python/include/python3.12/pymacconfig.h +99 -0
  203. package/python/include/python3.12/pymacro.h +172 -0
  204. package/python/include/python3.12/pymath.h +62 -0
  205. package/python/include/python3.12/pymem.h +104 -0
  206. package/python/include/python3.12/pyport.h +782 -0
  207. package/python/include/python3.12/pystate.h +132 -0
  208. package/python/include/python3.12/pystats.h +110 -0
  209. package/python/include/python3.12/pystrcmp.h +23 -0
  210. package/python/include/python3.12/pystrtod.h +46 -0
  211. package/python/include/python3.12/pythonrun.h +49 -0
  212. package/python/include/python3.12/pythread.h +135 -0
  213. package/python/include/python3.12/pytypedefs.h +30 -0
  214. package/python/include/python3.12/rangeobject.h +27 -0
  215. package/python/include/python3.12/setobject.h +49 -0
  216. package/python/include/python3.12/sliceobject.h +65 -0
  217. package/python/include/python3.12/structmember.h +56 -0
  218. package/python/include/python3.12/structseq.h +49 -0
  219. package/python/include/python3.12/sysmodule.h +54 -0
  220. package/python/include/python3.12/traceback.h +26 -0
  221. package/python/include/python3.12/tracemalloc.h +77 -0
  222. package/python/include/python3.12/tupleobject.h +46 -0
  223. package/python/include/python3.12/typeslots.h +88 -0
  224. package/python/include/python3.12/unicodeobject.h +1020 -0
  225. package/python/include/python3.12/warnings.h +45 -0
  226. package/python/include/python3.12/weakrefobject.h +42 -0
  227. package/python/lib/libpython3.12.dylib +0 -0
  228. package/python/lib/python3.12/LICENSE.txt +279 -0
  229. package/python/lib/python3.12/__future__.py +147 -0
  230. package/python/lib/python3.12/__hello__.py +16 -0
  231. package/python/lib/python3.12/__phello__/__init__.py +7 -0
  232. package/python/lib/python3.12/__phello__/spam.py +7 -0
  233. package/python/lib/python3.12/_aix_support.py +108 -0
  234. package/python/lib/python3.12/_collections_abc.py +1173 -0
  235. package/python/lib/python3.12/_compat_pickle.py +252 -0
  236. package/python/lib/python3.12/_compression.py +162 -0
  237. package/python/lib/python3.12/_markupbase.py +396 -0
  238. package/python/lib/python3.12/_osx_support.py +579 -0
  239. package/python/lib/python3.12/_py_abc.py +147 -0
  240. package/python/lib/python3.12/_pydatetime.py +2643 -0
  241. package/python/lib/python3.12/_pydecimal.py +6339 -0
  242. package/python/lib/python3.12/_pyio.py +2698 -0
  243. package/python/lib/python3.12/_pylong.py +329 -0
  244. package/python/lib/python3.12/_sitebuiltins.py +103 -0
  245. package/python/lib/python3.12/_strptime.py +664 -0
  246. package/python/lib/python3.12/_sysconfigdata__darwin_darwin.py +984 -0
  247. package/python/lib/python3.12/_threading_local.py +242 -0
  248. package/python/lib/python3.12/_weakrefset.py +205 -0
  249. package/python/lib/python3.12/abc.py +188 -0
  250. package/python/lib/python3.12/aifc.py +984 -0
  251. package/python/lib/python3.12/antigravity.py +17 -0
  252. package/python/lib/python3.12/argparse.py +2650 -0
  253. package/python/lib/python3.12/ast.py +1840 -0
  254. package/python/lib/python3.12/asyncio/__init__.py +47 -0
  255. package/python/lib/python3.12/asyncio/__main__.py +128 -0
  256. package/python/lib/python3.12/asyncio/base_events.py +2024 -0
  257. package/python/lib/python3.12/asyncio/base_futures.py +67 -0
  258. package/python/lib/python3.12/asyncio/base_subprocess.py +285 -0
  259. package/python/lib/python3.12/asyncio/base_tasks.py +94 -0
  260. package/python/lib/python3.12/asyncio/constants.py +41 -0
  261. package/python/lib/python3.12/asyncio/coroutines.py +109 -0
  262. package/python/lib/python3.12/asyncio/events.py +868 -0
  263. package/python/lib/python3.12/asyncio/exceptions.py +62 -0
  264. package/python/lib/python3.12/asyncio/format_helpers.py +76 -0
  265. package/python/lib/python3.12/asyncio/futures.py +430 -0
  266. package/python/lib/python3.12/asyncio/locks.py +586 -0
  267. package/python/lib/python3.12/asyncio/log.py +7 -0
  268. package/python/lib/python3.12/asyncio/mixins.py +21 -0
  269. package/python/lib/python3.12/asyncio/proactor_events.py +897 -0
  270. package/python/lib/python3.12/asyncio/protocols.py +216 -0
  271. package/python/lib/python3.12/asyncio/queues.py +244 -0
  272. package/python/lib/python3.12/asyncio/runners.py +216 -0
  273. package/python/lib/python3.12/asyncio/selector_events.py +1324 -0
  274. package/python/lib/python3.12/asyncio/sslproto.py +929 -0
  275. package/python/lib/python3.12/asyncio/staggered.py +174 -0
  276. package/python/lib/python3.12/asyncio/streams.py +770 -0
  277. package/python/lib/python3.12/asyncio/subprocess.py +229 -0
  278. package/python/lib/python3.12/asyncio/taskgroups.py +268 -0
  279. package/python/lib/python3.12/asyncio/tasks.py +1065 -0
  280. package/python/lib/python3.12/asyncio/threads.py +25 -0
  281. package/python/lib/python3.12/asyncio/timeouts.py +168 -0
  282. package/python/lib/python3.12/asyncio/transports.py +335 -0
  283. package/python/lib/python3.12/asyncio/trsock.py +98 -0
  284. package/python/lib/python3.12/asyncio/unix_events.py +1500 -0
  285. package/python/lib/python3.12/asyncio/windows_events.py +901 -0
  286. package/python/lib/python3.12/asyncio/windows_utils.py +173 -0
  287. package/python/lib/python3.12/base64.py +586 -0
  288. package/python/lib/python3.12/bdb.py +920 -0
  289. package/python/lib/python3.12/bisect.py +118 -0
  290. package/python/lib/python3.12/bz2.py +344 -0
  291. package/python/lib/python3.12/cProfile.py +195 -0
  292. package/python/lib/python3.12/calendar.py +808 -0
  293. package/python/lib/python3.12/cgi.py +1014 -0
  294. package/python/lib/python3.12/cgitb.py +332 -0
  295. package/python/lib/python3.12/chunk.py +173 -0
  296. package/python/lib/python3.12/cmd.py +401 -0
  297. package/python/lib/python3.12/code.py +324 -0
  298. package/python/lib/python3.12/codecs.py +1129 -0
  299. package/python/lib/python3.12/codeop.py +161 -0
  300. package/python/lib/python3.12/collections/__init__.py +1592 -0
  301. package/python/lib/python3.12/collections/abc.py +3 -0
  302. package/python/lib/python3.12/colorsys.py +166 -0
  303. package/python/lib/python3.12/compileall.py +469 -0
  304. package/python/lib/python3.12/concurrent/__init__.py +1 -0
  305. package/python/lib/python3.12/concurrent/futures/__init__.py +54 -0
  306. package/python/lib/python3.12/concurrent/futures/_base.py +654 -0
  307. package/python/lib/python3.12/concurrent/futures/process.py +876 -0
  308. package/python/lib/python3.12/concurrent/futures/thread.py +240 -0
  309. package/python/lib/python3.12/config-3.12-darwin/Makefile +3224 -0
  310. package/python/lib/python3.12/config-3.12-darwin/Setup +303 -0
  311. package/python/lib/python3.12/config-3.12-darwin/Setup.bootstrap +36 -0
  312. package/python/lib/python3.12/config-3.12-darwin/Setup.local +90 -0
  313. package/python/lib/python3.12/config-3.12-darwin/Setup.stdlib +183 -0
  314. package/python/lib/python3.12/config-3.12-darwin/config.c +246 -0
  315. package/python/lib/python3.12/config-3.12-darwin/config.c.in +71 -0
  316. package/python/lib/python3.12/config-3.12-darwin/install-sh +541 -0
  317. package/python/lib/python3.12/config-3.12-darwin/makesetup +353 -0
  318. package/python/lib/python3.12/config-3.12-darwin/python-config.py +76 -0
  319. package/python/lib/python3.12/config-3.12-darwin/python.o +0 -0
  320. package/python/lib/python3.12/configparser.py +1333 -0
  321. package/python/lib/python3.12/contextlib.py +800 -0
  322. package/python/lib/python3.12/contextvars.py +4 -0
  323. package/python/lib/python3.12/copy.py +292 -0
  324. package/python/lib/python3.12/copyreg.py +217 -0
  325. package/python/lib/python3.12/crypt.py +124 -0
  326. package/python/lib/python3.12/csv.py +451 -0
  327. package/python/lib/python3.12/ctypes/__init__.py +582 -0
  328. package/python/lib/python3.12/ctypes/_aix.py +327 -0
  329. package/python/lib/python3.12/ctypes/_endian.py +78 -0
  330. package/python/lib/python3.12/ctypes/macholib/README.ctypes +7 -0
  331. package/python/lib/python3.12/ctypes/macholib/__init__.py +9 -0
  332. package/python/lib/python3.12/ctypes/macholib/dyld.py +165 -0
  333. package/python/lib/python3.12/ctypes/macholib/dylib.py +42 -0
  334. package/python/lib/python3.12/ctypes/macholib/fetch_macholib +2 -0
  335. package/python/lib/python3.12/ctypes/macholib/fetch_macholib.bat +1 -0
  336. package/python/lib/python3.12/ctypes/macholib/framework.py +42 -0
  337. package/python/lib/python3.12/ctypes/util.py +379 -0
  338. package/python/lib/python3.12/ctypes/wintypes.py +202 -0
  339. package/python/lib/python3.12/curses/__init__.py +101 -0
  340. package/python/lib/python3.12/curses/ascii.py +99 -0
  341. package/python/lib/python3.12/curses/has_key.py +192 -0
  342. package/python/lib/python3.12/curses/panel.py +6 -0
  343. package/python/lib/python3.12/curses/textpad.py +204 -0
  344. package/python/lib/python3.12/dataclasses.py +1588 -0
  345. package/python/lib/python3.12/datetime.py +9 -0
  346. package/python/lib/python3.12/dbm/__init__.py +190 -0
  347. package/python/lib/python3.12/dbm/dumb.py +317 -0
  348. package/python/lib/python3.12/dbm/gnu.py +3 -0
  349. package/python/lib/python3.12/dbm/ndbm.py +3 -0
  350. package/python/lib/python3.12/decimal.py +108 -0
  351. package/python/lib/python3.12/difflib.py +2056 -0
  352. package/python/lib/python3.12/dis.py +805 -0
  353. package/python/lib/python3.12/doctest.py +2845 -0
  354. package/python/lib/python3.12/email/__init__.py +61 -0
  355. package/python/lib/python3.12/email/_encoded_words.py +233 -0
  356. package/python/lib/python3.12/email/_header_value_parser.py +3108 -0
  357. package/python/lib/python3.12/email/_parseaddr.py +557 -0
  358. package/python/lib/python3.12/email/_policybase.py +382 -0
  359. package/python/lib/python3.12/email/architecture.rst +216 -0
  360. package/python/lib/python3.12/email/base64mime.py +115 -0
  361. package/python/lib/python3.12/email/charset.py +398 -0
  362. package/python/lib/python3.12/email/contentmanager.py +251 -0
  363. package/python/lib/python3.12/email/encoders.py +65 -0
  364. package/python/lib/python3.12/email/errors.py +117 -0
  365. package/python/lib/python3.12/email/feedparser.py +534 -0
  366. package/python/lib/python3.12/email/generator.py +530 -0
  367. package/python/lib/python3.12/email/header.py +573 -0
  368. package/python/lib/python3.12/email/headerregistry.py +604 -0
  369. package/python/lib/python3.12/email/iterators.py +68 -0
  370. package/python/lib/python3.12/email/message.py +1215 -0
  371. package/python/lib/python3.12/email/mime/__init__.py +0 -0
  372. package/python/lib/python3.12/email/mime/application.py +37 -0
  373. package/python/lib/python3.12/email/mime/audio.py +100 -0
  374. package/python/lib/python3.12/email/mime/base.py +29 -0
  375. package/python/lib/python3.12/email/mime/image.py +152 -0
  376. package/python/lib/python3.12/email/mime/message.py +33 -0
  377. package/python/lib/python3.12/email/mime/multipart.py +47 -0
  378. package/python/lib/python3.12/email/mime/nonmultipart.py +21 -0
  379. package/python/lib/python3.12/email/mime/text.py +40 -0
  380. package/python/lib/python3.12/email/parser.py +127 -0
  381. package/python/lib/python3.12/email/policy.py +232 -0
  382. package/python/lib/python3.12/email/quoprimime.py +300 -0
  383. package/python/lib/python3.12/email/utils.py +486 -0
  384. package/python/lib/python3.12/encodings/__init__.py +174 -0
  385. package/python/lib/python3.12/encodings/aliases.py +551 -0
  386. package/python/lib/python3.12/encodings/ascii.py +50 -0
  387. package/python/lib/python3.12/encodings/base64_codec.py +55 -0
  388. package/python/lib/python3.12/encodings/big5.py +39 -0
  389. package/python/lib/python3.12/encodings/big5hkscs.py +39 -0
  390. package/python/lib/python3.12/encodings/bz2_codec.py +78 -0
  391. package/python/lib/python3.12/encodings/charmap.py +69 -0
  392. package/python/lib/python3.12/encodings/cp037.py +307 -0
  393. package/python/lib/python3.12/encodings/cp1006.py +307 -0
  394. package/python/lib/python3.12/encodings/cp1026.py +307 -0
  395. package/python/lib/python3.12/encodings/cp1125.py +698 -0
  396. package/python/lib/python3.12/encodings/cp1140.py +307 -0
  397. package/python/lib/python3.12/encodings/cp1250.py +307 -0
  398. package/python/lib/python3.12/encodings/cp1251.py +307 -0
  399. package/python/lib/python3.12/encodings/cp1252.py +307 -0
  400. package/python/lib/python3.12/encodings/cp1253.py +307 -0
  401. package/python/lib/python3.12/encodings/cp1254.py +307 -0
  402. package/python/lib/python3.12/encodings/cp1255.py +307 -0
  403. package/python/lib/python3.12/encodings/cp1256.py +307 -0
  404. package/python/lib/python3.12/encodings/cp1257.py +307 -0
  405. package/python/lib/python3.12/encodings/cp1258.py +307 -0
  406. package/python/lib/python3.12/encodings/cp273.py +307 -0
  407. package/python/lib/python3.12/encodings/cp424.py +307 -0
  408. package/python/lib/python3.12/encodings/cp437.py +698 -0
  409. package/python/lib/python3.12/encodings/cp500.py +307 -0
  410. package/python/lib/python3.12/encodings/cp720.py +309 -0
  411. package/python/lib/python3.12/encodings/cp737.py +698 -0
  412. package/python/lib/python3.12/encodings/cp775.py +697 -0
  413. package/python/lib/python3.12/encodings/cp850.py +698 -0
  414. package/python/lib/python3.12/encodings/cp852.py +698 -0
  415. package/python/lib/python3.12/encodings/cp855.py +698 -0
  416. package/python/lib/python3.12/encodings/cp856.py +307 -0
  417. package/python/lib/python3.12/encodings/cp857.py +694 -0
  418. package/python/lib/python3.12/encodings/cp858.py +698 -0
  419. package/python/lib/python3.12/encodings/cp860.py +698 -0
  420. package/python/lib/python3.12/encodings/cp861.py +698 -0
  421. package/python/lib/python3.12/encodings/cp862.py +698 -0
  422. package/python/lib/python3.12/encodings/cp863.py +698 -0
  423. package/python/lib/python3.12/encodings/cp864.py +690 -0
  424. package/python/lib/python3.12/encodings/cp865.py +698 -0
  425. package/python/lib/python3.12/encodings/cp866.py +698 -0
  426. package/python/lib/python3.12/encodings/cp869.py +689 -0
  427. package/python/lib/python3.12/encodings/cp874.py +307 -0
  428. package/python/lib/python3.12/encodings/cp875.py +307 -0
  429. package/python/lib/python3.12/encodings/cp932.py +39 -0
  430. package/python/lib/python3.12/encodings/cp949.py +39 -0
  431. package/python/lib/python3.12/encodings/cp950.py +39 -0
  432. package/python/lib/python3.12/encodings/euc_jis_2004.py +39 -0
  433. package/python/lib/python3.12/encodings/euc_jisx0213.py +39 -0
  434. package/python/lib/python3.12/encodings/euc_jp.py +39 -0
  435. package/python/lib/python3.12/encodings/euc_kr.py +39 -0
  436. package/python/lib/python3.12/encodings/gb18030.py +39 -0
  437. package/python/lib/python3.12/encodings/gb2312.py +39 -0
  438. package/python/lib/python3.12/encodings/gbk.py +39 -0
  439. package/python/lib/python3.12/encodings/hex_codec.py +55 -0
  440. package/python/lib/python3.12/encodings/hp_roman8.py +314 -0
  441. package/python/lib/python3.12/encodings/hz.py +39 -0
  442. package/python/lib/python3.12/encodings/idna.py +317 -0
  443. package/python/lib/python3.12/encodings/iso2022_jp.py +39 -0
  444. package/python/lib/python3.12/encodings/iso2022_jp_1.py +39 -0
  445. package/python/lib/python3.12/encodings/iso2022_jp_2.py +39 -0
  446. package/python/lib/python3.12/encodings/iso2022_jp_2004.py +39 -0
  447. package/python/lib/python3.12/encodings/iso2022_jp_3.py +39 -0
  448. package/python/lib/python3.12/encodings/iso2022_jp_ext.py +39 -0
  449. package/python/lib/python3.12/encodings/iso2022_kr.py +39 -0
  450. package/python/lib/python3.12/encodings/iso8859_1.py +307 -0
  451. package/python/lib/python3.12/encodings/iso8859_10.py +307 -0
  452. package/python/lib/python3.12/encodings/iso8859_11.py +307 -0
  453. package/python/lib/python3.12/encodings/iso8859_13.py +307 -0
  454. package/python/lib/python3.12/encodings/iso8859_14.py +307 -0
  455. package/python/lib/python3.12/encodings/iso8859_15.py +307 -0
  456. package/python/lib/python3.12/encodings/iso8859_16.py +307 -0
  457. package/python/lib/python3.12/encodings/iso8859_2.py +307 -0
  458. package/python/lib/python3.12/encodings/iso8859_3.py +307 -0
  459. package/python/lib/python3.12/encodings/iso8859_4.py +307 -0
  460. package/python/lib/python3.12/encodings/iso8859_5.py +307 -0
  461. package/python/lib/python3.12/encodings/iso8859_6.py +307 -0
  462. package/python/lib/python3.12/encodings/iso8859_7.py +307 -0
  463. package/python/lib/python3.12/encodings/iso8859_8.py +307 -0
  464. package/python/lib/python3.12/encodings/iso8859_9.py +307 -0
  465. package/python/lib/python3.12/encodings/johab.py +39 -0
  466. package/python/lib/python3.12/encodings/koi8_r.py +307 -0
  467. package/python/lib/python3.12/encodings/koi8_t.py +308 -0
  468. package/python/lib/python3.12/encodings/koi8_u.py +307 -0
  469. package/python/lib/python3.12/encodings/kz1048.py +307 -0
  470. package/python/lib/python3.12/encodings/latin_1.py +50 -0
  471. package/python/lib/python3.12/encodings/mac_arabic.py +698 -0
  472. package/python/lib/python3.12/encodings/mac_croatian.py +307 -0
  473. package/python/lib/python3.12/encodings/mac_cyrillic.py +307 -0
  474. package/python/lib/python3.12/encodings/mac_farsi.py +307 -0
  475. package/python/lib/python3.12/encodings/mac_greek.py +307 -0
  476. package/python/lib/python3.12/encodings/mac_iceland.py +307 -0
  477. package/python/lib/python3.12/encodings/mac_latin2.py +312 -0
  478. package/python/lib/python3.12/encodings/mac_roman.py +307 -0
  479. package/python/lib/python3.12/encodings/mac_romanian.py +307 -0
  480. package/python/lib/python3.12/encodings/mac_turkish.py +307 -0
  481. package/python/lib/python3.12/encodings/mbcs.py +47 -0
  482. package/python/lib/python3.12/encodings/oem.py +41 -0
  483. package/python/lib/python3.12/encodings/palmos.py +308 -0
  484. package/python/lib/python3.12/encodings/ptcp154.py +312 -0
  485. package/python/lib/python3.12/encodings/punycode.py +237 -0
  486. package/python/lib/python3.12/encodings/quopri_codec.py +56 -0
  487. package/python/lib/python3.12/encodings/raw_unicode_escape.py +46 -0
  488. package/python/lib/python3.12/encodings/rot_13.py +113 -0
  489. package/python/lib/python3.12/encodings/shift_jis.py +39 -0
  490. package/python/lib/python3.12/encodings/shift_jis_2004.py +39 -0
  491. package/python/lib/python3.12/encodings/shift_jisx0213.py +39 -0
  492. package/python/lib/python3.12/encodings/tis_620.py +307 -0
  493. package/python/lib/python3.12/encodings/undefined.py +49 -0
  494. package/python/lib/python3.12/encodings/unicode_escape.py +46 -0
  495. package/python/lib/python3.12/encodings/utf_16.py +155 -0
  496. package/python/lib/python3.12/encodings/utf_16_be.py +42 -0
  497. package/python/lib/python3.12/encodings/utf_16_le.py +42 -0
  498. package/python/lib/python3.12/encodings/utf_32.py +150 -0
  499. package/python/lib/python3.12/encodings/utf_32_be.py +37 -0
  500. package/python/lib/python3.12/encodings/utf_32_le.py +37 -0
  501. package/python/lib/python3.12/encodings/utf_7.py +38 -0
  502. package/python/lib/python3.12/encodings/utf_8.py +42 -0
  503. package/python/lib/python3.12/encodings/utf_8_sig.py +130 -0
  504. package/python/lib/python3.12/encodings/uu_codec.py +103 -0
  505. package/python/lib/python3.12/encodings/zlib_codec.py +77 -0
  506. package/python/lib/python3.12/ensurepip/__init__.py +291 -0
  507. package/python/lib/python3.12/ensurepip/__main__.py +5 -0
  508. package/python/lib/python3.12/ensurepip/_bundled/pip-25.0.1-py3-none-any.whl +0 -0
  509. package/python/lib/python3.12/ensurepip/_uninstall.py +31 -0
  510. package/python/lib/python3.12/enum.py +2108 -0
  511. package/python/lib/python3.12/filecmp.py +315 -0
  512. package/python/lib/python3.12/fileinput.py +442 -0
  513. package/python/lib/python3.12/fnmatch.py +185 -0
  514. package/python/lib/python3.12/fractions.py +990 -0
  515. package/python/lib/python3.12/ftplib.py +966 -0
  516. package/python/lib/python3.12/functools.py +1009 -0
  517. package/python/lib/python3.12/genericpath.py +176 -0
  518. package/python/lib/python3.12/getopt.py +215 -0
  519. package/python/lib/python3.12/getpass.py +185 -0
  520. package/python/lib/python3.12/gettext.py +646 -0
  521. package/python/lib/python3.12/glob.py +252 -0
  522. package/python/lib/python3.12/graphlib.py +250 -0
  523. package/python/lib/python3.12/gzip.py +711 -0
  524. package/python/lib/python3.12/hashlib.py +253 -0
  525. package/python/lib/python3.12/heapq.py +603 -0
  526. package/python/lib/python3.12/hmac.py +219 -0
  527. package/python/lib/python3.12/html/__init__.py +132 -0
  528. package/python/lib/python3.12/html/entities.py +2513 -0
  529. package/python/lib/python3.12/html/parser.py +535 -0
  530. package/python/lib/python3.12/http/__init__.py +200 -0
  531. package/python/lib/python3.12/http/client.py +1570 -0
  532. package/python/lib/python3.12/http/cookiejar.py +2121 -0
  533. package/python/lib/python3.12/http/cookies.py +615 -0
  534. package/python/lib/python3.12/http/server.py +1335 -0
  535. package/python/lib/python3.12/imaplib.py +1641 -0
  536. package/python/lib/python3.12/imghdr.py +180 -0
  537. package/python/lib/python3.12/importlib/__init__.py +138 -0
  538. package/python/lib/python3.12/importlib/_abc.py +39 -0
  539. package/python/lib/python3.12/importlib/_bootstrap.py +1551 -0
  540. package/python/lib/python3.12/importlib/_bootstrap_external.py +1749 -0
  541. package/python/lib/python3.12/importlib/abc.py +239 -0
  542. package/python/lib/python3.12/importlib/machinery.py +20 -0
  543. package/python/lib/python3.12/importlib/metadata/__init__.py +966 -0
  544. package/python/lib/python3.12/importlib/metadata/_adapters.py +89 -0
  545. package/python/lib/python3.12/importlib/metadata/_collections.py +30 -0
  546. package/python/lib/python3.12/importlib/metadata/_functools.py +104 -0
  547. package/python/lib/python3.12/importlib/metadata/_itertools.py +73 -0
  548. package/python/lib/python3.12/importlib/metadata/_meta.py +63 -0
  549. package/python/lib/python3.12/importlib/metadata/_text.py +99 -0
  550. package/python/lib/python3.12/importlib/readers.py +12 -0
  551. package/python/lib/python3.12/importlib/resources/__init__.py +38 -0
  552. package/python/lib/python3.12/importlib/resources/_adapters.py +168 -0
  553. package/python/lib/python3.12/importlib/resources/_common.py +208 -0
  554. package/python/lib/python3.12/importlib/resources/_itertools.py +38 -0
  555. package/python/lib/python3.12/importlib/resources/_legacy.py +98 -0
  556. package/python/lib/python3.12/importlib/resources/abc.py +173 -0
  557. package/python/lib/python3.12/importlib/resources/readers.py +146 -0
  558. package/python/lib/python3.12/importlib/resources/simple.py +106 -0
  559. package/python/lib/python3.12/importlib/simple.py +14 -0
  560. package/python/lib/python3.12/importlib/util.py +270 -0
  561. package/python/lib/python3.12/inspect.py +3433 -0
  562. package/python/lib/python3.12/io.py +99 -0
  563. package/python/lib/python3.12/ipaddress.py +2430 -0
  564. package/python/lib/python3.12/json/__init__.py +359 -0
  565. package/python/lib/python3.12/json/decoder.py +357 -0
  566. package/python/lib/python3.12/json/encoder.py +443 -0
  567. package/python/lib/python3.12/json/scanner.py +73 -0
  568. package/python/lib/python3.12/json/tool.py +85 -0
  569. package/python/lib/python3.12/keyword.py +64 -0
  570. package/python/lib/python3.12/lib-dynload/.empty +0 -0
  571. package/python/lib/python3.12/lib-dynload/_crypt.cpython-312-darwin.so +0 -0
  572. package/python/lib/python3.12/lib-dynload/_dbm.cpython-312-darwin.so +0 -0
  573. package/python/lib/python3.12/linecache.py +185 -0
  574. package/python/lib/python3.12/locale.py +1779 -0
  575. package/python/lib/python3.12/logging/__init__.py +2345 -0
  576. package/python/lib/python3.12/logging/config.py +1078 -0
  577. package/python/lib/python3.12/logging/handlers.py +1624 -0
  578. package/python/lib/python3.12/lzma.py +356 -0
  579. package/python/lib/python3.12/mailbox.py +2153 -0
  580. package/python/lib/python3.12/mailcap.py +302 -0
  581. package/python/lib/python3.12/mimetypes.py +656 -0
  582. package/python/lib/python3.12/modulefinder.py +666 -0
  583. package/python/lib/python3.12/multiprocessing/__init__.py +37 -0
  584. package/python/lib/python3.12/multiprocessing/connection.py +1178 -0
  585. package/python/lib/python3.12/multiprocessing/context.py +377 -0
  586. package/python/lib/python3.12/multiprocessing/dummy/__init__.py +126 -0
  587. package/python/lib/python3.12/multiprocessing/dummy/connection.py +75 -0
  588. package/python/lib/python3.12/multiprocessing/forkserver.py +350 -0
  589. package/python/lib/python3.12/multiprocessing/heap.py +337 -0
  590. package/python/lib/python3.12/multiprocessing/managers.py +1387 -0
  591. package/python/lib/python3.12/multiprocessing/pool.py +957 -0
  592. package/python/lib/python3.12/multiprocessing/popen_fork.py +83 -0
  593. package/python/lib/python3.12/multiprocessing/popen_forkserver.py +74 -0
  594. package/python/lib/python3.12/multiprocessing/popen_spawn_posix.py +72 -0
  595. package/python/lib/python3.12/multiprocessing/popen_spawn_win32.py +145 -0
  596. package/python/lib/python3.12/multiprocessing/process.py +439 -0
  597. package/python/lib/python3.12/multiprocessing/queues.py +401 -0
  598. package/python/lib/python3.12/multiprocessing/reduction.py +281 -0
  599. package/python/lib/python3.12/multiprocessing/resource_sharer.py +154 -0
  600. package/python/lib/python3.12/multiprocessing/resource_tracker.py +294 -0
  601. package/python/lib/python3.12/multiprocessing/shared_memory.py +534 -0
  602. package/python/lib/python3.12/multiprocessing/sharedctypes.py +240 -0
  603. package/python/lib/python3.12/multiprocessing/spawn.py +307 -0
  604. package/python/lib/python3.12/multiprocessing/synchronize.py +404 -0
  605. package/python/lib/python3.12/multiprocessing/util.py +494 -0
  606. package/python/lib/python3.12/netrc.py +192 -0
  607. package/python/lib/python3.12/nntplib.py +1093 -0
  608. package/python/lib/python3.12/ntpath.py +869 -0
  609. package/python/lib/python3.12/nturl2path.py +69 -0
  610. package/python/lib/python3.12/numbers.py +418 -0
  611. package/python/lib/python3.12/opcode.py +493 -0
  612. package/python/lib/python3.12/operator.py +467 -0
  613. package/python/lib/python3.12/optparse.py +1681 -0
  614. package/python/lib/python3.12/os.py +1159 -0
  615. package/python/lib/python3.12/pathlib.py +1435 -0
  616. package/python/lib/python3.12/pdb.py +1987 -0
  617. package/python/lib/python3.12/pickle.py +1866 -0
  618. package/python/lib/python3.12/pickletools.py +2904 -0
  619. package/python/lib/python3.12/pipes.py +250 -0
  620. package/python/lib/python3.12/pkgutil.py +529 -0
  621. package/python/lib/python3.12/platform.py +1359 -0
  622. package/python/lib/python3.12/plistlib.py +920 -0
  623. package/python/lib/python3.12/poplib.py +478 -0
  624. package/python/lib/python3.12/posixpath.py +577 -0
  625. package/python/lib/python3.12/pprint.py +658 -0
  626. package/python/lib/python3.12/profile.py +615 -0
  627. package/python/lib/python3.12/pstats.py +778 -0
  628. package/python/lib/python3.12/pty.py +211 -0
  629. package/python/lib/python3.12/py_compile.py +212 -0
  630. package/python/lib/python3.12/pyclbr.py +314 -0
  631. package/python/lib/python3.12/pydoc.py +2950 -0
  632. package/python/lib/python3.12/pydoc_data/__init__.py +0 -0
  633. package/python/lib/python3.12/pydoc_data/_pydoc.css +112 -0
  634. package/python/lib/python3.12/pydoc_data/topics.py +12500 -0
  635. package/python/lib/python3.12/queue.py +326 -0
  636. package/python/lib/python3.12/quopri.py +237 -0
  637. package/python/lib/python3.12/random.py +996 -0
  638. package/python/lib/python3.12/re/__init__.py +385 -0
  639. package/python/lib/python3.12/re/_casefix.py +106 -0
  640. package/python/lib/python3.12/re/_compiler.py +770 -0
  641. package/python/lib/python3.12/re/_constants.py +220 -0
  642. package/python/lib/python3.12/re/_parser.py +1080 -0
  643. package/python/lib/python3.12/reprlib.py +214 -0
  644. package/python/lib/python3.12/rlcompleter.py +219 -0
  645. package/python/lib/python3.12/runpy.py +319 -0
  646. package/python/lib/python3.12/sched.py +167 -0
  647. package/python/lib/python3.12/secrets.py +71 -0
  648. package/python/lib/python3.12/selectors.py +623 -0
  649. package/python/lib/python3.12/shelve.py +243 -0
  650. package/python/lib/python3.12/shlex.py +345 -0
  651. package/python/lib/python3.12/shutil.py +1566 -0
  652. package/python/lib/python3.12/signal.py +94 -0
  653. package/python/lib/python3.12/site-packages/README.txt +2 -0
  654. package/python/lib/python3.12/site-packages/pip/__init__.py +13 -0
  655. package/python/lib/python3.12/site-packages/pip/__main__.py +24 -0
  656. package/python/lib/python3.12/site-packages/pip/__pip-runner__.py +50 -0
  657. package/python/lib/python3.12/site-packages/pip/_internal/__init__.py +18 -0
  658. package/python/lib/python3.12/site-packages/pip/_internal/build_env.py +606 -0
  659. package/python/lib/python3.12/site-packages/pip/_internal/cache.py +291 -0
  660. package/python/lib/python3.12/site-packages/pip/_internal/cli/__init__.py +3 -0
  661. package/python/lib/python3.12/site-packages/pip/_internal/cli/autocompletion.py +184 -0
  662. package/python/lib/python3.12/site-packages/pip/_internal/cli/base_command.py +264 -0
  663. package/python/lib/python3.12/site-packages/pip/_internal/cli/cmdoptions.py +1298 -0
  664. package/python/lib/python3.12/site-packages/pip/_internal/cli/command_context.py +28 -0
  665. package/python/lib/python3.12/site-packages/pip/_internal/cli/index_command.py +212 -0
  666. package/python/lib/python3.12/site-packages/pip/_internal/cli/main.py +85 -0
  667. package/python/lib/python3.12/site-packages/pip/_internal/cli/main_parser.py +136 -0
  668. package/python/lib/python3.12/site-packages/pip/_internal/cli/parser.py +358 -0
  669. package/python/lib/python3.12/site-packages/pip/_internal/cli/progress_bars.py +153 -0
  670. package/python/lib/python3.12/site-packages/pip/_internal/cli/req_command.py +472 -0
  671. package/python/lib/python3.12/site-packages/pip/_internal/cli/spinners.py +235 -0
  672. package/python/lib/python3.12/site-packages/pip/_internal/cli/status_codes.py +6 -0
  673. package/python/lib/python3.12/site-packages/pip/_internal/commands/__init__.py +139 -0
  674. package/python/lib/python3.12/site-packages/pip/_internal/commands/cache.py +255 -0
  675. package/python/lib/python3.12/site-packages/pip/_internal/commands/check.py +66 -0
  676. package/python/lib/python3.12/site-packages/pip/_internal/commands/completion.py +136 -0
  677. package/python/lib/python3.12/site-packages/pip/_internal/commands/configuration.py +288 -0
  678. package/python/lib/python3.12/site-packages/pip/_internal/commands/debug.py +196 -0
  679. package/python/lib/python3.12/site-packages/pip/_internal/commands/download.py +146 -0
  680. package/python/lib/python3.12/site-packages/pip/_internal/commands/freeze.py +107 -0
  681. package/python/lib/python3.12/site-packages/pip/_internal/commands/hash.py +58 -0
  682. package/python/lib/python3.12/site-packages/pip/_internal/commands/help.py +40 -0
  683. package/python/lib/python3.12/site-packages/pip/_internal/commands/index.py +166 -0
  684. package/python/lib/python3.12/site-packages/pip/_internal/commands/inspect.py +92 -0
  685. package/python/lib/python3.12/site-packages/pip/_internal/commands/install.py +904 -0
  686. package/python/lib/python3.12/site-packages/pip/_internal/commands/list.py +403 -0
  687. package/python/lib/python3.12/site-packages/pip/_internal/commands/lock.py +175 -0
  688. package/python/lib/python3.12/site-packages/pip/_internal/commands/search.py +178 -0
  689. package/python/lib/python3.12/site-packages/pip/_internal/commands/show.py +231 -0
  690. package/python/lib/python3.12/site-packages/pip/_internal/commands/uninstall.py +113 -0
  691. package/python/lib/python3.12/site-packages/pip/_internal/commands/wheel.py +171 -0
  692. package/python/lib/python3.12/site-packages/pip/_internal/configuration.py +396 -0
  693. package/python/lib/python3.12/site-packages/pip/_internal/distributions/__init__.py +21 -0
  694. package/python/lib/python3.12/site-packages/pip/_internal/distributions/base.py +55 -0
  695. package/python/lib/python3.12/site-packages/pip/_internal/distributions/installed.py +33 -0
  696. package/python/lib/python3.12/site-packages/pip/_internal/distributions/sdist.py +164 -0
  697. package/python/lib/python3.12/site-packages/pip/_internal/distributions/wheel.py +44 -0
  698. package/python/lib/python3.12/site-packages/pip/_internal/exceptions.py +971 -0
  699. package/python/lib/python3.12/site-packages/pip/_internal/index/__init__.py +1 -0
  700. package/python/lib/python3.12/site-packages/pip/_internal/index/collector.py +488 -0
  701. package/python/lib/python3.12/site-packages/pip/_internal/index/package_finder.py +1113 -0
  702. package/python/lib/python3.12/site-packages/pip/_internal/index/sources.py +287 -0
  703. package/python/lib/python3.12/site-packages/pip/_internal/locations/__init__.py +438 -0
  704. package/python/lib/python3.12/site-packages/pip/_internal/locations/_distutils.py +173 -0
  705. package/python/lib/python3.12/site-packages/pip/_internal/locations/_sysconfig.py +218 -0
  706. package/python/lib/python3.12/site-packages/pip/_internal/locations/base.py +82 -0
  707. package/python/lib/python3.12/site-packages/pip/_internal/main.py +12 -0
  708. package/python/lib/python3.12/site-packages/pip/_internal/metadata/__init__.py +169 -0
  709. package/python/lib/python3.12/site-packages/pip/_internal/metadata/_json.py +87 -0
  710. package/python/lib/python3.12/site-packages/pip/_internal/metadata/base.py +685 -0
  711. package/python/lib/python3.12/site-packages/pip/_internal/metadata/importlib/__init__.py +6 -0
  712. package/python/lib/python3.12/site-packages/pip/_internal/metadata/importlib/_compat.py +87 -0
  713. package/python/lib/python3.12/site-packages/pip/_internal/metadata/importlib/_dists.py +235 -0
  714. package/python/lib/python3.12/site-packages/pip/_internal/metadata/importlib/_envs.py +143 -0
  715. package/python/lib/python3.12/site-packages/pip/_internal/metadata/pkg_resources.py +298 -0
  716. package/python/lib/python3.12/site-packages/pip/_internal/models/__init__.py +1 -0
  717. package/python/lib/python3.12/site-packages/pip/_internal/models/candidate.py +23 -0
  718. package/python/lib/python3.12/site-packages/pip/_internal/models/direct_url.py +42 -0
  719. package/python/lib/python3.12/site-packages/pip/_internal/models/format_control.py +78 -0
  720. package/python/lib/python3.12/site-packages/pip/_internal/models/index.py +28 -0
  721. package/python/lib/python3.12/site-packages/pip/_internal/models/installation_report.py +57 -0
  722. package/python/lib/python3.12/site-packages/pip/_internal/models/link.py +617 -0
  723. package/python/lib/python3.12/site-packages/pip/_internal/models/release_control.py +91 -0
  724. package/python/lib/python3.12/site-packages/pip/_internal/models/scheme.py +23 -0
  725. package/python/lib/python3.12/site-packages/pip/_internal/models/search_scope.py +124 -0
  726. package/python/lib/python3.12/site-packages/pip/_internal/models/selection_prefs.py +36 -0
  727. package/python/lib/python3.12/site-packages/pip/_internal/models/target_python.py +122 -0
  728. package/python/lib/python3.12/site-packages/pip/_internal/models/wheel.py +80 -0
  729. package/python/lib/python3.12/site-packages/pip/_internal/network/__init__.py +1 -0
  730. package/python/lib/python3.12/site-packages/pip/_internal/network/auth.py +570 -0
  731. package/python/lib/python3.12/site-packages/pip/_internal/network/cache.py +128 -0
  732. package/python/lib/python3.12/site-packages/pip/_internal/network/download.py +340 -0
  733. package/python/lib/python3.12/site-packages/pip/_internal/network/lazy_wheel.py +215 -0
  734. package/python/lib/python3.12/site-packages/pip/_internal/network/session.py +537 -0
  735. package/python/lib/python3.12/site-packages/pip/_internal/network/utils.py +98 -0
  736. package/python/lib/python3.12/site-packages/pip/_internal/network/xmlrpc.py +61 -0
  737. package/python/lib/python3.12/site-packages/pip/_internal/operations/__init__.py +0 -0
  738. package/python/lib/python3.12/site-packages/pip/_internal/operations/build/__init__.py +0 -0
  739. package/python/lib/python3.12/site-packages/pip/_internal/operations/build/build_tracker.py +140 -0
  740. package/python/lib/python3.12/site-packages/pip/_internal/operations/build/metadata.py +38 -0
  741. package/python/lib/python3.12/site-packages/pip/_internal/operations/build/metadata_editable.py +41 -0
  742. package/python/lib/python3.12/site-packages/pip/_internal/operations/build/wheel.py +38 -0
  743. package/python/lib/python3.12/site-packages/pip/_internal/operations/build/wheel_editable.py +47 -0
  744. package/python/lib/python3.12/site-packages/pip/_internal/operations/check.py +175 -0
  745. package/python/lib/python3.12/site-packages/pip/_internal/operations/freeze.py +259 -0
  746. package/python/lib/python3.12/site-packages/pip/_internal/operations/install/__init__.py +1 -0
  747. package/python/lib/python3.12/site-packages/pip/_internal/operations/install/wheel.py +759 -0
  748. package/python/lib/python3.12/site-packages/pip/_internal/operations/prepare.py +751 -0
  749. package/python/lib/python3.12/site-packages/pip/_internal/pyproject.py +123 -0
  750. package/python/lib/python3.12/site-packages/pip/_internal/req/__init__.py +103 -0
  751. package/python/lib/python3.12/site-packages/pip/_internal/req/constructors.py +677 -0
  752. package/python/lib/python3.12/site-packages/pip/_internal/req/pep723.py +41 -0
  753. package/python/lib/python3.12/site-packages/pip/_internal/req/req_dependency_group.py +86 -0
  754. package/python/lib/python3.12/site-packages/pip/_internal/req/req_file.py +622 -0
  755. package/python/lib/python3.12/site-packages/pip/_internal/req/req_install.py +838 -0
  756. package/python/lib/python3.12/site-packages/pip/_internal/req/req_set.py +81 -0
  757. package/python/lib/python3.12/site-packages/pip/_internal/req/req_uninstall.py +639 -0
  758. package/python/lib/python3.12/site-packages/pip/_internal/resolution/__init__.py +0 -0
  759. package/python/lib/python3.12/site-packages/pip/_internal/resolution/base.py +20 -0
  760. package/python/lib/python3.12/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
  761. package/python/lib/python3.12/site-packages/pip/_internal/resolution/legacy/resolver.py +598 -0
  762. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
  763. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/base.py +164 -0
  764. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/candidates.py +599 -0
  765. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/factory.py +914 -0
  766. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +166 -0
  767. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/provider.py +306 -0
  768. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/reporter.py +98 -0
  769. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/requirements.py +251 -0
  770. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/resolver.py +332 -0
  771. package/python/lib/python3.12/site-packages/pip/_internal/self_outdated_check.py +246 -0
  772. package/python/lib/python3.12/site-packages/pip/_internal/utils/__init__.py +0 -0
  773. package/python/lib/python3.12/site-packages/pip/_internal/utils/_jaraco_text.py +109 -0
  774. package/python/lib/python3.12/site-packages/pip/_internal/utils/_log.py +38 -0
  775. package/python/lib/python3.12/site-packages/pip/_internal/utils/appdirs.py +52 -0
  776. package/python/lib/python3.12/site-packages/pip/_internal/utils/compat.py +85 -0
  777. package/python/lib/python3.12/site-packages/pip/_internal/utils/compatibility_tags.py +201 -0
  778. package/python/lib/python3.12/site-packages/pip/_internal/utils/datetime.py +28 -0
  779. package/python/lib/python3.12/site-packages/pip/_internal/utils/deprecation.py +139 -0
  780. package/python/lib/python3.12/site-packages/pip/_internal/utils/direct_url_helpers.py +92 -0
  781. package/python/lib/python3.12/site-packages/pip/_internal/utils/egg_link.py +81 -0
  782. package/python/lib/python3.12/site-packages/pip/_internal/utils/entrypoints.py +88 -0
  783. package/python/lib/python3.12/site-packages/pip/_internal/utils/filesystem.py +201 -0
  784. package/python/lib/python3.12/site-packages/pip/_internal/utils/filetypes.py +24 -0
  785. package/python/lib/python3.12/site-packages/pip/_internal/utils/glibc.py +102 -0
  786. package/python/lib/python3.12/site-packages/pip/_internal/utils/hashes.py +150 -0
  787. package/python/lib/python3.12/site-packages/pip/_internal/utils/logging.py +396 -0
  788. package/python/lib/python3.12/site-packages/pip/_internal/utils/misc.py +771 -0
  789. package/python/lib/python3.12/site-packages/pip/_internal/utils/packaging.py +44 -0
  790. package/python/lib/python3.12/site-packages/pip/_internal/utils/pylock.py +283 -0
  791. package/python/lib/python3.12/site-packages/pip/_internal/utils/retry.py +45 -0
  792. package/python/lib/python3.12/site-packages/pip/_internal/utils/subprocess.py +248 -0
  793. package/python/lib/python3.12/site-packages/pip/_internal/utils/temp_dir.py +294 -0
  794. package/python/lib/python3.12/site-packages/pip/_internal/utils/unpacking.py +381 -0
  795. package/python/lib/python3.12/site-packages/pip/_internal/utils/urls.py +55 -0
  796. package/python/lib/python3.12/site-packages/pip/_internal/utils/virtualenv.py +105 -0
  797. package/python/lib/python3.12/site-packages/pip/_internal/utils/wheel.py +132 -0
  798. package/python/lib/python3.12/site-packages/pip/_internal/vcs/__init__.py +15 -0
  799. package/python/lib/python3.12/site-packages/pip/_internal/vcs/bazaar.py +130 -0
  800. package/python/lib/python3.12/site-packages/pip/_internal/vcs/git.py +571 -0
  801. package/python/lib/python3.12/site-packages/pip/_internal/vcs/mercurial.py +186 -0
  802. package/python/lib/python3.12/site-packages/pip/_internal/vcs/subversion.py +335 -0
  803. package/python/lib/python3.12/site-packages/pip/_internal/vcs/versioncontrol.py +695 -0
  804. package/python/lib/python3.12/site-packages/pip/_internal/wheel_builder.py +261 -0
  805. package/python/lib/python3.12/site-packages/pip/_vendor/README.rst +178 -0
  806. package/python/lib/python3.12/site-packages/pip/_vendor/__init__.py +117 -0
  807. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/LICENSE.txt +13 -0
  808. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__init__.py +32 -0
  809. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/_cmd.py +70 -0
  810. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/adapter.py +167 -0
  811. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/cache.py +75 -0
  812. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +8 -0
  813. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +145 -0
  814. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +48 -0
  815. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/controller.py +511 -0
  816. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/filewrapper.py +121 -0
  817. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/heuristics.py +157 -0
  818. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/py.typed +0 -0
  819. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/serialize.py +146 -0
  820. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/wrapper.py +43 -0
  821. package/python/lib/python3.12/site-packages/pip/_vendor/certifi/LICENSE +20 -0
  822. package/python/lib/python3.12/site-packages/pip/_vendor/certifi/__init__.py +4 -0
  823. package/python/lib/python3.12/site-packages/pip/_vendor/certifi/__main__.py +12 -0
  824. package/python/lib/python3.12/site-packages/pip/_vendor/certifi/cacert.pem +4494 -0
  825. package/python/lib/python3.12/site-packages/pip/_vendor/certifi/core.py +83 -0
  826. package/python/lib/python3.12/site-packages/pip/_vendor/certifi/py.typed +0 -0
  827. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/LICENSE.txt +284 -0
  828. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/__init__.py +33 -0
  829. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/compat.py +1137 -0
  830. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/resources.py +358 -0
  831. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/scripts.py +447 -0
  832. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/t32.exe +0 -0
  833. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/t64-arm.exe +0 -0
  834. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/t64.exe +0 -0
  835. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/util.py +1984 -0
  836. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/w32.exe +0 -0
  837. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/w64-arm.exe +0 -0
  838. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/w64.exe +0 -0
  839. package/python/lib/python3.12/site-packages/pip/_vendor/distro/LICENSE +202 -0
  840. package/python/lib/python3.12/site-packages/pip/_vendor/distro/__init__.py +54 -0
  841. package/python/lib/python3.12/site-packages/pip/_vendor/distro/__main__.py +4 -0
  842. package/python/lib/python3.12/site-packages/pip/_vendor/distro/distro.py +1403 -0
  843. package/python/lib/python3.12/site-packages/pip/_vendor/distro/py.typed +0 -0
  844. package/python/lib/python3.12/site-packages/pip/_vendor/idna/LICENSE.md +31 -0
  845. package/python/lib/python3.12/site-packages/pip/_vendor/idna/__init__.py +45 -0
  846. package/python/lib/python3.12/site-packages/pip/_vendor/idna/codec.py +122 -0
  847. package/python/lib/python3.12/site-packages/pip/_vendor/idna/compat.py +15 -0
  848. package/python/lib/python3.12/site-packages/pip/_vendor/idna/core.py +437 -0
  849. package/python/lib/python3.12/site-packages/pip/_vendor/idna/idnadata.py +4309 -0
  850. package/python/lib/python3.12/site-packages/pip/_vendor/idna/intranges.py +57 -0
  851. package/python/lib/python3.12/site-packages/pip/_vendor/idna/package_data.py +1 -0
  852. package/python/lib/python3.12/site-packages/pip/_vendor/idna/py.typed +0 -0
  853. package/python/lib/python3.12/site-packages/pip/_vendor/idna/uts46data.py +8841 -0
  854. package/python/lib/python3.12/site-packages/pip/_vendor/msgpack/COPYING +14 -0
  855. package/python/lib/python3.12/site-packages/pip/_vendor/msgpack/__init__.py +55 -0
  856. package/python/lib/python3.12/site-packages/pip/_vendor/msgpack/exceptions.py +48 -0
  857. package/python/lib/python3.12/site-packages/pip/_vendor/msgpack/ext.py +170 -0
  858. package/python/lib/python3.12/site-packages/pip/_vendor/msgpack/fallback.py +929 -0
  859. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/LICENSE +3 -0
  860. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/LICENSE.APACHE +177 -0
  861. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/LICENSE.BSD +23 -0
  862. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/__init__.py +15 -0
  863. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/_elffile.py +108 -0
  864. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/_manylinux.py +262 -0
  865. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/_musllinux.py +85 -0
  866. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/_parser.py +393 -0
  867. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/_structures.py +33 -0
  868. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/_tokenizer.py +193 -0
  869. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/dependency_groups.py +302 -0
  870. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/direct_url.py +325 -0
  871. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/errors.py +94 -0
  872. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/licenses/__init__.py +186 -0
  873. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/licenses/_spdx.py +799 -0
  874. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/markers.py +492 -0
  875. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/metadata.py +964 -0
  876. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/py.typed +0 -0
  877. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/pylock.py +905 -0
  878. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/requirements.py +129 -0
  879. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/specifiers.py +1943 -0
  880. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/tags.py +932 -0
  881. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/utils.py +296 -0
  882. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/version.py +1231 -0
  883. package/python/lib/python3.12/site-packages/pip/_vendor/pkg_resources/LICENSE +17 -0
  884. package/python/lib/python3.12/site-packages/pip/_vendor/pkg_resources/__init__.py +3676 -0
  885. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/LICENSE +21 -0
  886. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/__init__.py +631 -0
  887. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/__main__.py +55 -0
  888. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/android.py +249 -0
  889. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/api.py +299 -0
  890. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/macos.py +146 -0
  891. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/py.typed +0 -0
  892. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/unix.py +272 -0
  893. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/version.py +34 -0
  894. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/windows.py +278 -0
  895. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/LICENSE +25 -0
  896. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/__init__.py +82 -0
  897. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/__main__.py +17 -0
  898. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/console.py +70 -0
  899. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/filter.py +70 -0
  900. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/filters/__init__.py +940 -0
  901. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/formatter.py +129 -0
  902. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__init__.py +157 -0
  903. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/_mapping.py +23 -0
  904. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/lexer.py +963 -0
  905. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/__init__.py +362 -0
  906. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/_mapping.py +602 -0
  907. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/python.py +1201 -0
  908. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/modeline.py +43 -0
  909. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/plugin.py +72 -0
  910. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/regexopt.py +91 -0
  911. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/scanner.py +104 -0
  912. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/sphinxext.py +247 -0
  913. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/style.py +203 -0
  914. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/styles/__init__.py +61 -0
  915. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/styles/_mapping.py +54 -0
  916. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/token.py +214 -0
  917. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/unistring.py +153 -0
  918. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/util.py +324 -0
  919. package/python/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/LICENSE +21 -0
  920. package/python/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/__init__.py +31 -0
  921. package/python/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_impl.py +410 -0
  922. package/python/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py +21 -0
  923. package/python/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py +389 -0
  924. package/python/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/py.typed +0 -0
  925. package/python/lib/python3.12/site-packages/pip/_vendor/requests/LICENSE +175 -0
  926. package/python/lib/python3.12/site-packages/pip/_vendor/requests/__init__.py +178 -0
  927. package/python/lib/python3.12/site-packages/pip/_vendor/requests/__version__.py +14 -0
  928. package/python/lib/python3.12/site-packages/pip/_vendor/requests/_internal_utils.py +51 -0
  929. package/python/lib/python3.12/site-packages/pip/_vendor/requests/adapters.py +697 -0
  930. package/python/lib/python3.12/site-packages/pip/_vendor/requests/api.py +157 -0
  931. package/python/lib/python3.12/site-packages/pip/_vendor/requests/auth.py +314 -0
  932. package/python/lib/python3.12/site-packages/pip/_vendor/requests/certs.py +18 -0
  933. package/python/lib/python3.12/site-packages/pip/_vendor/requests/compat.py +90 -0
  934. package/python/lib/python3.12/site-packages/pip/_vendor/requests/cookies.py +561 -0
  935. package/python/lib/python3.12/site-packages/pip/_vendor/requests/exceptions.py +152 -0
  936. package/python/lib/python3.12/site-packages/pip/_vendor/requests/help.py +124 -0
  937. package/python/lib/python3.12/site-packages/pip/_vendor/requests/hooks.py +34 -0
  938. package/python/lib/python3.12/site-packages/pip/_vendor/requests/models.py +1041 -0
  939. package/python/lib/python3.12/site-packages/pip/_vendor/requests/packages.py +25 -0
  940. package/python/lib/python3.12/site-packages/pip/_vendor/requests/sessions.py +834 -0
  941. package/python/lib/python3.12/site-packages/pip/_vendor/requests/status_codes.py +128 -0
  942. package/python/lib/python3.12/site-packages/pip/_vendor/requests/structures.py +99 -0
  943. package/python/lib/python3.12/site-packages/pip/_vendor/requests/utils.py +1083 -0
  944. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/LICENSE +13 -0
  945. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/__init__.py +27 -0
  946. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/providers.py +196 -0
  947. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/py.typed +0 -0
  948. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/reporters.py +55 -0
  949. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/resolvers/__init__.py +27 -0
  950. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/resolvers/abstract.py +47 -0
  951. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/resolvers/criterion.py +48 -0
  952. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/resolvers/exceptions.py +57 -0
  953. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py +627 -0
  954. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/structs.py +209 -0
  955. package/python/lib/python3.12/site-packages/pip/_vendor/rich/LICENSE +19 -0
  956. package/python/lib/python3.12/site-packages/pip/_vendor/rich/__init__.py +177 -0
  957. package/python/lib/python3.12/site-packages/pip/_vendor/rich/__main__.py +245 -0
  958. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_cell_widths.py +454 -0
  959. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_emoji_codes.py +3610 -0
  960. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_emoji_replace.py +32 -0
  961. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_export_format.py +76 -0
  962. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_extension.py +10 -0
  963. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_fileno.py +24 -0
  964. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_inspect.py +268 -0
  965. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_log_render.py +94 -0
  966. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_loop.py +43 -0
  967. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_null_file.py +69 -0
  968. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_palettes.py +309 -0
  969. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_pick.py +17 -0
  970. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_ratio.py +153 -0
  971. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_spinners.py +482 -0
  972. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_stack.py +16 -0
  973. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_timer.py +19 -0
  974. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_win32_console.py +661 -0
  975. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_windows.py +71 -0
  976. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_windows_renderer.py +56 -0
  977. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_wrap.py +93 -0
  978. package/python/lib/python3.12/site-packages/pip/_vendor/rich/abc.py +33 -0
  979. package/python/lib/python3.12/site-packages/pip/_vendor/rich/align.py +306 -0
  980. package/python/lib/python3.12/site-packages/pip/_vendor/rich/ansi.py +241 -0
  981. package/python/lib/python3.12/site-packages/pip/_vendor/rich/bar.py +93 -0
  982. package/python/lib/python3.12/site-packages/pip/_vendor/rich/box.py +474 -0
  983. package/python/lib/python3.12/site-packages/pip/_vendor/rich/cells.py +174 -0
  984. package/python/lib/python3.12/site-packages/pip/_vendor/rich/color.py +621 -0
  985. package/python/lib/python3.12/site-packages/pip/_vendor/rich/color_triplet.py +38 -0
  986. package/python/lib/python3.12/site-packages/pip/_vendor/rich/columns.py +187 -0
  987. package/python/lib/python3.12/site-packages/pip/_vendor/rich/console.py +2680 -0
  988. package/python/lib/python3.12/site-packages/pip/_vendor/rich/constrain.py +37 -0
  989. package/python/lib/python3.12/site-packages/pip/_vendor/rich/containers.py +167 -0
  990. package/python/lib/python3.12/site-packages/pip/_vendor/rich/control.py +219 -0
  991. package/python/lib/python3.12/site-packages/pip/_vendor/rich/default_styles.py +193 -0
  992. package/python/lib/python3.12/site-packages/pip/_vendor/rich/diagnose.py +39 -0
  993. package/python/lib/python3.12/site-packages/pip/_vendor/rich/emoji.py +91 -0
  994. package/python/lib/python3.12/site-packages/pip/_vendor/rich/errors.py +34 -0
  995. package/python/lib/python3.12/site-packages/pip/_vendor/rich/file_proxy.py +57 -0
  996. package/python/lib/python3.12/site-packages/pip/_vendor/rich/filesize.py +88 -0
  997. package/python/lib/python3.12/site-packages/pip/_vendor/rich/highlighter.py +232 -0
  998. package/python/lib/python3.12/site-packages/pip/_vendor/rich/json.py +139 -0
  999. package/python/lib/python3.12/site-packages/pip/_vendor/rich/jupyter.py +101 -0
  1000. package/python/lib/python3.12/site-packages/pip/_vendor/rich/layout.py +442 -0
  1001. package/python/lib/python3.12/site-packages/pip/_vendor/rich/live.py +400 -0
  1002. package/python/lib/python3.12/site-packages/pip/_vendor/rich/live_render.py +106 -0
  1003. package/python/lib/python3.12/site-packages/pip/_vendor/rich/logging.py +297 -0
  1004. package/python/lib/python3.12/site-packages/pip/_vendor/rich/markup.py +251 -0
  1005. package/python/lib/python3.12/site-packages/pip/_vendor/rich/measure.py +151 -0
  1006. package/python/lib/python3.12/site-packages/pip/_vendor/rich/padding.py +141 -0
  1007. package/python/lib/python3.12/site-packages/pip/_vendor/rich/pager.py +34 -0
  1008. package/python/lib/python3.12/site-packages/pip/_vendor/rich/palette.py +100 -0
  1009. package/python/lib/python3.12/site-packages/pip/_vendor/rich/panel.py +317 -0
  1010. package/python/lib/python3.12/site-packages/pip/_vendor/rich/pretty.py +1016 -0
  1011. package/python/lib/python3.12/site-packages/pip/_vendor/rich/progress.py +1715 -0
  1012. package/python/lib/python3.12/site-packages/pip/_vendor/rich/progress_bar.py +223 -0
  1013. package/python/lib/python3.12/site-packages/pip/_vendor/rich/prompt.py +400 -0
  1014. package/python/lib/python3.12/site-packages/pip/_vendor/rich/protocol.py +42 -0
  1015. package/python/lib/python3.12/site-packages/pip/_vendor/rich/py.typed +0 -0
  1016. package/python/lib/python3.12/site-packages/pip/_vendor/rich/region.py +10 -0
  1017. package/python/lib/python3.12/site-packages/pip/_vendor/rich/repr.py +149 -0
  1018. package/python/lib/python3.12/site-packages/pip/_vendor/rich/rule.py +130 -0
  1019. package/python/lib/python3.12/site-packages/pip/_vendor/rich/scope.py +86 -0
  1020. package/python/lib/python3.12/site-packages/pip/_vendor/rich/screen.py +54 -0
  1021. package/python/lib/python3.12/site-packages/pip/_vendor/rich/segment.py +752 -0
  1022. package/python/lib/python3.12/site-packages/pip/_vendor/rich/spinner.py +132 -0
  1023. package/python/lib/python3.12/site-packages/pip/_vendor/rich/status.py +131 -0
  1024. package/python/lib/python3.12/site-packages/pip/_vendor/rich/style.py +792 -0
  1025. package/python/lib/python3.12/site-packages/pip/_vendor/rich/styled.py +42 -0
  1026. package/python/lib/python3.12/site-packages/pip/_vendor/rich/syntax.py +985 -0
  1027. package/python/lib/python3.12/site-packages/pip/_vendor/rich/table.py +1006 -0
  1028. package/python/lib/python3.12/site-packages/pip/_vendor/rich/terminal_theme.py +153 -0
  1029. package/python/lib/python3.12/site-packages/pip/_vendor/rich/text.py +1361 -0
  1030. package/python/lib/python3.12/site-packages/pip/_vendor/rich/theme.py +115 -0
  1031. package/python/lib/python3.12/site-packages/pip/_vendor/rich/themes.py +5 -0
  1032. package/python/lib/python3.12/site-packages/pip/_vendor/rich/traceback.py +899 -0
  1033. package/python/lib/python3.12/site-packages/pip/_vendor/rich/tree.py +257 -0
  1034. package/python/lib/python3.12/site-packages/pip/_vendor/tomli/LICENSE +21 -0
  1035. package/python/lib/python3.12/site-packages/pip/_vendor/tomli/__init__.py +8 -0
  1036. package/python/lib/python3.12/site-packages/pip/_vendor/tomli/_parser.py +788 -0
  1037. package/python/lib/python3.12/site-packages/pip/_vendor/tomli/_re.py +115 -0
  1038. package/python/lib/python3.12/site-packages/pip/_vendor/tomli/_types.py +10 -0
  1039. package/python/lib/python3.12/site-packages/pip/_vendor/tomli/py.typed +1 -0
  1040. package/python/lib/python3.12/site-packages/pip/_vendor/tomli_w/LICENSE +21 -0
  1041. package/python/lib/python3.12/site-packages/pip/_vendor/tomli_w/__init__.py +4 -0
  1042. package/python/lib/python3.12/site-packages/pip/_vendor/tomli_w/_writer.py +229 -0
  1043. package/python/lib/python3.12/site-packages/pip/_vendor/tomli_w/py.typed +1 -0
  1044. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/LICENSE +21 -0
  1045. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/__init__.py +36 -0
  1046. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/_api.py +341 -0
  1047. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/_macos.py +571 -0
  1048. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/_openssl.py +68 -0
  1049. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/_ssl_constants.py +31 -0
  1050. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/_windows.py +567 -0
  1051. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/py.typed +0 -0
  1052. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/LICENSE.txt +21 -0
  1053. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/__init__.py +211 -0
  1054. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/_base_connection.py +165 -0
  1055. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/_collections.py +487 -0
  1056. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/_request_methods.py +278 -0
  1057. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/_version.py +34 -0
  1058. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/connection.py +1099 -0
  1059. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/connectionpool.py +1178 -0
  1060. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
  1061. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/emscripten/__init__.py +17 -0
  1062. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/emscripten/connection.py +260 -0
  1063. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/emscripten/emscripten_fetch_worker.js +110 -0
  1064. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/emscripten/fetch.py +726 -0
  1065. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/emscripten/request.py +22 -0
  1066. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/emscripten/response.py +277 -0
  1067. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +564 -0
  1068. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/socks.py +228 -0
  1069. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/exceptions.py +335 -0
  1070. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/fields.py +341 -0
  1071. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/filepost.py +89 -0
  1072. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/http2/__init__.py +53 -0
  1073. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/http2/connection.py +356 -0
  1074. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/http2/probe.py +87 -0
  1075. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/poolmanager.py +651 -0
  1076. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/py.typed +2 -0
  1077. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/response.py +1474 -0
  1078. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__init__.py +42 -0
  1079. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/connection.py +137 -0
  1080. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/proxy.py +43 -0
  1081. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/request.py +254 -0
  1082. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/response.py +101 -0
  1083. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/retry.py +549 -0
  1084. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/ssl_.py +527 -0
  1085. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +159 -0
  1086. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/ssltransport.py +271 -0
  1087. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/timeout.py +275 -0
  1088. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/url.py +469 -0
  1089. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/util.py +42 -0
  1090. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/wait.py +124 -0
  1091. package/python/lib/python3.12/site-packages/pip/_vendor/vendor.txt +18 -0
  1092. package/python/lib/python3.12/site-packages/pip/py.typed +4 -0
  1093. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/INSTALLER +1 -0
  1094. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/METADATA +109 -0
  1095. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/RECORD +866 -0
  1096. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/REQUESTED +0 -0
  1097. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/WHEEL +4 -0
  1098. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/direct_url.json +1 -0
  1099. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/entry_points.txt +4 -0
  1100. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/AUTHORS.txt +868 -0
  1101. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/LICENSE.txt +20 -0
  1102. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/cachecontrol/LICENSE.txt +13 -0
  1103. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/certifi/LICENSE +20 -0
  1104. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/distlib/LICENSE.txt +284 -0
  1105. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/distro/LICENSE +202 -0
  1106. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/idna/LICENSE.md +31 -0
  1107. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/msgpack/COPYING +14 -0
  1108. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/packaging/LICENSE +3 -0
  1109. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/packaging/LICENSE.APACHE +177 -0
  1110. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/packaging/LICENSE.BSD +23 -0
  1111. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/pkg_resources/LICENSE +17 -0
  1112. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/platformdirs/LICENSE +21 -0
  1113. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/pygments/LICENSE +25 -0
  1114. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/pyproject_hooks/LICENSE +21 -0
  1115. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/requests/LICENSE +175 -0
  1116. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/resolvelib/LICENSE +13 -0
  1117. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/rich/LICENSE +19 -0
  1118. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/tomli/LICENSE +21 -0
  1119. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/tomli_w/LICENSE +21 -0
  1120. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/truststore/LICENSE +21 -0
  1121. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/urllib3/LICENSE.txt +21 -0
  1122. package/python/lib/python3.12/site.py +693 -0
  1123. package/python/lib/python3.12/smtplib.py +1109 -0
  1124. package/python/lib/python3.12/sndhdr.py +271 -0
  1125. package/python/lib/python3.12/socket.py +983 -0
  1126. package/python/lib/python3.12/socketserver.py +863 -0
  1127. package/python/lib/python3.12/sqlite3/__init__.py +70 -0
  1128. package/python/lib/python3.12/sqlite3/__main__.py +127 -0
  1129. package/python/lib/python3.12/sqlite3/dbapi2.py +108 -0
  1130. package/python/lib/python3.12/sqlite3/dump.py +89 -0
  1131. package/python/lib/python3.12/sre_compile.py +7 -0
  1132. package/python/lib/python3.12/sre_constants.py +7 -0
  1133. package/python/lib/python3.12/sre_parse.py +7 -0
  1134. package/python/lib/python3.12/ssl.py +1488 -0
  1135. package/python/lib/python3.12/stat.py +195 -0
  1136. package/python/lib/python3.12/statistics.py +1454 -0
  1137. package/python/lib/python3.12/string.py +309 -0
  1138. package/python/lib/python3.12/stringprep.py +272 -0
  1139. package/python/lib/python3.12/struct.py +15 -0
  1140. package/python/lib/python3.12/subprocess.py +2216 -0
  1141. package/python/lib/python3.12/sunau.py +533 -0
  1142. package/python/lib/python3.12/symtable.py +362 -0
  1143. package/python/lib/python3.12/sysconfig.py +894 -0
  1144. package/python/lib/python3.12/tabnanny.py +340 -0
  1145. package/python/lib/python3.12/tarfile.py +3031 -0
  1146. package/python/lib/python3.12/telnetlib.py +680 -0
  1147. package/python/lib/python3.12/tempfile.py +956 -0
  1148. package/python/lib/python3.12/textwrap.py +491 -0
  1149. package/python/lib/python3.12/this.py +28 -0
  1150. package/python/lib/python3.12/threading.py +1708 -0
  1151. package/python/lib/python3.12/timeit.py +381 -0
  1152. package/python/lib/python3.12/token.py +143 -0
  1153. package/python/lib/python3.12/tokenize.py +594 -0
  1154. package/python/lib/python3.12/tomllib/__init__.py +10 -0
  1155. package/python/lib/python3.12/tomllib/_parser.py +691 -0
  1156. package/python/lib/python3.12/tomllib/_re.py +107 -0
  1157. package/python/lib/python3.12/tomllib/_types.py +10 -0
  1158. package/python/lib/python3.12/trace.py +748 -0
  1159. package/python/lib/python3.12/traceback.py +1187 -0
  1160. package/python/lib/python3.12/tracemalloc.py +560 -0
  1161. package/python/lib/python3.12/tty.py +73 -0
  1162. package/python/lib/python3.12/turtle.py +4207 -0
  1163. package/python/lib/python3.12/types.py +333 -0
  1164. package/python/lib/python3.12/typing.py +3494 -0
  1165. package/python/lib/python3.12/unittest/__init__.py +85 -0
  1166. package/python/lib/python3.12/unittest/__main__.py +18 -0
  1167. package/python/lib/python3.12/unittest/_log.py +86 -0
  1168. package/python/lib/python3.12/unittest/async_case.py +143 -0
  1169. package/python/lib/python3.12/unittest/case.py +1456 -0
  1170. package/python/lib/python3.12/unittest/loader.py +497 -0
  1171. package/python/lib/python3.12/unittest/main.py +291 -0
  1172. package/python/lib/python3.12/unittest/mock.py +3054 -0
  1173. package/python/lib/python3.12/unittest/result.py +256 -0
  1174. package/python/lib/python3.12/unittest/runner.py +292 -0
  1175. package/python/lib/python3.12/unittest/signals.py +71 -0
  1176. package/python/lib/python3.12/unittest/suite.py +379 -0
  1177. package/python/lib/python3.12/unittest/util.py +170 -0
  1178. package/python/lib/python3.12/urllib/__init__.py +0 -0
  1179. package/python/lib/python3.12/urllib/error.py +74 -0
  1180. package/python/lib/python3.12/urllib/parse.py +1262 -0
  1181. package/python/lib/python3.12/urllib/request.py +2816 -0
  1182. package/python/lib/python3.12/urllib/response.py +84 -0
  1183. package/python/lib/python3.12/urllib/robotparser.py +275 -0
  1184. package/python/lib/python3.12/uu.py +216 -0
  1185. package/python/lib/python3.12/uuid.py +793 -0
  1186. package/python/lib/python3.12/venv/__init__.py +608 -0
  1187. package/python/lib/python3.12/venv/__main__.py +10 -0
  1188. package/python/lib/python3.12/venv/scripts/common/Activate.ps1 +247 -0
  1189. package/python/lib/python3.12/venv/scripts/common/activate +76 -0
  1190. package/python/lib/python3.12/venv/scripts/posix/activate.csh +27 -0
  1191. package/python/lib/python3.12/venv/scripts/posix/activate.fish +69 -0
  1192. package/python/lib/python3.12/warnings.py +598 -0
  1193. package/python/lib/python3.12/wave.py +653 -0
  1194. package/python/lib/python3.12/weakref.py +674 -0
  1195. package/python/lib/python3.12/webbrowser.py +689 -0
  1196. package/python/lib/python3.12/wsgiref/__init__.py +25 -0
  1197. package/python/lib/python3.12/wsgiref/handlers.py +573 -0
  1198. package/python/lib/python3.12/wsgiref/headers.py +192 -0
  1199. package/python/lib/python3.12/wsgiref/simple_server.py +165 -0
  1200. package/python/lib/python3.12/wsgiref/types.py +54 -0
  1201. package/python/lib/python3.12/wsgiref/util.py +159 -0
  1202. package/python/lib/python3.12/wsgiref/validate.py +438 -0
  1203. package/python/lib/python3.12/xdrlib.py +242 -0
  1204. package/python/lib/python3.12/xml/__init__.py +20 -0
  1205. package/python/lib/python3.12/xml/dom/NodeFilter.py +27 -0
  1206. package/python/lib/python3.12/xml/dom/__init__.py +140 -0
  1207. package/python/lib/python3.12/xml/dom/domreg.py +99 -0
  1208. package/python/lib/python3.12/xml/dom/expatbuilder.py +962 -0
  1209. package/python/lib/python3.12/xml/dom/minicompat.py +109 -0
  1210. package/python/lib/python3.12/xml/dom/minidom.py +2008 -0
  1211. package/python/lib/python3.12/xml/dom/pulldom.py +336 -0
  1212. package/python/lib/python3.12/xml/dom/xmlbuilder.py +389 -0
  1213. package/python/lib/python3.12/xml/etree/ElementInclude.py +186 -0
  1214. package/python/lib/python3.12/xml/etree/ElementPath.py +423 -0
  1215. package/python/lib/python3.12/xml/etree/ElementTree.py +2085 -0
  1216. package/python/lib/python3.12/xml/etree/__init__.py +33 -0
  1217. package/python/lib/python3.12/xml/etree/cElementTree.py +3 -0
  1218. package/python/lib/python3.12/xml/parsers/__init__.py +8 -0
  1219. package/python/lib/python3.12/xml/parsers/expat.py +8 -0
  1220. package/python/lib/python3.12/xml/sax/__init__.py +94 -0
  1221. package/python/lib/python3.12/xml/sax/_exceptions.py +127 -0
  1222. package/python/lib/python3.12/xml/sax/expatreader.py +454 -0
  1223. package/python/lib/python3.12/xml/sax/handler.py +387 -0
  1224. package/python/lib/python3.12/xml/sax/saxutils.py +369 -0
  1225. package/python/lib/python3.12/xml/sax/xmlreader.py +378 -0
  1226. package/python/lib/python3.12/xmlrpc/__init__.py +1 -0
  1227. package/python/lib/python3.12/xmlrpc/client.py +1529 -0
  1228. package/python/lib/python3.12/xmlrpc/server.py +1002 -0
  1229. package/python/lib/python3.12/zipapp.py +206 -0
  1230. package/python/lib/python3.12/zipfile/__init__.py +2340 -0
  1231. package/python/lib/python3.12/zipfile/__main__.py +4 -0
  1232. package/python/lib/python3.12/zipfile/_path/__init__.py +412 -0
  1233. package/python/lib/python3.12/zipfile/_path/glob.py +53 -0
  1234. package/python/lib/python3.12/zipimport.py +712 -0
  1235. package/python/lib/python3.12/zoneinfo/__init__.py +31 -0
  1236. package/python/lib/python3.12/zoneinfo/_common.py +164 -0
  1237. package/python/lib/python3.12/zoneinfo/_tzpath.py +181 -0
  1238. package/python/lib/python3.12/zoneinfo/_zoneinfo.py +772 -0
@@ -0,0 +1,527 @@
1
+ from __future__ import annotations
2
+
3
+ import hashlib
4
+ import hmac
5
+ import os
6
+ import socket
7
+ import sys
8
+ import typing
9
+ import warnings
10
+ from binascii import unhexlify
11
+
12
+ from ..exceptions import ProxySchemeUnsupported, SSLError
13
+ from .url import _BRACELESS_IPV6_ADDRZ_RE, _IPV4_RE
14
+
15
+ SSLContext = None
16
+ SSLTransport = None
17
+ HAS_NEVER_CHECK_COMMON_NAME = False
18
+ IS_PYOPENSSL = False
19
+ ALPN_PROTOCOLS = ["http/1.1"]
20
+
21
+ _TYPE_VERSION_INFO = tuple[int, int, int, str, int]
22
+
23
+ # Maps the length of a digest to a possible hash function producing this digest
24
+ HASHFUNC_MAP = {
25
+ length: getattr(hashlib, algorithm, None)
26
+ for length, algorithm in ((32, "md5"), (40, "sha1"), (64, "sha256"))
27
+ }
28
+
29
+
30
+ def _is_bpo_43522_fixed(
31
+ implementation_name: str,
32
+ version_info: _TYPE_VERSION_INFO,
33
+ pypy_version_info: _TYPE_VERSION_INFO | None,
34
+ ) -> bool:
35
+ """Return True for CPython 3.9.3+ or 3.10+ and PyPy 7.3.8+ where
36
+ setting SSLContext.hostname_checks_common_name to False works.
37
+
38
+ Outside of CPython and PyPy we don't know which implementations work
39
+ or not so we conservatively use our hostname matching as we know that works
40
+ on all implementations.
41
+
42
+ https://github.com/urllib3/urllib3/issues/2192#issuecomment-821832963
43
+ https://foss.heptapod.net/pypy/pypy/-/issues/3539
44
+ """
45
+ if implementation_name == "pypy":
46
+ # https://foss.heptapod.net/pypy/pypy/-/issues/3129
47
+ return pypy_version_info >= (7, 3, 8) # type: ignore[operator]
48
+ elif implementation_name == "cpython":
49
+ major_minor = version_info[:2]
50
+ micro = version_info[2]
51
+ return (major_minor == (3, 9) and micro >= 3) or major_minor >= (3, 10)
52
+ else: # Defensive:
53
+ return False
54
+
55
+
56
+ def _is_has_never_check_common_name_reliable(
57
+ openssl_version: str,
58
+ openssl_version_number: int,
59
+ implementation_name: str,
60
+ version_info: _TYPE_VERSION_INFO,
61
+ pypy_version_info: _TYPE_VERSION_INFO | None,
62
+ ) -> bool:
63
+ # As of May 2023, all released versions of LibreSSL fail to reject certificates with
64
+ # only common names, see https://github.com/urllib3/urllib3/pull/3024
65
+ is_openssl = openssl_version.startswith("OpenSSL ")
66
+ # Before fixing OpenSSL issue #14579, the SSL_new() API was not copying hostflags
67
+ # like X509_CHECK_FLAG_NEVER_CHECK_SUBJECT, which tripped up CPython.
68
+ # https://github.com/openssl/openssl/issues/14579
69
+ # This was released in OpenSSL 1.1.1l+ (>=0x101010cf)
70
+ is_openssl_issue_14579_fixed = openssl_version_number >= 0x101010CF
71
+
72
+ return is_openssl and (
73
+ is_openssl_issue_14579_fixed
74
+ or _is_bpo_43522_fixed(implementation_name, version_info, pypy_version_info)
75
+ )
76
+
77
+
78
+ if typing.TYPE_CHECKING:
79
+ from ssl import VerifyMode
80
+ from typing import TypedDict
81
+
82
+ from .ssltransport import SSLTransport as SSLTransportType
83
+
84
+ class _TYPE_PEER_CERT_RET_DICT(TypedDict, total=False):
85
+ subjectAltName: tuple[tuple[str, str], ...]
86
+ subject: tuple[tuple[tuple[str, str], ...], ...]
87
+ serialNumber: str
88
+
89
+
90
+ # Mapping from 'ssl.PROTOCOL_TLSX' to 'TLSVersion.X'
91
+ _SSL_VERSION_TO_TLS_VERSION: dict[int, int] = {}
92
+
93
+ try: # Do we have ssl at all?
94
+ import ssl
95
+ from ssl import ( # type: ignore[assignment]
96
+ CERT_REQUIRED,
97
+ HAS_NEVER_CHECK_COMMON_NAME,
98
+ OP_NO_COMPRESSION,
99
+ OP_NO_TICKET,
100
+ OPENSSL_VERSION,
101
+ OPENSSL_VERSION_NUMBER,
102
+ PROTOCOL_TLS,
103
+ PROTOCOL_TLS_CLIENT,
104
+ VERIFY_X509_STRICT,
105
+ OP_NO_SSLv2,
106
+ OP_NO_SSLv3,
107
+ SSLContext,
108
+ TLSVersion,
109
+ )
110
+
111
+ PROTOCOL_SSLv23 = PROTOCOL_TLS
112
+
113
+ # Needed for Python 3.9 which does not define this
114
+ VERIFY_X509_PARTIAL_CHAIN = getattr(ssl, "VERIFY_X509_PARTIAL_CHAIN", 0x80000)
115
+
116
+ # Setting SSLContext.hostname_checks_common_name = False didn't work before CPython
117
+ # 3.9.3, and 3.10 (but OK on PyPy) or OpenSSL 1.1.1l+
118
+ if HAS_NEVER_CHECK_COMMON_NAME and not _is_has_never_check_common_name_reliable(
119
+ OPENSSL_VERSION,
120
+ OPENSSL_VERSION_NUMBER,
121
+ sys.implementation.name,
122
+ sys.version_info,
123
+ sys.pypy_version_info if sys.implementation.name == "pypy" else None, # type: ignore[attr-defined]
124
+ ): # Defensive: for Python < 3.9.3
125
+ HAS_NEVER_CHECK_COMMON_NAME = False
126
+
127
+ # Need to be careful here in case old TLS versions get
128
+ # removed in future 'ssl' module implementations.
129
+ for attr in ("TLSv1", "TLSv1_1", "TLSv1_2"):
130
+ try:
131
+ _SSL_VERSION_TO_TLS_VERSION[getattr(ssl, f"PROTOCOL_{attr}")] = getattr(
132
+ TLSVersion, attr
133
+ )
134
+ except AttributeError: # Defensive:
135
+ continue
136
+
137
+ from .ssltransport import SSLTransport # type: ignore[assignment]
138
+ except ImportError:
139
+ OP_NO_COMPRESSION = 0x20000 # type: ignore[assignment, misc]
140
+ OP_NO_TICKET = 0x4000 # type: ignore[assignment, misc]
141
+ OP_NO_SSLv2 = 0x1000000 # type: ignore[assignment, misc]
142
+ OP_NO_SSLv3 = 0x2000000 # type: ignore[assignment, misc]
143
+ PROTOCOL_SSLv23 = PROTOCOL_TLS = 2 # type: ignore[assignment, misc]
144
+ PROTOCOL_TLS_CLIENT = 16 # type: ignore[assignment, misc]
145
+ VERIFY_X509_PARTIAL_CHAIN = 0x80000
146
+ VERIFY_X509_STRICT = 0x20 # type: ignore[assignment, misc]
147
+
148
+
149
+ _TYPE_PEER_CERT_RET = typing.Union["_TYPE_PEER_CERT_RET_DICT", bytes, None]
150
+
151
+
152
+ def assert_fingerprint(cert: bytes | None, fingerprint: str) -> None:
153
+ """
154
+ Checks if given fingerprint matches the supplied certificate.
155
+
156
+ :param cert:
157
+ Certificate as bytes object.
158
+ :param fingerprint:
159
+ Fingerprint as string of hexdigits, can be interspersed by colons.
160
+ """
161
+
162
+ if cert is None:
163
+ raise SSLError("No certificate for the peer.")
164
+
165
+ fingerprint = fingerprint.replace(":", "").lower()
166
+ digest_length = len(fingerprint)
167
+ if digest_length not in HASHFUNC_MAP:
168
+ raise SSLError(f"Fingerprint of invalid length: {fingerprint}")
169
+ hashfunc = HASHFUNC_MAP.get(digest_length)
170
+ if hashfunc is None:
171
+ raise SSLError(
172
+ f"Hash function implementation unavailable for fingerprint length: {digest_length}"
173
+ )
174
+
175
+ # We need encode() here for py32; works on py2 and p33.
176
+ fingerprint_bytes = unhexlify(fingerprint.encode())
177
+
178
+ cert_digest = hashfunc(cert).digest()
179
+
180
+ if not hmac.compare_digest(cert_digest, fingerprint_bytes):
181
+ raise SSLError(
182
+ f'Fingerprints did not match. Expected "{fingerprint}", got "{cert_digest.hex()}"'
183
+ )
184
+
185
+
186
+ def resolve_cert_reqs(candidate: None | int | str) -> VerifyMode:
187
+ """
188
+ Resolves the argument to a numeric constant, which can be passed to
189
+ the wrap_socket function/method from the ssl module.
190
+ Defaults to :data:`ssl.CERT_REQUIRED`.
191
+ If given a string it is assumed to be the name of the constant in the
192
+ :mod:`ssl` module or its abbreviation.
193
+ (So you can specify `REQUIRED` instead of `CERT_REQUIRED`.
194
+ If it's neither `None` nor a string we assume it is already the numeric
195
+ constant which can directly be passed to wrap_socket.
196
+ """
197
+ if candidate is None:
198
+ return CERT_REQUIRED
199
+
200
+ if isinstance(candidate, str):
201
+ res = getattr(ssl, candidate, None)
202
+ if res is None:
203
+ res = getattr(ssl, "CERT_" + candidate)
204
+ return res # type: ignore[no-any-return]
205
+
206
+ return candidate # type: ignore[return-value]
207
+
208
+
209
+ def resolve_ssl_version(candidate: None | int | str) -> int:
210
+ """
211
+ like resolve_cert_reqs
212
+ """
213
+ if candidate is None:
214
+ return PROTOCOL_TLS
215
+
216
+ if isinstance(candidate, str):
217
+ res = getattr(ssl, candidate, None)
218
+ if res is None:
219
+ res = getattr(ssl, "PROTOCOL_" + candidate)
220
+ return typing.cast(int, res)
221
+
222
+ return candidate
223
+
224
+
225
+ def create_urllib3_context(
226
+ ssl_version: int | None = None,
227
+ cert_reqs: int | None = None,
228
+ options: int | None = None,
229
+ ciphers: str | None = None,
230
+ ssl_minimum_version: int | None = None,
231
+ ssl_maximum_version: int | None = None,
232
+ verify_flags: int | None = None,
233
+ ) -> ssl.SSLContext:
234
+ """Creates and configures an :class:`ssl.SSLContext` instance for use with urllib3.
235
+
236
+ :param ssl_version:
237
+ The desired protocol version to use. This will default to
238
+ PROTOCOL_SSLv23 which will negotiate the highest protocol that both
239
+ the server and your installation of OpenSSL support.
240
+
241
+ This parameter is deprecated instead use 'ssl_minimum_version'.
242
+ :param ssl_minimum_version:
243
+ The minimum version of TLS to be used. Use the 'ssl.TLSVersion' enum for specifying the value.
244
+ :param ssl_maximum_version:
245
+ The maximum version of TLS to be used. Use the 'ssl.TLSVersion' enum for specifying the value.
246
+ Not recommended to set to anything other than 'ssl.TLSVersion.MAXIMUM_SUPPORTED' which is the
247
+ default value.
248
+ :param cert_reqs:
249
+ Whether to require the certificate verification. This defaults to
250
+ ``ssl.CERT_REQUIRED``.
251
+ :param options:
252
+ Specific OpenSSL options. These default to ``ssl.OP_NO_SSLv2``,
253
+ ``ssl.OP_NO_SSLv3``, ``ssl.OP_NO_COMPRESSION``, and ``ssl.OP_NO_TICKET``.
254
+ :param ciphers:
255
+ Which cipher suites to allow the server to select. Defaults to either system configured
256
+ ciphers if OpenSSL 1.1.1+, otherwise uses a secure default set of ciphers.
257
+ :param verify_flags:
258
+ The flags for certificate verification operations. These default to
259
+ ``ssl.VERIFY_X509_PARTIAL_CHAIN`` and ``ssl.VERIFY_X509_STRICT`` for Python 3.13+.
260
+ :returns:
261
+ Constructed SSLContext object with specified options
262
+ :rtype: SSLContext
263
+ """
264
+ if SSLContext is None:
265
+ raise TypeError("Can't create an SSLContext object without an ssl module")
266
+
267
+ # This means 'ssl_version' was specified as an exact value.
268
+ if ssl_version not in (None, PROTOCOL_TLS, PROTOCOL_TLS_CLIENT):
269
+ # Disallow setting 'ssl_version' and 'ssl_minimum|maximum_version'
270
+ # to avoid conflicts.
271
+ if ssl_minimum_version is not None or ssl_maximum_version is not None:
272
+ raise ValueError(
273
+ "Can't specify both 'ssl_version' and either "
274
+ "'ssl_minimum_version' or 'ssl_maximum_version'"
275
+ )
276
+
277
+ # 'ssl_version' is deprecated and will be removed in the future.
278
+ else:
279
+ # Use 'ssl_minimum_version' and 'ssl_maximum_version' instead.
280
+ ssl_minimum_version = _SSL_VERSION_TO_TLS_VERSION.get(
281
+ ssl_version, TLSVersion.MINIMUM_SUPPORTED
282
+ )
283
+ ssl_maximum_version = _SSL_VERSION_TO_TLS_VERSION.get(
284
+ ssl_version, TLSVersion.MAXIMUM_SUPPORTED
285
+ )
286
+
287
+ # This warning message is pushing users to use 'ssl_minimum_version'
288
+ # instead of both min/max. Best practice is to only set the minimum version and
289
+ # keep the maximum version to be it's default value: 'TLSVersion.MAXIMUM_SUPPORTED'
290
+ warnings.warn(
291
+ "'ssl_version' option is deprecated and will be "
292
+ "removed in urllib3 v2.6.0. Instead use 'ssl_minimum_version'",
293
+ category=DeprecationWarning,
294
+ stacklevel=2,
295
+ )
296
+
297
+ # PROTOCOL_TLS is deprecated in Python 3.10 so we always use PROTOCOL_TLS_CLIENT
298
+ context = SSLContext(PROTOCOL_TLS_CLIENT)
299
+
300
+ if ssl_minimum_version is not None:
301
+ context.minimum_version = ssl_minimum_version
302
+ else: # Python <3.10 defaults to 'MINIMUM_SUPPORTED' so explicitly set TLSv1.2 here
303
+ context.minimum_version = TLSVersion.TLSv1_2
304
+
305
+ if ssl_maximum_version is not None:
306
+ context.maximum_version = ssl_maximum_version
307
+
308
+ # Unless we're given ciphers defer to either system ciphers in
309
+ # the case of OpenSSL 1.1.1+ or use our own secure default ciphers.
310
+ if ciphers:
311
+ context.set_ciphers(ciphers)
312
+
313
+ # Setting the default here, as we may have no ssl module on import
314
+ cert_reqs = ssl.CERT_REQUIRED if cert_reqs is None else cert_reqs
315
+
316
+ if options is None:
317
+ options = 0
318
+ # SSLv2 is easily broken and is considered harmful and dangerous
319
+ options |= OP_NO_SSLv2
320
+ # SSLv3 has several problems and is now dangerous
321
+ options |= OP_NO_SSLv3
322
+ # Disable compression to prevent CRIME attacks for OpenSSL 1.0+
323
+ # (issue #309)
324
+ options |= OP_NO_COMPRESSION
325
+ # TLSv1.2 only. Unless set explicitly, do not request tickets.
326
+ # This may save some bandwidth on wire, and although the ticket is encrypted,
327
+ # there is a risk associated with it being on wire,
328
+ # if the server is not rotating its ticketing keys properly.
329
+ options |= OP_NO_TICKET
330
+
331
+ context.options |= options
332
+
333
+ if verify_flags is None:
334
+ verify_flags = 0
335
+ # In Python 3.13+ ssl.create_default_context() sets VERIFY_X509_PARTIAL_CHAIN
336
+ # and VERIFY_X509_STRICT so we do the same
337
+ if sys.version_info >= (3, 13):
338
+ verify_flags |= VERIFY_X509_PARTIAL_CHAIN
339
+ verify_flags |= VERIFY_X509_STRICT
340
+
341
+ context.verify_flags |= verify_flags
342
+
343
+ # Enable post-handshake authentication for TLS 1.3, see GH #1634. PHA is
344
+ # necessary for conditional client cert authentication with TLS 1.3.
345
+ # The attribute is None for OpenSSL <= 1.1.0 or does not exist when using
346
+ # an SSLContext created by pyOpenSSL.
347
+ if getattr(context, "post_handshake_auth", None) is not None:
348
+ context.post_handshake_auth = True
349
+
350
+ # The order of the below lines setting verify_mode and check_hostname
351
+ # matter due to safe-guards SSLContext has to prevent an SSLContext with
352
+ # check_hostname=True, verify_mode=NONE/OPTIONAL.
353
+ # We always set 'check_hostname=False' for pyOpenSSL so we rely on our own
354
+ # 'ssl.match_hostname()' implementation.
355
+ if cert_reqs == ssl.CERT_REQUIRED and not IS_PYOPENSSL:
356
+ context.verify_mode = cert_reqs
357
+ context.check_hostname = True
358
+ else:
359
+ context.check_hostname = False
360
+ context.verify_mode = cert_reqs
361
+
362
+ try:
363
+ context.hostname_checks_common_name = False
364
+ except AttributeError: # Defensive: for CPython < 3.9.3; for PyPy < 7.3.8
365
+ pass
366
+
367
+ if "SSLKEYLOGFILE" in os.environ:
368
+ sslkeylogfile = os.path.expandvars(os.environ.get("SSLKEYLOGFILE"))
369
+ else:
370
+ sslkeylogfile = None
371
+ if sslkeylogfile:
372
+ context.keylog_filename = sslkeylogfile
373
+
374
+ return context
375
+
376
+
377
+ @typing.overload
378
+ def ssl_wrap_socket(
379
+ sock: socket.socket,
380
+ keyfile: str | None = ...,
381
+ certfile: str | None = ...,
382
+ cert_reqs: int | None = ...,
383
+ ca_certs: str | None = ...,
384
+ server_hostname: str | None = ...,
385
+ ssl_version: int | None = ...,
386
+ ciphers: str | None = ...,
387
+ ssl_context: ssl.SSLContext | None = ...,
388
+ ca_cert_dir: str | None = ...,
389
+ key_password: str | None = ...,
390
+ ca_cert_data: None | str | bytes = ...,
391
+ tls_in_tls: typing.Literal[False] = ...,
392
+ ) -> ssl.SSLSocket: ...
393
+
394
+
395
+ @typing.overload
396
+ def ssl_wrap_socket(
397
+ sock: socket.socket,
398
+ keyfile: str | None = ...,
399
+ certfile: str | None = ...,
400
+ cert_reqs: int | None = ...,
401
+ ca_certs: str | None = ...,
402
+ server_hostname: str | None = ...,
403
+ ssl_version: int | None = ...,
404
+ ciphers: str | None = ...,
405
+ ssl_context: ssl.SSLContext | None = ...,
406
+ ca_cert_dir: str | None = ...,
407
+ key_password: str | None = ...,
408
+ ca_cert_data: None | str | bytes = ...,
409
+ tls_in_tls: bool = ...,
410
+ ) -> ssl.SSLSocket | SSLTransportType: ...
411
+
412
+
413
+ def ssl_wrap_socket(
414
+ sock: socket.socket,
415
+ keyfile: str | None = None,
416
+ certfile: str | None = None,
417
+ cert_reqs: int | None = None,
418
+ ca_certs: str | None = None,
419
+ server_hostname: str | None = None,
420
+ ssl_version: int | None = None,
421
+ ciphers: str | None = None,
422
+ ssl_context: ssl.SSLContext | None = None,
423
+ ca_cert_dir: str | None = None,
424
+ key_password: str | None = None,
425
+ ca_cert_data: None | str | bytes = None,
426
+ tls_in_tls: bool = False,
427
+ ) -> ssl.SSLSocket | SSLTransportType:
428
+ """
429
+ All arguments except for server_hostname, ssl_context, tls_in_tls, ca_cert_data and
430
+ ca_cert_dir have the same meaning as they do when using
431
+ :func:`ssl.create_default_context`, :meth:`ssl.SSLContext.load_cert_chain`,
432
+ :meth:`ssl.SSLContext.set_ciphers` and :meth:`ssl.SSLContext.wrap_socket`.
433
+
434
+ :param server_hostname:
435
+ When SNI is supported, the expected hostname of the certificate
436
+ :param ssl_context:
437
+ A pre-made :class:`SSLContext` object. If none is provided, one will
438
+ be created using :func:`create_urllib3_context`.
439
+ :param ciphers:
440
+ A string of ciphers we wish the client to support.
441
+ :param ca_cert_dir:
442
+ A directory containing CA certificates in multiple separate files, as
443
+ supported by OpenSSL's -CApath flag or the capath argument to
444
+ SSLContext.load_verify_locations().
445
+ :param key_password:
446
+ Optional password if the keyfile is encrypted.
447
+ :param ca_cert_data:
448
+ Optional string containing CA certificates in PEM format suitable for
449
+ passing as the cadata parameter to SSLContext.load_verify_locations()
450
+ :param tls_in_tls:
451
+ Use SSLTransport to wrap the existing socket.
452
+ """
453
+ context = ssl_context
454
+ if context is None:
455
+ # Note: This branch of code and all the variables in it are only used in tests.
456
+ # We should consider deprecating and removing this code.
457
+ context = create_urllib3_context(ssl_version, cert_reqs, ciphers=ciphers)
458
+
459
+ if ca_certs or ca_cert_dir or ca_cert_data:
460
+ try:
461
+ context.load_verify_locations(ca_certs, ca_cert_dir, ca_cert_data)
462
+ except OSError as e:
463
+ raise SSLError(e) from e
464
+
465
+ elif ssl_context is None and hasattr(context, "load_default_certs"):
466
+ # try to load OS default certs; works well on Windows.
467
+ context.load_default_certs()
468
+
469
+ # Attempt to detect if we get the goofy behavior of the
470
+ # keyfile being encrypted and OpenSSL asking for the
471
+ # passphrase via the terminal and instead error out.
472
+ if keyfile and key_password is None and _is_key_file_encrypted(keyfile):
473
+ raise SSLError("Client private key is encrypted, password is required")
474
+
475
+ if certfile:
476
+ if key_password is None:
477
+ context.load_cert_chain(certfile, keyfile)
478
+ else:
479
+ context.load_cert_chain(certfile, keyfile, key_password)
480
+
481
+ context.set_alpn_protocols(ALPN_PROTOCOLS)
482
+
483
+ ssl_sock = _ssl_wrap_socket_impl(sock, context, tls_in_tls, server_hostname)
484
+ return ssl_sock
485
+
486
+
487
+ def is_ipaddress(hostname: str | bytes) -> bool:
488
+ """Detects whether the hostname given is an IPv4 or IPv6 address.
489
+ Also detects IPv6 addresses with Zone IDs.
490
+
491
+ :param str hostname: Hostname to examine.
492
+ :return: True if the hostname is an IP address, False otherwise.
493
+ """
494
+ if isinstance(hostname, bytes):
495
+ # IDN A-label bytes are ASCII compatible.
496
+ hostname = hostname.decode("ascii")
497
+ return bool(_IPV4_RE.match(hostname) or _BRACELESS_IPV6_ADDRZ_RE.match(hostname))
498
+
499
+
500
+ def _is_key_file_encrypted(key_file: str) -> bool:
501
+ """Detects if a key file is encrypted or not."""
502
+ with open(key_file) as f:
503
+ for line in f:
504
+ # Look for Proc-Type: 4,ENCRYPTED
505
+ if "ENCRYPTED" in line:
506
+ return True
507
+
508
+ return False
509
+
510
+
511
+ def _ssl_wrap_socket_impl(
512
+ sock: socket.socket,
513
+ ssl_context: ssl.SSLContext,
514
+ tls_in_tls: bool,
515
+ server_hostname: str | None = None,
516
+ ) -> ssl.SSLSocket | SSLTransportType:
517
+ if tls_in_tls:
518
+ if not SSLTransport:
519
+ # Import error, ssl is not available.
520
+ raise ProxySchemeUnsupported(
521
+ "TLS in TLS requires support for the 'ssl' module"
522
+ )
523
+
524
+ SSLTransport._validate_ssl_context_for_tls_in_tls(ssl_context)
525
+ return SSLTransport(sock, ssl_context, server_hostname)
526
+
527
+ return ssl_context.wrap_socket(sock, server_hostname=server_hostname)
@@ -0,0 +1,159 @@
1
+ """The match_hostname() function from Python 3.5, essential when using SSL."""
2
+
3
+ # Note: This file is under the PSF license as the code comes from the python
4
+ # stdlib. http://docs.python.org/3/license.html
5
+ # It is modified to remove commonName support.
6
+
7
+ from __future__ import annotations
8
+
9
+ import ipaddress
10
+ import re
11
+ import typing
12
+ from ipaddress import IPv4Address, IPv6Address
13
+
14
+ if typing.TYPE_CHECKING:
15
+ from .ssl_ import _TYPE_PEER_CERT_RET_DICT
16
+
17
+ __version__ = "3.5.0.1"
18
+
19
+
20
+ class CertificateError(ValueError):
21
+ pass
22
+
23
+
24
+ def _dnsname_match(
25
+ dn: typing.Any, hostname: str, max_wildcards: int = 1
26
+ ) -> typing.Match[str] | None | bool:
27
+ """Matching according to RFC 6125, section 6.4.3
28
+
29
+ http://tools.ietf.org/html/rfc6125#section-6.4.3
30
+ """
31
+ pats = []
32
+ if not dn:
33
+ return False
34
+
35
+ # Ported from python3-syntax:
36
+ # leftmost, *remainder = dn.split(r'.')
37
+ parts = dn.split(r".")
38
+ leftmost = parts[0]
39
+ remainder = parts[1:]
40
+
41
+ wildcards = leftmost.count("*")
42
+ if wildcards > max_wildcards:
43
+ # Issue #17980: avoid denials of service by refusing more
44
+ # than one wildcard per fragment. A survey of established
45
+ # policy among SSL implementations showed it to be a
46
+ # reasonable choice.
47
+ raise CertificateError(
48
+ "too many wildcards in certificate DNS name: " + repr(dn)
49
+ )
50
+
51
+ # speed up common case w/o wildcards
52
+ if not wildcards:
53
+ return bool(dn.lower() == hostname.lower())
54
+
55
+ # RFC 6125, section 6.4.3, subitem 1.
56
+ # The client SHOULD NOT attempt to match a presented identifier in which
57
+ # the wildcard character comprises a label other than the left-most label.
58
+ if leftmost == "*":
59
+ # When '*' is a fragment by itself, it matches a non-empty dotless
60
+ # fragment.
61
+ pats.append("[^.]+")
62
+ elif leftmost.startswith("xn--") or hostname.startswith("xn--"):
63
+ # RFC 6125, section 6.4.3, subitem 3.
64
+ # The client SHOULD NOT attempt to match a presented identifier
65
+ # where the wildcard character is embedded within an A-label or
66
+ # U-label of an internationalized domain name.
67
+ pats.append(re.escape(leftmost))
68
+ else:
69
+ # Otherwise, '*' matches any dotless string, e.g. www*
70
+ pats.append(re.escape(leftmost).replace(r"\*", "[^.]*"))
71
+
72
+ # add the remaining fragments, ignore any wildcards
73
+ for frag in remainder:
74
+ pats.append(re.escape(frag))
75
+
76
+ pat = re.compile(r"\A" + r"\.".join(pats) + r"\Z", re.IGNORECASE)
77
+ return pat.match(hostname)
78
+
79
+
80
+ def _ipaddress_match(ipname: str, host_ip: IPv4Address | IPv6Address) -> bool:
81
+ """Exact matching of IP addresses.
82
+
83
+ RFC 9110 section 4.3.5: "A reference identity of IP-ID contains the decoded
84
+ bytes of the IP address. An IP version 4 address is 4 octets, and an IP
85
+ version 6 address is 16 octets. [...] A reference identity of type IP-ID
86
+ matches if the address is identical to an iPAddress value of the
87
+ subjectAltName extension of the certificate."
88
+ """
89
+ # OpenSSL may add a trailing newline to a subjectAltName's IP address
90
+ # Divergence from upstream: ipaddress can't handle byte str
91
+ ip = ipaddress.ip_address(ipname.rstrip())
92
+ return bool(ip.packed == host_ip.packed)
93
+
94
+
95
+ def match_hostname(
96
+ cert: _TYPE_PEER_CERT_RET_DICT | None,
97
+ hostname: str,
98
+ hostname_checks_common_name: bool = False,
99
+ ) -> None:
100
+ """Verify that *cert* (in decoded format as returned by
101
+ SSLSocket.getpeercert()) matches the *hostname*. RFC 2818 and RFC 6125
102
+ rules are followed, but IP addresses are not accepted for *hostname*.
103
+
104
+ CertificateError is raised on failure. On success, the function
105
+ returns nothing.
106
+ """
107
+ if not cert:
108
+ raise ValueError(
109
+ "empty or no certificate, match_hostname needs a "
110
+ "SSL socket or SSL context with either "
111
+ "CERT_OPTIONAL or CERT_REQUIRED"
112
+ )
113
+ try:
114
+ # Divergence from upstream: ipaddress can't handle byte str
115
+ #
116
+ # The ipaddress module shipped with Python < 3.9 does not support
117
+ # scoped IPv6 addresses so we unconditionally strip the Zone IDs for
118
+ # now. Once we drop support for Python 3.9 we can remove this branch.
119
+ if "%" in hostname:
120
+ host_ip = ipaddress.ip_address(hostname[: hostname.rfind("%")])
121
+ else:
122
+ host_ip = ipaddress.ip_address(hostname)
123
+
124
+ except ValueError:
125
+ # Not an IP address (common case)
126
+ host_ip = None
127
+ dnsnames = []
128
+ san: tuple[tuple[str, str], ...] = cert.get("subjectAltName", ())
129
+ key: str
130
+ value: str
131
+ for key, value in san:
132
+ if key == "DNS":
133
+ if host_ip is None and _dnsname_match(value, hostname):
134
+ return
135
+ dnsnames.append(value)
136
+ elif key == "IP Address":
137
+ if host_ip is not None and _ipaddress_match(value, host_ip):
138
+ return
139
+ dnsnames.append(value)
140
+
141
+ # We only check 'commonName' if it's enabled and we're not verifying
142
+ # an IP address. IP addresses aren't valid within 'commonName'.
143
+ if hostname_checks_common_name and host_ip is None and not dnsnames:
144
+ for sub in cert.get("subject", ()):
145
+ for key, value in sub:
146
+ if key == "commonName":
147
+ if _dnsname_match(value, hostname):
148
+ return
149
+ dnsnames.append(value) # Defensive: for Python < 3.9.3
150
+
151
+ if len(dnsnames) > 1:
152
+ raise CertificateError(
153
+ "hostname %r "
154
+ "doesn't match either of %s" % (hostname, ", ".join(map(repr, dnsnames)))
155
+ )
156
+ elif len(dnsnames) == 1:
157
+ raise CertificateError(f"hostname {hostname!r} doesn't match {dnsnames[0]!r}")
158
+ else:
159
+ raise CertificateError("no appropriate subjectAltName fields were found")