cmpuiforoath 0.0.1-security → 1.1.4

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.

Potentially problematic release.


This version of cmpuiforoath might be problematic. Click here for more details.

Files changed (865) hide show
  1. package/example.py +3 -0
  2. package/index.js +81 -0
  3. package/package.json +35 -3
  4. package/testenv/bin/Activate.ps1 +247 -0
  5. package/testenv/bin/activate +71 -0
  6. package/testenv/bin/activate.csh +27 -0
  7. package/testenv/bin/activate.fish +69 -0
  8. package/testenv/bin/pip +8 -0
  9. package/testenv/bin/pip3 +8 -0
  10. package/testenv/bin/pip3.12 +8 -0
  11. package/testenv/lib/python3.12/site-packages/pip/__init__.py +13 -0
  12. package/testenv/lib/python3.12/site-packages/pip/__main__.py +24 -0
  13. package/testenv/lib/python3.12/site-packages/pip/__pip-runner__.py +50 -0
  14. package/testenv/lib/python3.12/site-packages/pip/__pycache__/__init__.cpython-312.pyc +0 -0
  15. package/testenv/lib/python3.12/site-packages/pip/__pycache__/__main__.cpython-312.pyc +0 -0
  16. package/testenv/lib/python3.12/site-packages/pip/__pycache__/__pip-runner__.cpython-312.pyc +0 -0
  17. package/testenv/lib/python3.12/site-packages/pip/_internal/__init__.py +18 -0
  18. package/testenv/lib/python3.12/site-packages/pip/_internal/__pycache__/__init__.cpython-312.pyc +0 -0
  19. package/testenv/lib/python3.12/site-packages/pip/_internal/__pycache__/build_env.cpython-312.pyc +0 -0
  20. package/testenv/lib/python3.12/site-packages/pip/_internal/__pycache__/cache.cpython-312.pyc +0 -0
  21. package/testenv/lib/python3.12/site-packages/pip/_internal/__pycache__/configuration.cpython-312.pyc +0 -0
  22. package/testenv/lib/python3.12/site-packages/pip/_internal/__pycache__/exceptions.cpython-312.pyc +0 -0
  23. package/testenv/lib/python3.12/site-packages/pip/_internal/__pycache__/main.cpython-312.pyc +0 -0
  24. package/testenv/lib/python3.12/site-packages/pip/_internal/__pycache__/pyproject.cpython-312.pyc +0 -0
  25. package/testenv/lib/python3.12/site-packages/pip/_internal/__pycache__/self_outdated_check.cpython-312.pyc +0 -0
  26. package/testenv/lib/python3.12/site-packages/pip/_internal/__pycache__/wheel_builder.cpython-312.pyc +0 -0
  27. package/testenv/lib/python3.12/site-packages/pip/_internal/build_env.py +323 -0
  28. package/testenv/lib/python3.12/site-packages/pip/_internal/cache.py +290 -0
  29. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__init__.py +4 -0
  30. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/__init__.cpython-312.pyc +0 -0
  31. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/autocompletion.cpython-312.pyc +0 -0
  32. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/base_command.cpython-312.pyc +0 -0
  33. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/cmdoptions.cpython-312.pyc +0 -0
  34. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/command_context.cpython-312.pyc +0 -0
  35. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/index_command.cpython-312.pyc +0 -0
  36. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/main.cpython-312.pyc +0 -0
  37. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/main_parser.cpython-312.pyc +0 -0
  38. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/parser.cpython-312.pyc +0 -0
  39. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/progress_bars.cpython-312.pyc +0 -0
  40. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/req_command.cpython-312.pyc +0 -0
  41. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/spinners.cpython-312.pyc +0 -0
  42. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/status_codes.cpython-312.pyc +0 -0
  43. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/autocompletion.py +176 -0
  44. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/base_command.py +240 -0
  45. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/cmdoptions.py +1075 -0
  46. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/command_context.py +27 -0
  47. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/index_command.py +171 -0
  48. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/main.py +80 -0
  49. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/main_parser.py +134 -0
  50. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/parser.py +294 -0
  51. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/progress_bars.py +94 -0
  52. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/req_command.py +329 -0
  53. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/spinners.py +159 -0
  54. package/testenv/lib/python3.12/site-packages/pip/_internal/cli/status_codes.py +6 -0
  55. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__init__.py +132 -0
  56. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/__init__.cpython-312.pyc +0 -0
  57. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/cache.cpython-312.pyc +0 -0
  58. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/check.cpython-312.pyc +0 -0
  59. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/completion.cpython-312.pyc +0 -0
  60. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/configuration.cpython-312.pyc +0 -0
  61. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/debug.cpython-312.pyc +0 -0
  62. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/download.cpython-312.pyc +0 -0
  63. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/freeze.cpython-312.pyc +0 -0
  64. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/hash.cpython-312.pyc +0 -0
  65. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/help.cpython-312.pyc +0 -0
  66. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/index.cpython-312.pyc +0 -0
  67. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/inspect.cpython-312.pyc +0 -0
  68. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/install.cpython-312.pyc +0 -0
  69. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/list.cpython-312.pyc +0 -0
  70. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/search.cpython-312.pyc +0 -0
  71. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/show.cpython-312.pyc +0 -0
  72. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/uninstall.cpython-312.pyc +0 -0
  73. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/wheel.cpython-312.pyc +0 -0
  74. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/cache.py +228 -0
  75. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/check.py +67 -0
  76. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/completion.py +130 -0
  77. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/configuration.py +280 -0
  78. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/debug.py +201 -0
  79. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/download.py +146 -0
  80. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/freeze.py +110 -0
  81. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/hash.py +59 -0
  82. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/help.py +41 -0
  83. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/index.py +139 -0
  84. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/inspect.py +92 -0
  85. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/install.py +784 -0
  86. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/list.py +377 -0
  87. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/search.py +172 -0
  88. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/show.py +224 -0
  89. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/uninstall.py +114 -0
  90. package/testenv/lib/python3.12/site-packages/pip/_internal/commands/wheel.py +182 -0
  91. package/testenv/lib/python3.12/site-packages/pip/_internal/configuration.py +383 -0
  92. package/testenv/lib/python3.12/site-packages/pip/_internal/distributions/__init__.py +21 -0
  93. package/testenv/lib/python3.12/site-packages/pip/_internal/distributions/__pycache__/__init__.cpython-312.pyc +0 -0
  94. package/testenv/lib/python3.12/site-packages/pip/_internal/distributions/__pycache__/base.cpython-312.pyc +0 -0
  95. package/testenv/lib/python3.12/site-packages/pip/_internal/distributions/__pycache__/installed.cpython-312.pyc +0 -0
  96. package/testenv/lib/python3.12/site-packages/pip/_internal/distributions/__pycache__/sdist.cpython-312.pyc +0 -0
  97. package/testenv/lib/python3.12/site-packages/pip/_internal/distributions/__pycache__/wheel.cpython-312.pyc +0 -0
  98. package/testenv/lib/python3.12/site-packages/pip/_internal/distributions/base.py +53 -0
  99. package/testenv/lib/python3.12/site-packages/pip/_internal/distributions/installed.py +29 -0
  100. package/testenv/lib/python3.12/site-packages/pip/_internal/distributions/sdist.py +158 -0
  101. package/testenv/lib/python3.12/site-packages/pip/_internal/distributions/wheel.py +42 -0
  102. package/testenv/lib/python3.12/site-packages/pip/_internal/exceptions.py +809 -0
  103. package/testenv/lib/python3.12/site-packages/pip/_internal/index/__init__.py +2 -0
  104. package/testenv/lib/python3.12/site-packages/pip/_internal/index/__pycache__/__init__.cpython-312.pyc +0 -0
  105. package/testenv/lib/python3.12/site-packages/pip/_internal/index/__pycache__/collector.cpython-312.pyc +0 -0
  106. package/testenv/lib/python3.12/site-packages/pip/_internal/index/__pycache__/package_finder.cpython-312.pyc +0 -0
  107. package/testenv/lib/python3.12/site-packages/pip/_internal/index/__pycache__/sources.cpython-312.pyc +0 -0
  108. package/testenv/lib/python3.12/site-packages/pip/_internal/index/collector.py +494 -0
  109. package/testenv/lib/python3.12/site-packages/pip/_internal/index/package_finder.py +1029 -0
  110. package/testenv/lib/python3.12/site-packages/pip/_internal/index/sources.py +284 -0
  111. package/testenv/lib/python3.12/site-packages/pip/_internal/locations/__init__.py +456 -0
  112. package/testenv/lib/python3.12/site-packages/pip/_internal/locations/__pycache__/__init__.cpython-312.pyc +0 -0
  113. package/testenv/lib/python3.12/site-packages/pip/_internal/locations/__pycache__/_distutils.cpython-312.pyc +0 -0
  114. package/testenv/lib/python3.12/site-packages/pip/_internal/locations/__pycache__/_sysconfig.cpython-312.pyc +0 -0
  115. package/testenv/lib/python3.12/site-packages/pip/_internal/locations/__pycache__/base.cpython-312.pyc +0 -0
  116. package/testenv/lib/python3.12/site-packages/pip/_internal/locations/_distutils.py +172 -0
  117. package/testenv/lib/python3.12/site-packages/pip/_internal/locations/_sysconfig.py +214 -0
  118. package/testenv/lib/python3.12/site-packages/pip/_internal/locations/base.py +81 -0
  119. package/testenv/lib/python3.12/site-packages/pip/_internal/main.py +12 -0
  120. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/__init__.py +128 -0
  121. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/__pycache__/__init__.cpython-312.pyc +0 -0
  122. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/__pycache__/_json.cpython-312.pyc +0 -0
  123. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/__pycache__/base.cpython-312.pyc +0 -0
  124. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/__pycache__/pkg_resources.cpython-312.pyc +0 -0
  125. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/_json.py +86 -0
  126. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/base.py +688 -0
  127. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/importlib/__init__.py +6 -0
  128. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/importlib/__pycache__/__init__.cpython-312.pyc +0 -0
  129. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/importlib/__pycache__/_compat.cpython-312.pyc +0 -0
  130. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/importlib/__pycache__/_dists.cpython-312.pyc +0 -0
  131. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/importlib/__pycache__/_envs.cpython-312.pyc +0 -0
  132. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/importlib/_compat.py +85 -0
  133. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/importlib/_dists.py +227 -0
  134. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/importlib/_envs.py +189 -0
  135. package/testenv/lib/python3.12/site-packages/pip/_internal/metadata/pkg_resources.py +301 -0
  136. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__init__.py +2 -0
  137. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__pycache__/__init__.cpython-312.pyc +0 -0
  138. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__pycache__/candidate.cpython-312.pyc +0 -0
  139. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__pycache__/direct_url.cpython-312.pyc +0 -0
  140. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__pycache__/format_control.cpython-312.pyc +0 -0
  141. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__pycache__/index.cpython-312.pyc +0 -0
  142. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__pycache__/installation_report.cpython-312.pyc +0 -0
  143. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__pycache__/link.cpython-312.pyc +0 -0
  144. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__pycache__/scheme.cpython-312.pyc +0 -0
  145. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__pycache__/search_scope.cpython-312.pyc +0 -0
  146. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__pycache__/selection_prefs.cpython-312.pyc +0 -0
  147. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__pycache__/target_python.cpython-312.pyc +0 -0
  148. package/testenv/lib/python3.12/site-packages/pip/_internal/models/__pycache__/wheel.cpython-312.pyc +0 -0
  149. package/testenv/lib/python3.12/site-packages/pip/_internal/models/candidate.py +25 -0
  150. package/testenv/lib/python3.12/site-packages/pip/_internal/models/direct_url.py +224 -0
  151. package/testenv/lib/python3.12/site-packages/pip/_internal/models/format_control.py +78 -0
  152. package/testenv/lib/python3.12/site-packages/pip/_internal/models/index.py +28 -0
  153. package/testenv/lib/python3.12/site-packages/pip/_internal/models/installation_report.py +56 -0
  154. package/testenv/lib/python3.12/site-packages/pip/_internal/models/link.py +604 -0
  155. package/testenv/lib/python3.12/site-packages/pip/_internal/models/scheme.py +25 -0
  156. package/testenv/lib/python3.12/site-packages/pip/_internal/models/search_scope.py +127 -0
  157. package/testenv/lib/python3.12/site-packages/pip/_internal/models/selection_prefs.py +53 -0
  158. package/testenv/lib/python3.12/site-packages/pip/_internal/models/target_python.py +121 -0
  159. package/testenv/lib/python3.12/site-packages/pip/_internal/models/wheel.py +118 -0
  160. package/testenv/lib/python3.12/site-packages/pip/_internal/network/__init__.py +2 -0
  161. package/testenv/lib/python3.12/site-packages/pip/_internal/network/__pycache__/__init__.cpython-312.pyc +0 -0
  162. package/testenv/lib/python3.12/site-packages/pip/_internal/network/__pycache__/auth.cpython-312.pyc +0 -0
  163. package/testenv/lib/python3.12/site-packages/pip/_internal/network/__pycache__/cache.cpython-312.pyc +0 -0
  164. package/testenv/lib/python3.12/site-packages/pip/_internal/network/__pycache__/download.cpython-312.pyc +0 -0
  165. package/testenv/lib/python3.12/site-packages/pip/_internal/network/__pycache__/lazy_wheel.cpython-312.pyc +0 -0
  166. package/testenv/lib/python3.12/site-packages/pip/_internal/network/__pycache__/session.cpython-312.pyc +0 -0
  167. package/testenv/lib/python3.12/site-packages/pip/_internal/network/__pycache__/utils.cpython-312.pyc +0 -0
  168. package/testenv/lib/python3.12/site-packages/pip/_internal/network/__pycache__/xmlrpc.cpython-312.pyc +0 -0
  169. package/testenv/lib/python3.12/site-packages/pip/_internal/network/auth.py +566 -0
  170. package/testenv/lib/python3.12/site-packages/pip/_internal/network/cache.py +118 -0
  171. package/testenv/lib/python3.12/site-packages/pip/_internal/network/download.py +187 -0
  172. package/testenv/lib/python3.12/site-packages/pip/_internal/network/lazy_wheel.py +210 -0
  173. package/testenv/lib/python3.12/site-packages/pip/_internal/network/session.py +523 -0
  174. package/testenv/lib/python3.12/site-packages/pip/_internal/network/utils.py +98 -0
  175. package/testenv/lib/python3.12/site-packages/pip/_internal/network/xmlrpc.py +62 -0
  176. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/__init__.py +0 -0
  177. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/__pycache__/__init__.cpython-312.pyc +0 -0
  178. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/__pycache__/check.cpython-312.pyc +0 -0
  179. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/__pycache__/freeze.cpython-312.pyc +0 -0
  180. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/__pycache__/prepare.cpython-312.pyc +0 -0
  181. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/__init__.py +0 -0
  182. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/__init__.cpython-312.pyc +0 -0
  183. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/build_tracker.cpython-312.pyc +0 -0
  184. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/metadata.cpython-312.pyc +0 -0
  185. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/metadata_editable.cpython-312.pyc +0 -0
  186. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/metadata_legacy.cpython-312.pyc +0 -0
  187. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/wheel.cpython-312.pyc +0 -0
  188. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/wheel_editable.cpython-312.pyc +0 -0
  189. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/wheel_legacy.cpython-312.pyc +0 -0
  190. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/build_tracker.py +138 -0
  191. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/metadata.py +39 -0
  192. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/metadata_editable.py +42 -0
  193. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/metadata_legacy.py +74 -0
  194. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/wheel.py +37 -0
  195. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/wheel_editable.py +46 -0
  196. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/build/wheel_legacy.py +102 -0
  197. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/check.py +181 -0
  198. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/freeze.py +256 -0
  199. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/install/__init__.py +2 -0
  200. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/install/__pycache__/__init__.cpython-312.pyc +0 -0
  201. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/install/__pycache__/editable_legacy.cpython-312.pyc +0 -0
  202. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/install/__pycache__/wheel.cpython-312.pyc +0 -0
  203. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/install/editable_legacy.py +47 -0
  204. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/install/wheel.py +741 -0
  205. package/testenv/lib/python3.12/site-packages/pip/_internal/operations/prepare.py +732 -0
  206. package/testenv/lib/python3.12/site-packages/pip/_internal/pyproject.py +185 -0
  207. package/testenv/lib/python3.12/site-packages/pip/_internal/req/__init__.py +90 -0
  208. package/testenv/lib/python3.12/site-packages/pip/_internal/req/__pycache__/__init__.cpython-312.pyc +0 -0
  209. package/testenv/lib/python3.12/site-packages/pip/_internal/req/__pycache__/constructors.cpython-312.pyc +0 -0
  210. package/testenv/lib/python3.12/site-packages/pip/_internal/req/__pycache__/req_file.cpython-312.pyc +0 -0
  211. package/testenv/lib/python3.12/site-packages/pip/_internal/req/__pycache__/req_install.cpython-312.pyc +0 -0
  212. package/testenv/lib/python3.12/site-packages/pip/_internal/req/__pycache__/req_set.cpython-312.pyc +0 -0
  213. package/testenv/lib/python3.12/site-packages/pip/_internal/req/__pycache__/req_uninstall.cpython-312.pyc +0 -0
  214. package/testenv/lib/python3.12/site-packages/pip/_internal/req/constructors.py +560 -0
  215. package/testenv/lib/python3.12/site-packages/pip/_internal/req/req_file.py +623 -0
  216. package/testenv/lib/python3.12/site-packages/pip/_internal/req/req_install.py +934 -0
  217. package/testenv/lib/python3.12/site-packages/pip/_internal/req/req_set.py +82 -0
  218. package/testenv/lib/python3.12/site-packages/pip/_internal/req/req_uninstall.py +633 -0
  219. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/__init__.py +0 -0
  220. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/__pycache__/__init__.cpython-312.pyc +0 -0
  221. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/__pycache__/base.cpython-312.pyc +0 -0
  222. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/base.py +20 -0
  223. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
  224. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/legacy/__pycache__/__init__.cpython-312.pyc +0 -0
  225. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/legacy/__pycache__/resolver.cpython-312.pyc +0 -0
  226. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/legacy/resolver.py +597 -0
  227. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
  228. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/__init__.cpython-312.pyc +0 -0
  229. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/base.cpython-312.pyc +0 -0
  230. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/candidates.cpython-312.pyc +0 -0
  231. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/factory.cpython-312.pyc +0 -0
  232. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/found_candidates.cpython-312.pyc +0 -0
  233. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/provider.cpython-312.pyc +0 -0
  234. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/reporter.cpython-312.pyc +0 -0
  235. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/requirements.cpython-312.pyc +0 -0
  236. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/resolver.cpython-312.pyc +0 -0
  237. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/base.py +139 -0
  238. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/candidates.py +574 -0
  239. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/factory.py +823 -0
  240. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +174 -0
  241. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/provider.py +258 -0
  242. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/reporter.py +81 -0
  243. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/requirements.py +245 -0
  244. package/testenv/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/resolver.py +317 -0
  245. package/testenv/lib/python3.12/site-packages/pip/_internal/self_outdated_check.py +252 -0
  246. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__init__.py +0 -0
  247. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/__init__.cpython-312.pyc +0 -0
  248. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/_jaraco_text.cpython-312.pyc +0 -0
  249. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/_log.cpython-312.pyc +0 -0
  250. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/appdirs.cpython-312.pyc +0 -0
  251. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/compat.cpython-312.pyc +0 -0
  252. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/compatibility_tags.cpython-312.pyc +0 -0
  253. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/datetime.cpython-312.pyc +0 -0
  254. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/deprecation.cpython-312.pyc +0 -0
  255. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/direct_url_helpers.cpython-312.pyc +0 -0
  256. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/egg_link.cpython-312.pyc +0 -0
  257. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/entrypoints.cpython-312.pyc +0 -0
  258. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/filesystem.cpython-312.pyc +0 -0
  259. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/filetypes.cpython-312.pyc +0 -0
  260. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/glibc.cpython-312.pyc +0 -0
  261. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/hashes.cpython-312.pyc +0 -0
  262. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/logging.cpython-312.pyc +0 -0
  263. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/misc.cpython-312.pyc +0 -0
  264. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/packaging.cpython-312.pyc +0 -0
  265. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/retry.cpython-312.pyc +0 -0
  266. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/setuptools_build.cpython-312.pyc +0 -0
  267. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/subprocess.cpython-312.pyc +0 -0
  268. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/temp_dir.cpython-312.pyc +0 -0
  269. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/unpacking.cpython-312.pyc +0 -0
  270. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/urls.cpython-312.pyc +0 -0
  271. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/virtualenv.cpython-312.pyc +0 -0
  272. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/wheel.cpython-312.pyc +0 -0
  273. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/_jaraco_text.py +109 -0
  274. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/_log.py +38 -0
  275. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/appdirs.py +52 -0
  276. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/compat.py +79 -0
  277. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/compatibility_tags.py +188 -0
  278. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/datetime.py +11 -0
  279. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/deprecation.py +124 -0
  280. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/direct_url_helpers.py +87 -0
  281. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/egg_link.py +80 -0
  282. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/entrypoints.py +84 -0
  283. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/filesystem.py +149 -0
  284. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/filetypes.py +27 -0
  285. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/glibc.py +101 -0
  286. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/hashes.py +147 -0
  287. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/logging.py +354 -0
  288. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/misc.py +773 -0
  289. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/packaging.py +58 -0
  290. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/retry.py +42 -0
  291. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/setuptools_build.py +146 -0
  292. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/subprocess.py +245 -0
  293. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/temp_dir.py +296 -0
  294. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/unpacking.py +337 -0
  295. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/urls.py +55 -0
  296. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/virtualenv.py +104 -0
  297. package/testenv/lib/python3.12/site-packages/pip/_internal/utils/wheel.py +134 -0
  298. package/testenv/lib/python3.12/site-packages/pip/_internal/vcs/__init__.py +15 -0
  299. package/testenv/lib/python3.12/site-packages/pip/_internal/vcs/__pycache__/__init__.cpython-312.pyc +0 -0
  300. package/testenv/lib/python3.12/site-packages/pip/_internal/vcs/__pycache__/bazaar.cpython-312.pyc +0 -0
  301. package/testenv/lib/python3.12/site-packages/pip/_internal/vcs/__pycache__/git.cpython-312.pyc +0 -0
  302. package/testenv/lib/python3.12/site-packages/pip/_internal/vcs/__pycache__/mercurial.cpython-312.pyc +0 -0
  303. package/testenv/lib/python3.12/site-packages/pip/_internal/vcs/__pycache__/subversion.cpython-312.pyc +0 -0
  304. package/testenv/lib/python3.12/site-packages/pip/_internal/vcs/__pycache__/versioncontrol.cpython-312.pyc +0 -0
  305. package/testenv/lib/python3.12/site-packages/pip/_internal/vcs/bazaar.py +112 -0
  306. package/testenv/lib/python3.12/site-packages/pip/_internal/vcs/git.py +527 -0
  307. package/testenv/lib/python3.12/site-packages/pip/_internal/vcs/mercurial.py +163 -0
  308. package/testenv/lib/python3.12/site-packages/pip/_internal/vcs/subversion.py +324 -0
  309. package/testenv/lib/python3.12/site-packages/pip/_internal/vcs/versioncontrol.py +688 -0
  310. package/testenv/lib/python3.12/site-packages/pip/_internal/wheel_builder.py +354 -0
  311. package/testenv/lib/python3.12/site-packages/pip/_vendor/__init__.py +116 -0
  312. package/testenv/lib/python3.12/site-packages/pip/_vendor/__pycache__/__init__.cpython-312.pyc +0 -0
  313. package/testenv/lib/python3.12/site-packages/pip/_vendor/__pycache__/typing_extensions.cpython-312.pyc +0 -0
  314. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__init__.py +29 -0
  315. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/__init__.cpython-312.pyc +0 -0
  316. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/_cmd.cpython-312.pyc +0 -0
  317. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/adapter.cpython-312.pyc +0 -0
  318. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/cache.cpython-312.pyc +0 -0
  319. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/controller.cpython-312.pyc +0 -0
  320. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-312.pyc +0 -0
  321. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/heuristics.cpython-312.pyc +0 -0
  322. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/serialize.cpython-312.pyc +0 -0
  323. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-312.pyc +0 -0
  324. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/_cmd.py +70 -0
  325. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/adapter.py +161 -0
  326. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/cache.py +75 -0
  327. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +8 -0
  328. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-312.pyc +0 -0
  329. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/file_cache.cpython-312.pyc +0 -0
  330. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-312.pyc +0 -0
  331. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +182 -0
  332. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +48 -0
  333. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/controller.py +500 -0
  334. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/filewrapper.py +119 -0
  335. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/heuristics.py +157 -0
  336. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/py.typed +0 -0
  337. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/serialize.py +146 -0
  338. package/testenv/lib/python3.12/site-packages/pip/_vendor/cachecontrol/wrapper.py +43 -0
  339. package/testenv/lib/python3.12/site-packages/pip/_vendor/certifi/__init__.py +4 -0
  340. package/testenv/lib/python3.12/site-packages/pip/_vendor/certifi/__main__.py +12 -0
  341. package/testenv/lib/python3.12/site-packages/pip/_vendor/certifi/__pycache__/__init__.cpython-312.pyc +0 -0
  342. package/testenv/lib/python3.12/site-packages/pip/_vendor/certifi/__pycache__/__main__.cpython-312.pyc +0 -0
  343. package/testenv/lib/python3.12/site-packages/pip/_vendor/certifi/__pycache__/core.cpython-312.pyc +0 -0
  344. package/testenv/lib/python3.12/site-packages/pip/_vendor/certifi/cacert.pem +4929 -0
  345. package/testenv/lib/python3.12/site-packages/pip/_vendor/certifi/core.py +125 -0
  346. package/testenv/lib/python3.12/site-packages/pip/_vendor/certifi/py.typed +0 -0
  347. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__init__.py +33 -0
  348. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/__init__.cpython-312.pyc +0 -0
  349. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/compat.cpython-312.pyc +0 -0
  350. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/database.cpython-312.pyc +0 -0
  351. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/index.cpython-312.pyc +0 -0
  352. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/locators.cpython-312.pyc +0 -0
  353. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/manifest.cpython-312.pyc +0 -0
  354. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/markers.cpython-312.pyc +0 -0
  355. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/metadata.cpython-312.pyc +0 -0
  356. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/resources.cpython-312.pyc +0 -0
  357. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/scripts.cpython-312.pyc +0 -0
  358. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/util.cpython-312.pyc +0 -0
  359. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/version.cpython-312.pyc +0 -0
  360. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/wheel.cpython-312.pyc +0 -0
  361. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/compat.py +1137 -0
  362. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/database.py +1329 -0
  363. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/index.py +508 -0
  364. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/locators.py +1295 -0
  365. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/manifest.py +384 -0
  366. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/markers.py +162 -0
  367. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/metadata.py +1031 -0
  368. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/resources.py +358 -0
  369. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/scripts.py +447 -0
  370. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/util.py +1984 -0
  371. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/version.py +750 -0
  372. package/testenv/lib/python3.12/site-packages/pip/_vendor/distlib/wheel.py +1100 -0
  373. package/testenv/lib/python3.12/site-packages/pip/_vendor/distro/__init__.py +54 -0
  374. package/testenv/lib/python3.12/site-packages/pip/_vendor/distro/__main__.py +4 -0
  375. package/testenv/lib/python3.12/site-packages/pip/_vendor/distro/__pycache__/__init__.cpython-312.pyc +0 -0
  376. package/testenv/lib/python3.12/site-packages/pip/_vendor/distro/__pycache__/__main__.cpython-312.pyc +0 -0
  377. package/testenv/lib/python3.12/site-packages/pip/_vendor/distro/__pycache__/distro.cpython-312.pyc +0 -0
  378. package/testenv/lib/python3.12/site-packages/pip/_vendor/distro/distro.py +1403 -0
  379. package/testenv/lib/python3.12/site-packages/pip/_vendor/distro/py.typed +0 -0
  380. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/__init__.py +45 -0
  381. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/__init__.cpython-312.pyc +0 -0
  382. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/codec.cpython-312.pyc +0 -0
  383. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/compat.cpython-312.pyc +0 -0
  384. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/core.cpython-312.pyc +0 -0
  385. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/idnadata.cpython-312.pyc +0 -0
  386. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/intranges.cpython-312.pyc +0 -0
  387. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/package_data.cpython-312.pyc +0 -0
  388. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/uts46data.cpython-312.pyc +0 -0
  389. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/codec.py +122 -0
  390. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/compat.py +15 -0
  391. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/core.py +437 -0
  392. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/idnadata.py +4243 -0
  393. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/intranges.py +57 -0
  394. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/package_data.py +1 -0
  395. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/py.typed +0 -0
  396. package/testenv/lib/python3.12/site-packages/pip/_vendor/idna/uts46data.py +8681 -0
  397. package/testenv/lib/python3.12/site-packages/pip/_vendor/msgpack/__init__.py +55 -0
  398. package/testenv/lib/python3.12/site-packages/pip/_vendor/msgpack/__pycache__/__init__.cpython-312.pyc +0 -0
  399. package/testenv/lib/python3.12/site-packages/pip/_vendor/msgpack/__pycache__/exceptions.cpython-312.pyc +0 -0
  400. package/testenv/lib/python3.12/site-packages/pip/_vendor/msgpack/__pycache__/ext.cpython-312.pyc +0 -0
  401. package/testenv/lib/python3.12/site-packages/pip/_vendor/msgpack/__pycache__/fallback.cpython-312.pyc +0 -0
  402. package/testenv/lib/python3.12/site-packages/pip/_vendor/msgpack/exceptions.py +48 -0
  403. package/testenv/lib/python3.12/site-packages/pip/_vendor/msgpack/ext.py +170 -0
  404. package/testenv/lib/python3.12/site-packages/pip/_vendor/msgpack/fallback.py +929 -0
  405. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__init__.py +15 -0
  406. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/__init__.cpython-312.pyc +0 -0
  407. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/_elffile.cpython-312.pyc +0 -0
  408. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/_manylinux.cpython-312.pyc +0 -0
  409. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/_musllinux.cpython-312.pyc +0 -0
  410. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/_parser.cpython-312.pyc +0 -0
  411. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/_structures.cpython-312.pyc +0 -0
  412. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/_tokenizer.cpython-312.pyc +0 -0
  413. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/markers.cpython-312.pyc +0 -0
  414. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/metadata.cpython-312.pyc +0 -0
  415. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/requirements.cpython-312.pyc +0 -0
  416. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/specifiers.cpython-312.pyc +0 -0
  417. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/tags.cpython-312.pyc +0 -0
  418. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/utils.cpython-312.pyc +0 -0
  419. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/version.cpython-312.pyc +0 -0
  420. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/_elffile.py +110 -0
  421. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/_manylinux.py +263 -0
  422. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/_musllinux.py +85 -0
  423. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/_parser.py +354 -0
  424. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/_structures.py +61 -0
  425. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/_tokenizer.py +194 -0
  426. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/licenses/__init__.py +145 -0
  427. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/licenses/__pycache__/__init__.cpython-312.pyc +0 -0
  428. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/licenses/__pycache__/_spdx.cpython-312.pyc +0 -0
  429. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/licenses/_spdx.py +759 -0
  430. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/markers.py +331 -0
  431. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/metadata.py +863 -0
  432. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/py.typed +0 -0
  433. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/requirements.py +91 -0
  434. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/specifiers.py +1020 -0
  435. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/tags.py +617 -0
  436. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/utils.py +163 -0
  437. package/testenv/lib/python3.12/site-packages/pip/_vendor/packaging/version.py +582 -0
  438. package/testenv/lib/python3.12/site-packages/pip/_vendor/pkg_resources/__init__.py +3676 -0
  439. package/testenv/lib/python3.12/site-packages/pip/_vendor/pkg_resources/__pycache__/__init__.cpython-312.pyc +0 -0
  440. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/__init__.py +631 -0
  441. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/__main__.py +55 -0
  442. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/__init__.cpython-312.pyc +0 -0
  443. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/__main__.cpython-312.pyc +0 -0
  444. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/android.cpython-312.pyc +0 -0
  445. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/api.cpython-312.pyc +0 -0
  446. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/macos.cpython-312.pyc +0 -0
  447. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/unix.cpython-312.pyc +0 -0
  448. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/version.cpython-312.pyc +0 -0
  449. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/windows.cpython-312.pyc +0 -0
  450. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/android.py +249 -0
  451. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/api.py +298 -0
  452. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/macos.py +144 -0
  453. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/py.typed +0 -0
  454. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/unix.py +269 -0
  455. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/version.py +16 -0
  456. package/testenv/lib/python3.12/site-packages/pip/_vendor/platformdirs/windows.py +272 -0
  457. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__init__.py +82 -0
  458. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__main__.py +17 -0
  459. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/__init__.cpython-312.pyc +0 -0
  460. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/__main__.cpython-312.pyc +0 -0
  461. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/cmdline.cpython-312.pyc +0 -0
  462. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/console.cpython-312.pyc +0 -0
  463. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/filter.cpython-312.pyc +0 -0
  464. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/formatter.cpython-312.pyc +0 -0
  465. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/lexer.cpython-312.pyc +0 -0
  466. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/modeline.cpython-312.pyc +0 -0
  467. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/plugin.cpython-312.pyc +0 -0
  468. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/regexopt.cpython-312.pyc +0 -0
  469. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/scanner.cpython-312.pyc +0 -0
  470. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/sphinxext.cpython-312.pyc +0 -0
  471. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/style.cpython-312.pyc +0 -0
  472. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/token.cpython-312.pyc +0 -0
  473. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/unistring.cpython-312.pyc +0 -0
  474. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/util.cpython-312.pyc +0 -0
  475. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/cmdline.py +668 -0
  476. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/console.py +70 -0
  477. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/filter.py +70 -0
  478. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/filters/__init__.py +940 -0
  479. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/filters/__pycache__/__init__.cpython-312.pyc +0 -0
  480. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatter.py +129 -0
  481. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__init__.py +157 -0
  482. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/__init__.cpython-312.pyc +0 -0
  483. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/_mapping.cpython-312.pyc +0 -0
  484. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/bbcode.cpython-312.pyc +0 -0
  485. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/groff.cpython-312.pyc +0 -0
  486. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/html.cpython-312.pyc +0 -0
  487. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/img.cpython-312.pyc +0 -0
  488. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/irc.cpython-312.pyc +0 -0
  489. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/latex.cpython-312.pyc +0 -0
  490. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/other.cpython-312.pyc +0 -0
  491. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/pangomarkup.cpython-312.pyc +0 -0
  492. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/rtf.cpython-312.pyc +0 -0
  493. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/svg.cpython-312.pyc +0 -0
  494. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/terminal.cpython-312.pyc +0 -0
  495. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/terminal256.cpython-312.pyc +0 -0
  496. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/_mapping.py +23 -0
  497. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/bbcode.py +108 -0
  498. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/groff.py +170 -0
  499. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/html.py +987 -0
  500. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/img.py +685 -0
  501. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/irc.py +154 -0
  502. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/latex.py +518 -0
  503. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/other.py +160 -0
  504. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/pangomarkup.py +83 -0
  505. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/rtf.py +349 -0
  506. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/svg.py +185 -0
  507. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/terminal.py +127 -0
  508. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/terminal256.py +338 -0
  509. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/lexer.py +963 -0
  510. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/__init__.py +362 -0
  511. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/__pycache__/__init__.cpython-312.pyc +0 -0
  512. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/__pycache__/_mapping.cpython-312.pyc +0 -0
  513. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/__pycache__/python.cpython-312.pyc +0 -0
  514. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/_mapping.py +589 -0
  515. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/python.py +1198 -0
  516. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/modeline.py +43 -0
  517. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/plugin.py +72 -0
  518. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/regexopt.py +91 -0
  519. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/scanner.py +104 -0
  520. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/sphinxext.py +247 -0
  521. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/style.py +203 -0
  522. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/styles/__init__.py +61 -0
  523. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/styles/__pycache__/__init__.cpython-312.pyc +0 -0
  524. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/styles/__pycache__/_mapping.cpython-312.pyc +0 -0
  525. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/styles/_mapping.py +54 -0
  526. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/token.py +214 -0
  527. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/unistring.py +153 -0
  528. package/testenv/lib/python3.12/site-packages/pip/_vendor/pygments/util.py +324 -0
  529. package/testenv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/__init__.py +31 -0
  530. package/testenv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/__pycache__/__init__.cpython-312.pyc +0 -0
  531. package/testenv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/__pycache__/_impl.cpython-312.pyc +0 -0
  532. package/testenv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_impl.py +410 -0
  533. package/testenv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py +21 -0
  534. package/testenv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/__pycache__/__init__.cpython-312.pyc +0 -0
  535. package/testenv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/__pycache__/_in_process.cpython-312.pyc +0 -0
  536. package/testenv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py +389 -0
  537. package/testenv/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/py.typed +0 -0
  538. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__init__.py +179 -0
  539. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/__init__.cpython-312.pyc +0 -0
  540. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/__version__.cpython-312.pyc +0 -0
  541. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/_internal_utils.cpython-312.pyc +0 -0
  542. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/adapters.cpython-312.pyc +0 -0
  543. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/api.cpython-312.pyc +0 -0
  544. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/auth.cpython-312.pyc +0 -0
  545. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/certs.cpython-312.pyc +0 -0
  546. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/compat.cpython-312.pyc +0 -0
  547. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/cookies.cpython-312.pyc +0 -0
  548. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/exceptions.cpython-312.pyc +0 -0
  549. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/help.cpython-312.pyc +0 -0
  550. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/hooks.cpython-312.pyc +0 -0
  551. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/models.cpython-312.pyc +0 -0
  552. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/packages.cpython-312.pyc +0 -0
  553. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/sessions.cpython-312.pyc +0 -0
  554. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/status_codes.cpython-312.pyc +0 -0
  555. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/structures.cpython-312.pyc +0 -0
  556. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/utils.cpython-312.pyc +0 -0
  557. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/__version__.py +14 -0
  558. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/_internal_utils.py +50 -0
  559. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/adapters.py +719 -0
  560. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/api.py +157 -0
  561. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/auth.py +314 -0
  562. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/certs.py +17 -0
  563. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/compat.py +78 -0
  564. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/cookies.py +561 -0
  565. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/exceptions.py +151 -0
  566. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/help.py +127 -0
  567. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/hooks.py +33 -0
  568. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/models.py +1037 -0
  569. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/packages.py +25 -0
  570. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/sessions.py +831 -0
  571. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/status_codes.py +128 -0
  572. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/structures.py +99 -0
  573. package/testenv/lib/python3.12/site-packages/pip/_vendor/requests/utils.py +1096 -0
  574. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/__init__.py +26 -0
  575. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/__pycache__/__init__.cpython-312.pyc +0 -0
  576. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/__pycache__/providers.cpython-312.pyc +0 -0
  577. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/__pycache__/reporters.cpython-312.pyc +0 -0
  578. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/__pycache__/resolvers.cpython-312.pyc +0 -0
  579. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/__pycache__/structs.cpython-312.pyc +0 -0
  580. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/compat/__init__.py +0 -0
  581. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/compat/__pycache__/__init__.cpython-312.pyc +0 -0
  582. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/compat/__pycache__/collections_abc.cpython-312.pyc +0 -0
  583. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/compat/collections_abc.py +6 -0
  584. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/providers.py +133 -0
  585. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/py.typed +0 -0
  586. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/reporters.py +43 -0
  587. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/resolvers.py +547 -0
  588. package/testenv/lib/python3.12/site-packages/pip/_vendor/resolvelib/structs.py +170 -0
  589. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__init__.py +177 -0
  590. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__main__.py +273 -0
  591. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/__init__.cpython-312.pyc +0 -0
  592. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/__main__.cpython-312.pyc +0 -0
  593. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_cell_widths.cpython-312.pyc +0 -0
  594. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_emoji_codes.cpython-312.pyc +0 -0
  595. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_emoji_replace.cpython-312.pyc +0 -0
  596. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_export_format.cpython-312.pyc +0 -0
  597. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_extension.cpython-312.pyc +0 -0
  598. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_fileno.cpython-312.pyc +0 -0
  599. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_inspect.cpython-312.pyc +0 -0
  600. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_log_render.cpython-312.pyc +0 -0
  601. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_loop.cpython-312.pyc +0 -0
  602. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_null_file.cpython-312.pyc +0 -0
  603. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_palettes.cpython-312.pyc +0 -0
  604. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_pick.cpython-312.pyc +0 -0
  605. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_ratio.cpython-312.pyc +0 -0
  606. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_spinners.cpython-312.pyc +0 -0
  607. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_stack.cpython-312.pyc +0 -0
  608. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_timer.cpython-312.pyc +0 -0
  609. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_win32_console.cpython-312.pyc +0 -0
  610. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_windows.cpython-312.pyc +0 -0
  611. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_windows_renderer.cpython-312.pyc +0 -0
  612. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_wrap.cpython-312.pyc +0 -0
  613. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/abc.cpython-312.pyc +0 -0
  614. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/align.cpython-312.pyc +0 -0
  615. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/ansi.cpython-312.pyc +0 -0
  616. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/bar.cpython-312.pyc +0 -0
  617. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/box.cpython-312.pyc +0 -0
  618. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/cells.cpython-312.pyc +0 -0
  619. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/color.cpython-312.pyc +0 -0
  620. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/color_triplet.cpython-312.pyc +0 -0
  621. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/columns.cpython-312.pyc +0 -0
  622. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/console.cpython-312.pyc +0 -0
  623. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/constrain.cpython-312.pyc +0 -0
  624. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/containers.cpython-312.pyc +0 -0
  625. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/control.cpython-312.pyc +0 -0
  626. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/default_styles.cpython-312.pyc +0 -0
  627. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/diagnose.cpython-312.pyc +0 -0
  628. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/emoji.cpython-312.pyc +0 -0
  629. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/errors.cpython-312.pyc +0 -0
  630. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/file_proxy.cpython-312.pyc +0 -0
  631. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/filesize.cpython-312.pyc +0 -0
  632. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/highlighter.cpython-312.pyc +0 -0
  633. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/json.cpython-312.pyc +0 -0
  634. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/jupyter.cpython-312.pyc +0 -0
  635. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/layout.cpython-312.pyc +0 -0
  636. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/live.cpython-312.pyc +0 -0
  637. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/live_render.cpython-312.pyc +0 -0
  638. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/logging.cpython-312.pyc +0 -0
  639. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/markup.cpython-312.pyc +0 -0
  640. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/measure.cpython-312.pyc +0 -0
  641. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/padding.cpython-312.pyc +0 -0
  642. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/pager.cpython-312.pyc +0 -0
  643. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/palette.cpython-312.pyc +0 -0
  644. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/panel.cpython-312.pyc +0 -0
  645. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/pretty.cpython-312.pyc +0 -0
  646. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/progress.cpython-312.pyc +0 -0
  647. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/progress_bar.cpython-312.pyc +0 -0
  648. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/prompt.cpython-312.pyc +0 -0
  649. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/protocol.cpython-312.pyc +0 -0
  650. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/region.cpython-312.pyc +0 -0
  651. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/repr.cpython-312.pyc +0 -0
  652. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/rule.cpython-312.pyc +0 -0
  653. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/scope.cpython-312.pyc +0 -0
  654. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/screen.cpython-312.pyc +0 -0
  655. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/segment.cpython-312.pyc +0 -0
  656. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/spinner.cpython-312.pyc +0 -0
  657. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/status.cpython-312.pyc +0 -0
  658. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/style.cpython-312.pyc +0 -0
  659. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/styled.cpython-312.pyc +0 -0
  660. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/syntax.cpython-312.pyc +0 -0
  661. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/table.cpython-312.pyc +0 -0
  662. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/terminal_theme.cpython-312.pyc +0 -0
  663. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/text.cpython-312.pyc +0 -0
  664. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/theme.cpython-312.pyc +0 -0
  665. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/themes.cpython-312.pyc +0 -0
  666. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/traceback.cpython-312.pyc +0 -0
  667. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/tree.cpython-312.pyc +0 -0
  668. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_cell_widths.py +454 -0
  669. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_emoji_codes.py +3610 -0
  670. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_emoji_replace.py +32 -0
  671. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_export_format.py +76 -0
  672. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_extension.py +10 -0
  673. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_fileno.py +24 -0
  674. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_inspect.py +268 -0
  675. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_log_render.py +94 -0
  676. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_loop.py +43 -0
  677. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_null_file.py +69 -0
  678. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_palettes.py +309 -0
  679. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_pick.py +17 -0
  680. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_ratio.py +159 -0
  681. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_spinners.py +482 -0
  682. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_stack.py +16 -0
  683. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_timer.py +19 -0
  684. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_win32_console.py +661 -0
  685. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_windows.py +71 -0
  686. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_windows_renderer.py +56 -0
  687. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/_wrap.py +93 -0
  688. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/abc.py +33 -0
  689. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/align.py +312 -0
  690. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/ansi.py +241 -0
  691. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/bar.py +93 -0
  692. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/box.py +480 -0
  693. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/cells.py +174 -0
  694. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/color.py +621 -0
  695. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/color_triplet.py +38 -0
  696. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/columns.py +187 -0
  697. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/console.py +2661 -0
  698. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/constrain.py +37 -0
  699. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/containers.py +167 -0
  700. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/control.py +225 -0
  701. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/default_styles.py +191 -0
  702. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/diagnose.py +37 -0
  703. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/emoji.py +96 -0
  704. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/errors.py +34 -0
  705. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/file_proxy.py +57 -0
  706. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/filesize.py +88 -0
  707. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/highlighter.py +232 -0
  708. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/json.py +139 -0
  709. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/jupyter.py +101 -0
  710. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/layout.py +442 -0
  711. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/live.py +375 -0
  712. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/live_render.py +112 -0
  713. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/logging.py +297 -0
  714. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/markup.py +251 -0
  715. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/measure.py +151 -0
  716. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/padding.py +141 -0
  717. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/pager.py +34 -0
  718. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/palette.py +100 -0
  719. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/panel.py +318 -0
  720. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/pretty.py +1016 -0
  721. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/progress.py +1715 -0
  722. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/progress_bar.py +223 -0
  723. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/prompt.py +400 -0
  724. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/protocol.py +42 -0
  725. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/py.typed +0 -0
  726. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/region.py +10 -0
  727. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/repr.py +149 -0
  728. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/rule.py +130 -0
  729. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/scope.py +86 -0
  730. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/screen.py +54 -0
  731. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/segment.py +752 -0
  732. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/spinner.py +138 -0
  733. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/status.py +131 -0
  734. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/style.py +796 -0
  735. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/styled.py +42 -0
  736. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/syntax.py +966 -0
  737. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/table.py +1007 -0
  738. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/terminal_theme.py +153 -0
  739. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/text.py +1361 -0
  740. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/theme.py +115 -0
  741. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/themes.py +5 -0
  742. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/traceback.py +797 -0
  743. package/testenv/lib/python3.12/site-packages/pip/_vendor/rich/tree.py +257 -0
  744. package/testenv/lib/python3.12/site-packages/pip/_vendor/tomli/__init__.py +8 -0
  745. package/testenv/lib/python3.12/site-packages/pip/_vendor/tomli/__pycache__/__init__.cpython-312.pyc +0 -0
  746. package/testenv/lib/python3.12/site-packages/pip/_vendor/tomli/__pycache__/_parser.cpython-312.pyc +0 -0
  747. package/testenv/lib/python3.12/site-packages/pip/_vendor/tomli/__pycache__/_re.cpython-312.pyc +0 -0
  748. package/testenv/lib/python3.12/site-packages/pip/_vendor/tomli/__pycache__/_types.cpython-312.pyc +0 -0
  749. package/testenv/lib/python3.12/site-packages/pip/_vendor/tomli/_parser.py +770 -0
  750. package/testenv/lib/python3.12/site-packages/pip/_vendor/tomli/_re.py +112 -0
  751. package/testenv/lib/python3.12/site-packages/pip/_vendor/tomli/_types.py +10 -0
  752. package/testenv/lib/python3.12/site-packages/pip/_vendor/tomli/py.typed +1 -0
  753. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/__init__.py +36 -0
  754. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/__pycache__/__init__.cpython-312.pyc +0 -0
  755. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/__pycache__/_api.cpython-312.pyc +0 -0
  756. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/__pycache__/_macos.cpython-312.pyc +0 -0
  757. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/__pycache__/_openssl.cpython-312.pyc +0 -0
  758. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/__pycache__/_ssl_constants.cpython-312.pyc +0 -0
  759. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/__pycache__/_windows.cpython-312.pyc +0 -0
  760. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/_api.py +316 -0
  761. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/_macos.py +571 -0
  762. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/_openssl.py +66 -0
  763. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/_ssl_constants.py +31 -0
  764. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/_windows.py +567 -0
  765. package/testenv/lib/python3.12/site-packages/pip/_vendor/truststore/py.typed +0 -0
  766. package/testenv/lib/python3.12/site-packages/pip/_vendor/typing_extensions.py +3641 -0
  767. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/__init__.py +102 -0
  768. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/__init__.cpython-312.pyc +0 -0
  769. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/_collections.cpython-312.pyc +0 -0
  770. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/_version.cpython-312.pyc +0 -0
  771. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/connection.cpython-312.pyc +0 -0
  772. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/connectionpool.cpython-312.pyc +0 -0
  773. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/exceptions.cpython-312.pyc +0 -0
  774. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/fields.cpython-312.pyc +0 -0
  775. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/filepost.cpython-312.pyc +0 -0
  776. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/poolmanager.cpython-312.pyc +0 -0
  777. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/request.cpython-312.pyc +0 -0
  778. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/response.cpython-312.pyc +0 -0
  779. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/_collections.py +355 -0
  780. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/_version.py +2 -0
  781. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/connection.py +572 -0
  782. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/connectionpool.py +1140 -0
  783. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
  784. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/__init__.cpython-312.pyc +0 -0
  785. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/_appengine_environ.cpython-312.pyc +0 -0
  786. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/appengine.cpython-312.pyc +0 -0
  787. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/ntlmpool.cpython-312.pyc +0 -0
  788. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/pyopenssl.cpython-312.pyc +0 -0
  789. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/securetransport.cpython-312.pyc +0 -0
  790. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/socks.cpython-312.pyc +0 -0
  791. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +36 -0
  792. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
  793. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/__init__.cpython-312.pyc +0 -0
  794. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/bindings.cpython-312.pyc +0 -0
  795. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/low_level.cpython-312.pyc +0 -0
  796. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +519 -0
  797. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +397 -0
  798. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/appengine.py +314 -0
  799. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +130 -0
  800. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +518 -0
  801. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +920 -0
  802. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/socks.py +216 -0
  803. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/exceptions.py +323 -0
  804. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/fields.py +274 -0
  805. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/filepost.py +98 -0
  806. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/__init__.py +0 -0
  807. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/__pycache__/__init__.cpython-312.pyc +0 -0
  808. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/__pycache__/six.cpython-312.pyc +0 -0
  809. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
  810. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/__init__.cpython-312.pyc +0 -0
  811. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/makefile.cpython-312.pyc +0 -0
  812. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/weakref_finalize.cpython-312.pyc +0 -0
  813. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +51 -0
  814. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/backports/weakref_finalize.py +155 -0
  815. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/six.py +1076 -0
  816. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/poolmanager.py +540 -0
  817. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/request.py +191 -0
  818. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/response.py +879 -0
  819. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__init__.py +49 -0
  820. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/__init__.cpython-312.pyc +0 -0
  821. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/connection.cpython-312.pyc +0 -0
  822. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/proxy.cpython-312.pyc +0 -0
  823. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/queue.cpython-312.pyc +0 -0
  824. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/request.cpython-312.pyc +0 -0
  825. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/response.cpython-312.pyc +0 -0
  826. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/retry.cpython-312.pyc +0 -0
  827. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_.cpython-312.pyc +0 -0
  828. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_match_hostname.cpython-312.pyc +0 -0
  829. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/ssltransport.cpython-312.pyc +0 -0
  830. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/timeout.cpython-312.pyc +0 -0
  831. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/url.cpython-312.pyc +0 -0
  832. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/wait.cpython-312.pyc +0 -0
  833. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/connection.py +149 -0
  834. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/proxy.py +57 -0
  835. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/queue.py +22 -0
  836. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/request.py +137 -0
  837. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/response.py +107 -0
  838. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/retry.py +622 -0
  839. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/ssl_.py +504 -0
  840. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +159 -0
  841. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/ssltransport.py +221 -0
  842. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/timeout.py +271 -0
  843. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/url.py +435 -0
  844. package/testenv/lib/python3.12/site-packages/pip/_vendor/urllib3/util/wait.py +152 -0
  845. package/testenv/lib/python3.12/site-packages/pip/_vendor/vendor.txt +18 -0
  846. package/testenv/lib/python3.12/site-packages/pip/py.typed +4 -0
  847. package/testenv/lib/python3.12/site-packages/pip-25.0.dist-info/AUTHORS.txt +806 -0
  848. package/testenv/lib/python3.12/site-packages/pip-25.0.dist-info/INSTALLER +1 -0
  849. package/testenv/lib/python3.12/site-packages/pip-25.0.dist-info/LICENSE.txt +20 -0
  850. package/testenv/lib/python3.12/site-packages/pip-25.0.dist-info/METADATA +90 -0
  851. package/testenv/lib/python3.12/site-packages/pip-25.0.dist-info/RECORD +848 -0
  852. package/testenv/lib/python3.12/site-packages/pip-25.0.dist-info/REQUESTED +0 -0
  853. package/testenv/lib/python3.12/site-packages/pip-25.0.dist-info/WHEEL +5 -0
  854. package/testenv/lib/python3.12/site-packages/pip-25.0.dist-info/entry_points.txt +3 -0
  855. package/testenv/lib/python3.12/site-packages/pip-25.0.dist-info/top_level.txt +1 -0
  856. package/testenv/lib/python3.12/site-packages/pxz/__init__.py +50 -0
  857. package/testenv/lib/python3.12/site-packages/pxz/__pycache__/__init__.cpython-312.pyc +0 -0
  858. package/testenv/lib/python3.12/site-packages/pxz-1.1.14.dist-info/INSTALLER +1 -0
  859. package/testenv/lib/python3.12/site-packages/pxz-1.1.14.dist-info/METADATA +20 -0
  860. package/testenv/lib/python3.12/site-packages/pxz-1.1.14.dist-info/RECORD +8 -0
  861. package/testenv/lib/python3.12/site-packages/pxz-1.1.14.dist-info/REQUESTED +0 -0
  862. package/testenv/lib/python3.12/site-packages/pxz-1.1.14.dist-info/WHEEL +5 -0
  863. package/testenv/lib/python3.12/site-packages/pxz-1.1.14.dist-info/top_level.txt +1 -0
  864. package/testenv/pyvenv.cfg +5 -0
  865. package/README.md +0 -5
@@ -0,0 +1,296 @@
1
+ import errno
2
+ import itertools
3
+ import logging
4
+ import os.path
5
+ import tempfile
6
+ import traceback
7
+ from contextlib import ExitStack, contextmanager
8
+ from pathlib import Path
9
+ from typing import (
10
+ Any,
11
+ Callable,
12
+ Dict,
13
+ Generator,
14
+ List,
15
+ Optional,
16
+ TypeVar,
17
+ Union,
18
+ )
19
+
20
+ from pip._internal.utils.misc import enum, rmtree
21
+
22
+ logger = logging.getLogger(__name__)
23
+
24
+ _T = TypeVar("_T", bound="TempDirectory")
25
+
26
+
27
+ # Kinds of temporary directories. Only needed for ones that are
28
+ # globally-managed.
29
+ tempdir_kinds = enum(
30
+ BUILD_ENV="build-env",
31
+ EPHEM_WHEEL_CACHE="ephem-wheel-cache",
32
+ REQ_BUILD="req-build",
33
+ )
34
+
35
+
36
+ _tempdir_manager: Optional[ExitStack] = None
37
+
38
+
39
+ @contextmanager
40
+ def global_tempdir_manager() -> Generator[None, None, None]:
41
+ global _tempdir_manager
42
+ with ExitStack() as stack:
43
+ old_tempdir_manager, _tempdir_manager = _tempdir_manager, stack
44
+ try:
45
+ yield
46
+ finally:
47
+ _tempdir_manager = old_tempdir_manager
48
+
49
+
50
+ class TempDirectoryTypeRegistry:
51
+ """Manages temp directory behavior"""
52
+
53
+ def __init__(self) -> None:
54
+ self._should_delete: Dict[str, bool] = {}
55
+
56
+ def set_delete(self, kind: str, value: bool) -> None:
57
+ """Indicate whether a TempDirectory of the given kind should be
58
+ auto-deleted.
59
+ """
60
+ self._should_delete[kind] = value
61
+
62
+ def get_delete(self, kind: str) -> bool:
63
+ """Get configured auto-delete flag for a given TempDirectory type,
64
+ default True.
65
+ """
66
+ return self._should_delete.get(kind, True)
67
+
68
+
69
+ _tempdir_registry: Optional[TempDirectoryTypeRegistry] = None
70
+
71
+
72
+ @contextmanager
73
+ def tempdir_registry() -> Generator[TempDirectoryTypeRegistry, None, None]:
74
+ """Provides a scoped global tempdir registry that can be used to dictate
75
+ whether directories should be deleted.
76
+ """
77
+ global _tempdir_registry
78
+ old_tempdir_registry = _tempdir_registry
79
+ _tempdir_registry = TempDirectoryTypeRegistry()
80
+ try:
81
+ yield _tempdir_registry
82
+ finally:
83
+ _tempdir_registry = old_tempdir_registry
84
+
85
+
86
+ class _Default:
87
+ pass
88
+
89
+
90
+ _default = _Default()
91
+
92
+
93
+ class TempDirectory:
94
+ """Helper class that owns and cleans up a temporary directory.
95
+
96
+ This class can be used as a context manager or as an OO representation of a
97
+ temporary directory.
98
+
99
+ Attributes:
100
+ path
101
+ Location to the created temporary directory
102
+ delete
103
+ Whether the directory should be deleted when exiting
104
+ (when used as a contextmanager)
105
+
106
+ Methods:
107
+ cleanup()
108
+ Deletes the temporary directory
109
+
110
+ When used as a context manager, if the delete attribute is True, on
111
+ exiting the context the temporary directory is deleted.
112
+ """
113
+
114
+ def __init__(
115
+ self,
116
+ path: Optional[str] = None,
117
+ delete: Union[bool, None, _Default] = _default,
118
+ kind: str = "temp",
119
+ globally_managed: bool = False,
120
+ ignore_cleanup_errors: bool = True,
121
+ ):
122
+ super().__init__()
123
+
124
+ if delete is _default:
125
+ if path is not None:
126
+ # If we were given an explicit directory, resolve delete option
127
+ # now.
128
+ delete = False
129
+ else:
130
+ # Otherwise, we wait until cleanup and see what
131
+ # tempdir_registry says.
132
+ delete = None
133
+
134
+ # The only time we specify path is in for editables where it
135
+ # is the value of the --src option.
136
+ if path is None:
137
+ path = self._create(kind)
138
+
139
+ self._path = path
140
+ self._deleted = False
141
+ self.delete = delete
142
+ self.kind = kind
143
+ self.ignore_cleanup_errors = ignore_cleanup_errors
144
+
145
+ if globally_managed:
146
+ assert _tempdir_manager is not None
147
+ _tempdir_manager.enter_context(self)
148
+
149
+ @property
150
+ def path(self) -> str:
151
+ assert not self._deleted, f"Attempted to access deleted path: {self._path}"
152
+ return self._path
153
+
154
+ def __repr__(self) -> str:
155
+ return f"<{self.__class__.__name__} {self.path!r}>"
156
+
157
+ def __enter__(self: _T) -> _T:
158
+ return self
159
+
160
+ def __exit__(self, exc: Any, value: Any, tb: Any) -> None:
161
+ if self.delete is not None:
162
+ delete = self.delete
163
+ elif _tempdir_registry:
164
+ delete = _tempdir_registry.get_delete(self.kind)
165
+ else:
166
+ delete = True
167
+
168
+ if delete:
169
+ self.cleanup()
170
+
171
+ def _create(self, kind: str) -> str:
172
+ """Create a temporary directory and store its path in self.path"""
173
+ # We realpath here because some systems have their default tmpdir
174
+ # symlinked to another directory. This tends to confuse build
175
+ # scripts, so we canonicalize the path by traversing potential
176
+ # symlinks here.
177
+ path = os.path.realpath(tempfile.mkdtemp(prefix=f"pip-{kind}-"))
178
+ logger.debug("Created temporary directory: %s", path)
179
+ return path
180
+
181
+ def cleanup(self) -> None:
182
+ """Remove the temporary directory created and reset state"""
183
+ self._deleted = True
184
+ if not os.path.exists(self._path):
185
+ return
186
+
187
+ errors: List[BaseException] = []
188
+
189
+ def onerror(
190
+ func: Callable[..., Any],
191
+ path: Path,
192
+ exc_val: BaseException,
193
+ ) -> None:
194
+ """Log a warning for a `rmtree` error and continue"""
195
+ formatted_exc = "\n".join(
196
+ traceback.format_exception_only(type(exc_val), exc_val)
197
+ )
198
+ formatted_exc = formatted_exc.rstrip() # remove trailing new line
199
+ if func in (os.unlink, os.remove, os.rmdir):
200
+ logger.debug(
201
+ "Failed to remove a temporary file '%s' due to %s.\n",
202
+ path,
203
+ formatted_exc,
204
+ )
205
+ else:
206
+ logger.debug("%s failed with %s.", func.__qualname__, formatted_exc)
207
+ errors.append(exc_val)
208
+
209
+ if self.ignore_cleanup_errors:
210
+ try:
211
+ # first try with @retry; retrying to handle ephemeral errors
212
+ rmtree(self._path, ignore_errors=False)
213
+ except OSError:
214
+ # last pass ignore/log all errors
215
+ rmtree(self._path, onexc=onerror)
216
+ if errors:
217
+ logger.warning(
218
+ "Failed to remove contents in a temporary directory '%s'.\n"
219
+ "You can safely remove it manually.",
220
+ self._path,
221
+ )
222
+ else:
223
+ rmtree(self._path)
224
+
225
+
226
+ class AdjacentTempDirectory(TempDirectory):
227
+ """Helper class that creates a temporary directory adjacent to a real one.
228
+
229
+ Attributes:
230
+ original
231
+ The original directory to create a temp directory for.
232
+ path
233
+ After calling create() or entering, contains the full
234
+ path to the temporary directory.
235
+ delete
236
+ Whether the directory should be deleted when exiting
237
+ (when used as a contextmanager)
238
+
239
+ """
240
+
241
+ # The characters that may be used to name the temp directory
242
+ # We always prepend a ~ and then rotate through these until
243
+ # a usable name is found.
244
+ # pkg_resources raises a different error for .dist-info folder
245
+ # with leading '-' and invalid metadata
246
+ LEADING_CHARS = "-~.=%0123456789"
247
+
248
+ def __init__(self, original: str, delete: Optional[bool] = None) -> None:
249
+ self.original = original.rstrip("/\\")
250
+ super().__init__(delete=delete)
251
+
252
+ @classmethod
253
+ def _generate_names(cls, name: str) -> Generator[str, None, None]:
254
+ """Generates a series of temporary names.
255
+
256
+ The algorithm replaces the leading characters in the name
257
+ with ones that are valid filesystem characters, but are not
258
+ valid package names (for both Python and pip definitions of
259
+ package).
260
+ """
261
+ for i in range(1, len(name)):
262
+ for candidate in itertools.combinations_with_replacement(
263
+ cls.LEADING_CHARS, i - 1
264
+ ):
265
+ new_name = "~" + "".join(candidate) + name[i:]
266
+ if new_name != name:
267
+ yield new_name
268
+
269
+ # If we make it this far, we will have to make a longer name
270
+ for i in range(len(cls.LEADING_CHARS)):
271
+ for candidate in itertools.combinations_with_replacement(
272
+ cls.LEADING_CHARS, i
273
+ ):
274
+ new_name = "~" + "".join(candidate) + name
275
+ if new_name != name:
276
+ yield new_name
277
+
278
+ def _create(self, kind: str) -> str:
279
+ root, name = os.path.split(self.original)
280
+ for candidate in self._generate_names(name):
281
+ path = os.path.join(root, candidate)
282
+ try:
283
+ os.mkdir(path)
284
+ except OSError as ex:
285
+ # Continue if the name exists already
286
+ if ex.errno != errno.EEXIST:
287
+ raise
288
+ else:
289
+ path = os.path.realpath(path)
290
+ break
291
+ else:
292
+ # Final fallback on the default behavior.
293
+ path = os.path.realpath(tempfile.mkdtemp(prefix=f"pip-{kind}-"))
294
+
295
+ logger.debug("Created temporary directory: %s", path)
296
+ return path
@@ -0,0 +1,337 @@
1
+ """Utilities related archives.
2
+ """
3
+
4
+ import logging
5
+ import os
6
+ import shutil
7
+ import stat
8
+ import sys
9
+ import tarfile
10
+ import zipfile
11
+ from typing import Iterable, List, Optional
12
+ from zipfile import ZipInfo
13
+
14
+ from pip._internal.exceptions import InstallationError
15
+ from pip._internal.utils.filetypes import (
16
+ BZ2_EXTENSIONS,
17
+ TAR_EXTENSIONS,
18
+ XZ_EXTENSIONS,
19
+ ZIP_EXTENSIONS,
20
+ )
21
+ from pip._internal.utils.misc import ensure_dir
22
+
23
+ logger = logging.getLogger(__name__)
24
+
25
+
26
+ SUPPORTED_EXTENSIONS = ZIP_EXTENSIONS + TAR_EXTENSIONS
27
+
28
+ try:
29
+ import bz2 # noqa
30
+
31
+ SUPPORTED_EXTENSIONS += BZ2_EXTENSIONS
32
+ except ImportError:
33
+ logger.debug("bz2 module is not available")
34
+
35
+ try:
36
+ # Only for Python 3.3+
37
+ import lzma # noqa
38
+
39
+ SUPPORTED_EXTENSIONS += XZ_EXTENSIONS
40
+ except ImportError:
41
+ logger.debug("lzma module is not available")
42
+
43
+
44
+ def current_umask() -> int:
45
+ """Get the current umask which involves having to set it temporarily."""
46
+ mask = os.umask(0)
47
+ os.umask(mask)
48
+ return mask
49
+
50
+
51
+ def split_leading_dir(path: str) -> List[str]:
52
+ path = path.lstrip("/").lstrip("\\")
53
+ if "/" in path and (
54
+ ("\\" in path and path.find("/") < path.find("\\")) or "\\" not in path
55
+ ):
56
+ return path.split("/", 1)
57
+ elif "\\" in path:
58
+ return path.split("\\", 1)
59
+ else:
60
+ return [path, ""]
61
+
62
+
63
+ def has_leading_dir(paths: Iterable[str]) -> bool:
64
+ """Returns true if all the paths have the same leading path name
65
+ (i.e., everything is in one subdirectory in an archive)"""
66
+ common_prefix = None
67
+ for path in paths:
68
+ prefix, rest = split_leading_dir(path)
69
+ if not prefix:
70
+ return False
71
+ elif common_prefix is None:
72
+ common_prefix = prefix
73
+ elif prefix != common_prefix:
74
+ return False
75
+ return True
76
+
77
+
78
+ def is_within_directory(directory: str, target: str) -> bool:
79
+ """
80
+ Return true if the absolute path of target is within the directory
81
+ """
82
+ abs_directory = os.path.abspath(directory)
83
+ abs_target = os.path.abspath(target)
84
+
85
+ prefix = os.path.commonprefix([abs_directory, abs_target])
86
+ return prefix == abs_directory
87
+
88
+
89
+ def _get_default_mode_plus_executable() -> int:
90
+ return 0o777 & ~current_umask() | 0o111
91
+
92
+
93
+ def set_extracted_file_to_default_mode_plus_executable(path: str) -> None:
94
+ """
95
+ Make file present at path have execute for user/group/world
96
+ (chmod +x) is no-op on windows per python docs
97
+ """
98
+ os.chmod(path, _get_default_mode_plus_executable())
99
+
100
+
101
+ def zip_item_is_executable(info: ZipInfo) -> bool:
102
+ mode = info.external_attr >> 16
103
+ # if mode and regular file and any execute permissions for
104
+ # user/group/world?
105
+ return bool(mode and stat.S_ISREG(mode) and mode & 0o111)
106
+
107
+
108
+ def unzip_file(filename: str, location: str, flatten: bool = True) -> None:
109
+ """
110
+ Unzip the file (with path `filename`) to the destination `location`. All
111
+ files are written based on system defaults and umask (i.e. permissions are
112
+ not preserved), except that regular file members with any execute
113
+ permissions (user, group, or world) have "chmod +x" applied after being
114
+ written. Note that for windows, any execute changes using os.chmod are
115
+ no-ops per the python docs.
116
+ """
117
+ ensure_dir(location)
118
+ zipfp = open(filename, "rb")
119
+ try:
120
+ zip = zipfile.ZipFile(zipfp, allowZip64=True)
121
+ leading = has_leading_dir(zip.namelist()) and flatten
122
+ for info in zip.infolist():
123
+ name = info.filename
124
+ fn = name
125
+ if leading:
126
+ fn = split_leading_dir(name)[1]
127
+ fn = os.path.join(location, fn)
128
+ dir = os.path.dirname(fn)
129
+ if not is_within_directory(location, fn):
130
+ message = (
131
+ "The zip file ({}) has a file ({}) trying to install "
132
+ "outside target directory ({})"
133
+ )
134
+ raise InstallationError(message.format(filename, fn, location))
135
+ if fn.endswith("/") or fn.endswith("\\"):
136
+ # A directory
137
+ ensure_dir(fn)
138
+ else:
139
+ ensure_dir(dir)
140
+ # Don't use read() to avoid allocating an arbitrarily large
141
+ # chunk of memory for the file's content
142
+ fp = zip.open(name)
143
+ try:
144
+ with open(fn, "wb") as destfp:
145
+ shutil.copyfileobj(fp, destfp)
146
+ finally:
147
+ fp.close()
148
+ if zip_item_is_executable(info):
149
+ set_extracted_file_to_default_mode_plus_executable(fn)
150
+ finally:
151
+ zipfp.close()
152
+
153
+
154
+ def untar_file(filename: str, location: str) -> None:
155
+ """
156
+ Untar the file (with path `filename`) to the destination `location`.
157
+ All files are written based on system defaults and umask (i.e. permissions
158
+ are not preserved), except that regular file members with any execute
159
+ permissions (user, group, or world) have "chmod +x" applied on top of the
160
+ default. Note that for windows, any execute changes using os.chmod are
161
+ no-ops per the python docs.
162
+ """
163
+ ensure_dir(location)
164
+ if filename.lower().endswith(".gz") or filename.lower().endswith(".tgz"):
165
+ mode = "r:gz"
166
+ elif filename.lower().endswith(BZ2_EXTENSIONS):
167
+ mode = "r:bz2"
168
+ elif filename.lower().endswith(XZ_EXTENSIONS):
169
+ mode = "r:xz"
170
+ elif filename.lower().endswith(".tar"):
171
+ mode = "r"
172
+ else:
173
+ logger.warning(
174
+ "Cannot determine compression type for file %s",
175
+ filename,
176
+ )
177
+ mode = "r:*"
178
+
179
+ tar = tarfile.open(filename, mode, encoding="utf-8") # type: ignore
180
+ try:
181
+ leading = has_leading_dir([member.name for member in tar.getmembers()])
182
+
183
+ # PEP 706 added `tarfile.data_filter`, and made some other changes to
184
+ # Python's tarfile module (see below). The features were backported to
185
+ # security releases.
186
+ try:
187
+ data_filter = tarfile.data_filter
188
+ except AttributeError:
189
+ _untar_without_filter(filename, location, tar, leading)
190
+ else:
191
+ default_mode_plus_executable = _get_default_mode_plus_executable()
192
+
193
+ if leading:
194
+ # Strip the leading directory from all files in the archive,
195
+ # including hardlink targets (which are relative to the
196
+ # unpack location).
197
+ for member in tar.getmembers():
198
+ name_lead, name_rest = split_leading_dir(member.name)
199
+ member.name = name_rest
200
+ if member.islnk():
201
+ lnk_lead, lnk_rest = split_leading_dir(member.linkname)
202
+ if lnk_lead == name_lead:
203
+ member.linkname = lnk_rest
204
+
205
+ def pip_filter(member: tarfile.TarInfo, path: str) -> tarfile.TarInfo:
206
+ orig_mode = member.mode
207
+ try:
208
+ try:
209
+ member = data_filter(member, location)
210
+ except tarfile.LinkOutsideDestinationError:
211
+ if sys.version_info[:3] in {
212
+ (3, 8, 17),
213
+ (3, 9, 17),
214
+ (3, 10, 12),
215
+ (3, 11, 4),
216
+ }:
217
+ # The tarfile filter in specific Python versions
218
+ # raises LinkOutsideDestinationError on valid input
219
+ # (https://github.com/python/cpython/issues/107845)
220
+ # Ignore the error there, but do use the
221
+ # more lax `tar_filter`
222
+ member = tarfile.tar_filter(member, location)
223
+ else:
224
+ raise
225
+ except tarfile.TarError as exc:
226
+ message = "Invalid member in the tar file {}: {}"
227
+ # Filter error messages mention the member name.
228
+ # No need to add it here.
229
+ raise InstallationError(
230
+ message.format(
231
+ filename,
232
+ exc,
233
+ )
234
+ )
235
+ if member.isfile() and orig_mode & 0o111:
236
+ member.mode = default_mode_plus_executable
237
+ else:
238
+ # See PEP 706 note above.
239
+ # The PEP changed this from `int` to `Optional[int]`,
240
+ # where None means "use the default". Mypy doesn't
241
+ # know this yet.
242
+ member.mode = None # type: ignore [assignment]
243
+ return member
244
+
245
+ tar.extractall(location, filter=pip_filter)
246
+
247
+ finally:
248
+ tar.close()
249
+
250
+
251
+ def _untar_without_filter(
252
+ filename: str,
253
+ location: str,
254
+ tar: tarfile.TarFile,
255
+ leading: bool,
256
+ ) -> None:
257
+ """Fallback for Python without tarfile.data_filter"""
258
+ for member in tar.getmembers():
259
+ fn = member.name
260
+ if leading:
261
+ fn = split_leading_dir(fn)[1]
262
+ path = os.path.join(location, fn)
263
+ if not is_within_directory(location, path):
264
+ message = (
265
+ "The tar file ({}) has a file ({}) trying to install "
266
+ "outside target directory ({})"
267
+ )
268
+ raise InstallationError(message.format(filename, path, location))
269
+ if member.isdir():
270
+ ensure_dir(path)
271
+ elif member.issym():
272
+ try:
273
+ tar._extract_member(member, path)
274
+ except Exception as exc:
275
+ # Some corrupt tar files seem to produce this
276
+ # (specifically bad symlinks)
277
+ logger.warning(
278
+ "In the tar file %s the member %s is invalid: %s",
279
+ filename,
280
+ member.name,
281
+ exc,
282
+ )
283
+ continue
284
+ else:
285
+ try:
286
+ fp = tar.extractfile(member)
287
+ except (KeyError, AttributeError) as exc:
288
+ # Some corrupt tar files seem to produce this
289
+ # (specifically bad symlinks)
290
+ logger.warning(
291
+ "In the tar file %s the member %s is invalid: %s",
292
+ filename,
293
+ member.name,
294
+ exc,
295
+ )
296
+ continue
297
+ ensure_dir(os.path.dirname(path))
298
+ assert fp is not None
299
+ with open(path, "wb") as destfp:
300
+ shutil.copyfileobj(fp, destfp)
301
+ fp.close()
302
+ # Update the timestamp (useful for cython compiled files)
303
+ tar.utime(member, path)
304
+ # member have any execute permissions for user/group/world?
305
+ if member.mode & 0o111:
306
+ set_extracted_file_to_default_mode_plus_executable(path)
307
+
308
+
309
+ def unpack_file(
310
+ filename: str,
311
+ location: str,
312
+ content_type: Optional[str] = None,
313
+ ) -> None:
314
+ filename = os.path.realpath(filename)
315
+ if (
316
+ content_type == "application/zip"
317
+ or filename.lower().endswith(ZIP_EXTENSIONS)
318
+ or zipfile.is_zipfile(filename)
319
+ ):
320
+ unzip_file(filename, location, flatten=not filename.endswith(".whl"))
321
+ elif (
322
+ content_type == "application/x-gzip"
323
+ or tarfile.is_tarfile(filename)
324
+ or filename.lower().endswith(TAR_EXTENSIONS + BZ2_EXTENSIONS + XZ_EXTENSIONS)
325
+ ):
326
+ untar_file(filename, location)
327
+ else:
328
+ # FIXME: handle?
329
+ # FIXME: magic signatures?
330
+ logger.critical(
331
+ "Cannot unpack file %s (downloaded from %s, content-type: %s); "
332
+ "cannot detect archive format",
333
+ filename,
334
+ location,
335
+ content_type,
336
+ )
337
+ raise InstallationError(f"Cannot determine archive format of {location}")
@@ -0,0 +1,55 @@
1
+ import os
2
+ import string
3
+ import urllib.parse
4
+ import urllib.request
5
+
6
+ from .compat import WINDOWS
7
+
8
+
9
+ def path_to_url(path: str) -> str:
10
+ """
11
+ Convert a path to a file: URL. The path will be made absolute and have
12
+ quoted path parts.
13
+ """
14
+ path = os.path.normpath(os.path.abspath(path))
15
+ url = urllib.parse.urljoin("file:", urllib.request.pathname2url(path))
16
+ return url
17
+
18
+
19
+ def url_to_path(url: str) -> str:
20
+ """
21
+ Convert a file: URL to a path.
22
+ """
23
+ assert url.startswith(
24
+ "file:"
25
+ ), f"You can only turn file: urls into filenames (not {url!r})"
26
+
27
+ _, netloc, path, _, _ = urllib.parse.urlsplit(url)
28
+
29
+ if not netloc or netloc == "localhost":
30
+ # According to RFC 8089, same as empty authority.
31
+ netloc = ""
32
+ elif WINDOWS:
33
+ # If we have a UNC path, prepend UNC share notation.
34
+ netloc = "\\\\" + netloc
35
+ else:
36
+ raise ValueError(
37
+ f"non-local file URIs are not supported on this platform: {url!r}"
38
+ )
39
+
40
+ path = urllib.request.url2pathname(netloc + path)
41
+
42
+ # On Windows, urlsplit parses the path as something like "/C:/Users/foo".
43
+ # This creates issues for path-related functions like io.open(), so we try
44
+ # to detect and strip the leading slash.
45
+ if (
46
+ WINDOWS
47
+ and not netloc # Not UNC.
48
+ and len(path) >= 3
49
+ and path[0] == "/" # Leading slash to strip.
50
+ and path[1] in string.ascii_letters # Drive letter.
51
+ and path[2:4] in (":", ":/") # Colon + end of string, or colon + absolute path.
52
+ ):
53
+ path = path[1:]
54
+
55
+ return path