@scrypted/server 0.0.135 → 0.0.140

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 @scrypted/server might be problematic. Click here for more details.

Files changed (771) hide show
  1. package/.venv/bin/Activate.ps1 +241 -0
  2. package/.venv/bin/activate +66 -0
  3. package/.venv/bin/activate.csh +25 -0
  4. package/.venv/bin/activate.fish +64 -0
  5. package/.venv/bin/pip +8 -0
  6. package/.venv/bin/pip3 +8 -0
  7. package/.venv/bin/pip3.9 +8 -0
  8. package/.venv/lib/python3.9/site-packages/_distutils_hack/__init__.py +198 -0
  9. package/.venv/lib/python3.9/site-packages/_distutils_hack/override.py +1 -0
  10. package/.venv/lib/python3.9/site-packages/distutils-precedence.pth +1 -0
  11. package/.venv/lib/python3.9/site-packages/pgi/__init__.py +62 -0
  12. package/.venv/lib/python3.9/site-packages/pgi/_compat.py +74 -0
  13. package/.venv/lib/python3.9/site-packages/pgi/callback.py +15 -0
  14. package/.venv/lib/python3.9/site-packages/pgi/cffilib/__init__.py +12 -0
  15. package/.venv/lib/python3.9/site-packages/pgi/cffilib/_compat.py +25 -0
  16. package/.venv/lib/python3.9/site-packages/pgi/cffilib/_utils.py +119 -0
  17. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/__init__.py +60 -0
  18. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/_cdef.py +574 -0
  19. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/_ffi.py +25 -0
  20. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/error.py +13 -0
  21. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/giarginfo.py +73 -0
  22. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/giargument.py +36 -0
  23. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/gibaseinfo.py +113 -0
  24. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/gicallableinfo.py +75 -0
  25. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/giconstantinfo.py +22 -0
  26. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/gienuminfo.py +59 -0
  27. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/gifieldinfo.py +40 -0
  28. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/gifunctioninfo.py +64 -0
  29. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/giinterfaceinfo.py +93 -0
  30. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/giobjectinfo.py +143 -0
  31. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/gipropertyinfo.py +28 -0
  32. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/giregisteredtypeinfo.py +27 -0
  33. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/girepository.py +143 -0
  34. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/gisignalinfo.py +55 -0
  35. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/gistructinfo.py +55 -0
  36. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/gitypeinfo.py +66 -0
  37. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/gitypelib.py +40 -0
  38. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gir/giunioninfo.py +66 -0
  39. package/.venv/lib/python3.9/site-packages/pgi/cffilib/glib/__init__.py +8 -0
  40. package/.venv/lib/python3.9/site-packages/pgi/cffilib/glib/_cdef.py +101 -0
  41. package/.venv/lib/python3.9/site-packages/pgi/cffilib/glib/glib.py +260 -0
  42. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gobject/__init__.py +15 -0
  43. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gobject/_cdef.py +45 -0
  44. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gobject/_ffi.py +26 -0
  45. package/.venv/lib/python3.9/site-packages/pgi/cffilib/gobject/gobject.py +27 -0
  46. package/.venv/lib/python3.9/site-packages/pgi/clib/__init__.py +11 -0
  47. package/.venv/lib/python3.9/site-packages/pgi/clib/_compat.py +20 -0
  48. package/.venv/lib/python3.9/site-packages/pgi/clib/_utils.py +213 -0
  49. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/__init__.py +71 -0
  50. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/error.py +13 -0
  51. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/giarginfo.py +65 -0
  52. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/giargument.py +58 -0
  53. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/gibaseinfo.py +152 -0
  54. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/gicallableinfo.py +203 -0
  55. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/giconstantinfo.py +35 -0
  56. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/gienuminfo.py +64 -0
  57. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/gifieldinfo.py +46 -0
  58. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/giinterfaceinfo.py +83 -0
  59. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/giobjectinfo.py +134 -0
  60. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/gipropertyinfo.py +36 -0
  61. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/giregisteredtypeinfo.py +34 -0
  62. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/girepository.py +200 -0
  63. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/gistructinfo.py +55 -0
  64. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/gitypeinfo.py +97 -0
  65. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/gitypelib.py +56 -0
  66. package/.venv/lib/python3.9/site-packages/pgi/clib/gir/giunioninfo.py +60 -0
  67. package/.venv/lib/python3.9/site-packages/pgi/clib/glib.py +336 -0
  68. package/.venv/lib/python3.9/site-packages/pgi/clib/gobject.py +405 -0
  69. package/.venv/lib/python3.9/site-packages/pgi/codegen/__init__.py +28 -0
  70. package/.venv/lib/python3.9/site-packages/pgi/codegen/arguments.py +640 -0
  71. package/.venv/lib/python3.9/site-packages/pgi/codegen/backend.py +95 -0
  72. package/.venv/lib/python3.9/site-packages/pgi/codegen/cbargs.py +152 -0
  73. package/.venv/lib/python3.9/site-packages/pgi/codegen/cbreturn.py +77 -0
  74. package/.venv/lib/python3.9/site-packages/pgi/codegen/cffi_backend.py +424 -0
  75. package/.venv/lib/python3.9/site-packages/pgi/codegen/construct.py +222 -0
  76. package/.venv/lib/python3.9/site-packages/pgi/codegen/ctypes_backend/__init__.py +11 -0
  77. package/.venv/lib/python3.9/site-packages/pgi/codegen/ctypes_backend/main.py +184 -0
  78. package/.venv/lib/python3.9/site-packages/pgi/codegen/ctypes_backend/types_basic.py +705 -0
  79. package/.venv/lib/python3.9/site-packages/pgi/codegen/ctypes_backend/types_container.py +236 -0
  80. package/.venv/lib/python3.9/site-packages/pgi/codegen/ctypes_backend/types_interface.py +402 -0
  81. package/.venv/lib/python3.9/site-packages/pgi/codegen/ctypes_backend/types_other.py +93 -0
  82. package/.venv/lib/python3.9/site-packages/pgi/codegen/ctypes_backend/utils.py +168 -0
  83. package/.venv/lib/python3.9/site-packages/pgi/codegen/fieldgen.py +114 -0
  84. package/.venv/lib/python3.9/site-packages/pgi/codegen/fields.py +244 -0
  85. package/.venv/lib/python3.9/site-packages/pgi/codegen/funcgen.py +376 -0
  86. package/.venv/lib/python3.9/site-packages/pgi/codegen/null_backend.py +110 -0
  87. package/.venv/lib/python3.9/site-packages/pgi/codegen/returnvalues.py +443 -0
  88. package/.venv/lib/python3.9/site-packages/pgi/codegen/siggen.py +157 -0
  89. package/.venv/lib/python3.9/site-packages/pgi/codegen/utils.py +248 -0
  90. package/.venv/lib/python3.9/site-packages/pgi/const.py +9 -0
  91. package/.venv/lib/python3.9/site-packages/pgi/constant.py +32 -0
  92. package/.venv/lib/python3.9/site-packages/pgi/debug.py +31 -0
  93. package/.venv/lib/python3.9/site-packages/pgi/enum.py +244 -0
  94. package/.venv/lib/python3.9/site-packages/pgi/field.py +58 -0
  95. package/.venv/lib/python3.9/site-packages/pgi/finalizer.py +3 -0
  96. package/.venv/lib/python3.9/site-packages/pgi/foreign/__init__.py +71 -0
  97. package/.venv/lib/python3.9/site-packages/pgi/foreign/_base.py +43 -0
  98. package/.venv/lib/python3.9/site-packages/pgi/foreign/cairo.py +41 -0
  99. package/.venv/lib/python3.9/site-packages/pgi/function.py +12 -0
  100. package/.venv/lib/python3.9/site-packages/pgi/gerror.py +58 -0
  101. package/.venv/lib/python3.9/site-packages/pgi/gtype.py +168 -0
  102. package/.venv/lib/python3.9/site-packages/pgi/importer.py +189 -0
  103. package/.venv/lib/python3.9/site-packages/pgi/module.py +141 -0
  104. package/.venv/lib/python3.9/site-packages/pgi/obj.py +519 -0
  105. package/.venv/lib/python3.9/site-packages/pgi/overrides/GLib.py +1013 -0
  106. package/.venv/lib/python3.9/site-packages/pgi/overrides/GObject.py +583 -0
  107. package/.venv/lib/python3.9/site-packages/pgi/overrides/Gdk.py +454 -0
  108. package/.venv/lib/python3.9/site-packages/pgi/overrides/Gio.py +237 -0
  109. package/.venv/lib/python3.9/site-packages/pgi/overrides/Gtk.py +2412 -0
  110. package/.venv/lib/python3.9/site-packages/pgi/overrides/Pango.py +53 -0
  111. package/.venv/lib/python3.9/site-packages/pgi/overrides/Poppler.py +61 -0
  112. package/.venv/lib/python3.9/site-packages/pgi/overrides/__init__.py +327 -0
  113. package/.venv/lib/python3.9/site-packages/pgi/overrides/keysyms.py +54 -0
  114. package/.venv/lib/python3.9/site-packages/pgi/properties.py +313 -0
  115. package/.venv/lib/python3.9/site-packages/pgi/propertyhelper.py +12 -0
  116. package/.venv/lib/python3.9/site-packages/pgi/repository/__init__.py +10 -0
  117. package/.venv/lib/python3.9/site-packages/pgi/signalhelper.py +18 -0
  118. package/.venv/lib/python3.9/site-packages/pgi/signals.py +122 -0
  119. package/.venv/lib/python3.9/site-packages/pgi/static.py +189 -0
  120. package/.venv/lib/python3.9/site-packages/pgi/structure.py +131 -0
  121. package/.venv/lib/python3.9/site-packages/pgi/util.py +342 -0
  122. package/.venv/lib/python3.9/site-packages/pgi-0.0.11.2.dist-info/COPYING +502 -0
  123. package/.venv/lib/python3.9/site-packages/pgi-0.0.11.2.dist-info/INSTALLER +1 -0
  124. package/.venv/lib/python3.9/site-packages/pgi-0.0.11.2.dist-info/METADATA +22 -0
  125. package/.venv/lib/python3.9/site-packages/pgi-0.0.11.2.dist-info/RECORD +229 -0
  126. package/.venv/lib/python3.9/site-packages/pgi-0.0.11.2.dist-info/REQUESTED +0 -0
  127. package/.venv/lib/python3.9/site-packages/pgi-0.0.11.2.dist-info/WHEEL +5 -0
  128. package/.venv/lib/python3.9/site-packages/pgi-0.0.11.2.dist-info/top_level.txt +1 -0
  129. package/.venv/lib/python3.9/site-packages/pip/__init__.py +13 -0
  130. package/.venv/lib/python3.9/site-packages/pip/__main__.py +31 -0
  131. package/.venv/lib/python3.9/site-packages/pip/_internal/__init__.py +19 -0
  132. package/.venv/lib/python3.9/site-packages/pip/_internal/build_env.py +293 -0
  133. package/.venv/lib/python3.9/site-packages/pip/_internal/cache.py +264 -0
  134. package/.venv/lib/python3.9/site-packages/pip/_internal/cli/__init__.py +4 -0
  135. package/.venv/lib/python3.9/site-packages/pip/_internal/cli/autocompletion.py +163 -0
  136. package/.venv/lib/python3.9/site-packages/pip/_internal/cli/base_command.py +214 -0
  137. package/.venv/lib/python3.9/site-packages/pip/_internal/cli/cmdoptions.py +1010 -0
  138. package/.venv/lib/python3.9/site-packages/pip/_internal/cli/command_context.py +27 -0
  139. package/.venv/lib/python3.9/site-packages/pip/_internal/cli/main.py +70 -0
  140. package/.venv/lib/python3.9/site-packages/pip/_internal/cli/main_parser.py +87 -0
  141. package/.venv/lib/python3.9/site-packages/pip/_internal/cli/parser.py +292 -0
  142. package/.venv/lib/python3.9/site-packages/pip/_internal/cli/progress_bars.py +250 -0
  143. package/.venv/lib/python3.9/site-packages/pip/_internal/cli/req_command.py +469 -0
  144. package/.venv/lib/python3.9/site-packages/pip/_internal/cli/spinners.py +157 -0
  145. package/.venv/lib/python3.9/site-packages/pip/_internal/cli/status_codes.py +6 -0
  146. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/__init__.py +127 -0
  147. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/cache.py +223 -0
  148. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/check.py +53 -0
  149. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/completion.py +96 -0
  150. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/configuration.py +266 -0
  151. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/debug.py +202 -0
  152. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/download.py +139 -0
  153. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/freeze.py +97 -0
  154. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/hash.py +59 -0
  155. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/help.py +41 -0
  156. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/index.py +138 -0
  157. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/install.py +770 -0
  158. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/list.py +361 -0
  159. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/search.py +174 -0
  160. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/show.py +235 -0
  161. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/uninstall.py +105 -0
  162. package/.venv/lib/python3.9/site-packages/pip/_internal/commands/wheel.py +177 -0
  163. package/.venv/lib/python3.9/site-packages/pip/_internal/configuration.py +367 -0
  164. package/.venv/lib/python3.9/site-packages/pip/_internal/distributions/__init__.py +21 -0
  165. package/.venv/lib/python3.9/site-packages/pip/_internal/distributions/base.py +36 -0
  166. package/.venv/lib/python3.9/site-packages/pip/_internal/distributions/installed.py +22 -0
  167. package/.venv/lib/python3.9/site-packages/pip/_internal/distributions/sdist.py +129 -0
  168. package/.venv/lib/python3.9/site-packages/pip/_internal/distributions/wheel.py +31 -0
  169. package/.venv/lib/python3.9/site-packages/pip/_internal/exceptions.py +402 -0
  170. package/.venv/lib/python3.9/site-packages/pip/_internal/index/__init__.py +2 -0
  171. package/.venv/lib/python3.9/site-packages/pip/_internal/index/collector.py +536 -0
  172. package/.venv/lib/python3.9/site-packages/pip/_internal/index/package_finder.py +993 -0
  173. package/.venv/lib/python3.9/site-packages/pip/_internal/index/sources.py +224 -0
  174. package/.venv/lib/python3.9/site-packages/pip/_internal/locations/__init__.py +446 -0
  175. package/.venv/lib/python3.9/site-packages/pip/_internal/locations/_distutils.py +169 -0
  176. package/.venv/lib/python3.9/site-packages/pip/_internal/locations/_sysconfig.py +219 -0
  177. package/.venv/lib/python3.9/site-packages/pip/_internal/locations/base.py +52 -0
  178. package/.venv/lib/python3.9/site-packages/pip/_internal/main.py +12 -0
  179. package/.venv/lib/python3.9/site-packages/pip/_internal/metadata/__init__.py +51 -0
  180. package/.venv/lib/python3.9/site-packages/pip/_internal/metadata/base.py +330 -0
  181. package/.venv/lib/python3.9/site-packages/pip/_internal/metadata/pkg_resources.py +146 -0
  182. package/.venv/lib/python3.9/site-packages/pip/_internal/models/__init__.py +2 -0
  183. package/.venv/lib/python3.9/site-packages/pip/_internal/models/candidate.py +34 -0
  184. package/.venv/lib/python3.9/site-packages/pip/_internal/models/direct_url.py +220 -0
  185. package/.venv/lib/python3.9/site-packages/pip/_internal/models/format_control.py +80 -0
  186. package/.venv/lib/python3.9/site-packages/pip/_internal/models/index.py +28 -0
  187. package/.venv/lib/python3.9/site-packages/pip/_internal/models/link.py +288 -0
  188. package/.venv/lib/python3.9/site-packages/pip/_internal/models/scheme.py +31 -0
  189. package/.venv/lib/python3.9/site-packages/pip/_internal/models/search_scope.py +129 -0
  190. package/.venv/lib/python3.9/site-packages/pip/_internal/models/selection_prefs.py +51 -0
  191. package/.venv/lib/python3.9/site-packages/pip/_internal/models/target_python.py +110 -0
  192. package/.venv/lib/python3.9/site-packages/pip/_internal/models/wheel.py +89 -0
  193. package/.venv/lib/python3.9/site-packages/pip/_internal/network/__init__.py +2 -0
  194. package/.venv/lib/python3.9/site-packages/pip/_internal/network/auth.py +323 -0
  195. package/.venv/lib/python3.9/site-packages/pip/_internal/network/cache.py +69 -0
  196. package/.venv/lib/python3.9/site-packages/pip/_internal/network/download.py +184 -0
  197. package/.venv/lib/python3.9/site-packages/pip/_internal/network/lazy_wheel.py +210 -0
  198. package/.venv/lib/python3.9/site-packages/pip/_internal/network/session.py +454 -0
  199. package/.venv/lib/python3.9/site-packages/pip/_internal/network/utils.py +96 -0
  200. package/.venv/lib/python3.9/site-packages/pip/_internal/network/xmlrpc.py +60 -0
  201. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/__init__.py +0 -0
  202. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/build/__init__.py +0 -0
  203. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/build/metadata.py +30 -0
  204. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/build/metadata_editable.py +34 -0
  205. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/build/metadata_legacy.py +67 -0
  206. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/build/wheel.py +37 -0
  207. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/build/wheel_editable.py +46 -0
  208. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/build/wheel_legacy.py +105 -0
  209. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/check.py +149 -0
  210. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/freeze.py +254 -0
  211. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/install/__init__.py +2 -0
  212. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/install/editable_legacy.py +46 -0
  213. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/install/legacy.py +125 -0
  214. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/install/wheel.py +738 -0
  215. package/.venv/lib/python3.9/site-packages/pip/_internal/operations/prepare.py +632 -0
  216. package/.venv/lib/python3.9/site-packages/pip/_internal/pyproject.py +183 -0
  217. package/.venv/lib/python3.9/site-packages/pip/_internal/req/__init__.py +94 -0
  218. package/.venv/lib/python3.9/site-packages/pip/_internal/req/constructors.py +466 -0
  219. package/.venv/lib/python3.9/site-packages/pip/_internal/req/req_file.py +536 -0
  220. package/.venv/lib/python3.9/site-packages/pip/_internal/req/req_install.py +891 -0
  221. package/.venv/lib/python3.9/site-packages/pip/_internal/req/req_set.py +189 -0
  222. package/.venv/lib/python3.9/site-packages/pip/_internal/req/req_tracker.py +124 -0
  223. package/.venv/lib/python3.9/site-packages/pip/_internal/req/req_uninstall.py +633 -0
  224. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/__init__.py +0 -0
  225. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/base.py +20 -0
  226. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
  227. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/legacy/resolver.py +467 -0
  228. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
  229. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/base.py +141 -0
  230. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/candidates.py +540 -0
  231. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/factory.py +701 -0
  232. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +155 -0
  233. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/provider.py +215 -0
  234. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/reporter.py +68 -0
  235. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/requirements.py +166 -0
  236. package/.venv/lib/python3.9/site-packages/pip/_internal/resolution/resolvelib/resolver.py +251 -0
  237. package/.venv/lib/python3.9/site-packages/pip/_internal/self_outdated_check.py +182 -0
  238. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/__init__.py +0 -0
  239. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/_log.py +38 -0
  240. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/appdirs.py +52 -0
  241. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/compat.py +63 -0
  242. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/compatibility_tags.py +165 -0
  243. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/datetime.py +11 -0
  244. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/deprecation.py +120 -0
  245. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/direct_url_helpers.py +87 -0
  246. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/distutils_args.py +42 -0
  247. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/egg_link.py +75 -0
  248. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/encoding.py +36 -0
  249. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/entrypoints.py +27 -0
  250. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/filesystem.py +182 -0
  251. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/filetypes.py +27 -0
  252. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/glibc.py +88 -0
  253. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/hashes.py +144 -0
  254. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/inject_securetransport.py +35 -0
  255. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/logging.py +358 -0
  256. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/misc.py +689 -0
  257. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/models.py +39 -0
  258. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/packaging.py +84 -0
  259. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/parallel.py +103 -0
  260. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/pkg_resources.py +33 -0
  261. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/setuptools_build.py +167 -0
  262. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/subprocess.py +289 -0
  263. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/temp_dir.py +246 -0
  264. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/unpacking.py +258 -0
  265. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/urls.py +62 -0
  266. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/virtualenv.py +104 -0
  267. package/.venv/lib/python3.9/site-packages/pip/_internal/utils/wheel.py +182 -0
  268. package/.venv/lib/python3.9/site-packages/pip/_internal/vcs/__init__.py +15 -0
  269. package/.venv/lib/python3.9/site-packages/pip/_internal/vcs/bazaar.py +93 -0
  270. package/.venv/lib/python3.9/site-packages/pip/_internal/vcs/git.py +513 -0
  271. package/.venv/lib/python3.9/site-packages/pip/_internal/vcs/mercurial.py +153 -0
  272. package/.venv/lib/python3.9/site-packages/pip/_internal/vcs/subversion.py +318 -0
  273. package/.venv/lib/python3.9/site-packages/pip/_internal/vcs/versioncontrol.py +693 -0
  274. package/.venv/lib/python3.9/site-packages/pip/_internal/wheel_builder.py +375 -0
  275. package/.venv/lib/python3.9/site-packages/pip/_vendor/__init__.py +111 -0
  276. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/__init__.py +11 -0
  277. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/_cmd.py +57 -0
  278. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/adapter.py +133 -0
  279. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/cache.py +39 -0
  280. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +2 -0
  281. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +146 -0
  282. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +33 -0
  283. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/compat.py +29 -0
  284. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/controller.py +376 -0
  285. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/filewrapper.py +80 -0
  286. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/heuristics.py +135 -0
  287. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/serialize.py +188 -0
  288. package/.venv/lib/python3.9/site-packages/pip/_vendor/cachecontrol/wrapper.py +29 -0
  289. package/.venv/lib/python3.9/site-packages/pip/_vendor/certifi/__init__.py +3 -0
  290. package/.venv/lib/python3.9/site-packages/pip/_vendor/certifi/__main__.py +12 -0
  291. package/.venv/lib/python3.9/site-packages/pip/_vendor/certifi/cacert.pem +4257 -0
  292. package/.venv/lib/python3.9/site-packages/pip/_vendor/certifi/core.py +76 -0
  293. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/__init__.py +83 -0
  294. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/big5freq.py +386 -0
  295. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/big5prober.py +47 -0
  296. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/chardistribution.py +233 -0
  297. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/charsetgroupprober.py +107 -0
  298. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/charsetprober.py +145 -0
  299. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/cli/__init__.py +1 -0
  300. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/cli/chardetect.py +84 -0
  301. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/codingstatemachine.py +88 -0
  302. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/compat.py +36 -0
  303. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/cp949prober.py +49 -0
  304. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/enums.py +76 -0
  305. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/escprober.py +101 -0
  306. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/escsm.py +246 -0
  307. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/eucjpprober.py +92 -0
  308. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/euckrfreq.py +195 -0
  309. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/euckrprober.py +47 -0
  310. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/euctwfreq.py +387 -0
  311. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/euctwprober.py +46 -0
  312. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/gb2312freq.py +283 -0
  313. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/gb2312prober.py +46 -0
  314. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/hebrewprober.py +292 -0
  315. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/jisfreq.py +325 -0
  316. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/jpcntx.py +233 -0
  317. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/langbulgarianmodel.py +4650 -0
  318. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/langgreekmodel.py +4398 -0
  319. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/langhebrewmodel.py +4383 -0
  320. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/langhungarianmodel.py +4650 -0
  321. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/langrussianmodel.py +5718 -0
  322. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/langthaimodel.py +4383 -0
  323. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/langturkishmodel.py +4383 -0
  324. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/latin1prober.py +145 -0
  325. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/mbcharsetprober.py +91 -0
  326. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/mbcsgroupprober.py +54 -0
  327. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/mbcssm.py +572 -0
  328. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/metadata/__init__.py +0 -0
  329. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/metadata/languages.py +310 -0
  330. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/sbcharsetprober.py +145 -0
  331. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/sbcsgroupprober.py +83 -0
  332. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/sjisprober.py +92 -0
  333. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/universaldetector.py +286 -0
  334. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/utf8prober.py +82 -0
  335. package/.venv/lib/python3.9/site-packages/pip/_vendor/chardet/version.py +9 -0
  336. package/.venv/lib/python3.9/site-packages/pip/_vendor/colorama/__init__.py +6 -0
  337. package/.venv/lib/python3.9/site-packages/pip/_vendor/colorama/ansi.py +102 -0
  338. package/.venv/lib/python3.9/site-packages/pip/_vendor/colorama/ansitowin32.py +258 -0
  339. package/.venv/lib/python3.9/site-packages/pip/_vendor/colorama/initialise.py +80 -0
  340. package/.venv/lib/python3.9/site-packages/pip/_vendor/colorama/win32.py +152 -0
  341. package/.venv/lib/python3.9/site-packages/pip/_vendor/colorama/winterm.py +169 -0
  342. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/__init__.py +23 -0
  343. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/_backport/__init__.py +6 -0
  344. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/_backport/misc.py +41 -0
  345. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/_backport/shutil.py +764 -0
  346. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/_backport/sysconfig.cfg +84 -0
  347. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/_backport/sysconfig.py +786 -0
  348. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/_backport/tarfile.py +2607 -0
  349. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/compat.py +1122 -0
  350. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/database.py +1339 -0
  351. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/index.py +509 -0
  352. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/locators.py +1300 -0
  353. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/manifest.py +393 -0
  354. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/markers.py +147 -0
  355. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/metadata.py +1058 -0
  356. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/resources.py +358 -0
  357. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/scripts.py +429 -0
  358. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/t32.exe +0 -0
  359. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/t64-arm.exe +0 -0
  360. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/t64.exe +0 -0
  361. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/util.py +1969 -0
  362. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/version.py +739 -0
  363. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/w32.exe +0 -0
  364. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/w64-arm.exe +0 -0
  365. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/w64.exe +0 -0
  366. package/.venv/lib/python3.9/site-packages/pip/_vendor/distlib/wheel.py +1053 -0
  367. package/.venv/lib/python3.9/site-packages/pip/_vendor/distro.py +1386 -0
  368. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/__init__.py +35 -0
  369. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/_ihatexml.py +289 -0
  370. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/_inputstream.py +918 -0
  371. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/_tokenizer.py +1735 -0
  372. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/_trie/__init__.py +5 -0
  373. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/_trie/_base.py +40 -0
  374. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/_trie/py.py +67 -0
  375. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/_utils.py +159 -0
  376. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/constants.py +2946 -0
  377. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/filters/__init__.py +0 -0
  378. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py +29 -0
  379. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/filters/base.py +12 -0
  380. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py +73 -0
  381. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/filters/lint.py +93 -0
  382. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/filters/optionaltags.py +207 -0
  383. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/filters/sanitizer.py +916 -0
  384. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/filters/whitespace.py +38 -0
  385. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/html5parser.py +2795 -0
  386. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/serializer.py +409 -0
  387. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treeadapters/__init__.py +30 -0
  388. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treeadapters/genshi.py +54 -0
  389. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treeadapters/sax.py +50 -0
  390. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treebuilders/__init__.py +88 -0
  391. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treebuilders/base.py +417 -0
  392. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treebuilders/dom.py +239 -0
  393. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treebuilders/etree.py +343 -0
  394. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treebuilders/etree_lxml.py +392 -0
  395. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treewalkers/__init__.py +154 -0
  396. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treewalkers/base.py +252 -0
  397. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treewalkers/dom.py +43 -0
  398. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treewalkers/etree.py +131 -0
  399. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treewalkers/etree_lxml.py +215 -0
  400. package/.venv/lib/python3.9/site-packages/pip/_vendor/html5lib/treewalkers/genshi.py +69 -0
  401. package/.venv/lib/python3.9/site-packages/pip/_vendor/idna/__init__.py +44 -0
  402. package/.venv/lib/python3.9/site-packages/pip/_vendor/idna/codec.py +117 -0
  403. package/.venv/lib/python3.9/site-packages/pip/_vendor/idna/compat.py +16 -0
  404. package/.venv/lib/python3.9/site-packages/pip/_vendor/idna/core.py +409 -0
  405. package/.venv/lib/python3.9/site-packages/pip/_vendor/idna/idnadata.py +2050 -0
  406. package/.venv/lib/python3.9/site-packages/pip/_vendor/idna/intranges.py +58 -0
  407. package/.venv/lib/python3.9/site-packages/pip/_vendor/idna/package_data.py +2 -0
  408. package/.venv/lib/python3.9/site-packages/pip/_vendor/idna/uts46data.py +8438 -0
  409. package/.venv/lib/python3.9/site-packages/pip/_vendor/msgpack/__init__.py +54 -0
  410. package/.venv/lib/python3.9/site-packages/pip/_vendor/msgpack/_version.py +1 -0
  411. package/.venv/lib/python3.9/site-packages/pip/_vendor/msgpack/exceptions.py +48 -0
  412. package/.venv/lib/python3.9/site-packages/pip/_vendor/msgpack/ext.py +193 -0
  413. package/.venv/lib/python3.9/site-packages/pip/_vendor/msgpack/fallback.py +1087 -0
  414. package/.venv/lib/python3.9/site-packages/pip/_vendor/packaging/__about__.py +26 -0
  415. package/.venv/lib/python3.9/site-packages/pip/_vendor/packaging/__init__.py +25 -0
  416. package/.venv/lib/python3.9/site-packages/pip/_vendor/packaging/_manylinux.py +301 -0
  417. package/.venv/lib/python3.9/site-packages/pip/_vendor/packaging/_musllinux.py +136 -0
  418. package/.venv/lib/python3.9/site-packages/pip/_vendor/packaging/_structures.py +67 -0
  419. package/.venv/lib/python3.9/site-packages/pip/_vendor/packaging/markers.py +304 -0
  420. package/.venv/lib/python3.9/site-packages/pip/_vendor/packaging/requirements.py +146 -0
  421. package/.venv/lib/python3.9/site-packages/pip/_vendor/packaging/specifiers.py +828 -0
  422. package/.venv/lib/python3.9/site-packages/pip/_vendor/packaging/tags.py +484 -0
  423. package/.venv/lib/python3.9/site-packages/pip/_vendor/packaging/utils.py +136 -0
  424. package/.venv/lib/python3.9/site-packages/pip/_vendor/packaging/version.py +504 -0
  425. package/.venv/lib/python3.9/site-packages/pip/_vendor/pep517/__init__.py +6 -0
  426. package/.venv/lib/python3.9/site-packages/pip/_vendor/pep517/build.py +127 -0
  427. package/.venv/lib/python3.9/site-packages/pip/_vendor/pep517/check.py +207 -0
  428. package/.venv/lib/python3.9/site-packages/pip/_vendor/pep517/colorlog.py +115 -0
  429. package/.venv/lib/python3.9/site-packages/pip/_vendor/pep517/compat.py +51 -0
  430. package/.venv/lib/python3.9/site-packages/pip/_vendor/pep517/dirtools.py +44 -0
  431. package/.venv/lib/python3.9/site-packages/pip/_vendor/pep517/envbuild.py +171 -0
  432. package/.venv/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/__init__.py +17 -0
  433. package/.venv/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py +363 -0
  434. package/.venv/lib/python3.9/site-packages/pip/_vendor/pep517/meta.py +92 -0
  435. package/.venv/lib/python3.9/site-packages/pip/_vendor/pep517/wrappers.py +375 -0
  436. package/.venv/lib/python3.9/site-packages/pip/_vendor/pkg_resources/__init__.py +3296 -0
  437. package/.venv/lib/python3.9/site-packages/pip/_vendor/pkg_resources/py31compat.py +23 -0
  438. package/.venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/__init__.py +329 -0
  439. package/.venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/__main__.py +44 -0
  440. package/.venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/android.py +117 -0
  441. package/.venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/api.py +155 -0
  442. package/.venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/macos.py +62 -0
  443. package/.venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/unix.py +180 -0
  444. package/.venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/version.py +4 -0
  445. package/.venv/lib/python3.9/site-packages/pip/_vendor/platformdirs/windows.py +180 -0
  446. package/.venv/lib/python3.9/site-packages/pip/_vendor/progress/__init__.py +189 -0
  447. package/.venv/lib/python3.9/site-packages/pip/_vendor/progress/bar.py +93 -0
  448. package/.venv/lib/python3.9/site-packages/pip/_vendor/progress/colors.py +79 -0
  449. package/.venv/lib/python3.9/site-packages/pip/_vendor/progress/counter.py +47 -0
  450. package/.venv/lib/python3.9/site-packages/pip/_vendor/progress/spinner.py +45 -0
  451. package/.venv/lib/python3.9/site-packages/pip/_vendor/pyparsing.py +7107 -0
  452. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/__init__.py +154 -0
  453. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/__version__.py +14 -0
  454. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/_internal_utils.py +42 -0
  455. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/adapters.py +533 -0
  456. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/api.py +159 -0
  457. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/auth.py +305 -0
  458. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/certs.py +18 -0
  459. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/compat.py +76 -0
  460. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/cookies.py +549 -0
  461. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/exceptions.py +127 -0
  462. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/help.py +132 -0
  463. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/hooks.py +34 -0
  464. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/models.py +966 -0
  465. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/packages.py +16 -0
  466. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/sessions.py +781 -0
  467. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/status_codes.py +123 -0
  468. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/structures.py +105 -0
  469. package/.venv/lib/python3.9/site-packages/pip/_vendor/requests/utils.py +1013 -0
  470. package/.venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/__init__.py +26 -0
  471. package/.venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/compat/__init__.py +0 -0
  472. package/.venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/compat/collections_abc.py +6 -0
  473. package/.venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/providers.py +133 -0
  474. package/.venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/reporters.py +37 -0
  475. package/.venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/resolvers.py +483 -0
  476. package/.venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/structs.py +165 -0
  477. package/.venv/lib/python3.9/site-packages/pip/_vendor/six.py +998 -0
  478. package/.venv/lib/python3.9/site-packages/pip/_vendor/tenacity/__init__.py +517 -0
  479. package/.venv/lib/python3.9/site-packages/pip/_vendor/tenacity/_asyncio.py +92 -0
  480. package/.venv/lib/python3.9/site-packages/pip/_vendor/tenacity/_utils.py +68 -0
  481. package/.venv/lib/python3.9/site-packages/pip/_vendor/tenacity/after.py +46 -0
  482. package/.venv/lib/python3.9/site-packages/pip/_vendor/tenacity/before.py +41 -0
  483. package/.venv/lib/python3.9/site-packages/pip/_vendor/tenacity/before_sleep.py +58 -0
  484. package/.venv/lib/python3.9/site-packages/pip/_vendor/tenacity/nap.py +43 -0
  485. package/.venv/lib/python3.9/site-packages/pip/_vendor/tenacity/retry.py +213 -0
  486. package/.venv/lib/python3.9/site-packages/pip/_vendor/tenacity/stop.py +96 -0
  487. package/.venv/lib/python3.9/site-packages/pip/_vendor/tenacity/tornadoweb.py +59 -0
  488. package/.venv/lib/python3.9/site-packages/pip/_vendor/tenacity/wait.py +191 -0
  489. package/.venv/lib/python3.9/site-packages/pip/_vendor/tomli/__init__.py +6 -0
  490. package/.venv/lib/python3.9/site-packages/pip/_vendor/tomli/_parser.py +703 -0
  491. package/.venv/lib/python3.9/site-packages/pip/_vendor/tomli/_re.py +83 -0
  492. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/__init__.py +85 -0
  493. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/_collections.py +337 -0
  494. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/_version.py +2 -0
  495. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/connection.py +569 -0
  496. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/connectionpool.py +1078 -0
  497. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
  498. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +36 -0
  499. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
  500. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +519 -0
  501. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +397 -0
  502. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/appengine.py +314 -0
  503. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +130 -0
  504. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +511 -0
  505. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +922 -0
  506. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/contrib/socks.py +216 -0
  507. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/exceptions.py +323 -0
  508. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/fields.py +274 -0
  509. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/filepost.py +98 -0
  510. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/packages/__init__.py +5 -0
  511. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
  512. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +51 -0
  513. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/packages/six.py +1077 -0
  514. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/packages/ssl_match_hostname/__init__.py +24 -0
  515. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/packages/ssl_match_hostname/_implementation.py +160 -0
  516. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/poolmanager.py +536 -0
  517. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/request.py +170 -0
  518. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/response.py +821 -0
  519. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/__init__.py +49 -0
  520. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/connection.py +150 -0
  521. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/proxy.py +57 -0
  522. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/queue.py +22 -0
  523. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/request.py +143 -0
  524. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/response.py +107 -0
  525. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/retry.py +602 -0
  526. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/ssl_.py +495 -0
  527. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/ssltransport.py +221 -0
  528. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/timeout.py +268 -0
  529. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/url.py +432 -0
  530. package/.venv/lib/python3.9/site-packages/pip/_vendor/urllib3/util/wait.py +153 -0
  531. package/.venv/lib/python3.9/site-packages/pip/_vendor/vendor.txt +22 -0
  532. package/.venv/lib/python3.9/site-packages/pip/_vendor/webencodings/__init__.py +342 -0
  533. package/.venv/lib/python3.9/site-packages/pip/_vendor/webencodings/labels.py +231 -0
  534. package/.venv/lib/python3.9/site-packages/pip/_vendor/webencodings/mklabels.py +59 -0
  535. package/.venv/lib/python3.9/site-packages/pip/_vendor/webencodings/tests.py +153 -0
  536. package/.venv/lib/python3.9/site-packages/pip/_vendor/webencodings/x_user_defined.py +325 -0
  537. package/.venv/lib/python3.9/site-packages/pip/py.typed +4 -0
  538. package/.venv/lib/python3.9/site-packages/pip-21.3.1.dist-info/INSTALLER +1 -0
  539. package/.venv/lib/python3.9/site-packages/pip-21.3.1.dist-info/LICENSE.txt +20 -0
  540. package/.venv/lib/python3.9/site-packages/pip-21.3.1.dist-info/METADATA +93 -0
  541. package/.venv/lib/python3.9/site-packages/pip-21.3.1.dist-info/RECORD +819 -0
  542. package/.venv/lib/python3.9/site-packages/pip-21.3.1.dist-info/REQUESTED +0 -0
  543. package/.venv/lib/python3.9/site-packages/pip-21.3.1.dist-info/WHEEL +5 -0
  544. package/.venv/lib/python3.9/site-packages/pip-21.3.1.dist-info/entry_points.txt +5 -0
  545. package/.venv/lib/python3.9/site-packages/pip-21.3.1.dist-info/top_level.txt +1 -0
  546. package/.venv/lib/python3.9/site-packages/pkg_resources/__init__.py +3303 -0
  547. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/__init__.py +0 -0
  548. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/appdirs.py +608 -0
  549. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/__about__.py +26 -0
  550. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/__init__.py +25 -0
  551. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/_manylinux.py +301 -0
  552. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/_musllinux.py +136 -0
  553. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/_structures.py +67 -0
  554. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/markers.py +304 -0
  555. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/requirements.py +146 -0
  556. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/specifiers.py +828 -0
  557. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/tags.py +484 -0
  558. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/utils.py +136 -0
  559. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/packaging/version.py +504 -0
  560. package/.venv/lib/python3.9/site-packages/pkg_resources/_vendor/pyparsing.py +5742 -0
  561. package/.venv/lib/python3.9/site-packages/pkg_resources/extern/__init__.py +73 -0
  562. package/.venv/lib/python3.9/site-packages/pkg_resources/tests/data/my-test-package-source/setup.py +6 -0
  563. package/.venv/lib/python3.9/site-packages/setuptools/__init__.py +244 -0
  564. package/.venv/lib/python3.9/site-packages/setuptools/_deprecation_warning.py +7 -0
  565. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/__init__.py +24 -0
  566. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/_collections.py +56 -0
  567. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/_msvccompiler.py +561 -0
  568. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/archive_util.py +256 -0
  569. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/bcppcompiler.py +393 -0
  570. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/ccompiler.py +1123 -0
  571. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/cmd.py +403 -0
  572. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/__init__.py +31 -0
  573. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/bdist.py +143 -0
  574. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/bdist_dumb.py +123 -0
  575. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/bdist_msi.py +749 -0
  576. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/bdist_rpm.py +579 -0
  577. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/bdist_wininst.py +377 -0
  578. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/build.py +157 -0
  579. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/build_clib.py +209 -0
  580. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/build_ext.py +755 -0
  581. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/build_py.py +392 -0
  582. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/build_scripts.py +152 -0
  583. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/check.py +148 -0
  584. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/clean.py +76 -0
  585. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/config.py +344 -0
  586. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/install.py +775 -0
  587. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/install_data.py +79 -0
  588. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/install_egg_info.py +84 -0
  589. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/install_headers.py +47 -0
  590. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/install_lib.py +217 -0
  591. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/install_scripts.py +60 -0
  592. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/py37compat.py +30 -0
  593. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/register.py +304 -0
  594. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/sdist.py +494 -0
  595. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/command/upload.py +214 -0
  596. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/config.py +130 -0
  597. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/core.py +249 -0
  598. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/cygwinccompiler.py +362 -0
  599. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/debug.py +5 -0
  600. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/dep_util.py +92 -0
  601. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/dir_util.py +210 -0
  602. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/dist.py +1257 -0
  603. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/errors.py +97 -0
  604. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/extension.py +240 -0
  605. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/fancy_getopt.py +457 -0
  606. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/file_util.py +238 -0
  607. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/filelist.py +355 -0
  608. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/log.py +81 -0
  609. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/msvc9compiler.py +788 -0
  610. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/msvccompiler.py +643 -0
  611. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/py35compat.py +19 -0
  612. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/py38compat.py +7 -0
  613. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/spawn.py +106 -0
  614. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/sysconfig.py +567 -0
  615. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/text_file.py +286 -0
  616. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/unixccompiler.py +325 -0
  617. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/util.py +548 -0
  618. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/version.py +363 -0
  619. package/.venv/lib/python3.9/site-packages/setuptools/_distutils/versionpredicate.py +169 -0
  620. package/.venv/lib/python3.9/site-packages/setuptools/_imp.py +82 -0
  621. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/__init__.py +0 -0
  622. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools/__init__.py +4 -0
  623. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools/more.py +3825 -0
  624. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/more_itertools/recipes.py +620 -0
  625. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/ordered_set.py +488 -0
  626. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/__about__.py +26 -0
  627. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/__init__.py +25 -0
  628. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/_manylinux.py +301 -0
  629. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/_musllinux.py +136 -0
  630. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/_structures.py +67 -0
  631. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/markers.py +304 -0
  632. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/requirements.py +146 -0
  633. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/specifiers.py +828 -0
  634. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/tags.py +484 -0
  635. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/utils.py +136 -0
  636. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/packaging/version.py +504 -0
  637. package/.venv/lib/python3.9/site-packages/setuptools/_vendor/pyparsing.py +5742 -0
  638. package/.venv/lib/python3.9/site-packages/setuptools/archive_util.py +205 -0
  639. package/.venv/lib/python3.9/site-packages/setuptools/build_meta.py +290 -0
  640. package/.venv/lib/python3.9/site-packages/setuptools/cli-32.exe +0 -0
  641. package/.venv/lib/python3.9/site-packages/setuptools/cli-64.exe +0 -0
  642. package/.venv/lib/python3.9/site-packages/setuptools/cli-arm64.exe +0 -0
  643. package/.venv/lib/python3.9/site-packages/setuptools/cli.exe +0 -0
  644. package/.venv/lib/python3.9/site-packages/setuptools/command/__init__.py +8 -0
  645. package/.venv/lib/python3.9/site-packages/setuptools/command/alias.py +78 -0
  646. package/.venv/lib/python3.9/site-packages/setuptools/command/bdist_egg.py +456 -0
  647. package/.venv/lib/python3.9/site-packages/setuptools/command/bdist_rpm.py +40 -0
  648. package/.venv/lib/python3.9/site-packages/setuptools/command/build_clib.py +101 -0
  649. package/.venv/lib/python3.9/site-packages/setuptools/command/build_ext.py +328 -0
  650. package/.venv/lib/python3.9/site-packages/setuptools/command/build_py.py +242 -0
  651. package/.venv/lib/python3.9/site-packages/setuptools/command/develop.py +193 -0
  652. package/.venv/lib/python3.9/site-packages/setuptools/command/dist_info.py +36 -0
  653. package/.venv/lib/python3.9/site-packages/setuptools/command/easy_install.py +2304 -0
  654. package/.venv/lib/python3.9/site-packages/setuptools/command/egg_info.py +755 -0
  655. package/.venv/lib/python3.9/site-packages/setuptools/command/install.py +132 -0
  656. package/.venv/lib/python3.9/site-packages/setuptools/command/install_egg_info.py +62 -0
  657. package/.venv/lib/python3.9/site-packages/setuptools/command/install_lib.py +122 -0
  658. package/.venv/lib/python3.9/site-packages/setuptools/command/install_scripts.py +69 -0
  659. package/.venv/lib/python3.9/site-packages/setuptools/command/launcher manifest.xml +15 -0
  660. package/.venv/lib/python3.9/site-packages/setuptools/command/py36compat.py +134 -0
  661. package/.venv/lib/python3.9/site-packages/setuptools/command/register.py +18 -0
  662. package/.venv/lib/python3.9/site-packages/setuptools/command/rotate.py +64 -0
  663. package/.venv/lib/python3.9/site-packages/setuptools/command/saveopts.py +22 -0
  664. package/.venv/lib/python3.9/site-packages/setuptools/command/sdist.py +196 -0
  665. package/.venv/lib/python3.9/site-packages/setuptools/command/setopt.py +149 -0
  666. package/.venv/lib/python3.9/site-packages/setuptools/command/test.py +252 -0
  667. package/.venv/lib/python3.9/site-packages/setuptools/command/upload.py +17 -0
  668. package/.venv/lib/python3.9/site-packages/setuptools/command/upload_docs.py +202 -0
  669. package/.venv/lib/python3.9/site-packages/setuptools/config.py +751 -0
  670. package/.venv/lib/python3.9/site-packages/setuptools/dep_util.py +25 -0
  671. package/.venv/lib/python3.9/site-packages/setuptools/depends.py +176 -0
  672. package/.venv/lib/python3.9/site-packages/setuptools/dist.py +1156 -0
  673. package/.venv/lib/python3.9/site-packages/setuptools/errors.py +40 -0
  674. package/.venv/lib/python3.9/site-packages/setuptools/extension.py +55 -0
  675. package/.venv/lib/python3.9/site-packages/setuptools/extern/__init__.py +73 -0
  676. package/.venv/lib/python3.9/site-packages/setuptools/glob.py +167 -0
  677. package/.venv/lib/python3.9/site-packages/setuptools/gui-32.exe +0 -0
  678. package/.venv/lib/python3.9/site-packages/setuptools/gui-64.exe +0 -0
  679. package/.venv/lib/python3.9/site-packages/setuptools/gui-arm64.exe +0 -0
  680. package/.venv/lib/python3.9/site-packages/setuptools/gui.exe +0 -0
  681. package/.venv/lib/python3.9/site-packages/setuptools/installer.py +104 -0
  682. package/.venv/lib/python3.9/site-packages/setuptools/launch.py +36 -0
  683. package/.venv/lib/python3.9/site-packages/setuptools/logging.py +30 -0
  684. package/.venv/lib/python3.9/site-packages/setuptools/monkey.py +177 -0
  685. package/.venv/lib/python3.9/site-packages/setuptools/msvc.py +1805 -0
  686. package/.venv/lib/python3.9/site-packages/setuptools/namespaces.py +107 -0
  687. package/.venv/lib/python3.9/site-packages/setuptools/package_index.py +1127 -0
  688. package/.venv/lib/python3.9/site-packages/setuptools/py34compat.py +13 -0
  689. package/.venv/lib/python3.9/site-packages/setuptools/sandbox.py +530 -0
  690. package/.venv/lib/python3.9/site-packages/setuptools/script (dev).tmpl +6 -0
  691. package/.venv/lib/python3.9/site-packages/setuptools/script.tmpl +3 -0
  692. package/.venv/lib/python3.9/site-packages/setuptools/tests/integration/__init__.py +0 -0
  693. package/.venv/lib/python3.9/site-packages/setuptools/tests/integration/helpers.py +61 -0
  694. package/.venv/lib/python3.9/site-packages/setuptools/tests/integration/test_pip_install_sdist.py +218 -0
  695. package/.venv/lib/python3.9/site-packages/setuptools/unicode_utils.py +42 -0
  696. package/.venv/lib/python3.9/site-packages/setuptools/version.py +6 -0
  697. package/.venv/lib/python3.9/site-packages/setuptools/wheel.py +213 -0
  698. package/.venv/lib/python3.9/site-packages/setuptools/windows_support.py +29 -0
  699. package/.venv/lib/python3.9/site-packages/setuptools-60.5.0.dist-info/INSTALLER +1 -0
  700. package/.venv/lib/python3.9/site-packages/setuptools-60.5.0.dist-info/LICENSE +19 -0
  701. package/.venv/lib/python3.9/site-packages/setuptools-60.5.0.dist-info/METADATA +142 -0
  702. package/.venv/lib/python3.9/site-packages/setuptools-60.5.0.dist-info/RECORD +308 -0
  703. package/.venv/lib/python3.9/site-packages/setuptools-60.5.0.dist-info/REQUESTED +0 -0
  704. package/.venv/lib/python3.9/site-packages/setuptools-60.5.0.dist-info/WHEEL +5 -0
  705. package/.venv/lib/python3.9/site-packages/setuptools-60.5.0.dist-info/entry_points.txt +56 -0
  706. package/.venv/lib/python3.9/site-packages/setuptools-60.5.0.dist-info/top_level.txt +3 -0
  707. package/.venv/pyvenv.cfg +3 -0
  708. package/dist/http-interfaces.js +8 -4
  709. package/dist/http-interfaces.js.map +1 -1
  710. package/dist/plugin/media.js +29 -14
  711. package/dist/plugin/media.js.map +1 -1
  712. package/dist/plugin/plugin-console.js +13 -3
  713. package/dist/plugin/plugin-console.js.map +1 -1
  714. package/dist/plugin/plugin-device.js +1 -1
  715. package/dist/plugin/plugin-device.js.map +1 -1
  716. package/dist/plugin/plugin-host-api.js +1 -1
  717. package/dist/plugin/plugin-host-api.js.map +1 -1
  718. package/dist/plugin/plugin-host.js +36 -127
  719. package/dist/plugin/plugin-host.js.map +1 -1
  720. package/dist/plugin/plugin-remote-worker.js +5 -42
  721. package/dist/plugin/plugin-remote-worker.js.map +1 -1
  722. package/dist/plugin/plugin-remote.js +3 -3
  723. package/dist/plugin/plugin-remote.js.map +1 -1
  724. package/dist/plugin/runtime/child-process-worker.js +42 -0
  725. package/dist/plugin/runtime/child-process-worker.js.map +1 -0
  726. package/dist/plugin/runtime/node-fork-worker.js +51 -0
  727. package/dist/plugin/runtime/node-fork-worker.js.map +1 -0
  728. package/dist/plugin/runtime/node-thread-worker.js +73 -0
  729. package/dist/plugin/runtime/node-thread-worker.js.map +1 -0
  730. package/dist/plugin/runtime/python-worker.js +54 -0
  731. package/dist/plugin/runtime/python-worker.js.map +1 -0
  732. package/dist/plugin/runtime/runtime-worker.js +3 -0
  733. package/dist/plugin/runtime/runtime-worker.js.map +1 -0
  734. package/dist/plugin/system.js +3 -3
  735. package/dist/plugin/system.js.map +1 -1
  736. package/dist/rpc.js +79 -55
  737. package/dist/rpc.js.map +1 -1
  738. package/dist/runtime.js +1 -6
  739. package/dist/runtime.js.map +1 -1
  740. package/dist/scrypted-main.js +14 -7
  741. package/dist/scrypted-main.js.map +1 -1
  742. package/dist/scrypted-plugin-main.js +31 -4
  743. package/dist/scrypted-plugin-main.js.map +1 -1
  744. package/dist/scrypted-server-main.js +1 -1
  745. package/dist/scrypted-server-main.js.map +1 -1
  746. package/dist/threading.js +99 -0
  747. package/dist/threading.js.map +1 -0
  748. package/package.json +7 -4
  749. package/python/plugin-remote.py +31 -2
  750. package/python/rpc.py +6 -0
  751. package/src/http-interfaces.ts +10 -5
  752. package/src/plugin/media.ts +34 -16
  753. package/src/plugin/plugin-console.ts +15 -6
  754. package/src/plugin/plugin-device.ts +2 -2
  755. package/src/plugin/plugin-host-api.ts +2 -2
  756. package/src/plugin/plugin-host.ts +42 -146
  757. package/src/plugin/plugin-remote-websocket.ts +1 -1
  758. package/src/plugin/plugin-remote-worker.ts +7 -44
  759. package/src/plugin/plugin-remote.ts +5 -5
  760. package/src/plugin/runtime/child-process-worker.ts +49 -0
  761. package/src/plugin/runtime/node-fork-worker.ts +54 -0
  762. package/src/plugin/runtime/node-thread-worker.ts +76 -0
  763. package/src/plugin/runtime/python-worker.ts +67 -0
  764. package/src/plugin/runtime/runtime-worker.ts +28 -0
  765. package/src/plugin/system.ts +4 -4
  766. package/src/rpc.ts +92 -66
  767. package/src/runtime.ts +1 -8
  768. package/src/scrypted-main.ts +15 -7
  769. package/src/scrypted-plugin-main.ts +31 -5
  770. package/src/scrypted-server-main.ts +1 -1
  771. package/src/threading.ts +108 -0
@@ -0,0 +1,1053 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # Copyright (C) 2013-2020 Vinay Sajip.
4
+ # Licensed to the Python Software Foundation under a contributor agreement.
5
+ # See LICENSE.txt and CONTRIBUTORS.txt.
6
+ #
7
+ from __future__ import unicode_literals
8
+
9
+ import base64
10
+ import codecs
11
+ import datetime
12
+ from email import message_from_file
13
+ import hashlib
14
+ import imp
15
+ import json
16
+ import logging
17
+ import os
18
+ import posixpath
19
+ import re
20
+ import shutil
21
+ import sys
22
+ import tempfile
23
+ import zipfile
24
+
25
+ from . import __version__, DistlibException
26
+ from .compat import sysconfig, ZipFile, fsdecode, text_type, filter
27
+ from .database import InstalledDistribution
28
+ from .metadata import (Metadata, METADATA_FILENAME, WHEEL_METADATA_FILENAME,
29
+ LEGACY_METADATA_FILENAME)
30
+ from .util import (FileOperator, convert_path, CSVReader, CSVWriter, Cache,
31
+ cached_property, get_cache_base, read_exports, tempdir,
32
+ get_platform)
33
+ from .version import NormalizedVersion, UnsupportedVersionError
34
+
35
+ logger = logging.getLogger(__name__)
36
+
37
+ cache = None # created when needed
38
+
39
+ if hasattr(sys, 'pypy_version_info'): # pragma: no cover
40
+ IMP_PREFIX = 'pp'
41
+ elif sys.platform.startswith('java'): # pragma: no cover
42
+ IMP_PREFIX = 'jy'
43
+ elif sys.platform == 'cli': # pragma: no cover
44
+ IMP_PREFIX = 'ip'
45
+ else:
46
+ IMP_PREFIX = 'cp'
47
+
48
+ VER_SUFFIX = sysconfig.get_config_var('py_version_nodot')
49
+ if not VER_SUFFIX: # pragma: no cover
50
+ VER_SUFFIX = '%s%s' % sys.version_info[:2]
51
+ PYVER = 'py' + VER_SUFFIX
52
+ IMPVER = IMP_PREFIX + VER_SUFFIX
53
+
54
+ ARCH = get_platform().replace('-', '_').replace('.', '_')
55
+
56
+ ABI = sysconfig.get_config_var('SOABI')
57
+ if ABI and ABI.startswith('cpython-'):
58
+ ABI = ABI.replace('cpython-', 'cp').split('-')[0]
59
+ else:
60
+ def _derive_abi():
61
+ parts = ['cp', VER_SUFFIX]
62
+ if sysconfig.get_config_var('Py_DEBUG'):
63
+ parts.append('d')
64
+ if sysconfig.get_config_var('WITH_PYMALLOC'):
65
+ parts.append('m')
66
+ if sysconfig.get_config_var('Py_UNICODE_SIZE') == 4:
67
+ parts.append('u')
68
+ return ''.join(parts)
69
+ ABI = _derive_abi()
70
+ del _derive_abi
71
+
72
+ FILENAME_RE = re.compile(r'''
73
+ (?P<nm>[^-]+)
74
+ -(?P<vn>\d+[^-]*)
75
+ (-(?P<bn>\d+[^-]*))?
76
+ -(?P<py>\w+\d+(\.\w+\d+)*)
77
+ -(?P<bi>\w+)
78
+ -(?P<ar>\w+(\.\w+)*)
79
+ \.whl$
80
+ ''', re.IGNORECASE | re.VERBOSE)
81
+
82
+ NAME_VERSION_RE = re.compile(r'''
83
+ (?P<nm>[^-]+)
84
+ -(?P<vn>\d+[^-]*)
85
+ (-(?P<bn>\d+[^-]*))?$
86
+ ''', re.IGNORECASE | re.VERBOSE)
87
+
88
+ SHEBANG_RE = re.compile(br'\s*#![^\r\n]*')
89
+ SHEBANG_DETAIL_RE = re.compile(br'^(\s*#!("[^"]+"|\S+))\s+(.*)$')
90
+ SHEBANG_PYTHON = b'#!python'
91
+ SHEBANG_PYTHONW = b'#!pythonw'
92
+
93
+ if os.sep == '/':
94
+ to_posix = lambda o: o
95
+ else:
96
+ to_posix = lambda o: o.replace(os.sep, '/')
97
+
98
+
99
+ class Mounter(object):
100
+ def __init__(self):
101
+ self.impure_wheels = {}
102
+ self.libs = {}
103
+
104
+ def add(self, pathname, extensions):
105
+ self.impure_wheels[pathname] = extensions
106
+ self.libs.update(extensions)
107
+
108
+ def remove(self, pathname):
109
+ extensions = self.impure_wheels.pop(pathname)
110
+ for k, v in extensions:
111
+ if k in self.libs:
112
+ del self.libs[k]
113
+
114
+ def find_module(self, fullname, path=None):
115
+ if fullname in self.libs:
116
+ result = self
117
+ else:
118
+ result = None
119
+ return result
120
+
121
+ def load_module(self, fullname):
122
+ if fullname in sys.modules:
123
+ result = sys.modules[fullname]
124
+ else:
125
+ if fullname not in self.libs:
126
+ raise ImportError('unable to find extension for %s' % fullname)
127
+ result = imp.load_dynamic(fullname, self.libs[fullname])
128
+ result.__loader__ = self
129
+ parts = fullname.rsplit('.', 1)
130
+ if len(parts) > 1:
131
+ result.__package__ = parts[0]
132
+ return result
133
+
134
+ _hook = Mounter()
135
+
136
+
137
+ class Wheel(object):
138
+ """
139
+ Class to build and install from Wheel files (PEP 427).
140
+ """
141
+
142
+ wheel_version = (1, 1)
143
+ hash_kind = 'sha256'
144
+
145
+ def __init__(self, filename=None, sign=False, verify=False):
146
+ """
147
+ Initialise an instance using a (valid) filename.
148
+ """
149
+ self.sign = sign
150
+ self.should_verify = verify
151
+ self.buildver = ''
152
+ self.pyver = [PYVER]
153
+ self.abi = ['none']
154
+ self.arch = ['any']
155
+ self.dirname = os.getcwd()
156
+ if filename is None:
157
+ self.name = 'dummy'
158
+ self.version = '0.1'
159
+ self._filename = self.filename
160
+ else:
161
+ m = NAME_VERSION_RE.match(filename)
162
+ if m:
163
+ info = m.groupdict('')
164
+ self.name = info['nm']
165
+ # Reinstate the local version separator
166
+ self.version = info['vn'].replace('_', '-')
167
+ self.buildver = info['bn']
168
+ self._filename = self.filename
169
+ else:
170
+ dirname, filename = os.path.split(filename)
171
+ m = FILENAME_RE.match(filename)
172
+ if not m:
173
+ raise DistlibException('Invalid name or '
174
+ 'filename: %r' % filename)
175
+ if dirname:
176
+ self.dirname = os.path.abspath(dirname)
177
+ self._filename = filename
178
+ info = m.groupdict('')
179
+ self.name = info['nm']
180
+ self.version = info['vn']
181
+ self.buildver = info['bn']
182
+ self.pyver = info['py'].split('.')
183
+ self.abi = info['bi'].split('.')
184
+ self.arch = info['ar'].split('.')
185
+
186
+ @property
187
+ def filename(self):
188
+ """
189
+ Build and return a filename from the various components.
190
+ """
191
+ if self.buildver:
192
+ buildver = '-' + self.buildver
193
+ else:
194
+ buildver = ''
195
+ pyver = '.'.join(self.pyver)
196
+ abi = '.'.join(self.abi)
197
+ arch = '.'.join(self.arch)
198
+ # replace - with _ as a local version separator
199
+ version = self.version.replace('-', '_')
200
+ return '%s-%s%s-%s-%s-%s.whl' % (self.name, version, buildver,
201
+ pyver, abi, arch)
202
+
203
+ @property
204
+ def exists(self):
205
+ path = os.path.join(self.dirname, self.filename)
206
+ return os.path.isfile(path)
207
+
208
+ @property
209
+ def tags(self):
210
+ for pyver in self.pyver:
211
+ for abi in self.abi:
212
+ for arch in self.arch:
213
+ yield pyver, abi, arch
214
+
215
+ @cached_property
216
+ def metadata(self):
217
+ pathname = os.path.join(self.dirname, self.filename)
218
+ name_ver = '%s-%s' % (self.name, self.version)
219
+ info_dir = '%s.dist-info' % name_ver
220
+ wrapper = codecs.getreader('utf-8')
221
+ with ZipFile(pathname, 'r') as zf:
222
+ wheel_metadata = self.get_wheel_metadata(zf)
223
+ wv = wheel_metadata['Wheel-Version'].split('.', 1)
224
+ file_version = tuple([int(i) for i in wv])
225
+ # if file_version < (1, 1):
226
+ # fns = [WHEEL_METADATA_FILENAME, METADATA_FILENAME,
227
+ # LEGACY_METADATA_FILENAME]
228
+ # else:
229
+ # fns = [WHEEL_METADATA_FILENAME, METADATA_FILENAME]
230
+ fns = [WHEEL_METADATA_FILENAME, LEGACY_METADATA_FILENAME]
231
+ result = None
232
+ for fn in fns:
233
+ try:
234
+ metadata_filename = posixpath.join(info_dir, fn)
235
+ with zf.open(metadata_filename) as bf:
236
+ wf = wrapper(bf)
237
+ result = Metadata(fileobj=wf)
238
+ if result:
239
+ break
240
+ except KeyError:
241
+ pass
242
+ if not result:
243
+ raise ValueError('Invalid wheel, because metadata is '
244
+ 'missing: looked in %s' % ', '.join(fns))
245
+ return result
246
+
247
+ def get_wheel_metadata(self, zf):
248
+ name_ver = '%s-%s' % (self.name, self.version)
249
+ info_dir = '%s.dist-info' % name_ver
250
+ metadata_filename = posixpath.join(info_dir, 'WHEEL')
251
+ with zf.open(metadata_filename) as bf:
252
+ wf = codecs.getreader('utf-8')(bf)
253
+ message = message_from_file(wf)
254
+ return dict(message)
255
+
256
+ @cached_property
257
+ def info(self):
258
+ pathname = os.path.join(self.dirname, self.filename)
259
+ with ZipFile(pathname, 'r') as zf:
260
+ result = self.get_wheel_metadata(zf)
261
+ return result
262
+
263
+ def process_shebang(self, data):
264
+ m = SHEBANG_RE.match(data)
265
+ if m:
266
+ end = m.end()
267
+ shebang, data_after_shebang = data[:end], data[end:]
268
+ # Preserve any arguments after the interpreter
269
+ if b'pythonw' in shebang.lower():
270
+ shebang_python = SHEBANG_PYTHONW
271
+ else:
272
+ shebang_python = SHEBANG_PYTHON
273
+ m = SHEBANG_DETAIL_RE.match(shebang)
274
+ if m:
275
+ args = b' ' + m.groups()[-1]
276
+ else:
277
+ args = b''
278
+ shebang = shebang_python + args
279
+ data = shebang + data_after_shebang
280
+ else:
281
+ cr = data.find(b'\r')
282
+ lf = data.find(b'\n')
283
+ if cr < 0 or cr > lf:
284
+ term = b'\n'
285
+ else:
286
+ if data[cr:cr + 2] == b'\r\n':
287
+ term = b'\r\n'
288
+ else:
289
+ term = b'\r'
290
+ data = SHEBANG_PYTHON + term + data
291
+ return data
292
+
293
+ def get_hash(self, data, hash_kind=None):
294
+ if hash_kind is None:
295
+ hash_kind = self.hash_kind
296
+ try:
297
+ hasher = getattr(hashlib, hash_kind)
298
+ except AttributeError:
299
+ raise DistlibException('Unsupported hash algorithm: %r' % hash_kind)
300
+ result = hasher(data).digest()
301
+ result = base64.urlsafe_b64encode(result).rstrip(b'=').decode('ascii')
302
+ return hash_kind, result
303
+
304
+ def write_record(self, records, record_path, base):
305
+ records = list(records) # make a copy, as mutated
306
+ p = to_posix(os.path.relpath(record_path, base))
307
+ records.append((p, '', ''))
308
+ with CSVWriter(record_path) as writer:
309
+ for row in records:
310
+ writer.writerow(row)
311
+
312
+ def write_records(self, info, libdir, archive_paths):
313
+ records = []
314
+ distinfo, info_dir = info
315
+ hasher = getattr(hashlib, self.hash_kind)
316
+ for ap, p in archive_paths:
317
+ with open(p, 'rb') as f:
318
+ data = f.read()
319
+ digest = '%s=%s' % self.get_hash(data)
320
+ size = os.path.getsize(p)
321
+ records.append((ap, digest, size))
322
+
323
+ p = os.path.join(distinfo, 'RECORD')
324
+ self.write_record(records, p, libdir)
325
+ ap = to_posix(os.path.join(info_dir, 'RECORD'))
326
+ archive_paths.append((ap, p))
327
+
328
+ def build_zip(self, pathname, archive_paths):
329
+ with ZipFile(pathname, 'w', zipfile.ZIP_DEFLATED) as zf:
330
+ for ap, p in archive_paths:
331
+ logger.debug('Wrote %s to %s in wheel', p, ap)
332
+ zf.write(p, ap)
333
+
334
+ def build(self, paths, tags=None, wheel_version=None):
335
+ """
336
+ Build a wheel from files in specified paths, and use any specified tags
337
+ when determining the name of the wheel.
338
+ """
339
+ if tags is None:
340
+ tags = {}
341
+
342
+ libkey = list(filter(lambda o: o in paths, ('purelib', 'platlib')))[0]
343
+ if libkey == 'platlib':
344
+ is_pure = 'false'
345
+ default_pyver = [IMPVER]
346
+ default_abi = [ABI]
347
+ default_arch = [ARCH]
348
+ else:
349
+ is_pure = 'true'
350
+ default_pyver = [PYVER]
351
+ default_abi = ['none']
352
+ default_arch = ['any']
353
+
354
+ self.pyver = tags.get('pyver', default_pyver)
355
+ self.abi = tags.get('abi', default_abi)
356
+ self.arch = tags.get('arch', default_arch)
357
+
358
+ libdir = paths[libkey]
359
+
360
+ name_ver = '%s-%s' % (self.name, self.version)
361
+ data_dir = '%s.data' % name_ver
362
+ info_dir = '%s.dist-info' % name_ver
363
+
364
+ archive_paths = []
365
+
366
+ # First, stuff which is not in site-packages
367
+ for key in ('data', 'headers', 'scripts'):
368
+ if key not in paths:
369
+ continue
370
+ path = paths[key]
371
+ if os.path.isdir(path):
372
+ for root, dirs, files in os.walk(path):
373
+ for fn in files:
374
+ p = fsdecode(os.path.join(root, fn))
375
+ rp = os.path.relpath(p, path)
376
+ ap = to_posix(os.path.join(data_dir, key, rp))
377
+ archive_paths.append((ap, p))
378
+ if key == 'scripts' and not p.endswith('.exe'):
379
+ with open(p, 'rb') as f:
380
+ data = f.read()
381
+ data = self.process_shebang(data)
382
+ with open(p, 'wb') as f:
383
+ f.write(data)
384
+
385
+ # Now, stuff which is in site-packages, other than the
386
+ # distinfo stuff.
387
+ path = libdir
388
+ distinfo = None
389
+ for root, dirs, files in os.walk(path):
390
+ if root == path:
391
+ # At the top level only, save distinfo for later
392
+ # and skip it for now
393
+ for i, dn in enumerate(dirs):
394
+ dn = fsdecode(dn)
395
+ if dn.endswith('.dist-info'):
396
+ distinfo = os.path.join(root, dn)
397
+ del dirs[i]
398
+ break
399
+ assert distinfo, '.dist-info directory expected, not found'
400
+
401
+ for fn in files:
402
+ # comment out next suite to leave .pyc files in
403
+ if fsdecode(fn).endswith(('.pyc', '.pyo')):
404
+ continue
405
+ p = os.path.join(root, fn)
406
+ rp = to_posix(os.path.relpath(p, path))
407
+ archive_paths.append((rp, p))
408
+
409
+ # Now distinfo. Assumed to be flat, i.e. os.listdir is enough.
410
+ files = os.listdir(distinfo)
411
+ for fn in files:
412
+ if fn not in ('RECORD', 'INSTALLER', 'SHARED', 'WHEEL'):
413
+ p = fsdecode(os.path.join(distinfo, fn))
414
+ ap = to_posix(os.path.join(info_dir, fn))
415
+ archive_paths.append((ap, p))
416
+
417
+ wheel_metadata = [
418
+ 'Wheel-Version: %d.%d' % (wheel_version or self.wheel_version),
419
+ 'Generator: distlib %s' % __version__,
420
+ 'Root-Is-Purelib: %s' % is_pure,
421
+ ]
422
+ for pyver, abi, arch in self.tags:
423
+ wheel_metadata.append('Tag: %s-%s-%s' % (pyver, abi, arch))
424
+ p = os.path.join(distinfo, 'WHEEL')
425
+ with open(p, 'w') as f:
426
+ f.write('\n'.join(wheel_metadata))
427
+ ap = to_posix(os.path.join(info_dir, 'WHEEL'))
428
+ archive_paths.append((ap, p))
429
+
430
+ # sort the entries by archive path. Not needed by any spec, but it
431
+ # keeps the archive listing and RECORD tidier than they would otherwise
432
+ # be. Use the number of path segments to keep directory entries together,
433
+ # and keep the dist-info stuff at the end.
434
+ def sorter(t):
435
+ ap = t[0]
436
+ n = ap.count('/')
437
+ if '.dist-info' in ap:
438
+ n += 10000
439
+ return (n, ap)
440
+ archive_paths = sorted(archive_paths, key=sorter)
441
+
442
+ # Now, at last, RECORD.
443
+ # Paths in here are archive paths - nothing else makes sense.
444
+ self.write_records((distinfo, info_dir), libdir, archive_paths)
445
+ # Now, ready to build the zip file
446
+ pathname = os.path.join(self.dirname, self.filename)
447
+ self.build_zip(pathname, archive_paths)
448
+ return pathname
449
+
450
+ def skip_entry(self, arcname):
451
+ """
452
+ Determine whether an archive entry should be skipped when verifying
453
+ or installing.
454
+ """
455
+ # The signature file won't be in RECORD,
456
+ # and we don't currently don't do anything with it
457
+ # We also skip directories, as they won't be in RECORD
458
+ # either. See:
459
+ #
460
+ # https://github.com/pypa/wheel/issues/294
461
+ # https://github.com/pypa/wheel/issues/287
462
+ # https://github.com/pypa/wheel/pull/289
463
+ #
464
+ return arcname.endswith(('/', '/RECORD.jws'))
465
+
466
+ def install(self, paths, maker, **kwargs):
467
+ """
468
+ Install a wheel to the specified paths. If kwarg ``warner`` is
469
+ specified, it should be a callable, which will be called with two
470
+ tuples indicating the wheel version of this software and the wheel
471
+ version in the file, if there is a discrepancy in the versions.
472
+ This can be used to issue any warnings to raise any exceptions.
473
+ If kwarg ``lib_only`` is True, only the purelib/platlib files are
474
+ installed, and the headers, scripts, data and dist-info metadata are
475
+ not written. If kwarg ``bytecode_hashed_invalidation`` is True, written
476
+ bytecode will try to use file-hash based invalidation (PEP-552) on
477
+ supported interpreter versions (CPython 2.7+).
478
+
479
+ The return value is a :class:`InstalledDistribution` instance unless
480
+ ``options.lib_only`` is True, in which case the return value is ``None``.
481
+ """
482
+
483
+ dry_run = maker.dry_run
484
+ warner = kwargs.get('warner')
485
+ lib_only = kwargs.get('lib_only', False)
486
+ bc_hashed_invalidation = kwargs.get('bytecode_hashed_invalidation', False)
487
+
488
+ pathname = os.path.join(self.dirname, self.filename)
489
+ name_ver = '%s-%s' % (self.name, self.version)
490
+ data_dir = '%s.data' % name_ver
491
+ info_dir = '%s.dist-info' % name_ver
492
+
493
+ metadata_name = posixpath.join(info_dir, LEGACY_METADATA_FILENAME)
494
+ wheel_metadata_name = posixpath.join(info_dir, 'WHEEL')
495
+ record_name = posixpath.join(info_dir, 'RECORD')
496
+
497
+ wrapper = codecs.getreader('utf-8')
498
+
499
+ with ZipFile(pathname, 'r') as zf:
500
+ with zf.open(wheel_metadata_name) as bwf:
501
+ wf = wrapper(bwf)
502
+ message = message_from_file(wf)
503
+ wv = message['Wheel-Version'].split('.', 1)
504
+ file_version = tuple([int(i) for i in wv])
505
+ if (file_version != self.wheel_version) and warner:
506
+ warner(self.wheel_version, file_version)
507
+
508
+ if message['Root-Is-Purelib'] == 'true':
509
+ libdir = paths['purelib']
510
+ else:
511
+ libdir = paths['platlib']
512
+
513
+ records = {}
514
+ with zf.open(record_name) as bf:
515
+ with CSVReader(stream=bf) as reader:
516
+ for row in reader:
517
+ p = row[0]
518
+ records[p] = row
519
+
520
+ data_pfx = posixpath.join(data_dir, '')
521
+ info_pfx = posixpath.join(info_dir, '')
522
+ script_pfx = posixpath.join(data_dir, 'scripts', '')
523
+
524
+ # make a new instance rather than a copy of maker's,
525
+ # as we mutate it
526
+ fileop = FileOperator(dry_run=dry_run)
527
+ fileop.record = True # so we can rollback if needed
528
+
529
+ bc = not sys.dont_write_bytecode # Double negatives. Lovely!
530
+
531
+ outfiles = [] # for RECORD writing
532
+
533
+ # for script copying/shebang processing
534
+ workdir = tempfile.mkdtemp()
535
+ # set target dir later
536
+ # we default add_launchers to False, as the
537
+ # Python Launcher should be used instead
538
+ maker.source_dir = workdir
539
+ maker.target_dir = None
540
+ try:
541
+ for zinfo in zf.infolist():
542
+ arcname = zinfo.filename
543
+ if isinstance(arcname, text_type):
544
+ u_arcname = arcname
545
+ else:
546
+ u_arcname = arcname.decode('utf-8')
547
+ if self.skip_entry(u_arcname):
548
+ continue
549
+ row = records[u_arcname]
550
+ if row[2] and str(zinfo.file_size) != row[2]:
551
+ raise DistlibException('size mismatch for '
552
+ '%s' % u_arcname)
553
+ if row[1]:
554
+ kind, value = row[1].split('=', 1)
555
+ with zf.open(arcname) as bf:
556
+ data = bf.read()
557
+ _, digest = self.get_hash(data, kind)
558
+ if digest != value:
559
+ raise DistlibException('digest mismatch for '
560
+ '%s' % arcname)
561
+
562
+ if lib_only and u_arcname.startswith((info_pfx, data_pfx)):
563
+ logger.debug('lib_only: skipping %s', u_arcname)
564
+ continue
565
+ is_script = (u_arcname.startswith(script_pfx)
566
+ and not u_arcname.endswith('.exe'))
567
+
568
+ if u_arcname.startswith(data_pfx):
569
+ _, where, rp = u_arcname.split('/', 2)
570
+ outfile = os.path.join(paths[where], convert_path(rp))
571
+ else:
572
+ # meant for site-packages.
573
+ if u_arcname in (wheel_metadata_name, record_name):
574
+ continue
575
+ outfile = os.path.join(libdir, convert_path(u_arcname))
576
+ if not is_script:
577
+ with zf.open(arcname) as bf:
578
+ fileop.copy_stream(bf, outfile)
579
+ # Issue #147: permission bits aren't preserved. Using
580
+ # zf.extract(zinfo, libdir) should have worked, but didn't,
581
+ # see https://www.thetopsites.net/article/53834422.shtml
582
+ # So ... manually preserve permission bits as given in zinfo
583
+ if os.name == 'posix':
584
+ # just set the normal permission bits
585
+ os.chmod(outfile, (zinfo.external_attr >> 16) & 0x1FF)
586
+ outfiles.append(outfile)
587
+ # Double check the digest of the written file
588
+ if not dry_run and row[1]:
589
+ with open(outfile, 'rb') as bf:
590
+ data = bf.read()
591
+ _, newdigest = self.get_hash(data, kind)
592
+ if newdigest != digest:
593
+ raise DistlibException('digest mismatch '
594
+ 'on write for '
595
+ '%s' % outfile)
596
+ if bc and outfile.endswith('.py'):
597
+ try:
598
+ pyc = fileop.byte_compile(outfile,
599
+ hashed_invalidation=bc_hashed_invalidation)
600
+ outfiles.append(pyc)
601
+ except Exception:
602
+ # Don't give up if byte-compilation fails,
603
+ # but log it and perhaps warn the user
604
+ logger.warning('Byte-compilation failed',
605
+ exc_info=True)
606
+ else:
607
+ fn = os.path.basename(convert_path(arcname))
608
+ workname = os.path.join(workdir, fn)
609
+ with zf.open(arcname) as bf:
610
+ fileop.copy_stream(bf, workname)
611
+
612
+ dn, fn = os.path.split(outfile)
613
+ maker.target_dir = dn
614
+ filenames = maker.make(fn)
615
+ fileop.set_executable_mode(filenames)
616
+ outfiles.extend(filenames)
617
+
618
+ if lib_only:
619
+ logger.debug('lib_only: returning None')
620
+ dist = None
621
+ else:
622
+ # Generate scripts
623
+
624
+ # Try to get pydist.json so we can see if there are
625
+ # any commands to generate. If this fails (e.g. because
626
+ # of a legacy wheel), log a warning but don't give up.
627
+ commands = None
628
+ file_version = self.info['Wheel-Version']
629
+ if file_version == '1.0':
630
+ # Use legacy info
631
+ ep = posixpath.join(info_dir, 'entry_points.txt')
632
+ try:
633
+ with zf.open(ep) as bwf:
634
+ epdata = read_exports(bwf)
635
+ commands = {}
636
+ for key in ('console', 'gui'):
637
+ k = '%s_scripts' % key
638
+ if k in epdata:
639
+ commands['wrap_%s' % key] = d = {}
640
+ for v in epdata[k].values():
641
+ s = '%s:%s' % (v.prefix, v.suffix)
642
+ if v.flags:
643
+ s += ' [%s]' % ','.join(v.flags)
644
+ d[v.name] = s
645
+ except Exception:
646
+ logger.warning('Unable to read legacy script '
647
+ 'metadata, so cannot generate '
648
+ 'scripts')
649
+ else:
650
+ try:
651
+ with zf.open(metadata_name) as bwf:
652
+ wf = wrapper(bwf)
653
+ commands = json.load(wf).get('extensions')
654
+ if commands:
655
+ commands = commands.get('python.commands')
656
+ except Exception:
657
+ logger.warning('Unable to read JSON metadata, so '
658
+ 'cannot generate scripts')
659
+ if commands:
660
+ console_scripts = commands.get('wrap_console', {})
661
+ gui_scripts = commands.get('wrap_gui', {})
662
+ if console_scripts or gui_scripts:
663
+ script_dir = paths.get('scripts', '')
664
+ if not os.path.isdir(script_dir):
665
+ raise ValueError('Valid script path not '
666
+ 'specified')
667
+ maker.target_dir = script_dir
668
+ for k, v in console_scripts.items():
669
+ script = '%s = %s' % (k, v)
670
+ filenames = maker.make(script)
671
+ fileop.set_executable_mode(filenames)
672
+
673
+ if gui_scripts:
674
+ options = {'gui': True }
675
+ for k, v in gui_scripts.items():
676
+ script = '%s = %s' % (k, v)
677
+ filenames = maker.make(script, options)
678
+ fileop.set_executable_mode(filenames)
679
+
680
+ p = os.path.join(libdir, info_dir)
681
+ dist = InstalledDistribution(p)
682
+
683
+ # Write SHARED
684
+ paths = dict(paths) # don't change passed in dict
685
+ del paths['purelib']
686
+ del paths['platlib']
687
+ paths['lib'] = libdir
688
+ p = dist.write_shared_locations(paths, dry_run)
689
+ if p:
690
+ outfiles.append(p)
691
+
692
+ # Write RECORD
693
+ dist.write_installed_files(outfiles, paths['prefix'],
694
+ dry_run)
695
+ return dist
696
+ except Exception: # pragma: no cover
697
+ logger.exception('installation failed.')
698
+ fileop.rollback()
699
+ raise
700
+ finally:
701
+ shutil.rmtree(workdir)
702
+
703
+ def _get_dylib_cache(self):
704
+ global cache
705
+ if cache is None:
706
+ # Use native string to avoid issues on 2.x: see Python #20140.
707
+ base = os.path.join(get_cache_base(), str('dylib-cache'),
708
+ '%s.%s' % sys.version_info[:2])
709
+ cache = Cache(base)
710
+ return cache
711
+
712
+ def _get_extensions(self):
713
+ pathname = os.path.join(self.dirname, self.filename)
714
+ name_ver = '%s-%s' % (self.name, self.version)
715
+ info_dir = '%s.dist-info' % name_ver
716
+ arcname = posixpath.join(info_dir, 'EXTENSIONS')
717
+ wrapper = codecs.getreader('utf-8')
718
+ result = []
719
+ with ZipFile(pathname, 'r') as zf:
720
+ try:
721
+ with zf.open(arcname) as bf:
722
+ wf = wrapper(bf)
723
+ extensions = json.load(wf)
724
+ cache = self._get_dylib_cache()
725
+ prefix = cache.prefix_to_dir(pathname)
726
+ cache_base = os.path.join(cache.base, prefix)
727
+ if not os.path.isdir(cache_base):
728
+ os.makedirs(cache_base)
729
+ for name, relpath in extensions.items():
730
+ dest = os.path.join(cache_base, convert_path(relpath))
731
+ if not os.path.exists(dest):
732
+ extract = True
733
+ else:
734
+ file_time = os.stat(dest).st_mtime
735
+ file_time = datetime.datetime.fromtimestamp(file_time)
736
+ info = zf.getinfo(relpath)
737
+ wheel_time = datetime.datetime(*info.date_time)
738
+ extract = wheel_time > file_time
739
+ if extract:
740
+ zf.extract(relpath, cache_base)
741
+ result.append((name, dest))
742
+ except KeyError:
743
+ pass
744
+ return result
745
+
746
+ def is_compatible(self):
747
+ """
748
+ Determine if a wheel is compatible with the running system.
749
+ """
750
+ return is_compatible(self)
751
+
752
+ def is_mountable(self):
753
+ """
754
+ Determine if a wheel is asserted as mountable by its metadata.
755
+ """
756
+ return True # for now - metadata details TBD
757
+
758
+ def mount(self, append=False):
759
+ pathname = os.path.abspath(os.path.join(self.dirname, self.filename))
760
+ if not self.is_compatible():
761
+ msg = 'Wheel %s not compatible with this Python.' % pathname
762
+ raise DistlibException(msg)
763
+ if not self.is_mountable():
764
+ msg = 'Wheel %s is marked as not mountable.' % pathname
765
+ raise DistlibException(msg)
766
+ if pathname in sys.path:
767
+ logger.debug('%s already in path', pathname)
768
+ else:
769
+ if append:
770
+ sys.path.append(pathname)
771
+ else:
772
+ sys.path.insert(0, pathname)
773
+ extensions = self._get_extensions()
774
+ if extensions:
775
+ if _hook not in sys.meta_path:
776
+ sys.meta_path.append(_hook)
777
+ _hook.add(pathname, extensions)
778
+
779
+ def unmount(self):
780
+ pathname = os.path.abspath(os.path.join(self.dirname, self.filename))
781
+ if pathname not in sys.path:
782
+ logger.debug('%s not in path', pathname)
783
+ else:
784
+ sys.path.remove(pathname)
785
+ if pathname in _hook.impure_wheels:
786
+ _hook.remove(pathname)
787
+ if not _hook.impure_wheels:
788
+ if _hook in sys.meta_path:
789
+ sys.meta_path.remove(_hook)
790
+
791
+ def verify(self):
792
+ pathname = os.path.join(self.dirname, self.filename)
793
+ name_ver = '%s-%s' % (self.name, self.version)
794
+ data_dir = '%s.data' % name_ver
795
+ info_dir = '%s.dist-info' % name_ver
796
+
797
+ metadata_name = posixpath.join(info_dir, LEGACY_METADATA_FILENAME)
798
+ wheel_metadata_name = posixpath.join(info_dir, 'WHEEL')
799
+ record_name = posixpath.join(info_dir, 'RECORD')
800
+
801
+ wrapper = codecs.getreader('utf-8')
802
+
803
+ with ZipFile(pathname, 'r') as zf:
804
+ with zf.open(wheel_metadata_name) as bwf:
805
+ wf = wrapper(bwf)
806
+ message = message_from_file(wf)
807
+ wv = message['Wheel-Version'].split('.', 1)
808
+ file_version = tuple([int(i) for i in wv])
809
+ # TODO version verification
810
+
811
+ records = {}
812
+ with zf.open(record_name) as bf:
813
+ with CSVReader(stream=bf) as reader:
814
+ for row in reader:
815
+ p = row[0]
816
+ records[p] = row
817
+
818
+ for zinfo in zf.infolist():
819
+ arcname = zinfo.filename
820
+ if isinstance(arcname, text_type):
821
+ u_arcname = arcname
822
+ else:
823
+ u_arcname = arcname.decode('utf-8')
824
+ # See issue #115: some wheels have .. in their entries, but
825
+ # in the filename ... e.g. __main__..py ! So the check is
826
+ # updated to look for .. in the directory portions
827
+ p = u_arcname.split('/')
828
+ if '..' in p:
829
+ raise DistlibException('invalid entry in '
830
+ 'wheel: %r' % u_arcname)
831
+
832
+ if self.skip_entry(u_arcname):
833
+ continue
834
+ row = records[u_arcname]
835
+ if row[2] and str(zinfo.file_size) != row[2]:
836
+ raise DistlibException('size mismatch for '
837
+ '%s' % u_arcname)
838
+ if row[1]:
839
+ kind, value = row[1].split('=', 1)
840
+ with zf.open(arcname) as bf:
841
+ data = bf.read()
842
+ _, digest = self.get_hash(data, kind)
843
+ if digest != value:
844
+ raise DistlibException('digest mismatch for '
845
+ '%s' % arcname)
846
+
847
+ def update(self, modifier, dest_dir=None, **kwargs):
848
+ """
849
+ Update the contents of a wheel in a generic way. The modifier should
850
+ be a callable which expects a dictionary argument: its keys are
851
+ archive-entry paths, and its values are absolute filesystem paths
852
+ where the contents the corresponding archive entries can be found. The
853
+ modifier is free to change the contents of the files pointed to, add
854
+ new entries and remove entries, before returning. This method will
855
+ extract the entire contents of the wheel to a temporary location, call
856
+ the modifier, and then use the passed (and possibly updated)
857
+ dictionary to write a new wheel. If ``dest_dir`` is specified, the new
858
+ wheel is written there -- otherwise, the original wheel is overwritten.
859
+
860
+ The modifier should return True if it updated the wheel, else False.
861
+ This method returns the same value the modifier returns.
862
+ """
863
+
864
+ def get_version(path_map, info_dir):
865
+ version = path = None
866
+ key = '%s/%s' % (info_dir, LEGACY_METADATA_FILENAME)
867
+ if key not in path_map:
868
+ key = '%s/PKG-INFO' % info_dir
869
+ if key in path_map:
870
+ path = path_map[key]
871
+ version = Metadata(path=path).version
872
+ return version, path
873
+
874
+ def update_version(version, path):
875
+ updated = None
876
+ try:
877
+ v = NormalizedVersion(version)
878
+ i = version.find('-')
879
+ if i < 0:
880
+ updated = '%s+1' % version
881
+ else:
882
+ parts = [int(s) for s in version[i + 1:].split('.')]
883
+ parts[-1] += 1
884
+ updated = '%s+%s' % (version[:i],
885
+ '.'.join(str(i) for i in parts))
886
+ except UnsupportedVersionError:
887
+ logger.debug('Cannot update non-compliant (PEP-440) '
888
+ 'version %r', version)
889
+ if updated:
890
+ md = Metadata(path=path)
891
+ md.version = updated
892
+ legacy = path.endswith(LEGACY_METADATA_FILENAME)
893
+ md.write(path=path, legacy=legacy)
894
+ logger.debug('Version updated from %r to %r', version,
895
+ updated)
896
+
897
+ pathname = os.path.join(self.dirname, self.filename)
898
+ name_ver = '%s-%s' % (self.name, self.version)
899
+ info_dir = '%s.dist-info' % name_ver
900
+ record_name = posixpath.join(info_dir, 'RECORD')
901
+ with tempdir() as workdir:
902
+ with ZipFile(pathname, 'r') as zf:
903
+ path_map = {}
904
+ for zinfo in zf.infolist():
905
+ arcname = zinfo.filename
906
+ if isinstance(arcname, text_type):
907
+ u_arcname = arcname
908
+ else:
909
+ u_arcname = arcname.decode('utf-8')
910
+ if u_arcname == record_name:
911
+ continue
912
+ if '..' in u_arcname:
913
+ raise DistlibException('invalid entry in '
914
+ 'wheel: %r' % u_arcname)
915
+ zf.extract(zinfo, workdir)
916
+ path = os.path.join(workdir, convert_path(u_arcname))
917
+ path_map[u_arcname] = path
918
+
919
+ # Remember the version.
920
+ original_version, _ = get_version(path_map, info_dir)
921
+ # Files extracted. Call the modifier.
922
+ modified = modifier(path_map, **kwargs)
923
+ if modified:
924
+ # Something changed - need to build a new wheel.
925
+ current_version, path = get_version(path_map, info_dir)
926
+ if current_version and (current_version == original_version):
927
+ # Add or update local version to signify changes.
928
+ update_version(current_version, path)
929
+ # Decide where the new wheel goes.
930
+ if dest_dir is None:
931
+ fd, newpath = tempfile.mkstemp(suffix='.whl',
932
+ prefix='wheel-update-',
933
+ dir=workdir)
934
+ os.close(fd)
935
+ else:
936
+ if not os.path.isdir(dest_dir):
937
+ raise DistlibException('Not a directory: %r' % dest_dir)
938
+ newpath = os.path.join(dest_dir, self.filename)
939
+ archive_paths = list(path_map.items())
940
+ distinfo = os.path.join(workdir, info_dir)
941
+ info = distinfo, info_dir
942
+ self.write_records(info, workdir, archive_paths)
943
+ self.build_zip(newpath, archive_paths)
944
+ if dest_dir is None:
945
+ shutil.copyfile(newpath, pathname)
946
+ return modified
947
+
948
+ def _get_glibc_version():
949
+ import platform
950
+ ver = platform.libc_ver()
951
+ result = []
952
+ if ver[0] == 'glibc':
953
+ for s in ver[1].split('.'):
954
+ result.append(int(s) if s.isdigit() else 0)
955
+ result = tuple(result)
956
+ return result
957
+
958
+ def compatible_tags():
959
+ """
960
+ Return (pyver, abi, arch) tuples compatible with this Python.
961
+ """
962
+ versions = [VER_SUFFIX]
963
+ major = VER_SUFFIX[0]
964
+ for minor in range(sys.version_info[1] - 1, - 1, -1):
965
+ versions.append(''.join([major, str(minor)]))
966
+
967
+ abis = []
968
+ for suffix, _, _ in imp.get_suffixes():
969
+ if suffix.startswith('.abi'):
970
+ abis.append(suffix.split('.', 2)[1])
971
+ abis.sort()
972
+ if ABI != 'none':
973
+ abis.insert(0, ABI)
974
+ abis.append('none')
975
+ result = []
976
+
977
+ arches = [ARCH]
978
+ if sys.platform == 'darwin':
979
+ m = re.match(r'(\w+)_(\d+)_(\d+)_(\w+)$', ARCH)
980
+ if m:
981
+ name, major, minor, arch = m.groups()
982
+ minor = int(minor)
983
+ matches = [arch]
984
+ if arch in ('i386', 'ppc'):
985
+ matches.append('fat')
986
+ if arch in ('i386', 'ppc', 'x86_64'):
987
+ matches.append('fat3')
988
+ if arch in ('ppc64', 'x86_64'):
989
+ matches.append('fat64')
990
+ if arch in ('i386', 'x86_64'):
991
+ matches.append('intel')
992
+ if arch in ('i386', 'x86_64', 'intel', 'ppc', 'ppc64'):
993
+ matches.append('universal')
994
+ while minor >= 0:
995
+ for match in matches:
996
+ s = '%s_%s_%s_%s' % (name, major, minor, match)
997
+ if s != ARCH: # already there
998
+ arches.append(s)
999
+ minor -= 1
1000
+
1001
+ # Most specific - our Python version, ABI and arch
1002
+ for abi in abis:
1003
+ for arch in arches:
1004
+ result.append((''.join((IMP_PREFIX, versions[0])), abi, arch))
1005
+ # manylinux
1006
+ if abi != 'none' and sys.platform.startswith('linux'):
1007
+ arch = arch.replace('linux_', '')
1008
+ parts = _get_glibc_version()
1009
+ if len(parts) == 2:
1010
+ if parts >= (2, 5):
1011
+ result.append((''.join((IMP_PREFIX, versions[0])), abi,
1012
+ 'manylinux1_%s' % arch))
1013
+ if parts >= (2, 12):
1014
+ result.append((''.join((IMP_PREFIX, versions[0])), abi,
1015
+ 'manylinux2010_%s' % arch))
1016
+ if parts >= (2, 17):
1017
+ result.append((''.join((IMP_PREFIX, versions[0])), abi,
1018
+ 'manylinux2014_%s' % arch))
1019
+ result.append((''.join((IMP_PREFIX, versions[0])), abi,
1020
+ 'manylinux_%s_%s_%s' % (parts[0], parts[1],
1021
+ arch)))
1022
+
1023
+ # where no ABI / arch dependency, but IMP_PREFIX dependency
1024
+ for i, version in enumerate(versions):
1025
+ result.append((''.join((IMP_PREFIX, version)), 'none', 'any'))
1026
+ if i == 0:
1027
+ result.append((''.join((IMP_PREFIX, version[0])), 'none', 'any'))
1028
+
1029
+ # no IMP_PREFIX, ABI or arch dependency
1030
+ for i, version in enumerate(versions):
1031
+ result.append((''.join(('py', version)), 'none', 'any'))
1032
+ if i == 0:
1033
+ result.append((''.join(('py', version[0])), 'none', 'any'))
1034
+
1035
+ return set(result)
1036
+
1037
+
1038
+ COMPATIBLE_TAGS = compatible_tags()
1039
+
1040
+ del compatible_tags
1041
+
1042
+
1043
+ def is_compatible(wheel, tags=None):
1044
+ if not isinstance(wheel, Wheel):
1045
+ wheel = Wheel(wheel) # assume it's a filename
1046
+ result = False
1047
+ if tags is None:
1048
+ tags = COMPATIBLE_TAGS
1049
+ for ver, abi, arch in tags:
1050
+ if ver in wheel.pyver and abi in wheel.abi and arch in wheel.arch:
1051
+ result = True
1052
+ break
1053
+ return result