cli-ih 0.6.3__py3-none-any.whl → 0.6.3.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (424) hide show
  1. cli_ih/asyncClient.py +13 -7
  2. cli_ih/client.py +13 -6
  3. {cli_ih-0.6.3.dist-info → cli_ih-0.6.3.1.dist-info}/METADATA +1 -1
  4. cli_ih-0.6.3.1.dist-info/RECORD +425 -0
  5. {cli_ih-0.6.3.dist-info → cli_ih-0.6.3.1.dist-info}/WHEEL +1 -1
  6. {cli_ih-0.6.3.dist-info → cli_ih-0.6.3.1.dist-info}/top_level.txt +1 -0
  7. venv/Lib/site-packages/__editable___cli_ih_0_6_3_1_finder.py +85 -0
  8. venv/Lib/site-packages/pip/__init__.py +13 -0
  9. venv/Lib/site-packages/pip/__main__.py +24 -0
  10. venv/Lib/site-packages/pip/__pip-runner__.py +50 -0
  11. venv/Lib/site-packages/pip/_internal/__init__.py +18 -0
  12. venv/Lib/site-packages/pip/_internal/build_env.py +349 -0
  13. venv/Lib/site-packages/pip/_internal/cache.py +291 -0
  14. venv/Lib/site-packages/pip/_internal/cli/__init__.py +3 -0
  15. venv/Lib/site-packages/pip/_internal/cli/autocompletion.py +184 -0
  16. venv/Lib/site-packages/pip/_internal/cli/base_command.py +244 -0
  17. venv/Lib/site-packages/pip/_internal/cli/cmdoptions.py +1138 -0
  18. venv/Lib/site-packages/pip/_internal/cli/command_context.py +28 -0
  19. venv/Lib/site-packages/pip/_internal/cli/index_command.py +175 -0
  20. venv/Lib/site-packages/pip/_internal/cli/main.py +80 -0
  21. venv/Lib/site-packages/pip/_internal/cli/main_parser.py +134 -0
  22. venv/Lib/site-packages/pip/_internal/cli/parser.py +298 -0
  23. venv/Lib/site-packages/pip/_internal/cli/progress_bars.py +151 -0
  24. venv/Lib/site-packages/pip/_internal/cli/req_command.py +351 -0
  25. venv/Lib/site-packages/pip/_internal/cli/spinners.py +235 -0
  26. venv/Lib/site-packages/pip/_internal/cli/status_codes.py +6 -0
  27. venv/Lib/site-packages/pip/_internal/commands/__init__.py +139 -0
  28. venv/Lib/site-packages/pip/_internal/commands/cache.py +231 -0
  29. venv/Lib/site-packages/pip/_internal/commands/check.py +66 -0
  30. venv/Lib/site-packages/pip/_internal/commands/completion.py +135 -0
  31. venv/Lib/site-packages/pip/_internal/commands/configuration.py +288 -0
  32. venv/Lib/site-packages/pip/_internal/commands/debug.py +203 -0
  33. venv/Lib/site-packages/pip/_internal/commands/download.py +145 -0
  34. venv/Lib/site-packages/pip/_internal/commands/freeze.py +107 -0
  35. venv/Lib/site-packages/pip/_internal/commands/hash.py +58 -0
  36. venv/Lib/site-packages/pip/_internal/commands/help.py +40 -0
  37. venv/Lib/site-packages/pip/_internal/commands/index.py +159 -0
  38. venv/Lib/site-packages/pip/_internal/commands/inspect.py +92 -0
  39. venv/Lib/site-packages/pip/_internal/commands/install.py +798 -0
  40. venv/Lib/site-packages/pip/_internal/commands/list.py +400 -0
  41. venv/Lib/site-packages/pip/_internal/commands/lock.py +170 -0
  42. venv/Lib/site-packages/pip/_internal/commands/search.py +178 -0
  43. venv/Lib/site-packages/pip/_internal/commands/show.py +231 -0
  44. venv/Lib/site-packages/pip/_internal/commands/uninstall.py +113 -0
  45. venv/Lib/site-packages/pip/_internal/commands/wheel.py +181 -0
  46. venv/Lib/site-packages/pip/_internal/configuration.py +397 -0
  47. venv/Lib/site-packages/pip/_internal/distributions/__init__.py +21 -0
  48. venv/Lib/site-packages/pip/_internal/distributions/base.py +55 -0
  49. venv/Lib/site-packages/pip/_internal/distributions/installed.py +33 -0
  50. venv/Lib/site-packages/pip/_internal/distributions/sdist.py +165 -0
  51. venv/Lib/site-packages/pip/_internal/distributions/wheel.py +44 -0
  52. venv/Lib/site-packages/pip/_internal/exceptions.py +881 -0
  53. venv/Lib/site-packages/pip/_internal/index/__init__.py +1 -0
  54. venv/Lib/site-packages/pip/_internal/index/collector.py +489 -0
  55. venv/Lib/site-packages/pip/_internal/index/package_finder.py +1059 -0
  56. venv/Lib/site-packages/pip/_internal/index/sources.py +287 -0
  57. venv/Lib/site-packages/pip/_internal/locations/__init__.py +441 -0
  58. venv/Lib/site-packages/pip/_internal/locations/_distutils.py +173 -0
  59. venv/Lib/site-packages/pip/_internal/locations/_sysconfig.py +215 -0
  60. venv/Lib/site-packages/pip/_internal/locations/base.py +82 -0
  61. venv/Lib/site-packages/pip/_internal/main.py +12 -0
  62. venv/Lib/site-packages/pip/_internal/metadata/__init__.py +164 -0
  63. venv/Lib/site-packages/pip/_internal/metadata/_json.py +87 -0
  64. venv/Lib/site-packages/pip/_internal/metadata/base.py +685 -0
  65. venv/Lib/site-packages/pip/_internal/metadata/importlib/__init__.py +6 -0
  66. venv/Lib/site-packages/pip/_internal/metadata/importlib/_compat.py +87 -0
  67. venv/Lib/site-packages/pip/_internal/metadata/importlib/_dists.py +223 -0
  68. venv/Lib/site-packages/pip/_internal/metadata/importlib/_envs.py +143 -0
  69. venv/Lib/site-packages/pip/_internal/metadata/pkg_resources.py +298 -0
  70. venv/Lib/site-packages/pip/_internal/models/__init__.py +1 -0
  71. venv/Lib/site-packages/pip/_internal/models/candidate.py +25 -0
  72. venv/Lib/site-packages/pip/_internal/models/direct_url.py +227 -0
  73. venv/Lib/site-packages/pip/_internal/models/format_control.py +78 -0
  74. venv/Lib/site-packages/pip/_internal/models/index.py +28 -0
  75. venv/Lib/site-packages/pip/_internal/models/installation_report.py +57 -0
  76. venv/Lib/site-packages/pip/_internal/models/link.py +613 -0
  77. venv/Lib/site-packages/pip/_internal/models/pylock.py +188 -0
  78. venv/Lib/site-packages/pip/_internal/models/scheme.py +25 -0
  79. venv/Lib/site-packages/pip/_internal/models/search_scope.py +126 -0
  80. venv/Lib/site-packages/pip/_internal/models/selection_prefs.py +53 -0
  81. venv/Lib/site-packages/pip/_internal/models/target_python.py +122 -0
  82. venv/Lib/site-packages/pip/_internal/models/wheel.py +141 -0
  83. venv/Lib/site-packages/pip/_internal/network/__init__.py +1 -0
  84. venv/Lib/site-packages/pip/_internal/network/auth.py +564 -0
  85. venv/Lib/site-packages/pip/_internal/network/cache.py +133 -0
  86. venv/Lib/site-packages/pip/_internal/network/download.py +342 -0
  87. venv/Lib/site-packages/pip/_internal/network/lazy_wheel.py +213 -0
  88. venv/Lib/site-packages/pip/_internal/network/session.py +528 -0
  89. venv/Lib/site-packages/pip/_internal/network/utils.py +98 -0
  90. venv/Lib/site-packages/pip/_internal/network/xmlrpc.py +61 -0
  91. venv/Lib/site-packages/pip/_internal/operations/__init__.py +0 -0
  92. venv/Lib/site-packages/pip/_internal/operations/build/__init__.py +0 -0
  93. venv/Lib/site-packages/pip/_internal/operations/build/build_tracker.py +140 -0
  94. venv/Lib/site-packages/pip/_internal/operations/build/metadata.py +38 -0
  95. venv/Lib/site-packages/pip/_internal/operations/build/metadata_editable.py +41 -0
  96. venv/Lib/site-packages/pip/_internal/operations/build/metadata_legacy.py +73 -0
  97. venv/Lib/site-packages/pip/_internal/operations/build/wheel.py +38 -0
  98. venv/Lib/site-packages/pip/_internal/operations/build/wheel_editable.py +47 -0
  99. venv/Lib/site-packages/pip/_internal/operations/build/wheel_legacy.py +119 -0
  100. venv/Lib/site-packages/pip/_internal/operations/check.py +175 -0
  101. venv/Lib/site-packages/pip/_internal/operations/freeze.py +259 -0
  102. venv/Lib/site-packages/pip/_internal/operations/install/__init__.py +1 -0
  103. venv/Lib/site-packages/pip/_internal/operations/install/editable_legacy.py +48 -0
  104. venv/Lib/site-packages/pip/_internal/operations/install/wheel.py +746 -0
  105. venv/Lib/site-packages/pip/_internal/operations/prepare.py +742 -0
  106. venv/Lib/site-packages/pip/_internal/pyproject.py +182 -0
  107. venv/Lib/site-packages/pip/_internal/req/__init__.py +105 -0
  108. venv/Lib/site-packages/pip/_internal/req/constructors.py +562 -0
  109. venv/Lib/site-packages/pip/_internal/req/req_dependency_group.py +75 -0
  110. venv/Lib/site-packages/pip/_internal/req/req_file.py +620 -0
  111. venv/Lib/site-packages/pip/_internal/req/req_install.py +937 -0
  112. venv/Lib/site-packages/pip/_internal/req/req_set.py +81 -0
  113. venv/Lib/site-packages/pip/_internal/req/req_uninstall.py +639 -0
  114. venv/Lib/site-packages/pip/_internal/resolution/__init__.py +0 -0
  115. venv/Lib/site-packages/pip/_internal/resolution/base.py +20 -0
  116. venv/Lib/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
  117. venv/Lib/site-packages/pip/_internal/resolution/legacy/resolver.py +598 -0
  118. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
  119. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/base.py +142 -0
  120. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/candidates.py +582 -0
  121. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/factory.py +814 -0
  122. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +166 -0
  123. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/provider.py +276 -0
  124. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/reporter.py +85 -0
  125. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/requirements.py +247 -0
  126. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/resolver.py +336 -0
  127. venv/Lib/site-packages/pip/_internal/self_outdated_check.py +254 -0
  128. venv/Lib/site-packages/pip/_internal/utils/__init__.py +0 -0
  129. venv/Lib/site-packages/pip/_internal/utils/_jaraco_text.py +109 -0
  130. venv/Lib/site-packages/pip/_internal/utils/_log.py +38 -0
  131. venv/Lib/site-packages/pip/_internal/utils/appdirs.py +52 -0
  132. venv/Lib/site-packages/pip/_internal/utils/compat.py +85 -0
  133. venv/Lib/site-packages/pip/_internal/utils/compatibility_tags.py +201 -0
  134. venv/Lib/site-packages/pip/_internal/utils/datetime.py +10 -0
  135. venv/Lib/site-packages/pip/_internal/utils/deprecation.py +126 -0
  136. venv/Lib/site-packages/pip/_internal/utils/direct_url_helpers.py +87 -0
  137. venv/Lib/site-packages/pip/_internal/utils/egg_link.py +81 -0
  138. venv/Lib/site-packages/pip/_internal/utils/entrypoints.py +88 -0
  139. venv/Lib/site-packages/pip/_internal/utils/filesystem.py +152 -0
  140. venv/Lib/site-packages/pip/_internal/utils/filetypes.py +24 -0
  141. venv/Lib/site-packages/pip/_internal/utils/glibc.py +102 -0
  142. venv/Lib/site-packages/pip/_internal/utils/hashes.py +150 -0
  143. venv/Lib/site-packages/pip/_internal/utils/logging.py +364 -0
  144. venv/Lib/site-packages/pip/_internal/utils/misc.py +765 -0
  145. venv/Lib/site-packages/pip/_internal/utils/packaging.py +44 -0
  146. venv/Lib/site-packages/pip/_internal/utils/retry.py +45 -0
  147. venv/Lib/site-packages/pip/_internal/utils/setuptools_build.py +149 -0
  148. venv/Lib/site-packages/pip/_internal/utils/subprocess.py +248 -0
  149. venv/Lib/site-packages/pip/_internal/utils/temp_dir.py +294 -0
  150. venv/Lib/site-packages/pip/_internal/utils/unpacking.py +337 -0
  151. venv/Lib/site-packages/pip/_internal/utils/urls.py +55 -0
  152. venv/Lib/site-packages/pip/_internal/utils/virtualenv.py +105 -0
  153. venv/Lib/site-packages/pip/_internal/utils/wheel.py +132 -0
  154. venv/Lib/site-packages/pip/_internal/vcs/__init__.py +15 -0
  155. venv/Lib/site-packages/pip/_internal/vcs/bazaar.py +130 -0
  156. venv/Lib/site-packages/pip/_internal/vcs/git.py +571 -0
  157. venv/Lib/site-packages/pip/_internal/vcs/mercurial.py +186 -0
  158. venv/Lib/site-packages/pip/_internal/vcs/subversion.py +335 -0
  159. venv/Lib/site-packages/pip/_internal/vcs/versioncontrol.py +693 -0
  160. venv/Lib/site-packages/pip/_internal/wheel_builder.py +334 -0
  161. venv/Lib/site-packages/pip/_vendor/__init__.py +117 -0
  162. venv/Lib/site-packages/pip/_vendor/cachecontrol/__init__.py +29 -0
  163. venv/Lib/site-packages/pip/_vendor/cachecontrol/_cmd.py +70 -0
  164. venv/Lib/site-packages/pip/_vendor/cachecontrol/adapter.py +168 -0
  165. venv/Lib/site-packages/pip/_vendor/cachecontrol/cache.py +75 -0
  166. venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +8 -0
  167. venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +145 -0
  168. venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +48 -0
  169. venv/Lib/site-packages/pip/_vendor/cachecontrol/controller.py +511 -0
  170. venv/Lib/site-packages/pip/_vendor/cachecontrol/filewrapper.py +119 -0
  171. venv/Lib/site-packages/pip/_vendor/cachecontrol/heuristics.py +157 -0
  172. venv/Lib/site-packages/pip/_vendor/cachecontrol/py.typed +0 -0
  173. venv/Lib/site-packages/pip/_vendor/cachecontrol/serialize.py +146 -0
  174. venv/Lib/site-packages/pip/_vendor/cachecontrol/wrapper.py +43 -0
  175. venv/Lib/site-packages/pip/_vendor/certifi/__init__.py +4 -0
  176. venv/Lib/site-packages/pip/_vendor/certifi/__main__.py +12 -0
  177. venv/Lib/site-packages/pip/_vendor/certifi/core.py +83 -0
  178. venv/Lib/site-packages/pip/_vendor/certifi/py.typed +0 -0
  179. venv/Lib/site-packages/pip/_vendor/dependency_groups/__init__.py +13 -0
  180. venv/Lib/site-packages/pip/_vendor/dependency_groups/__main__.py +65 -0
  181. venv/Lib/site-packages/pip/_vendor/dependency_groups/_implementation.py +209 -0
  182. venv/Lib/site-packages/pip/_vendor/dependency_groups/_lint_dependency_groups.py +59 -0
  183. venv/Lib/site-packages/pip/_vendor/dependency_groups/_pip_wrapper.py +62 -0
  184. venv/Lib/site-packages/pip/_vendor/dependency_groups/_toml_compat.py +9 -0
  185. venv/Lib/site-packages/pip/_vendor/dependency_groups/py.typed +0 -0
  186. venv/Lib/site-packages/pip/_vendor/distlib/__init__.py +33 -0
  187. venv/Lib/site-packages/pip/_vendor/distlib/compat.py +1137 -0
  188. venv/Lib/site-packages/pip/_vendor/distlib/resources.py +358 -0
  189. venv/Lib/site-packages/pip/_vendor/distlib/scripts.py +447 -0
  190. venv/Lib/site-packages/pip/_vendor/distlib/util.py +1984 -0
  191. venv/Lib/site-packages/pip/_vendor/distro/__init__.py +54 -0
  192. venv/Lib/site-packages/pip/_vendor/distro/__main__.py +4 -0
  193. venv/Lib/site-packages/pip/_vendor/distro/distro.py +1403 -0
  194. venv/Lib/site-packages/pip/_vendor/distro/py.typed +0 -0
  195. venv/Lib/site-packages/pip/_vendor/idna/__init__.py +45 -0
  196. venv/Lib/site-packages/pip/_vendor/idna/codec.py +122 -0
  197. venv/Lib/site-packages/pip/_vendor/idna/compat.py +15 -0
  198. venv/Lib/site-packages/pip/_vendor/idna/core.py +437 -0
  199. venv/Lib/site-packages/pip/_vendor/idna/idnadata.py +4243 -0
  200. venv/Lib/site-packages/pip/_vendor/idna/intranges.py +57 -0
  201. venv/Lib/site-packages/pip/_vendor/idna/package_data.py +1 -0
  202. venv/Lib/site-packages/pip/_vendor/idna/py.typed +0 -0
  203. venv/Lib/site-packages/pip/_vendor/idna/uts46data.py +8681 -0
  204. venv/Lib/site-packages/pip/_vendor/msgpack/__init__.py +55 -0
  205. venv/Lib/site-packages/pip/_vendor/msgpack/exceptions.py +48 -0
  206. venv/Lib/site-packages/pip/_vendor/msgpack/ext.py +170 -0
  207. venv/Lib/site-packages/pip/_vendor/msgpack/fallback.py +929 -0
  208. venv/Lib/site-packages/pip/_vendor/packaging/__init__.py +15 -0
  209. venv/Lib/site-packages/pip/_vendor/packaging/_elffile.py +109 -0
  210. venv/Lib/site-packages/pip/_vendor/packaging/_manylinux.py +262 -0
  211. venv/Lib/site-packages/pip/_vendor/packaging/_musllinux.py +85 -0
  212. venv/Lib/site-packages/pip/_vendor/packaging/_parser.py +353 -0
  213. venv/Lib/site-packages/pip/_vendor/packaging/_structures.py +61 -0
  214. venv/Lib/site-packages/pip/_vendor/packaging/_tokenizer.py +195 -0
  215. venv/Lib/site-packages/pip/_vendor/packaging/licenses/__init__.py +145 -0
  216. venv/Lib/site-packages/pip/_vendor/packaging/licenses/_spdx.py +759 -0
  217. venv/Lib/site-packages/pip/_vendor/packaging/markers.py +362 -0
  218. venv/Lib/site-packages/pip/_vendor/packaging/metadata.py +862 -0
  219. venv/Lib/site-packages/pip/_vendor/packaging/py.typed +0 -0
  220. venv/Lib/site-packages/pip/_vendor/packaging/requirements.py +91 -0
  221. venv/Lib/site-packages/pip/_vendor/packaging/specifiers.py +1019 -0
  222. venv/Lib/site-packages/pip/_vendor/packaging/tags.py +656 -0
  223. venv/Lib/site-packages/pip/_vendor/packaging/utils.py +163 -0
  224. venv/Lib/site-packages/pip/_vendor/packaging/version.py +582 -0
  225. venv/Lib/site-packages/pip/_vendor/pkg_resources/__init__.py +3676 -0
  226. venv/Lib/site-packages/pip/_vendor/platformdirs/__init__.py +631 -0
  227. venv/Lib/site-packages/pip/_vendor/platformdirs/__main__.py +55 -0
  228. venv/Lib/site-packages/pip/_vendor/platformdirs/android.py +249 -0
  229. venv/Lib/site-packages/pip/_vendor/platformdirs/api.py +299 -0
  230. venv/Lib/site-packages/pip/_vendor/platformdirs/macos.py +144 -0
  231. venv/Lib/site-packages/pip/_vendor/platformdirs/py.typed +0 -0
  232. venv/Lib/site-packages/pip/_vendor/platformdirs/unix.py +272 -0
  233. venv/Lib/site-packages/pip/_vendor/platformdirs/version.py +21 -0
  234. venv/Lib/site-packages/pip/_vendor/platformdirs/windows.py +272 -0
  235. venv/Lib/site-packages/pip/_vendor/pygments/__init__.py +82 -0
  236. venv/Lib/site-packages/pip/_vendor/pygments/__main__.py +17 -0
  237. venv/Lib/site-packages/pip/_vendor/pygments/console.py +70 -0
  238. venv/Lib/site-packages/pip/_vendor/pygments/filter.py +70 -0
  239. venv/Lib/site-packages/pip/_vendor/pygments/filters/__init__.py +940 -0
  240. venv/Lib/site-packages/pip/_vendor/pygments/formatter.py +129 -0
  241. venv/Lib/site-packages/pip/_vendor/pygments/formatters/__init__.py +157 -0
  242. venv/Lib/site-packages/pip/_vendor/pygments/formatters/_mapping.py +23 -0
  243. venv/Lib/site-packages/pip/_vendor/pygments/lexer.py +963 -0
  244. venv/Lib/site-packages/pip/_vendor/pygments/lexers/__init__.py +362 -0
  245. venv/Lib/site-packages/pip/_vendor/pygments/lexers/_mapping.py +602 -0
  246. venv/Lib/site-packages/pip/_vendor/pygments/lexers/python.py +1201 -0
  247. venv/Lib/site-packages/pip/_vendor/pygments/modeline.py +43 -0
  248. venv/Lib/site-packages/pip/_vendor/pygments/plugin.py +72 -0
  249. venv/Lib/site-packages/pip/_vendor/pygments/regexopt.py +91 -0
  250. venv/Lib/site-packages/pip/_vendor/pygments/scanner.py +104 -0
  251. venv/Lib/site-packages/pip/_vendor/pygments/sphinxext.py +247 -0
  252. venv/Lib/site-packages/pip/_vendor/pygments/style.py +203 -0
  253. venv/Lib/site-packages/pip/_vendor/pygments/styles/__init__.py +61 -0
  254. venv/Lib/site-packages/pip/_vendor/pygments/styles/_mapping.py +54 -0
  255. venv/Lib/site-packages/pip/_vendor/pygments/token.py +214 -0
  256. venv/Lib/site-packages/pip/_vendor/pygments/unistring.py +153 -0
  257. venv/Lib/site-packages/pip/_vendor/pygments/util.py +324 -0
  258. venv/Lib/site-packages/pip/_vendor/pyproject_hooks/__init__.py +31 -0
  259. venv/Lib/site-packages/pip/_vendor/pyproject_hooks/_impl.py +410 -0
  260. venv/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py +21 -0
  261. venv/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py +389 -0
  262. venv/Lib/site-packages/pip/_vendor/pyproject_hooks/py.typed +0 -0
  263. venv/Lib/site-packages/pip/_vendor/requests/__init__.py +179 -0
  264. venv/Lib/site-packages/pip/_vendor/requests/__version__.py +14 -0
  265. venv/Lib/site-packages/pip/_vendor/requests/_internal_utils.py +50 -0
  266. venv/Lib/site-packages/pip/_vendor/requests/adapters.py +719 -0
  267. venv/Lib/site-packages/pip/_vendor/requests/api.py +157 -0
  268. venv/Lib/site-packages/pip/_vendor/requests/auth.py +314 -0
  269. venv/Lib/site-packages/pip/_vendor/requests/certs.py +17 -0
  270. venv/Lib/site-packages/pip/_vendor/requests/compat.py +90 -0
  271. venv/Lib/site-packages/pip/_vendor/requests/cookies.py +561 -0
  272. venv/Lib/site-packages/pip/_vendor/requests/exceptions.py +151 -0
  273. venv/Lib/site-packages/pip/_vendor/requests/help.py +127 -0
  274. venv/Lib/site-packages/pip/_vendor/requests/hooks.py +33 -0
  275. venv/Lib/site-packages/pip/_vendor/requests/models.py +1039 -0
  276. venv/Lib/site-packages/pip/_vendor/requests/packages.py +25 -0
  277. venv/Lib/site-packages/pip/_vendor/requests/sessions.py +831 -0
  278. venv/Lib/site-packages/pip/_vendor/requests/status_codes.py +128 -0
  279. venv/Lib/site-packages/pip/_vendor/requests/structures.py +99 -0
  280. venv/Lib/site-packages/pip/_vendor/requests/utils.py +1086 -0
  281. venv/Lib/site-packages/pip/_vendor/resolvelib/__init__.py +27 -0
  282. venv/Lib/site-packages/pip/_vendor/resolvelib/providers.py +196 -0
  283. venv/Lib/site-packages/pip/_vendor/resolvelib/py.typed +0 -0
  284. venv/Lib/site-packages/pip/_vendor/resolvelib/reporters.py +55 -0
  285. venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers/__init__.py +27 -0
  286. venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers/abstract.py +47 -0
  287. venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers/criterion.py +48 -0
  288. venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers/exceptions.py +57 -0
  289. venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py +622 -0
  290. venv/Lib/site-packages/pip/_vendor/resolvelib/structs.py +209 -0
  291. venv/Lib/site-packages/pip/_vendor/rich/__init__.py +177 -0
  292. venv/Lib/site-packages/pip/_vendor/rich/__main__.py +245 -0
  293. venv/Lib/site-packages/pip/_vendor/rich/_cell_widths.py +454 -0
  294. venv/Lib/site-packages/pip/_vendor/rich/_emoji_codes.py +3610 -0
  295. venv/Lib/site-packages/pip/_vendor/rich/_emoji_replace.py +32 -0
  296. venv/Lib/site-packages/pip/_vendor/rich/_export_format.py +76 -0
  297. venv/Lib/site-packages/pip/_vendor/rich/_extension.py +10 -0
  298. venv/Lib/site-packages/pip/_vendor/rich/_fileno.py +24 -0
  299. venv/Lib/site-packages/pip/_vendor/rich/_inspect.py +268 -0
  300. venv/Lib/site-packages/pip/_vendor/rich/_log_render.py +94 -0
  301. venv/Lib/site-packages/pip/_vendor/rich/_loop.py +43 -0
  302. venv/Lib/site-packages/pip/_vendor/rich/_null_file.py +69 -0
  303. venv/Lib/site-packages/pip/_vendor/rich/_palettes.py +309 -0
  304. venv/Lib/site-packages/pip/_vendor/rich/_pick.py +17 -0
  305. venv/Lib/site-packages/pip/_vendor/rich/_ratio.py +153 -0
  306. venv/Lib/site-packages/pip/_vendor/rich/_spinners.py +482 -0
  307. venv/Lib/site-packages/pip/_vendor/rich/_stack.py +16 -0
  308. venv/Lib/site-packages/pip/_vendor/rich/_timer.py +19 -0
  309. venv/Lib/site-packages/pip/_vendor/rich/_win32_console.py +661 -0
  310. venv/Lib/site-packages/pip/_vendor/rich/_windows.py +71 -0
  311. venv/Lib/site-packages/pip/_vendor/rich/_windows_renderer.py +56 -0
  312. venv/Lib/site-packages/pip/_vendor/rich/_wrap.py +93 -0
  313. venv/Lib/site-packages/pip/_vendor/rich/abc.py +33 -0
  314. venv/Lib/site-packages/pip/_vendor/rich/align.py +306 -0
  315. venv/Lib/site-packages/pip/_vendor/rich/ansi.py +241 -0
  316. venv/Lib/site-packages/pip/_vendor/rich/bar.py +93 -0
  317. venv/Lib/site-packages/pip/_vendor/rich/box.py +474 -0
  318. venv/Lib/site-packages/pip/_vendor/rich/cells.py +174 -0
  319. venv/Lib/site-packages/pip/_vendor/rich/color.py +621 -0
  320. venv/Lib/site-packages/pip/_vendor/rich/color_triplet.py +38 -0
  321. venv/Lib/site-packages/pip/_vendor/rich/columns.py +187 -0
  322. venv/Lib/site-packages/pip/_vendor/rich/console.py +2680 -0
  323. venv/Lib/site-packages/pip/_vendor/rich/constrain.py +37 -0
  324. venv/Lib/site-packages/pip/_vendor/rich/containers.py +167 -0
  325. venv/Lib/site-packages/pip/_vendor/rich/control.py +219 -0
  326. venv/Lib/site-packages/pip/_vendor/rich/default_styles.py +193 -0
  327. venv/Lib/site-packages/pip/_vendor/rich/diagnose.py +39 -0
  328. venv/Lib/site-packages/pip/_vendor/rich/emoji.py +91 -0
  329. venv/Lib/site-packages/pip/_vendor/rich/errors.py +34 -0
  330. venv/Lib/site-packages/pip/_vendor/rich/file_proxy.py +57 -0
  331. venv/Lib/site-packages/pip/_vendor/rich/filesize.py +88 -0
  332. venv/Lib/site-packages/pip/_vendor/rich/highlighter.py +232 -0
  333. venv/Lib/site-packages/pip/_vendor/rich/json.py +139 -0
  334. venv/Lib/site-packages/pip/_vendor/rich/jupyter.py +101 -0
  335. venv/Lib/site-packages/pip/_vendor/rich/layout.py +442 -0
  336. venv/Lib/site-packages/pip/_vendor/rich/live.py +400 -0
  337. venv/Lib/site-packages/pip/_vendor/rich/live_render.py +106 -0
  338. venv/Lib/site-packages/pip/_vendor/rich/logging.py +297 -0
  339. venv/Lib/site-packages/pip/_vendor/rich/markup.py +251 -0
  340. venv/Lib/site-packages/pip/_vendor/rich/measure.py +151 -0
  341. venv/Lib/site-packages/pip/_vendor/rich/padding.py +141 -0
  342. venv/Lib/site-packages/pip/_vendor/rich/pager.py +34 -0
  343. venv/Lib/site-packages/pip/_vendor/rich/palette.py +100 -0
  344. venv/Lib/site-packages/pip/_vendor/rich/panel.py +317 -0
  345. venv/Lib/site-packages/pip/_vendor/rich/pretty.py +1016 -0
  346. venv/Lib/site-packages/pip/_vendor/rich/progress.py +1715 -0
  347. venv/Lib/site-packages/pip/_vendor/rich/progress_bar.py +223 -0
  348. venv/Lib/site-packages/pip/_vendor/rich/prompt.py +400 -0
  349. venv/Lib/site-packages/pip/_vendor/rich/protocol.py +42 -0
  350. venv/Lib/site-packages/pip/_vendor/rich/py.typed +0 -0
  351. venv/Lib/site-packages/pip/_vendor/rich/region.py +10 -0
  352. venv/Lib/site-packages/pip/_vendor/rich/repr.py +149 -0
  353. venv/Lib/site-packages/pip/_vendor/rich/rule.py +130 -0
  354. venv/Lib/site-packages/pip/_vendor/rich/scope.py +86 -0
  355. venv/Lib/site-packages/pip/_vendor/rich/screen.py +54 -0
  356. venv/Lib/site-packages/pip/_vendor/rich/segment.py +752 -0
  357. venv/Lib/site-packages/pip/_vendor/rich/spinner.py +132 -0
  358. venv/Lib/site-packages/pip/_vendor/rich/status.py +131 -0
  359. venv/Lib/site-packages/pip/_vendor/rich/style.py +796 -0
  360. venv/Lib/site-packages/pip/_vendor/rich/styled.py +42 -0
  361. venv/Lib/site-packages/pip/_vendor/rich/syntax.py +985 -0
  362. venv/Lib/site-packages/pip/_vendor/rich/table.py +1006 -0
  363. venv/Lib/site-packages/pip/_vendor/rich/terminal_theme.py +153 -0
  364. venv/Lib/site-packages/pip/_vendor/rich/text.py +1361 -0
  365. venv/Lib/site-packages/pip/_vendor/rich/theme.py +115 -0
  366. venv/Lib/site-packages/pip/_vendor/rich/themes.py +5 -0
  367. venv/Lib/site-packages/pip/_vendor/rich/traceback.py +899 -0
  368. venv/Lib/site-packages/pip/_vendor/rich/tree.py +257 -0
  369. venv/Lib/site-packages/pip/_vendor/tomli/__init__.py +8 -0
  370. venv/Lib/site-packages/pip/_vendor/tomli/_parser.py +770 -0
  371. venv/Lib/site-packages/pip/_vendor/tomli/_re.py +112 -0
  372. venv/Lib/site-packages/pip/_vendor/tomli/_types.py +10 -0
  373. venv/Lib/site-packages/pip/_vendor/tomli/py.typed +1 -0
  374. venv/Lib/site-packages/pip/_vendor/tomli_w/__init__.py +4 -0
  375. venv/Lib/site-packages/pip/_vendor/tomli_w/_writer.py +229 -0
  376. venv/Lib/site-packages/pip/_vendor/tomli_w/py.typed +1 -0
  377. venv/Lib/site-packages/pip/_vendor/truststore/__init__.py +36 -0
  378. venv/Lib/site-packages/pip/_vendor/truststore/_api.py +333 -0
  379. venv/Lib/site-packages/pip/_vendor/truststore/_macos.py +571 -0
  380. venv/Lib/site-packages/pip/_vendor/truststore/_openssl.py +66 -0
  381. venv/Lib/site-packages/pip/_vendor/truststore/_ssl_constants.py +31 -0
  382. venv/Lib/site-packages/pip/_vendor/truststore/_windows.py +567 -0
  383. venv/Lib/site-packages/pip/_vendor/truststore/py.typed +0 -0
  384. venv/Lib/site-packages/pip/_vendor/urllib3/__init__.py +102 -0
  385. venv/Lib/site-packages/pip/_vendor/urllib3/_collections.py +355 -0
  386. venv/Lib/site-packages/pip/_vendor/urllib3/_version.py +2 -0
  387. venv/Lib/site-packages/pip/_vendor/urllib3/connection.py +572 -0
  388. venv/Lib/site-packages/pip/_vendor/urllib3/connectionpool.py +1140 -0
  389. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
  390. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +36 -0
  391. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
  392. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +519 -0
  393. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +397 -0
  394. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/appengine.py +314 -0
  395. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +130 -0
  396. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +518 -0
  397. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +920 -0
  398. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/socks.py +216 -0
  399. venv/Lib/site-packages/pip/_vendor/urllib3/exceptions.py +323 -0
  400. venv/Lib/site-packages/pip/_vendor/urllib3/fields.py +274 -0
  401. venv/Lib/site-packages/pip/_vendor/urllib3/filepost.py +98 -0
  402. venv/Lib/site-packages/pip/_vendor/urllib3/packages/__init__.py +0 -0
  403. venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
  404. venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +51 -0
  405. venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/weakref_finalize.py +155 -0
  406. venv/Lib/site-packages/pip/_vendor/urllib3/packages/six.py +1076 -0
  407. venv/Lib/site-packages/pip/_vendor/urllib3/poolmanager.py +540 -0
  408. venv/Lib/site-packages/pip/_vendor/urllib3/request.py +191 -0
  409. venv/Lib/site-packages/pip/_vendor/urllib3/response.py +879 -0
  410. venv/Lib/site-packages/pip/_vendor/urllib3/util/__init__.py +49 -0
  411. venv/Lib/site-packages/pip/_vendor/urllib3/util/connection.py +149 -0
  412. venv/Lib/site-packages/pip/_vendor/urllib3/util/proxy.py +57 -0
  413. venv/Lib/site-packages/pip/_vendor/urllib3/util/queue.py +22 -0
  414. venv/Lib/site-packages/pip/_vendor/urllib3/util/request.py +137 -0
  415. venv/Lib/site-packages/pip/_vendor/urllib3/util/response.py +107 -0
  416. venv/Lib/site-packages/pip/_vendor/urllib3/util/retry.py +622 -0
  417. venv/Lib/site-packages/pip/_vendor/urllib3/util/ssl_.py +504 -0
  418. venv/Lib/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +159 -0
  419. venv/Lib/site-packages/pip/_vendor/urllib3/util/ssltransport.py +221 -0
  420. venv/Lib/site-packages/pip/_vendor/urllib3/util/timeout.py +271 -0
  421. venv/Lib/site-packages/pip/_vendor/urllib3/util/url.py +435 -0
  422. venv/Lib/site-packages/pip/_vendor/urllib3/util/wait.py +152 -0
  423. venv/Lib/site-packages/pip/py.typed +4 -0
  424. cli_ih-0.6.3.dist-info/RECORD +0 -8
@@ -0,0 +1,389 @@
1
+ """This is invoked in a subprocess to call the build backend hooks.
2
+
3
+ It expects:
4
+ - Command line args: hook_name, control_dir
5
+ - Environment variables:
6
+ _PYPROJECT_HOOKS_BUILD_BACKEND=entry.point:spec
7
+ _PYPROJECT_HOOKS_BACKEND_PATH=paths (separated with os.pathsep)
8
+ - control_dir/input.json:
9
+ - {"kwargs": {...}}
10
+
11
+ Results:
12
+ - control_dir/output.json
13
+ - {"return_val": ...}
14
+ """
15
+ import json
16
+ import os
17
+ import os.path
18
+ import re
19
+ import shutil
20
+ import sys
21
+ import traceback
22
+ from glob import glob
23
+ from importlib import import_module
24
+ from importlib.machinery import PathFinder
25
+ from os.path import join as pjoin
26
+
27
+ # This file is run as a script, and `import wrappers` is not zip-safe, so we
28
+ # include write_json() and read_json() from wrappers.py.
29
+
30
+
31
+ def write_json(obj, path, **kwargs):
32
+ with open(path, "w", encoding="utf-8") as f:
33
+ json.dump(obj, f, **kwargs)
34
+
35
+
36
+ def read_json(path):
37
+ with open(path, encoding="utf-8") as f:
38
+ return json.load(f)
39
+
40
+
41
+ class BackendUnavailable(Exception):
42
+ """Raised if we cannot import the backend"""
43
+
44
+ def __init__(self, message, traceback=None):
45
+ super().__init__(message)
46
+ self.message = message
47
+ self.traceback = traceback
48
+
49
+
50
+ class HookMissing(Exception):
51
+ """Raised if a hook is missing and we are not executing the fallback"""
52
+
53
+ def __init__(self, hook_name=None):
54
+ super().__init__(hook_name)
55
+ self.hook_name = hook_name
56
+
57
+
58
+ def _build_backend():
59
+ """Find and load the build backend"""
60
+ backend_path = os.environ.get("_PYPROJECT_HOOKS_BACKEND_PATH")
61
+ ep = os.environ["_PYPROJECT_HOOKS_BUILD_BACKEND"]
62
+ mod_path, _, obj_path = ep.partition(":")
63
+
64
+ if backend_path:
65
+ # Ensure in-tree backend directories have the highest priority when importing.
66
+ extra_pathitems = backend_path.split(os.pathsep)
67
+ sys.meta_path.insert(0, _BackendPathFinder(extra_pathitems, mod_path))
68
+
69
+ try:
70
+ obj = import_module(mod_path)
71
+ except ImportError:
72
+ msg = f"Cannot import {mod_path!r}"
73
+ raise BackendUnavailable(msg, traceback.format_exc())
74
+
75
+ if obj_path:
76
+ for path_part in obj_path.split("."):
77
+ obj = getattr(obj, path_part)
78
+ return obj
79
+
80
+
81
+ class _BackendPathFinder:
82
+ """Implements the MetaPathFinder interface to locate modules in ``backend-path``.
83
+
84
+ Since the environment provided by the frontend can contain all sorts of
85
+ MetaPathFinders, the only way to ensure the backend is loaded from the
86
+ right place is to prepend our own.
87
+ """
88
+
89
+ def __init__(self, backend_path, backend_module):
90
+ self.backend_path = backend_path
91
+ self.backend_module = backend_module
92
+ self.backend_parent, _, _ = backend_module.partition(".")
93
+
94
+ def find_spec(self, fullname, _path, _target=None):
95
+ if "." in fullname:
96
+ # Rely on importlib to find nested modules based on parent's path
97
+ return None
98
+
99
+ # Ignore other items in _path or sys.path and use backend_path instead:
100
+ spec = PathFinder.find_spec(fullname, path=self.backend_path)
101
+ if spec is None and fullname == self.backend_parent:
102
+ # According to the spec, the backend MUST be loaded from backend-path.
103
+ # Therefore, we can halt the import machinery and raise a clean error.
104
+ msg = f"Cannot find module {self.backend_module!r} in {self.backend_path!r}"
105
+ raise BackendUnavailable(msg)
106
+
107
+ return spec
108
+
109
+ if sys.version_info >= (3, 8):
110
+
111
+ def find_distributions(self, context=None):
112
+ # Delayed import: Python 3.7 does not contain importlib.metadata
113
+ from importlib.metadata import DistributionFinder, MetadataPathFinder
114
+
115
+ context = DistributionFinder.Context(path=self.backend_path)
116
+ return MetadataPathFinder.find_distributions(context=context)
117
+
118
+
119
+ def _supported_features():
120
+ """Return the list of options features supported by the backend.
121
+
122
+ Returns a list of strings.
123
+ The only possible value is 'build_editable'.
124
+ """
125
+ backend = _build_backend()
126
+ features = []
127
+ if hasattr(backend, "build_editable"):
128
+ features.append("build_editable")
129
+ return features
130
+
131
+
132
+ def get_requires_for_build_wheel(config_settings):
133
+ """Invoke the optional get_requires_for_build_wheel hook
134
+
135
+ Returns [] if the hook is not defined.
136
+ """
137
+ backend = _build_backend()
138
+ try:
139
+ hook = backend.get_requires_for_build_wheel
140
+ except AttributeError:
141
+ return []
142
+ else:
143
+ return hook(config_settings)
144
+
145
+
146
+ def get_requires_for_build_editable(config_settings):
147
+ """Invoke the optional get_requires_for_build_editable hook
148
+
149
+ Returns [] if the hook is not defined.
150
+ """
151
+ backend = _build_backend()
152
+ try:
153
+ hook = backend.get_requires_for_build_editable
154
+ except AttributeError:
155
+ return []
156
+ else:
157
+ return hook(config_settings)
158
+
159
+
160
+ def prepare_metadata_for_build_wheel(
161
+ metadata_directory, config_settings, _allow_fallback
162
+ ):
163
+ """Invoke optional prepare_metadata_for_build_wheel
164
+
165
+ Implements a fallback by building a wheel if the hook isn't defined,
166
+ unless _allow_fallback is False in which case HookMissing is raised.
167
+ """
168
+ backend = _build_backend()
169
+ try:
170
+ hook = backend.prepare_metadata_for_build_wheel
171
+ except AttributeError:
172
+ if not _allow_fallback:
173
+ raise HookMissing()
174
+ else:
175
+ return hook(metadata_directory, config_settings)
176
+ # fallback to build_wheel outside the try block to avoid exception chaining
177
+ # which can be confusing to users and is not relevant
178
+ whl_basename = backend.build_wheel(metadata_directory, config_settings)
179
+ return _get_wheel_metadata_from_wheel(
180
+ whl_basename, metadata_directory, config_settings
181
+ )
182
+
183
+
184
+ def prepare_metadata_for_build_editable(
185
+ metadata_directory, config_settings, _allow_fallback
186
+ ):
187
+ """Invoke optional prepare_metadata_for_build_editable
188
+
189
+ Implements a fallback by building an editable wheel if the hook isn't
190
+ defined, unless _allow_fallback is False in which case HookMissing is
191
+ raised.
192
+ """
193
+ backend = _build_backend()
194
+ try:
195
+ hook = backend.prepare_metadata_for_build_editable
196
+ except AttributeError:
197
+ if not _allow_fallback:
198
+ raise HookMissing()
199
+ try:
200
+ build_hook = backend.build_editable
201
+ except AttributeError:
202
+ raise HookMissing(hook_name="build_editable")
203
+ else:
204
+ whl_basename = build_hook(metadata_directory, config_settings)
205
+ return _get_wheel_metadata_from_wheel(
206
+ whl_basename, metadata_directory, config_settings
207
+ )
208
+ else:
209
+ return hook(metadata_directory, config_settings)
210
+
211
+
212
+ WHEEL_BUILT_MARKER = "PYPROJECT_HOOKS_ALREADY_BUILT_WHEEL"
213
+
214
+
215
+ def _dist_info_files(whl_zip):
216
+ """Identify the .dist-info folder inside a wheel ZipFile."""
217
+ res = []
218
+ for path in whl_zip.namelist():
219
+ m = re.match(r"[^/\\]+-[^/\\]+\.dist-info/", path)
220
+ if m:
221
+ res.append(path)
222
+ if res:
223
+ return res
224
+ raise Exception("No .dist-info folder found in wheel")
225
+
226
+
227
+ def _get_wheel_metadata_from_wheel(whl_basename, metadata_directory, config_settings):
228
+ """Extract the metadata from a wheel.
229
+
230
+ Fallback for when the build backend does not
231
+ define the 'get_wheel_metadata' hook.
232
+ """
233
+ from zipfile import ZipFile
234
+
235
+ with open(os.path.join(metadata_directory, WHEEL_BUILT_MARKER), "wb"):
236
+ pass # Touch marker file
237
+
238
+ whl_file = os.path.join(metadata_directory, whl_basename)
239
+ with ZipFile(whl_file) as zipf:
240
+ dist_info = _dist_info_files(zipf)
241
+ zipf.extractall(path=metadata_directory, members=dist_info)
242
+ return dist_info[0].split("/")[0]
243
+
244
+
245
+ def _find_already_built_wheel(metadata_directory):
246
+ """Check for a wheel already built during the get_wheel_metadata hook."""
247
+ if not metadata_directory:
248
+ return None
249
+ metadata_parent = os.path.dirname(metadata_directory)
250
+ if not os.path.isfile(pjoin(metadata_parent, WHEEL_BUILT_MARKER)):
251
+ return None
252
+
253
+ whl_files = glob(os.path.join(metadata_parent, "*.whl"))
254
+ if not whl_files:
255
+ print("Found wheel built marker, but no .whl files")
256
+ return None
257
+ if len(whl_files) > 1:
258
+ print(
259
+ "Found multiple .whl files; unspecified behaviour. "
260
+ "Will call build_wheel."
261
+ )
262
+ return None
263
+
264
+ # Exactly one .whl file
265
+ return whl_files[0]
266
+
267
+
268
+ def build_wheel(wheel_directory, config_settings, metadata_directory=None):
269
+ """Invoke the mandatory build_wheel hook.
270
+
271
+ If a wheel was already built in the
272
+ prepare_metadata_for_build_wheel fallback, this
273
+ will copy it rather than rebuilding the wheel.
274
+ """
275
+ prebuilt_whl = _find_already_built_wheel(metadata_directory)
276
+ if prebuilt_whl:
277
+ shutil.copy2(prebuilt_whl, wheel_directory)
278
+ return os.path.basename(prebuilt_whl)
279
+
280
+ return _build_backend().build_wheel(
281
+ wheel_directory, config_settings, metadata_directory
282
+ )
283
+
284
+
285
+ def build_editable(wheel_directory, config_settings, metadata_directory=None):
286
+ """Invoke the optional build_editable hook.
287
+
288
+ If a wheel was already built in the
289
+ prepare_metadata_for_build_editable fallback, this
290
+ will copy it rather than rebuilding the wheel.
291
+ """
292
+ backend = _build_backend()
293
+ try:
294
+ hook = backend.build_editable
295
+ except AttributeError:
296
+ raise HookMissing()
297
+ else:
298
+ prebuilt_whl = _find_already_built_wheel(metadata_directory)
299
+ if prebuilt_whl:
300
+ shutil.copy2(prebuilt_whl, wheel_directory)
301
+ return os.path.basename(prebuilt_whl)
302
+
303
+ return hook(wheel_directory, config_settings, metadata_directory)
304
+
305
+
306
+ def get_requires_for_build_sdist(config_settings):
307
+ """Invoke the optional get_requires_for_build_wheel hook
308
+
309
+ Returns [] if the hook is not defined.
310
+ """
311
+ backend = _build_backend()
312
+ try:
313
+ hook = backend.get_requires_for_build_sdist
314
+ except AttributeError:
315
+ return []
316
+ else:
317
+ return hook(config_settings)
318
+
319
+
320
+ class _DummyException(Exception):
321
+ """Nothing should ever raise this exception"""
322
+
323
+
324
+ class GotUnsupportedOperation(Exception):
325
+ """For internal use when backend raises UnsupportedOperation"""
326
+
327
+ def __init__(self, traceback):
328
+ self.traceback = traceback
329
+
330
+
331
+ def build_sdist(sdist_directory, config_settings):
332
+ """Invoke the mandatory build_sdist hook."""
333
+ backend = _build_backend()
334
+ try:
335
+ return backend.build_sdist(sdist_directory, config_settings)
336
+ except getattr(backend, "UnsupportedOperation", _DummyException):
337
+ raise GotUnsupportedOperation(traceback.format_exc())
338
+
339
+
340
+ HOOK_NAMES = {
341
+ "get_requires_for_build_wheel",
342
+ "prepare_metadata_for_build_wheel",
343
+ "build_wheel",
344
+ "get_requires_for_build_editable",
345
+ "prepare_metadata_for_build_editable",
346
+ "build_editable",
347
+ "get_requires_for_build_sdist",
348
+ "build_sdist",
349
+ "_supported_features",
350
+ }
351
+
352
+
353
+ def main():
354
+ if len(sys.argv) < 3:
355
+ sys.exit("Needs args: hook_name, control_dir")
356
+ hook_name = sys.argv[1]
357
+ control_dir = sys.argv[2]
358
+ if hook_name not in HOOK_NAMES:
359
+ sys.exit("Unknown hook: %s" % hook_name)
360
+
361
+ # Remove the parent directory from sys.path to avoid polluting the backend
362
+ # import namespace with this directory.
363
+ here = os.path.dirname(__file__)
364
+ if here in sys.path:
365
+ sys.path.remove(here)
366
+
367
+ hook = globals()[hook_name]
368
+
369
+ hook_input = read_json(pjoin(control_dir, "input.json"))
370
+
371
+ json_out = {"unsupported": False, "return_val": None}
372
+ try:
373
+ json_out["return_val"] = hook(**hook_input["kwargs"])
374
+ except BackendUnavailable as e:
375
+ json_out["no_backend"] = True
376
+ json_out["traceback"] = e.traceback
377
+ json_out["backend_error"] = e.message
378
+ except GotUnsupportedOperation as e:
379
+ json_out["unsupported"] = True
380
+ json_out["traceback"] = e.traceback
381
+ except HookMissing as e:
382
+ json_out["hook_missing"] = True
383
+ json_out["missing_hook_name"] = e.hook_name or hook_name
384
+
385
+ write_json(json_out, pjoin(control_dir, "output.json"), indent=2)
386
+
387
+
388
+ if __name__ == "__main__":
389
+ main()
@@ -0,0 +1,179 @@
1
+ # __
2
+ # /__) _ _ _ _ _/ _
3
+ # / ( (- (/ (/ (- _) / _)
4
+ # /
5
+
6
+ """
7
+ Requests HTTP Library
8
+ ~~~~~~~~~~~~~~~~~~~~~
9
+
10
+ Requests is an HTTP library, written in Python, for human beings.
11
+ Basic GET usage:
12
+
13
+ >>> import requests
14
+ >>> r = requests.get('https://www.python.org')
15
+ >>> r.status_code
16
+ 200
17
+ >>> b'Python is a programming language' in r.content
18
+ True
19
+
20
+ ... or POST:
21
+
22
+ >>> payload = dict(key1='value1', key2='value2')
23
+ >>> r = requests.post('https://httpbin.org/post', data=payload)
24
+ >>> print(r.text)
25
+ {
26
+ ...
27
+ "form": {
28
+ "key1": "value1",
29
+ "key2": "value2"
30
+ },
31
+ ...
32
+ }
33
+
34
+ The other HTTP methods are supported - see `requests.api`. Full documentation
35
+ is at <https://requests.readthedocs.io>.
36
+
37
+ :copyright: (c) 2017 by Kenneth Reitz.
38
+ :license: Apache 2.0, see LICENSE for more details.
39
+ """
40
+
41
+ import warnings
42
+
43
+ from pip._vendor import urllib3
44
+
45
+ from .exceptions import RequestsDependencyWarning
46
+
47
+ charset_normalizer_version = None
48
+ chardet_version = None
49
+
50
+
51
+ def check_compatibility(urllib3_version, chardet_version, charset_normalizer_version):
52
+ urllib3_version = urllib3_version.split(".")
53
+ assert urllib3_version != ["dev"] # Verify urllib3 isn't installed from git.
54
+
55
+ # Sometimes, urllib3 only reports its version as 16.1.
56
+ if len(urllib3_version) == 2:
57
+ urllib3_version.append("0")
58
+
59
+ # Check urllib3 for compatibility.
60
+ major, minor, patch = urllib3_version # noqa: F811
61
+ major, minor, patch = int(major), int(minor), int(patch)
62
+ # urllib3 >= 1.21.1
63
+ assert major >= 1
64
+ if major == 1:
65
+ assert minor >= 21
66
+
67
+ # Check charset_normalizer for compatibility.
68
+ if chardet_version:
69
+ major, minor, patch = chardet_version.split(".")[:3]
70
+ major, minor, patch = int(major), int(minor), int(patch)
71
+ # chardet_version >= 3.0.2, < 6.0.0
72
+ assert (3, 0, 2) <= (major, minor, patch) < (6, 0, 0)
73
+ elif charset_normalizer_version:
74
+ major, minor, patch = charset_normalizer_version.split(".")[:3]
75
+ major, minor, patch = int(major), int(minor), int(patch)
76
+ # charset_normalizer >= 2.0.0 < 4.0.0
77
+ assert (2, 0, 0) <= (major, minor, patch) < (4, 0, 0)
78
+ else:
79
+ # pip does not need or use character detection
80
+ pass
81
+
82
+
83
+ def _check_cryptography(cryptography_version):
84
+ # cryptography < 1.3.4
85
+ try:
86
+ cryptography_version = list(map(int, cryptography_version.split(".")))
87
+ except ValueError:
88
+ return
89
+
90
+ if cryptography_version < [1, 3, 4]:
91
+ warning = "Old version of cryptography ({}) may cause slowdown.".format(
92
+ cryptography_version
93
+ )
94
+ warnings.warn(warning, RequestsDependencyWarning)
95
+
96
+
97
+ # Check imported dependencies for compatibility.
98
+ try:
99
+ check_compatibility(
100
+ urllib3.__version__, chardet_version, charset_normalizer_version
101
+ )
102
+ except (AssertionError, ValueError):
103
+ warnings.warn(
104
+ "urllib3 ({}) or chardet ({})/charset_normalizer ({}) doesn't match a supported "
105
+ "version!".format(
106
+ urllib3.__version__, chardet_version, charset_normalizer_version
107
+ ),
108
+ RequestsDependencyWarning,
109
+ )
110
+
111
+ # Attempt to enable urllib3's fallback for SNI support
112
+ # if the standard library doesn't support SNI or the
113
+ # 'ssl' library isn't available.
114
+ try:
115
+ # Note: This logic prevents upgrading cryptography on Windows, if imported
116
+ # as part of pip.
117
+ from pip._internal.utils.compat import WINDOWS
118
+ if not WINDOWS:
119
+ raise ImportError("pip internals: don't import cryptography on Windows")
120
+ try:
121
+ import ssl
122
+ except ImportError:
123
+ ssl = None
124
+
125
+ if not getattr(ssl, "HAS_SNI", False):
126
+ from pip._vendor.urllib3.contrib import pyopenssl
127
+
128
+ pyopenssl.inject_into_urllib3()
129
+
130
+ # Check cryptography version
131
+ from cryptography import __version__ as cryptography_version
132
+
133
+ _check_cryptography(cryptography_version)
134
+ except ImportError:
135
+ pass
136
+
137
+ # urllib3's DependencyWarnings should be silenced.
138
+ from pip._vendor.urllib3.exceptions import DependencyWarning
139
+
140
+ warnings.simplefilter("ignore", DependencyWarning)
141
+
142
+ # Set default logging handler to avoid "No handler found" warnings.
143
+ import logging
144
+ from logging import NullHandler
145
+
146
+ from . import packages, utils
147
+ from .__version__ import (
148
+ __author__,
149
+ __author_email__,
150
+ __build__,
151
+ __cake__,
152
+ __copyright__,
153
+ __description__,
154
+ __license__,
155
+ __title__,
156
+ __url__,
157
+ __version__,
158
+ )
159
+ from .api import delete, get, head, options, patch, post, put, request
160
+ from .exceptions import (
161
+ ConnectionError,
162
+ ConnectTimeout,
163
+ FileModeWarning,
164
+ HTTPError,
165
+ JSONDecodeError,
166
+ ReadTimeout,
167
+ RequestException,
168
+ Timeout,
169
+ TooManyRedirects,
170
+ URLRequired,
171
+ )
172
+ from .models import PreparedRequest, Request, Response
173
+ from .sessions import Session, session
174
+ from .status_codes import codes
175
+
176
+ logging.getLogger(__name__).addHandler(NullHandler())
177
+
178
+ # FileModeWarnings go off per the default.
179
+ warnings.simplefilter("default", FileModeWarning, append=True)
@@ -0,0 +1,14 @@
1
+ # .-. .-. .-. . . .-. .-. .-. .-.
2
+ # |( |- |.| | | |- `-. | `-.
3
+ # ' ' `-' `-`.`-' `-' `-' ' `-'
4
+
5
+ __title__ = "requests"
6
+ __description__ = "Python HTTP for Humans."
7
+ __url__ = "https://requests.readthedocs.io"
8
+ __version__ = "2.32.4"
9
+ __build__ = 0x023204
10
+ __author__ = "Kenneth Reitz"
11
+ __author_email__ = "me@kennethreitz.org"
12
+ __license__ = "Apache-2.0"
13
+ __copyright__ = "Copyright Kenneth Reitz"
14
+ __cake__ = "\u2728 \U0001f370 \u2728"
@@ -0,0 +1,50 @@
1
+ """
2
+ requests._internal_utils
3
+ ~~~~~~~~~~~~~~
4
+
5
+ Provides utility functions that are consumed internally by Requests
6
+ which depend on extremely few external helpers (such as compat)
7
+ """
8
+ import re
9
+
10
+ from .compat import builtin_str
11
+
12
+ _VALID_HEADER_NAME_RE_BYTE = re.compile(rb"^[^:\s][^:\r\n]*$")
13
+ _VALID_HEADER_NAME_RE_STR = re.compile(r"^[^:\s][^:\r\n]*$")
14
+ _VALID_HEADER_VALUE_RE_BYTE = re.compile(rb"^\S[^\r\n]*$|^$")
15
+ _VALID_HEADER_VALUE_RE_STR = re.compile(r"^\S[^\r\n]*$|^$")
16
+
17
+ _HEADER_VALIDATORS_STR = (_VALID_HEADER_NAME_RE_STR, _VALID_HEADER_VALUE_RE_STR)
18
+ _HEADER_VALIDATORS_BYTE = (_VALID_HEADER_NAME_RE_BYTE, _VALID_HEADER_VALUE_RE_BYTE)
19
+ HEADER_VALIDATORS = {
20
+ bytes: _HEADER_VALIDATORS_BYTE,
21
+ str: _HEADER_VALIDATORS_STR,
22
+ }
23
+
24
+
25
+ def to_native_string(string, encoding="ascii"):
26
+ """Given a string object, regardless of type, returns a representation of
27
+ that string in the native string type, encoding and decoding where
28
+ necessary. This assumes ASCII unless told otherwise.
29
+ """
30
+ if isinstance(string, builtin_str):
31
+ out = string
32
+ else:
33
+ out = string.decode(encoding)
34
+
35
+ return out
36
+
37
+
38
+ def unicode_is_ascii(u_string):
39
+ """Determine if unicode string only contains ASCII characters.
40
+
41
+ :param str u_string: unicode string to check. Must be unicode
42
+ and not Python 2 `str`.
43
+ :rtype: bool
44
+ """
45
+ assert isinstance(u_string, str)
46
+ try:
47
+ u_string.encode("ascii")
48
+ return True
49
+ except UnicodeEncodeError:
50
+ return False