@pairling/runtime-darwin-x64 0.1.0 → 0.2.1

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 (1239) hide show
  1. package/README.md +1 -1
  2. package/bin/pairling-connectd +0 -0
  3. package/manifest.json +9 -3
  4. package/package.json +3 -3
  5. package/python/bin/2to3-3.12 +7 -0
  6. package/python/bin/idle3.12 +7 -0
  7. package/python/bin/pip +8 -0
  8. package/python/bin/pip3 +8 -0
  9. package/python/bin/pip3.12 +8 -0
  10. package/python/bin/pydoc3.12 +7 -0
  11. package/python/bin/python3 +0 -0
  12. package/python/bin/python3.12 +0 -0
  13. package/python/bin/python3.12-config +76 -0
  14. package/python/include/python3.12/Python.h +109 -0
  15. package/python/include/python3.12/abstract.h +899 -0
  16. package/python/include/python3.12/bltinmodule.h +14 -0
  17. package/python/include/python3.12/boolobject.h +42 -0
  18. package/python/include/python3.12/bytearrayobject.h +44 -0
  19. package/python/include/python3.12/bytesobject.h +69 -0
  20. package/python/include/python3.12/ceval.h +168 -0
  21. package/python/include/python3.12/codecs.h +248 -0
  22. package/python/include/python3.12/compile.h +22 -0
  23. package/python/include/python3.12/complexobject.h +30 -0
  24. package/python/include/python3.12/cpython/abstract.h +206 -0
  25. package/python/include/python3.12/cpython/bytearrayobject.h +34 -0
  26. package/python/include/python3.12/cpython/bytesobject.h +133 -0
  27. package/python/include/python3.12/cpython/cellobject.h +44 -0
  28. package/python/include/python3.12/cpython/ceval.h +35 -0
  29. package/python/include/python3.12/cpython/classobject.h +71 -0
  30. package/python/include/python3.12/cpython/code.h +389 -0
  31. package/python/include/python3.12/cpython/compile.h +69 -0
  32. package/python/include/python3.12/cpython/complexobject.h +44 -0
  33. package/python/include/python3.12/cpython/context.h +78 -0
  34. package/python/include/python3.12/cpython/descrobject.h +64 -0
  35. package/python/include/python3.12/cpython/dictobject.h +118 -0
  36. package/python/include/python3.12/cpython/fileobject.h +19 -0
  37. package/python/include/python3.12/cpython/fileutils.h +8 -0
  38. package/python/include/python3.12/cpython/floatobject.h +27 -0
  39. package/python/include/python3.12/cpython/frameobject.h +29 -0
  40. package/python/include/python3.12/cpython/funcobject.h +190 -0
  41. package/python/include/python3.12/cpython/genobject.h +89 -0
  42. package/python/include/python3.12/cpython/import.h +46 -0
  43. package/python/include/python3.12/cpython/initconfig.h +256 -0
  44. package/python/include/python3.12/cpython/interpreteridobject.h +11 -0
  45. package/python/include/python3.12/cpython/listobject.h +47 -0
  46. package/python/include/python3.12/cpython/longintrepr.h +133 -0
  47. package/python/include/python3.12/cpython/longobject.h +100 -0
  48. package/python/include/python3.12/cpython/memoryobject.h +52 -0
  49. package/python/include/python3.12/cpython/methodobject.h +66 -0
  50. package/python/include/python3.12/cpython/modsupport.h +109 -0
  51. package/python/include/python3.12/cpython/object.h +575 -0
  52. package/python/include/python3.12/cpython/objimpl.h +95 -0
  53. package/python/include/python3.12/cpython/odictobject.h +43 -0
  54. package/python/include/python3.12/cpython/picklebufobject.h +31 -0
  55. package/python/include/python3.12/cpython/pthread_stubs.h +88 -0
  56. package/python/include/python3.12/cpython/pyctype.h +39 -0
  57. package/python/include/python3.12/cpython/pydebug.h +38 -0
  58. package/python/include/python3.12/cpython/pyerrors.h +178 -0
  59. package/python/include/python3.12/cpython/pyfpe.h +15 -0
  60. package/python/include/python3.12/cpython/pyframe.h +35 -0
  61. package/python/include/python3.12/cpython/pylifecycle.h +111 -0
  62. package/python/include/python3.12/cpython/pymem.h +98 -0
  63. package/python/include/python3.12/cpython/pystate.h +456 -0
  64. package/python/include/python3.12/cpython/pythonrun.h +121 -0
  65. package/python/include/python3.12/cpython/pythread.h +42 -0
  66. package/python/include/python3.12/cpython/pytime.h +331 -0
  67. package/python/include/python3.12/cpython/setobject.h +72 -0
  68. package/python/include/python3.12/cpython/sysmodule.h +16 -0
  69. package/python/include/python3.12/cpython/traceback.h +16 -0
  70. package/python/include/python3.12/cpython/tupleobject.h +39 -0
  71. package/python/include/python3.12/cpython/unicodeobject.h +976 -0
  72. package/python/include/python3.12/cpython/warnings.h +20 -0
  73. package/python/include/python3.12/cpython/weakrefobject.h +56 -0
  74. package/python/include/python3.12/datetime.h +267 -0
  75. package/python/include/python3.12/descrobject.h +100 -0
  76. package/python/include/python3.12/dictobject.h +97 -0
  77. package/python/include/python3.12/dynamic_annotations.h +499 -0
  78. package/python/include/python3.12/enumobject.h +17 -0
  79. package/python/include/python3.12/errcode.h +38 -0
  80. package/python/include/python3.12/exports.h +36 -0
  81. package/python/include/python3.12/fileobject.h +49 -0
  82. package/python/include/python3.12/fileutils.h +26 -0
  83. package/python/include/python3.12/floatobject.h +54 -0
  84. package/python/include/python3.12/frameobject.h +20 -0
  85. package/python/include/python3.12/genericaliasobject.h +14 -0
  86. package/python/include/python3.12/import.h +98 -0
  87. package/python/include/python3.12/internal/pycore_abstract.h +25 -0
  88. package/python/include/python3.12/internal/pycore_asdl.h +112 -0
  89. package/python/include/python3.12/internal/pycore_ast.h +922 -0
  90. package/python/include/python3.12/internal/pycore_ast_state.h +265 -0
  91. package/python/include/python3.12/internal/pycore_atexit.h +57 -0
  92. package/python/include/python3.12/internal/pycore_atomic.h +557 -0
  93. package/python/include/python3.12/internal/pycore_atomic_funcs.h +94 -0
  94. package/python/include/python3.12/internal/pycore_bitutils.h +186 -0
  95. package/python/include/python3.12/internal/pycore_blocks_output_buffer.h +317 -0
  96. package/python/include/python3.12/internal/pycore_bytes_methods.h +73 -0
  97. package/python/include/python3.12/internal/pycore_bytesobject.h +47 -0
  98. package/python/include/python3.12/internal/pycore_call.h +133 -0
  99. package/python/include/python3.12/internal/pycore_ceval.h +164 -0
  100. package/python/include/python3.12/internal/pycore_ceval_state.h +103 -0
  101. package/python/include/python3.12/internal/pycore_code.h +496 -0
  102. package/python/include/python3.12/internal/pycore_compile.h +118 -0
  103. package/python/include/python3.12/internal/pycore_condvar.h +99 -0
  104. package/python/include/python3.12/internal/pycore_context.h +71 -0
  105. package/python/include/python3.12/internal/pycore_descrobject.h +26 -0
  106. package/python/include/python3.12/internal/pycore_dict.h +199 -0
  107. package/python/include/python3.12/internal/pycore_dict_state.h +50 -0
  108. package/python/include/python3.12/internal/pycore_dtoa.h +69 -0
  109. package/python/include/python3.12/internal/pycore_emscripten_signal.h +25 -0
  110. package/python/include/python3.12/internal/pycore_exceptions.h +37 -0
  111. package/python/include/python3.12/internal/pycore_faulthandler.h +99 -0
  112. package/python/include/python3.12/internal/pycore_fileutils.h +292 -0
  113. package/python/include/python3.12/internal/pycore_fileutils_windows.h +98 -0
  114. package/python/include/python3.12/internal/pycore_floatobject.h +71 -0
  115. package/python/include/python3.12/internal/pycore_flowgraph.h +120 -0
  116. package/python/include/python3.12/internal/pycore_format.h +27 -0
  117. package/python/include/python3.12/internal/pycore_frame.h +283 -0
  118. package/python/include/python3.12/internal/pycore_function.h +26 -0
  119. package/python/include/python3.12/internal/pycore_gc.h +211 -0
  120. package/python/include/python3.12/internal/pycore_genobject.h +49 -0
  121. package/python/include/python3.12/internal/pycore_getopt.h +22 -0
  122. package/python/include/python3.12/internal/pycore_gil.h +50 -0
  123. package/python/include/python3.12/internal/pycore_global_objects.h +105 -0
  124. package/python/include/python3.12/internal/pycore_global_objects_fini_generated.h +1517 -0
  125. package/python/include/python3.12/internal/pycore_global_strings.h +777 -0
  126. package/python/include/python3.12/internal/pycore_hamt.h +134 -0
  127. package/python/include/python3.12/internal/pycore_hashtable.h +149 -0
  128. package/python/include/python3.12/internal/pycore_import.h +183 -0
  129. package/python/include/python3.12/internal/pycore_initconfig.h +179 -0
  130. package/python/include/python3.12/internal/pycore_instruments.h +106 -0
  131. package/python/include/python3.12/internal/pycore_interp.h +275 -0
  132. package/python/include/python3.12/internal/pycore_intrinsics.h +32 -0
  133. package/python/include/python3.12/internal/pycore_list.h +83 -0
  134. package/python/include/python3.12/internal/pycore_long.h +258 -0
  135. package/python/include/python3.12/internal/pycore_memoryobject.h +18 -0
  136. package/python/include/python3.12/internal/pycore_moduleobject.h +45 -0
  137. package/python/include/python3.12/internal/pycore_namespace.h +20 -0
  138. package/python/include/python3.12/internal/pycore_object.h +455 -0
  139. package/python/include/python3.12/internal/pycore_object_state.h +42 -0
  140. package/python/include/python3.12/internal/pycore_obmalloc.h +700 -0
  141. package/python/include/python3.12/internal/pycore_obmalloc_init.h +73 -0
  142. package/python/include/python3.12/internal/pycore_opcode.h +587 -0
  143. package/python/include/python3.12/internal/pycore_opcode_utils.h +92 -0
  144. package/python/include/python3.12/internal/pycore_parser.h +66 -0
  145. package/python/include/python3.12/internal/pycore_pathconfig.h +24 -0
  146. package/python/include/python3.12/internal/pycore_pyarena.h +64 -0
  147. package/python/include/python3.12/internal/pycore_pyerrors.h +129 -0
  148. package/python/include/python3.12/internal/pycore_pyhash.h +40 -0
  149. package/python/include/python3.12/internal/pycore_pylifecycle.h +99 -0
  150. package/python/include/python3.12/internal/pycore_pymath.h +205 -0
  151. package/python/include/python3.12/internal/pycore_pymem.h +98 -0
  152. package/python/include/python3.12/internal/pycore_pymem_init.h +85 -0
  153. package/python/include/python3.12/internal/pycore_pystate.h +180 -0
  154. package/python/include/python3.12/internal/pycore_pythread.h +81 -0
  155. package/python/include/python3.12/internal/pycore_range.h +21 -0
  156. package/python/include/python3.12/internal/pycore_runtime.h +235 -0
  157. package/python/include/python3.12/internal/pycore_runtime_init.h +188 -0
  158. package/python/include/python3.12/internal/pycore_runtime_init_generated.h +1511 -0
  159. package/python/include/python3.12/internal/pycore_signal.h +98 -0
  160. package/python/include/python3.12/internal/pycore_sliceobject.h +22 -0
  161. package/python/include/python3.12/internal/pycore_strhex.h +36 -0
  162. package/python/include/python3.12/internal/pycore_structseq.h +39 -0
  163. package/python/include/python3.12/internal/pycore_symtable.h +160 -0
  164. package/python/include/python3.12/internal/pycore_sysmodule.h +34 -0
  165. package/python/include/python3.12/internal/pycore_time.h +25 -0
  166. package/python/include/python3.12/internal/pycore_token.h +108 -0
  167. package/python/include/python3.12/internal/pycore_traceback.h +101 -0
  168. package/python/include/python3.12/internal/pycore_tracemalloc.h +123 -0
  169. package/python/include/python3.12/internal/pycore_tuple.h +79 -0
  170. package/python/include/python3.12/internal/pycore_typeobject.h +151 -0
  171. package/python/include/python3.12/internal/pycore_typevarobject.h +24 -0
  172. package/python/include/python3.12/internal/pycore_ucnhash.h +34 -0
  173. package/python/include/python3.12/internal/pycore_unicodeobject.h +86 -0
  174. package/python/include/python3.12/internal/pycore_unicodeobject_generated.h +2832 -0
  175. package/python/include/python3.12/internal/pycore_unionobject.h +23 -0
  176. package/python/include/python3.12/internal/pycore_warnings.h +29 -0
  177. package/python/include/python3.12/interpreteridobject.h +17 -0
  178. package/python/include/python3.12/intrcheck.h +30 -0
  179. package/python/include/python3.12/iterobject.h +27 -0
  180. package/python/include/python3.12/listobject.h +52 -0
  181. package/python/include/python3.12/longobject.h +108 -0
  182. package/python/include/python3.12/marshal.h +31 -0
  183. package/python/include/python3.12/memoryobject.h +34 -0
  184. package/python/include/python3.12/methodobject.h +132 -0
  185. package/python/include/python3.12/modsupport.h +168 -0
  186. package/python/include/python3.12/moduleobject.h +119 -0
  187. package/python/include/python3.12/object.h +993 -0
  188. package/python/include/python3.12/objimpl.h +234 -0
  189. package/python/include/python3.12/opcode.h +271 -0
  190. package/python/include/python3.12/osdefs.h +51 -0
  191. package/python/include/python3.12/osmodule.h +17 -0
  192. package/python/include/python3.12/patchlevel.h +35 -0
  193. package/python/include/python3.12/py_curses.h +99 -0
  194. package/python/include/python3.12/pybuffer.h +145 -0
  195. package/python/include/python3.12/pycapsule.h +59 -0
  196. package/python/include/python3.12/pyconfig.h +1943 -0
  197. package/python/include/python3.12/pydtrace.h +59 -0
  198. package/python/include/python3.12/pyerrors.h +337 -0
  199. package/python/include/python3.12/pyexpat.h +62 -0
  200. package/python/include/python3.12/pyframe.h +26 -0
  201. package/python/include/python3.12/pyhash.h +144 -0
  202. package/python/include/python3.12/pylifecycle.h +78 -0
  203. package/python/include/python3.12/pymacconfig.h +99 -0
  204. package/python/include/python3.12/pymacro.h +172 -0
  205. package/python/include/python3.12/pymath.h +62 -0
  206. package/python/include/python3.12/pymem.h +104 -0
  207. package/python/include/python3.12/pyport.h +782 -0
  208. package/python/include/python3.12/pystate.h +132 -0
  209. package/python/include/python3.12/pystats.h +110 -0
  210. package/python/include/python3.12/pystrcmp.h +23 -0
  211. package/python/include/python3.12/pystrtod.h +46 -0
  212. package/python/include/python3.12/pythonrun.h +49 -0
  213. package/python/include/python3.12/pythread.h +135 -0
  214. package/python/include/python3.12/pytypedefs.h +30 -0
  215. package/python/include/python3.12/rangeobject.h +27 -0
  216. package/python/include/python3.12/setobject.h +49 -0
  217. package/python/include/python3.12/sliceobject.h +65 -0
  218. package/python/include/python3.12/structmember.h +56 -0
  219. package/python/include/python3.12/structseq.h +49 -0
  220. package/python/include/python3.12/sysmodule.h +54 -0
  221. package/python/include/python3.12/traceback.h +26 -0
  222. package/python/include/python3.12/tracemalloc.h +77 -0
  223. package/python/include/python3.12/tupleobject.h +46 -0
  224. package/python/include/python3.12/typeslots.h +88 -0
  225. package/python/include/python3.12/unicodeobject.h +1020 -0
  226. package/python/include/python3.12/warnings.h +45 -0
  227. package/python/include/python3.12/weakrefobject.h +42 -0
  228. package/python/lib/libpython3.12.dylib +0 -0
  229. package/python/lib/python3.12/LICENSE.txt +279 -0
  230. package/python/lib/python3.12/__future__.py +147 -0
  231. package/python/lib/python3.12/__hello__.py +16 -0
  232. package/python/lib/python3.12/__phello__/__init__.py +7 -0
  233. package/python/lib/python3.12/__phello__/spam.py +7 -0
  234. package/python/lib/python3.12/_aix_support.py +108 -0
  235. package/python/lib/python3.12/_collections_abc.py +1173 -0
  236. package/python/lib/python3.12/_compat_pickle.py +252 -0
  237. package/python/lib/python3.12/_compression.py +162 -0
  238. package/python/lib/python3.12/_markupbase.py +396 -0
  239. package/python/lib/python3.12/_osx_support.py +579 -0
  240. package/python/lib/python3.12/_py_abc.py +147 -0
  241. package/python/lib/python3.12/_pydatetime.py +2643 -0
  242. package/python/lib/python3.12/_pydecimal.py +6339 -0
  243. package/python/lib/python3.12/_pyio.py +2698 -0
  244. package/python/lib/python3.12/_pylong.py +329 -0
  245. package/python/lib/python3.12/_sitebuiltins.py +103 -0
  246. package/python/lib/python3.12/_strptime.py +664 -0
  247. package/python/lib/python3.12/_sysconfigdata__darwin_darwin.py +984 -0
  248. package/python/lib/python3.12/_threading_local.py +242 -0
  249. package/python/lib/python3.12/_weakrefset.py +205 -0
  250. package/python/lib/python3.12/abc.py +188 -0
  251. package/python/lib/python3.12/aifc.py +984 -0
  252. package/python/lib/python3.12/antigravity.py +17 -0
  253. package/python/lib/python3.12/argparse.py +2650 -0
  254. package/python/lib/python3.12/ast.py +1840 -0
  255. package/python/lib/python3.12/asyncio/__init__.py +47 -0
  256. package/python/lib/python3.12/asyncio/__main__.py +128 -0
  257. package/python/lib/python3.12/asyncio/base_events.py +2024 -0
  258. package/python/lib/python3.12/asyncio/base_futures.py +67 -0
  259. package/python/lib/python3.12/asyncio/base_subprocess.py +285 -0
  260. package/python/lib/python3.12/asyncio/base_tasks.py +94 -0
  261. package/python/lib/python3.12/asyncio/constants.py +41 -0
  262. package/python/lib/python3.12/asyncio/coroutines.py +109 -0
  263. package/python/lib/python3.12/asyncio/events.py +868 -0
  264. package/python/lib/python3.12/asyncio/exceptions.py +62 -0
  265. package/python/lib/python3.12/asyncio/format_helpers.py +76 -0
  266. package/python/lib/python3.12/asyncio/futures.py +430 -0
  267. package/python/lib/python3.12/asyncio/locks.py +586 -0
  268. package/python/lib/python3.12/asyncio/log.py +7 -0
  269. package/python/lib/python3.12/asyncio/mixins.py +21 -0
  270. package/python/lib/python3.12/asyncio/proactor_events.py +897 -0
  271. package/python/lib/python3.12/asyncio/protocols.py +216 -0
  272. package/python/lib/python3.12/asyncio/queues.py +244 -0
  273. package/python/lib/python3.12/asyncio/runners.py +216 -0
  274. package/python/lib/python3.12/asyncio/selector_events.py +1324 -0
  275. package/python/lib/python3.12/asyncio/sslproto.py +929 -0
  276. package/python/lib/python3.12/asyncio/staggered.py +174 -0
  277. package/python/lib/python3.12/asyncio/streams.py +770 -0
  278. package/python/lib/python3.12/asyncio/subprocess.py +229 -0
  279. package/python/lib/python3.12/asyncio/taskgroups.py +268 -0
  280. package/python/lib/python3.12/asyncio/tasks.py +1065 -0
  281. package/python/lib/python3.12/asyncio/threads.py +25 -0
  282. package/python/lib/python3.12/asyncio/timeouts.py +168 -0
  283. package/python/lib/python3.12/asyncio/transports.py +335 -0
  284. package/python/lib/python3.12/asyncio/trsock.py +98 -0
  285. package/python/lib/python3.12/asyncio/unix_events.py +1500 -0
  286. package/python/lib/python3.12/asyncio/windows_events.py +901 -0
  287. package/python/lib/python3.12/asyncio/windows_utils.py +173 -0
  288. package/python/lib/python3.12/base64.py +586 -0
  289. package/python/lib/python3.12/bdb.py +920 -0
  290. package/python/lib/python3.12/bisect.py +118 -0
  291. package/python/lib/python3.12/bz2.py +344 -0
  292. package/python/lib/python3.12/cProfile.py +195 -0
  293. package/python/lib/python3.12/calendar.py +808 -0
  294. package/python/lib/python3.12/cgi.py +1014 -0
  295. package/python/lib/python3.12/cgitb.py +332 -0
  296. package/python/lib/python3.12/chunk.py +173 -0
  297. package/python/lib/python3.12/cmd.py +401 -0
  298. package/python/lib/python3.12/code.py +324 -0
  299. package/python/lib/python3.12/codecs.py +1129 -0
  300. package/python/lib/python3.12/codeop.py +161 -0
  301. package/python/lib/python3.12/collections/__init__.py +1592 -0
  302. package/python/lib/python3.12/collections/abc.py +3 -0
  303. package/python/lib/python3.12/colorsys.py +166 -0
  304. package/python/lib/python3.12/compileall.py +469 -0
  305. package/python/lib/python3.12/concurrent/__init__.py +1 -0
  306. package/python/lib/python3.12/concurrent/futures/__init__.py +54 -0
  307. package/python/lib/python3.12/concurrent/futures/_base.py +654 -0
  308. package/python/lib/python3.12/concurrent/futures/process.py +876 -0
  309. package/python/lib/python3.12/concurrent/futures/thread.py +240 -0
  310. package/python/lib/python3.12/config-3.12-darwin/Makefile +3224 -0
  311. package/python/lib/python3.12/config-3.12-darwin/Setup +303 -0
  312. package/python/lib/python3.12/config-3.12-darwin/Setup.bootstrap +36 -0
  313. package/python/lib/python3.12/config-3.12-darwin/Setup.local +90 -0
  314. package/python/lib/python3.12/config-3.12-darwin/Setup.stdlib +183 -0
  315. package/python/lib/python3.12/config-3.12-darwin/config.c +246 -0
  316. package/python/lib/python3.12/config-3.12-darwin/config.c.in +71 -0
  317. package/python/lib/python3.12/config-3.12-darwin/install-sh +541 -0
  318. package/python/lib/python3.12/config-3.12-darwin/makesetup +353 -0
  319. package/python/lib/python3.12/config-3.12-darwin/python-config.py +76 -0
  320. package/python/lib/python3.12/config-3.12-darwin/python.o +0 -0
  321. package/python/lib/python3.12/configparser.py +1333 -0
  322. package/python/lib/python3.12/contextlib.py +800 -0
  323. package/python/lib/python3.12/contextvars.py +4 -0
  324. package/python/lib/python3.12/copy.py +292 -0
  325. package/python/lib/python3.12/copyreg.py +217 -0
  326. package/python/lib/python3.12/crypt.py +124 -0
  327. package/python/lib/python3.12/csv.py +451 -0
  328. package/python/lib/python3.12/ctypes/__init__.py +582 -0
  329. package/python/lib/python3.12/ctypes/_aix.py +327 -0
  330. package/python/lib/python3.12/ctypes/_endian.py +78 -0
  331. package/python/lib/python3.12/ctypes/macholib/README.ctypes +7 -0
  332. package/python/lib/python3.12/ctypes/macholib/__init__.py +9 -0
  333. package/python/lib/python3.12/ctypes/macholib/dyld.py +165 -0
  334. package/python/lib/python3.12/ctypes/macholib/dylib.py +42 -0
  335. package/python/lib/python3.12/ctypes/macholib/fetch_macholib +2 -0
  336. package/python/lib/python3.12/ctypes/macholib/fetch_macholib.bat +1 -0
  337. package/python/lib/python3.12/ctypes/macholib/framework.py +42 -0
  338. package/python/lib/python3.12/ctypes/util.py +379 -0
  339. package/python/lib/python3.12/ctypes/wintypes.py +202 -0
  340. package/python/lib/python3.12/curses/__init__.py +101 -0
  341. package/python/lib/python3.12/curses/ascii.py +99 -0
  342. package/python/lib/python3.12/curses/has_key.py +192 -0
  343. package/python/lib/python3.12/curses/panel.py +6 -0
  344. package/python/lib/python3.12/curses/textpad.py +204 -0
  345. package/python/lib/python3.12/dataclasses.py +1588 -0
  346. package/python/lib/python3.12/datetime.py +9 -0
  347. package/python/lib/python3.12/dbm/__init__.py +190 -0
  348. package/python/lib/python3.12/dbm/dumb.py +317 -0
  349. package/python/lib/python3.12/dbm/gnu.py +3 -0
  350. package/python/lib/python3.12/dbm/ndbm.py +3 -0
  351. package/python/lib/python3.12/decimal.py +108 -0
  352. package/python/lib/python3.12/difflib.py +2056 -0
  353. package/python/lib/python3.12/dis.py +805 -0
  354. package/python/lib/python3.12/doctest.py +2845 -0
  355. package/python/lib/python3.12/email/__init__.py +61 -0
  356. package/python/lib/python3.12/email/_encoded_words.py +233 -0
  357. package/python/lib/python3.12/email/_header_value_parser.py +3108 -0
  358. package/python/lib/python3.12/email/_parseaddr.py +557 -0
  359. package/python/lib/python3.12/email/_policybase.py +382 -0
  360. package/python/lib/python3.12/email/architecture.rst +216 -0
  361. package/python/lib/python3.12/email/base64mime.py +115 -0
  362. package/python/lib/python3.12/email/charset.py +398 -0
  363. package/python/lib/python3.12/email/contentmanager.py +251 -0
  364. package/python/lib/python3.12/email/encoders.py +65 -0
  365. package/python/lib/python3.12/email/errors.py +117 -0
  366. package/python/lib/python3.12/email/feedparser.py +534 -0
  367. package/python/lib/python3.12/email/generator.py +530 -0
  368. package/python/lib/python3.12/email/header.py +573 -0
  369. package/python/lib/python3.12/email/headerregistry.py +604 -0
  370. package/python/lib/python3.12/email/iterators.py +68 -0
  371. package/python/lib/python3.12/email/message.py +1215 -0
  372. package/python/lib/python3.12/email/mime/__init__.py +0 -0
  373. package/python/lib/python3.12/email/mime/application.py +37 -0
  374. package/python/lib/python3.12/email/mime/audio.py +100 -0
  375. package/python/lib/python3.12/email/mime/base.py +29 -0
  376. package/python/lib/python3.12/email/mime/image.py +152 -0
  377. package/python/lib/python3.12/email/mime/message.py +33 -0
  378. package/python/lib/python3.12/email/mime/multipart.py +47 -0
  379. package/python/lib/python3.12/email/mime/nonmultipart.py +21 -0
  380. package/python/lib/python3.12/email/mime/text.py +40 -0
  381. package/python/lib/python3.12/email/parser.py +127 -0
  382. package/python/lib/python3.12/email/policy.py +232 -0
  383. package/python/lib/python3.12/email/quoprimime.py +300 -0
  384. package/python/lib/python3.12/email/utils.py +486 -0
  385. package/python/lib/python3.12/encodings/__init__.py +174 -0
  386. package/python/lib/python3.12/encodings/aliases.py +551 -0
  387. package/python/lib/python3.12/encodings/ascii.py +50 -0
  388. package/python/lib/python3.12/encodings/base64_codec.py +55 -0
  389. package/python/lib/python3.12/encodings/big5.py +39 -0
  390. package/python/lib/python3.12/encodings/big5hkscs.py +39 -0
  391. package/python/lib/python3.12/encodings/bz2_codec.py +78 -0
  392. package/python/lib/python3.12/encodings/charmap.py +69 -0
  393. package/python/lib/python3.12/encodings/cp037.py +307 -0
  394. package/python/lib/python3.12/encodings/cp1006.py +307 -0
  395. package/python/lib/python3.12/encodings/cp1026.py +307 -0
  396. package/python/lib/python3.12/encodings/cp1125.py +698 -0
  397. package/python/lib/python3.12/encodings/cp1140.py +307 -0
  398. package/python/lib/python3.12/encodings/cp1250.py +307 -0
  399. package/python/lib/python3.12/encodings/cp1251.py +307 -0
  400. package/python/lib/python3.12/encodings/cp1252.py +307 -0
  401. package/python/lib/python3.12/encodings/cp1253.py +307 -0
  402. package/python/lib/python3.12/encodings/cp1254.py +307 -0
  403. package/python/lib/python3.12/encodings/cp1255.py +307 -0
  404. package/python/lib/python3.12/encodings/cp1256.py +307 -0
  405. package/python/lib/python3.12/encodings/cp1257.py +307 -0
  406. package/python/lib/python3.12/encodings/cp1258.py +307 -0
  407. package/python/lib/python3.12/encodings/cp273.py +307 -0
  408. package/python/lib/python3.12/encodings/cp424.py +307 -0
  409. package/python/lib/python3.12/encodings/cp437.py +698 -0
  410. package/python/lib/python3.12/encodings/cp500.py +307 -0
  411. package/python/lib/python3.12/encodings/cp720.py +309 -0
  412. package/python/lib/python3.12/encodings/cp737.py +698 -0
  413. package/python/lib/python3.12/encodings/cp775.py +697 -0
  414. package/python/lib/python3.12/encodings/cp850.py +698 -0
  415. package/python/lib/python3.12/encodings/cp852.py +698 -0
  416. package/python/lib/python3.12/encodings/cp855.py +698 -0
  417. package/python/lib/python3.12/encodings/cp856.py +307 -0
  418. package/python/lib/python3.12/encodings/cp857.py +694 -0
  419. package/python/lib/python3.12/encodings/cp858.py +698 -0
  420. package/python/lib/python3.12/encodings/cp860.py +698 -0
  421. package/python/lib/python3.12/encodings/cp861.py +698 -0
  422. package/python/lib/python3.12/encodings/cp862.py +698 -0
  423. package/python/lib/python3.12/encodings/cp863.py +698 -0
  424. package/python/lib/python3.12/encodings/cp864.py +690 -0
  425. package/python/lib/python3.12/encodings/cp865.py +698 -0
  426. package/python/lib/python3.12/encodings/cp866.py +698 -0
  427. package/python/lib/python3.12/encodings/cp869.py +689 -0
  428. package/python/lib/python3.12/encodings/cp874.py +307 -0
  429. package/python/lib/python3.12/encodings/cp875.py +307 -0
  430. package/python/lib/python3.12/encodings/cp932.py +39 -0
  431. package/python/lib/python3.12/encodings/cp949.py +39 -0
  432. package/python/lib/python3.12/encodings/cp950.py +39 -0
  433. package/python/lib/python3.12/encodings/euc_jis_2004.py +39 -0
  434. package/python/lib/python3.12/encodings/euc_jisx0213.py +39 -0
  435. package/python/lib/python3.12/encodings/euc_jp.py +39 -0
  436. package/python/lib/python3.12/encodings/euc_kr.py +39 -0
  437. package/python/lib/python3.12/encodings/gb18030.py +39 -0
  438. package/python/lib/python3.12/encodings/gb2312.py +39 -0
  439. package/python/lib/python3.12/encodings/gbk.py +39 -0
  440. package/python/lib/python3.12/encodings/hex_codec.py +55 -0
  441. package/python/lib/python3.12/encodings/hp_roman8.py +314 -0
  442. package/python/lib/python3.12/encodings/hz.py +39 -0
  443. package/python/lib/python3.12/encodings/idna.py +317 -0
  444. package/python/lib/python3.12/encodings/iso2022_jp.py +39 -0
  445. package/python/lib/python3.12/encodings/iso2022_jp_1.py +39 -0
  446. package/python/lib/python3.12/encodings/iso2022_jp_2.py +39 -0
  447. package/python/lib/python3.12/encodings/iso2022_jp_2004.py +39 -0
  448. package/python/lib/python3.12/encodings/iso2022_jp_3.py +39 -0
  449. package/python/lib/python3.12/encodings/iso2022_jp_ext.py +39 -0
  450. package/python/lib/python3.12/encodings/iso2022_kr.py +39 -0
  451. package/python/lib/python3.12/encodings/iso8859_1.py +307 -0
  452. package/python/lib/python3.12/encodings/iso8859_10.py +307 -0
  453. package/python/lib/python3.12/encodings/iso8859_11.py +307 -0
  454. package/python/lib/python3.12/encodings/iso8859_13.py +307 -0
  455. package/python/lib/python3.12/encodings/iso8859_14.py +307 -0
  456. package/python/lib/python3.12/encodings/iso8859_15.py +307 -0
  457. package/python/lib/python3.12/encodings/iso8859_16.py +307 -0
  458. package/python/lib/python3.12/encodings/iso8859_2.py +307 -0
  459. package/python/lib/python3.12/encodings/iso8859_3.py +307 -0
  460. package/python/lib/python3.12/encodings/iso8859_4.py +307 -0
  461. package/python/lib/python3.12/encodings/iso8859_5.py +307 -0
  462. package/python/lib/python3.12/encodings/iso8859_6.py +307 -0
  463. package/python/lib/python3.12/encodings/iso8859_7.py +307 -0
  464. package/python/lib/python3.12/encodings/iso8859_8.py +307 -0
  465. package/python/lib/python3.12/encodings/iso8859_9.py +307 -0
  466. package/python/lib/python3.12/encodings/johab.py +39 -0
  467. package/python/lib/python3.12/encodings/koi8_r.py +307 -0
  468. package/python/lib/python3.12/encodings/koi8_t.py +308 -0
  469. package/python/lib/python3.12/encodings/koi8_u.py +307 -0
  470. package/python/lib/python3.12/encodings/kz1048.py +307 -0
  471. package/python/lib/python3.12/encodings/latin_1.py +50 -0
  472. package/python/lib/python3.12/encodings/mac_arabic.py +698 -0
  473. package/python/lib/python3.12/encodings/mac_croatian.py +307 -0
  474. package/python/lib/python3.12/encodings/mac_cyrillic.py +307 -0
  475. package/python/lib/python3.12/encodings/mac_farsi.py +307 -0
  476. package/python/lib/python3.12/encodings/mac_greek.py +307 -0
  477. package/python/lib/python3.12/encodings/mac_iceland.py +307 -0
  478. package/python/lib/python3.12/encodings/mac_latin2.py +312 -0
  479. package/python/lib/python3.12/encodings/mac_roman.py +307 -0
  480. package/python/lib/python3.12/encodings/mac_romanian.py +307 -0
  481. package/python/lib/python3.12/encodings/mac_turkish.py +307 -0
  482. package/python/lib/python3.12/encodings/mbcs.py +47 -0
  483. package/python/lib/python3.12/encodings/oem.py +41 -0
  484. package/python/lib/python3.12/encodings/palmos.py +308 -0
  485. package/python/lib/python3.12/encodings/ptcp154.py +312 -0
  486. package/python/lib/python3.12/encodings/punycode.py +237 -0
  487. package/python/lib/python3.12/encodings/quopri_codec.py +56 -0
  488. package/python/lib/python3.12/encodings/raw_unicode_escape.py +46 -0
  489. package/python/lib/python3.12/encodings/rot_13.py +113 -0
  490. package/python/lib/python3.12/encodings/shift_jis.py +39 -0
  491. package/python/lib/python3.12/encodings/shift_jis_2004.py +39 -0
  492. package/python/lib/python3.12/encodings/shift_jisx0213.py +39 -0
  493. package/python/lib/python3.12/encodings/tis_620.py +307 -0
  494. package/python/lib/python3.12/encodings/undefined.py +49 -0
  495. package/python/lib/python3.12/encodings/unicode_escape.py +46 -0
  496. package/python/lib/python3.12/encodings/utf_16.py +155 -0
  497. package/python/lib/python3.12/encodings/utf_16_be.py +42 -0
  498. package/python/lib/python3.12/encodings/utf_16_le.py +42 -0
  499. package/python/lib/python3.12/encodings/utf_32.py +150 -0
  500. package/python/lib/python3.12/encodings/utf_32_be.py +37 -0
  501. package/python/lib/python3.12/encodings/utf_32_le.py +37 -0
  502. package/python/lib/python3.12/encodings/utf_7.py +38 -0
  503. package/python/lib/python3.12/encodings/utf_8.py +42 -0
  504. package/python/lib/python3.12/encodings/utf_8_sig.py +130 -0
  505. package/python/lib/python3.12/encodings/uu_codec.py +103 -0
  506. package/python/lib/python3.12/encodings/zlib_codec.py +77 -0
  507. package/python/lib/python3.12/ensurepip/__init__.py +291 -0
  508. package/python/lib/python3.12/ensurepip/__main__.py +5 -0
  509. package/python/lib/python3.12/ensurepip/_bundled/pip-25.0.1-py3-none-any.whl +0 -0
  510. package/python/lib/python3.12/ensurepip/_uninstall.py +31 -0
  511. package/python/lib/python3.12/enum.py +2108 -0
  512. package/python/lib/python3.12/filecmp.py +315 -0
  513. package/python/lib/python3.12/fileinput.py +442 -0
  514. package/python/lib/python3.12/fnmatch.py +185 -0
  515. package/python/lib/python3.12/fractions.py +990 -0
  516. package/python/lib/python3.12/ftplib.py +966 -0
  517. package/python/lib/python3.12/functools.py +1009 -0
  518. package/python/lib/python3.12/genericpath.py +176 -0
  519. package/python/lib/python3.12/getopt.py +215 -0
  520. package/python/lib/python3.12/getpass.py +185 -0
  521. package/python/lib/python3.12/gettext.py +646 -0
  522. package/python/lib/python3.12/glob.py +252 -0
  523. package/python/lib/python3.12/graphlib.py +250 -0
  524. package/python/lib/python3.12/gzip.py +711 -0
  525. package/python/lib/python3.12/hashlib.py +253 -0
  526. package/python/lib/python3.12/heapq.py +603 -0
  527. package/python/lib/python3.12/hmac.py +219 -0
  528. package/python/lib/python3.12/html/__init__.py +132 -0
  529. package/python/lib/python3.12/html/entities.py +2513 -0
  530. package/python/lib/python3.12/html/parser.py +535 -0
  531. package/python/lib/python3.12/http/__init__.py +200 -0
  532. package/python/lib/python3.12/http/client.py +1570 -0
  533. package/python/lib/python3.12/http/cookiejar.py +2121 -0
  534. package/python/lib/python3.12/http/cookies.py +615 -0
  535. package/python/lib/python3.12/http/server.py +1335 -0
  536. package/python/lib/python3.12/imaplib.py +1641 -0
  537. package/python/lib/python3.12/imghdr.py +180 -0
  538. package/python/lib/python3.12/importlib/__init__.py +138 -0
  539. package/python/lib/python3.12/importlib/_abc.py +39 -0
  540. package/python/lib/python3.12/importlib/_bootstrap.py +1551 -0
  541. package/python/lib/python3.12/importlib/_bootstrap_external.py +1749 -0
  542. package/python/lib/python3.12/importlib/abc.py +239 -0
  543. package/python/lib/python3.12/importlib/machinery.py +20 -0
  544. package/python/lib/python3.12/importlib/metadata/__init__.py +966 -0
  545. package/python/lib/python3.12/importlib/metadata/_adapters.py +89 -0
  546. package/python/lib/python3.12/importlib/metadata/_collections.py +30 -0
  547. package/python/lib/python3.12/importlib/metadata/_functools.py +104 -0
  548. package/python/lib/python3.12/importlib/metadata/_itertools.py +73 -0
  549. package/python/lib/python3.12/importlib/metadata/_meta.py +63 -0
  550. package/python/lib/python3.12/importlib/metadata/_text.py +99 -0
  551. package/python/lib/python3.12/importlib/readers.py +12 -0
  552. package/python/lib/python3.12/importlib/resources/__init__.py +38 -0
  553. package/python/lib/python3.12/importlib/resources/_adapters.py +168 -0
  554. package/python/lib/python3.12/importlib/resources/_common.py +208 -0
  555. package/python/lib/python3.12/importlib/resources/_itertools.py +38 -0
  556. package/python/lib/python3.12/importlib/resources/_legacy.py +98 -0
  557. package/python/lib/python3.12/importlib/resources/abc.py +173 -0
  558. package/python/lib/python3.12/importlib/resources/readers.py +146 -0
  559. package/python/lib/python3.12/importlib/resources/simple.py +106 -0
  560. package/python/lib/python3.12/importlib/simple.py +14 -0
  561. package/python/lib/python3.12/importlib/util.py +270 -0
  562. package/python/lib/python3.12/inspect.py +3433 -0
  563. package/python/lib/python3.12/io.py +99 -0
  564. package/python/lib/python3.12/ipaddress.py +2430 -0
  565. package/python/lib/python3.12/json/__init__.py +359 -0
  566. package/python/lib/python3.12/json/decoder.py +357 -0
  567. package/python/lib/python3.12/json/encoder.py +443 -0
  568. package/python/lib/python3.12/json/scanner.py +73 -0
  569. package/python/lib/python3.12/json/tool.py +85 -0
  570. package/python/lib/python3.12/keyword.py +64 -0
  571. package/python/lib/python3.12/lib-dynload/.empty +0 -0
  572. package/python/lib/python3.12/lib-dynload/_crypt.cpython-312-darwin.so +0 -0
  573. package/python/lib/python3.12/lib-dynload/_dbm.cpython-312-darwin.so +0 -0
  574. package/python/lib/python3.12/linecache.py +185 -0
  575. package/python/lib/python3.12/locale.py +1779 -0
  576. package/python/lib/python3.12/logging/__init__.py +2345 -0
  577. package/python/lib/python3.12/logging/config.py +1078 -0
  578. package/python/lib/python3.12/logging/handlers.py +1624 -0
  579. package/python/lib/python3.12/lzma.py +356 -0
  580. package/python/lib/python3.12/mailbox.py +2153 -0
  581. package/python/lib/python3.12/mailcap.py +302 -0
  582. package/python/lib/python3.12/mimetypes.py +656 -0
  583. package/python/lib/python3.12/modulefinder.py +666 -0
  584. package/python/lib/python3.12/multiprocessing/__init__.py +37 -0
  585. package/python/lib/python3.12/multiprocessing/connection.py +1178 -0
  586. package/python/lib/python3.12/multiprocessing/context.py +377 -0
  587. package/python/lib/python3.12/multiprocessing/dummy/__init__.py +126 -0
  588. package/python/lib/python3.12/multiprocessing/dummy/connection.py +75 -0
  589. package/python/lib/python3.12/multiprocessing/forkserver.py +350 -0
  590. package/python/lib/python3.12/multiprocessing/heap.py +337 -0
  591. package/python/lib/python3.12/multiprocessing/managers.py +1387 -0
  592. package/python/lib/python3.12/multiprocessing/pool.py +957 -0
  593. package/python/lib/python3.12/multiprocessing/popen_fork.py +83 -0
  594. package/python/lib/python3.12/multiprocessing/popen_forkserver.py +74 -0
  595. package/python/lib/python3.12/multiprocessing/popen_spawn_posix.py +72 -0
  596. package/python/lib/python3.12/multiprocessing/popen_spawn_win32.py +145 -0
  597. package/python/lib/python3.12/multiprocessing/process.py +439 -0
  598. package/python/lib/python3.12/multiprocessing/queues.py +401 -0
  599. package/python/lib/python3.12/multiprocessing/reduction.py +281 -0
  600. package/python/lib/python3.12/multiprocessing/resource_sharer.py +154 -0
  601. package/python/lib/python3.12/multiprocessing/resource_tracker.py +294 -0
  602. package/python/lib/python3.12/multiprocessing/shared_memory.py +534 -0
  603. package/python/lib/python3.12/multiprocessing/sharedctypes.py +240 -0
  604. package/python/lib/python3.12/multiprocessing/spawn.py +307 -0
  605. package/python/lib/python3.12/multiprocessing/synchronize.py +404 -0
  606. package/python/lib/python3.12/multiprocessing/util.py +494 -0
  607. package/python/lib/python3.12/netrc.py +192 -0
  608. package/python/lib/python3.12/nntplib.py +1093 -0
  609. package/python/lib/python3.12/ntpath.py +869 -0
  610. package/python/lib/python3.12/nturl2path.py +69 -0
  611. package/python/lib/python3.12/numbers.py +418 -0
  612. package/python/lib/python3.12/opcode.py +493 -0
  613. package/python/lib/python3.12/operator.py +467 -0
  614. package/python/lib/python3.12/optparse.py +1681 -0
  615. package/python/lib/python3.12/os.py +1159 -0
  616. package/python/lib/python3.12/pathlib.py +1435 -0
  617. package/python/lib/python3.12/pdb.py +1987 -0
  618. package/python/lib/python3.12/pickle.py +1866 -0
  619. package/python/lib/python3.12/pickletools.py +2904 -0
  620. package/python/lib/python3.12/pipes.py +250 -0
  621. package/python/lib/python3.12/pkgutil.py +529 -0
  622. package/python/lib/python3.12/platform.py +1359 -0
  623. package/python/lib/python3.12/plistlib.py +920 -0
  624. package/python/lib/python3.12/poplib.py +478 -0
  625. package/python/lib/python3.12/posixpath.py +577 -0
  626. package/python/lib/python3.12/pprint.py +658 -0
  627. package/python/lib/python3.12/profile.py +615 -0
  628. package/python/lib/python3.12/pstats.py +778 -0
  629. package/python/lib/python3.12/pty.py +211 -0
  630. package/python/lib/python3.12/py_compile.py +212 -0
  631. package/python/lib/python3.12/pyclbr.py +314 -0
  632. package/python/lib/python3.12/pydoc.py +2950 -0
  633. package/python/lib/python3.12/pydoc_data/__init__.py +0 -0
  634. package/python/lib/python3.12/pydoc_data/_pydoc.css +112 -0
  635. package/python/lib/python3.12/pydoc_data/topics.py +12500 -0
  636. package/python/lib/python3.12/queue.py +326 -0
  637. package/python/lib/python3.12/quopri.py +237 -0
  638. package/python/lib/python3.12/random.py +996 -0
  639. package/python/lib/python3.12/re/__init__.py +385 -0
  640. package/python/lib/python3.12/re/_casefix.py +106 -0
  641. package/python/lib/python3.12/re/_compiler.py +770 -0
  642. package/python/lib/python3.12/re/_constants.py +220 -0
  643. package/python/lib/python3.12/re/_parser.py +1080 -0
  644. package/python/lib/python3.12/reprlib.py +214 -0
  645. package/python/lib/python3.12/rlcompleter.py +219 -0
  646. package/python/lib/python3.12/runpy.py +319 -0
  647. package/python/lib/python3.12/sched.py +167 -0
  648. package/python/lib/python3.12/secrets.py +71 -0
  649. package/python/lib/python3.12/selectors.py +623 -0
  650. package/python/lib/python3.12/shelve.py +243 -0
  651. package/python/lib/python3.12/shlex.py +345 -0
  652. package/python/lib/python3.12/shutil.py +1566 -0
  653. package/python/lib/python3.12/signal.py +94 -0
  654. package/python/lib/python3.12/site-packages/README.txt +2 -0
  655. package/python/lib/python3.12/site-packages/pip/__init__.py +13 -0
  656. package/python/lib/python3.12/site-packages/pip/__main__.py +24 -0
  657. package/python/lib/python3.12/site-packages/pip/__pip-runner__.py +50 -0
  658. package/python/lib/python3.12/site-packages/pip/_internal/__init__.py +18 -0
  659. package/python/lib/python3.12/site-packages/pip/_internal/build_env.py +606 -0
  660. package/python/lib/python3.12/site-packages/pip/_internal/cache.py +291 -0
  661. package/python/lib/python3.12/site-packages/pip/_internal/cli/__init__.py +3 -0
  662. package/python/lib/python3.12/site-packages/pip/_internal/cli/autocompletion.py +184 -0
  663. package/python/lib/python3.12/site-packages/pip/_internal/cli/base_command.py +264 -0
  664. package/python/lib/python3.12/site-packages/pip/_internal/cli/cmdoptions.py +1298 -0
  665. package/python/lib/python3.12/site-packages/pip/_internal/cli/command_context.py +28 -0
  666. package/python/lib/python3.12/site-packages/pip/_internal/cli/index_command.py +212 -0
  667. package/python/lib/python3.12/site-packages/pip/_internal/cli/main.py +85 -0
  668. package/python/lib/python3.12/site-packages/pip/_internal/cli/main_parser.py +136 -0
  669. package/python/lib/python3.12/site-packages/pip/_internal/cli/parser.py +358 -0
  670. package/python/lib/python3.12/site-packages/pip/_internal/cli/progress_bars.py +153 -0
  671. package/python/lib/python3.12/site-packages/pip/_internal/cli/req_command.py +472 -0
  672. package/python/lib/python3.12/site-packages/pip/_internal/cli/spinners.py +235 -0
  673. package/python/lib/python3.12/site-packages/pip/_internal/cli/status_codes.py +6 -0
  674. package/python/lib/python3.12/site-packages/pip/_internal/commands/__init__.py +139 -0
  675. package/python/lib/python3.12/site-packages/pip/_internal/commands/cache.py +255 -0
  676. package/python/lib/python3.12/site-packages/pip/_internal/commands/check.py +66 -0
  677. package/python/lib/python3.12/site-packages/pip/_internal/commands/completion.py +136 -0
  678. package/python/lib/python3.12/site-packages/pip/_internal/commands/configuration.py +288 -0
  679. package/python/lib/python3.12/site-packages/pip/_internal/commands/debug.py +196 -0
  680. package/python/lib/python3.12/site-packages/pip/_internal/commands/download.py +146 -0
  681. package/python/lib/python3.12/site-packages/pip/_internal/commands/freeze.py +107 -0
  682. package/python/lib/python3.12/site-packages/pip/_internal/commands/hash.py +58 -0
  683. package/python/lib/python3.12/site-packages/pip/_internal/commands/help.py +40 -0
  684. package/python/lib/python3.12/site-packages/pip/_internal/commands/index.py +166 -0
  685. package/python/lib/python3.12/site-packages/pip/_internal/commands/inspect.py +92 -0
  686. package/python/lib/python3.12/site-packages/pip/_internal/commands/install.py +904 -0
  687. package/python/lib/python3.12/site-packages/pip/_internal/commands/list.py +403 -0
  688. package/python/lib/python3.12/site-packages/pip/_internal/commands/lock.py +175 -0
  689. package/python/lib/python3.12/site-packages/pip/_internal/commands/search.py +178 -0
  690. package/python/lib/python3.12/site-packages/pip/_internal/commands/show.py +231 -0
  691. package/python/lib/python3.12/site-packages/pip/_internal/commands/uninstall.py +113 -0
  692. package/python/lib/python3.12/site-packages/pip/_internal/commands/wheel.py +171 -0
  693. package/python/lib/python3.12/site-packages/pip/_internal/configuration.py +396 -0
  694. package/python/lib/python3.12/site-packages/pip/_internal/distributions/__init__.py +21 -0
  695. package/python/lib/python3.12/site-packages/pip/_internal/distributions/base.py +55 -0
  696. package/python/lib/python3.12/site-packages/pip/_internal/distributions/installed.py +33 -0
  697. package/python/lib/python3.12/site-packages/pip/_internal/distributions/sdist.py +164 -0
  698. package/python/lib/python3.12/site-packages/pip/_internal/distributions/wheel.py +44 -0
  699. package/python/lib/python3.12/site-packages/pip/_internal/exceptions.py +971 -0
  700. package/python/lib/python3.12/site-packages/pip/_internal/index/__init__.py +1 -0
  701. package/python/lib/python3.12/site-packages/pip/_internal/index/collector.py +488 -0
  702. package/python/lib/python3.12/site-packages/pip/_internal/index/package_finder.py +1113 -0
  703. package/python/lib/python3.12/site-packages/pip/_internal/index/sources.py +287 -0
  704. package/python/lib/python3.12/site-packages/pip/_internal/locations/__init__.py +438 -0
  705. package/python/lib/python3.12/site-packages/pip/_internal/locations/_distutils.py +173 -0
  706. package/python/lib/python3.12/site-packages/pip/_internal/locations/_sysconfig.py +218 -0
  707. package/python/lib/python3.12/site-packages/pip/_internal/locations/base.py +82 -0
  708. package/python/lib/python3.12/site-packages/pip/_internal/main.py +12 -0
  709. package/python/lib/python3.12/site-packages/pip/_internal/metadata/__init__.py +169 -0
  710. package/python/lib/python3.12/site-packages/pip/_internal/metadata/_json.py +87 -0
  711. package/python/lib/python3.12/site-packages/pip/_internal/metadata/base.py +685 -0
  712. package/python/lib/python3.12/site-packages/pip/_internal/metadata/importlib/__init__.py +6 -0
  713. package/python/lib/python3.12/site-packages/pip/_internal/metadata/importlib/_compat.py +87 -0
  714. package/python/lib/python3.12/site-packages/pip/_internal/metadata/importlib/_dists.py +235 -0
  715. package/python/lib/python3.12/site-packages/pip/_internal/metadata/importlib/_envs.py +143 -0
  716. package/python/lib/python3.12/site-packages/pip/_internal/metadata/pkg_resources.py +298 -0
  717. package/python/lib/python3.12/site-packages/pip/_internal/models/__init__.py +1 -0
  718. package/python/lib/python3.12/site-packages/pip/_internal/models/candidate.py +23 -0
  719. package/python/lib/python3.12/site-packages/pip/_internal/models/direct_url.py +42 -0
  720. package/python/lib/python3.12/site-packages/pip/_internal/models/format_control.py +78 -0
  721. package/python/lib/python3.12/site-packages/pip/_internal/models/index.py +28 -0
  722. package/python/lib/python3.12/site-packages/pip/_internal/models/installation_report.py +57 -0
  723. package/python/lib/python3.12/site-packages/pip/_internal/models/link.py +617 -0
  724. package/python/lib/python3.12/site-packages/pip/_internal/models/release_control.py +91 -0
  725. package/python/lib/python3.12/site-packages/pip/_internal/models/scheme.py +23 -0
  726. package/python/lib/python3.12/site-packages/pip/_internal/models/search_scope.py +124 -0
  727. package/python/lib/python3.12/site-packages/pip/_internal/models/selection_prefs.py +36 -0
  728. package/python/lib/python3.12/site-packages/pip/_internal/models/target_python.py +122 -0
  729. package/python/lib/python3.12/site-packages/pip/_internal/models/wheel.py +80 -0
  730. package/python/lib/python3.12/site-packages/pip/_internal/network/__init__.py +1 -0
  731. package/python/lib/python3.12/site-packages/pip/_internal/network/auth.py +570 -0
  732. package/python/lib/python3.12/site-packages/pip/_internal/network/cache.py +128 -0
  733. package/python/lib/python3.12/site-packages/pip/_internal/network/download.py +340 -0
  734. package/python/lib/python3.12/site-packages/pip/_internal/network/lazy_wheel.py +215 -0
  735. package/python/lib/python3.12/site-packages/pip/_internal/network/session.py +537 -0
  736. package/python/lib/python3.12/site-packages/pip/_internal/network/utils.py +98 -0
  737. package/python/lib/python3.12/site-packages/pip/_internal/network/xmlrpc.py +61 -0
  738. package/python/lib/python3.12/site-packages/pip/_internal/operations/__init__.py +0 -0
  739. package/python/lib/python3.12/site-packages/pip/_internal/operations/build/__init__.py +0 -0
  740. package/python/lib/python3.12/site-packages/pip/_internal/operations/build/build_tracker.py +140 -0
  741. package/python/lib/python3.12/site-packages/pip/_internal/operations/build/metadata.py +38 -0
  742. package/python/lib/python3.12/site-packages/pip/_internal/operations/build/metadata_editable.py +41 -0
  743. package/python/lib/python3.12/site-packages/pip/_internal/operations/build/wheel.py +38 -0
  744. package/python/lib/python3.12/site-packages/pip/_internal/operations/build/wheel_editable.py +47 -0
  745. package/python/lib/python3.12/site-packages/pip/_internal/operations/check.py +175 -0
  746. package/python/lib/python3.12/site-packages/pip/_internal/operations/freeze.py +259 -0
  747. package/python/lib/python3.12/site-packages/pip/_internal/operations/install/__init__.py +1 -0
  748. package/python/lib/python3.12/site-packages/pip/_internal/operations/install/wheel.py +759 -0
  749. package/python/lib/python3.12/site-packages/pip/_internal/operations/prepare.py +751 -0
  750. package/python/lib/python3.12/site-packages/pip/_internal/pyproject.py +123 -0
  751. package/python/lib/python3.12/site-packages/pip/_internal/req/__init__.py +103 -0
  752. package/python/lib/python3.12/site-packages/pip/_internal/req/constructors.py +677 -0
  753. package/python/lib/python3.12/site-packages/pip/_internal/req/pep723.py +41 -0
  754. package/python/lib/python3.12/site-packages/pip/_internal/req/req_dependency_group.py +86 -0
  755. package/python/lib/python3.12/site-packages/pip/_internal/req/req_file.py +622 -0
  756. package/python/lib/python3.12/site-packages/pip/_internal/req/req_install.py +838 -0
  757. package/python/lib/python3.12/site-packages/pip/_internal/req/req_set.py +81 -0
  758. package/python/lib/python3.12/site-packages/pip/_internal/req/req_uninstall.py +639 -0
  759. package/python/lib/python3.12/site-packages/pip/_internal/resolution/__init__.py +0 -0
  760. package/python/lib/python3.12/site-packages/pip/_internal/resolution/base.py +20 -0
  761. package/python/lib/python3.12/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
  762. package/python/lib/python3.12/site-packages/pip/_internal/resolution/legacy/resolver.py +598 -0
  763. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
  764. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/base.py +164 -0
  765. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/candidates.py +599 -0
  766. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/factory.py +914 -0
  767. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +166 -0
  768. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/provider.py +306 -0
  769. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/reporter.py +98 -0
  770. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/requirements.py +251 -0
  771. package/python/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/resolver.py +332 -0
  772. package/python/lib/python3.12/site-packages/pip/_internal/self_outdated_check.py +246 -0
  773. package/python/lib/python3.12/site-packages/pip/_internal/utils/__init__.py +0 -0
  774. package/python/lib/python3.12/site-packages/pip/_internal/utils/_jaraco_text.py +109 -0
  775. package/python/lib/python3.12/site-packages/pip/_internal/utils/_log.py +38 -0
  776. package/python/lib/python3.12/site-packages/pip/_internal/utils/appdirs.py +52 -0
  777. package/python/lib/python3.12/site-packages/pip/_internal/utils/compat.py +85 -0
  778. package/python/lib/python3.12/site-packages/pip/_internal/utils/compatibility_tags.py +201 -0
  779. package/python/lib/python3.12/site-packages/pip/_internal/utils/datetime.py +28 -0
  780. package/python/lib/python3.12/site-packages/pip/_internal/utils/deprecation.py +139 -0
  781. package/python/lib/python3.12/site-packages/pip/_internal/utils/direct_url_helpers.py +92 -0
  782. package/python/lib/python3.12/site-packages/pip/_internal/utils/egg_link.py +81 -0
  783. package/python/lib/python3.12/site-packages/pip/_internal/utils/entrypoints.py +88 -0
  784. package/python/lib/python3.12/site-packages/pip/_internal/utils/filesystem.py +201 -0
  785. package/python/lib/python3.12/site-packages/pip/_internal/utils/filetypes.py +24 -0
  786. package/python/lib/python3.12/site-packages/pip/_internal/utils/glibc.py +102 -0
  787. package/python/lib/python3.12/site-packages/pip/_internal/utils/hashes.py +150 -0
  788. package/python/lib/python3.12/site-packages/pip/_internal/utils/logging.py +396 -0
  789. package/python/lib/python3.12/site-packages/pip/_internal/utils/misc.py +771 -0
  790. package/python/lib/python3.12/site-packages/pip/_internal/utils/packaging.py +44 -0
  791. package/python/lib/python3.12/site-packages/pip/_internal/utils/pylock.py +283 -0
  792. package/python/lib/python3.12/site-packages/pip/_internal/utils/retry.py +45 -0
  793. package/python/lib/python3.12/site-packages/pip/_internal/utils/subprocess.py +248 -0
  794. package/python/lib/python3.12/site-packages/pip/_internal/utils/temp_dir.py +294 -0
  795. package/python/lib/python3.12/site-packages/pip/_internal/utils/unpacking.py +381 -0
  796. package/python/lib/python3.12/site-packages/pip/_internal/utils/urls.py +55 -0
  797. package/python/lib/python3.12/site-packages/pip/_internal/utils/virtualenv.py +105 -0
  798. package/python/lib/python3.12/site-packages/pip/_internal/utils/wheel.py +132 -0
  799. package/python/lib/python3.12/site-packages/pip/_internal/vcs/__init__.py +15 -0
  800. package/python/lib/python3.12/site-packages/pip/_internal/vcs/bazaar.py +130 -0
  801. package/python/lib/python3.12/site-packages/pip/_internal/vcs/git.py +571 -0
  802. package/python/lib/python3.12/site-packages/pip/_internal/vcs/mercurial.py +186 -0
  803. package/python/lib/python3.12/site-packages/pip/_internal/vcs/subversion.py +335 -0
  804. package/python/lib/python3.12/site-packages/pip/_internal/vcs/versioncontrol.py +695 -0
  805. package/python/lib/python3.12/site-packages/pip/_internal/wheel_builder.py +261 -0
  806. package/python/lib/python3.12/site-packages/pip/_vendor/README.rst +178 -0
  807. package/python/lib/python3.12/site-packages/pip/_vendor/__init__.py +117 -0
  808. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/LICENSE.txt +13 -0
  809. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__init__.py +32 -0
  810. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/_cmd.py +70 -0
  811. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/adapter.py +167 -0
  812. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/cache.py +75 -0
  813. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +8 -0
  814. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +145 -0
  815. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +48 -0
  816. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/controller.py +511 -0
  817. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/filewrapper.py +121 -0
  818. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/heuristics.py +157 -0
  819. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/py.typed +0 -0
  820. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/serialize.py +146 -0
  821. package/python/lib/python3.12/site-packages/pip/_vendor/cachecontrol/wrapper.py +43 -0
  822. package/python/lib/python3.12/site-packages/pip/_vendor/certifi/LICENSE +20 -0
  823. package/python/lib/python3.12/site-packages/pip/_vendor/certifi/__init__.py +4 -0
  824. package/python/lib/python3.12/site-packages/pip/_vendor/certifi/__main__.py +12 -0
  825. package/python/lib/python3.12/site-packages/pip/_vendor/certifi/cacert.pem +4494 -0
  826. package/python/lib/python3.12/site-packages/pip/_vendor/certifi/core.py +83 -0
  827. package/python/lib/python3.12/site-packages/pip/_vendor/certifi/py.typed +0 -0
  828. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/LICENSE.txt +284 -0
  829. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/__init__.py +33 -0
  830. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/compat.py +1137 -0
  831. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/resources.py +358 -0
  832. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/scripts.py +447 -0
  833. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/t32.exe +0 -0
  834. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/t64-arm.exe +0 -0
  835. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/t64.exe +0 -0
  836. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/util.py +1984 -0
  837. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/w32.exe +0 -0
  838. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/w64-arm.exe +0 -0
  839. package/python/lib/python3.12/site-packages/pip/_vendor/distlib/w64.exe +0 -0
  840. package/python/lib/python3.12/site-packages/pip/_vendor/distro/LICENSE +202 -0
  841. package/python/lib/python3.12/site-packages/pip/_vendor/distro/__init__.py +54 -0
  842. package/python/lib/python3.12/site-packages/pip/_vendor/distro/__main__.py +4 -0
  843. package/python/lib/python3.12/site-packages/pip/_vendor/distro/distro.py +1403 -0
  844. package/python/lib/python3.12/site-packages/pip/_vendor/distro/py.typed +0 -0
  845. package/python/lib/python3.12/site-packages/pip/_vendor/idna/LICENSE.md +31 -0
  846. package/python/lib/python3.12/site-packages/pip/_vendor/idna/__init__.py +45 -0
  847. package/python/lib/python3.12/site-packages/pip/_vendor/idna/codec.py +122 -0
  848. package/python/lib/python3.12/site-packages/pip/_vendor/idna/compat.py +15 -0
  849. package/python/lib/python3.12/site-packages/pip/_vendor/idna/core.py +437 -0
  850. package/python/lib/python3.12/site-packages/pip/_vendor/idna/idnadata.py +4309 -0
  851. package/python/lib/python3.12/site-packages/pip/_vendor/idna/intranges.py +57 -0
  852. package/python/lib/python3.12/site-packages/pip/_vendor/idna/package_data.py +1 -0
  853. package/python/lib/python3.12/site-packages/pip/_vendor/idna/py.typed +0 -0
  854. package/python/lib/python3.12/site-packages/pip/_vendor/idna/uts46data.py +8841 -0
  855. package/python/lib/python3.12/site-packages/pip/_vendor/msgpack/COPYING +14 -0
  856. package/python/lib/python3.12/site-packages/pip/_vendor/msgpack/__init__.py +55 -0
  857. package/python/lib/python3.12/site-packages/pip/_vendor/msgpack/exceptions.py +48 -0
  858. package/python/lib/python3.12/site-packages/pip/_vendor/msgpack/ext.py +170 -0
  859. package/python/lib/python3.12/site-packages/pip/_vendor/msgpack/fallback.py +929 -0
  860. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/LICENSE +3 -0
  861. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/LICENSE.APACHE +177 -0
  862. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/LICENSE.BSD +23 -0
  863. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/__init__.py +15 -0
  864. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/_elffile.py +108 -0
  865. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/_manylinux.py +262 -0
  866. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/_musllinux.py +85 -0
  867. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/_parser.py +393 -0
  868. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/_structures.py +33 -0
  869. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/_tokenizer.py +193 -0
  870. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/dependency_groups.py +302 -0
  871. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/direct_url.py +325 -0
  872. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/errors.py +94 -0
  873. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/licenses/__init__.py +186 -0
  874. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/licenses/_spdx.py +799 -0
  875. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/markers.py +492 -0
  876. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/metadata.py +964 -0
  877. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/py.typed +0 -0
  878. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/pylock.py +905 -0
  879. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/requirements.py +129 -0
  880. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/specifiers.py +1943 -0
  881. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/tags.py +932 -0
  882. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/utils.py +296 -0
  883. package/python/lib/python3.12/site-packages/pip/_vendor/packaging/version.py +1231 -0
  884. package/python/lib/python3.12/site-packages/pip/_vendor/pkg_resources/LICENSE +17 -0
  885. package/python/lib/python3.12/site-packages/pip/_vendor/pkg_resources/__init__.py +3676 -0
  886. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/LICENSE +21 -0
  887. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/__init__.py +631 -0
  888. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/__main__.py +55 -0
  889. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/android.py +249 -0
  890. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/api.py +299 -0
  891. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/macos.py +146 -0
  892. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/py.typed +0 -0
  893. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/unix.py +272 -0
  894. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/version.py +34 -0
  895. package/python/lib/python3.12/site-packages/pip/_vendor/platformdirs/windows.py +278 -0
  896. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/LICENSE +25 -0
  897. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/__init__.py +82 -0
  898. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/__main__.py +17 -0
  899. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/console.py +70 -0
  900. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/filter.py +70 -0
  901. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/filters/__init__.py +940 -0
  902. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/formatter.py +129 -0
  903. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__init__.py +157 -0
  904. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/_mapping.py +23 -0
  905. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/lexer.py +963 -0
  906. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/__init__.py +362 -0
  907. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/_mapping.py +602 -0
  908. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/python.py +1201 -0
  909. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/modeline.py +43 -0
  910. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/plugin.py +72 -0
  911. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/regexopt.py +91 -0
  912. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/scanner.py +104 -0
  913. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/sphinxext.py +247 -0
  914. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/style.py +203 -0
  915. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/styles/__init__.py +61 -0
  916. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/styles/_mapping.py +54 -0
  917. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/token.py +214 -0
  918. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/unistring.py +153 -0
  919. package/python/lib/python3.12/site-packages/pip/_vendor/pygments/util.py +324 -0
  920. package/python/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/LICENSE +21 -0
  921. package/python/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/__init__.py +31 -0
  922. package/python/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_impl.py +410 -0
  923. package/python/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py +21 -0
  924. package/python/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py +389 -0
  925. package/python/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/py.typed +0 -0
  926. package/python/lib/python3.12/site-packages/pip/_vendor/requests/LICENSE +175 -0
  927. package/python/lib/python3.12/site-packages/pip/_vendor/requests/__init__.py +178 -0
  928. package/python/lib/python3.12/site-packages/pip/_vendor/requests/__version__.py +14 -0
  929. package/python/lib/python3.12/site-packages/pip/_vendor/requests/_internal_utils.py +51 -0
  930. package/python/lib/python3.12/site-packages/pip/_vendor/requests/adapters.py +697 -0
  931. package/python/lib/python3.12/site-packages/pip/_vendor/requests/api.py +157 -0
  932. package/python/lib/python3.12/site-packages/pip/_vendor/requests/auth.py +314 -0
  933. package/python/lib/python3.12/site-packages/pip/_vendor/requests/certs.py +18 -0
  934. package/python/lib/python3.12/site-packages/pip/_vendor/requests/compat.py +90 -0
  935. package/python/lib/python3.12/site-packages/pip/_vendor/requests/cookies.py +561 -0
  936. package/python/lib/python3.12/site-packages/pip/_vendor/requests/exceptions.py +152 -0
  937. package/python/lib/python3.12/site-packages/pip/_vendor/requests/help.py +124 -0
  938. package/python/lib/python3.12/site-packages/pip/_vendor/requests/hooks.py +34 -0
  939. package/python/lib/python3.12/site-packages/pip/_vendor/requests/models.py +1041 -0
  940. package/python/lib/python3.12/site-packages/pip/_vendor/requests/packages.py +25 -0
  941. package/python/lib/python3.12/site-packages/pip/_vendor/requests/sessions.py +834 -0
  942. package/python/lib/python3.12/site-packages/pip/_vendor/requests/status_codes.py +128 -0
  943. package/python/lib/python3.12/site-packages/pip/_vendor/requests/structures.py +99 -0
  944. package/python/lib/python3.12/site-packages/pip/_vendor/requests/utils.py +1083 -0
  945. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/LICENSE +13 -0
  946. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/__init__.py +27 -0
  947. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/providers.py +196 -0
  948. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/py.typed +0 -0
  949. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/reporters.py +55 -0
  950. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/resolvers/__init__.py +27 -0
  951. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/resolvers/abstract.py +47 -0
  952. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/resolvers/criterion.py +48 -0
  953. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/resolvers/exceptions.py +57 -0
  954. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py +627 -0
  955. package/python/lib/python3.12/site-packages/pip/_vendor/resolvelib/structs.py +209 -0
  956. package/python/lib/python3.12/site-packages/pip/_vendor/rich/LICENSE +19 -0
  957. package/python/lib/python3.12/site-packages/pip/_vendor/rich/__init__.py +177 -0
  958. package/python/lib/python3.12/site-packages/pip/_vendor/rich/__main__.py +245 -0
  959. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_cell_widths.py +454 -0
  960. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_emoji_codes.py +3610 -0
  961. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_emoji_replace.py +32 -0
  962. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_export_format.py +76 -0
  963. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_extension.py +10 -0
  964. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_fileno.py +24 -0
  965. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_inspect.py +268 -0
  966. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_log_render.py +94 -0
  967. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_loop.py +43 -0
  968. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_null_file.py +69 -0
  969. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_palettes.py +309 -0
  970. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_pick.py +17 -0
  971. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_ratio.py +153 -0
  972. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_spinners.py +482 -0
  973. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_stack.py +16 -0
  974. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_timer.py +19 -0
  975. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_win32_console.py +661 -0
  976. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_windows.py +71 -0
  977. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_windows_renderer.py +56 -0
  978. package/python/lib/python3.12/site-packages/pip/_vendor/rich/_wrap.py +93 -0
  979. package/python/lib/python3.12/site-packages/pip/_vendor/rich/abc.py +33 -0
  980. package/python/lib/python3.12/site-packages/pip/_vendor/rich/align.py +306 -0
  981. package/python/lib/python3.12/site-packages/pip/_vendor/rich/ansi.py +241 -0
  982. package/python/lib/python3.12/site-packages/pip/_vendor/rich/bar.py +93 -0
  983. package/python/lib/python3.12/site-packages/pip/_vendor/rich/box.py +474 -0
  984. package/python/lib/python3.12/site-packages/pip/_vendor/rich/cells.py +174 -0
  985. package/python/lib/python3.12/site-packages/pip/_vendor/rich/color.py +621 -0
  986. package/python/lib/python3.12/site-packages/pip/_vendor/rich/color_triplet.py +38 -0
  987. package/python/lib/python3.12/site-packages/pip/_vendor/rich/columns.py +187 -0
  988. package/python/lib/python3.12/site-packages/pip/_vendor/rich/console.py +2680 -0
  989. package/python/lib/python3.12/site-packages/pip/_vendor/rich/constrain.py +37 -0
  990. package/python/lib/python3.12/site-packages/pip/_vendor/rich/containers.py +167 -0
  991. package/python/lib/python3.12/site-packages/pip/_vendor/rich/control.py +219 -0
  992. package/python/lib/python3.12/site-packages/pip/_vendor/rich/default_styles.py +193 -0
  993. package/python/lib/python3.12/site-packages/pip/_vendor/rich/diagnose.py +39 -0
  994. package/python/lib/python3.12/site-packages/pip/_vendor/rich/emoji.py +91 -0
  995. package/python/lib/python3.12/site-packages/pip/_vendor/rich/errors.py +34 -0
  996. package/python/lib/python3.12/site-packages/pip/_vendor/rich/file_proxy.py +57 -0
  997. package/python/lib/python3.12/site-packages/pip/_vendor/rich/filesize.py +88 -0
  998. package/python/lib/python3.12/site-packages/pip/_vendor/rich/highlighter.py +232 -0
  999. package/python/lib/python3.12/site-packages/pip/_vendor/rich/json.py +139 -0
  1000. package/python/lib/python3.12/site-packages/pip/_vendor/rich/jupyter.py +101 -0
  1001. package/python/lib/python3.12/site-packages/pip/_vendor/rich/layout.py +442 -0
  1002. package/python/lib/python3.12/site-packages/pip/_vendor/rich/live.py +400 -0
  1003. package/python/lib/python3.12/site-packages/pip/_vendor/rich/live_render.py +106 -0
  1004. package/python/lib/python3.12/site-packages/pip/_vendor/rich/logging.py +297 -0
  1005. package/python/lib/python3.12/site-packages/pip/_vendor/rich/markup.py +251 -0
  1006. package/python/lib/python3.12/site-packages/pip/_vendor/rich/measure.py +151 -0
  1007. package/python/lib/python3.12/site-packages/pip/_vendor/rich/padding.py +141 -0
  1008. package/python/lib/python3.12/site-packages/pip/_vendor/rich/pager.py +34 -0
  1009. package/python/lib/python3.12/site-packages/pip/_vendor/rich/palette.py +100 -0
  1010. package/python/lib/python3.12/site-packages/pip/_vendor/rich/panel.py +317 -0
  1011. package/python/lib/python3.12/site-packages/pip/_vendor/rich/pretty.py +1016 -0
  1012. package/python/lib/python3.12/site-packages/pip/_vendor/rich/progress.py +1715 -0
  1013. package/python/lib/python3.12/site-packages/pip/_vendor/rich/progress_bar.py +223 -0
  1014. package/python/lib/python3.12/site-packages/pip/_vendor/rich/prompt.py +400 -0
  1015. package/python/lib/python3.12/site-packages/pip/_vendor/rich/protocol.py +42 -0
  1016. package/python/lib/python3.12/site-packages/pip/_vendor/rich/py.typed +0 -0
  1017. package/python/lib/python3.12/site-packages/pip/_vendor/rich/region.py +10 -0
  1018. package/python/lib/python3.12/site-packages/pip/_vendor/rich/repr.py +149 -0
  1019. package/python/lib/python3.12/site-packages/pip/_vendor/rich/rule.py +130 -0
  1020. package/python/lib/python3.12/site-packages/pip/_vendor/rich/scope.py +86 -0
  1021. package/python/lib/python3.12/site-packages/pip/_vendor/rich/screen.py +54 -0
  1022. package/python/lib/python3.12/site-packages/pip/_vendor/rich/segment.py +752 -0
  1023. package/python/lib/python3.12/site-packages/pip/_vendor/rich/spinner.py +132 -0
  1024. package/python/lib/python3.12/site-packages/pip/_vendor/rich/status.py +131 -0
  1025. package/python/lib/python3.12/site-packages/pip/_vendor/rich/style.py +792 -0
  1026. package/python/lib/python3.12/site-packages/pip/_vendor/rich/styled.py +42 -0
  1027. package/python/lib/python3.12/site-packages/pip/_vendor/rich/syntax.py +985 -0
  1028. package/python/lib/python3.12/site-packages/pip/_vendor/rich/table.py +1006 -0
  1029. package/python/lib/python3.12/site-packages/pip/_vendor/rich/terminal_theme.py +153 -0
  1030. package/python/lib/python3.12/site-packages/pip/_vendor/rich/text.py +1361 -0
  1031. package/python/lib/python3.12/site-packages/pip/_vendor/rich/theme.py +115 -0
  1032. package/python/lib/python3.12/site-packages/pip/_vendor/rich/themes.py +5 -0
  1033. package/python/lib/python3.12/site-packages/pip/_vendor/rich/traceback.py +899 -0
  1034. package/python/lib/python3.12/site-packages/pip/_vendor/rich/tree.py +257 -0
  1035. package/python/lib/python3.12/site-packages/pip/_vendor/tomli/LICENSE +21 -0
  1036. package/python/lib/python3.12/site-packages/pip/_vendor/tomli/__init__.py +8 -0
  1037. package/python/lib/python3.12/site-packages/pip/_vendor/tomli/_parser.py +788 -0
  1038. package/python/lib/python3.12/site-packages/pip/_vendor/tomli/_re.py +115 -0
  1039. package/python/lib/python3.12/site-packages/pip/_vendor/tomli/_types.py +10 -0
  1040. package/python/lib/python3.12/site-packages/pip/_vendor/tomli/py.typed +1 -0
  1041. package/python/lib/python3.12/site-packages/pip/_vendor/tomli_w/LICENSE +21 -0
  1042. package/python/lib/python3.12/site-packages/pip/_vendor/tomli_w/__init__.py +4 -0
  1043. package/python/lib/python3.12/site-packages/pip/_vendor/tomli_w/_writer.py +229 -0
  1044. package/python/lib/python3.12/site-packages/pip/_vendor/tomli_w/py.typed +1 -0
  1045. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/LICENSE +21 -0
  1046. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/__init__.py +36 -0
  1047. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/_api.py +341 -0
  1048. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/_macos.py +571 -0
  1049. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/_openssl.py +68 -0
  1050. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/_ssl_constants.py +31 -0
  1051. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/_windows.py +567 -0
  1052. package/python/lib/python3.12/site-packages/pip/_vendor/truststore/py.typed +0 -0
  1053. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/LICENSE.txt +21 -0
  1054. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/__init__.py +211 -0
  1055. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/_base_connection.py +165 -0
  1056. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/_collections.py +487 -0
  1057. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/_request_methods.py +278 -0
  1058. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/_version.py +34 -0
  1059. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/connection.py +1099 -0
  1060. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/connectionpool.py +1178 -0
  1061. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
  1062. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/emscripten/__init__.py +17 -0
  1063. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/emscripten/connection.py +260 -0
  1064. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/emscripten/emscripten_fetch_worker.js +110 -0
  1065. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/emscripten/fetch.py +726 -0
  1066. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/emscripten/request.py +22 -0
  1067. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/emscripten/response.py +277 -0
  1068. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +564 -0
  1069. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/socks.py +228 -0
  1070. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/exceptions.py +335 -0
  1071. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/fields.py +341 -0
  1072. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/filepost.py +89 -0
  1073. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/http2/__init__.py +53 -0
  1074. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/http2/connection.py +356 -0
  1075. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/http2/probe.py +87 -0
  1076. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/poolmanager.py +651 -0
  1077. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/py.typed +2 -0
  1078. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/response.py +1474 -0
  1079. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__init__.py +42 -0
  1080. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/connection.py +137 -0
  1081. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/proxy.py +43 -0
  1082. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/request.py +254 -0
  1083. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/response.py +101 -0
  1084. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/retry.py +549 -0
  1085. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/ssl_.py +527 -0
  1086. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +159 -0
  1087. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/ssltransport.py +271 -0
  1088. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/timeout.py +275 -0
  1089. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/url.py +469 -0
  1090. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/util.py +42 -0
  1091. package/python/lib/python3.12/site-packages/pip/_vendor/urllib3/util/wait.py +124 -0
  1092. package/python/lib/python3.12/site-packages/pip/_vendor/vendor.txt +18 -0
  1093. package/python/lib/python3.12/site-packages/pip/py.typed +4 -0
  1094. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/INSTALLER +1 -0
  1095. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/METADATA +109 -0
  1096. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/RECORD +866 -0
  1097. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/REQUESTED +0 -0
  1098. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/WHEEL +4 -0
  1099. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/direct_url.json +1 -0
  1100. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/entry_points.txt +4 -0
  1101. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/AUTHORS.txt +868 -0
  1102. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/LICENSE.txt +20 -0
  1103. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/cachecontrol/LICENSE.txt +13 -0
  1104. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/certifi/LICENSE +20 -0
  1105. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/distlib/LICENSE.txt +284 -0
  1106. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/distro/LICENSE +202 -0
  1107. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/idna/LICENSE.md +31 -0
  1108. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/msgpack/COPYING +14 -0
  1109. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/packaging/LICENSE +3 -0
  1110. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/packaging/LICENSE.APACHE +177 -0
  1111. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/packaging/LICENSE.BSD +23 -0
  1112. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/pkg_resources/LICENSE +17 -0
  1113. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/platformdirs/LICENSE +21 -0
  1114. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/pygments/LICENSE +25 -0
  1115. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/pyproject_hooks/LICENSE +21 -0
  1116. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/requests/LICENSE +175 -0
  1117. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/resolvelib/LICENSE +13 -0
  1118. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/rich/LICENSE +19 -0
  1119. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/tomli/LICENSE +21 -0
  1120. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/tomli_w/LICENSE +21 -0
  1121. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/truststore/LICENSE +21 -0
  1122. package/python/lib/python3.12/site-packages/pip-26.1.2.dist-info/licenses/src/pip/_vendor/urllib3/LICENSE.txt +21 -0
  1123. package/python/lib/python3.12/site.py +693 -0
  1124. package/python/lib/python3.12/smtplib.py +1109 -0
  1125. package/python/lib/python3.12/sndhdr.py +271 -0
  1126. package/python/lib/python3.12/socket.py +983 -0
  1127. package/python/lib/python3.12/socketserver.py +863 -0
  1128. package/python/lib/python3.12/sqlite3/__init__.py +70 -0
  1129. package/python/lib/python3.12/sqlite3/__main__.py +127 -0
  1130. package/python/lib/python3.12/sqlite3/dbapi2.py +108 -0
  1131. package/python/lib/python3.12/sqlite3/dump.py +89 -0
  1132. package/python/lib/python3.12/sre_compile.py +7 -0
  1133. package/python/lib/python3.12/sre_constants.py +7 -0
  1134. package/python/lib/python3.12/sre_parse.py +7 -0
  1135. package/python/lib/python3.12/ssl.py +1488 -0
  1136. package/python/lib/python3.12/stat.py +195 -0
  1137. package/python/lib/python3.12/statistics.py +1454 -0
  1138. package/python/lib/python3.12/string.py +309 -0
  1139. package/python/lib/python3.12/stringprep.py +272 -0
  1140. package/python/lib/python3.12/struct.py +15 -0
  1141. package/python/lib/python3.12/subprocess.py +2216 -0
  1142. package/python/lib/python3.12/sunau.py +533 -0
  1143. package/python/lib/python3.12/symtable.py +362 -0
  1144. package/python/lib/python3.12/sysconfig.py +894 -0
  1145. package/python/lib/python3.12/tabnanny.py +340 -0
  1146. package/python/lib/python3.12/tarfile.py +3031 -0
  1147. package/python/lib/python3.12/telnetlib.py +680 -0
  1148. package/python/lib/python3.12/tempfile.py +956 -0
  1149. package/python/lib/python3.12/textwrap.py +491 -0
  1150. package/python/lib/python3.12/this.py +28 -0
  1151. package/python/lib/python3.12/threading.py +1708 -0
  1152. package/python/lib/python3.12/timeit.py +381 -0
  1153. package/python/lib/python3.12/token.py +143 -0
  1154. package/python/lib/python3.12/tokenize.py +594 -0
  1155. package/python/lib/python3.12/tomllib/__init__.py +10 -0
  1156. package/python/lib/python3.12/tomllib/_parser.py +691 -0
  1157. package/python/lib/python3.12/tomllib/_re.py +107 -0
  1158. package/python/lib/python3.12/tomllib/_types.py +10 -0
  1159. package/python/lib/python3.12/trace.py +748 -0
  1160. package/python/lib/python3.12/traceback.py +1187 -0
  1161. package/python/lib/python3.12/tracemalloc.py +560 -0
  1162. package/python/lib/python3.12/tty.py +73 -0
  1163. package/python/lib/python3.12/turtle.py +4207 -0
  1164. package/python/lib/python3.12/types.py +333 -0
  1165. package/python/lib/python3.12/typing.py +3494 -0
  1166. package/python/lib/python3.12/unittest/__init__.py +85 -0
  1167. package/python/lib/python3.12/unittest/__main__.py +18 -0
  1168. package/python/lib/python3.12/unittest/_log.py +86 -0
  1169. package/python/lib/python3.12/unittest/async_case.py +143 -0
  1170. package/python/lib/python3.12/unittest/case.py +1456 -0
  1171. package/python/lib/python3.12/unittest/loader.py +497 -0
  1172. package/python/lib/python3.12/unittest/main.py +291 -0
  1173. package/python/lib/python3.12/unittest/mock.py +3054 -0
  1174. package/python/lib/python3.12/unittest/result.py +256 -0
  1175. package/python/lib/python3.12/unittest/runner.py +292 -0
  1176. package/python/lib/python3.12/unittest/signals.py +71 -0
  1177. package/python/lib/python3.12/unittest/suite.py +379 -0
  1178. package/python/lib/python3.12/unittest/util.py +170 -0
  1179. package/python/lib/python3.12/urllib/__init__.py +0 -0
  1180. package/python/lib/python3.12/urllib/error.py +74 -0
  1181. package/python/lib/python3.12/urllib/parse.py +1262 -0
  1182. package/python/lib/python3.12/urllib/request.py +2816 -0
  1183. package/python/lib/python3.12/urllib/response.py +84 -0
  1184. package/python/lib/python3.12/urllib/robotparser.py +275 -0
  1185. package/python/lib/python3.12/uu.py +216 -0
  1186. package/python/lib/python3.12/uuid.py +793 -0
  1187. package/python/lib/python3.12/venv/__init__.py +608 -0
  1188. package/python/lib/python3.12/venv/__main__.py +10 -0
  1189. package/python/lib/python3.12/venv/scripts/common/Activate.ps1 +247 -0
  1190. package/python/lib/python3.12/venv/scripts/common/activate +76 -0
  1191. package/python/lib/python3.12/venv/scripts/posix/activate.csh +27 -0
  1192. package/python/lib/python3.12/venv/scripts/posix/activate.fish +69 -0
  1193. package/python/lib/python3.12/warnings.py +598 -0
  1194. package/python/lib/python3.12/wave.py +653 -0
  1195. package/python/lib/python3.12/weakref.py +674 -0
  1196. package/python/lib/python3.12/webbrowser.py +689 -0
  1197. package/python/lib/python3.12/wsgiref/__init__.py +25 -0
  1198. package/python/lib/python3.12/wsgiref/handlers.py +573 -0
  1199. package/python/lib/python3.12/wsgiref/headers.py +192 -0
  1200. package/python/lib/python3.12/wsgiref/simple_server.py +165 -0
  1201. package/python/lib/python3.12/wsgiref/types.py +54 -0
  1202. package/python/lib/python3.12/wsgiref/util.py +159 -0
  1203. package/python/lib/python3.12/wsgiref/validate.py +438 -0
  1204. package/python/lib/python3.12/xdrlib.py +242 -0
  1205. package/python/lib/python3.12/xml/__init__.py +20 -0
  1206. package/python/lib/python3.12/xml/dom/NodeFilter.py +27 -0
  1207. package/python/lib/python3.12/xml/dom/__init__.py +140 -0
  1208. package/python/lib/python3.12/xml/dom/domreg.py +99 -0
  1209. package/python/lib/python3.12/xml/dom/expatbuilder.py +962 -0
  1210. package/python/lib/python3.12/xml/dom/minicompat.py +109 -0
  1211. package/python/lib/python3.12/xml/dom/minidom.py +2008 -0
  1212. package/python/lib/python3.12/xml/dom/pulldom.py +336 -0
  1213. package/python/lib/python3.12/xml/dom/xmlbuilder.py +389 -0
  1214. package/python/lib/python3.12/xml/etree/ElementInclude.py +186 -0
  1215. package/python/lib/python3.12/xml/etree/ElementPath.py +423 -0
  1216. package/python/lib/python3.12/xml/etree/ElementTree.py +2085 -0
  1217. package/python/lib/python3.12/xml/etree/__init__.py +33 -0
  1218. package/python/lib/python3.12/xml/etree/cElementTree.py +3 -0
  1219. package/python/lib/python3.12/xml/parsers/__init__.py +8 -0
  1220. package/python/lib/python3.12/xml/parsers/expat.py +8 -0
  1221. package/python/lib/python3.12/xml/sax/__init__.py +94 -0
  1222. package/python/lib/python3.12/xml/sax/_exceptions.py +127 -0
  1223. package/python/lib/python3.12/xml/sax/expatreader.py +454 -0
  1224. package/python/lib/python3.12/xml/sax/handler.py +387 -0
  1225. package/python/lib/python3.12/xml/sax/saxutils.py +369 -0
  1226. package/python/lib/python3.12/xml/sax/xmlreader.py +378 -0
  1227. package/python/lib/python3.12/xmlrpc/__init__.py +1 -0
  1228. package/python/lib/python3.12/xmlrpc/client.py +1529 -0
  1229. package/python/lib/python3.12/xmlrpc/server.py +1002 -0
  1230. package/python/lib/python3.12/zipapp.py +206 -0
  1231. package/python/lib/python3.12/zipfile/__init__.py +2340 -0
  1232. package/python/lib/python3.12/zipfile/__main__.py +4 -0
  1233. package/python/lib/python3.12/zipfile/_path/__init__.py +412 -0
  1234. package/python/lib/python3.12/zipfile/_path/glob.py +53 -0
  1235. package/python/lib/python3.12/zipimport.py +712 -0
  1236. package/python/lib/python3.12/zoneinfo/__init__.py +31 -0
  1237. package/python/lib/python3.12/zoneinfo/_common.py +164 -0
  1238. package/python/lib/python3.12/zoneinfo/_tzpath.py +181 -0
  1239. package/python/lib/python3.12/zoneinfo/_zoneinfo.py +772 -0
@@ -0,0 +1,1078 @@
1
+ # Copyright 2001-2023 by Vinay Sajip. All Rights Reserved.
2
+ #
3
+ # Permission to use, copy, modify, and distribute this software and its
4
+ # documentation for any purpose and without fee is hereby granted,
5
+ # provided that the above copyright notice appear in all copies and that
6
+ # both that copyright notice and this permission notice appear in
7
+ # supporting documentation, and that the name of Vinay Sajip
8
+ # not be used in advertising or publicity pertaining to distribution
9
+ # of the software without specific, written prior permission.
10
+ # VINAY SAJIP DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
11
+ # ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL
12
+ # VINAY SAJIP BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
13
+ # ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
14
+ # IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
15
+ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16
+
17
+ """
18
+ Configuration functions for the logging package for Python. The core package
19
+ is based on PEP 282 and comments thereto in comp.lang.python, and influenced
20
+ by Apache's log4j system.
21
+
22
+ Copyright (C) 2001-2022 Vinay Sajip. All Rights Reserved.
23
+
24
+ To use, simply 'import logging' and log away!
25
+ """
26
+
27
+ import errno
28
+ import functools
29
+ import io
30
+ import logging
31
+ import logging.handlers
32
+ import os
33
+ import queue
34
+ import re
35
+ import struct
36
+ import threading
37
+ import traceback
38
+
39
+ from socketserver import ThreadingTCPServer, StreamRequestHandler
40
+
41
+
42
+ DEFAULT_LOGGING_CONFIG_PORT = 9030
43
+
44
+ RESET_ERROR = errno.ECONNRESET
45
+
46
+ #
47
+ # The following code implements a socket listener for on-the-fly
48
+ # reconfiguration of logging.
49
+ #
50
+ # _listener holds the server object doing the listening
51
+ _listener = None
52
+
53
+ def fileConfig(fname, defaults=None, disable_existing_loggers=True, encoding=None):
54
+ """
55
+ Read the logging configuration from a ConfigParser-format file.
56
+
57
+ This can be called several times from an application, allowing an end user
58
+ the ability to select from various pre-canned configurations (if the
59
+ developer provides a mechanism to present the choices and load the chosen
60
+ configuration).
61
+ """
62
+ import configparser
63
+
64
+ if isinstance(fname, str):
65
+ if not os.path.exists(fname):
66
+ raise FileNotFoundError(f"{fname} doesn't exist")
67
+ elif not os.path.getsize(fname):
68
+ raise RuntimeError(f'{fname} is an empty file')
69
+
70
+ if isinstance(fname, configparser.RawConfigParser):
71
+ cp = fname
72
+ else:
73
+ try:
74
+ cp = configparser.ConfigParser(defaults)
75
+ if hasattr(fname, 'readline'):
76
+ cp.read_file(fname)
77
+ else:
78
+ encoding = io.text_encoding(encoding)
79
+ cp.read(fname, encoding=encoding)
80
+ except configparser.ParsingError as e:
81
+ raise RuntimeError(f'{fname} is invalid: {e}')
82
+
83
+ formatters = _create_formatters(cp)
84
+
85
+ # critical section
86
+ logging._acquireLock()
87
+ try:
88
+ _clearExistingHandlers()
89
+
90
+ # Handlers add themselves to logging._handlers
91
+ handlers = _install_handlers(cp, formatters)
92
+ _install_loggers(cp, handlers, disable_existing_loggers)
93
+ finally:
94
+ logging._releaseLock()
95
+
96
+
97
+ def _resolve(name):
98
+ """Resolve a dotted name to a global object."""
99
+ name = name.split('.')
100
+ used = name.pop(0)
101
+ found = __import__(used)
102
+ for n in name:
103
+ used = used + '.' + n
104
+ try:
105
+ found = getattr(found, n)
106
+ except AttributeError:
107
+ __import__(used)
108
+ found = getattr(found, n)
109
+ return found
110
+
111
+ def _strip_spaces(alist):
112
+ return map(str.strip, alist)
113
+
114
+ def _create_formatters(cp):
115
+ """Create and return formatters"""
116
+ flist = cp["formatters"]["keys"]
117
+ if not len(flist):
118
+ return {}
119
+ flist = flist.split(",")
120
+ flist = _strip_spaces(flist)
121
+ formatters = {}
122
+ for form in flist:
123
+ sectname = "formatter_%s" % form
124
+ fs = cp.get(sectname, "format", raw=True, fallback=None)
125
+ dfs = cp.get(sectname, "datefmt", raw=True, fallback=None)
126
+ stl = cp.get(sectname, "style", raw=True, fallback='%')
127
+ defaults = cp.get(sectname, "defaults", raw=True, fallback=None)
128
+
129
+ c = logging.Formatter
130
+ class_name = cp[sectname].get("class")
131
+ if class_name:
132
+ c = _resolve(class_name)
133
+
134
+ if defaults is not None:
135
+ defaults = eval(defaults, vars(logging))
136
+ f = c(fs, dfs, stl, defaults=defaults)
137
+ else:
138
+ f = c(fs, dfs, stl)
139
+ formatters[form] = f
140
+ return formatters
141
+
142
+
143
+ def _install_handlers(cp, formatters):
144
+ """Install and return handlers"""
145
+ hlist = cp["handlers"]["keys"]
146
+ if not len(hlist):
147
+ return {}
148
+ hlist = hlist.split(",")
149
+ hlist = _strip_spaces(hlist)
150
+ handlers = {}
151
+ fixups = [] #for inter-handler references
152
+ for hand in hlist:
153
+ section = cp["handler_%s" % hand]
154
+ klass = section["class"]
155
+ fmt = section.get("formatter", "")
156
+ try:
157
+ klass = eval(klass, vars(logging))
158
+ except (AttributeError, NameError):
159
+ klass = _resolve(klass)
160
+ args = section.get("args", '()')
161
+ args = eval(args, vars(logging))
162
+ kwargs = section.get("kwargs", '{}')
163
+ kwargs = eval(kwargs, vars(logging))
164
+ h = klass(*args, **kwargs)
165
+ h.name = hand
166
+ if "level" in section:
167
+ level = section["level"]
168
+ h.setLevel(level)
169
+ if len(fmt):
170
+ h.setFormatter(formatters[fmt])
171
+ if issubclass(klass, logging.handlers.MemoryHandler):
172
+ target = section.get("target", "")
173
+ if len(target): #the target handler may not be loaded yet, so keep for later...
174
+ fixups.append((h, target))
175
+ handlers[hand] = h
176
+ #now all handlers are loaded, fixup inter-handler references...
177
+ for h, t in fixups:
178
+ h.setTarget(handlers[t])
179
+ return handlers
180
+
181
+ def _handle_existing_loggers(existing, child_loggers, disable_existing):
182
+ """
183
+ When (re)configuring logging, handle loggers which were in the previous
184
+ configuration but are not in the new configuration. There's no point
185
+ deleting them as other threads may continue to hold references to them;
186
+ and by disabling them, you stop them doing any logging.
187
+
188
+ However, don't disable children of named loggers, as that's probably not
189
+ what was intended by the user. Also, allow existing loggers to NOT be
190
+ disabled if disable_existing is false.
191
+ """
192
+ root = logging.root
193
+ for log in existing:
194
+ logger = root.manager.loggerDict[log]
195
+ if log in child_loggers:
196
+ if not isinstance(logger, logging.PlaceHolder):
197
+ logger.setLevel(logging.NOTSET)
198
+ logger.handlers = []
199
+ logger.propagate = True
200
+ else:
201
+ logger.disabled = disable_existing
202
+
203
+ def _install_loggers(cp, handlers, disable_existing):
204
+ """Create and install loggers"""
205
+
206
+ # configure the root first
207
+ llist = cp["loggers"]["keys"]
208
+ llist = llist.split(",")
209
+ llist = list(_strip_spaces(llist))
210
+ llist.remove("root")
211
+ section = cp["logger_root"]
212
+ root = logging.root
213
+ log = root
214
+ if "level" in section:
215
+ level = section["level"]
216
+ log.setLevel(level)
217
+ for h in root.handlers[:]:
218
+ root.removeHandler(h)
219
+ hlist = section["handlers"]
220
+ if len(hlist):
221
+ hlist = hlist.split(",")
222
+ hlist = _strip_spaces(hlist)
223
+ for hand in hlist:
224
+ log.addHandler(handlers[hand])
225
+
226
+ #and now the others...
227
+ #we don't want to lose the existing loggers,
228
+ #since other threads may have pointers to them.
229
+ #existing is set to contain all existing loggers,
230
+ #and as we go through the new configuration we
231
+ #remove any which are configured. At the end,
232
+ #what's left in existing is the set of loggers
233
+ #which were in the previous configuration but
234
+ #which are not in the new configuration.
235
+ existing = list(root.manager.loggerDict.keys())
236
+ #The list needs to be sorted so that we can
237
+ #avoid disabling child loggers of explicitly
238
+ #named loggers. With a sorted list it is easier
239
+ #to find the child loggers.
240
+ existing.sort()
241
+ #We'll keep the list of existing loggers
242
+ #which are children of named loggers here...
243
+ child_loggers = []
244
+ #now set up the new ones...
245
+ for log in llist:
246
+ section = cp["logger_%s" % log]
247
+ qn = section["qualname"]
248
+ propagate = section.getint("propagate", fallback=1)
249
+ logger = logging.getLogger(qn)
250
+ if qn in existing:
251
+ i = existing.index(qn) + 1 # start with the entry after qn
252
+ prefixed = qn + "."
253
+ pflen = len(prefixed)
254
+ num_existing = len(existing)
255
+ while i < num_existing:
256
+ if existing[i][:pflen] == prefixed:
257
+ child_loggers.append(existing[i])
258
+ i += 1
259
+ existing.remove(qn)
260
+ if "level" in section:
261
+ level = section["level"]
262
+ logger.setLevel(level)
263
+ for h in logger.handlers[:]:
264
+ logger.removeHandler(h)
265
+ logger.propagate = propagate
266
+ logger.disabled = 0
267
+ hlist = section["handlers"]
268
+ if len(hlist):
269
+ hlist = hlist.split(",")
270
+ hlist = _strip_spaces(hlist)
271
+ for hand in hlist:
272
+ logger.addHandler(handlers[hand])
273
+
274
+ #Disable any old loggers. There's no point deleting
275
+ #them as other threads may continue to hold references
276
+ #and by disabling them, you stop them doing any logging.
277
+ #However, don't disable children of named loggers, as that's
278
+ #probably not what was intended by the user.
279
+ #for log in existing:
280
+ # logger = root.manager.loggerDict[log]
281
+ # if log in child_loggers:
282
+ # logger.level = logging.NOTSET
283
+ # logger.handlers = []
284
+ # logger.propagate = 1
285
+ # elif disable_existing_loggers:
286
+ # logger.disabled = 1
287
+ _handle_existing_loggers(existing, child_loggers, disable_existing)
288
+
289
+
290
+ def _clearExistingHandlers():
291
+ """Clear and close existing handlers"""
292
+ logging._handlers.clear()
293
+ logging.shutdown(logging._handlerList[:])
294
+ del logging._handlerList[:]
295
+
296
+
297
+ IDENTIFIER = re.compile('^[a-z_][a-z0-9_]*$', re.I)
298
+
299
+
300
+ def valid_ident(s):
301
+ m = IDENTIFIER.match(s)
302
+ if not m:
303
+ raise ValueError('Not a valid Python identifier: %r' % s)
304
+ return True
305
+
306
+
307
+ class ConvertingMixin(object):
308
+ """For ConvertingXXX's, this mixin class provides common functions"""
309
+
310
+ def convert_with_key(self, key, value, replace=True):
311
+ result = self.configurator.convert(value)
312
+ #If the converted value is different, save for next time
313
+ if value is not result:
314
+ if replace:
315
+ self[key] = result
316
+ if type(result) in (ConvertingDict, ConvertingList,
317
+ ConvertingTuple):
318
+ result.parent = self
319
+ result.key = key
320
+ return result
321
+
322
+ def convert(self, value):
323
+ result = self.configurator.convert(value)
324
+ if value is not result:
325
+ if type(result) in (ConvertingDict, ConvertingList,
326
+ ConvertingTuple):
327
+ result.parent = self
328
+ return result
329
+
330
+
331
+ # The ConvertingXXX classes are wrappers around standard Python containers,
332
+ # and they serve to convert any suitable values in the container. The
333
+ # conversion converts base dicts, lists and tuples to their wrapped
334
+ # equivalents, whereas strings which match a conversion format are converted
335
+ # appropriately.
336
+ #
337
+ # Each wrapper should have a configurator attribute holding the actual
338
+ # configurator to use for conversion.
339
+
340
+ class ConvertingDict(dict, ConvertingMixin):
341
+ """A converting dictionary wrapper."""
342
+
343
+ def __getitem__(self, key):
344
+ value = dict.__getitem__(self, key)
345
+ return self.convert_with_key(key, value)
346
+
347
+ def get(self, key, default=None):
348
+ value = dict.get(self, key, default)
349
+ return self.convert_with_key(key, value)
350
+
351
+ def pop(self, key, default=None):
352
+ value = dict.pop(self, key, default)
353
+ return self.convert_with_key(key, value, replace=False)
354
+
355
+ class ConvertingList(list, ConvertingMixin):
356
+ """A converting list wrapper."""
357
+ def __getitem__(self, key):
358
+ value = list.__getitem__(self, key)
359
+ return self.convert_with_key(key, value)
360
+
361
+ def pop(self, idx=-1):
362
+ value = list.pop(self, idx)
363
+ return self.convert(value)
364
+
365
+ class ConvertingTuple(tuple, ConvertingMixin):
366
+ """A converting tuple wrapper."""
367
+ def __getitem__(self, key):
368
+ value = tuple.__getitem__(self, key)
369
+ # Can't replace a tuple entry.
370
+ return self.convert_with_key(key, value, replace=False)
371
+
372
+ class BaseConfigurator(object):
373
+ """
374
+ The configurator base class which defines some useful defaults.
375
+ """
376
+
377
+ CONVERT_PATTERN = re.compile(r'^(?P<prefix>[a-z]+)://(?P<suffix>.*)$')
378
+
379
+ WORD_PATTERN = re.compile(r'^\s*(\w+)\s*')
380
+ DOT_PATTERN = re.compile(r'^\.\s*(\w+)\s*')
381
+ INDEX_PATTERN = re.compile(r'^\[\s*(\w+)\s*\]\s*')
382
+ DIGIT_PATTERN = re.compile(r'^\d+$')
383
+
384
+ value_converters = {
385
+ 'ext' : 'ext_convert',
386
+ 'cfg' : 'cfg_convert',
387
+ }
388
+
389
+ # We might want to use a different one, e.g. importlib
390
+ importer = staticmethod(__import__)
391
+
392
+ def __init__(self, config):
393
+ self.config = ConvertingDict(config)
394
+ self.config.configurator = self
395
+
396
+ def resolve(self, s):
397
+ """
398
+ Resolve strings to objects using standard import and attribute
399
+ syntax.
400
+ """
401
+ name = s.split('.')
402
+ used = name.pop(0)
403
+ try:
404
+ found = self.importer(used)
405
+ for frag in name:
406
+ used += '.' + frag
407
+ try:
408
+ found = getattr(found, frag)
409
+ except AttributeError:
410
+ self.importer(used)
411
+ found = getattr(found, frag)
412
+ return found
413
+ except ImportError as e:
414
+ v = ValueError('Cannot resolve %r: %s' % (s, e))
415
+ raise v from e
416
+
417
+ def ext_convert(self, value):
418
+ """Default converter for the ext:// protocol."""
419
+ return self.resolve(value)
420
+
421
+ def cfg_convert(self, value):
422
+ """Default converter for the cfg:// protocol."""
423
+ rest = value
424
+ m = self.WORD_PATTERN.match(rest)
425
+ if m is None:
426
+ raise ValueError("Unable to convert %r" % value)
427
+ else:
428
+ rest = rest[m.end():]
429
+ d = self.config[m.groups()[0]]
430
+ #print d, rest
431
+ while rest:
432
+ m = self.DOT_PATTERN.match(rest)
433
+ if m:
434
+ d = d[m.groups()[0]]
435
+ else:
436
+ m = self.INDEX_PATTERN.match(rest)
437
+ if m:
438
+ idx = m.groups()[0]
439
+ if not self.DIGIT_PATTERN.match(idx):
440
+ d = d[idx]
441
+ else:
442
+ try:
443
+ n = int(idx) # try as number first (most likely)
444
+ d = d[n]
445
+ except TypeError:
446
+ d = d[idx]
447
+ if m:
448
+ rest = rest[m.end():]
449
+ else:
450
+ raise ValueError('Unable to convert '
451
+ '%r at %r' % (value, rest))
452
+ #rest should be empty
453
+ return d
454
+
455
+ def convert(self, value):
456
+ """
457
+ Convert values to an appropriate type. dicts, lists and tuples are
458
+ replaced by their converting alternatives. Strings are checked to
459
+ see if they have a conversion format and are converted if they do.
460
+ """
461
+ if not isinstance(value, ConvertingDict) and isinstance(value, dict):
462
+ value = ConvertingDict(value)
463
+ value.configurator = self
464
+ elif not isinstance(value, ConvertingList) and isinstance(value, list):
465
+ value = ConvertingList(value)
466
+ value.configurator = self
467
+ elif not isinstance(value, ConvertingTuple) and\
468
+ isinstance(value, tuple) and not hasattr(value, '_fields'):
469
+ value = ConvertingTuple(value)
470
+ value.configurator = self
471
+ elif isinstance(value, str): # str for py3k
472
+ m = self.CONVERT_PATTERN.match(value)
473
+ if m:
474
+ d = m.groupdict()
475
+ prefix = d['prefix']
476
+ converter = self.value_converters.get(prefix, None)
477
+ if converter:
478
+ suffix = d['suffix']
479
+ converter = getattr(self, converter)
480
+ value = converter(suffix)
481
+ return value
482
+
483
+ def configure_custom(self, config):
484
+ """Configure an object with a user-supplied factory."""
485
+ c = config.pop('()')
486
+ if not callable(c):
487
+ c = self.resolve(c)
488
+ # Check for valid identifiers
489
+ kwargs = {k: config[k] for k in config if (k != '.' and valid_ident(k))}
490
+ result = c(**kwargs)
491
+ props = config.pop('.', None)
492
+ if props:
493
+ for name, value in props.items():
494
+ setattr(result, name, value)
495
+ return result
496
+
497
+ def as_tuple(self, value):
498
+ """Utility function which converts lists to tuples."""
499
+ if isinstance(value, list):
500
+ value = tuple(value)
501
+ return value
502
+
503
+ def _is_queue_like_object(obj):
504
+ """Check that *obj* implements the Queue API."""
505
+ if isinstance(obj, (queue.Queue, queue.SimpleQueue)):
506
+ return True
507
+ # defer importing multiprocessing as much as possible
508
+ from multiprocessing.queues import Queue as MPQueue
509
+ if isinstance(obj, MPQueue):
510
+ return True
511
+ # Depending on the multiprocessing start context, we cannot create
512
+ # a multiprocessing.managers.BaseManager instance 'mm' to get the
513
+ # runtime type of mm.Queue() or mm.JoinableQueue() (see gh-119819).
514
+ #
515
+ # Since we only need an object implementing the Queue API, we only
516
+ # do a protocol check, but we do not use typing.runtime_checkable()
517
+ # and typing.Protocol to reduce import time (see gh-121723).
518
+ #
519
+ # Ideally, we would have wanted to simply use strict type checking
520
+ # instead of a protocol-based type checking since the latter does
521
+ # not check the method signatures.
522
+ #
523
+ # Note that only 'put_nowait' and 'get' are required by the logging
524
+ # queue handler and queue listener (see gh-124653) and that other
525
+ # methods are either optional or unused.
526
+ minimal_queue_interface = ['put_nowait', 'get']
527
+ return all(callable(getattr(obj, method, None))
528
+ for method in minimal_queue_interface)
529
+
530
+ class DictConfigurator(BaseConfigurator):
531
+ """
532
+ Configure logging using a dictionary-like object to describe the
533
+ configuration.
534
+ """
535
+
536
+ def configure(self):
537
+ """Do the configuration."""
538
+
539
+ config = self.config
540
+ if 'version' not in config:
541
+ raise ValueError("dictionary doesn't specify a version")
542
+ if config['version'] != 1:
543
+ raise ValueError("Unsupported version: %s" % config['version'])
544
+ incremental = config.pop('incremental', False)
545
+ EMPTY_DICT = {}
546
+ logging._acquireLock()
547
+ try:
548
+ if incremental:
549
+ handlers = config.get('handlers', EMPTY_DICT)
550
+ for name in handlers:
551
+ if name not in logging._handlers:
552
+ raise ValueError('No handler found with '
553
+ 'name %r' % name)
554
+ else:
555
+ try:
556
+ handler = logging._handlers[name]
557
+ handler_config = handlers[name]
558
+ level = handler_config.get('level', None)
559
+ if level:
560
+ handler.setLevel(logging._checkLevel(level))
561
+ except Exception as e:
562
+ raise ValueError('Unable to configure handler '
563
+ '%r' % name) from e
564
+ loggers = config.get('loggers', EMPTY_DICT)
565
+ for name in loggers:
566
+ try:
567
+ self.configure_logger(name, loggers[name], True)
568
+ except Exception as e:
569
+ raise ValueError('Unable to configure logger '
570
+ '%r' % name) from e
571
+ root = config.get('root', None)
572
+ if root:
573
+ try:
574
+ self.configure_root(root, True)
575
+ except Exception as e:
576
+ raise ValueError('Unable to configure root '
577
+ 'logger') from e
578
+ else:
579
+ disable_existing = config.pop('disable_existing_loggers', True)
580
+
581
+ _clearExistingHandlers()
582
+
583
+ # Do formatters first - they don't refer to anything else
584
+ formatters = config.get('formatters', EMPTY_DICT)
585
+ for name in formatters:
586
+ try:
587
+ formatters[name] = self.configure_formatter(
588
+ formatters[name])
589
+ except Exception as e:
590
+ raise ValueError('Unable to configure '
591
+ 'formatter %r' % name) from e
592
+ # Next, do filters - they don't refer to anything else, either
593
+ filters = config.get('filters', EMPTY_DICT)
594
+ for name in filters:
595
+ try:
596
+ filters[name] = self.configure_filter(filters[name])
597
+ except Exception as e:
598
+ raise ValueError('Unable to configure '
599
+ 'filter %r' % name) from e
600
+
601
+ # Next, do handlers - they refer to formatters and filters
602
+ # As handlers can refer to other handlers, sort the keys
603
+ # to allow a deterministic order of configuration
604
+ handlers = config.get('handlers', EMPTY_DICT)
605
+ deferred = []
606
+ for name in sorted(handlers):
607
+ try:
608
+ handler = self.configure_handler(handlers[name])
609
+ handler.name = name
610
+ handlers[name] = handler
611
+ except Exception as e:
612
+ if ' not configured yet' in str(e.__cause__):
613
+ deferred.append(name)
614
+ else:
615
+ raise ValueError('Unable to configure handler '
616
+ '%r' % name) from e
617
+
618
+ # Now do any that were deferred
619
+ for name in deferred:
620
+ try:
621
+ handler = self.configure_handler(handlers[name])
622
+ handler.name = name
623
+ handlers[name] = handler
624
+ except Exception as e:
625
+ raise ValueError('Unable to configure handler '
626
+ '%r' % name) from e
627
+
628
+ # Next, do loggers - they refer to handlers and filters
629
+
630
+ #we don't want to lose the existing loggers,
631
+ #since other threads may have pointers to them.
632
+ #existing is set to contain all existing loggers,
633
+ #and as we go through the new configuration we
634
+ #remove any which are configured. At the end,
635
+ #what's left in existing is the set of loggers
636
+ #which were in the previous configuration but
637
+ #which are not in the new configuration.
638
+ root = logging.root
639
+ existing = list(root.manager.loggerDict.keys())
640
+ #The list needs to be sorted so that we can
641
+ #avoid disabling child loggers of explicitly
642
+ #named loggers. With a sorted list it is easier
643
+ #to find the child loggers.
644
+ existing.sort()
645
+ #We'll keep the list of existing loggers
646
+ #which are children of named loggers here...
647
+ child_loggers = []
648
+ #now set up the new ones...
649
+ loggers = config.get('loggers', EMPTY_DICT)
650
+ for name in loggers:
651
+ if name in existing:
652
+ i = existing.index(name) + 1 # look after name
653
+ prefixed = name + "."
654
+ pflen = len(prefixed)
655
+ num_existing = len(existing)
656
+ while i < num_existing:
657
+ if existing[i][:pflen] == prefixed:
658
+ child_loggers.append(existing[i])
659
+ i += 1
660
+ existing.remove(name)
661
+ try:
662
+ self.configure_logger(name, loggers[name])
663
+ except Exception as e:
664
+ raise ValueError('Unable to configure logger '
665
+ '%r' % name) from e
666
+
667
+ #Disable any old loggers. There's no point deleting
668
+ #them as other threads may continue to hold references
669
+ #and by disabling them, you stop them doing any logging.
670
+ #However, don't disable children of named loggers, as that's
671
+ #probably not what was intended by the user.
672
+ #for log in existing:
673
+ # logger = root.manager.loggerDict[log]
674
+ # if log in child_loggers:
675
+ # logger.level = logging.NOTSET
676
+ # logger.handlers = []
677
+ # logger.propagate = True
678
+ # elif disable_existing:
679
+ # logger.disabled = True
680
+ _handle_existing_loggers(existing, child_loggers,
681
+ disable_existing)
682
+
683
+ # And finally, do the root logger
684
+ root = config.get('root', None)
685
+ if root:
686
+ try:
687
+ self.configure_root(root)
688
+ except Exception as e:
689
+ raise ValueError('Unable to configure root '
690
+ 'logger') from e
691
+ finally:
692
+ logging._releaseLock()
693
+
694
+ def configure_formatter(self, config):
695
+ """Configure a formatter from a dictionary."""
696
+ if '()' in config:
697
+ factory = config['()'] # for use in exception handler
698
+ try:
699
+ result = self.configure_custom(config)
700
+ except TypeError as te:
701
+ if "'format'" not in str(te):
702
+ raise
703
+ #Name of parameter changed from fmt to format.
704
+ #Retry with old name.
705
+ #This is so that code can be used with older Python versions
706
+ #(e.g. by Django)
707
+ config['fmt'] = config.pop('format')
708
+ config['()'] = factory
709
+ result = self.configure_custom(config)
710
+ else:
711
+ fmt = config.get('format', None)
712
+ dfmt = config.get('datefmt', None)
713
+ style = config.get('style', '%')
714
+ cname = config.get('class', None)
715
+ defaults = config.get('defaults', None)
716
+
717
+ if not cname:
718
+ c = logging.Formatter
719
+ else:
720
+ c = _resolve(cname)
721
+
722
+ kwargs = {}
723
+
724
+ # Add defaults only if it exists.
725
+ # Prevents TypeError in custom formatter callables that do not
726
+ # accept it.
727
+ if defaults is not None:
728
+ kwargs['defaults'] = defaults
729
+
730
+ # A TypeError would be raised if "validate" key is passed in with a formatter callable
731
+ # that does not accept "validate" as a parameter
732
+ if 'validate' in config: # if user hasn't mentioned it, the default will be fine
733
+ result = c(fmt, dfmt, style, config['validate'], **kwargs)
734
+ else:
735
+ result = c(fmt, dfmt, style, **kwargs)
736
+
737
+ return result
738
+
739
+ def configure_filter(self, config):
740
+ """Configure a filter from a dictionary."""
741
+ if '()' in config:
742
+ result = self.configure_custom(config)
743
+ else:
744
+ name = config.get('name', '')
745
+ result = logging.Filter(name)
746
+ return result
747
+
748
+ def add_filters(self, filterer, filters):
749
+ """Add filters to a filterer from a list of names."""
750
+ for f in filters:
751
+ try:
752
+ if callable(f) or callable(getattr(f, 'filter', None)):
753
+ filter_ = f
754
+ else:
755
+ filter_ = self.config['filters'][f]
756
+ filterer.addFilter(filter_)
757
+ except Exception as e:
758
+ raise ValueError('Unable to add filter %r' % f) from e
759
+
760
+ def _configure_queue_handler(self, klass, **kwargs):
761
+ if 'queue' in kwargs:
762
+ q = kwargs.pop('queue')
763
+ else:
764
+ q = queue.Queue() # unbounded
765
+
766
+ rhl = kwargs.pop('respect_handler_level', False)
767
+ lklass = kwargs.pop('listener', logging.handlers.QueueListener)
768
+ handlers = kwargs.pop('handlers', [])
769
+
770
+ listener = lklass(q, *handlers, respect_handler_level=rhl)
771
+ handler = klass(q, **kwargs)
772
+ handler.listener = listener
773
+ return handler
774
+
775
+ def configure_handler(self, config):
776
+ """Configure a handler from a dictionary."""
777
+ config_copy = dict(config) # for restoring in case of error
778
+ formatter = config.pop('formatter', None)
779
+ if formatter:
780
+ try:
781
+ formatter = self.config['formatters'][formatter]
782
+ except Exception as e:
783
+ raise ValueError('Unable to set formatter '
784
+ '%r' % formatter) from e
785
+ level = config.pop('level', None)
786
+ filters = config.pop('filters', None)
787
+ if '()' in config:
788
+ c = config.pop('()')
789
+ if not callable(c):
790
+ c = self.resolve(c)
791
+ factory = c
792
+ else:
793
+ cname = config.pop('class')
794
+ if callable(cname):
795
+ klass = cname
796
+ else:
797
+ klass = self.resolve(cname)
798
+ if issubclass(klass, logging.handlers.MemoryHandler):
799
+ if 'flushLevel' in config:
800
+ config['flushLevel'] = logging._checkLevel(config['flushLevel'])
801
+ if 'target' in config:
802
+ # Special case for handler which refers to another handler
803
+ try:
804
+ tn = config['target']
805
+ th = self.config['handlers'][tn]
806
+ if not isinstance(th, logging.Handler):
807
+ config.update(config_copy) # restore for deferred cfg
808
+ raise TypeError('target not configured yet')
809
+ config['target'] = th
810
+ except Exception as e:
811
+ raise ValueError('Unable to set target handler %r' % tn) from e
812
+ elif issubclass(klass, logging.handlers.QueueHandler):
813
+ # Another special case for handler which refers to other handlers
814
+ # if 'handlers' not in config:
815
+ # raise ValueError('No handlers specified for a QueueHandler')
816
+ if 'queue' in config:
817
+ qspec = config['queue']
818
+
819
+ if isinstance(qspec, str):
820
+ q = self.resolve(qspec)
821
+ if not callable(q):
822
+ raise TypeError('Invalid queue specifier %r' % qspec)
823
+ config['queue'] = q()
824
+ elif isinstance(qspec, dict):
825
+ if '()' not in qspec:
826
+ raise TypeError('Invalid queue specifier %r' % qspec)
827
+ config['queue'] = self.configure_custom(dict(qspec))
828
+ elif not _is_queue_like_object(qspec):
829
+ raise TypeError('Invalid queue specifier %r' % qspec)
830
+
831
+ if 'listener' in config:
832
+ lspec = config['listener']
833
+ if isinstance(lspec, type):
834
+ if not issubclass(lspec, logging.handlers.QueueListener):
835
+ raise TypeError('Invalid listener specifier %r' % lspec)
836
+ else:
837
+ if isinstance(lspec, str):
838
+ listener = self.resolve(lspec)
839
+ if isinstance(listener, type) and\
840
+ not issubclass(listener, logging.handlers.QueueListener):
841
+ raise TypeError('Invalid listener specifier %r' % lspec)
842
+ elif isinstance(lspec, dict):
843
+ if '()' not in lspec:
844
+ raise TypeError('Invalid listener specifier %r' % lspec)
845
+ listener = self.configure_custom(dict(lspec))
846
+ else:
847
+ raise TypeError('Invalid listener specifier %r' % lspec)
848
+ if not callable(listener):
849
+ raise TypeError('Invalid listener specifier %r' % lspec)
850
+ config['listener'] = listener
851
+ if 'handlers' in config:
852
+ hlist = []
853
+ try:
854
+ for hn in config['handlers']:
855
+ h = self.config['handlers'][hn]
856
+ if not isinstance(h, logging.Handler):
857
+ config.update(config_copy) # restore for deferred cfg
858
+ raise TypeError('Required handler %r '
859
+ 'is not configured yet' % hn)
860
+ hlist.append(h)
861
+ except Exception as e:
862
+ raise ValueError('Unable to set required handler %r' % hn) from e
863
+ config['handlers'] = hlist
864
+ elif issubclass(klass, logging.handlers.SMTPHandler) and\
865
+ 'mailhost' in config:
866
+ config['mailhost'] = self.as_tuple(config['mailhost'])
867
+ elif issubclass(klass, logging.handlers.SysLogHandler) and\
868
+ 'address' in config:
869
+ config['address'] = self.as_tuple(config['address'])
870
+ if issubclass(klass, logging.handlers.QueueHandler):
871
+ factory = functools.partial(self._configure_queue_handler, klass)
872
+ else:
873
+ factory = klass
874
+ kwargs = {k: config[k] for k in config if (k != '.' and valid_ident(k))}
875
+ try:
876
+ result = factory(**kwargs)
877
+ except TypeError as te:
878
+ if "'stream'" not in str(te):
879
+ raise
880
+ #The argument name changed from strm to stream
881
+ #Retry with old name.
882
+ #This is so that code can be used with older Python versions
883
+ #(e.g. by Django)
884
+ kwargs['strm'] = kwargs.pop('stream')
885
+ result = factory(**kwargs)
886
+ if formatter:
887
+ result.setFormatter(formatter)
888
+ if level is not None:
889
+ result.setLevel(logging._checkLevel(level))
890
+ if filters:
891
+ self.add_filters(result, filters)
892
+ props = config.pop('.', None)
893
+ if props:
894
+ for name, value in props.items():
895
+ setattr(result, name, value)
896
+ return result
897
+
898
+ def add_handlers(self, logger, handlers):
899
+ """Add handlers to a logger from a list of names."""
900
+ for h in handlers:
901
+ try:
902
+ logger.addHandler(self.config['handlers'][h])
903
+ except Exception as e:
904
+ raise ValueError('Unable to add handler %r' % h) from e
905
+
906
+ def common_logger_config(self, logger, config, incremental=False):
907
+ """
908
+ Perform configuration which is common to root and non-root loggers.
909
+ """
910
+ level = config.get('level', None)
911
+ if level is not None:
912
+ logger.setLevel(logging._checkLevel(level))
913
+ if not incremental:
914
+ #Remove any existing handlers
915
+ for h in logger.handlers[:]:
916
+ logger.removeHandler(h)
917
+ handlers = config.get('handlers', None)
918
+ if handlers:
919
+ self.add_handlers(logger, handlers)
920
+ filters = config.get('filters', None)
921
+ if filters:
922
+ self.add_filters(logger, filters)
923
+
924
+ def configure_logger(self, name, config, incremental=False):
925
+ """Configure a non-root logger from a dictionary."""
926
+ logger = logging.getLogger(name)
927
+ self.common_logger_config(logger, config, incremental)
928
+ logger.disabled = False
929
+ propagate = config.get('propagate', None)
930
+ if propagate is not None:
931
+ logger.propagate = propagate
932
+
933
+ def configure_root(self, config, incremental=False):
934
+ """Configure a root logger from a dictionary."""
935
+ root = logging.getLogger()
936
+ self.common_logger_config(root, config, incremental)
937
+
938
+ dictConfigClass = DictConfigurator
939
+
940
+ def dictConfig(config):
941
+ """Configure logging using a dictionary."""
942
+ dictConfigClass(config).configure()
943
+
944
+
945
+ def listen(port=DEFAULT_LOGGING_CONFIG_PORT, verify=None):
946
+ """
947
+ Start up a socket server on the specified port, and listen for new
948
+ configurations.
949
+
950
+ These will be sent as a file suitable for processing by fileConfig().
951
+ Returns a Thread object on which you can call start() to start the server,
952
+ and which you can join() when appropriate. To stop the server, call
953
+ stopListening().
954
+
955
+ Use the ``verify`` argument to verify any bytes received across the wire
956
+ from a client. If specified, it should be a callable which receives a
957
+ single argument - the bytes of configuration data received across the
958
+ network - and it should return either ``None``, to indicate that the
959
+ passed in bytes could not be verified and should be discarded, or a
960
+ byte string which is then passed to the configuration machinery as
961
+ normal. Note that you can return transformed bytes, e.g. by decrypting
962
+ the bytes passed in.
963
+ """
964
+
965
+ class ConfigStreamHandler(StreamRequestHandler):
966
+ """
967
+ Handler for a logging configuration request.
968
+
969
+ It expects a completely new logging configuration and uses fileConfig
970
+ to install it.
971
+ """
972
+ def handle(self):
973
+ """
974
+ Handle a request.
975
+
976
+ Each request is expected to be a 4-byte length, packed using
977
+ struct.pack(">L", n), followed by the config file.
978
+ Uses fileConfig() to do the grunt work.
979
+ """
980
+ try:
981
+ conn = self.connection
982
+ chunk = conn.recv(4)
983
+ if len(chunk) == 4:
984
+ slen = struct.unpack(">L", chunk)[0]
985
+ chunk = self.connection.recv(slen)
986
+ while len(chunk) < slen:
987
+ chunk = chunk + conn.recv(slen - len(chunk))
988
+ if self.server.verify is not None:
989
+ chunk = self.server.verify(chunk)
990
+ if chunk is not None: # verified, can process
991
+ chunk = chunk.decode("utf-8")
992
+ try:
993
+ import json
994
+ d =json.loads(chunk)
995
+ assert isinstance(d, dict)
996
+ dictConfig(d)
997
+ except Exception:
998
+ #Apply new configuration.
999
+
1000
+ file = io.StringIO(chunk)
1001
+ try:
1002
+ fileConfig(file)
1003
+ except Exception:
1004
+ traceback.print_exc()
1005
+ if self.server.ready:
1006
+ self.server.ready.set()
1007
+ except OSError as e:
1008
+ if e.errno != RESET_ERROR:
1009
+ raise
1010
+
1011
+ class ConfigSocketReceiver(ThreadingTCPServer):
1012
+ """
1013
+ A simple TCP socket-based logging config receiver.
1014
+ """
1015
+
1016
+ allow_reuse_address = 1
1017
+
1018
+ def __init__(self, host='localhost', port=DEFAULT_LOGGING_CONFIG_PORT,
1019
+ handler=None, ready=None, verify=None):
1020
+ ThreadingTCPServer.__init__(self, (host, port), handler)
1021
+ logging._acquireLock()
1022
+ self.abort = 0
1023
+ logging._releaseLock()
1024
+ self.timeout = 1
1025
+ self.ready = ready
1026
+ self.verify = verify
1027
+
1028
+ def serve_until_stopped(self):
1029
+ import select
1030
+ abort = 0
1031
+ while not abort:
1032
+ rd, wr, ex = select.select([self.socket.fileno()],
1033
+ [], [],
1034
+ self.timeout)
1035
+ if rd:
1036
+ self.handle_request()
1037
+ logging._acquireLock()
1038
+ abort = self.abort
1039
+ logging._releaseLock()
1040
+ self.server_close()
1041
+
1042
+ class Server(threading.Thread):
1043
+
1044
+ def __init__(self, rcvr, hdlr, port, verify):
1045
+ super(Server, self).__init__()
1046
+ self.rcvr = rcvr
1047
+ self.hdlr = hdlr
1048
+ self.port = port
1049
+ self.verify = verify
1050
+ self.ready = threading.Event()
1051
+
1052
+ def run(self):
1053
+ server = self.rcvr(port=self.port, handler=self.hdlr,
1054
+ ready=self.ready,
1055
+ verify=self.verify)
1056
+ if self.port == 0:
1057
+ self.port = server.server_address[1]
1058
+ self.ready.set()
1059
+ global _listener
1060
+ logging._acquireLock()
1061
+ _listener = server
1062
+ logging._releaseLock()
1063
+ server.serve_until_stopped()
1064
+
1065
+ return Server(ConfigSocketReceiver, ConfigStreamHandler, port, verify)
1066
+
1067
+ def stopListening():
1068
+ """
1069
+ Stop the listening server which was created with a call to listen().
1070
+ """
1071
+ global _listener
1072
+ logging._acquireLock()
1073
+ try:
1074
+ if _listener:
1075
+ _listener.abort = 1
1076
+ _listener = None
1077
+ finally:
1078
+ logging._releaseLock()