morel-theme-pack 0.1.31 → 0.1.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1491) hide show
  1. checksums.yaml +4 -4
  2. metadata +1 -1490
  3. data/assets/env/bin/Activate.ps1 +0 -247
  4. data/assets/env/bin/activate +0 -69
  5. data/assets/env/bin/activate.csh +0 -26
  6. data/assets/env/bin/activate.fish +0 -69
  7. data/assets/env/bin/pip +0 -10
  8. data/assets/env/bin/pip3 +0 -10
  9. data/assets/env/bin/pip3.10 +0 -10
  10. data/assets/env/bin/python +0 -1
  11. data/assets/env/bin/python3 +0 -1
  12. data/assets/env/bin/python3.10 +0 -1
  13. data/assets/env/lib/python3.10/site-packages/_distutils_hack/__init__.py +0 -222
  14. data/assets/env/lib/python3.10/site-packages/_distutils_hack/__pycache__/__init__.cpython-310.pyc +0 -0
  15. data/assets/env/lib/python3.10/site-packages/_distutils_hack/__pycache__/override.cpython-310.pyc +0 -0
  16. data/assets/env/lib/python3.10/site-packages/_distutils_hack/override.py +0 -1
  17. data/assets/env/lib/python3.10/site-packages/distutils-precedence.pth +0 -1
  18. data/assets/env/lib/python3.10/site-packages/pip/__init__.py +0 -13
  19. data/assets/env/lib/python3.10/site-packages/pip/__main__.py +0 -31
  20. data/assets/env/lib/python3.10/site-packages/pip/__pip-runner__.py +0 -50
  21. data/assets/env/lib/python3.10/site-packages/pip/__pycache__/__init__.cpython-310.pyc +0 -0
  22. data/assets/env/lib/python3.10/site-packages/pip/__pycache__/__main__.cpython-310.pyc +0 -0
  23. data/assets/env/lib/python3.10/site-packages/pip/__pycache__/__pip-runner__.cpython-310.pyc +0 -0
  24. data/assets/env/lib/python3.10/site-packages/pip/_internal/__init__.py +0 -19
  25. data/assets/env/lib/python3.10/site-packages/pip/_internal/__pycache__/__init__.cpython-310.pyc +0 -0
  26. data/assets/env/lib/python3.10/site-packages/pip/_internal/__pycache__/build_env.cpython-310.pyc +0 -0
  27. data/assets/env/lib/python3.10/site-packages/pip/_internal/__pycache__/cache.cpython-310.pyc +0 -0
  28. data/assets/env/lib/python3.10/site-packages/pip/_internal/__pycache__/configuration.cpython-310.pyc +0 -0
  29. data/assets/env/lib/python3.10/site-packages/pip/_internal/__pycache__/exceptions.cpython-310.pyc +0 -0
  30. data/assets/env/lib/python3.10/site-packages/pip/_internal/__pycache__/main.cpython-310.pyc +0 -0
  31. data/assets/env/lib/python3.10/site-packages/pip/_internal/__pycache__/pyproject.cpython-310.pyc +0 -0
  32. data/assets/env/lib/python3.10/site-packages/pip/_internal/__pycache__/self_outdated_check.cpython-310.pyc +0 -0
  33. data/assets/env/lib/python3.10/site-packages/pip/_internal/__pycache__/wheel_builder.cpython-310.pyc +0 -0
  34. data/assets/env/lib/python3.10/site-packages/pip/_internal/build_env.py +0 -310
  35. data/assets/env/lib/python3.10/site-packages/pip/_internal/cache.py +0 -293
  36. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__init__.py +0 -4
  37. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__pycache__/__init__.cpython-310.pyc +0 -0
  38. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__pycache__/autocompletion.cpython-310.pyc +0 -0
  39. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__pycache__/base_command.cpython-310.pyc +0 -0
  40. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__pycache__/cmdoptions.cpython-310.pyc +0 -0
  41. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__pycache__/command_context.cpython-310.pyc +0 -0
  42. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__pycache__/main.cpython-310.pyc +0 -0
  43. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__pycache__/main_parser.cpython-310.pyc +0 -0
  44. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__pycache__/parser.cpython-310.pyc +0 -0
  45. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__pycache__/progress_bars.cpython-310.pyc +0 -0
  46. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__pycache__/req_command.cpython-310.pyc +0 -0
  47. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__pycache__/spinners.cpython-310.pyc +0 -0
  48. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/__pycache__/status_codes.cpython-310.pyc +0 -0
  49. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/autocompletion.py +0 -171
  50. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/base_command.py +0 -216
  51. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/cmdoptions.py +0 -1049
  52. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/command_context.py +0 -27
  53. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/main.py +0 -70
  54. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/main_parser.py +0 -134
  55. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/parser.py +0 -294
  56. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/progress_bars.py +0 -68
  57. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/req_command.py +0 -502
  58. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/spinners.py +0 -159
  59. data/assets/env/lib/python3.10/site-packages/pip/_internal/cli/status_codes.py +0 -6
  60. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__init__.py +0 -132
  61. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/__init__.cpython-310.pyc +0 -0
  62. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/cache.cpython-310.pyc +0 -0
  63. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/check.cpython-310.pyc +0 -0
  64. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/completion.cpython-310.pyc +0 -0
  65. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/configuration.cpython-310.pyc +0 -0
  66. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/debug.cpython-310.pyc +0 -0
  67. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/download.cpython-310.pyc +0 -0
  68. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/freeze.cpython-310.pyc +0 -0
  69. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/hash.cpython-310.pyc +0 -0
  70. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/help.cpython-310.pyc +0 -0
  71. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/index.cpython-310.pyc +0 -0
  72. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/inspect.cpython-310.pyc +0 -0
  73. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/install.cpython-310.pyc +0 -0
  74. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/list.cpython-310.pyc +0 -0
  75. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/search.cpython-310.pyc +0 -0
  76. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/show.cpython-310.pyc +0 -0
  77. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/uninstall.cpython-310.pyc +0 -0
  78. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/__pycache__/wheel.cpython-310.pyc +0 -0
  79. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/cache.py +0 -223
  80. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/check.py +0 -53
  81. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/completion.py +0 -126
  82. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/configuration.py +0 -282
  83. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/debug.py +0 -199
  84. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/download.py +0 -149
  85. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/freeze.py +0 -97
  86. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/hash.py +0 -59
  87. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/help.py +0 -41
  88. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/index.py +0 -138
  89. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/inspect.py +0 -97
  90. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/install.py +0 -860
  91. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/list.py +0 -365
  92. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/search.py +0 -174
  93. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/show.py +0 -183
  94. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/uninstall.py +0 -106
  95. data/assets/env/lib/python3.10/site-packages/pip/_internal/commands/wheel.py +0 -203
  96. data/assets/env/lib/python3.10/site-packages/pip/_internal/configuration.py +0 -374
  97. data/assets/env/lib/python3.10/site-packages/pip/_internal/distributions/__init__.py +0 -21
  98. data/assets/env/lib/python3.10/site-packages/pip/_internal/distributions/__pycache__/__init__.cpython-310.pyc +0 -0
  99. data/assets/env/lib/python3.10/site-packages/pip/_internal/distributions/__pycache__/base.cpython-310.pyc +0 -0
  100. data/assets/env/lib/python3.10/site-packages/pip/_internal/distributions/__pycache__/installed.cpython-310.pyc +0 -0
  101. data/assets/env/lib/python3.10/site-packages/pip/_internal/distributions/__pycache__/sdist.cpython-310.pyc +0 -0
  102. data/assets/env/lib/python3.10/site-packages/pip/_internal/distributions/__pycache__/wheel.cpython-310.pyc +0 -0
  103. data/assets/env/lib/python3.10/site-packages/pip/_internal/distributions/base.py +0 -39
  104. data/assets/env/lib/python3.10/site-packages/pip/_internal/distributions/installed.py +0 -23
  105. data/assets/env/lib/python3.10/site-packages/pip/_internal/distributions/sdist.py +0 -150
  106. data/assets/env/lib/python3.10/site-packages/pip/_internal/distributions/wheel.py +0 -34
  107. data/assets/env/lib/python3.10/site-packages/pip/_internal/exceptions.py +0 -660
  108. data/assets/env/lib/python3.10/site-packages/pip/_internal/index/__init__.py +0 -2
  109. data/assets/env/lib/python3.10/site-packages/pip/_internal/index/__pycache__/__init__.cpython-310.pyc +0 -0
  110. data/assets/env/lib/python3.10/site-packages/pip/_internal/index/__pycache__/collector.cpython-310.pyc +0 -0
  111. data/assets/env/lib/python3.10/site-packages/pip/_internal/index/__pycache__/package_finder.cpython-310.pyc +0 -0
  112. data/assets/env/lib/python3.10/site-packages/pip/_internal/index/__pycache__/sources.cpython-310.pyc +0 -0
  113. data/assets/env/lib/python3.10/site-packages/pip/_internal/index/collector.py +0 -505
  114. data/assets/env/lib/python3.10/site-packages/pip/_internal/index/package_finder.py +0 -1025
  115. data/assets/env/lib/python3.10/site-packages/pip/_internal/index/sources.py +0 -224
  116. data/assets/env/lib/python3.10/site-packages/pip/_internal/locations/__init__.py +0 -528
  117. data/assets/env/lib/python3.10/site-packages/pip/_internal/locations/__pycache__/__init__.cpython-310.pyc +0 -0
  118. data/assets/env/lib/python3.10/site-packages/pip/_internal/locations/__pycache__/_distutils.cpython-310.pyc +0 -0
  119. data/assets/env/lib/python3.10/site-packages/pip/_internal/locations/__pycache__/_sysconfig.cpython-310.pyc +0 -0
  120. data/assets/env/lib/python3.10/site-packages/pip/_internal/locations/__pycache__/base.cpython-310.pyc +0 -0
  121. data/assets/env/lib/python3.10/site-packages/pip/_internal/locations/_distutils.py +0 -180
  122. data/assets/env/lib/python3.10/site-packages/pip/_internal/locations/_sysconfig.py +0 -218
  123. data/assets/env/lib/python3.10/site-packages/pip/_internal/locations/base.py +0 -81
  124. data/assets/env/lib/python3.10/site-packages/pip/_internal/main.py +0 -12
  125. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/__init__.py +0 -127
  126. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/__pycache__/__init__.cpython-310.pyc +0 -0
  127. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/__pycache__/_json.cpython-310.pyc +0 -0
  128. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/__pycache__/base.cpython-310.pyc +0 -0
  129. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/__pycache__/pkg_resources.cpython-310.pyc +0 -0
  130. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/_json.py +0 -84
  131. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/base.py +0 -688
  132. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/importlib/__init__.py +0 -4
  133. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/importlib/__pycache__/__init__.cpython-310.pyc +0 -0
  134. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/importlib/__pycache__/_compat.cpython-310.pyc +0 -0
  135. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/importlib/__pycache__/_dists.cpython-310.pyc +0 -0
  136. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/importlib/__pycache__/_envs.cpython-310.pyc +0 -0
  137. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/importlib/_compat.py +0 -55
  138. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/importlib/_dists.py +0 -224
  139. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/importlib/_envs.py +0 -188
  140. data/assets/env/lib/python3.10/site-packages/pip/_internal/metadata/pkg_resources.py +0 -270
  141. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__init__.py +0 -2
  142. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__pycache__/__init__.cpython-310.pyc +0 -0
  143. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__pycache__/candidate.cpython-310.pyc +0 -0
  144. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__pycache__/direct_url.cpython-310.pyc +0 -0
  145. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__pycache__/format_control.cpython-310.pyc +0 -0
  146. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__pycache__/index.cpython-310.pyc +0 -0
  147. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__pycache__/installation_report.cpython-310.pyc +0 -0
  148. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__pycache__/link.cpython-310.pyc +0 -0
  149. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__pycache__/scheme.cpython-310.pyc +0 -0
  150. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__pycache__/search_scope.cpython-310.pyc +0 -0
  151. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__pycache__/selection_prefs.cpython-310.pyc +0 -0
  152. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__pycache__/target_python.cpython-310.pyc +0 -0
  153. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/__pycache__/wheel.cpython-310.pyc +0 -0
  154. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/candidate.py +0 -34
  155. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/direct_url.py +0 -212
  156. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/format_control.py +0 -80
  157. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/index.py +0 -28
  158. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/installation_report.py +0 -53
  159. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/link.py +0 -507
  160. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/scheme.py +0 -31
  161. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/search_scope.py +0 -133
  162. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/selection_prefs.py +0 -51
  163. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/target_python.py +0 -110
  164. data/assets/env/lib/python3.10/site-packages/pip/_internal/models/wheel.py +0 -92
  165. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/__init__.py +0 -2
  166. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/__pycache__/__init__.cpython-310.pyc +0 -0
  167. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/__pycache__/auth.cpython-310.pyc +0 -0
  168. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/__pycache__/cache.cpython-310.pyc +0 -0
  169. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/__pycache__/download.cpython-310.pyc +0 -0
  170. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/__pycache__/lazy_wheel.cpython-310.pyc +0 -0
  171. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/__pycache__/session.cpython-310.pyc +0 -0
  172. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/__pycache__/utils.cpython-310.pyc +0 -0
  173. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/__pycache__/xmlrpc.cpython-310.pyc +0 -0
  174. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/auth.py +0 -323
  175. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/cache.py +0 -69
  176. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/download.py +0 -186
  177. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/lazy_wheel.py +0 -210
  178. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/session.py +0 -518
  179. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/utils.py +0 -96
  180. data/assets/env/lib/python3.10/site-packages/pip/_internal/network/xmlrpc.py +0 -60
  181. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/__init__.py +0 -0
  182. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/__pycache__/__init__.cpython-310.pyc +0 -0
  183. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/__pycache__/check.cpython-310.pyc +0 -0
  184. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/__pycache__/freeze.cpython-310.pyc +0 -0
  185. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/__pycache__/prepare.cpython-310.pyc +0 -0
  186. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/__init__.py +0 -0
  187. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/__pycache__/__init__.cpython-310.pyc +0 -0
  188. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/__pycache__/build_tracker.cpython-310.pyc +0 -0
  189. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/__pycache__/metadata.cpython-310.pyc +0 -0
  190. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/__pycache__/metadata_editable.cpython-310.pyc +0 -0
  191. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/__pycache__/metadata_legacy.cpython-310.pyc +0 -0
  192. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/__pycache__/wheel.cpython-310.pyc +0 -0
  193. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/__pycache__/wheel_editable.cpython-310.pyc +0 -0
  194. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/__pycache__/wheel_legacy.cpython-310.pyc +0 -0
  195. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/build_tracker.py +0 -124
  196. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/metadata.py +0 -39
  197. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/metadata_editable.py +0 -41
  198. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/metadata_legacy.py +0 -74
  199. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/wheel.py +0 -37
  200. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/wheel_editable.py +0 -46
  201. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/build/wheel_legacy.py +0 -102
  202. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/check.py +0 -149
  203. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/freeze.py +0 -254
  204. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/install/__init__.py +0 -2
  205. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/install/__pycache__/__init__.cpython-310.pyc +0 -0
  206. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/install/__pycache__/editable_legacy.cpython-310.pyc +0 -0
  207. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/install/__pycache__/legacy.cpython-310.pyc +0 -0
  208. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/install/__pycache__/wheel.cpython-310.pyc +0 -0
  209. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/install/editable_legacy.py +0 -47
  210. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/install/legacy.py +0 -120
  211. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/install/wheel.py +0 -738
  212. data/assets/env/lib/python3.10/site-packages/pip/_internal/operations/prepare.py +0 -667
  213. data/assets/env/lib/python3.10/site-packages/pip/_internal/pyproject.py +0 -175
  214. data/assets/env/lib/python3.10/site-packages/pip/_internal/req/__init__.py +0 -94
  215. data/assets/env/lib/python3.10/site-packages/pip/_internal/req/__pycache__/__init__.cpython-310.pyc +0 -0
  216. data/assets/env/lib/python3.10/site-packages/pip/_internal/req/__pycache__/constructors.cpython-310.pyc +0 -0
  217. data/assets/env/lib/python3.10/site-packages/pip/_internal/req/__pycache__/req_file.cpython-310.pyc +0 -0
  218. data/assets/env/lib/python3.10/site-packages/pip/_internal/req/__pycache__/req_install.cpython-310.pyc +0 -0
  219. data/assets/env/lib/python3.10/site-packages/pip/_internal/req/__pycache__/req_set.cpython-310.pyc +0 -0
  220. data/assets/env/lib/python3.10/site-packages/pip/_internal/req/__pycache__/req_uninstall.cpython-310.pyc +0 -0
  221. data/assets/env/lib/python3.10/site-packages/pip/_internal/req/constructors.py +0 -501
  222. data/assets/env/lib/python3.10/site-packages/pip/_internal/req/req_file.py +0 -544
  223. data/assets/env/lib/python3.10/site-packages/pip/_internal/req/req_install.py +0 -942
  224. data/assets/env/lib/python3.10/site-packages/pip/_internal/req/req_set.py +0 -82
  225. data/assets/env/lib/python3.10/site-packages/pip/_internal/req/req_uninstall.py +0 -640
  226. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/__init__.py +0 -0
  227. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/__pycache__/__init__.cpython-310.pyc +0 -0
  228. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/__pycache__/base.cpython-310.pyc +0 -0
  229. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/base.py +0 -20
  230. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
  231. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/legacy/__pycache__/__init__.cpython-310.pyc +0 -0
  232. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/legacy/__pycache__/resolver.cpython-310.pyc +0 -0
  233. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/legacy/resolver.py +0 -600
  234. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
  235. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/__pycache__/__init__.cpython-310.pyc +0 -0
  236. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/__pycache__/base.cpython-310.pyc +0 -0
  237. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/__pycache__/candidates.cpython-310.pyc +0 -0
  238. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/__pycache__/factory.cpython-310.pyc +0 -0
  239. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/__pycache__/found_candidates.cpython-310.pyc +0 -0
  240. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/__pycache__/provider.cpython-310.pyc +0 -0
  241. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/__pycache__/reporter.cpython-310.pyc +0 -0
  242. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/__pycache__/requirements.cpython-310.pyc +0 -0
  243. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/__pycache__/resolver.cpython-310.pyc +0 -0
  244. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/base.py +0 -141
  245. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py +0 -556
  246. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/factory.py +0 -731
  247. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +0 -155
  248. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/provider.py +0 -248
  249. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/reporter.py +0 -68
  250. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/requirements.py +0 -166
  251. data/assets/env/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/resolver.py +0 -296
  252. data/assets/env/lib/python3.10/site-packages/pip/_internal/self_outdated_check.py +0 -239
  253. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__init__.py +0 -0
  254. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/__init__.cpython-310.pyc +0 -0
  255. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/_log.cpython-310.pyc +0 -0
  256. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/appdirs.cpython-310.pyc +0 -0
  257. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/compat.cpython-310.pyc +0 -0
  258. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/compatibility_tags.cpython-310.pyc +0 -0
  259. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/datetime.cpython-310.pyc +0 -0
  260. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/deprecation.cpython-310.pyc +0 -0
  261. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/direct_url_helpers.cpython-310.pyc +0 -0
  262. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/distutils_args.cpython-310.pyc +0 -0
  263. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/egg_link.cpython-310.pyc +0 -0
  264. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/encoding.cpython-310.pyc +0 -0
  265. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/entrypoints.cpython-310.pyc +0 -0
  266. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/filesystem.cpython-310.pyc +0 -0
  267. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/filetypes.cpython-310.pyc +0 -0
  268. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/glibc.cpython-310.pyc +0 -0
  269. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/hashes.cpython-310.pyc +0 -0
  270. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/inject_securetransport.cpython-310.pyc +0 -0
  271. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/logging.cpython-310.pyc +0 -0
  272. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/misc.cpython-310.pyc +0 -0
  273. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/models.cpython-310.pyc +0 -0
  274. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/packaging.cpython-310.pyc +0 -0
  275. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/setuptools_build.cpython-310.pyc +0 -0
  276. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/subprocess.cpython-310.pyc +0 -0
  277. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/temp_dir.cpython-310.pyc +0 -0
  278. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/unpacking.cpython-310.pyc +0 -0
  279. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/urls.cpython-310.pyc +0 -0
  280. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/virtualenv.cpython-310.pyc +0 -0
  281. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/__pycache__/wheel.cpython-310.pyc +0 -0
  282. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/_log.py +0 -38
  283. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/appdirs.py +0 -52
  284. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/compat.py +0 -63
  285. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/compatibility_tags.py +0 -165
  286. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/datetime.py +0 -11
  287. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/deprecation.py +0 -188
  288. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/direct_url_helpers.py +0 -87
  289. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/distutils_args.py +0 -43
  290. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/egg_link.py +0 -75
  291. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/encoding.py +0 -36
  292. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/entrypoints.py +0 -84
  293. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/filesystem.py +0 -153
  294. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/filetypes.py +0 -27
  295. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/glibc.py +0 -88
  296. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/hashes.py +0 -144
  297. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/inject_securetransport.py +0 -35
  298. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/logging.py +0 -348
  299. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/misc.py +0 -723
  300. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/models.py +0 -39
  301. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/packaging.py +0 -57
  302. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/setuptools_build.py +0 -195
  303. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/subprocess.py +0 -260
  304. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/temp_dir.py +0 -246
  305. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/unpacking.py +0 -257
  306. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/urls.py +0 -62
  307. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/virtualenv.py +0 -104
  308. data/assets/env/lib/python3.10/site-packages/pip/_internal/utils/wheel.py +0 -136
  309. data/assets/env/lib/python3.10/site-packages/pip/_internal/vcs/__init__.py +0 -15
  310. data/assets/env/lib/python3.10/site-packages/pip/_internal/vcs/__pycache__/__init__.cpython-310.pyc +0 -0
  311. data/assets/env/lib/python3.10/site-packages/pip/_internal/vcs/__pycache__/bazaar.cpython-310.pyc +0 -0
  312. data/assets/env/lib/python3.10/site-packages/pip/_internal/vcs/__pycache__/git.cpython-310.pyc +0 -0
  313. data/assets/env/lib/python3.10/site-packages/pip/_internal/vcs/__pycache__/mercurial.cpython-310.pyc +0 -0
  314. data/assets/env/lib/python3.10/site-packages/pip/_internal/vcs/__pycache__/subversion.cpython-310.pyc +0 -0
  315. data/assets/env/lib/python3.10/site-packages/pip/_internal/vcs/__pycache__/versioncontrol.cpython-310.pyc +0 -0
  316. data/assets/env/lib/python3.10/site-packages/pip/_internal/vcs/bazaar.py +0 -112
  317. data/assets/env/lib/python3.10/site-packages/pip/_internal/vcs/git.py +0 -526
  318. data/assets/env/lib/python3.10/site-packages/pip/_internal/vcs/mercurial.py +0 -163
  319. data/assets/env/lib/python3.10/site-packages/pip/_internal/vcs/subversion.py +0 -324
  320. data/assets/env/lib/python3.10/site-packages/pip/_internal/vcs/versioncontrol.py +0 -705
  321. data/assets/env/lib/python3.10/site-packages/pip/_internal/wheel_builder.py +0 -382
  322. data/assets/env/lib/python3.10/site-packages/pip/_vendor/__init__.py +0 -120
  323. data/assets/env/lib/python3.10/site-packages/pip/_vendor/__pycache__/__init__.cpython-310.pyc +0 -0
  324. data/assets/env/lib/python3.10/site-packages/pip/_vendor/__pycache__/six.cpython-310.pyc +0 -0
  325. data/assets/env/lib/python3.10/site-packages/pip/_vendor/__pycache__/typing_extensions.cpython-310.pyc +0 -0
  326. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/__init__.py +0 -18
  327. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/__pycache__/__init__.cpython-310.pyc +0 -0
  328. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/__pycache__/_cmd.cpython-310.pyc +0 -0
  329. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/__pycache__/adapter.cpython-310.pyc +0 -0
  330. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/__pycache__/cache.cpython-310.pyc +0 -0
  331. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/__pycache__/compat.cpython-310.pyc +0 -0
  332. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/__pycache__/controller.cpython-310.pyc +0 -0
  333. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-310.pyc +0 -0
  334. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/__pycache__/heuristics.cpython-310.pyc +0 -0
  335. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/__pycache__/serialize.cpython-310.pyc +0 -0
  336. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-310.pyc +0 -0
  337. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/_cmd.py +0 -61
  338. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/adapter.py +0 -137
  339. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/cache.py +0 -65
  340. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +0 -9
  341. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-310.pyc +0 -0
  342. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/file_cache.cpython-310.pyc +0 -0
  343. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-310.pyc +0 -0
  344. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +0 -188
  345. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +0 -39
  346. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/compat.py +0 -32
  347. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/controller.py +0 -439
  348. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/filewrapper.py +0 -111
  349. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/heuristics.py +0 -139
  350. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/serialize.py +0 -190
  351. data/assets/env/lib/python3.10/site-packages/pip/_vendor/cachecontrol/wrapper.py +0 -33
  352. data/assets/env/lib/python3.10/site-packages/pip/_vendor/certifi/__init__.py +0 -4
  353. data/assets/env/lib/python3.10/site-packages/pip/_vendor/certifi/__main__.py +0 -12
  354. data/assets/env/lib/python3.10/site-packages/pip/_vendor/certifi/__pycache__/__init__.cpython-310.pyc +0 -0
  355. data/assets/env/lib/python3.10/site-packages/pip/_vendor/certifi/__pycache__/__main__.cpython-310.pyc +0 -0
  356. data/assets/env/lib/python3.10/site-packages/pip/_vendor/certifi/__pycache__/core.cpython-310.pyc +0 -0
  357. data/assets/env/lib/python3.10/site-packages/pip/_vendor/certifi/cacert.pem +0 -4708
  358. data/assets/env/lib/python3.10/site-packages/pip/_vendor/certifi/core.py +0 -108
  359. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__init__.py +0 -93
  360. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/__init__.cpython-310.pyc +0 -0
  361. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/big5freq.cpython-310.pyc +0 -0
  362. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/big5prober.cpython-310.pyc +0 -0
  363. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/chardistribution.cpython-310.pyc +0 -0
  364. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/charsetgroupprober.cpython-310.pyc +0 -0
  365. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/charsetprober.cpython-310.pyc +0 -0
  366. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/codingstatemachine.cpython-310.pyc +0 -0
  367. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/cp949prober.cpython-310.pyc +0 -0
  368. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/enums.cpython-310.pyc +0 -0
  369. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/escprober.cpython-310.pyc +0 -0
  370. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/escsm.cpython-310.pyc +0 -0
  371. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/eucjpprober.cpython-310.pyc +0 -0
  372. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/euckrfreq.cpython-310.pyc +0 -0
  373. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/euckrprober.cpython-310.pyc +0 -0
  374. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/euctwfreq.cpython-310.pyc +0 -0
  375. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/euctwprober.cpython-310.pyc +0 -0
  376. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/gb2312freq.cpython-310.pyc +0 -0
  377. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/gb2312prober.cpython-310.pyc +0 -0
  378. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/hebrewprober.cpython-310.pyc +0 -0
  379. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/jisfreq.cpython-310.pyc +0 -0
  380. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/johabfreq.cpython-310.pyc +0 -0
  381. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/johabprober.cpython-310.pyc +0 -0
  382. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/jpcntx.cpython-310.pyc +0 -0
  383. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/langbulgarianmodel.cpython-310.pyc +0 -0
  384. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/langgreekmodel.cpython-310.pyc +0 -0
  385. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/langhebrewmodel.cpython-310.pyc +0 -0
  386. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/langhungarianmodel.cpython-310.pyc +0 -0
  387. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/langrussianmodel.cpython-310.pyc +0 -0
  388. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/langthaimodel.cpython-310.pyc +0 -0
  389. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/langturkishmodel.cpython-310.pyc +0 -0
  390. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/latin1prober.cpython-310.pyc +0 -0
  391. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/mbcharsetprober.cpython-310.pyc +0 -0
  392. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/mbcsgroupprober.cpython-310.pyc +0 -0
  393. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/mbcssm.cpython-310.pyc +0 -0
  394. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/sbcharsetprober.cpython-310.pyc +0 -0
  395. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/sbcsgroupprober.cpython-310.pyc +0 -0
  396. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/sjisprober.cpython-310.pyc +0 -0
  397. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/universaldetector.cpython-310.pyc +0 -0
  398. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/utf1632prober.cpython-310.pyc +0 -0
  399. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/utf8prober.cpython-310.pyc +0 -0
  400. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/__pycache__/version.cpython-310.pyc +0 -0
  401. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/big5freq.py +0 -386
  402. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/big5prober.py +0 -47
  403. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/chardistribution.py +0 -259
  404. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/charsetgroupprober.py +0 -109
  405. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/charsetprober.py +0 -138
  406. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/cli/__init__.py +0 -0
  407. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/cli/__pycache__/__init__.cpython-310.pyc +0 -0
  408. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/cli/__pycache__/chardetect.cpython-310.pyc +0 -0
  409. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/cli/chardetect.py +0 -86
  410. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/codingstatemachine.py +0 -88
  411. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/cp949prober.py +0 -49
  412. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/enums.py +0 -82
  413. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/escprober.py +0 -102
  414. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/escsm.py +0 -260
  415. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/eucjpprober.py +0 -95
  416. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/euckrfreq.py +0 -196
  417. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/euckrprober.py +0 -47
  418. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/euctwfreq.py +0 -388
  419. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/euctwprober.py +0 -47
  420. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/gb2312freq.py +0 -284
  421. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/gb2312prober.py +0 -47
  422. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/hebrewprober.py +0 -302
  423. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/jisfreq.py +0 -325
  424. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/johabfreq.py +0 -2382
  425. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/johabprober.py +0 -47
  426. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/jpcntx.py +0 -237
  427. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/langbulgarianmodel.py +0 -4649
  428. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/langgreekmodel.py +0 -4397
  429. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/langhebrewmodel.py +0 -4380
  430. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/langhungarianmodel.py +0 -4649
  431. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/langrussianmodel.py +0 -5725
  432. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/langthaimodel.py +0 -4380
  433. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/langturkishmodel.py +0 -4380
  434. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/latin1prober.py +0 -145
  435. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/mbcharsetprober.py +0 -95
  436. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/mbcsgroupprober.py +0 -56
  437. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/mbcssm.py +0 -660
  438. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/metadata/__init__.py +0 -0
  439. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/metadata/__pycache__/__init__.cpython-310.pyc +0 -0
  440. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/metadata/__pycache__/languages.cpython-310.pyc +0 -0
  441. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/metadata/languages.py +0 -351
  442. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/sbcharsetprober.py +0 -160
  443. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/sbcsgroupprober.py +0 -88
  444. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/sjisprober.py +0 -98
  445. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/universaldetector.py +0 -328
  446. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/utf1632prober.py +0 -223
  447. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/utf8prober.py +0 -80
  448. data/assets/env/lib/python3.10/site-packages/pip/_vendor/chardet/version.py +0 -9
  449. data/assets/env/lib/python3.10/site-packages/pip/_vendor/colorama/__init__.py +0 -6
  450. data/assets/env/lib/python3.10/site-packages/pip/_vendor/colorama/__pycache__/__init__.cpython-310.pyc +0 -0
  451. data/assets/env/lib/python3.10/site-packages/pip/_vendor/colorama/__pycache__/ansi.cpython-310.pyc +0 -0
  452. data/assets/env/lib/python3.10/site-packages/pip/_vendor/colorama/__pycache__/ansitowin32.cpython-310.pyc +0 -0
  453. data/assets/env/lib/python3.10/site-packages/pip/_vendor/colorama/__pycache__/initialise.cpython-310.pyc +0 -0
  454. data/assets/env/lib/python3.10/site-packages/pip/_vendor/colorama/__pycache__/win32.cpython-310.pyc +0 -0
  455. data/assets/env/lib/python3.10/site-packages/pip/_vendor/colorama/__pycache__/winterm.cpython-310.pyc +0 -0
  456. data/assets/env/lib/python3.10/site-packages/pip/_vendor/colorama/ansi.py +0 -102
  457. data/assets/env/lib/python3.10/site-packages/pip/_vendor/colorama/ansitowin32.py +0 -266
  458. data/assets/env/lib/python3.10/site-packages/pip/_vendor/colorama/initialise.py +0 -80
  459. data/assets/env/lib/python3.10/site-packages/pip/_vendor/colorama/win32.py +0 -152
  460. data/assets/env/lib/python3.10/site-packages/pip/_vendor/colorama/winterm.py +0 -169
  461. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__init__.py +0 -23
  462. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/__init__.cpython-310.pyc +0 -0
  463. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/compat.cpython-310.pyc +0 -0
  464. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/database.cpython-310.pyc +0 -0
  465. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/index.cpython-310.pyc +0 -0
  466. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/locators.cpython-310.pyc +0 -0
  467. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/manifest.cpython-310.pyc +0 -0
  468. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/markers.cpython-310.pyc +0 -0
  469. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/metadata.cpython-310.pyc +0 -0
  470. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/resources.cpython-310.pyc +0 -0
  471. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/scripts.cpython-310.pyc +0 -0
  472. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/util.cpython-310.pyc +0 -0
  473. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/version.cpython-310.pyc +0 -0
  474. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/__pycache__/wheel.cpython-310.pyc +0 -0
  475. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/compat.py +0 -1116
  476. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/database.py +0 -1350
  477. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/index.py +0 -508
  478. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/locators.py +0 -1300
  479. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/manifest.py +0 -393
  480. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/markers.py +0 -152
  481. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/metadata.py +0 -1076
  482. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/resources.py +0 -358
  483. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/scripts.py +0 -437
  484. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/t32.exe +0 -0
  485. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/t64-arm.exe +0 -0
  486. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/t64.exe +0 -0
  487. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/util.py +0 -1932
  488. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/version.py +0 -739
  489. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/w32.exe +0 -0
  490. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/w64-arm.exe +0 -0
  491. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/w64.exe +0 -0
  492. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distlib/wheel.py +0 -1082
  493. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distro/__init__.py +0 -54
  494. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distro/__main__.py +0 -4
  495. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distro/__pycache__/__init__.cpython-310.pyc +0 -0
  496. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distro/__pycache__/__main__.cpython-310.pyc +0 -0
  497. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distro/__pycache__/distro.cpython-310.pyc +0 -0
  498. data/assets/env/lib/python3.10/site-packages/pip/_vendor/distro/distro.py +0 -1374
  499. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/__init__.py +0 -44
  500. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/__pycache__/__init__.cpython-310.pyc +0 -0
  501. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/__pycache__/codec.cpython-310.pyc +0 -0
  502. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/__pycache__/compat.cpython-310.pyc +0 -0
  503. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/__pycache__/core.cpython-310.pyc +0 -0
  504. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/__pycache__/idnadata.cpython-310.pyc +0 -0
  505. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/__pycache__/intranges.cpython-310.pyc +0 -0
  506. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/__pycache__/package_data.cpython-310.pyc +0 -0
  507. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/__pycache__/uts46data.cpython-310.pyc +0 -0
  508. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/codec.py +0 -112
  509. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/compat.py +0 -13
  510. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/core.py +0 -400
  511. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/idnadata.py +0 -2151
  512. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/intranges.py +0 -54
  513. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/package_data.py +0 -2
  514. data/assets/env/lib/python3.10/site-packages/pip/_vendor/idna/uts46data.py +0 -8600
  515. data/assets/env/lib/python3.10/site-packages/pip/_vendor/msgpack/__init__.py +0 -57
  516. data/assets/env/lib/python3.10/site-packages/pip/_vendor/msgpack/__pycache__/__init__.cpython-310.pyc +0 -0
  517. data/assets/env/lib/python3.10/site-packages/pip/_vendor/msgpack/__pycache__/exceptions.cpython-310.pyc +0 -0
  518. data/assets/env/lib/python3.10/site-packages/pip/_vendor/msgpack/__pycache__/ext.cpython-310.pyc +0 -0
  519. data/assets/env/lib/python3.10/site-packages/pip/_vendor/msgpack/__pycache__/fallback.cpython-310.pyc +0 -0
  520. data/assets/env/lib/python3.10/site-packages/pip/_vendor/msgpack/exceptions.py +0 -48
  521. data/assets/env/lib/python3.10/site-packages/pip/_vendor/msgpack/ext.py +0 -193
  522. data/assets/env/lib/python3.10/site-packages/pip/_vendor/msgpack/fallback.py +0 -1010
  523. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__about__.py +0 -26
  524. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__init__.py +0 -25
  525. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__pycache__/__about__.cpython-310.pyc +0 -0
  526. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__pycache__/__init__.cpython-310.pyc +0 -0
  527. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__pycache__/_manylinux.cpython-310.pyc +0 -0
  528. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__pycache__/_musllinux.cpython-310.pyc +0 -0
  529. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__pycache__/_structures.cpython-310.pyc +0 -0
  530. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__pycache__/markers.cpython-310.pyc +0 -0
  531. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__pycache__/requirements.cpython-310.pyc +0 -0
  532. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__pycache__/specifiers.cpython-310.pyc +0 -0
  533. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__pycache__/tags.cpython-310.pyc +0 -0
  534. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__pycache__/utils.cpython-310.pyc +0 -0
  535. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/__pycache__/version.cpython-310.pyc +0 -0
  536. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/_manylinux.py +0 -301
  537. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/_musllinux.py +0 -136
  538. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/_structures.py +0 -61
  539. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/markers.py +0 -304
  540. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/requirements.py +0 -146
  541. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/specifiers.py +0 -802
  542. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/tags.py +0 -487
  543. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/utils.py +0 -136
  544. data/assets/env/lib/python3.10/site-packages/pip/_vendor/packaging/version.py +0 -504
  545. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/__init__.py +0 -6
  546. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/__pycache__/__init__.cpython-310.pyc +0 -0
  547. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/__pycache__/_compat.cpython-310.pyc +0 -0
  548. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/__pycache__/build.cpython-310.pyc +0 -0
  549. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/__pycache__/check.cpython-310.pyc +0 -0
  550. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/__pycache__/colorlog.cpython-310.pyc +0 -0
  551. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/__pycache__/dirtools.cpython-310.pyc +0 -0
  552. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/__pycache__/envbuild.cpython-310.pyc +0 -0
  553. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/__pycache__/meta.cpython-310.pyc +0 -0
  554. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/__pycache__/wrappers.cpython-310.pyc +0 -0
  555. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/_compat.py +0 -8
  556. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/build.py +0 -126
  557. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/check.py +0 -207
  558. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/colorlog.py +0 -113
  559. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/dirtools.py +0 -19
  560. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/envbuild.py +0 -170
  561. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/__init__.py +0 -26
  562. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/__pycache__/__init__.cpython-310.pyc +0 -0
  563. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/__pycache__/_in_process.cpython-310.pyc +0 -0
  564. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py +0 -351
  565. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/meta.py +0 -93
  566. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pep517/wrappers.py +0 -362
  567. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pkg_resources/__init__.py +0 -3296
  568. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pkg_resources/__pycache__/__init__.cpython-310.pyc +0 -0
  569. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pkg_resources/__pycache__/py31compat.cpython-310.pyc +0 -0
  570. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pkg_resources/py31compat.py +0 -23
  571. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/__init__.py +0 -340
  572. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/__main__.py +0 -46
  573. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/__pycache__/__init__.cpython-310.pyc +0 -0
  574. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/__pycache__/__main__.cpython-310.pyc +0 -0
  575. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/__pycache__/android.cpython-310.pyc +0 -0
  576. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/__pycache__/api.cpython-310.pyc +0 -0
  577. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/__pycache__/macos.cpython-310.pyc +0 -0
  578. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/__pycache__/unix.cpython-310.pyc +0 -0
  579. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/__pycache__/version.cpython-310.pyc +0 -0
  580. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/__pycache__/windows.cpython-310.pyc +0 -0
  581. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/android.py +0 -120
  582. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/api.py +0 -156
  583. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/macos.py +0 -64
  584. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/unix.py +0 -181
  585. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/version.py +0 -4
  586. data/assets/env/lib/python3.10/site-packages/pip/_vendor/platformdirs/windows.py +0 -182
  587. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__init__.py +0 -82
  588. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__main__.py +0 -17
  589. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/__init__.cpython-310.pyc +0 -0
  590. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/__main__.cpython-310.pyc +0 -0
  591. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/cmdline.cpython-310.pyc +0 -0
  592. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/console.cpython-310.pyc +0 -0
  593. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/filter.cpython-310.pyc +0 -0
  594. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/formatter.cpython-310.pyc +0 -0
  595. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/lexer.cpython-310.pyc +0 -0
  596. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/modeline.cpython-310.pyc +0 -0
  597. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/plugin.cpython-310.pyc +0 -0
  598. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/regexopt.cpython-310.pyc +0 -0
  599. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/scanner.cpython-310.pyc +0 -0
  600. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/sphinxext.cpython-310.pyc +0 -0
  601. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/style.cpython-310.pyc +0 -0
  602. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/token.cpython-310.pyc +0 -0
  603. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/unistring.cpython-310.pyc +0 -0
  604. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/__pycache__/util.cpython-310.pyc +0 -0
  605. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/cmdline.py +0 -668
  606. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/console.py +0 -70
  607. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/filter.py +0 -71
  608. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/filters/__init__.py +0 -940
  609. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/filters/__pycache__/__init__.cpython-310.pyc +0 -0
  610. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatter.py +0 -94
  611. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__init__.py +0 -143
  612. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/__init__.cpython-310.pyc +0 -0
  613. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/_mapping.cpython-310.pyc +0 -0
  614. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/bbcode.cpython-310.pyc +0 -0
  615. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/groff.cpython-310.pyc +0 -0
  616. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/html.cpython-310.pyc +0 -0
  617. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/img.cpython-310.pyc +0 -0
  618. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/irc.cpython-310.pyc +0 -0
  619. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/latex.cpython-310.pyc +0 -0
  620. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/other.cpython-310.pyc +0 -0
  621. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/pangomarkup.cpython-310.pyc +0 -0
  622. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/rtf.cpython-310.pyc +0 -0
  623. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/svg.cpython-310.pyc +0 -0
  624. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/terminal.cpython-310.pyc +0 -0
  625. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/__pycache__/terminal256.cpython-310.pyc +0 -0
  626. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/_mapping.py +0 -23
  627. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/bbcode.py +0 -108
  628. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/groff.py +0 -170
  629. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/html.py +0 -989
  630. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/img.py +0 -645
  631. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/irc.py +0 -179
  632. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/latex.py +0 -521
  633. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/other.py +0 -161
  634. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/pangomarkup.py +0 -83
  635. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/rtf.py +0 -146
  636. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/svg.py +0 -188
  637. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/terminal.py +0 -127
  638. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/formatters/terminal256.py +0 -338
  639. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/lexer.py +0 -882
  640. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/lexers/__init__.py +0 -335
  641. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/lexers/__pycache__/__init__.cpython-310.pyc +0 -0
  642. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/lexers/__pycache__/_mapping.cpython-310.pyc +0 -0
  643. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/lexers/__pycache__/python.cpython-310.pyc +0 -0
  644. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/lexers/_mapping.py +0 -541
  645. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/lexers/python.py +0 -1204
  646. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/modeline.py +0 -43
  647. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/plugin.py +0 -88
  648. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/regexopt.py +0 -91
  649. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/scanner.py +0 -104
  650. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/sphinxext.py +0 -155
  651. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/style.py +0 -197
  652. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/styles/__init__.py +0 -97
  653. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/styles/__pycache__/__init__.cpython-310.pyc +0 -0
  654. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/token.py +0 -213
  655. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/unistring.py +0 -153
  656. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pygments/util.py +0 -308
  657. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/__init__.py +0 -331
  658. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/__pycache__/__init__.cpython-310.pyc +0 -0
  659. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/__pycache__/actions.cpython-310.pyc +0 -0
  660. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/__pycache__/common.cpython-310.pyc +0 -0
  661. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/__pycache__/core.cpython-310.pyc +0 -0
  662. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/__pycache__/exceptions.cpython-310.pyc +0 -0
  663. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/__pycache__/helpers.cpython-310.pyc +0 -0
  664. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/__pycache__/results.cpython-310.pyc +0 -0
  665. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/__pycache__/testing.cpython-310.pyc +0 -0
  666. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/__pycache__/unicode.cpython-310.pyc +0 -0
  667. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/__pycache__/util.cpython-310.pyc +0 -0
  668. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/actions.py +0 -207
  669. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/common.py +0 -424
  670. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/core.py +0 -5814
  671. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/diagram/__init__.py +0 -642
  672. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/diagram/__pycache__/__init__.cpython-310.pyc +0 -0
  673. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/exceptions.py +0 -267
  674. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/helpers.py +0 -1088
  675. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/results.py +0 -760
  676. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/testing.py +0 -331
  677. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/unicode.py +0 -352
  678. data/assets/env/lib/python3.10/site-packages/pip/_vendor/pyparsing/util.py +0 -235
  679. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__init__.py +0 -182
  680. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/__init__.cpython-310.pyc +0 -0
  681. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/__version__.cpython-310.pyc +0 -0
  682. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/_internal_utils.cpython-310.pyc +0 -0
  683. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/adapters.cpython-310.pyc +0 -0
  684. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/api.cpython-310.pyc +0 -0
  685. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/auth.cpython-310.pyc +0 -0
  686. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/certs.cpython-310.pyc +0 -0
  687. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/compat.cpython-310.pyc +0 -0
  688. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/cookies.cpython-310.pyc +0 -0
  689. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/exceptions.cpython-310.pyc +0 -0
  690. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/help.cpython-310.pyc +0 -0
  691. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/hooks.cpython-310.pyc +0 -0
  692. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/models.cpython-310.pyc +0 -0
  693. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/packages.cpython-310.pyc +0 -0
  694. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/sessions.cpython-310.pyc +0 -0
  695. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/status_codes.cpython-310.pyc +0 -0
  696. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/structures.cpython-310.pyc +0 -0
  697. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__pycache__/utils.cpython-310.pyc +0 -0
  698. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/__version__.py +0 -14
  699. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/_internal_utils.py +0 -48
  700. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/adapters.py +0 -584
  701. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/api.py +0 -157
  702. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/auth.py +0 -315
  703. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/certs.py +0 -24
  704. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/compat.py +0 -67
  705. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/cookies.py +0 -561
  706. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/exceptions.py +0 -141
  707. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/help.py +0 -131
  708. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/hooks.py +0 -33
  709. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/models.py +0 -1034
  710. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/packages.py +0 -16
  711. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/sessions.py +0 -831
  712. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/status_codes.py +0 -128
  713. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/structures.py +0 -99
  714. data/assets/env/lib/python3.10/site-packages/pip/_vendor/requests/utils.py +0 -1086
  715. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/__init__.py +0 -26
  716. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/__pycache__/__init__.cpython-310.pyc +0 -0
  717. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/__pycache__/providers.cpython-310.pyc +0 -0
  718. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/__pycache__/reporters.cpython-310.pyc +0 -0
  719. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/__pycache__/resolvers.cpython-310.pyc +0 -0
  720. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/__pycache__/structs.cpython-310.pyc +0 -0
  721. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/compat/__init__.py +0 -0
  722. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/compat/__pycache__/__init__.cpython-310.pyc +0 -0
  723. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/compat/__pycache__/collections_abc.cpython-310.pyc +0 -0
  724. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/compat/collections_abc.py +0 -6
  725. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/providers.py +0 -133
  726. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/reporters.py +0 -43
  727. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/resolvers.py +0 -482
  728. data/assets/env/lib/python3.10/site-packages/pip/_vendor/resolvelib/structs.py +0 -165
  729. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__init__.py +0 -176
  730. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__main__.py +0 -282
  731. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/__init__.cpython-310.pyc +0 -0
  732. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/__main__.cpython-310.pyc +0 -0
  733. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_cell_widths.cpython-310.pyc +0 -0
  734. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_emoji_codes.cpython-310.pyc +0 -0
  735. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_emoji_replace.cpython-310.pyc +0 -0
  736. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_export_format.cpython-310.pyc +0 -0
  737. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_extension.cpython-310.pyc +0 -0
  738. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_inspect.cpython-310.pyc +0 -0
  739. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_log_render.cpython-310.pyc +0 -0
  740. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_loop.cpython-310.pyc +0 -0
  741. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_palettes.cpython-310.pyc +0 -0
  742. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_pick.cpython-310.pyc +0 -0
  743. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_ratio.cpython-310.pyc +0 -0
  744. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_spinners.cpython-310.pyc +0 -0
  745. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_stack.cpython-310.pyc +0 -0
  746. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_timer.cpython-310.pyc +0 -0
  747. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_win32_console.cpython-310.pyc +0 -0
  748. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_windows.cpython-310.pyc +0 -0
  749. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_windows_renderer.cpython-310.pyc +0 -0
  750. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/_wrap.cpython-310.pyc +0 -0
  751. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/abc.cpython-310.pyc +0 -0
  752. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/align.cpython-310.pyc +0 -0
  753. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/ansi.cpython-310.pyc +0 -0
  754. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/bar.cpython-310.pyc +0 -0
  755. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/box.cpython-310.pyc +0 -0
  756. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/cells.cpython-310.pyc +0 -0
  757. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/color.cpython-310.pyc +0 -0
  758. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/color_triplet.cpython-310.pyc +0 -0
  759. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/columns.cpython-310.pyc +0 -0
  760. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/console.cpython-310.pyc +0 -0
  761. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/constrain.cpython-310.pyc +0 -0
  762. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/containers.cpython-310.pyc +0 -0
  763. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/control.cpython-310.pyc +0 -0
  764. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/default_styles.cpython-310.pyc +0 -0
  765. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/diagnose.cpython-310.pyc +0 -0
  766. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/emoji.cpython-310.pyc +0 -0
  767. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/errors.cpython-310.pyc +0 -0
  768. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/file_proxy.cpython-310.pyc +0 -0
  769. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/filesize.cpython-310.pyc +0 -0
  770. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/highlighter.cpython-310.pyc +0 -0
  771. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/json.cpython-310.pyc +0 -0
  772. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/jupyter.cpython-310.pyc +0 -0
  773. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/layout.cpython-310.pyc +0 -0
  774. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/live.cpython-310.pyc +0 -0
  775. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/live_render.cpython-310.pyc +0 -0
  776. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/logging.cpython-310.pyc +0 -0
  777. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/markup.cpython-310.pyc +0 -0
  778. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/measure.cpython-310.pyc +0 -0
  779. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/padding.cpython-310.pyc +0 -0
  780. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/pager.cpython-310.pyc +0 -0
  781. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/palette.cpython-310.pyc +0 -0
  782. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/panel.cpython-310.pyc +0 -0
  783. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/pretty.cpython-310.pyc +0 -0
  784. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/progress.cpython-310.pyc +0 -0
  785. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/progress_bar.cpython-310.pyc +0 -0
  786. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/prompt.cpython-310.pyc +0 -0
  787. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/protocol.cpython-310.pyc +0 -0
  788. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/region.cpython-310.pyc +0 -0
  789. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/repr.cpython-310.pyc +0 -0
  790. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/rule.cpython-310.pyc +0 -0
  791. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/scope.cpython-310.pyc +0 -0
  792. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/screen.cpython-310.pyc +0 -0
  793. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/segment.cpython-310.pyc +0 -0
  794. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/spinner.cpython-310.pyc +0 -0
  795. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/status.cpython-310.pyc +0 -0
  796. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/style.cpython-310.pyc +0 -0
  797. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/styled.cpython-310.pyc +0 -0
  798. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/syntax.cpython-310.pyc +0 -0
  799. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/table.cpython-310.pyc +0 -0
  800. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/terminal_theme.cpython-310.pyc +0 -0
  801. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/text.cpython-310.pyc +0 -0
  802. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/theme.cpython-310.pyc +0 -0
  803. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/themes.cpython-310.pyc +0 -0
  804. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/traceback.cpython-310.pyc +0 -0
  805. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/__pycache__/tree.cpython-310.pyc +0 -0
  806. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_cell_widths.py +0 -451
  807. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_emoji_codes.py +0 -3610
  808. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_emoji_replace.py +0 -32
  809. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_export_format.py +0 -78
  810. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_extension.py +0 -10
  811. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_inspect.py +0 -270
  812. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_log_render.py +0 -94
  813. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_loop.py +0 -43
  814. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_palettes.py +0 -309
  815. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_pick.py +0 -17
  816. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_ratio.py +0 -160
  817. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_spinners.py +0 -482
  818. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_stack.py +0 -16
  819. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_timer.py +0 -19
  820. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_win32_console.py +0 -662
  821. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_windows.py +0 -72
  822. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_windows_renderer.py +0 -56
  823. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/_wrap.py +0 -56
  824. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/abc.py +0 -33
  825. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/align.py +0 -311
  826. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/ansi.py +0 -237
  827. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/bar.py +0 -94
  828. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/box.py +0 -517
  829. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/cells.py +0 -154
  830. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/color.py +0 -615
  831. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/color_triplet.py +0 -38
  832. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/columns.py +0 -187
  833. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/console.py +0 -2572
  834. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/constrain.py +0 -37
  835. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/containers.py +0 -167
  836. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/control.py +0 -225
  837. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/default_styles.py +0 -188
  838. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/diagnose.py +0 -37
  839. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/emoji.py +0 -96
  840. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/errors.py +0 -34
  841. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/file_proxy.py +0 -54
  842. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/filesize.py +0 -89
  843. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/highlighter.py +0 -232
  844. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/json.py +0 -140
  845. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/jupyter.py +0 -101
  846. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/layout.py +0 -445
  847. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/live.py +0 -373
  848. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/live_render.py +0 -113
  849. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/logging.py +0 -280
  850. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/markup.py +0 -246
  851. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/measure.py +0 -151
  852. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/padding.py +0 -141
  853. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/pager.py +0 -34
  854. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/palette.py +0 -100
  855. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/panel.py +0 -251
  856. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/pretty.py +0 -1010
  857. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/progress.py +0 -1703
  858. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/progress_bar.py +0 -224
  859. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/prompt.py +0 -376
  860. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/protocol.py +0 -42
  861. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/region.py +0 -10
  862. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/repr.py +0 -152
  863. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/rule.py +0 -134
  864. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/scope.py +0 -86
  865. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/screen.py +0 -54
  866. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/segment.py +0 -739
  867. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/spinner.py +0 -136
  868. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/status.py +0 -132
  869. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/style.py +0 -771
  870. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/styled.py +0 -42
  871. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/syntax.py +0 -934
  872. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/table.py +0 -996
  873. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/terminal_theme.py +0 -153
  874. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/text.py +0 -1286
  875. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/theme.py +0 -112
  876. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/themes.py +0 -5
  877. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/traceback.py +0 -679
  878. data/assets/env/lib/python3.10/site-packages/pip/_vendor/rich/tree.py +0 -251
  879. data/assets/env/lib/python3.10/site-packages/pip/_vendor/six.py +0 -998
  880. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/__init__.py +0 -519
  881. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/__pycache__/__init__.cpython-310.pyc +0 -0
  882. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/__pycache__/_asyncio.cpython-310.pyc +0 -0
  883. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/__pycache__/_utils.cpython-310.pyc +0 -0
  884. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/__pycache__/after.cpython-310.pyc +0 -0
  885. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/__pycache__/before.cpython-310.pyc +0 -0
  886. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/__pycache__/before_sleep.cpython-310.pyc +0 -0
  887. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/__pycache__/nap.cpython-310.pyc +0 -0
  888. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/__pycache__/retry.cpython-310.pyc +0 -0
  889. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/__pycache__/stop.cpython-310.pyc +0 -0
  890. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/__pycache__/tornadoweb.cpython-310.pyc +0 -0
  891. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/__pycache__/wait.cpython-310.pyc +0 -0
  892. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/_asyncio.py +0 -92
  893. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/_utils.py +0 -68
  894. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/after.py +0 -46
  895. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/before.py +0 -41
  896. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/before_sleep.py +0 -58
  897. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/nap.py +0 -43
  898. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/retry.py +0 -240
  899. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/stop.py +0 -96
  900. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/tornadoweb.py +0 -59
  901. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tenacity/wait.py +0 -232
  902. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tomli/__init__.py +0 -11
  903. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tomli/__pycache__/__init__.cpython-310.pyc +0 -0
  904. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tomli/__pycache__/_parser.cpython-310.pyc +0 -0
  905. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tomli/__pycache__/_re.cpython-310.pyc +0 -0
  906. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tomli/__pycache__/_types.cpython-310.pyc +0 -0
  907. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tomli/_parser.py +0 -691
  908. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tomli/_re.py +0 -107
  909. data/assets/env/lib/python3.10/site-packages/pip/_vendor/tomli/_types.py +0 -10
  910. data/assets/env/lib/python3.10/site-packages/pip/_vendor/typing_extensions.py +0 -2209
  911. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/__init__.py +0 -102
  912. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/__pycache__/__init__.cpython-310.pyc +0 -0
  913. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/__pycache__/_collections.cpython-310.pyc +0 -0
  914. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/__pycache__/_version.cpython-310.pyc +0 -0
  915. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/__pycache__/connection.cpython-310.pyc +0 -0
  916. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/__pycache__/connectionpool.cpython-310.pyc +0 -0
  917. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/__pycache__/exceptions.cpython-310.pyc +0 -0
  918. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/__pycache__/fields.cpython-310.pyc +0 -0
  919. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/__pycache__/filepost.cpython-310.pyc +0 -0
  920. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/__pycache__/poolmanager.cpython-310.pyc +0 -0
  921. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/__pycache__/request.cpython-310.pyc +0 -0
  922. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/__pycache__/response.cpython-310.pyc +0 -0
  923. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/_collections.py +0 -337
  924. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/_version.py +0 -2
  925. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/connection.py +0 -567
  926. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/connectionpool.py +0 -1110
  927. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
  928. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/__pycache__/__init__.cpython-310.pyc +0 -0
  929. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/__pycache__/_appengine_environ.cpython-310.pyc +0 -0
  930. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/__pycache__/appengine.cpython-310.pyc +0 -0
  931. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/__pycache__/ntlmpool.cpython-310.pyc +0 -0
  932. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/__pycache__/pyopenssl.cpython-310.pyc +0 -0
  933. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/__pycache__/securetransport.cpython-310.pyc +0 -0
  934. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/__pycache__/socks.cpython-310.pyc +0 -0
  935. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +0 -36
  936. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
  937. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/__init__.cpython-310.pyc +0 -0
  938. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/bindings.cpython-310.pyc +0 -0
  939. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/low_level.cpython-310.pyc +0 -0
  940. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +0 -519
  941. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +0 -397
  942. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/appengine.py +0 -314
  943. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +0 -130
  944. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +0 -519
  945. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +0 -921
  946. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/contrib/socks.py +0 -216
  947. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/exceptions.py +0 -323
  948. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/fields.py +0 -274
  949. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/filepost.py +0 -98
  950. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/packages/__init__.py +0 -0
  951. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/packages/__pycache__/__init__.cpython-310.pyc +0 -0
  952. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/packages/__pycache__/six.cpython-310.pyc +0 -0
  953. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
  954. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/__init__.cpython-310.pyc +0 -0
  955. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/makefile.cpython-310.pyc +0 -0
  956. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +0 -51
  957. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/packages/six.py +0 -1076
  958. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/poolmanager.py +0 -537
  959. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/request.py +0 -170
  960. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/response.py +0 -866
  961. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__init__.py +0 -49
  962. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/__init__.cpython-310.pyc +0 -0
  963. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/connection.cpython-310.pyc +0 -0
  964. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/proxy.cpython-310.pyc +0 -0
  965. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/queue.cpython-310.pyc +0 -0
  966. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/request.cpython-310.pyc +0 -0
  967. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/response.cpython-310.pyc +0 -0
  968. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/retry.cpython-310.pyc +0 -0
  969. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_.cpython-310.pyc +0 -0
  970. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_match_hostname.cpython-310.pyc +0 -0
  971. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/ssltransport.cpython-310.pyc +0 -0
  972. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/timeout.cpython-310.pyc +0 -0
  973. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/url.cpython-310.pyc +0 -0
  974. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/__pycache__/wait.cpython-310.pyc +0 -0
  975. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/connection.py +0 -149
  976. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/proxy.py +0 -57
  977. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/queue.py +0 -22
  978. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/request.py +0 -137
  979. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/response.py +0 -107
  980. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/retry.py +0 -620
  981. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/ssl_.py +0 -495
  982. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +0 -159
  983. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/ssltransport.py +0 -221
  984. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/timeout.py +0 -268
  985. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/url.py +0 -435
  986. data/assets/env/lib/python3.10/site-packages/pip/_vendor/urllib3/util/wait.py +0 -152
  987. data/assets/env/lib/python3.10/site-packages/pip/_vendor/vendor.txt +0 -23
  988. data/assets/env/lib/python3.10/site-packages/pip/_vendor/webencodings/__init__.py +0 -342
  989. data/assets/env/lib/python3.10/site-packages/pip/_vendor/webencodings/__pycache__/__init__.cpython-310.pyc +0 -0
  990. data/assets/env/lib/python3.10/site-packages/pip/_vendor/webencodings/__pycache__/labels.cpython-310.pyc +0 -0
  991. data/assets/env/lib/python3.10/site-packages/pip/_vendor/webencodings/__pycache__/mklabels.cpython-310.pyc +0 -0
  992. data/assets/env/lib/python3.10/site-packages/pip/_vendor/webencodings/__pycache__/tests.cpython-310.pyc +0 -0
  993. data/assets/env/lib/python3.10/site-packages/pip/_vendor/webencodings/__pycache__/x_user_defined.cpython-310.pyc +0 -0
  994. data/assets/env/lib/python3.10/site-packages/pip/_vendor/webencodings/labels.py +0 -231
  995. data/assets/env/lib/python3.10/site-packages/pip/_vendor/webencodings/mklabels.py +0 -59
  996. data/assets/env/lib/python3.10/site-packages/pip/_vendor/webencodings/tests.py +0 -153
  997. data/assets/env/lib/python3.10/site-packages/pip/_vendor/webencodings/x_user_defined.py +0 -325
  998. data/assets/env/lib/python3.10/site-packages/pip/py.typed +0 -4
  999. data/assets/env/lib/python3.10/site-packages/pip-22.3.1.dist-info/INSTALLER +0 -1
  1000. data/assets/env/lib/python3.10/site-packages/pip-22.3.1.dist-info/LICENSE.txt +0 -20
  1001. data/assets/env/lib/python3.10/site-packages/pip-22.3.1.dist-info/METADATA +0 -88
  1002. data/assets/env/lib/python3.10/site-packages/pip-22.3.1.dist-info/RECORD +0 -992
  1003. data/assets/env/lib/python3.10/site-packages/pip-22.3.1.dist-info/REQUESTED +0 -0
  1004. data/assets/env/lib/python3.10/site-packages/pip-22.3.1.dist-info/WHEEL +0 -5
  1005. data/assets/env/lib/python3.10/site-packages/pip-22.3.1.dist-info/entry_points.txt +0 -4
  1006. data/assets/env/lib/python3.10/site-packages/pip-22.3.1.dist-info/top_level.txt +0 -1
  1007. data/assets/env/lib/python3.10/site-packages/pkg_resources/__init__.py +0 -3296
  1008. data/assets/env/lib/python3.10/site-packages/pkg_resources/__pycache__/__init__.cpython-310.pyc +0 -0
  1009. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/__init__.py +0 -0
  1010. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/__pycache__/__init__.cpython-310.pyc +0 -0
  1011. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/__pycache__/appdirs.cpython-310.pyc +0 -0
  1012. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/__pycache__/zipp.cpython-310.pyc +0 -0
  1013. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/appdirs.py +0 -608
  1014. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/__init__.py +0 -36
  1015. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/__pycache__/__init__.cpython-310.pyc +0 -0
  1016. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/__pycache__/_adapters.cpython-310.pyc +0 -0
  1017. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/__pycache__/_common.cpython-310.pyc +0 -0
  1018. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/__pycache__/_compat.cpython-310.pyc +0 -0
  1019. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/__pycache__/_itertools.cpython-310.pyc +0 -0
  1020. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/__pycache__/_legacy.cpython-310.pyc +0 -0
  1021. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/__pycache__/abc.cpython-310.pyc +0 -0
  1022. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/__pycache__/readers.cpython-310.pyc +0 -0
  1023. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/__pycache__/simple.cpython-310.pyc +0 -0
  1024. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/_adapters.py +0 -170
  1025. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/_common.py +0 -104
  1026. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/_compat.py +0 -98
  1027. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/_itertools.py +0 -35
  1028. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/_legacy.py +0 -121
  1029. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/abc.py +0 -137
  1030. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/readers.py +0 -122
  1031. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/importlib_resources/simple.py +0 -116
  1032. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/jaraco/__init__.py +0 -0
  1033. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/jaraco/__pycache__/__init__.cpython-310.pyc +0 -0
  1034. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/jaraco/__pycache__/context.cpython-310.pyc +0 -0
  1035. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/jaraco/__pycache__/functools.cpython-310.pyc +0 -0
  1036. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/jaraco/context.py +0 -213
  1037. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/jaraco/functools.py +0 -525
  1038. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/jaraco/text/__init__.py +0 -599
  1039. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/jaraco/text/__pycache__/__init__.cpython-310.pyc +0 -0
  1040. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/more_itertools/__init__.py +0 -4
  1041. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/more_itertools/__pycache__/__init__.cpython-310.pyc +0 -0
  1042. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/more_itertools/__pycache__/more.cpython-310.pyc +0 -0
  1043. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/more_itertools/__pycache__/recipes.cpython-310.pyc +0 -0
  1044. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/more_itertools/more.py +0 -4316
  1045. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/more_itertools/recipes.py +0 -698
  1046. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__about__.py +0 -26
  1047. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__init__.py +0 -25
  1048. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__pycache__/__about__.cpython-310.pyc +0 -0
  1049. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__pycache__/__init__.cpython-310.pyc +0 -0
  1050. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__pycache__/_manylinux.cpython-310.pyc +0 -0
  1051. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__pycache__/_musllinux.cpython-310.pyc +0 -0
  1052. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__pycache__/_structures.cpython-310.pyc +0 -0
  1053. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__pycache__/markers.cpython-310.pyc +0 -0
  1054. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__pycache__/requirements.cpython-310.pyc +0 -0
  1055. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__pycache__/specifiers.cpython-310.pyc +0 -0
  1056. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__pycache__/tags.cpython-310.pyc +0 -0
  1057. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__pycache__/utils.cpython-310.pyc +0 -0
  1058. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/__pycache__/version.cpython-310.pyc +0 -0
  1059. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/_manylinux.py +0 -301
  1060. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/_musllinux.py +0 -136
  1061. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/_structures.py +0 -61
  1062. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/markers.py +0 -304
  1063. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/requirements.py +0 -146
  1064. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/specifiers.py +0 -802
  1065. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/tags.py +0 -487
  1066. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/utils.py +0 -136
  1067. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/packaging/version.py +0 -504
  1068. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/__init__.py +0 -331
  1069. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/__pycache__/__init__.cpython-310.pyc +0 -0
  1070. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/__pycache__/actions.cpython-310.pyc +0 -0
  1071. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/__pycache__/common.cpython-310.pyc +0 -0
  1072. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/__pycache__/core.cpython-310.pyc +0 -0
  1073. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/__pycache__/exceptions.cpython-310.pyc +0 -0
  1074. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/__pycache__/helpers.cpython-310.pyc +0 -0
  1075. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/__pycache__/results.cpython-310.pyc +0 -0
  1076. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/__pycache__/testing.cpython-310.pyc +0 -0
  1077. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/__pycache__/unicode.cpython-310.pyc +0 -0
  1078. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/__pycache__/util.cpython-310.pyc +0 -0
  1079. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/actions.py +0 -207
  1080. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/common.py +0 -424
  1081. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/core.py +0 -5814
  1082. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/diagram/__init__.py +0 -642
  1083. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/diagram/__pycache__/__init__.cpython-310.pyc +0 -0
  1084. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/exceptions.py +0 -267
  1085. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/helpers.py +0 -1088
  1086. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/results.py +0 -760
  1087. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/testing.py +0 -331
  1088. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/unicode.py +0 -352
  1089. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/pyparsing/util.py +0 -235
  1090. data/assets/env/lib/python3.10/site-packages/pkg_resources/_vendor/zipp.py +0 -329
  1091. data/assets/env/lib/python3.10/site-packages/pkg_resources/extern/__init__.py +0 -76
  1092. data/assets/env/lib/python3.10/site-packages/pkg_resources/extern/__pycache__/__init__.cpython-310.pyc +0 -0
  1093. data/assets/env/lib/python3.10/site-packages/setuptools/__init__.py +0 -247
  1094. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/__init__.cpython-310.pyc +0 -0
  1095. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/_deprecation_warning.cpython-310.pyc +0 -0
  1096. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/_entry_points.cpython-310.pyc +0 -0
  1097. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/_imp.cpython-310.pyc +0 -0
  1098. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/_importlib.cpython-310.pyc +0 -0
  1099. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/_itertools.cpython-310.pyc +0 -0
  1100. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/_path.cpython-310.pyc +0 -0
  1101. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/_reqs.cpython-310.pyc +0 -0
  1102. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/archive_util.cpython-310.pyc +0 -0
  1103. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/build_meta.cpython-310.pyc +0 -0
  1104. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/dep_util.cpython-310.pyc +0 -0
  1105. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/depends.cpython-310.pyc +0 -0
  1106. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/discovery.cpython-310.pyc +0 -0
  1107. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/dist.cpython-310.pyc +0 -0
  1108. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/errors.cpython-310.pyc +0 -0
  1109. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/extension.cpython-310.pyc +0 -0
  1110. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/glob.cpython-310.pyc +0 -0
  1111. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/installer.cpython-310.pyc +0 -0
  1112. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/launch.cpython-310.pyc +0 -0
  1113. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/logging.cpython-310.pyc +0 -0
  1114. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/monkey.cpython-310.pyc +0 -0
  1115. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/msvc.cpython-310.pyc +0 -0
  1116. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/namespaces.cpython-310.pyc +0 -0
  1117. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/package_index.cpython-310.pyc +0 -0
  1118. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/py34compat.cpython-310.pyc +0 -0
  1119. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/sandbox.cpython-310.pyc +0 -0
  1120. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/unicode_utils.cpython-310.pyc +0 -0
  1121. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/version.cpython-310.pyc +0 -0
  1122. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/wheel.cpython-310.pyc +0 -0
  1123. data/assets/env/lib/python3.10/site-packages/setuptools/__pycache__/windows_support.cpython-310.pyc +0 -0
  1124. data/assets/env/lib/python3.10/site-packages/setuptools/_deprecation_warning.py +0 -7
  1125. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__init__.py +0 -24
  1126. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/__init__.cpython-310.pyc +0 -0
  1127. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/_collections.cpython-310.pyc +0 -0
  1128. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/_functools.cpython-310.pyc +0 -0
  1129. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/_macos_compat.cpython-310.pyc +0 -0
  1130. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/_msvccompiler.cpython-310.pyc +0 -0
  1131. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/archive_util.cpython-310.pyc +0 -0
  1132. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/bcppcompiler.cpython-310.pyc +0 -0
  1133. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/ccompiler.cpython-310.pyc +0 -0
  1134. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/cmd.cpython-310.pyc +0 -0
  1135. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/config.cpython-310.pyc +0 -0
  1136. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/core.cpython-310.pyc +0 -0
  1137. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/cygwinccompiler.cpython-310.pyc +0 -0
  1138. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/debug.cpython-310.pyc +0 -0
  1139. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/dep_util.cpython-310.pyc +0 -0
  1140. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/dir_util.cpython-310.pyc +0 -0
  1141. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/dist.cpython-310.pyc +0 -0
  1142. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/errors.cpython-310.pyc +0 -0
  1143. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/extension.cpython-310.pyc +0 -0
  1144. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/fancy_getopt.cpython-310.pyc +0 -0
  1145. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/file_util.cpython-310.pyc +0 -0
  1146. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/filelist.cpython-310.pyc +0 -0
  1147. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/log.cpython-310.pyc +0 -0
  1148. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/msvc9compiler.cpython-310.pyc +0 -0
  1149. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/msvccompiler.cpython-310.pyc +0 -0
  1150. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/py38compat.cpython-310.pyc +0 -0
  1151. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/py39compat.cpython-310.pyc +0 -0
  1152. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/spawn.cpython-310.pyc +0 -0
  1153. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/sysconfig.cpython-310.pyc +0 -0
  1154. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/text_file.cpython-310.pyc +0 -0
  1155. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/unixccompiler.cpython-310.pyc +0 -0
  1156. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/util.cpython-310.pyc +0 -0
  1157. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/version.cpython-310.pyc +0 -0
  1158. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/__pycache__/versionpredicate.cpython-310.pyc +0 -0
  1159. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/_collections.py +0 -56
  1160. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/_functools.py +0 -20
  1161. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/_macos_compat.py +0 -12
  1162. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/_msvccompiler.py +0 -572
  1163. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/archive_util.py +0 -280
  1164. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/bcppcompiler.py +0 -408
  1165. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/ccompiler.py +0 -1220
  1166. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/cmd.py +0 -436
  1167. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__init__.py +0 -25
  1168. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/__init__.cpython-310.pyc +0 -0
  1169. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/_framework_compat.cpython-310.pyc +0 -0
  1170. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/bdist.cpython-310.pyc +0 -0
  1171. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/bdist_dumb.cpython-310.pyc +0 -0
  1172. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/bdist_rpm.cpython-310.pyc +0 -0
  1173. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/build.cpython-310.pyc +0 -0
  1174. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/build_clib.cpython-310.pyc +0 -0
  1175. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/build_ext.cpython-310.pyc +0 -0
  1176. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/build_py.cpython-310.pyc +0 -0
  1177. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/build_scripts.cpython-310.pyc +0 -0
  1178. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/check.cpython-310.pyc +0 -0
  1179. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/clean.cpython-310.pyc +0 -0
  1180. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/config.cpython-310.pyc +0 -0
  1181. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/install.cpython-310.pyc +0 -0
  1182. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/install_data.cpython-310.pyc +0 -0
  1183. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/install_egg_info.cpython-310.pyc +0 -0
  1184. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/install_headers.cpython-310.pyc +0 -0
  1185. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/install_lib.cpython-310.pyc +0 -0
  1186. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/install_scripts.cpython-310.pyc +0 -0
  1187. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/py37compat.cpython-310.pyc +0 -0
  1188. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/register.cpython-310.pyc +0 -0
  1189. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/sdist.cpython-310.pyc +0 -0
  1190. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/__pycache__/upload.cpython-310.pyc +0 -0
  1191. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/_framework_compat.py +0 -55
  1192. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/bdist.py +0 -157
  1193. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/bdist_dumb.py +0 -144
  1194. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/bdist_rpm.py +0 -615
  1195. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/build.py +0 -153
  1196. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/build_clib.py +0 -208
  1197. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/build_ext.py +0 -787
  1198. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/build_py.py +0 -407
  1199. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/build_scripts.py +0 -173
  1200. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/check.py +0 -151
  1201. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/clean.py +0 -76
  1202. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/config.py +0 -377
  1203. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/install.py +0 -814
  1204. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/install_data.py +0 -84
  1205. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/install_egg_info.py +0 -91
  1206. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/install_headers.py +0 -45
  1207. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/install_lib.py +0 -238
  1208. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/install_scripts.py +0 -61
  1209. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/py37compat.py +0 -31
  1210. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/register.py +0 -319
  1211. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/sdist.py +0 -531
  1212. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/command/upload.py +0 -205
  1213. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/config.py +0 -139
  1214. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/core.py +0 -291
  1215. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/cygwinccompiler.py +0 -364
  1216. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/debug.py +0 -5
  1217. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/dep_util.py +0 -96
  1218. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/dir_util.py +0 -243
  1219. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/dist.py +0 -1286
  1220. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/errors.py +0 -127
  1221. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/extension.py +0 -248
  1222. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/fancy_getopt.py +0 -470
  1223. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/file_util.py +0 -249
  1224. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/filelist.py +0 -371
  1225. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/log.py +0 -80
  1226. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/msvc9compiler.py +0 -832
  1227. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/msvccompiler.py +0 -695
  1228. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/py38compat.py +0 -8
  1229. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/py39compat.py +0 -22
  1230. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/spawn.py +0 -109
  1231. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/sysconfig.py +0 -558
  1232. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/text_file.py +0 -287
  1233. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/unixccompiler.py +0 -401
  1234. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/util.py +0 -513
  1235. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/version.py +0 -358
  1236. data/assets/env/lib/python3.10/site-packages/setuptools/_distutils/versionpredicate.py +0 -175
  1237. data/assets/env/lib/python3.10/site-packages/setuptools/_entry_points.py +0 -86
  1238. data/assets/env/lib/python3.10/site-packages/setuptools/_imp.py +0 -82
  1239. data/assets/env/lib/python3.10/site-packages/setuptools/_importlib.py +0 -47
  1240. data/assets/env/lib/python3.10/site-packages/setuptools/_itertools.py +0 -23
  1241. data/assets/env/lib/python3.10/site-packages/setuptools/_path.py +0 -29
  1242. data/assets/env/lib/python3.10/site-packages/setuptools/_reqs.py +0 -19
  1243. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/__init__.py +0 -0
  1244. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/__pycache__/__init__.cpython-310.pyc +0 -0
  1245. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/__pycache__/ordered_set.cpython-310.pyc +0 -0
  1246. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/__pycache__/typing_extensions.cpython-310.pyc +0 -0
  1247. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/__pycache__/zipp.cpython-310.pyc +0 -0
  1248. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/__init__.py +0 -1047
  1249. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/__init__.cpython-310.pyc +0 -0
  1250. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_adapters.cpython-310.pyc +0 -0
  1251. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_collections.cpython-310.pyc +0 -0
  1252. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_compat.cpython-310.pyc +0 -0
  1253. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_functools.cpython-310.pyc +0 -0
  1254. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_itertools.cpython-310.pyc +0 -0
  1255. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_meta.cpython-310.pyc +0 -0
  1256. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_text.cpython-310.pyc +0 -0
  1257. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/_adapters.py +0 -68
  1258. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/_collections.py +0 -30
  1259. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/_compat.py +0 -71
  1260. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/_functools.py +0 -104
  1261. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/_itertools.py +0 -73
  1262. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/_meta.py +0 -48
  1263. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_metadata/_text.py +0 -99
  1264. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/__init__.py +0 -36
  1265. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/__pycache__/__init__.cpython-310.pyc +0 -0
  1266. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/__pycache__/_adapters.cpython-310.pyc +0 -0
  1267. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/__pycache__/_common.cpython-310.pyc +0 -0
  1268. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/__pycache__/_compat.cpython-310.pyc +0 -0
  1269. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/__pycache__/_itertools.cpython-310.pyc +0 -0
  1270. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/__pycache__/_legacy.cpython-310.pyc +0 -0
  1271. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/__pycache__/abc.cpython-310.pyc +0 -0
  1272. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/__pycache__/readers.cpython-310.pyc +0 -0
  1273. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/__pycache__/simple.cpython-310.pyc +0 -0
  1274. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/_adapters.py +0 -170
  1275. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/_common.py +0 -104
  1276. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/_compat.py +0 -98
  1277. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/_itertools.py +0 -35
  1278. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/_legacy.py +0 -121
  1279. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/abc.py +0 -137
  1280. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/readers.py +0 -122
  1281. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/importlib_resources/simple.py +0 -116
  1282. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/jaraco/__init__.py +0 -0
  1283. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/jaraco/__pycache__/__init__.cpython-310.pyc +0 -0
  1284. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/jaraco/__pycache__/context.cpython-310.pyc +0 -0
  1285. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/jaraco/__pycache__/functools.cpython-310.pyc +0 -0
  1286. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/jaraco/context.py +0 -213
  1287. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/jaraco/functools.py +0 -525
  1288. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/jaraco/text/__init__.py +0 -599
  1289. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/jaraco/text/__pycache__/__init__.cpython-310.pyc +0 -0
  1290. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/more_itertools/__init__.py +0 -4
  1291. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/more_itertools/__pycache__/__init__.cpython-310.pyc +0 -0
  1292. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/more_itertools/__pycache__/more.cpython-310.pyc +0 -0
  1293. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/more_itertools/__pycache__/recipes.cpython-310.pyc +0 -0
  1294. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/more_itertools/more.py +0 -3824
  1295. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/more_itertools/recipes.py +0 -620
  1296. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/ordered_set.py +0 -488
  1297. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__about__.py +0 -26
  1298. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__init__.py +0 -25
  1299. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__pycache__/__about__.cpython-310.pyc +0 -0
  1300. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__pycache__/__init__.cpython-310.pyc +0 -0
  1301. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__pycache__/_manylinux.cpython-310.pyc +0 -0
  1302. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__pycache__/_musllinux.cpython-310.pyc +0 -0
  1303. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__pycache__/_structures.cpython-310.pyc +0 -0
  1304. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__pycache__/markers.cpython-310.pyc +0 -0
  1305. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__pycache__/requirements.cpython-310.pyc +0 -0
  1306. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__pycache__/specifiers.cpython-310.pyc +0 -0
  1307. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__pycache__/tags.cpython-310.pyc +0 -0
  1308. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__pycache__/utils.cpython-310.pyc +0 -0
  1309. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/__pycache__/version.cpython-310.pyc +0 -0
  1310. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/_manylinux.py +0 -301
  1311. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/_musllinux.py +0 -136
  1312. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/_structures.py +0 -61
  1313. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/markers.py +0 -304
  1314. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/requirements.py +0 -146
  1315. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/specifiers.py +0 -802
  1316. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/tags.py +0 -487
  1317. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/utils.py +0 -136
  1318. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/packaging/version.py +0 -504
  1319. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/__init__.py +0 -331
  1320. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/__pycache__/__init__.cpython-310.pyc +0 -0
  1321. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/__pycache__/actions.cpython-310.pyc +0 -0
  1322. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/__pycache__/common.cpython-310.pyc +0 -0
  1323. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/__pycache__/core.cpython-310.pyc +0 -0
  1324. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/__pycache__/exceptions.cpython-310.pyc +0 -0
  1325. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/__pycache__/helpers.cpython-310.pyc +0 -0
  1326. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/__pycache__/results.cpython-310.pyc +0 -0
  1327. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/__pycache__/testing.cpython-310.pyc +0 -0
  1328. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/__pycache__/unicode.cpython-310.pyc +0 -0
  1329. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/__pycache__/util.cpython-310.pyc +0 -0
  1330. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/actions.py +0 -207
  1331. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/common.py +0 -424
  1332. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/core.py +0 -5814
  1333. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/diagram/__init__.py +0 -642
  1334. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/diagram/__pycache__/__init__.cpython-310.pyc +0 -0
  1335. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/exceptions.py +0 -267
  1336. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/helpers.py +0 -1088
  1337. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/results.py +0 -760
  1338. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/testing.py +0 -331
  1339. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/unicode.py +0 -352
  1340. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/pyparsing/util.py +0 -235
  1341. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/tomli/__init__.py +0 -11
  1342. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/tomli/__pycache__/__init__.cpython-310.pyc +0 -0
  1343. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/tomli/__pycache__/_parser.cpython-310.pyc +0 -0
  1344. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/tomli/__pycache__/_re.cpython-310.pyc +0 -0
  1345. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/tomli/__pycache__/_types.cpython-310.pyc +0 -0
  1346. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/tomli/_parser.py +0 -691
  1347. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/tomli/_re.py +0 -107
  1348. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/tomli/_types.py +0 -10
  1349. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/typing_extensions.py +0 -2296
  1350. data/assets/env/lib/python3.10/site-packages/setuptools/_vendor/zipp.py +0 -329
  1351. data/assets/env/lib/python3.10/site-packages/setuptools/archive_util.py +0 -213
  1352. data/assets/env/lib/python3.10/site-packages/setuptools/build_meta.py +0 -511
  1353. data/assets/env/lib/python3.10/site-packages/setuptools/cli-32.exe +0 -0
  1354. data/assets/env/lib/python3.10/site-packages/setuptools/cli-64.exe +0 -0
  1355. data/assets/env/lib/python3.10/site-packages/setuptools/cli-arm64.exe +0 -0
  1356. data/assets/env/lib/python3.10/site-packages/setuptools/cli.exe +0 -0
  1357. data/assets/env/lib/python3.10/site-packages/setuptools/command/__init__.py +0 -12
  1358. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/__init__.cpython-310.pyc +0 -0
  1359. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/alias.cpython-310.pyc +0 -0
  1360. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/bdist_egg.cpython-310.pyc +0 -0
  1361. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/bdist_rpm.cpython-310.pyc +0 -0
  1362. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/build.cpython-310.pyc +0 -0
  1363. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/build_clib.cpython-310.pyc +0 -0
  1364. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/build_ext.cpython-310.pyc +0 -0
  1365. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/build_py.cpython-310.pyc +0 -0
  1366. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/develop.cpython-310.pyc +0 -0
  1367. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/dist_info.cpython-310.pyc +0 -0
  1368. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/easy_install.cpython-310.pyc +0 -0
  1369. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/editable_wheel.cpython-310.pyc +0 -0
  1370. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/egg_info.cpython-310.pyc +0 -0
  1371. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/install.cpython-310.pyc +0 -0
  1372. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/install_egg_info.cpython-310.pyc +0 -0
  1373. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/install_lib.cpython-310.pyc +0 -0
  1374. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/install_scripts.cpython-310.pyc +0 -0
  1375. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/py36compat.cpython-310.pyc +0 -0
  1376. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/register.cpython-310.pyc +0 -0
  1377. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/rotate.cpython-310.pyc +0 -0
  1378. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/saveopts.cpython-310.pyc +0 -0
  1379. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/sdist.cpython-310.pyc +0 -0
  1380. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/setopt.cpython-310.pyc +0 -0
  1381. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/test.cpython-310.pyc +0 -0
  1382. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/upload.cpython-310.pyc +0 -0
  1383. data/assets/env/lib/python3.10/site-packages/setuptools/command/__pycache__/upload_docs.cpython-310.pyc +0 -0
  1384. data/assets/env/lib/python3.10/site-packages/setuptools/command/alias.py +0 -78
  1385. data/assets/env/lib/python3.10/site-packages/setuptools/command/bdist_egg.py +0 -457
  1386. data/assets/env/lib/python3.10/site-packages/setuptools/command/bdist_rpm.py +0 -40
  1387. data/assets/env/lib/python3.10/site-packages/setuptools/command/build.py +0 -146
  1388. data/assets/env/lib/python3.10/site-packages/setuptools/command/build_clib.py +0 -101
  1389. data/assets/env/lib/python3.10/site-packages/setuptools/command/build_ext.py +0 -383
  1390. data/assets/env/lib/python3.10/site-packages/setuptools/command/build_py.py +0 -368
  1391. data/assets/env/lib/python3.10/site-packages/setuptools/command/develop.py +0 -193
  1392. data/assets/env/lib/python3.10/site-packages/setuptools/command/dist_info.py +0 -142
  1393. data/assets/env/lib/python3.10/site-packages/setuptools/command/easy_install.py +0 -2312
  1394. data/assets/env/lib/python3.10/site-packages/setuptools/command/editable_wheel.py +0 -844
  1395. data/assets/env/lib/python3.10/site-packages/setuptools/command/egg_info.py +0 -763
  1396. data/assets/env/lib/python3.10/site-packages/setuptools/command/install.py +0 -139
  1397. data/assets/env/lib/python3.10/site-packages/setuptools/command/install_egg_info.py +0 -63
  1398. data/assets/env/lib/python3.10/site-packages/setuptools/command/install_lib.py +0 -122
  1399. data/assets/env/lib/python3.10/site-packages/setuptools/command/install_scripts.py +0 -70
  1400. data/assets/env/lib/python3.10/site-packages/setuptools/command/launcher manifest.xml +0 -15
  1401. data/assets/env/lib/python3.10/site-packages/setuptools/command/py36compat.py +0 -134
  1402. data/assets/env/lib/python3.10/site-packages/setuptools/command/register.py +0 -18
  1403. data/assets/env/lib/python3.10/site-packages/setuptools/command/rotate.py +0 -64
  1404. data/assets/env/lib/python3.10/site-packages/setuptools/command/saveopts.py +0 -22
  1405. data/assets/env/lib/python3.10/site-packages/setuptools/command/sdist.py +0 -210
  1406. data/assets/env/lib/python3.10/site-packages/setuptools/command/setopt.py +0 -149
  1407. data/assets/env/lib/python3.10/site-packages/setuptools/command/test.py +0 -251
  1408. data/assets/env/lib/python3.10/site-packages/setuptools/command/upload.py +0 -17
  1409. data/assets/env/lib/python3.10/site-packages/setuptools/command/upload_docs.py +0 -213
  1410. data/assets/env/lib/python3.10/site-packages/setuptools/config/__init__.py +0 -35
  1411. data/assets/env/lib/python3.10/site-packages/setuptools/config/__pycache__/__init__.cpython-310.pyc +0 -0
  1412. data/assets/env/lib/python3.10/site-packages/setuptools/config/__pycache__/_apply_pyprojecttoml.cpython-310.pyc +0 -0
  1413. data/assets/env/lib/python3.10/site-packages/setuptools/config/__pycache__/expand.cpython-310.pyc +0 -0
  1414. data/assets/env/lib/python3.10/site-packages/setuptools/config/__pycache__/pyprojecttoml.cpython-310.pyc +0 -0
  1415. data/assets/env/lib/python3.10/site-packages/setuptools/config/__pycache__/setupcfg.cpython-310.pyc +0 -0
  1416. data/assets/env/lib/python3.10/site-packages/setuptools/config/_apply_pyprojecttoml.py +0 -377
  1417. data/assets/env/lib/python3.10/site-packages/setuptools/config/_validate_pyproject/__init__.py +0 -34
  1418. data/assets/env/lib/python3.10/site-packages/setuptools/config/_validate_pyproject/__pycache__/__init__.cpython-310.pyc +0 -0
  1419. data/assets/env/lib/python3.10/site-packages/setuptools/config/_validate_pyproject/__pycache__/error_reporting.cpython-310.pyc +0 -0
  1420. data/assets/env/lib/python3.10/site-packages/setuptools/config/_validate_pyproject/__pycache__/extra_validations.cpython-310.pyc +0 -0
  1421. data/assets/env/lib/python3.10/site-packages/setuptools/config/_validate_pyproject/__pycache__/fastjsonschema_exceptions.cpython-310.pyc +0 -0
  1422. data/assets/env/lib/python3.10/site-packages/setuptools/config/_validate_pyproject/__pycache__/fastjsonschema_validations.cpython-310.pyc +0 -0
  1423. data/assets/env/lib/python3.10/site-packages/setuptools/config/_validate_pyproject/__pycache__/formats.cpython-310.pyc +0 -0
  1424. data/assets/env/lib/python3.10/site-packages/setuptools/config/_validate_pyproject/error_reporting.py +0 -318
  1425. data/assets/env/lib/python3.10/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +0 -36
  1426. data/assets/env/lib/python3.10/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_exceptions.py +0 -51
  1427. data/assets/env/lib/python3.10/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +0 -1035
  1428. data/assets/env/lib/python3.10/site-packages/setuptools/config/_validate_pyproject/formats.py +0 -259
  1429. data/assets/env/lib/python3.10/site-packages/setuptools/config/expand.py +0 -462
  1430. data/assets/env/lib/python3.10/site-packages/setuptools/config/pyprojecttoml.py +0 -493
  1431. data/assets/env/lib/python3.10/site-packages/setuptools/config/setupcfg.py +0 -762
  1432. data/assets/env/lib/python3.10/site-packages/setuptools/dep_util.py +0 -25
  1433. data/assets/env/lib/python3.10/site-packages/setuptools/depends.py +0 -176
  1434. data/assets/env/lib/python3.10/site-packages/setuptools/discovery.py +0 -600
  1435. data/assets/env/lib/python3.10/site-packages/setuptools/dist.py +0 -1222
  1436. data/assets/env/lib/python3.10/site-packages/setuptools/errors.py +0 -58
  1437. data/assets/env/lib/python3.10/site-packages/setuptools/extension.py +0 -148
  1438. data/assets/env/lib/python3.10/site-packages/setuptools/extern/__init__.py +0 -76
  1439. data/assets/env/lib/python3.10/site-packages/setuptools/extern/__pycache__/__init__.cpython-310.pyc +0 -0
  1440. data/assets/env/lib/python3.10/site-packages/setuptools/glob.py +0 -167
  1441. data/assets/env/lib/python3.10/site-packages/setuptools/gui-32.exe +0 -0
  1442. data/assets/env/lib/python3.10/site-packages/setuptools/gui-64.exe +0 -0
  1443. data/assets/env/lib/python3.10/site-packages/setuptools/gui-arm64.exe +0 -0
  1444. data/assets/env/lib/python3.10/site-packages/setuptools/gui.exe +0 -0
  1445. data/assets/env/lib/python3.10/site-packages/setuptools/installer.py +0 -104
  1446. data/assets/env/lib/python3.10/site-packages/setuptools/launch.py +0 -36
  1447. data/assets/env/lib/python3.10/site-packages/setuptools/logging.py +0 -36
  1448. data/assets/env/lib/python3.10/site-packages/setuptools/monkey.py +0 -165
  1449. data/assets/env/lib/python3.10/site-packages/setuptools/msvc.py +0 -1703
  1450. data/assets/env/lib/python3.10/site-packages/setuptools/namespaces.py +0 -107
  1451. data/assets/env/lib/python3.10/site-packages/setuptools/package_index.py +0 -1126
  1452. data/assets/env/lib/python3.10/site-packages/setuptools/py34compat.py +0 -13
  1453. data/assets/env/lib/python3.10/site-packages/setuptools/sandbox.py +0 -530
  1454. data/assets/env/lib/python3.10/site-packages/setuptools/script (dev).tmpl +0 -6
  1455. data/assets/env/lib/python3.10/site-packages/setuptools/script.tmpl +0 -3
  1456. data/assets/env/lib/python3.10/site-packages/setuptools/unicode_utils.py +0 -42
  1457. data/assets/env/lib/python3.10/site-packages/setuptools/version.py +0 -6
  1458. data/assets/env/lib/python3.10/site-packages/setuptools/wheel.py +0 -222
  1459. data/assets/env/lib/python3.10/site-packages/setuptools/windows_support.py +0 -29
  1460. data/assets/env/lib/python3.10/site-packages/setuptools-65.5.0.dist-info/INSTALLER +0 -1
  1461. data/assets/env/lib/python3.10/site-packages/setuptools-65.5.0.dist-info/LICENSE +0 -19
  1462. data/assets/env/lib/python3.10/site-packages/setuptools-65.5.0.dist-info/METADATA +0 -144
  1463. data/assets/env/lib/python3.10/site-packages/setuptools-65.5.0.dist-info/RECORD +0 -466
  1464. data/assets/env/lib/python3.10/site-packages/setuptools-65.5.0.dist-info/REQUESTED +0 -0
  1465. data/assets/env/lib/python3.10/site-packages/setuptools-65.5.0.dist-info/WHEEL +0 -5
  1466. data/assets/env/lib/python3.10/site-packages/setuptools-65.5.0.dist-info/entry_points.txt +0 -57
  1467. data/assets/env/lib/python3.10/site-packages/setuptools-65.5.0.dist-info/top_level.txt +0 -3
  1468. data/assets/env/lib64 +0 -1
  1469. data/assets/env/pyvenv.cfg +0 -3
  1470. data/assets/env/src/__pycache__/copy_about.cpython-310.pyc +0 -0
  1471. data/assets/env/src/__pycache__/copy_img.cpython-310.pyc +0 -0
  1472. data/assets/env/src/__pycache__/csv_to_md_auth.cpython-310.pyc +0 -0
  1473. data/assets/env/src/__pycache__/csv_to_md_books.cpython-310.pyc +0 -0
  1474. data/assets/env/src/__pycache__/csv_to_md_cities.cpython-310.pyc +0 -0
  1475. data/assets/env/src/__pycache__/csv_to_md_pub.cpython-310.pyc +0 -0
  1476. data/assets/env/src/__pycache__/csv_to_md_repo.cpython-310.pyc +0 -0
  1477. data/assets/env/src/__pycache__/field_updates.cpython-310.pyc +0 -0
  1478. data/assets/env/src/__pycache__/replace_quotes.cpython-310.pyc +0 -0
  1479. data/assets/env/src/blank_column.py +0 -23
  1480. data/assets/env/src/book_slug.py +0 -30
  1481. data/assets/env/src/copy_about.py +0 -7
  1482. data/assets/env/src/copy_img.py +0 -48
  1483. data/assets/env/src/csv-to-md-all.py +0 -5
  1484. data/assets/env/src/csv_to_md_auth.py +0 -24
  1485. data/assets/env/src/csv_to_md_books.py +0 -43
  1486. data/assets/env/src/csv_to_md_cities.py +0 -20
  1487. data/assets/env/src/csv_to_md_pub.py +0 -20
  1488. data/assets/env/src/csv_to_md_repo.py +0 -21
  1489. data/assets/env/src/field_updates.py +0 -7
  1490. data/assets/env/src/replace_quotes.py +0 -2
  1491. data/assets/env/src/scripts-all.py +0 -13
@@ -1,1035 +0,0 @@
1
- # noqa
2
- # type: ignore
3
- # flake8: noqa
4
- # pylint: skip-file
5
- # mypy: ignore-errors
6
- # yapf: disable
7
- # pylama:skip=1
8
-
9
-
10
- # *** PLEASE DO NOT MODIFY DIRECTLY: Automatically generated code ***
11
-
12
-
13
- VERSION = "2.15.3"
14
- import re
15
- from .fastjsonschema_exceptions import JsonSchemaValueException
16
-
17
-
18
- REGEX_PATTERNS = {
19
- '^.*$': re.compile('^.*$'),
20
- '.+': re.compile('.+'),
21
- '^.+$': re.compile('^.+$'),
22
- 'idn-email_re_pattern': re.compile('^[^@]+@[^@]+\\.[^@]+\\Z')
23
- }
24
-
25
- NoneType = type(None)
26
-
27
- def validate(data, custom_formats={}, name_prefix=None):
28
- validate_https___packaging_python_org_en_latest_specifications_declaring_build_dependencies(data, custom_formats, (name_prefix or "data") + "")
29
- return data
30
-
31
- def validate_https___packaging_python_org_en_latest_specifications_declaring_build_dependencies(data, custom_formats={}, name_prefix=None):
32
- if not isinstance(data, (dict)):
33
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be object", value=data, name="" + (name_prefix or "data") + "", definition={'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://packaging.python.org/en/latest/specifications/declaring-build-dependencies/', 'title': 'Data structure for ``pyproject.toml`` files', '$$description': ['File format containing build-time configurations for the Python ecosystem. ', ':pep:`517` initially defined a build-system independent format for source trees', 'which was complemented by :pep:`518` to provide a way of specifying dependencies ', 'for building Python projects.', 'Please notice the ``project`` table (as initially defined in :pep:`621`) is not included', 'in this schema and should be considered separately.'], 'type': 'object', 'additionalProperties': False, 'properties': {'build-system': {'type': 'object', 'description': 'Table used to store build-related data', 'additionalProperties': False, 'properties': {'requires': {'type': 'array', '$$description': ['List of dependencies in the :pep:`508` format required to execute the build', 'system. Please notice that the resulting dependency graph', '**MUST NOT contain cycles**'], 'items': {'type': 'string'}}, 'build-backend': {'type': 'string', 'description': 'Python object that will be used to perform the build according to :pep:`517`', 'format': 'pep517-backend-reference'}, 'backend-path': {'type': 'array', '$$description': ['List of directories to be prepended to ``sys.path`` when loading the', 'back-end, and running its hooks'], 'items': {'type': 'string', '$comment': 'Should be a path (TODO: enforce it with format?)'}}}, 'required': ['requires']}, 'project': {'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://packaging.python.org/en/latest/specifications/declaring-project-metadata/', 'title': 'Package metadata stored in the ``project`` table', '$$description': ['Data structure for the **project** table inside ``pyproject.toml``', '(as initially defined in :pep:`621`)'], 'type': 'object', 'properties': {'name': {'type': 'string', 'description': 'The name (primary identifier) of the project. MUST be statically defined.', 'format': 'pep508-identifier'}, 'version': {'type': 'string', 'description': 'The version of the project as supported by :pep:`440`.', 'format': 'pep440'}, 'description': {'type': 'string', '$$description': ['The `summary description of the project', '<https://packaging.python.org/specifications/core-metadata/#summary>`_']}, 'readme': {'$$description': ['`Full/detailed description of the project in the form of a README', '<https://www.python.org/dev/peps/pep-0621/#readme>`_', "with meaning similar to the one defined in `core metadata's Description", '<https://packaging.python.org/specifications/core-metadata/#description>`_'], 'oneOf': [{'type': 'string', '$$description': ['Relative path to a text file (UTF-8) containing the full description', 'of the project. If the file path ends in case-insensitive ``.md`` or', '``.rst`` suffixes, then the content-type is respectively', '``text/markdown`` or ``text/x-rst``']}, {'type': 'object', 'allOf': [{'anyOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to a text file containing the full description', 'of the project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', 'description': 'Full text describing the project.'}}, 'required': ['text']}]}, {'properties': {'content-type': {'type': 'string', '$$description': ['Content-type (:rfc:`1341`) of the full description', '(e.g. ``text/markdown``). The ``charset`` parameter is assumed', 'UTF-8 when not present.'], '$comment': 'TODO: add regex pattern or format?'}}, 'required': ['content-type']}]}]}, 'requires-python': {'type': 'string', 'format': 'pep508-versionspec', '$$description': ['`The Python version requirements of the project', '<https://packaging.python.org/specifications/core-metadata/#requires-python>`_.']}, 'license': {'description': '`Project license <https://www.python.org/dev/peps/pep-0621/#license>`_.', 'oneOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to the file (UTF-8) which contains the license for the', 'project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', '$$description': ['The license of the project whose meaning is that of the', '`License field from the core metadata', '<https://packaging.python.org/specifications/core-metadata/#license>`_.']}}, 'required': ['text']}]}, 'authors': {'type': 'array', 'items': {'$ref': '#/definitions/author'}, '$$description': ["The people or organizations considered to be the 'authors' of the project.", 'The exact meaning is open to interpretation (e.g. original or primary authors,', 'current maintainers, or owners of the package).']}, 'maintainers': {'type': 'array', 'items': {'$ref': '#/definitions/author'}, '$$description': ["The people or organizations considered to be the 'maintainers' of the project.", 'Similarly to ``authors``, the exact meaning is open to interpretation.']}, 'keywords': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of keywords to assist searching for the distribution in a larger catalog.'}, 'classifiers': {'type': 'array', 'items': {'type': 'string', 'format': 'trove-classifier', 'description': '`PyPI classifier <https://pypi.org/classifiers/>`_.'}, '$$description': ['`Trove classifiers <https://pypi.org/classifiers/>`_', 'which apply to the project.']}, 'urls': {'type': 'object', 'description': 'URLs associated with the project in the form ``label => value``.', 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', 'format': 'url'}}}, 'scripts': {'$ref': '#/definitions/entry-point-group', '$$description': ['Instruct the installer to create command-line wrappers for the given', '`entry points <https://packaging.python.org/specifications/entry-points/>`_.']}, 'gui-scripts': {'$ref': '#/definitions/entry-point-group', '$$description': ['Instruct the installer to create GUI wrappers for the given', '`entry points <https://packaging.python.org/specifications/entry-points/>`_.', 'The difference between ``scripts`` and ``gui-scripts`` is only relevant in', 'Windows.']}, 'entry-points': {'$$description': ['Instruct the installer to expose the given modules/functions via', '``entry-point`` discovery mechanism (useful for plugins).', 'More information available in the `Python packaging guide', '<https://packaging.python.org/specifications/entry-points/>`_.'], 'propertyNames': {'format': 'python-entrypoint-group'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'$ref': '#/definitions/entry-point-group'}}}, 'dependencies': {'type': 'array', 'description': 'Project (mandatory) dependencies.', 'items': {'$ref': '#/definitions/dependency'}}, 'optional-dependencies': {'type': 'object', 'description': 'Optional dependency for the project', 'propertyNames': {'format': 'pep508-identifier'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'array', 'items': {'$ref': '#/definitions/dependency'}}}}, 'dynamic': {'type': 'array', '$$description': ['Specifies which fields are intentionally unspecified and expected to be', 'dynamically provided by build tools'], 'items': {'enum': ['version', 'description', 'readme', 'requires-python', 'license', 'authors', 'maintainers', 'keywords', 'classifiers', 'urls', 'scripts', 'gui-scripts', 'entry-points', 'dependencies', 'optional-dependencies']}}}, 'required': ['name'], 'additionalProperties': False, 'if': {'not': {'required': ['dynamic'], 'properties': {'dynamic': {'contains': {'const': 'version'}, '$$description': ['version is listed in ``dynamic``']}}}, '$$comment': ['According to :pep:`621`:', ' If the core metadata specification lists a field as "Required", then', ' the metadata MUST specify the field statically or list it in dynamic', 'In turn, `core metadata`_ defines:', ' The required fields are: Metadata-Version, Name, Version.', ' All the other fields are optional.', 'Since ``Metadata-Version`` is defined by the build back-end, ``name`` and', '``version`` are the only mandatory information in ``pyproject.toml``.', '.. _core metadata: https://packaging.python.org/specifications/core-metadata/']}, 'then': {'required': ['version'], '$$description': ['version should be statically defined in the ``version`` field']}, 'definitions': {'author': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, 'entry-point-group': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'dependency': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}, 'tool': {'type': 'object', 'properties': {'distutils': {'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://docs.python.org/3/install/', 'title': '``tool.distutils`` table', '$$description': ['Originally, ``distutils`` allowed developers to configure arguments for', '``setup.py`` scripts via `distutils configuration files', '<https://docs.python.org/3/install/#distutils-configuration-files>`_.', '``tool.distutils`` subtables could be used with the same purpose', '(NOT CURRENTLY IMPLEMENTED).'], 'type': 'object', 'properties': {'global': {'type': 'object', 'description': 'Global options applied to all ``distutils`` commands'}}, 'patternProperties': {'.+': {'type': 'object'}}, '$comment': 'TODO: Is there a practical way of making this schema more specific?'}, 'setuptools': {'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://setuptools.pypa.io/en/latest/references/keywords.html', 'title': '``tool.setuptools`` table', '$$description': ['Please notice for the time being the ``setuptools`` project does not specify', 'a way of configuring builds via ``pyproject.toml``.', 'Therefore this schema should be taken just as a *"thought experiment"* on how', 'this *might be done*, by following the principles established in', '`ini2toml <https://ini2toml.readthedocs.io/en/latest/setuptools_pep621.html>`_.', 'It considers only ``setuptools`` `parameters', '<https://setuptools.pypa.io/en/latest/userguide/declarative_config.html>`_', 'that can currently be configured via ``setup.cfg`` and are not covered by :pep:`621`', 'but intentionally excludes ``dependency_links`` and ``setup_requires``.', 'NOTE: ``scripts`` was renamed to ``script-files`` to avoid confusion with', 'entry-point based scripts (defined in :pep:`621`).'], 'type': 'object', 'additionalProperties': False, 'properties': {'platforms': {'type': 'array', 'items': {'type': 'string'}}, 'provides': {'$$description': ['Package and virtual package names contained within this package', '**(not supported by pip)**'], 'type': 'array', 'items': {'type': 'string', 'format': 'pep508-identifier'}}, 'obsoletes': {'$$description': ['Packages which this package renders obsolete', '**(not supported by pip)**'], 'type': 'array', 'items': {'type': 'string', 'format': 'pep508-identifier'}}, 'zip-safe': {'description': 'Whether the project can be safely installed and run from a zip file.', 'type': 'boolean'}, 'script-files': {'description': 'Legacy way of defining scripts (entry-points are preferred).', 'type': 'array', 'items': {'type': 'string'}, '$comment': 'TODO: is this field deprecated/should be removed?'}, 'eager-resources': {'$$description': ['Resources that should be extracted together, if any of them is needed,', 'or if any C extensions included in the project are imported.'], 'type': 'array', 'items': {'type': 'string'}}, 'packages': {'$$description': ['Packages that should be included in the distribution.', 'It can be given either as a list of package identifiers', 'or as a ``dict``-like structure with a single key ``find``', 'which corresponds to a dynamic call to', '``setuptools.config.expand.find_packages`` function.', 'The ``find`` key is associated with a nested ``dict``-like structure that can', 'contain ``where``, ``include``, ``exclude`` and ``namespaces`` keys,', 'mimicking the keyword arguments of the associated function.'], 'oneOf': [{'title': 'Array of Python package identifiers', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}}, {'$ref': '#/definitions/find-directive'}]}, 'package-dir': {'$$description': [':class:`dict`-like structure mapping from package names to directories where their', 'code can be found.', 'The empty string (as key) means that all packages are contained inside', 'the given directory will be included in the distribution.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': ''}]}, 'patternProperties': {'^.*$': {'type': 'string'}}}, 'package-data': {'$$description': ['Mapping from package names to lists of glob patterns.', 'Usually this option is not needed when using ``include-package-data = true``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'include-package-data': {'$$description': ['Automatically include any data files inside the package directories', 'that are specified by ``MANIFEST.in``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'boolean'}, 'exclude-package-data': {'$$description': ['Mapping from package names to lists of glob patterns that should be excluded', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'namespace-packages': {'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}, '$comment': 'https://setuptools.pypa.io/en/latest/userguide/package_discovery.html'}, 'py-modules': {'description': 'Modules that setuptools will manipulate', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}, '$comment': 'TODO: clarify the relationship with ``packages``'}, 'data-files': {'$$description': ['**DEPRECATED**: dict-like structure where each key represents a directory and', 'the value is a list of glob patterns that should be installed in them.', "Please notice this don't work with wheels. See `data files support", '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_'], 'type': 'object', 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'cmdclass': {'$$description': ['Mapping of distutils-style command names to ``setuptools.Command`` subclasses', 'which in turn should be represented by strings with a qualified class name', '(i.e., "dotted" form with module), e.g.::\n\n', ' cmdclass = {mycmd = "pkg.subpkg.module.CommandClass"}\n\n', 'The command class should be a directly defined at the top-level of the', 'containing module (no class nesting).'], 'type': 'object', 'patternProperties': {'^.*$': {'type': 'string', 'format': 'python-qualified-identifier'}}}, 'license-files': {'type': 'array', 'items': {'type': 'string'}, '$$description': ['PROVISIONAL: List of glob patterns for all license files being distributed.', '(might become standard with PEP 639).'], 'default': ['LICEN[CS]E*', ' COPYING*', ' NOTICE*', 'AUTHORS*'], '$comment': 'TODO: revise if PEP 639 is accepted. Probably ``project.license-files``?'}, 'dynamic': {'type': 'object', 'description': 'Instructions for loading :pep:`621`-related metadata dynamically', 'additionalProperties': False, 'properties': {'version': {'$$description': ['A version dynamically loaded via either the ``attr:`` or ``file:``', 'directives. Please make sure the given file or attribute respects :pep:`440`.'], 'oneOf': [{'$ref': '#/definitions/attr-directive'}, {'$ref': '#/definitions/file-directive'}]}, 'classifiers': {'$ref': '#/definitions/file-directive'}, 'description': {'$ref': '#/definitions/file-directive'}, 'dependencies': {'$ref': '#/definitions/file-directive'}, 'entry-points': {'$ref': '#/definitions/file-directive'}, 'optional-dependencies': {'type': 'object', 'propertyNames': {'format': 'python-identifier'}, 'additionalProperties': False, 'patternProperties': {'.+': {'$ref': '#/definitions/file-directive'}}}, 'readme': {'anyOf': [{'$ref': '#/definitions/file-directive'}, {'properties': {'content-type': {'type': 'string'}}}], 'required': ['file']}}}}, 'definitions': {'file-directive': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'attr-directive': {'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, 'find-directive': {'$id': '#/definitions/find-directive', 'title': "'find:' directive", 'type': 'object', 'additionalProperties': False, 'properties': {'find': {'type': 'object', '$$description': ['Dynamic `package discovery', '<https://setuptools.pypa.io/en/latest/userguide/package_discovery.html>`_.'], 'additionalProperties': False, 'properties': {'where': {'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, 'exclude': {'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'include': {'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'namespaces': {'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}}}}}}}}}}, 'project': {'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://packaging.python.org/en/latest/specifications/declaring-project-metadata/', 'title': 'Package metadata stored in the ``project`` table', '$$description': ['Data structure for the **project** table inside ``pyproject.toml``', '(as initially defined in :pep:`621`)'], 'type': 'object', 'properties': {'name': {'type': 'string', 'description': 'The name (primary identifier) of the project. MUST be statically defined.', 'format': 'pep508-identifier'}, 'version': {'type': 'string', 'description': 'The version of the project as supported by :pep:`440`.', 'format': 'pep440'}, 'description': {'type': 'string', '$$description': ['The `summary description of the project', '<https://packaging.python.org/specifications/core-metadata/#summary>`_']}, 'readme': {'$$description': ['`Full/detailed description of the project in the form of a README', '<https://www.python.org/dev/peps/pep-0621/#readme>`_', "with meaning similar to the one defined in `core metadata's Description", '<https://packaging.python.org/specifications/core-metadata/#description>`_'], 'oneOf': [{'type': 'string', '$$description': ['Relative path to a text file (UTF-8) containing the full description', 'of the project. If the file path ends in case-insensitive ``.md`` or', '``.rst`` suffixes, then the content-type is respectively', '``text/markdown`` or ``text/x-rst``']}, {'type': 'object', 'allOf': [{'anyOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to a text file containing the full description', 'of the project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', 'description': 'Full text describing the project.'}}, 'required': ['text']}]}, {'properties': {'content-type': {'type': 'string', '$$description': ['Content-type (:rfc:`1341`) of the full description', '(e.g. ``text/markdown``). The ``charset`` parameter is assumed', 'UTF-8 when not present.'], '$comment': 'TODO: add regex pattern or format?'}}, 'required': ['content-type']}]}]}, 'requires-python': {'type': 'string', 'format': 'pep508-versionspec', '$$description': ['`The Python version requirements of the project', '<https://packaging.python.org/specifications/core-metadata/#requires-python>`_.']}, 'license': {'description': '`Project license <https://www.python.org/dev/peps/pep-0621/#license>`_.', 'oneOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to the file (UTF-8) which contains the license for the', 'project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', '$$description': ['The license of the project whose meaning is that of the', '`License field from the core metadata', '<https://packaging.python.org/specifications/core-metadata/#license>`_.']}}, 'required': ['text']}]}, 'authors': {'type': 'array', 'items': {'$ref': '#/definitions/author'}, '$$description': ["The people or organizations considered to be the 'authors' of the project.", 'The exact meaning is open to interpretation (e.g. original or primary authors,', 'current maintainers, or owners of the package).']}, 'maintainers': {'type': 'array', 'items': {'$ref': '#/definitions/author'}, '$$description': ["The people or organizations considered to be the 'maintainers' of the project.", 'Similarly to ``authors``, the exact meaning is open to interpretation.']}, 'keywords': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of keywords to assist searching for the distribution in a larger catalog.'}, 'classifiers': {'type': 'array', 'items': {'type': 'string', 'format': 'trove-classifier', 'description': '`PyPI classifier <https://pypi.org/classifiers/>`_.'}, '$$description': ['`Trove classifiers <https://pypi.org/classifiers/>`_', 'which apply to the project.']}, 'urls': {'type': 'object', 'description': 'URLs associated with the project in the form ``label => value``.', 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', 'format': 'url'}}}, 'scripts': {'$ref': '#/definitions/entry-point-group', '$$description': ['Instruct the installer to create command-line wrappers for the given', '`entry points <https://packaging.python.org/specifications/entry-points/>`_.']}, 'gui-scripts': {'$ref': '#/definitions/entry-point-group', '$$description': ['Instruct the installer to create GUI wrappers for the given', '`entry points <https://packaging.python.org/specifications/entry-points/>`_.', 'The difference between ``scripts`` and ``gui-scripts`` is only relevant in', 'Windows.']}, 'entry-points': {'$$description': ['Instruct the installer to expose the given modules/functions via', '``entry-point`` discovery mechanism (useful for plugins).', 'More information available in the `Python packaging guide', '<https://packaging.python.org/specifications/entry-points/>`_.'], 'propertyNames': {'format': 'python-entrypoint-group'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'$ref': '#/definitions/entry-point-group'}}}, 'dependencies': {'type': 'array', 'description': 'Project (mandatory) dependencies.', 'items': {'$ref': '#/definitions/dependency'}}, 'optional-dependencies': {'type': 'object', 'description': 'Optional dependency for the project', 'propertyNames': {'format': 'pep508-identifier'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'array', 'items': {'$ref': '#/definitions/dependency'}}}}, 'dynamic': {'type': 'array', '$$description': ['Specifies which fields are intentionally unspecified and expected to be', 'dynamically provided by build tools'], 'items': {'enum': ['version', 'description', 'readme', 'requires-python', 'license', 'authors', 'maintainers', 'keywords', 'classifiers', 'urls', 'scripts', 'gui-scripts', 'entry-points', 'dependencies', 'optional-dependencies']}}}, 'required': ['name'], 'additionalProperties': False, 'if': {'not': {'required': ['dynamic'], 'properties': {'dynamic': {'contains': {'const': 'version'}, '$$description': ['version is listed in ``dynamic``']}}}, '$$comment': ['According to :pep:`621`:', ' If the core metadata specification lists a field as "Required", then', ' the metadata MUST specify the field statically or list it in dynamic', 'In turn, `core metadata`_ defines:', ' The required fields are: Metadata-Version, Name, Version.', ' All the other fields are optional.', 'Since ``Metadata-Version`` is defined by the build back-end, ``name`` and', '``version`` are the only mandatory information in ``pyproject.toml``.', '.. _core metadata: https://packaging.python.org/specifications/core-metadata/']}, 'then': {'required': ['version'], '$$description': ['version should be statically defined in the ``version`` field']}, 'definitions': {'author': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, 'entry-point-group': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'dependency': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}}, rule='type')
34
- data_is_dict = isinstance(data, dict)
35
- if data_is_dict:
36
- data_keys = set(data.keys())
37
- if "build-system" in data_keys:
38
- data_keys.remove("build-system")
39
- data__buildsystem = data["build-system"]
40
- if not isinstance(data__buildsystem, (dict)):
41
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".build-system must be object", value=data__buildsystem, name="" + (name_prefix or "data") + ".build-system", definition={'type': 'object', 'description': 'Table used to store build-related data', 'additionalProperties': False, 'properties': {'requires': {'type': 'array', '$$description': ['List of dependencies in the :pep:`508` format required to execute the build', 'system. Please notice that the resulting dependency graph', '**MUST NOT contain cycles**'], 'items': {'type': 'string'}}, 'build-backend': {'type': 'string', 'description': 'Python object that will be used to perform the build according to :pep:`517`', 'format': 'pep517-backend-reference'}, 'backend-path': {'type': 'array', '$$description': ['List of directories to be prepended to ``sys.path`` when loading the', 'back-end, and running its hooks'], 'items': {'type': 'string', '$comment': 'Should be a path (TODO: enforce it with format?)'}}}, 'required': ['requires']}, rule='type')
42
- data__buildsystem_is_dict = isinstance(data__buildsystem, dict)
43
- if data__buildsystem_is_dict:
44
- data__buildsystem_len = len(data__buildsystem)
45
- if not all(prop in data__buildsystem for prop in ['requires']):
46
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".build-system must contain ['requires'] properties", value=data__buildsystem, name="" + (name_prefix or "data") + ".build-system", definition={'type': 'object', 'description': 'Table used to store build-related data', 'additionalProperties': False, 'properties': {'requires': {'type': 'array', '$$description': ['List of dependencies in the :pep:`508` format required to execute the build', 'system. Please notice that the resulting dependency graph', '**MUST NOT contain cycles**'], 'items': {'type': 'string'}}, 'build-backend': {'type': 'string', 'description': 'Python object that will be used to perform the build according to :pep:`517`', 'format': 'pep517-backend-reference'}, 'backend-path': {'type': 'array', '$$description': ['List of directories to be prepended to ``sys.path`` when loading the', 'back-end, and running its hooks'], 'items': {'type': 'string', '$comment': 'Should be a path (TODO: enforce it with format?)'}}}, 'required': ['requires']}, rule='required')
47
- data__buildsystem_keys = set(data__buildsystem.keys())
48
- if "requires" in data__buildsystem_keys:
49
- data__buildsystem_keys.remove("requires")
50
- data__buildsystem__requires = data__buildsystem["requires"]
51
- if not isinstance(data__buildsystem__requires, (list, tuple)):
52
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".build-system.requires must be array", value=data__buildsystem__requires, name="" + (name_prefix or "data") + ".build-system.requires", definition={'type': 'array', '$$description': ['List of dependencies in the :pep:`508` format required to execute the build', 'system. Please notice that the resulting dependency graph', '**MUST NOT contain cycles**'], 'items': {'type': 'string'}}, rule='type')
53
- data__buildsystem__requires_is_list = isinstance(data__buildsystem__requires, (list, tuple))
54
- if data__buildsystem__requires_is_list:
55
- data__buildsystem__requires_len = len(data__buildsystem__requires)
56
- for data__buildsystem__requires_x, data__buildsystem__requires_item in enumerate(data__buildsystem__requires):
57
- if not isinstance(data__buildsystem__requires_item, (str)):
58
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".build-system.requires[{data__buildsystem__requires_x}]".format(**locals()) + " must be string", value=data__buildsystem__requires_item, name="" + (name_prefix or "data") + ".build-system.requires[{data__buildsystem__requires_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
59
- if "build-backend" in data__buildsystem_keys:
60
- data__buildsystem_keys.remove("build-backend")
61
- data__buildsystem__buildbackend = data__buildsystem["build-backend"]
62
- if not isinstance(data__buildsystem__buildbackend, (str)):
63
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".build-system.build-backend must be string", value=data__buildsystem__buildbackend, name="" + (name_prefix or "data") + ".build-system.build-backend", definition={'type': 'string', 'description': 'Python object that will be used to perform the build according to :pep:`517`', 'format': 'pep517-backend-reference'}, rule='type')
64
- if isinstance(data__buildsystem__buildbackend, str):
65
- if not custom_formats["pep517-backend-reference"](data__buildsystem__buildbackend):
66
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".build-system.build-backend must be pep517-backend-reference", value=data__buildsystem__buildbackend, name="" + (name_prefix or "data") + ".build-system.build-backend", definition={'type': 'string', 'description': 'Python object that will be used to perform the build according to :pep:`517`', 'format': 'pep517-backend-reference'}, rule='format')
67
- if "backend-path" in data__buildsystem_keys:
68
- data__buildsystem_keys.remove("backend-path")
69
- data__buildsystem__backendpath = data__buildsystem["backend-path"]
70
- if not isinstance(data__buildsystem__backendpath, (list, tuple)):
71
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".build-system.backend-path must be array", value=data__buildsystem__backendpath, name="" + (name_prefix or "data") + ".build-system.backend-path", definition={'type': 'array', '$$description': ['List of directories to be prepended to ``sys.path`` when loading the', 'back-end, and running its hooks'], 'items': {'type': 'string', '$comment': 'Should be a path (TODO: enforce it with format?)'}}, rule='type')
72
- data__buildsystem__backendpath_is_list = isinstance(data__buildsystem__backendpath, (list, tuple))
73
- if data__buildsystem__backendpath_is_list:
74
- data__buildsystem__backendpath_len = len(data__buildsystem__backendpath)
75
- for data__buildsystem__backendpath_x, data__buildsystem__backendpath_item in enumerate(data__buildsystem__backendpath):
76
- if not isinstance(data__buildsystem__backendpath_item, (str)):
77
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".build-system.backend-path[{data__buildsystem__backendpath_x}]".format(**locals()) + " must be string", value=data__buildsystem__backendpath_item, name="" + (name_prefix or "data") + ".build-system.backend-path[{data__buildsystem__backendpath_x}]".format(**locals()) + "", definition={'type': 'string', '$comment': 'Should be a path (TODO: enforce it with format?)'}, rule='type')
78
- if data__buildsystem_keys:
79
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".build-system must not contain "+str(data__buildsystem_keys)+" properties", value=data__buildsystem, name="" + (name_prefix or "data") + ".build-system", definition={'type': 'object', 'description': 'Table used to store build-related data', 'additionalProperties': False, 'properties': {'requires': {'type': 'array', '$$description': ['List of dependencies in the :pep:`508` format required to execute the build', 'system. Please notice that the resulting dependency graph', '**MUST NOT contain cycles**'], 'items': {'type': 'string'}}, 'build-backend': {'type': 'string', 'description': 'Python object that will be used to perform the build according to :pep:`517`', 'format': 'pep517-backend-reference'}, 'backend-path': {'type': 'array', '$$description': ['List of directories to be prepended to ``sys.path`` when loading the', 'back-end, and running its hooks'], 'items': {'type': 'string', '$comment': 'Should be a path (TODO: enforce it with format?)'}}}, 'required': ['requires']}, rule='additionalProperties')
80
- if "project" in data_keys:
81
- data_keys.remove("project")
82
- data__project = data["project"]
83
- validate_https___packaging_python_org_en_latest_specifications_declaring_project_metadata(data__project, custom_formats, (name_prefix or "data") + ".project")
84
- if "tool" in data_keys:
85
- data_keys.remove("tool")
86
- data__tool = data["tool"]
87
- if not isinstance(data__tool, (dict)):
88
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".tool must be object", value=data__tool, name="" + (name_prefix or "data") + ".tool", definition={'type': 'object', 'properties': {'distutils': {'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://docs.python.org/3/install/', 'title': '``tool.distutils`` table', '$$description': ['Originally, ``distutils`` allowed developers to configure arguments for', '``setup.py`` scripts via `distutils configuration files', '<https://docs.python.org/3/install/#distutils-configuration-files>`_.', '``tool.distutils`` subtables could be used with the same purpose', '(NOT CURRENTLY IMPLEMENTED).'], 'type': 'object', 'properties': {'global': {'type': 'object', 'description': 'Global options applied to all ``distutils`` commands'}}, 'patternProperties': {'.+': {'type': 'object'}}, '$comment': 'TODO: Is there a practical way of making this schema more specific?'}, 'setuptools': {'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://setuptools.pypa.io/en/latest/references/keywords.html', 'title': '``tool.setuptools`` table', '$$description': ['Please notice for the time being the ``setuptools`` project does not specify', 'a way of configuring builds via ``pyproject.toml``.', 'Therefore this schema should be taken just as a *"thought experiment"* on how', 'this *might be done*, by following the principles established in', '`ini2toml <https://ini2toml.readthedocs.io/en/latest/setuptools_pep621.html>`_.', 'It considers only ``setuptools`` `parameters', '<https://setuptools.pypa.io/en/latest/userguide/declarative_config.html>`_', 'that can currently be configured via ``setup.cfg`` and are not covered by :pep:`621`', 'but intentionally excludes ``dependency_links`` and ``setup_requires``.', 'NOTE: ``scripts`` was renamed to ``script-files`` to avoid confusion with', 'entry-point based scripts (defined in :pep:`621`).'], 'type': 'object', 'additionalProperties': False, 'properties': {'platforms': {'type': 'array', 'items': {'type': 'string'}}, 'provides': {'$$description': ['Package and virtual package names contained within this package', '**(not supported by pip)**'], 'type': 'array', 'items': {'type': 'string', 'format': 'pep508-identifier'}}, 'obsoletes': {'$$description': ['Packages which this package renders obsolete', '**(not supported by pip)**'], 'type': 'array', 'items': {'type': 'string', 'format': 'pep508-identifier'}}, 'zip-safe': {'description': 'Whether the project can be safely installed and run from a zip file.', 'type': 'boolean'}, 'script-files': {'description': 'Legacy way of defining scripts (entry-points are preferred).', 'type': 'array', 'items': {'type': 'string'}, '$comment': 'TODO: is this field deprecated/should be removed?'}, 'eager-resources': {'$$description': ['Resources that should be extracted together, if any of them is needed,', 'or if any C extensions included in the project are imported.'], 'type': 'array', 'items': {'type': 'string'}}, 'packages': {'$$description': ['Packages that should be included in the distribution.', 'It can be given either as a list of package identifiers', 'or as a ``dict``-like structure with a single key ``find``', 'which corresponds to a dynamic call to', '``setuptools.config.expand.find_packages`` function.', 'The ``find`` key is associated with a nested ``dict``-like structure that can', 'contain ``where``, ``include``, ``exclude`` and ``namespaces`` keys,', 'mimicking the keyword arguments of the associated function.'], 'oneOf': [{'title': 'Array of Python package identifiers', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}}, {'$ref': '#/definitions/find-directive'}]}, 'package-dir': {'$$description': [':class:`dict`-like structure mapping from package names to directories where their', 'code can be found.', 'The empty string (as key) means that all packages are contained inside', 'the given directory will be included in the distribution.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': ''}]}, 'patternProperties': {'^.*$': {'type': 'string'}}}, 'package-data': {'$$description': ['Mapping from package names to lists of glob patterns.', 'Usually this option is not needed when using ``include-package-data = true``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'include-package-data': {'$$description': ['Automatically include any data files inside the package directories', 'that are specified by ``MANIFEST.in``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'boolean'}, 'exclude-package-data': {'$$description': ['Mapping from package names to lists of glob patterns that should be excluded', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'namespace-packages': {'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}, '$comment': 'https://setuptools.pypa.io/en/latest/userguide/package_discovery.html'}, 'py-modules': {'description': 'Modules that setuptools will manipulate', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}, '$comment': 'TODO: clarify the relationship with ``packages``'}, 'data-files': {'$$description': ['**DEPRECATED**: dict-like structure where each key represents a directory and', 'the value is a list of glob patterns that should be installed in them.', "Please notice this don't work with wheels. See `data files support", '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_'], 'type': 'object', 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'cmdclass': {'$$description': ['Mapping of distutils-style command names to ``setuptools.Command`` subclasses', 'which in turn should be represented by strings with a qualified class name', '(i.e., "dotted" form with module), e.g.::\n\n', ' cmdclass = {mycmd = "pkg.subpkg.module.CommandClass"}\n\n', 'The command class should be a directly defined at the top-level of the', 'containing module (no class nesting).'], 'type': 'object', 'patternProperties': {'^.*$': {'type': 'string', 'format': 'python-qualified-identifier'}}}, 'license-files': {'type': 'array', 'items': {'type': 'string'}, '$$description': ['PROVISIONAL: List of glob patterns for all license files being distributed.', '(might become standard with PEP 639).'], 'default': ['LICEN[CS]E*', ' COPYING*', ' NOTICE*', 'AUTHORS*'], '$comment': 'TODO: revise if PEP 639 is accepted. Probably ``project.license-files``?'}, 'dynamic': {'type': 'object', 'description': 'Instructions for loading :pep:`621`-related metadata dynamically', 'additionalProperties': False, 'properties': {'version': {'$$description': ['A version dynamically loaded via either the ``attr:`` or ``file:``', 'directives. Please make sure the given file or attribute respects :pep:`440`.'], 'oneOf': [{'$ref': '#/definitions/attr-directive'}, {'$ref': '#/definitions/file-directive'}]}, 'classifiers': {'$ref': '#/definitions/file-directive'}, 'description': {'$ref': '#/definitions/file-directive'}, 'dependencies': {'$ref': '#/definitions/file-directive'}, 'entry-points': {'$ref': '#/definitions/file-directive'}, 'optional-dependencies': {'type': 'object', 'propertyNames': {'format': 'python-identifier'}, 'additionalProperties': False, 'patternProperties': {'.+': {'$ref': '#/definitions/file-directive'}}}, 'readme': {'anyOf': [{'$ref': '#/definitions/file-directive'}, {'properties': {'content-type': {'type': 'string'}}}], 'required': ['file']}}}}, 'definitions': {'file-directive': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'attr-directive': {'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, 'find-directive': {'$id': '#/definitions/find-directive', 'title': "'find:' directive", 'type': 'object', 'additionalProperties': False, 'properties': {'find': {'type': 'object', '$$description': ['Dynamic `package discovery', '<https://setuptools.pypa.io/en/latest/userguide/package_discovery.html>`_.'], 'additionalProperties': False, 'properties': {'where': {'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, 'exclude': {'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'include': {'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'namespaces': {'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}}}}}}}}}, rule='type')
89
- data__tool_is_dict = isinstance(data__tool, dict)
90
- if data__tool_is_dict:
91
- data__tool_keys = set(data__tool.keys())
92
- if "distutils" in data__tool_keys:
93
- data__tool_keys.remove("distutils")
94
- data__tool__distutils = data__tool["distutils"]
95
- validate_https___docs_python_org_3_install(data__tool__distutils, custom_formats, (name_prefix or "data") + ".tool.distutils")
96
- if "setuptools" in data__tool_keys:
97
- data__tool_keys.remove("setuptools")
98
- data__tool__setuptools = data__tool["setuptools"]
99
- validate_https___setuptools_pypa_io_en_latest_references_keywords_html(data__tool__setuptools, custom_formats, (name_prefix or "data") + ".tool.setuptools")
100
- if data_keys:
101
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must not contain "+str(data_keys)+" properties", value=data, name="" + (name_prefix or "data") + "", definition={'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://packaging.python.org/en/latest/specifications/declaring-build-dependencies/', 'title': 'Data structure for ``pyproject.toml`` files', '$$description': ['File format containing build-time configurations for the Python ecosystem. ', ':pep:`517` initially defined a build-system independent format for source trees', 'which was complemented by :pep:`518` to provide a way of specifying dependencies ', 'for building Python projects.', 'Please notice the ``project`` table (as initially defined in :pep:`621`) is not included', 'in this schema and should be considered separately.'], 'type': 'object', 'additionalProperties': False, 'properties': {'build-system': {'type': 'object', 'description': 'Table used to store build-related data', 'additionalProperties': False, 'properties': {'requires': {'type': 'array', '$$description': ['List of dependencies in the :pep:`508` format required to execute the build', 'system. Please notice that the resulting dependency graph', '**MUST NOT contain cycles**'], 'items': {'type': 'string'}}, 'build-backend': {'type': 'string', 'description': 'Python object that will be used to perform the build according to :pep:`517`', 'format': 'pep517-backend-reference'}, 'backend-path': {'type': 'array', '$$description': ['List of directories to be prepended to ``sys.path`` when loading the', 'back-end, and running its hooks'], 'items': {'type': 'string', '$comment': 'Should be a path (TODO: enforce it with format?)'}}}, 'required': ['requires']}, 'project': {'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://packaging.python.org/en/latest/specifications/declaring-project-metadata/', 'title': 'Package metadata stored in the ``project`` table', '$$description': ['Data structure for the **project** table inside ``pyproject.toml``', '(as initially defined in :pep:`621`)'], 'type': 'object', 'properties': {'name': {'type': 'string', 'description': 'The name (primary identifier) of the project. MUST be statically defined.', 'format': 'pep508-identifier'}, 'version': {'type': 'string', 'description': 'The version of the project as supported by :pep:`440`.', 'format': 'pep440'}, 'description': {'type': 'string', '$$description': ['The `summary description of the project', '<https://packaging.python.org/specifications/core-metadata/#summary>`_']}, 'readme': {'$$description': ['`Full/detailed description of the project in the form of a README', '<https://www.python.org/dev/peps/pep-0621/#readme>`_', "with meaning similar to the one defined in `core metadata's Description", '<https://packaging.python.org/specifications/core-metadata/#description>`_'], 'oneOf': [{'type': 'string', '$$description': ['Relative path to a text file (UTF-8) containing the full description', 'of the project. If the file path ends in case-insensitive ``.md`` or', '``.rst`` suffixes, then the content-type is respectively', '``text/markdown`` or ``text/x-rst``']}, {'type': 'object', 'allOf': [{'anyOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to a text file containing the full description', 'of the project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', 'description': 'Full text describing the project.'}}, 'required': ['text']}]}, {'properties': {'content-type': {'type': 'string', '$$description': ['Content-type (:rfc:`1341`) of the full description', '(e.g. ``text/markdown``). The ``charset`` parameter is assumed', 'UTF-8 when not present.'], '$comment': 'TODO: add regex pattern or format?'}}, 'required': ['content-type']}]}]}, 'requires-python': {'type': 'string', 'format': 'pep508-versionspec', '$$description': ['`The Python version requirements of the project', '<https://packaging.python.org/specifications/core-metadata/#requires-python>`_.']}, 'license': {'description': '`Project license <https://www.python.org/dev/peps/pep-0621/#license>`_.', 'oneOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to the file (UTF-8) which contains the license for the', 'project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', '$$description': ['The license of the project whose meaning is that of the', '`License field from the core metadata', '<https://packaging.python.org/specifications/core-metadata/#license>`_.']}}, 'required': ['text']}]}, 'authors': {'type': 'array', 'items': {'$ref': '#/definitions/author'}, '$$description': ["The people or organizations considered to be the 'authors' of the project.", 'The exact meaning is open to interpretation (e.g. original or primary authors,', 'current maintainers, or owners of the package).']}, 'maintainers': {'type': 'array', 'items': {'$ref': '#/definitions/author'}, '$$description': ["The people or organizations considered to be the 'maintainers' of the project.", 'Similarly to ``authors``, the exact meaning is open to interpretation.']}, 'keywords': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of keywords to assist searching for the distribution in a larger catalog.'}, 'classifiers': {'type': 'array', 'items': {'type': 'string', 'format': 'trove-classifier', 'description': '`PyPI classifier <https://pypi.org/classifiers/>`_.'}, '$$description': ['`Trove classifiers <https://pypi.org/classifiers/>`_', 'which apply to the project.']}, 'urls': {'type': 'object', 'description': 'URLs associated with the project in the form ``label => value``.', 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', 'format': 'url'}}}, 'scripts': {'$ref': '#/definitions/entry-point-group', '$$description': ['Instruct the installer to create command-line wrappers for the given', '`entry points <https://packaging.python.org/specifications/entry-points/>`_.']}, 'gui-scripts': {'$ref': '#/definitions/entry-point-group', '$$description': ['Instruct the installer to create GUI wrappers for the given', '`entry points <https://packaging.python.org/specifications/entry-points/>`_.', 'The difference between ``scripts`` and ``gui-scripts`` is only relevant in', 'Windows.']}, 'entry-points': {'$$description': ['Instruct the installer to expose the given modules/functions via', '``entry-point`` discovery mechanism (useful for plugins).', 'More information available in the `Python packaging guide', '<https://packaging.python.org/specifications/entry-points/>`_.'], 'propertyNames': {'format': 'python-entrypoint-group'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'$ref': '#/definitions/entry-point-group'}}}, 'dependencies': {'type': 'array', 'description': 'Project (mandatory) dependencies.', 'items': {'$ref': '#/definitions/dependency'}}, 'optional-dependencies': {'type': 'object', 'description': 'Optional dependency for the project', 'propertyNames': {'format': 'pep508-identifier'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'array', 'items': {'$ref': '#/definitions/dependency'}}}}, 'dynamic': {'type': 'array', '$$description': ['Specifies which fields are intentionally unspecified and expected to be', 'dynamically provided by build tools'], 'items': {'enum': ['version', 'description', 'readme', 'requires-python', 'license', 'authors', 'maintainers', 'keywords', 'classifiers', 'urls', 'scripts', 'gui-scripts', 'entry-points', 'dependencies', 'optional-dependencies']}}}, 'required': ['name'], 'additionalProperties': False, 'if': {'not': {'required': ['dynamic'], 'properties': {'dynamic': {'contains': {'const': 'version'}, '$$description': ['version is listed in ``dynamic``']}}}, '$$comment': ['According to :pep:`621`:', ' If the core metadata specification lists a field as "Required", then', ' the metadata MUST specify the field statically or list it in dynamic', 'In turn, `core metadata`_ defines:', ' The required fields are: Metadata-Version, Name, Version.', ' All the other fields are optional.', 'Since ``Metadata-Version`` is defined by the build back-end, ``name`` and', '``version`` are the only mandatory information in ``pyproject.toml``.', '.. _core metadata: https://packaging.python.org/specifications/core-metadata/']}, 'then': {'required': ['version'], '$$description': ['version should be statically defined in the ``version`` field']}, 'definitions': {'author': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, 'entry-point-group': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'dependency': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}, 'tool': {'type': 'object', 'properties': {'distutils': {'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://docs.python.org/3/install/', 'title': '``tool.distutils`` table', '$$description': ['Originally, ``distutils`` allowed developers to configure arguments for', '``setup.py`` scripts via `distutils configuration files', '<https://docs.python.org/3/install/#distutils-configuration-files>`_.', '``tool.distutils`` subtables could be used with the same purpose', '(NOT CURRENTLY IMPLEMENTED).'], 'type': 'object', 'properties': {'global': {'type': 'object', 'description': 'Global options applied to all ``distutils`` commands'}}, 'patternProperties': {'.+': {'type': 'object'}}, '$comment': 'TODO: Is there a practical way of making this schema more specific?'}, 'setuptools': {'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://setuptools.pypa.io/en/latest/references/keywords.html', 'title': '``tool.setuptools`` table', '$$description': ['Please notice for the time being the ``setuptools`` project does not specify', 'a way of configuring builds via ``pyproject.toml``.', 'Therefore this schema should be taken just as a *"thought experiment"* on how', 'this *might be done*, by following the principles established in', '`ini2toml <https://ini2toml.readthedocs.io/en/latest/setuptools_pep621.html>`_.', 'It considers only ``setuptools`` `parameters', '<https://setuptools.pypa.io/en/latest/userguide/declarative_config.html>`_', 'that can currently be configured via ``setup.cfg`` and are not covered by :pep:`621`', 'but intentionally excludes ``dependency_links`` and ``setup_requires``.', 'NOTE: ``scripts`` was renamed to ``script-files`` to avoid confusion with', 'entry-point based scripts (defined in :pep:`621`).'], 'type': 'object', 'additionalProperties': False, 'properties': {'platforms': {'type': 'array', 'items': {'type': 'string'}}, 'provides': {'$$description': ['Package and virtual package names contained within this package', '**(not supported by pip)**'], 'type': 'array', 'items': {'type': 'string', 'format': 'pep508-identifier'}}, 'obsoletes': {'$$description': ['Packages which this package renders obsolete', '**(not supported by pip)**'], 'type': 'array', 'items': {'type': 'string', 'format': 'pep508-identifier'}}, 'zip-safe': {'description': 'Whether the project can be safely installed and run from a zip file.', 'type': 'boolean'}, 'script-files': {'description': 'Legacy way of defining scripts (entry-points are preferred).', 'type': 'array', 'items': {'type': 'string'}, '$comment': 'TODO: is this field deprecated/should be removed?'}, 'eager-resources': {'$$description': ['Resources that should be extracted together, if any of them is needed,', 'or if any C extensions included in the project are imported.'], 'type': 'array', 'items': {'type': 'string'}}, 'packages': {'$$description': ['Packages that should be included in the distribution.', 'It can be given either as a list of package identifiers', 'or as a ``dict``-like structure with a single key ``find``', 'which corresponds to a dynamic call to', '``setuptools.config.expand.find_packages`` function.', 'The ``find`` key is associated with a nested ``dict``-like structure that can', 'contain ``where``, ``include``, ``exclude`` and ``namespaces`` keys,', 'mimicking the keyword arguments of the associated function.'], 'oneOf': [{'title': 'Array of Python package identifiers', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}}, {'$ref': '#/definitions/find-directive'}]}, 'package-dir': {'$$description': [':class:`dict`-like structure mapping from package names to directories where their', 'code can be found.', 'The empty string (as key) means that all packages are contained inside', 'the given directory will be included in the distribution.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': ''}]}, 'patternProperties': {'^.*$': {'type': 'string'}}}, 'package-data': {'$$description': ['Mapping from package names to lists of glob patterns.', 'Usually this option is not needed when using ``include-package-data = true``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'include-package-data': {'$$description': ['Automatically include any data files inside the package directories', 'that are specified by ``MANIFEST.in``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'boolean'}, 'exclude-package-data': {'$$description': ['Mapping from package names to lists of glob patterns that should be excluded', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'namespace-packages': {'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}, '$comment': 'https://setuptools.pypa.io/en/latest/userguide/package_discovery.html'}, 'py-modules': {'description': 'Modules that setuptools will manipulate', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}, '$comment': 'TODO: clarify the relationship with ``packages``'}, 'data-files': {'$$description': ['**DEPRECATED**: dict-like structure where each key represents a directory and', 'the value is a list of glob patterns that should be installed in them.', "Please notice this don't work with wheels. See `data files support", '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_'], 'type': 'object', 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'cmdclass': {'$$description': ['Mapping of distutils-style command names to ``setuptools.Command`` subclasses', 'which in turn should be represented by strings with a qualified class name', '(i.e., "dotted" form with module), e.g.::\n\n', ' cmdclass = {mycmd = "pkg.subpkg.module.CommandClass"}\n\n', 'The command class should be a directly defined at the top-level of the', 'containing module (no class nesting).'], 'type': 'object', 'patternProperties': {'^.*$': {'type': 'string', 'format': 'python-qualified-identifier'}}}, 'license-files': {'type': 'array', 'items': {'type': 'string'}, '$$description': ['PROVISIONAL: List of glob patterns for all license files being distributed.', '(might become standard with PEP 639).'], 'default': ['LICEN[CS]E*', ' COPYING*', ' NOTICE*', 'AUTHORS*'], '$comment': 'TODO: revise if PEP 639 is accepted. Probably ``project.license-files``?'}, 'dynamic': {'type': 'object', 'description': 'Instructions for loading :pep:`621`-related metadata dynamically', 'additionalProperties': False, 'properties': {'version': {'$$description': ['A version dynamically loaded via either the ``attr:`` or ``file:``', 'directives. Please make sure the given file or attribute respects :pep:`440`.'], 'oneOf': [{'$ref': '#/definitions/attr-directive'}, {'$ref': '#/definitions/file-directive'}]}, 'classifiers': {'$ref': '#/definitions/file-directive'}, 'description': {'$ref': '#/definitions/file-directive'}, 'dependencies': {'$ref': '#/definitions/file-directive'}, 'entry-points': {'$ref': '#/definitions/file-directive'}, 'optional-dependencies': {'type': 'object', 'propertyNames': {'format': 'python-identifier'}, 'additionalProperties': False, 'patternProperties': {'.+': {'$ref': '#/definitions/file-directive'}}}, 'readme': {'anyOf': [{'$ref': '#/definitions/file-directive'}, {'properties': {'content-type': {'type': 'string'}}}], 'required': ['file']}}}}, 'definitions': {'file-directive': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'attr-directive': {'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, 'find-directive': {'$id': '#/definitions/find-directive', 'title': "'find:' directive", 'type': 'object', 'additionalProperties': False, 'properties': {'find': {'type': 'object', '$$description': ['Dynamic `package discovery', '<https://setuptools.pypa.io/en/latest/userguide/package_discovery.html>`_.'], 'additionalProperties': False, 'properties': {'where': {'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, 'exclude': {'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'include': {'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'namespaces': {'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}}}}}}}}}}, 'project': {'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://packaging.python.org/en/latest/specifications/declaring-project-metadata/', 'title': 'Package metadata stored in the ``project`` table', '$$description': ['Data structure for the **project** table inside ``pyproject.toml``', '(as initially defined in :pep:`621`)'], 'type': 'object', 'properties': {'name': {'type': 'string', 'description': 'The name (primary identifier) of the project. MUST be statically defined.', 'format': 'pep508-identifier'}, 'version': {'type': 'string', 'description': 'The version of the project as supported by :pep:`440`.', 'format': 'pep440'}, 'description': {'type': 'string', '$$description': ['The `summary description of the project', '<https://packaging.python.org/specifications/core-metadata/#summary>`_']}, 'readme': {'$$description': ['`Full/detailed description of the project in the form of a README', '<https://www.python.org/dev/peps/pep-0621/#readme>`_', "with meaning similar to the one defined in `core metadata's Description", '<https://packaging.python.org/specifications/core-metadata/#description>`_'], 'oneOf': [{'type': 'string', '$$description': ['Relative path to a text file (UTF-8) containing the full description', 'of the project. If the file path ends in case-insensitive ``.md`` or', '``.rst`` suffixes, then the content-type is respectively', '``text/markdown`` or ``text/x-rst``']}, {'type': 'object', 'allOf': [{'anyOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to a text file containing the full description', 'of the project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', 'description': 'Full text describing the project.'}}, 'required': ['text']}]}, {'properties': {'content-type': {'type': 'string', '$$description': ['Content-type (:rfc:`1341`) of the full description', '(e.g. ``text/markdown``). The ``charset`` parameter is assumed', 'UTF-8 when not present.'], '$comment': 'TODO: add regex pattern or format?'}}, 'required': ['content-type']}]}]}, 'requires-python': {'type': 'string', 'format': 'pep508-versionspec', '$$description': ['`The Python version requirements of the project', '<https://packaging.python.org/specifications/core-metadata/#requires-python>`_.']}, 'license': {'description': '`Project license <https://www.python.org/dev/peps/pep-0621/#license>`_.', 'oneOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to the file (UTF-8) which contains the license for the', 'project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', '$$description': ['The license of the project whose meaning is that of the', '`License field from the core metadata', '<https://packaging.python.org/specifications/core-metadata/#license>`_.']}}, 'required': ['text']}]}, 'authors': {'type': 'array', 'items': {'$ref': '#/definitions/author'}, '$$description': ["The people or organizations considered to be the 'authors' of the project.", 'The exact meaning is open to interpretation (e.g. original or primary authors,', 'current maintainers, or owners of the package).']}, 'maintainers': {'type': 'array', 'items': {'$ref': '#/definitions/author'}, '$$description': ["The people or organizations considered to be the 'maintainers' of the project.", 'Similarly to ``authors``, the exact meaning is open to interpretation.']}, 'keywords': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of keywords to assist searching for the distribution in a larger catalog.'}, 'classifiers': {'type': 'array', 'items': {'type': 'string', 'format': 'trove-classifier', 'description': '`PyPI classifier <https://pypi.org/classifiers/>`_.'}, '$$description': ['`Trove classifiers <https://pypi.org/classifiers/>`_', 'which apply to the project.']}, 'urls': {'type': 'object', 'description': 'URLs associated with the project in the form ``label => value``.', 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', 'format': 'url'}}}, 'scripts': {'$ref': '#/definitions/entry-point-group', '$$description': ['Instruct the installer to create command-line wrappers for the given', '`entry points <https://packaging.python.org/specifications/entry-points/>`_.']}, 'gui-scripts': {'$ref': '#/definitions/entry-point-group', '$$description': ['Instruct the installer to create GUI wrappers for the given', '`entry points <https://packaging.python.org/specifications/entry-points/>`_.', 'The difference between ``scripts`` and ``gui-scripts`` is only relevant in', 'Windows.']}, 'entry-points': {'$$description': ['Instruct the installer to expose the given modules/functions via', '``entry-point`` discovery mechanism (useful for plugins).', 'More information available in the `Python packaging guide', '<https://packaging.python.org/specifications/entry-points/>`_.'], 'propertyNames': {'format': 'python-entrypoint-group'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'$ref': '#/definitions/entry-point-group'}}}, 'dependencies': {'type': 'array', 'description': 'Project (mandatory) dependencies.', 'items': {'$ref': '#/definitions/dependency'}}, 'optional-dependencies': {'type': 'object', 'description': 'Optional dependency for the project', 'propertyNames': {'format': 'pep508-identifier'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'array', 'items': {'$ref': '#/definitions/dependency'}}}}, 'dynamic': {'type': 'array', '$$description': ['Specifies which fields are intentionally unspecified and expected to be', 'dynamically provided by build tools'], 'items': {'enum': ['version', 'description', 'readme', 'requires-python', 'license', 'authors', 'maintainers', 'keywords', 'classifiers', 'urls', 'scripts', 'gui-scripts', 'entry-points', 'dependencies', 'optional-dependencies']}}}, 'required': ['name'], 'additionalProperties': False, 'if': {'not': {'required': ['dynamic'], 'properties': {'dynamic': {'contains': {'const': 'version'}, '$$description': ['version is listed in ``dynamic``']}}}, '$$comment': ['According to :pep:`621`:', ' If the core metadata specification lists a field as "Required", then', ' the metadata MUST specify the field statically or list it in dynamic', 'In turn, `core metadata`_ defines:', ' The required fields are: Metadata-Version, Name, Version.', ' All the other fields are optional.', 'Since ``Metadata-Version`` is defined by the build back-end, ``name`` and', '``version`` are the only mandatory information in ``pyproject.toml``.', '.. _core metadata: https://packaging.python.org/specifications/core-metadata/']}, 'then': {'required': ['version'], '$$description': ['version should be statically defined in the ``version`` field']}, 'definitions': {'author': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, 'entry-point-group': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'dependency': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}}, rule='additionalProperties')
102
- return data
103
-
104
- def validate_https___setuptools_pypa_io_en_latest_references_keywords_html(data, custom_formats={}, name_prefix=None):
105
- if not isinstance(data, (dict)):
106
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be object", value=data, name="" + (name_prefix or "data") + "", definition={'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://setuptools.pypa.io/en/latest/references/keywords.html', 'title': '``tool.setuptools`` table', '$$description': ['Please notice for the time being the ``setuptools`` project does not specify', 'a way of configuring builds via ``pyproject.toml``.', 'Therefore this schema should be taken just as a *"thought experiment"* on how', 'this *might be done*, by following the principles established in', '`ini2toml <https://ini2toml.readthedocs.io/en/latest/setuptools_pep621.html>`_.', 'It considers only ``setuptools`` `parameters', '<https://setuptools.pypa.io/en/latest/userguide/declarative_config.html>`_', 'that can currently be configured via ``setup.cfg`` and are not covered by :pep:`621`', 'but intentionally excludes ``dependency_links`` and ``setup_requires``.', 'NOTE: ``scripts`` was renamed to ``script-files`` to avoid confusion with', 'entry-point based scripts (defined in :pep:`621`).'], 'type': 'object', 'additionalProperties': False, 'properties': {'platforms': {'type': 'array', 'items': {'type': 'string'}}, 'provides': {'$$description': ['Package and virtual package names contained within this package', '**(not supported by pip)**'], 'type': 'array', 'items': {'type': 'string', 'format': 'pep508-identifier'}}, 'obsoletes': {'$$description': ['Packages which this package renders obsolete', '**(not supported by pip)**'], 'type': 'array', 'items': {'type': 'string', 'format': 'pep508-identifier'}}, 'zip-safe': {'description': 'Whether the project can be safely installed and run from a zip file.', 'type': 'boolean'}, 'script-files': {'description': 'Legacy way of defining scripts (entry-points are preferred).', 'type': 'array', 'items': {'type': 'string'}, '$comment': 'TODO: is this field deprecated/should be removed?'}, 'eager-resources': {'$$description': ['Resources that should be extracted together, if any of them is needed,', 'or if any C extensions included in the project are imported.'], 'type': 'array', 'items': {'type': 'string'}}, 'packages': {'$$description': ['Packages that should be included in the distribution.', 'It can be given either as a list of package identifiers', 'or as a ``dict``-like structure with a single key ``find``', 'which corresponds to a dynamic call to', '``setuptools.config.expand.find_packages`` function.', 'The ``find`` key is associated with a nested ``dict``-like structure that can', 'contain ``where``, ``include``, ``exclude`` and ``namespaces`` keys,', 'mimicking the keyword arguments of the associated function.'], 'oneOf': [{'title': 'Array of Python package identifiers', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}}, {'$id': '#/definitions/find-directive', 'title': "'find:' directive", 'type': 'object', 'additionalProperties': False, 'properties': {'find': {'type': 'object', '$$description': ['Dynamic `package discovery', '<https://setuptools.pypa.io/en/latest/userguide/package_discovery.html>`_.'], 'additionalProperties': False, 'properties': {'where': {'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, 'exclude': {'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'include': {'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'namespaces': {'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}}}}}]}, 'package-dir': {'$$description': [':class:`dict`-like structure mapping from package names to directories where their', 'code can be found.', 'The empty string (as key) means that all packages are contained inside', 'the given directory will be included in the distribution.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': ''}]}, 'patternProperties': {'^.*$': {'type': 'string'}}}, 'package-data': {'$$description': ['Mapping from package names to lists of glob patterns.', 'Usually this option is not needed when using ``include-package-data = true``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'include-package-data': {'$$description': ['Automatically include any data files inside the package directories', 'that are specified by ``MANIFEST.in``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'boolean'}, 'exclude-package-data': {'$$description': ['Mapping from package names to lists of glob patterns that should be excluded', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'namespace-packages': {'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}, '$comment': 'https://setuptools.pypa.io/en/latest/userguide/package_discovery.html'}, 'py-modules': {'description': 'Modules that setuptools will manipulate', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}, '$comment': 'TODO: clarify the relationship with ``packages``'}, 'data-files': {'$$description': ['**DEPRECATED**: dict-like structure where each key represents a directory and', 'the value is a list of glob patterns that should be installed in them.', "Please notice this don't work with wheels. See `data files support", '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_'], 'type': 'object', 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'cmdclass': {'$$description': ['Mapping of distutils-style command names to ``setuptools.Command`` subclasses', 'which in turn should be represented by strings with a qualified class name', '(i.e., "dotted" form with module), e.g.::\n\n', ' cmdclass = {mycmd = "pkg.subpkg.module.CommandClass"}\n\n', 'The command class should be a directly defined at the top-level of the', 'containing module (no class nesting).'], 'type': 'object', 'patternProperties': {'^.*$': {'type': 'string', 'format': 'python-qualified-identifier'}}}, 'license-files': {'type': 'array', 'items': {'type': 'string'}, '$$description': ['PROVISIONAL: List of glob patterns for all license files being distributed.', '(might become standard with PEP 639).'], 'default': ['LICEN[CS]E*', ' COPYING*', ' NOTICE*', 'AUTHORS*'], '$comment': 'TODO: revise if PEP 639 is accepted. Probably ``project.license-files``?'}, 'dynamic': {'type': 'object', 'description': 'Instructions for loading :pep:`621`-related metadata dynamically', 'additionalProperties': False, 'properties': {'version': {'$$description': ['A version dynamically loaded via either the ``attr:`` or ``file:``', 'directives. Please make sure the given file or attribute respects :pep:`440`.'], 'oneOf': [{'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}]}, 'classifiers': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'description': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'dependencies': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'entry-points': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'optional-dependencies': {'type': 'object', 'propertyNames': {'format': 'python-identifier'}, 'additionalProperties': False, 'patternProperties': {'.+': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}}}, 'readme': {'anyOf': [{'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, {'properties': {'content-type': {'type': 'string'}}}], 'required': ['file']}}}}, 'definitions': {'file-directive': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'attr-directive': {'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, 'find-directive': {'$id': '#/definitions/find-directive', 'title': "'find:' directive", 'type': 'object', 'additionalProperties': False, 'properties': {'find': {'type': 'object', '$$description': ['Dynamic `package discovery', '<https://setuptools.pypa.io/en/latest/userguide/package_discovery.html>`_.'], 'additionalProperties': False, 'properties': {'where': {'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, 'exclude': {'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'include': {'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'namespaces': {'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}}}}}}}, rule='type')
107
- data_is_dict = isinstance(data, dict)
108
- if data_is_dict:
109
- data_keys = set(data.keys())
110
- if "platforms" in data_keys:
111
- data_keys.remove("platforms")
112
- data__platforms = data["platforms"]
113
- if not isinstance(data__platforms, (list, tuple)):
114
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".platforms must be array", value=data__platforms, name="" + (name_prefix or "data") + ".platforms", definition={'type': 'array', 'items': {'type': 'string'}}, rule='type')
115
- data__platforms_is_list = isinstance(data__platforms, (list, tuple))
116
- if data__platforms_is_list:
117
- data__platforms_len = len(data__platforms)
118
- for data__platforms_x, data__platforms_item in enumerate(data__platforms):
119
- if not isinstance(data__platforms_item, (str)):
120
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".platforms[{data__platforms_x}]".format(**locals()) + " must be string", value=data__platforms_item, name="" + (name_prefix or "data") + ".platforms[{data__platforms_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
121
- if "provides" in data_keys:
122
- data_keys.remove("provides")
123
- data__provides = data["provides"]
124
- if not isinstance(data__provides, (list, tuple)):
125
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".provides must be array", value=data__provides, name="" + (name_prefix or "data") + ".provides", definition={'$$description': ['Package and virtual package names contained within this package', '**(not supported by pip)**'], 'type': 'array', 'items': {'type': 'string', 'format': 'pep508-identifier'}}, rule='type')
126
- data__provides_is_list = isinstance(data__provides, (list, tuple))
127
- if data__provides_is_list:
128
- data__provides_len = len(data__provides)
129
- for data__provides_x, data__provides_item in enumerate(data__provides):
130
- if not isinstance(data__provides_item, (str)):
131
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".provides[{data__provides_x}]".format(**locals()) + " must be string", value=data__provides_item, name="" + (name_prefix or "data") + ".provides[{data__provides_x}]".format(**locals()) + "", definition={'type': 'string', 'format': 'pep508-identifier'}, rule='type')
132
- if isinstance(data__provides_item, str):
133
- if not custom_formats["pep508-identifier"](data__provides_item):
134
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".provides[{data__provides_x}]".format(**locals()) + " must be pep508-identifier", value=data__provides_item, name="" + (name_prefix or "data") + ".provides[{data__provides_x}]".format(**locals()) + "", definition={'type': 'string', 'format': 'pep508-identifier'}, rule='format')
135
- if "obsoletes" in data_keys:
136
- data_keys.remove("obsoletes")
137
- data__obsoletes = data["obsoletes"]
138
- if not isinstance(data__obsoletes, (list, tuple)):
139
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".obsoletes must be array", value=data__obsoletes, name="" + (name_prefix or "data") + ".obsoletes", definition={'$$description': ['Packages which this package renders obsolete', '**(not supported by pip)**'], 'type': 'array', 'items': {'type': 'string', 'format': 'pep508-identifier'}}, rule='type')
140
- data__obsoletes_is_list = isinstance(data__obsoletes, (list, tuple))
141
- if data__obsoletes_is_list:
142
- data__obsoletes_len = len(data__obsoletes)
143
- for data__obsoletes_x, data__obsoletes_item in enumerate(data__obsoletes):
144
- if not isinstance(data__obsoletes_item, (str)):
145
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".obsoletes[{data__obsoletes_x}]".format(**locals()) + " must be string", value=data__obsoletes_item, name="" + (name_prefix or "data") + ".obsoletes[{data__obsoletes_x}]".format(**locals()) + "", definition={'type': 'string', 'format': 'pep508-identifier'}, rule='type')
146
- if isinstance(data__obsoletes_item, str):
147
- if not custom_formats["pep508-identifier"](data__obsoletes_item):
148
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".obsoletes[{data__obsoletes_x}]".format(**locals()) + " must be pep508-identifier", value=data__obsoletes_item, name="" + (name_prefix or "data") + ".obsoletes[{data__obsoletes_x}]".format(**locals()) + "", definition={'type': 'string', 'format': 'pep508-identifier'}, rule='format')
149
- if "zip-safe" in data_keys:
150
- data_keys.remove("zip-safe")
151
- data__zipsafe = data["zip-safe"]
152
- if not isinstance(data__zipsafe, (bool)):
153
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".zip-safe must be boolean", value=data__zipsafe, name="" + (name_prefix or "data") + ".zip-safe", definition={'description': 'Whether the project can be safely installed and run from a zip file.', 'type': 'boolean'}, rule='type')
154
- if "script-files" in data_keys:
155
- data_keys.remove("script-files")
156
- data__scriptfiles = data["script-files"]
157
- if not isinstance(data__scriptfiles, (list, tuple)):
158
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".script-files must be array", value=data__scriptfiles, name="" + (name_prefix or "data") + ".script-files", definition={'description': 'Legacy way of defining scripts (entry-points are preferred).', 'type': 'array', 'items': {'type': 'string'}, '$comment': 'TODO: is this field deprecated/should be removed?'}, rule='type')
159
- data__scriptfiles_is_list = isinstance(data__scriptfiles, (list, tuple))
160
- if data__scriptfiles_is_list:
161
- data__scriptfiles_len = len(data__scriptfiles)
162
- for data__scriptfiles_x, data__scriptfiles_item in enumerate(data__scriptfiles):
163
- if not isinstance(data__scriptfiles_item, (str)):
164
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".script-files[{data__scriptfiles_x}]".format(**locals()) + " must be string", value=data__scriptfiles_item, name="" + (name_prefix or "data") + ".script-files[{data__scriptfiles_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
165
- if "eager-resources" in data_keys:
166
- data_keys.remove("eager-resources")
167
- data__eagerresources = data["eager-resources"]
168
- if not isinstance(data__eagerresources, (list, tuple)):
169
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".eager-resources must be array", value=data__eagerresources, name="" + (name_prefix or "data") + ".eager-resources", definition={'$$description': ['Resources that should be extracted together, if any of them is needed,', 'or if any C extensions included in the project are imported.'], 'type': 'array', 'items': {'type': 'string'}}, rule='type')
170
- data__eagerresources_is_list = isinstance(data__eagerresources, (list, tuple))
171
- if data__eagerresources_is_list:
172
- data__eagerresources_len = len(data__eagerresources)
173
- for data__eagerresources_x, data__eagerresources_item in enumerate(data__eagerresources):
174
- if not isinstance(data__eagerresources_item, (str)):
175
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".eager-resources[{data__eagerresources_x}]".format(**locals()) + " must be string", value=data__eagerresources_item, name="" + (name_prefix or "data") + ".eager-resources[{data__eagerresources_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
176
- if "packages" in data_keys:
177
- data_keys.remove("packages")
178
- data__packages = data["packages"]
179
- data__packages_one_of_count1 = 0
180
- if data__packages_one_of_count1 < 2:
181
- try:
182
- if not isinstance(data__packages, (list, tuple)):
183
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".packages must be array", value=data__packages, name="" + (name_prefix or "data") + ".packages", definition={'title': 'Array of Python package identifiers', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}}, rule='type')
184
- data__packages_is_list = isinstance(data__packages, (list, tuple))
185
- if data__packages_is_list:
186
- data__packages_len = len(data__packages)
187
- for data__packages_x, data__packages_item in enumerate(data__packages):
188
- if not isinstance(data__packages_item, (str)):
189
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".packages[{data__packages_x}]".format(**locals()) + " must be string", value=data__packages_item, name="" + (name_prefix or "data") + ".packages[{data__packages_x}]".format(**locals()) + "", definition={'type': 'string', 'format': 'python-module-name'}, rule='type')
190
- if isinstance(data__packages_item, str):
191
- if not custom_formats["python-module-name"](data__packages_item):
192
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".packages[{data__packages_x}]".format(**locals()) + " must be python-module-name", value=data__packages_item, name="" + (name_prefix or "data") + ".packages[{data__packages_x}]".format(**locals()) + "", definition={'type': 'string', 'format': 'python-module-name'}, rule='format')
193
- data__packages_one_of_count1 += 1
194
- except JsonSchemaValueException: pass
195
- if data__packages_one_of_count1 < 2:
196
- try:
197
- validate_https___setuptools_pypa_io_en_latest_references_keywords_html__definitions_find_directive(data__packages, custom_formats, (name_prefix or "data") + ".packages")
198
- data__packages_one_of_count1 += 1
199
- except JsonSchemaValueException: pass
200
- if data__packages_one_of_count1 != 1:
201
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".packages must be valid exactly by one definition" + (" (" + str(data__packages_one_of_count1) + " matches found)"), value=data__packages, name="" + (name_prefix or "data") + ".packages", definition={'$$description': ['Packages that should be included in the distribution.', 'It can be given either as a list of package identifiers', 'or as a ``dict``-like structure with a single key ``find``', 'which corresponds to a dynamic call to', '``setuptools.config.expand.find_packages`` function.', 'The ``find`` key is associated with a nested ``dict``-like structure that can', 'contain ``where``, ``include``, ``exclude`` and ``namespaces`` keys,', 'mimicking the keyword arguments of the associated function.'], 'oneOf': [{'title': 'Array of Python package identifiers', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}}, {'$id': '#/definitions/find-directive', 'title': "'find:' directive", 'type': 'object', 'additionalProperties': False, 'properties': {'find': {'type': 'object', '$$description': ['Dynamic `package discovery', '<https://setuptools.pypa.io/en/latest/userguide/package_discovery.html>`_.'], 'additionalProperties': False, 'properties': {'where': {'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, 'exclude': {'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'include': {'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'namespaces': {'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}}}}}]}, rule='oneOf')
202
- if "package-dir" in data_keys:
203
- data_keys.remove("package-dir")
204
- data__packagedir = data["package-dir"]
205
- if not isinstance(data__packagedir, (dict)):
206
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-dir must be object", value=data__packagedir, name="" + (name_prefix or "data") + ".package-dir", definition={'$$description': [':class:`dict`-like structure mapping from package names to directories where their', 'code can be found.', 'The empty string (as key) means that all packages are contained inside', 'the given directory will be included in the distribution.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': ''}]}, 'patternProperties': {'^.*$': {'type': 'string'}}}, rule='type')
207
- data__packagedir_is_dict = isinstance(data__packagedir, dict)
208
- if data__packagedir_is_dict:
209
- data__packagedir_keys = set(data__packagedir.keys())
210
- for data__packagedir_key, data__packagedir_val in data__packagedir.items():
211
- if REGEX_PATTERNS['^.*$'].search(data__packagedir_key):
212
- if data__packagedir_key in data__packagedir_keys:
213
- data__packagedir_keys.remove(data__packagedir_key)
214
- if not isinstance(data__packagedir_val, (str)):
215
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-dir.{data__packagedir_key}".format(**locals()) + " must be string", value=data__packagedir_val, name="" + (name_prefix or "data") + ".package-dir.{data__packagedir_key}".format(**locals()) + "", definition={'type': 'string'}, rule='type')
216
- if data__packagedir_keys:
217
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-dir must not contain "+str(data__packagedir_keys)+" properties", value=data__packagedir, name="" + (name_prefix or "data") + ".package-dir", definition={'$$description': [':class:`dict`-like structure mapping from package names to directories where their', 'code can be found.', 'The empty string (as key) means that all packages are contained inside', 'the given directory will be included in the distribution.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': ''}]}, 'patternProperties': {'^.*$': {'type': 'string'}}}, rule='additionalProperties')
218
- data__packagedir_len = len(data__packagedir)
219
- if data__packagedir_len != 0:
220
- data__packagedir_property_names = True
221
- for data__packagedir_key in data__packagedir:
222
- try:
223
- data__packagedir_key_one_of_count2 = 0
224
- if data__packagedir_key_one_of_count2 < 2:
225
- try:
226
- if isinstance(data__packagedir_key, str):
227
- if not custom_formats["python-module-name"](data__packagedir_key):
228
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-dir must be python-module-name", value=data__packagedir_key, name="" + (name_prefix or "data") + ".package-dir", definition={'format': 'python-module-name'}, rule='format')
229
- data__packagedir_key_one_of_count2 += 1
230
- except JsonSchemaValueException: pass
231
- if data__packagedir_key_one_of_count2 < 2:
232
- try:
233
- if data__packagedir_key != "":
234
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-dir must be same as const definition: ", value=data__packagedir_key, name="" + (name_prefix or "data") + ".package-dir", definition={'const': ''}, rule='const')
235
- data__packagedir_key_one_of_count2 += 1
236
- except JsonSchemaValueException: pass
237
- if data__packagedir_key_one_of_count2 != 1:
238
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-dir must be valid exactly by one definition" + (" (" + str(data__packagedir_key_one_of_count2) + " matches found)"), value=data__packagedir_key, name="" + (name_prefix or "data") + ".package-dir", definition={'oneOf': [{'format': 'python-module-name'}, {'const': ''}]}, rule='oneOf')
239
- except JsonSchemaValueException:
240
- data__packagedir_property_names = False
241
- if not data__packagedir_property_names:
242
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-dir must be named by propertyName definition", value=data__packagedir, name="" + (name_prefix or "data") + ".package-dir", definition={'$$description': [':class:`dict`-like structure mapping from package names to directories where their', 'code can be found.', 'The empty string (as key) means that all packages are contained inside', 'the given directory will be included in the distribution.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': ''}]}, 'patternProperties': {'^.*$': {'type': 'string'}}}, rule='propertyNames')
243
- if "package-data" in data_keys:
244
- data_keys.remove("package-data")
245
- data__packagedata = data["package-data"]
246
- if not isinstance(data__packagedata, (dict)):
247
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-data must be object", value=data__packagedata, name="" + (name_prefix or "data") + ".package-data", definition={'$$description': ['Mapping from package names to lists of glob patterns.', 'Usually this option is not needed when using ``include-package-data = true``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, rule='type')
248
- data__packagedata_is_dict = isinstance(data__packagedata, dict)
249
- if data__packagedata_is_dict:
250
- data__packagedata_keys = set(data__packagedata.keys())
251
- for data__packagedata_key, data__packagedata_val in data__packagedata.items():
252
- if REGEX_PATTERNS['^.*$'].search(data__packagedata_key):
253
- if data__packagedata_key in data__packagedata_keys:
254
- data__packagedata_keys.remove(data__packagedata_key)
255
- if not isinstance(data__packagedata_val, (list, tuple)):
256
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-data.{data__packagedata_key}".format(**locals()) + " must be array", value=data__packagedata_val, name="" + (name_prefix or "data") + ".package-data.{data__packagedata_key}".format(**locals()) + "", definition={'type': 'array', 'items': {'type': 'string'}}, rule='type')
257
- data__packagedata_val_is_list = isinstance(data__packagedata_val, (list, tuple))
258
- if data__packagedata_val_is_list:
259
- data__packagedata_val_len = len(data__packagedata_val)
260
- for data__packagedata_val_x, data__packagedata_val_item in enumerate(data__packagedata_val):
261
- if not isinstance(data__packagedata_val_item, (str)):
262
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-data.{data__packagedata_key}[{data__packagedata_val_x}]".format(**locals()) + " must be string", value=data__packagedata_val_item, name="" + (name_prefix or "data") + ".package-data.{data__packagedata_key}[{data__packagedata_val_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
263
- if data__packagedata_keys:
264
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-data must not contain "+str(data__packagedata_keys)+" properties", value=data__packagedata, name="" + (name_prefix or "data") + ".package-data", definition={'$$description': ['Mapping from package names to lists of glob patterns.', 'Usually this option is not needed when using ``include-package-data = true``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, rule='additionalProperties')
265
- data__packagedata_len = len(data__packagedata)
266
- if data__packagedata_len != 0:
267
- data__packagedata_property_names = True
268
- for data__packagedata_key in data__packagedata:
269
- try:
270
- data__packagedata_key_one_of_count3 = 0
271
- if data__packagedata_key_one_of_count3 < 2:
272
- try:
273
- if isinstance(data__packagedata_key, str):
274
- if not custom_formats["python-module-name"](data__packagedata_key):
275
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-data must be python-module-name", value=data__packagedata_key, name="" + (name_prefix or "data") + ".package-data", definition={'format': 'python-module-name'}, rule='format')
276
- data__packagedata_key_one_of_count3 += 1
277
- except JsonSchemaValueException: pass
278
- if data__packagedata_key_one_of_count3 < 2:
279
- try:
280
- if data__packagedata_key != "*":
281
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-data must be same as const definition: *", value=data__packagedata_key, name="" + (name_prefix or "data") + ".package-data", definition={'const': '*'}, rule='const')
282
- data__packagedata_key_one_of_count3 += 1
283
- except JsonSchemaValueException: pass
284
- if data__packagedata_key_one_of_count3 != 1:
285
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-data must be valid exactly by one definition" + (" (" + str(data__packagedata_key_one_of_count3) + " matches found)"), value=data__packagedata_key, name="" + (name_prefix or "data") + ".package-data", definition={'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, rule='oneOf')
286
- except JsonSchemaValueException:
287
- data__packagedata_property_names = False
288
- if not data__packagedata_property_names:
289
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".package-data must be named by propertyName definition", value=data__packagedata, name="" + (name_prefix or "data") + ".package-data", definition={'$$description': ['Mapping from package names to lists of glob patterns.', 'Usually this option is not needed when using ``include-package-data = true``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, rule='propertyNames')
290
- if "include-package-data" in data_keys:
291
- data_keys.remove("include-package-data")
292
- data__includepackagedata = data["include-package-data"]
293
- if not isinstance(data__includepackagedata, (bool)):
294
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".include-package-data must be boolean", value=data__includepackagedata, name="" + (name_prefix or "data") + ".include-package-data", definition={'$$description': ['Automatically include any data files inside the package directories', 'that are specified by ``MANIFEST.in``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'boolean'}, rule='type')
295
- if "exclude-package-data" in data_keys:
296
- data_keys.remove("exclude-package-data")
297
- data__excludepackagedata = data["exclude-package-data"]
298
- if not isinstance(data__excludepackagedata, (dict)):
299
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".exclude-package-data must be object", value=data__excludepackagedata, name="" + (name_prefix or "data") + ".exclude-package-data", definition={'$$description': ['Mapping from package names to lists of glob patterns that should be excluded', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, rule='type')
300
- data__excludepackagedata_is_dict = isinstance(data__excludepackagedata, dict)
301
- if data__excludepackagedata_is_dict:
302
- data__excludepackagedata_keys = set(data__excludepackagedata.keys())
303
- for data__excludepackagedata_key, data__excludepackagedata_val in data__excludepackagedata.items():
304
- if REGEX_PATTERNS['^.*$'].search(data__excludepackagedata_key):
305
- if data__excludepackagedata_key in data__excludepackagedata_keys:
306
- data__excludepackagedata_keys.remove(data__excludepackagedata_key)
307
- if not isinstance(data__excludepackagedata_val, (list, tuple)):
308
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".exclude-package-data.{data__excludepackagedata_key}".format(**locals()) + " must be array", value=data__excludepackagedata_val, name="" + (name_prefix or "data") + ".exclude-package-data.{data__excludepackagedata_key}".format(**locals()) + "", definition={'type': 'array', 'items': {'type': 'string'}}, rule='type')
309
- data__excludepackagedata_val_is_list = isinstance(data__excludepackagedata_val, (list, tuple))
310
- if data__excludepackagedata_val_is_list:
311
- data__excludepackagedata_val_len = len(data__excludepackagedata_val)
312
- for data__excludepackagedata_val_x, data__excludepackagedata_val_item in enumerate(data__excludepackagedata_val):
313
- if not isinstance(data__excludepackagedata_val_item, (str)):
314
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".exclude-package-data.{data__excludepackagedata_key}[{data__excludepackagedata_val_x}]".format(**locals()) + " must be string", value=data__excludepackagedata_val_item, name="" + (name_prefix or "data") + ".exclude-package-data.{data__excludepackagedata_key}[{data__excludepackagedata_val_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
315
- if data__excludepackagedata_keys:
316
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".exclude-package-data must not contain "+str(data__excludepackagedata_keys)+" properties", value=data__excludepackagedata, name="" + (name_prefix or "data") + ".exclude-package-data", definition={'$$description': ['Mapping from package names to lists of glob patterns that should be excluded', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, rule='additionalProperties')
317
- data__excludepackagedata_len = len(data__excludepackagedata)
318
- if data__excludepackagedata_len != 0:
319
- data__excludepackagedata_property_names = True
320
- for data__excludepackagedata_key in data__excludepackagedata:
321
- try:
322
- data__excludepackagedata_key_one_of_count4 = 0
323
- if data__excludepackagedata_key_one_of_count4 < 2:
324
- try:
325
- if isinstance(data__excludepackagedata_key, str):
326
- if not custom_formats["python-module-name"](data__excludepackagedata_key):
327
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".exclude-package-data must be python-module-name", value=data__excludepackagedata_key, name="" + (name_prefix or "data") + ".exclude-package-data", definition={'format': 'python-module-name'}, rule='format')
328
- data__excludepackagedata_key_one_of_count4 += 1
329
- except JsonSchemaValueException: pass
330
- if data__excludepackagedata_key_one_of_count4 < 2:
331
- try:
332
- if data__excludepackagedata_key != "*":
333
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".exclude-package-data must be same as const definition: *", value=data__excludepackagedata_key, name="" + (name_prefix or "data") + ".exclude-package-data", definition={'const': '*'}, rule='const')
334
- data__excludepackagedata_key_one_of_count4 += 1
335
- except JsonSchemaValueException: pass
336
- if data__excludepackagedata_key_one_of_count4 != 1:
337
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".exclude-package-data must be valid exactly by one definition" + (" (" + str(data__excludepackagedata_key_one_of_count4) + " matches found)"), value=data__excludepackagedata_key, name="" + (name_prefix or "data") + ".exclude-package-data", definition={'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, rule='oneOf')
338
- except JsonSchemaValueException:
339
- data__excludepackagedata_property_names = False
340
- if not data__excludepackagedata_property_names:
341
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".exclude-package-data must be named by propertyName definition", value=data__excludepackagedata, name="" + (name_prefix or "data") + ".exclude-package-data", definition={'$$description': ['Mapping from package names to lists of glob patterns that should be excluded', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, rule='propertyNames')
342
- if "namespace-packages" in data_keys:
343
- data_keys.remove("namespace-packages")
344
- data__namespacepackages = data["namespace-packages"]
345
- if not isinstance(data__namespacepackages, (list, tuple)):
346
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".namespace-packages must be array", value=data__namespacepackages, name="" + (name_prefix or "data") + ".namespace-packages", definition={'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}, '$comment': 'https://setuptools.pypa.io/en/latest/userguide/package_discovery.html'}, rule='type')
347
- data__namespacepackages_is_list = isinstance(data__namespacepackages, (list, tuple))
348
- if data__namespacepackages_is_list:
349
- data__namespacepackages_len = len(data__namespacepackages)
350
- for data__namespacepackages_x, data__namespacepackages_item in enumerate(data__namespacepackages):
351
- if not isinstance(data__namespacepackages_item, (str)):
352
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".namespace-packages[{data__namespacepackages_x}]".format(**locals()) + " must be string", value=data__namespacepackages_item, name="" + (name_prefix or "data") + ".namespace-packages[{data__namespacepackages_x}]".format(**locals()) + "", definition={'type': 'string', 'format': 'python-module-name'}, rule='type')
353
- if isinstance(data__namespacepackages_item, str):
354
- if not custom_formats["python-module-name"](data__namespacepackages_item):
355
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".namespace-packages[{data__namespacepackages_x}]".format(**locals()) + " must be python-module-name", value=data__namespacepackages_item, name="" + (name_prefix or "data") + ".namespace-packages[{data__namespacepackages_x}]".format(**locals()) + "", definition={'type': 'string', 'format': 'python-module-name'}, rule='format')
356
- if "py-modules" in data_keys:
357
- data_keys.remove("py-modules")
358
- data__pymodules = data["py-modules"]
359
- if not isinstance(data__pymodules, (list, tuple)):
360
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".py-modules must be array", value=data__pymodules, name="" + (name_prefix or "data") + ".py-modules", definition={'description': 'Modules that setuptools will manipulate', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}, '$comment': 'TODO: clarify the relationship with ``packages``'}, rule='type')
361
- data__pymodules_is_list = isinstance(data__pymodules, (list, tuple))
362
- if data__pymodules_is_list:
363
- data__pymodules_len = len(data__pymodules)
364
- for data__pymodules_x, data__pymodules_item in enumerate(data__pymodules):
365
- if not isinstance(data__pymodules_item, (str)):
366
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".py-modules[{data__pymodules_x}]".format(**locals()) + " must be string", value=data__pymodules_item, name="" + (name_prefix or "data") + ".py-modules[{data__pymodules_x}]".format(**locals()) + "", definition={'type': 'string', 'format': 'python-module-name'}, rule='type')
367
- if isinstance(data__pymodules_item, str):
368
- if not custom_formats["python-module-name"](data__pymodules_item):
369
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".py-modules[{data__pymodules_x}]".format(**locals()) + " must be python-module-name", value=data__pymodules_item, name="" + (name_prefix or "data") + ".py-modules[{data__pymodules_x}]".format(**locals()) + "", definition={'type': 'string', 'format': 'python-module-name'}, rule='format')
370
- if "data-files" in data_keys:
371
- data_keys.remove("data-files")
372
- data__datafiles = data["data-files"]
373
- if not isinstance(data__datafiles, (dict)):
374
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".data-files must be object", value=data__datafiles, name="" + (name_prefix or "data") + ".data-files", definition={'$$description': ['**DEPRECATED**: dict-like structure where each key represents a directory and', 'the value is a list of glob patterns that should be installed in them.', "Please notice this don't work with wheels. See `data files support", '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_'], 'type': 'object', 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, rule='type')
375
- data__datafiles_is_dict = isinstance(data__datafiles, dict)
376
- if data__datafiles_is_dict:
377
- data__datafiles_keys = set(data__datafiles.keys())
378
- for data__datafiles_key, data__datafiles_val in data__datafiles.items():
379
- if REGEX_PATTERNS['^.*$'].search(data__datafiles_key):
380
- if data__datafiles_key in data__datafiles_keys:
381
- data__datafiles_keys.remove(data__datafiles_key)
382
- if not isinstance(data__datafiles_val, (list, tuple)):
383
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".data-files.{data__datafiles_key}".format(**locals()) + " must be array", value=data__datafiles_val, name="" + (name_prefix or "data") + ".data-files.{data__datafiles_key}".format(**locals()) + "", definition={'type': 'array', 'items': {'type': 'string'}}, rule='type')
384
- data__datafiles_val_is_list = isinstance(data__datafiles_val, (list, tuple))
385
- if data__datafiles_val_is_list:
386
- data__datafiles_val_len = len(data__datafiles_val)
387
- for data__datafiles_val_x, data__datafiles_val_item in enumerate(data__datafiles_val):
388
- if not isinstance(data__datafiles_val_item, (str)):
389
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".data-files.{data__datafiles_key}[{data__datafiles_val_x}]".format(**locals()) + " must be string", value=data__datafiles_val_item, name="" + (name_prefix or "data") + ".data-files.{data__datafiles_key}[{data__datafiles_val_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
390
- if "cmdclass" in data_keys:
391
- data_keys.remove("cmdclass")
392
- data__cmdclass = data["cmdclass"]
393
- if not isinstance(data__cmdclass, (dict)):
394
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".cmdclass must be object", value=data__cmdclass, name="" + (name_prefix or "data") + ".cmdclass", definition={'$$description': ['Mapping of distutils-style command names to ``setuptools.Command`` subclasses', 'which in turn should be represented by strings with a qualified class name', '(i.e., "dotted" form with module), e.g.::\n\n', ' cmdclass = {mycmd = "pkg.subpkg.module.CommandClass"}\n\n', 'The command class should be a directly defined at the top-level of the', 'containing module (no class nesting).'], 'type': 'object', 'patternProperties': {'^.*$': {'type': 'string', 'format': 'python-qualified-identifier'}}}, rule='type')
395
- data__cmdclass_is_dict = isinstance(data__cmdclass, dict)
396
- if data__cmdclass_is_dict:
397
- data__cmdclass_keys = set(data__cmdclass.keys())
398
- for data__cmdclass_key, data__cmdclass_val in data__cmdclass.items():
399
- if REGEX_PATTERNS['^.*$'].search(data__cmdclass_key):
400
- if data__cmdclass_key in data__cmdclass_keys:
401
- data__cmdclass_keys.remove(data__cmdclass_key)
402
- if not isinstance(data__cmdclass_val, (str)):
403
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".cmdclass.{data__cmdclass_key}".format(**locals()) + " must be string", value=data__cmdclass_val, name="" + (name_prefix or "data") + ".cmdclass.{data__cmdclass_key}".format(**locals()) + "", definition={'type': 'string', 'format': 'python-qualified-identifier'}, rule='type')
404
- if isinstance(data__cmdclass_val, str):
405
- if not custom_formats["python-qualified-identifier"](data__cmdclass_val):
406
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".cmdclass.{data__cmdclass_key}".format(**locals()) + " must be python-qualified-identifier", value=data__cmdclass_val, name="" + (name_prefix or "data") + ".cmdclass.{data__cmdclass_key}".format(**locals()) + "", definition={'type': 'string', 'format': 'python-qualified-identifier'}, rule='format')
407
- if "license-files" in data_keys:
408
- data_keys.remove("license-files")
409
- data__licensefiles = data["license-files"]
410
- if not isinstance(data__licensefiles, (list, tuple)):
411
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".license-files must be array", value=data__licensefiles, name="" + (name_prefix or "data") + ".license-files", definition={'type': 'array', 'items': {'type': 'string'}, '$$description': ['PROVISIONAL: List of glob patterns for all license files being distributed.', '(might become standard with PEP 639).'], 'default': ['LICEN[CS]E*', ' COPYING*', ' NOTICE*', 'AUTHORS*'], '$comment': 'TODO: revise if PEP 639 is accepted. Probably ``project.license-files``?'}, rule='type')
412
- data__licensefiles_is_list = isinstance(data__licensefiles, (list, tuple))
413
- if data__licensefiles_is_list:
414
- data__licensefiles_len = len(data__licensefiles)
415
- for data__licensefiles_x, data__licensefiles_item in enumerate(data__licensefiles):
416
- if not isinstance(data__licensefiles_item, (str)):
417
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".license-files[{data__licensefiles_x}]".format(**locals()) + " must be string", value=data__licensefiles_item, name="" + (name_prefix or "data") + ".license-files[{data__licensefiles_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
418
- else: data["license-files"] = ['LICEN[CS]E*', ' COPYING*', ' NOTICE*', 'AUTHORS*']
419
- if "dynamic" in data_keys:
420
- data_keys.remove("dynamic")
421
- data__dynamic = data["dynamic"]
422
- if not isinstance(data__dynamic, (dict)):
423
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic must be object", value=data__dynamic, name="" + (name_prefix or "data") + ".dynamic", definition={'type': 'object', 'description': 'Instructions for loading :pep:`621`-related metadata dynamically', 'additionalProperties': False, 'properties': {'version': {'$$description': ['A version dynamically loaded via either the ``attr:`` or ``file:``', 'directives. Please make sure the given file or attribute respects :pep:`440`.'], 'oneOf': [{'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}]}, 'classifiers': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'description': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'dependencies': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'entry-points': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'optional-dependencies': {'type': 'object', 'propertyNames': {'format': 'python-identifier'}, 'additionalProperties': False, 'patternProperties': {'.+': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}}}, 'readme': {'anyOf': [{'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, {'properties': {'content-type': {'type': 'string'}}}], 'required': ['file']}}}, rule='type')
424
- data__dynamic_is_dict = isinstance(data__dynamic, dict)
425
- if data__dynamic_is_dict:
426
- data__dynamic_keys = set(data__dynamic.keys())
427
- if "version" in data__dynamic_keys:
428
- data__dynamic_keys.remove("version")
429
- data__dynamic__version = data__dynamic["version"]
430
- data__dynamic__version_one_of_count5 = 0
431
- if data__dynamic__version_one_of_count5 < 2:
432
- try:
433
- validate_https___setuptools_pypa_io_en_latest_references_keywords_html__definitions_attr_directive(data__dynamic__version, custom_formats, (name_prefix or "data") + ".dynamic.version")
434
- data__dynamic__version_one_of_count5 += 1
435
- except JsonSchemaValueException: pass
436
- if data__dynamic__version_one_of_count5 < 2:
437
- try:
438
- validate_https___setuptools_pypa_io_en_latest_references_keywords_html__definitions_file_directive(data__dynamic__version, custom_formats, (name_prefix or "data") + ".dynamic.version")
439
- data__dynamic__version_one_of_count5 += 1
440
- except JsonSchemaValueException: pass
441
- if data__dynamic__version_one_of_count5 != 1:
442
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic.version must be valid exactly by one definition" + (" (" + str(data__dynamic__version_one_of_count5) + " matches found)"), value=data__dynamic__version, name="" + (name_prefix or "data") + ".dynamic.version", definition={'$$description': ['A version dynamically loaded via either the ``attr:`` or ``file:``', 'directives. Please make sure the given file or attribute respects :pep:`440`.'], 'oneOf': [{'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}]}, rule='oneOf')
443
- if "classifiers" in data__dynamic_keys:
444
- data__dynamic_keys.remove("classifiers")
445
- data__dynamic__classifiers = data__dynamic["classifiers"]
446
- validate_https___setuptools_pypa_io_en_latest_references_keywords_html__definitions_file_directive(data__dynamic__classifiers, custom_formats, (name_prefix or "data") + ".dynamic.classifiers")
447
- if "description" in data__dynamic_keys:
448
- data__dynamic_keys.remove("description")
449
- data__dynamic__description = data__dynamic["description"]
450
- validate_https___setuptools_pypa_io_en_latest_references_keywords_html__definitions_file_directive(data__dynamic__description, custom_formats, (name_prefix or "data") + ".dynamic.description")
451
- if "dependencies" in data__dynamic_keys:
452
- data__dynamic_keys.remove("dependencies")
453
- data__dynamic__dependencies = data__dynamic["dependencies"]
454
- validate_https___setuptools_pypa_io_en_latest_references_keywords_html__definitions_file_directive(data__dynamic__dependencies, custom_formats, (name_prefix or "data") + ".dynamic.dependencies")
455
- if "entry-points" in data__dynamic_keys:
456
- data__dynamic_keys.remove("entry-points")
457
- data__dynamic__entrypoints = data__dynamic["entry-points"]
458
- validate_https___setuptools_pypa_io_en_latest_references_keywords_html__definitions_file_directive(data__dynamic__entrypoints, custom_formats, (name_prefix or "data") + ".dynamic.entry-points")
459
- if "optional-dependencies" in data__dynamic_keys:
460
- data__dynamic_keys.remove("optional-dependencies")
461
- data__dynamic__optionaldependencies = data__dynamic["optional-dependencies"]
462
- if not isinstance(data__dynamic__optionaldependencies, (dict)):
463
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic.optional-dependencies must be object", value=data__dynamic__optionaldependencies, name="" + (name_prefix or "data") + ".dynamic.optional-dependencies", definition={'type': 'object', 'propertyNames': {'format': 'python-identifier'}, 'additionalProperties': False, 'patternProperties': {'.+': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}}}, rule='type')
464
- data__dynamic__optionaldependencies_is_dict = isinstance(data__dynamic__optionaldependencies, dict)
465
- if data__dynamic__optionaldependencies_is_dict:
466
- data__dynamic__optionaldependencies_keys = set(data__dynamic__optionaldependencies.keys())
467
- for data__dynamic__optionaldependencies_key, data__dynamic__optionaldependencies_val in data__dynamic__optionaldependencies.items():
468
- if REGEX_PATTERNS['.+'].search(data__dynamic__optionaldependencies_key):
469
- if data__dynamic__optionaldependencies_key in data__dynamic__optionaldependencies_keys:
470
- data__dynamic__optionaldependencies_keys.remove(data__dynamic__optionaldependencies_key)
471
- validate_https___setuptools_pypa_io_en_latest_references_keywords_html__definitions_file_directive(data__dynamic__optionaldependencies_val, custom_formats, (name_prefix or "data") + ".dynamic.optional-dependencies.{data__dynamic__optionaldependencies_key}")
472
- if data__dynamic__optionaldependencies_keys:
473
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic.optional-dependencies must not contain "+str(data__dynamic__optionaldependencies_keys)+" properties", value=data__dynamic__optionaldependencies, name="" + (name_prefix or "data") + ".dynamic.optional-dependencies", definition={'type': 'object', 'propertyNames': {'format': 'python-identifier'}, 'additionalProperties': False, 'patternProperties': {'.+': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}}}, rule='additionalProperties')
474
- data__dynamic__optionaldependencies_len = len(data__dynamic__optionaldependencies)
475
- if data__dynamic__optionaldependencies_len != 0:
476
- data__dynamic__optionaldependencies_property_names = True
477
- for data__dynamic__optionaldependencies_key in data__dynamic__optionaldependencies:
478
- try:
479
- if isinstance(data__dynamic__optionaldependencies_key, str):
480
- if not custom_formats["python-identifier"](data__dynamic__optionaldependencies_key):
481
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic.optional-dependencies must be python-identifier", value=data__dynamic__optionaldependencies_key, name="" + (name_prefix or "data") + ".dynamic.optional-dependencies", definition={'format': 'python-identifier'}, rule='format')
482
- except JsonSchemaValueException:
483
- data__dynamic__optionaldependencies_property_names = False
484
- if not data__dynamic__optionaldependencies_property_names:
485
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic.optional-dependencies must be named by propertyName definition", value=data__dynamic__optionaldependencies, name="" + (name_prefix or "data") + ".dynamic.optional-dependencies", definition={'type': 'object', 'propertyNames': {'format': 'python-identifier'}, 'additionalProperties': False, 'patternProperties': {'.+': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}}}, rule='propertyNames')
486
- if "readme" in data__dynamic_keys:
487
- data__dynamic_keys.remove("readme")
488
- data__dynamic__readme = data__dynamic["readme"]
489
- data__dynamic__readme_any_of_count6 = 0
490
- if not data__dynamic__readme_any_of_count6:
491
- try:
492
- validate_https___setuptools_pypa_io_en_latest_references_keywords_html__definitions_file_directive(data__dynamic__readme, custom_formats, (name_prefix or "data") + ".dynamic.readme")
493
- data__dynamic__readme_any_of_count6 += 1
494
- except JsonSchemaValueException: pass
495
- if not data__dynamic__readme_any_of_count6:
496
- try:
497
- data__dynamic__readme_is_dict = isinstance(data__dynamic__readme, dict)
498
- if data__dynamic__readme_is_dict:
499
- data__dynamic__readme_keys = set(data__dynamic__readme.keys())
500
- if "content-type" in data__dynamic__readme_keys:
501
- data__dynamic__readme_keys.remove("content-type")
502
- data__dynamic__readme__contenttype = data__dynamic__readme["content-type"]
503
- if not isinstance(data__dynamic__readme__contenttype, (str)):
504
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic.readme.content-type must be string", value=data__dynamic__readme__contenttype, name="" + (name_prefix or "data") + ".dynamic.readme.content-type", definition={'type': 'string'}, rule='type')
505
- data__dynamic__readme_any_of_count6 += 1
506
- except JsonSchemaValueException: pass
507
- if not data__dynamic__readme_any_of_count6:
508
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic.readme cannot be validated by any definition", value=data__dynamic__readme, name="" + (name_prefix or "data") + ".dynamic.readme", definition={'anyOf': [{'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, {'properties': {'content-type': {'type': 'string'}}}], 'required': ['file']}, rule='anyOf')
509
- data__dynamic__readme_is_dict = isinstance(data__dynamic__readme, dict)
510
- if data__dynamic__readme_is_dict:
511
- data__dynamic__readme_len = len(data__dynamic__readme)
512
- if not all(prop in data__dynamic__readme for prop in ['file']):
513
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic.readme must contain ['file'] properties", value=data__dynamic__readme, name="" + (name_prefix or "data") + ".dynamic.readme", definition={'anyOf': [{'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, {'properties': {'content-type': {'type': 'string'}}}], 'required': ['file']}, rule='required')
514
- if data__dynamic_keys:
515
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic must not contain "+str(data__dynamic_keys)+" properties", value=data__dynamic, name="" + (name_prefix or "data") + ".dynamic", definition={'type': 'object', 'description': 'Instructions for loading :pep:`621`-related metadata dynamically', 'additionalProperties': False, 'properties': {'version': {'$$description': ['A version dynamically loaded via either the ``attr:`` or ``file:``', 'directives. Please make sure the given file or attribute respects :pep:`440`.'], 'oneOf': [{'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}]}, 'classifiers': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'description': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'dependencies': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'entry-points': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'optional-dependencies': {'type': 'object', 'propertyNames': {'format': 'python-identifier'}, 'additionalProperties': False, 'patternProperties': {'.+': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}}}, 'readme': {'anyOf': [{'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, {'properties': {'content-type': {'type': 'string'}}}], 'required': ['file']}}}, rule='additionalProperties')
516
- if data_keys:
517
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must not contain "+str(data_keys)+" properties", value=data, name="" + (name_prefix or "data") + "", definition={'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://setuptools.pypa.io/en/latest/references/keywords.html', 'title': '``tool.setuptools`` table', '$$description': ['Please notice for the time being the ``setuptools`` project does not specify', 'a way of configuring builds via ``pyproject.toml``.', 'Therefore this schema should be taken just as a *"thought experiment"* on how', 'this *might be done*, by following the principles established in', '`ini2toml <https://ini2toml.readthedocs.io/en/latest/setuptools_pep621.html>`_.', 'It considers only ``setuptools`` `parameters', '<https://setuptools.pypa.io/en/latest/userguide/declarative_config.html>`_', 'that can currently be configured via ``setup.cfg`` and are not covered by :pep:`621`', 'but intentionally excludes ``dependency_links`` and ``setup_requires``.', 'NOTE: ``scripts`` was renamed to ``script-files`` to avoid confusion with', 'entry-point based scripts (defined in :pep:`621`).'], 'type': 'object', 'additionalProperties': False, 'properties': {'platforms': {'type': 'array', 'items': {'type': 'string'}}, 'provides': {'$$description': ['Package and virtual package names contained within this package', '**(not supported by pip)**'], 'type': 'array', 'items': {'type': 'string', 'format': 'pep508-identifier'}}, 'obsoletes': {'$$description': ['Packages which this package renders obsolete', '**(not supported by pip)**'], 'type': 'array', 'items': {'type': 'string', 'format': 'pep508-identifier'}}, 'zip-safe': {'description': 'Whether the project can be safely installed and run from a zip file.', 'type': 'boolean'}, 'script-files': {'description': 'Legacy way of defining scripts (entry-points are preferred).', 'type': 'array', 'items': {'type': 'string'}, '$comment': 'TODO: is this field deprecated/should be removed?'}, 'eager-resources': {'$$description': ['Resources that should be extracted together, if any of them is needed,', 'or if any C extensions included in the project are imported.'], 'type': 'array', 'items': {'type': 'string'}}, 'packages': {'$$description': ['Packages that should be included in the distribution.', 'It can be given either as a list of package identifiers', 'or as a ``dict``-like structure with a single key ``find``', 'which corresponds to a dynamic call to', '``setuptools.config.expand.find_packages`` function.', 'The ``find`` key is associated with a nested ``dict``-like structure that can', 'contain ``where``, ``include``, ``exclude`` and ``namespaces`` keys,', 'mimicking the keyword arguments of the associated function.'], 'oneOf': [{'title': 'Array of Python package identifiers', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}}, {'$id': '#/definitions/find-directive', 'title': "'find:' directive", 'type': 'object', 'additionalProperties': False, 'properties': {'find': {'type': 'object', '$$description': ['Dynamic `package discovery', '<https://setuptools.pypa.io/en/latest/userguide/package_discovery.html>`_.'], 'additionalProperties': False, 'properties': {'where': {'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, 'exclude': {'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'include': {'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'namespaces': {'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}}}}}]}, 'package-dir': {'$$description': [':class:`dict`-like structure mapping from package names to directories where their', 'code can be found.', 'The empty string (as key) means that all packages are contained inside', 'the given directory will be included in the distribution.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': ''}]}, 'patternProperties': {'^.*$': {'type': 'string'}}}, 'package-data': {'$$description': ['Mapping from package names to lists of glob patterns.', 'Usually this option is not needed when using ``include-package-data = true``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'include-package-data': {'$$description': ['Automatically include any data files inside the package directories', 'that are specified by ``MANIFEST.in``', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'boolean'}, 'exclude-package-data': {'$$description': ['Mapping from package names to lists of glob patterns that should be excluded', 'For more information on how to include data files, check ``setuptools`` `docs', '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_.'], 'type': 'object', 'additionalProperties': False, 'propertyNames': {'oneOf': [{'format': 'python-module-name'}, {'const': '*'}]}, 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'namespace-packages': {'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}, '$comment': 'https://setuptools.pypa.io/en/latest/userguide/package_discovery.html'}, 'py-modules': {'description': 'Modules that setuptools will manipulate', 'type': 'array', 'items': {'type': 'string', 'format': 'python-module-name'}, '$comment': 'TODO: clarify the relationship with ``packages``'}, 'data-files': {'$$description': ['**DEPRECATED**: dict-like structure where each key represents a directory and', 'the value is a list of glob patterns that should be installed in them.', "Please notice this don't work with wheels. See `data files support", '<https://setuptools.pypa.io/en/latest/userguide/datafiles.html>`_'], 'type': 'object', 'patternProperties': {'^.*$': {'type': 'array', 'items': {'type': 'string'}}}}, 'cmdclass': {'$$description': ['Mapping of distutils-style command names to ``setuptools.Command`` subclasses', 'which in turn should be represented by strings with a qualified class name', '(i.e., "dotted" form with module), e.g.::\n\n', ' cmdclass = {mycmd = "pkg.subpkg.module.CommandClass"}\n\n', 'The command class should be a directly defined at the top-level of the', 'containing module (no class nesting).'], 'type': 'object', 'patternProperties': {'^.*$': {'type': 'string', 'format': 'python-qualified-identifier'}}}, 'license-files': {'type': 'array', 'items': {'type': 'string'}, '$$description': ['PROVISIONAL: List of glob patterns for all license files being distributed.', '(might become standard with PEP 639).'], 'default': ['LICEN[CS]E*', ' COPYING*', ' NOTICE*', 'AUTHORS*'], '$comment': 'TODO: revise if PEP 639 is accepted. Probably ``project.license-files``?'}, 'dynamic': {'type': 'object', 'description': 'Instructions for loading :pep:`621`-related metadata dynamically', 'additionalProperties': False, 'properties': {'version': {'$$description': ['A version dynamically loaded via either the ``attr:`` or ``file:``', 'directives. Please make sure the given file or attribute respects :pep:`440`.'], 'oneOf': [{'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}]}, 'classifiers': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'description': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'dependencies': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'entry-points': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'optional-dependencies': {'type': 'object', 'propertyNames': {'format': 'python-identifier'}, 'additionalProperties': False, 'patternProperties': {'.+': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}}}, 'readme': {'anyOf': [{'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, {'properties': {'content-type': {'type': 'string'}}}], 'required': ['file']}}}}, 'definitions': {'file-directive': {'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, 'attr-directive': {'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, 'find-directive': {'$id': '#/definitions/find-directive', 'title': "'find:' directive", 'type': 'object', 'additionalProperties': False, 'properties': {'find': {'type': 'object', '$$description': ['Dynamic `package discovery', '<https://setuptools.pypa.io/en/latest/userguide/package_discovery.html>`_.'], 'additionalProperties': False, 'properties': {'where': {'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, 'exclude': {'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'include': {'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'namespaces': {'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}}}}}}}, rule='additionalProperties')
518
- return data
519
-
520
- def validate_https___setuptools_pypa_io_en_latest_references_keywords_html__definitions_file_directive(data, custom_formats={}, name_prefix=None):
521
- if not isinstance(data, (dict)):
522
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be object", value=data, name="" + (name_prefix or "data") + "", definition={'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, rule='type')
523
- data_is_dict = isinstance(data, dict)
524
- if data_is_dict:
525
- data_len = len(data)
526
- if not all(prop in data for prop in ['file']):
527
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must contain ['file'] properties", value=data, name="" + (name_prefix or "data") + "", definition={'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, rule='required')
528
- data_keys = set(data.keys())
529
- if "file" in data_keys:
530
- data_keys.remove("file")
531
- data__file = data["file"]
532
- data__file_one_of_count7 = 0
533
- if data__file_one_of_count7 < 2:
534
- try:
535
- if not isinstance(data__file, (str)):
536
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".file must be string", value=data__file, name="" + (name_prefix or "data") + ".file", definition={'type': 'string'}, rule='type')
537
- data__file_one_of_count7 += 1
538
- except JsonSchemaValueException: pass
539
- if data__file_one_of_count7 < 2:
540
- try:
541
- if not isinstance(data__file, (list, tuple)):
542
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".file must be array", value=data__file, name="" + (name_prefix or "data") + ".file", definition={'type': 'array', 'items': {'type': 'string'}}, rule='type')
543
- data__file_is_list = isinstance(data__file, (list, tuple))
544
- if data__file_is_list:
545
- data__file_len = len(data__file)
546
- for data__file_x, data__file_item in enumerate(data__file):
547
- if not isinstance(data__file_item, (str)):
548
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".file[{data__file_x}]".format(**locals()) + " must be string", value=data__file_item, name="" + (name_prefix or "data") + ".file[{data__file_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
549
- data__file_one_of_count7 += 1
550
- except JsonSchemaValueException: pass
551
- if data__file_one_of_count7 != 1:
552
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".file must be valid exactly by one definition" + (" (" + str(data__file_one_of_count7) + " matches found)"), value=data__file, name="" + (name_prefix or "data") + ".file", definition={'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}, rule='oneOf')
553
- if data_keys:
554
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must not contain "+str(data_keys)+" properties", value=data, name="" + (name_prefix or "data") + "", definition={'$id': '#/definitions/file-directive', 'title': "'file:' directive", 'description': 'Value is read from a file (or list of files and then concatenated)', 'type': 'object', 'additionalProperties': False, 'properties': {'file': {'oneOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, 'required': ['file']}, rule='additionalProperties')
555
- return data
556
-
557
- def validate_https___setuptools_pypa_io_en_latest_references_keywords_html__definitions_attr_directive(data, custom_formats={}, name_prefix=None):
558
- if not isinstance(data, (dict)):
559
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be object", value=data, name="" + (name_prefix or "data") + "", definition={'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, rule='type')
560
- data_is_dict = isinstance(data, dict)
561
- if data_is_dict:
562
- data_len = len(data)
563
- if not all(prop in data for prop in ['attr']):
564
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must contain ['attr'] properties", value=data, name="" + (name_prefix or "data") + "", definition={'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, rule='required')
565
- data_keys = set(data.keys())
566
- if "attr" in data_keys:
567
- data_keys.remove("attr")
568
- data__attr = data["attr"]
569
- if not isinstance(data__attr, (str)):
570
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".attr must be string", value=data__attr, name="" + (name_prefix or "data") + ".attr", definition={'type': 'string'}, rule='type')
571
- if data_keys:
572
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must not contain "+str(data_keys)+" properties", value=data, name="" + (name_prefix or "data") + "", definition={'title': "'attr:' directive", '$id': '#/definitions/attr-directive', '$$description': ['Value is read from a module attribute. Supports callables and iterables;', 'unsupported types are cast via ``str()``'], 'type': 'object', 'additionalProperties': False, 'properties': {'attr': {'type': 'string'}}, 'required': ['attr']}, rule='additionalProperties')
573
- return data
574
-
575
- def validate_https___setuptools_pypa_io_en_latest_references_keywords_html__definitions_find_directive(data, custom_formats={}, name_prefix=None):
576
- if not isinstance(data, (dict)):
577
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be object", value=data, name="" + (name_prefix or "data") + "", definition={'$id': '#/definitions/find-directive', 'title': "'find:' directive", 'type': 'object', 'additionalProperties': False, 'properties': {'find': {'type': 'object', '$$description': ['Dynamic `package discovery', '<https://setuptools.pypa.io/en/latest/userguide/package_discovery.html>`_.'], 'additionalProperties': False, 'properties': {'where': {'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, 'exclude': {'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'include': {'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'namespaces': {'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}}}}}, rule='type')
578
- data_is_dict = isinstance(data, dict)
579
- if data_is_dict:
580
- data_keys = set(data.keys())
581
- if "find" in data_keys:
582
- data_keys.remove("find")
583
- data__find = data["find"]
584
- if not isinstance(data__find, (dict)):
585
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".find must be object", value=data__find, name="" + (name_prefix or "data") + ".find", definition={'type': 'object', '$$description': ['Dynamic `package discovery', '<https://setuptools.pypa.io/en/latest/userguide/package_discovery.html>`_.'], 'additionalProperties': False, 'properties': {'where': {'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, 'exclude': {'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'include': {'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'namespaces': {'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}}}, rule='type')
586
- data__find_is_dict = isinstance(data__find, dict)
587
- if data__find_is_dict:
588
- data__find_keys = set(data__find.keys())
589
- if "where" in data__find_keys:
590
- data__find_keys.remove("where")
591
- data__find__where = data__find["where"]
592
- if not isinstance(data__find__where, (list, tuple)):
593
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".find.where must be array", value=data__find__where, name="" + (name_prefix or "data") + ".find.where", definition={'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, rule='type')
594
- data__find__where_is_list = isinstance(data__find__where, (list, tuple))
595
- if data__find__where_is_list:
596
- data__find__where_len = len(data__find__where)
597
- for data__find__where_x, data__find__where_item in enumerate(data__find__where):
598
- if not isinstance(data__find__where_item, (str)):
599
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".find.where[{data__find__where_x}]".format(**locals()) + " must be string", value=data__find__where_item, name="" + (name_prefix or "data") + ".find.where[{data__find__where_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
600
- if "exclude" in data__find_keys:
601
- data__find_keys.remove("exclude")
602
- data__find__exclude = data__find["exclude"]
603
- if not isinstance(data__find__exclude, (list, tuple)):
604
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".find.exclude must be array", value=data__find__exclude, name="" + (name_prefix or "data") + ".find.exclude", definition={'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, rule='type')
605
- data__find__exclude_is_list = isinstance(data__find__exclude, (list, tuple))
606
- if data__find__exclude_is_list:
607
- data__find__exclude_len = len(data__find__exclude)
608
- for data__find__exclude_x, data__find__exclude_item in enumerate(data__find__exclude):
609
- if not isinstance(data__find__exclude_item, (str)):
610
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".find.exclude[{data__find__exclude_x}]".format(**locals()) + " must be string", value=data__find__exclude_item, name="" + (name_prefix or "data") + ".find.exclude[{data__find__exclude_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
611
- if "include" in data__find_keys:
612
- data__find_keys.remove("include")
613
- data__find__include = data__find["include"]
614
- if not isinstance(data__find__include, (list, tuple)):
615
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".find.include must be array", value=data__find__include, name="" + (name_prefix or "data") + ".find.include", definition={'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, rule='type')
616
- data__find__include_is_list = isinstance(data__find__include, (list, tuple))
617
- if data__find__include_is_list:
618
- data__find__include_len = len(data__find__include)
619
- for data__find__include_x, data__find__include_item in enumerate(data__find__include):
620
- if not isinstance(data__find__include_item, (str)):
621
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".find.include[{data__find__include_x}]".format(**locals()) + " must be string", value=data__find__include_item, name="" + (name_prefix or "data") + ".find.include[{data__find__include_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
622
- if "namespaces" in data__find_keys:
623
- data__find_keys.remove("namespaces")
624
- data__find__namespaces = data__find["namespaces"]
625
- if not isinstance(data__find__namespaces, (bool)):
626
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".find.namespaces must be boolean", value=data__find__namespaces, name="" + (name_prefix or "data") + ".find.namespaces", definition={'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}, rule='type')
627
- if data__find_keys:
628
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".find must not contain "+str(data__find_keys)+" properties", value=data__find, name="" + (name_prefix or "data") + ".find", definition={'type': 'object', '$$description': ['Dynamic `package discovery', '<https://setuptools.pypa.io/en/latest/userguide/package_discovery.html>`_.'], 'additionalProperties': False, 'properties': {'where': {'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, 'exclude': {'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'include': {'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'namespaces': {'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}}}, rule='additionalProperties')
629
- if data_keys:
630
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must not contain "+str(data_keys)+" properties", value=data, name="" + (name_prefix or "data") + "", definition={'$id': '#/definitions/find-directive', 'title': "'find:' directive", 'type': 'object', 'additionalProperties': False, 'properties': {'find': {'type': 'object', '$$description': ['Dynamic `package discovery', '<https://setuptools.pypa.io/en/latest/userguide/package_discovery.html>`_.'], 'additionalProperties': False, 'properties': {'where': {'description': 'Directories to be searched for packages (Unix-style relative path)', 'type': 'array', 'items': {'type': 'string'}}, 'exclude': {'type': 'array', '$$description': ['Exclude packages that match the values listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'include': {'type': 'array', '$$description': ['Restrict the found packages to just the ones listed in this field.', "Can container shell-style wildcards (e.g. ``'pkg.*'``)"], 'items': {'type': 'string'}}, 'namespaces': {'type': 'boolean', '$$description': ['When ``True``, directories without a ``__init__.py`` file will also', 'be scanned for :pep:`420`-style implicit namespaces']}}}}}, rule='additionalProperties')
631
- return data
632
-
633
- def validate_https___docs_python_org_3_install(data, custom_formats={}, name_prefix=None):
634
- if not isinstance(data, (dict)):
635
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be object", value=data, name="" + (name_prefix or "data") + "", definition={'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://docs.python.org/3/install/', 'title': '``tool.distutils`` table', '$$description': ['Originally, ``distutils`` allowed developers to configure arguments for', '``setup.py`` scripts via `distutils configuration files', '<https://docs.python.org/3/install/#distutils-configuration-files>`_.', '``tool.distutils`` subtables could be used with the same purpose', '(NOT CURRENTLY IMPLEMENTED).'], 'type': 'object', 'properties': {'global': {'type': 'object', 'description': 'Global options applied to all ``distutils`` commands'}}, 'patternProperties': {'.+': {'type': 'object'}}, '$comment': 'TODO: Is there a practical way of making this schema more specific?'}, rule='type')
636
- data_is_dict = isinstance(data, dict)
637
- if data_is_dict:
638
- data_keys = set(data.keys())
639
- if "global" in data_keys:
640
- data_keys.remove("global")
641
- data__global = data["global"]
642
- if not isinstance(data__global, (dict)):
643
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".global must be object", value=data__global, name="" + (name_prefix or "data") + ".global", definition={'type': 'object', 'description': 'Global options applied to all ``distutils`` commands'}, rule='type')
644
- for data_key, data_val in data.items():
645
- if REGEX_PATTERNS['.+'].search(data_key):
646
- if data_key in data_keys:
647
- data_keys.remove(data_key)
648
- if not isinstance(data_val, (dict)):
649
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".{data_key}".format(**locals()) + " must be object", value=data_val, name="" + (name_prefix or "data") + ".{data_key}".format(**locals()) + "", definition={'type': 'object'}, rule='type')
650
- return data
651
-
652
- def validate_https___packaging_python_org_en_latest_specifications_declaring_project_metadata(data, custom_formats={}, name_prefix=None):
653
- if not isinstance(data, (dict)):
654
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be object", value=data, name="" + (name_prefix or "data") + "", definition={'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://packaging.python.org/en/latest/specifications/declaring-project-metadata/', 'title': 'Package metadata stored in the ``project`` table', '$$description': ['Data structure for the **project** table inside ``pyproject.toml``', '(as initially defined in :pep:`621`)'], 'type': 'object', 'properties': {'name': {'type': 'string', 'description': 'The name (primary identifier) of the project. MUST be statically defined.', 'format': 'pep508-identifier'}, 'version': {'type': 'string', 'description': 'The version of the project as supported by :pep:`440`.', 'format': 'pep440'}, 'description': {'type': 'string', '$$description': ['The `summary description of the project', '<https://packaging.python.org/specifications/core-metadata/#summary>`_']}, 'readme': {'$$description': ['`Full/detailed description of the project in the form of a README', '<https://www.python.org/dev/peps/pep-0621/#readme>`_', "with meaning similar to the one defined in `core metadata's Description", '<https://packaging.python.org/specifications/core-metadata/#description>`_'], 'oneOf': [{'type': 'string', '$$description': ['Relative path to a text file (UTF-8) containing the full description', 'of the project. If the file path ends in case-insensitive ``.md`` or', '``.rst`` suffixes, then the content-type is respectively', '``text/markdown`` or ``text/x-rst``']}, {'type': 'object', 'allOf': [{'anyOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to a text file containing the full description', 'of the project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', 'description': 'Full text describing the project.'}}, 'required': ['text']}]}, {'properties': {'content-type': {'type': 'string', '$$description': ['Content-type (:rfc:`1341`) of the full description', '(e.g. ``text/markdown``). The ``charset`` parameter is assumed', 'UTF-8 when not present.'], '$comment': 'TODO: add regex pattern or format?'}}, 'required': ['content-type']}]}]}, 'requires-python': {'type': 'string', 'format': 'pep508-versionspec', '$$description': ['`The Python version requirements of the project', '<https://packaging.python.org/specifications/core-metadata/#requires-python>`_.']}, 'license': {'description': '`Project license <https://www.python.org/dev/peps/pep-0621/#license>`_.', 'oneOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to the file (UTF-8) which contains the license for the', 'project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', '$$description': ['The license of the project whose meaning is that of the', '`License field from the core metadata', '<https://packaging.python.org/specifications/core-metadata/#license>`_.']}}, 'required': ['text']}]}, 'authors': {'type': 'array', 'items': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, '$$description': ["The people or organizations considered to be the 'authors' of the project.", 'The exact meaning is open to interpretation (e.g. original or primary authors,', 'current maintainers, or owners of the package).']}, 'maintainers': {'type': 'array', 'items': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, '$$description': ["The people or organizations considered to be the 'maintainers' of the project.", 'Similarly to ``authors``, the exact meaning is open to interpretation.']}, 'keywords': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of keywords to assist searching for the distribution in a larger catalog.'}, 'classifiers': {'type': 'array', 'items': {'type': 'string', 'format': 'trove-classifier', 'description': '`PyPI classifier <https://pypi.org/classifiers/>`_.'}, '$$description': ['`Trove classifiers <https://pypi.org/classifiers/>`_', 'which apply to the project.']}, 'urls': {'type': 'object', 'description': 'URLs associated with the project in the form ``label => value``.', 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', 'format': 'url'}}}, 'scripts': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'gui-scripts': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'entry-points': {'$$description': ['Instruct the installer to expose the given modules/functions via', '``entry-point`` discovery mechanism (useful for plugins).', 'More information available in the `Python packaging guide', '<https://packaging.python.org/specifications/entry-points/>`_.'], 'propertyNames': {'format': 'python-entrypoint-group'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}}}, 'dependencies': {'type': 'array', 'description': 'Project (mandatory) dependencies.', 'items': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}, 'optional-dependencies': {'type': 'object', 'description': 'Optional dependency for the project', 'propertyNames': {'format': 'pep508-identifier'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'array', 'items': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}}, 'dynamic': {'type': 'array', '$$description': ['Specifies which fields are intentionally unspecified and expected to be', 'dynamically provided by build tools'], 'items': {'enum': ['version', 'description', 'readme', 'requires-python', 'license', 'authors', 'maintainers', 'keywords', 'classifiers', 'urls', 'scripts', 'gui-scripts', 'entry-points', 'dependencies', 'optional-dependencies']}}}, 'required': ['name'], 'additionalProperties': False, 'if': {'not': {'required': ['dynamic'], 'properties': {'dynamic': {'contains': {'const': 'version'}, '$$description': ['version is listed in ``dynamic``']}}}, '$$comment': ['According to :pep:`621`:', ' If the core metadata specification lists a field as "Required", then', ' the metadata MUST specify the field statically or list it in dynamic', 'In turn, `core metadata`_ defines:', ' The required fields are: Metadata-Version, Name, Version.', ' All the other fields are optional.', 'Since ``Metadata-Version`` is defined by the build back-end, ``name`` and', '``version`` are the only mandatory information in ``pyproject.toml``.', '.. _core metadata: https://packaging.python.org/specifications/core-metadata/']}, 'then': {'required': ['version'], '$$description': ['version should be statically defined in the ``version`` field']}, 'definitions': {'author': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, 'entry-point-group': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'dependency': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}, rule='type')
655
- data_is_dict = isinstance(data, dict)
656
- if data_is_dict:
657
- data_len = len(data)
658
- if not all(prop in data for prop in ['name']):
659
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must contain ['name'] properties", value=data, name="" + (name_prefix or "data") + "", definition={'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://packaging.python.org/en/latest/specifications/declaring-project-metadata/', 'title': 'Package metadata stored in the ``project`` table', '$$description': ['Data structure for the **project** table inside ``pyproject.toml``', '(as initially defined in :pep:`621`)'], 'type': 'object', 'properties': {'name': {'type': 'string', 'description': 'The name (primary identifier) of the project. MUST be statically defined.', 'format': 'pep508-identifier'}, 'version': {'type': 'string', 'description': 'The version of the project as supported by :pep:`440`.', 'format': 'pep440'}, 'description': {'type': 'string', '$$description': ['The `summary description of the project', '<https://packaging.python.org/specifications/core-metadata/#summary>`_']}, 'readme': {'$$description': ['`Full/detailed description of the project in the form of a README', '<https://www.python.org/dev/peps/pep-0621/#readme>`_', "with meaning similar to the one defined in `core metadata's Description", '<https://packaging.python.org/specifications/core-metadata/#description>`_'], 'oneOf': [{'type': 'string', '$$description': ['Relative path to a text file (UTF-8) containing the full description', 'of the project. If the file path ends in case-insensitive ``.md`` or', '``.rst`` suffixes, then the content-type is respectively', '``text/markdown`` or ``text/x-rst``']}, {'type': 'object', 'allOf': [{'anyOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to a text file containing the full description', 'of the project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', 'description': 'Full text describing the project.'}}, 'required': ['text']}]}, {'properties': {'content-type': {'type': 'string', '$$description': ['Content-type (:rfc:`1341`) of the full description', '(e.g. ``text/markdown``). The ``charset`` parameter is assumed', 'UTF-8 when not present.'], '$comment': 'TODO: add regex pattern or format?'}}, 'required': ['content-type']}]}]}, 'requires-python': {'type': 'string', 'format': 'pep508-versionspec', '$$description': ['`The Python version requirements of the project', '<https://packaging.python.org/specifications/core-metadata/#requires-python>`_.']}, 'license': {'description': '`Project license <https://www.python.org/dev/peps/pep-0621/#license>`_.', 'oneOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to the file (UTF-8) which contains the license for the', 'project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', '$$description': ['The license of the project whose meaning is that of the', '`License field from the core metadata', '<https://packaging.python.org/specifications/core-metadata/#license>`_.']}}, 'required': ['text']}]}, 'authors': {'type': 'array', 'items': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, '$$description': ["The people or organizations considered to be the 'authors' of the project.", 'The exact meaning is open to interpretation (e.g. original or primary authors,', 'current maintainers, or owners of the package).']}, 'maintainers': {'type': 'array', 'items': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, '$$description': ["The people or organizations considered to be the 'maintainers' of the project.", 'Similarly to ``authors``, the exact meaning is open to interpretation.']}, 'keywords': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of keywords to assist searching for the distribution in a larger catalog.'}, 'classifiers': {'type': 'array', 'items': {'type': 'string', 'format': 'trove-classifier', 'description': '`PyPI classifier <https://pypi.org/classifiers/>`_.'}, '$$description': ['`Trove classifiers <https://pypi.org/classifiers/>`_', 'which apply to the project.']}, 'urls': {'type': 'object', 'description': 'URLs associated with the project in the form ``label => value``.', 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', 'format': 'url'}}}, 'scripts': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'gui-scripts': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'entry-points': {'$$description': ['Instruct the installer to expose the given modules/functions via', '``entry-point`` discovery mechanism (useful for plugins).', 'More information available in the `Python packaging guide', '<https://packaging.python.org/specifications/entry-points/>`_.'], 'propertyNames': {'format': 'python-entrypoint-group'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}}}, 'dependencies': {'type': 'array', 'description': 'Project (mandatory) dependencies.', 'items': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}, 'optional-dependencies': {'type': 'object', 'description': 'Optional dependency for the project', 'propertyNames': {'format': 'pep508-identifier'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'array', 'items': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}}, 'dynamic': {'type': 'array', '$$description': ['Specifies which fields are intentionally unspecified and expected to be', 'dynamically provided by build tools'], 'items': {'enum': ['version', 'description', 'readme', 'requires-python', 'license', 'authors', 'maintainers', 'keywords', 'classifiers', 'urls', 'scripts', 'gui-scripts', 'entry-points', 'dependencies', 'optional-dependencies']}}}, 'required': ['name'], 'additionalProperties': False, 'if': {'not': {'required': ['dynamic'], 'properties': {'dynamic': {'contains': {'const': 'version'}, '$$description': ['version is listed in ``dynamic``']}}}, '$$comment': ['According to :pep:`621`:', ' If the core metadata specification lists a field as "Required", then', ' the metadata MUST specify the field statically or list it in dynamic', 'In turn, `core metadata`_ defines:', ' The required fields are: Metadata-Version, Name, Version.', ' All the other fields are optional.', 'Since ``Metadata-Version`` is defined by the build back-end, ``name`` and', '``version`` are the only mandatory information in ``pyproject.toml``.', '.. _core metadata: https://packaging.python.org/specifications/core-metadata/']}, 'then': {'required': ['version'], '$$description': ['version should be statically defined in the ``version`` field']}, 'definitions': {'author': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, 'entry-point-group': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'dependency': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}, rule='required')
660
- data_keys = set(data.keys())
661
- if "name" in data_keys:
662
- data_keys.remove("name")
663
- data__name = data["name"]
664
- if not isinstance(data__name, (str)):
665
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".name must be string", value=data__name, name="" + (name_prefix or "data") + ".name", definition={'type': 'string', 'description': 'The name (primary identifier) of the project. MUST be statically defined.', 'format': 'pep508-identifier'}, rule='type')
666
- if isinstance(data__name, str):
667
- if not custom_formats["pep508-identifier"](data__name):
668
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".name must be pep508-identifier", value=data__name, name="" + (name_prefix or "data") + ".name", definition={'type': 'string', 'description': 'The name (primary identifier) of the project. MUST be statically defined.', 'format': 'pep508-identifier'}, rule='format')
669
- if "version" in data_keys:
670
- data_keys.remove("version")
671
- data__version = data["version"]
672
- if not isinstance(data__version, (str)):
673
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".version must be string", value=data__version, name="" + (name_prefix or "data") + ".version", definition={'type': 'string', 'description': 'The version of the project as supported by :pep:`440`.', 'format': 'pep440'}, rule='type')
674
- if isinstance(data__version, str):
675
- if not custom_formats["pep440"](data__version):
676
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".version must be pep440", value=data__version, name="" + (name_prefix or "data") + ".version", definition={'type': 'string', 'description': 'The version of the project as supported by :pep:`440`.', 'format': 'pep440'}, rule='format')
677
- if "description" in data_keys:
678
- data_keys.remove("description")
679
- data__description = data["description"]
680
- if not isinstance(data__description, (str)):
681
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".description must be string", value=data__description, name="" + (name_prefix or "data") + ".description", definition={'type': 'string', '$$description': ['The `summary description of the project', '<https://packaging.python.org/specifications/core-metadata/#summary>`_']}, rule='type')
682
- if "readme" in data_keys:
683
- data_keys.remove("readme")
684
- data__readme = data["readme"]
685
- data__readme_one_of_count8 = 0
686
- if data__readme_one_of_count8 < 2:
687
- try:
688
- if not isinstance(data__readme, (str)):
689
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".readme must be string", value=data__readme, name="" + (name_prefix or "data") + ".readme", definition={'type': 'string', '$$description': ['Relative path to a text file (UTF-8) containing the full description', 'of the project. If the file path ends in case-insensitive ``.md`` or', '``.rst`` suffixes, then the content-type is respectively', '``text/markdown`` or ``text/x-rst``']}, rule='type')
690
- data__readme_one_of_count8 += 1
691
- except JsonSchemaValueException: pass
692
- if data__readme_one_of_count8 < 2:
693
- try:
694
- if not isinstance(data__readme, (dict)):
695
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".readme must be object", value=data__readme, name="" + (name_prefix or "data") + ".readme", definition={'type': 'object', 'allOf': [{'anyOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to a text file containing the full description', 'of the project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', 'description': 'Full text describing the project.'}}, 'required': ['text']}]}, {'properties': {'content-type': {'type': 'string', '$$description': ['Content-type (:rfc:`1341`) of the full description', '(e.g. ``text/markdown``). The ``charset`` parameter is assumed', 'UTF-8 when not present.'], '$comment': 'TODO: add regex pattern or format?'}}, 'required': ['content-type']}]}, rule='type')
696
- data__readme_any_of_count9 = 0
697
- if not data__readme_any_of_count9:
698
- try:
699
- data__readme_is_dict = isinstance(data__readme, dict)
700
- if data__readme_is_dict:
701
- data__readme_len = len(data__readme)
702
- if not all(prop in data__readme for prop in ['file']):
703
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".readme must contain ['file'] properties", value=data__readme, name="" + (name_prefix or "data") + ".readme", definition={'properties': {'file': {'type': 'string', '$$description': ['Relative path to a text file containing the full description', 'of the project.']}}, 'required': ['file']}, rule='required')
704
- data__readme_keys = set(data__readme.keys())
705
- if "file" in data__readme_keys:
706
- data__readme_keys.remove("file")
707
- data__readme__file = data__readme["file"]
708
- if not isinstance(data__readme__file, (str)):
709
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".readme.file must be string", value=data__readme__file, name="" + (name_prefix or "data") + ".readme.file", definition={'type': 'string', '$$description': ['Relative path to a text file containing the full description', 'of the project.']}, rule='type')
710
- data__readme_any_of_count9 += 1
711
- except JsonSchemaValueException: pass
712
- if not data__readme_any_of_count9:
713
- try:
714
- data__readme_is_dict = isinstance(data__readme, dict)
715
- if data__readme_is_dict:
716
- data__readme_len = len(data__readme)
717
- if not all(prop in data__readme for prop in ['text']):
718
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".readme must contain ['text'] properties", value=data__readme, name="" + (name_prefix or "data") + ".readme", definition={'properties': {'text': {'type': 'string', 'description': 'Full text describing the project.'}}, 'required': ['text']}, rule='required')
719
- data__readme_keys = set(data__readme.keys())
720
- if "text" in data__readme_keys:
721
- data__readme_keys.remove("text")
722
- data__readme__text = data__readme["text"]
723
- if not isinstance(data__readme__text, (str)):
724
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".readme.text must be string", value=data__readme__text, name="" + (name_prefix or "data") + ".readme.text", definition={'type': 'string', 'description': 'Full text describing the project.'}, rule='type')
725
- data__readme_any_of_count9 += 1
726
- except JsonSchemaValueException: pass
727
- if not data__readme_any_of_count9:
728
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".readme cannot be validated by any definition", value=data__readme, name="" + (name_prefix or "data") + ".readme", definition={'anyOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to a text file containing the full description', 'of the project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', 'description': 'Full text describing the project.'}}, 'required': ['text']}]}, rule='anyOf')
729
- data__readme_is_dict = isinstance(data__readme, dict)
730
- if data__readme_is_dict:
731
- data__readme_len = len(data__readme)
732
- if not all(prop in data__readme for prop in ['content-type']):
733
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".readme must contain ['content-type'] properties", value=data__readme, name="" + (name_prefix or "data") + ".readme", definition={'properties': {'content-type': {'type': 'string', '$$description': ['Content-type (:rfc:`1341`) of the full description', '(e.g. ``text/markdown``). The ``charset`` parameter is assumed', 'UTF-8 when not present.'], '$comment': 'TODO: add regex pattern or format?'}}, 'required': ['content-type']}, rule='required')
734
- data__readme_keys = set(data__readme.keys())
735
- if "content-type" in data__readme_keys:
736
- data__readme_keys.remove("content-type")
737
- data__readme__contenttype = data__readme["content-type"]
738
- if not isinstance(data__readme__contenttype, (str)):
739
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".readme.content-type must be string", value=data__readme__contenttype, name="" + (name_prefix or "data") + ".readme.content-type", definition={'type': 'string', '$$description': ['Content-type (:rfc:`1341`) of the full description', '(e.g. ``text/markdown``). The ``charset`` parameter is assumed', 'UTF-8 when not present.'], '$comment': 'TODO: add regex pattern or format?'}, rule='type')
740
- data__readme_one_of_count8 += 1
741
- except JsonSchemaValueException: pass
742
- if data__readme_one_of_count8 != 1:
743
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".readme must be valid exactly by one definition" + (" (" + str(data__readme_one_of_count8) + " matches found)"), value=data__readme, name="" + (name_prefix or "data") + ".readme", definition={'$$description': ['`Full/detailed description of the project in the form of a README', '<https://www.python.org/dev/peps/pep-0621/#readme>`_', "with meaning similar to the one defined in `core metadata's Description", '<https://packaging.python.org/specifications/core-metadata/#description>`_'], 'oneOf': [{'type': 'string', '$$description': ['Relative path to a text file (UTF-8) containing the full description', 'of the project. If the file path ends in case-insensitive ``.md`` or', '``.rst`` suffixes, then the content-type is respectively', '``text/markdown`` or ``text/x-rst``']}, {'type': 'object', 'allOf': [{'anyOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to a text file containing the full description', 'of the project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', 'description': 'Full text describing the project.'}}, 'required': ['text']}]}, {'properties': {'content-type': {'type': 'string', '$$description': ['Content-type (:rfc:`1341`) of the full description', '(e.g. ``text/markdown``). The ``charset`` parameter is assumed', 'UTF-8 when not present.'], '$comment': 'TODO: add regex pattern or format?'}}, 'required': ['content-type']}]}]}, rule='oneOf')
744
- if "requires-python" in data_keys:
745
- data_keys.remove("requires-python")
746
- data__requirespython = data["requires-python"]
747
- if not isinstance(data__requirespython, (str)):
748
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".requires-python must be string", value=data__requirespython, name="" + (name_prefix or "data") + ".requires-python", definition={'type': 'string', 'format': 'pep508-versionspec', '$$description': ['`The Python version requirements of the project', '<https://packaging.python.org/specifications/core-metadata/#requires-python>`_.']}, rule='type')
749
- if isinstance(data__requirespython, str):
750
- if not custom_formats["pep508-versionspec"](data__requirespython):
751
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".requires-python must be pep508-versionspec", value=data__requirespython, name="" + (name_prefix or "data") + ".requires-python", definition={'type': 'string', 'format': 'pep508-versionspec', '$$description': ['`The Python version requirements of the project', '<https://packaging.python.org/specifications/core-metadata/#requires-python>`_.']}, rule='format')
752
- if "license" in data_keys:
753
- data_keys.remove("license")
754
- data__license = data["license"]
755
- data__license_one_of_count10 = 0
756
- if data__license_one_of_count10 < 2:
757
- try:
758
- data__license_is_dict = isinstance(data__license, dict)
759
- if data__license_is_dict:
760
- data__license_len = len(data__license)
761
- if not all(prop in data__license for prop in ['file']):
762
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".license must contain ['file'] properties", value=data__license, name="" + (name_prefix or "data") + ".license", definition={'properties': {'file': {'type': 'string', '$$description': ['Relative path to the file (UTF-8) which contains the license for the', 'project.']}}, 'required': ['file']}, rule='required')
763
- data__license_keys = set(data__license.keys())
764
- if "file" in data__license_keys:
765
- data__license_keys.remove("file")
766
- data__license__file = data__license["file"]
767
- if not isinstance(data__license__file, (str)):
768
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".license.file must be string", value=data__license__file, name="" + (name_prefix or "data") + ".license.file", definition={'type': 'string', '$$description': ['Relative path to the file (UTF-8) which contains the license for the', 'project.']}, rule='type')
769
- data__license_one_of_count10 += 1
770
- except JsonSchemaValueException: pass
771
- if data__license_one_of_count10 < 2:
772
- try:
773
- data__license_is_dict = isinstance(data__license, dict)
774
- if data__license_is_dict:
775
- data__license_len = len(data__license)
776
- if not all(prop in data__license for prop in ['text']):
777
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".license must contain ['text'] properties", value=data__license, name="" + (name_prefix or "data") + ".license", definition={'properties': {'text': {'type': 'string', '$$description': ['The license of the project whose meaning is that of the', '`License field from the core metadata', '<https://packaging.python.org/specifications/core-metadata/#license>`_.']}}, 'required': ['text']}, rule='required')
778
- data__license_keys = set(data__license.keys())
779
- if "text" in data__license_keys:
780
- data__license_keys.remove("text")
781
- data__license__text = data__license["text"]
782
- if not isinstance(data__license__text, (str)):
783
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".license.text must be string", value=data__license__text, name="" + (name_prefix or "data") + ".license.text", definition={'type': 'string', '$$description': ['The license of the project whose meaning is that of the', '`License field from the core metadata', '<https://packaging.python.org/specifications/core-metadata/#license>`_.']}, rule='type')
784
- data__license_one_of_count10 += 1
785
- except JsonSchemaValueException: pass
786
- if data__license_one_of_count10 != 1:
787
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".license must be valid exactly by one definition" + (" (" + str(data__license_one_of_count10) + " matches found)"), value=data__license, name="" + (name_prefix or "data") + ".license", definition={'description': '`Project license <https://www.python.org/dev/peps/pep-0621/#license>`_.', 'oneOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to the file (UTF-8) which contains the license for the', 'project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', '$$description': ['The license of the project whose meaning is that of the', '`License field from the core metadata', '<https://packaging.python.org/specifications/core-metadata/#license>`_.']}}, 'required': ['text']}]}, rule='oneOf')
788
- if "authors" in data_keys:
789
- data_keys.remove("authors")
790
- data__authors = data["authors"]
791
- if not isinstance(data__authors, (list, tuple)):
792
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".authors must be array", value=data__authors, name="" + (name_prefix or "data") + ".authors", definition={'type': 'array', 'items': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, '$$description': ["The people or organizations considered to be the 'authors' of the project.", 'The exact meaning is open to interpretation (e.g. original or primary authors,', 'current maintainers, or owners of the package).']}, rule='type')
793
- data__authors_is_list = isinstance(data__authors, (list, tuple))
794
- if data__authors_is_list:
795
- data__authors_len = len(data__authors)
796
- for data__authors_x, data__authors_item in enumerate(data__authors):
797
- validate_https___packaging_python_org_en_latest_specifications_declaring_project_metadata___definitions_author(data__authors_item, custom_formats, (name_prefix or "data") + ".authors[{data__authors_x}]")
798
- if "maintainers" in data_keys:
799
- data_keys.remove("maintainers")
800
- data__maintainers = data["maintainers"]
801
- if not isinstance(data__maintainers, (list, tuple)):
802
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".maintainers must be array", value=data__maintainers, name="" + (name_prefix or "data") + ".maintainers", definition={'type': 'array', 'items': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, '$$description': ["The people or organizations considered to be the 'maintainers' of the project.", 'Similarly to ``authors``, the exact meaning is open to interpretation.']}, rule='type')
803
- data__maintainers_is_list = isinstance(data__maintainers, (list, tuple))
804
- if data__maintainers_is_list:
805
- data__maintainers_len = len(data__maintainers)
806
- for data__maintainers_x, data__maintainers_item in enumerate(data__maintainers):
807
- validate_https___packaging_python_org_en_latest_specifications_declaring_project_metadata___definitions_author(data__maintainers_item, custom_formats, (name_prefix or "data") + ".maintainers[{data__maintainers_x}]")
808
- if "keywords" in data_keys:
809
- data_keys.remove("keywords")
810
- data__keywords = data["keywords"]
811
- if not isinstance(data__keywords, (list, tuple)):
812
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".keywords must be array", value=data__keywords, name="" + (name_prefix or "data") + ".keywords", definition={'type': 'array', 'items': {'type': 'string'}, 'description': 'List of keywords to assist searching for the distribution in a larger catalog.'}, rule='type')
813
- data__keywords_is_list = isinstance(data__keywords, (list, tuple))
814
- if data__keywords_is_list:
815
- data__keywords_len = len(data__keywords)
816
- for data__keywords_x, data__keywords_item in enumerate(data__keywords):
817
- if not isinstance(data__keywords_item, (str)):
818
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".keywords[{data__keywords_x}]".format(**locals()) + " must be string", value=data__keywords_item, name="" + (name_prefix or "data") + ".keywords[{data__keywords_x}]".format(**locals()) + "", definition={'type': 'string'}, rule='type')
819
- if "classifiers" in data_keys:
820
- data_keys.remove("classifiers")
821
- data__classifiers = data["classifiers"]
822
- if not isinstance(data__classifiers, (list, tuple)):
823
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".classifiers must be array", value=data__classifiers, name="" + (name_prefix or "data") + ".classifiers", definition={'type': 'array', 'items': {'type': 'string', 'format': 'trove-classifier', 'description': '`PyPI classifier <https://pypi.org/classifiers/>`_.'}, '$$description': ['`Trove classifiers <https://pypi.org/classifiers/>`_', 'which apply to the project.']}, rule='type')
824
- data__classifiers_is_list = isinstance(data__classifiers, (list, tuple))
825
- if data__classifiers_is_list:
826
- data__classifiers_len = len(data__classifiers)
827
- for data__classifiers_x, data__classifiers_item in enumerate(data__classifiers):
828
- if not isinstance(data__classifiers_item, (str)):
829
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".classifiers[{data__classifiers_x}]".format(**locals()) + " must be string", value=data__classifiers_item, name="" + (name_prefix or "data") + ".classifiers[{data__classifiers_x}]".format(**locals()) + "", definition={'type': 'string', 'format': 'trove-classifier', 'description': '`PyPI classifier <https://pypi.org/classifiers/>`_.'}, rule='type')
830
- if isinstance(data__classifiers_item, str):
831
- if not custom_formats["trove-classifier"](data__classifiers_item):
832
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".classifiers[{data__classifiers_x}]".format(**locals()) + " must be trove-classifier", value=data__classifiers_item, name="" + (name_prefix or "data") + ".classifiers[{data__classifiers_x}]".format(**locals()) + "", definition={'type': 'string', 'format': 'trove-classifier', 'description': '`PyPI classifier <https://pypi.org/classifiers/>`_.'}, rule='format')
833
- if "urls" in data_keys:
834
- data_keys.remove("urls")
835
- data__urls = data["urls"]
836
- if not isinstance(data__urls, (dict)):
837
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".urls must be object", value=data__urls, name="" + (name_prefix or "data") + ".urls", definition={'type': 'object', 'description': 'URLs associated with the project in the form ``label => value``.', 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', 'format': 'url'}}}, rule='type')
838
- data__urls_is_dict = isinstance(data__urls, dict)
839
- if data__urls_is_dict:
840
- data__urls_keys = set(data__urls.keys())
841
- for data__urls_key, data__urls_val in data__urls.items():
842
- if REGEX_PATTERNS['^.+$'].search(data__urls_key):
843
- if data__urls_key in data__urls_keys:
844
- data__urls_keys.remove(data__urls_key)
845
- if not isinstance(data__urls_val, (str)):
846
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".urls.{data__urls_key}".format(**locals()) + " must be string", value=data__urls_val, name="" + (name_prefix or "data") + ".urls.{data__urls_key}".format(**locals()) + "", definition={'type': 'string', 'format': 'url'}, rule='type')
847
- if isinstance(data__urls_val, str):
848
- if not custom_formats["url"](data__urls_val):
849
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".urls.{data__urls_key}".format(**locals()) + " must be url", value=data__urls_val, name="" + (name_prefix or "data") + ".urls.{data__urls_key}".format(**locals()) + "", definition={'type': 'string', 'format': 'url'}, rule='format')
850
- if data__urls_keys:
851
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".urls must not contain "+str(data__urls_keys)+" properties", value=data__urls, name="" + (name_prefix or "data") + ".urls", definition={'type': 'object', 'description': 'URLs associated with the project in the form ``label => value``.', 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', 'format': 'url'}}}, rule='additionalProperties')
852
- if "scripts" in data_keys:
853
- data_keys.remove("scripts")
854
- data__scripts = data["scripts"]
855
- validate_https___packaging_python_org_en_latest_specifications_declaring_project_metadata___definitions_entry_point_group(data__scripts, custom_formats, (name_prefix or "data") + ".scripts")
856
- if "gui-scripts" in data_keys:
857
- data_keys.remove("gui-scripts")
858
- data__guiscripts = data["gui-scripts"]
859
- validate_https___packaging_python_org_en_latest_specifications_declaring_project_metadata___definitions_entry_point_group(data__guiscripts, custom_formats, (name_prefix or "data") + ".gui-scripts")
860
- if "entry-points" in data_keys:
861
- data_keys.remove("entry-points")
862
- data__entrypoints = data["entry-points"]
863
- data__entrypoints_is_dict = isinstance(data__entrypoints, dict)
864
- if data__entrypoints_is_dict:
865
- data__entrypoints_keys = set(data__entrypoints.keys())
866
- for data__entrypoints_key, data__entrypoints_val in data__entrypoints.items():
867
- if REGEX_PATTERNS['^.+$'].search(data__entrypoints_key):
868
- if data__entrypoints_key in data__entrypoints_keys:
869
- data__entrypoints_keys.remove(data__entrypoints_key)
870
- validate_https___packaging_python_org_en_latest_specifications_declaring_project_metadata___definitions_entry_point_group(data__entrypoints_val, custom_formats, (name_prefix or "data") + ".entry-points.{data__entrypoints_key}")
871
- if data__entrypoints_keys:
872
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".entry-points must not contain "+str(data__entrypoints_keys)+" properties", value=data__entrypoints, name="" + (name_prefix or "data") + ".entry-points", definition={'$$description': ['Instruct the installer to expose the given modules/functions via', '``entry-point`` discovery mechanism (useful for plugins).', 'More information available in the `Python packaging guide', '<https://packaging.python.org/specifications/entry-points/>`_.'], 'propertyNames': {'format': 'python-entrypoint-group'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}}}, rule='additionalProperties')
873
- data__entrypoints_len = len(data__entrypoints)
874
- if data__entrypoints_len != 0:
875
- data__entrypoints_property_names = True
876
- for data__entrypoints_key in data__entrypoints:
877
- try:
878
- if isinstance(data__entrypoints_key, str):
879
- if not custom_formats["python-entrypoint-group"](data__entrypoints_key):
880
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".entry-points must be python-entrypoint-group", value=data__entrypoints_key, name="" + (name_prefix or "data") + ".entry-points", definition={'format': 'python-entrypoint-group'}, rule='format')
881
- except JsonSchemaValueException:
882
- data__entrypoints_property_names = False
883
- if not data__entrypoints_property_names:
884
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".entry-points must be named by propertyName definition", value=data__entrypoints, name="" + (name_prefix or "data") + ".entry-points", definition={'$$description': ['Instruct the installer to expose the given modules/functions via', '``entry-point`` discovery mechanism (useful for plugins).', 'More information available in the `Python packaging guide', '<https://packaging.python.org/specifications/entry-points/>`_.'], 'propertyNames': {'format': 'python-entrypoint-group'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}}}, rule='propertyNames')
885
- if "dependencies" in data_keys:
886
- data_keys.remove("dependencies")
887
- data__dependencies = data["dependencies"]
888
- if not isinstance(data__dependencies, (list, tuple)):
889
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dependencies must be array", value=data__dependencies, name="" + (name_prefix or "data") + ".dependencies", definition={'type': 'array', 'description': 'Project (mandatory) dependencies.', 'items': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}, rule='type')
890
- data__dependencies_is_list = isinstance(data__dependencies, (list, tuple))
891
- if data__dependencies_is_list:
892
- data__dependencies_len = len(data__dependencies)
893
- for data__dependencies_x, data__dependencies_item in enumerate(data__dependencies):
894
- validate_https___packaging_python_org_en_latest_specifications_declaring_project_metadata___definitions_dependency(data__dependencies_item, custom_formats, (name_prefix or "data") + ".dependencies[{data__dependencies_x}]")
895
- if "optional-dependencies" in data_keys:
896
- data_keys.remove("optional-dependencies")
897
- data__optionaldependencies = data["optional-dependencies"]
898
- if not isinstance(data__optionaldependencies, (dict)):
899
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".optional-dependencies must be object", value=data__optionaldependencies, name="" + (name_prefix or "data") + ".optional-dependencies", definition={'type': 'object', 'description': 'Optional dependency for the project', 'propertyNames': {'format': 'pep508-identifier'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'array', 'items': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}}, rule='type')
900
- data__optionaldependencies_is_dict = isinstance(data__optionaldependencies, dict)
901
- if data__optionaldependencies_is_dict:
902
- data__optionaldependencies_keys = set(data__optionaldependencies.keys())
903
- for data__optionaldependencies_key, data__optionaldependencies_val in data__optionaldependencies.items():
904
- if REGEX_PATTERNS['^.+$'].search(data__optionaldependencies_key):
905
- if data__optionaldependencies_key in data__optionaldependencies_keys:
906
- data__optionaldependencies_keys.remove(data__optionaldependencies_key)
907
- if not isinstance(data__optionaldependencies_val, (list, tuple)):
908
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".optional-dependencies.{data__optionaldependencies_key}".format(**locals()) + " must be array", value=data__optionaldependencies_val, name="" + (name_prefix or "data") + ".optional-dependencies.{data__optionaldependencies_key}".format(**locals()) + "", definition={'type': 'array', 'items': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}, rule='type')
909
- data__optionaldependencies_val_is_list = isinstance(data__optionaldependencies_val, (list, tuple))
910
- if data__optionaldependencies_val_is_list:
911
- data__optionaldependencies_val_len = len(data__optionaldependencies_val)
912
- for data__optionaldependencies_val_x, data__optionaldependencies_val_item in enumerate(data__optionaldependencies_val):
913
- validate_https___packaging_python_org_en_latest_specifications_declaring_project_metadata___definitions_dependency(data__optionaldependencies_val_item, custom_formats, (name_prefix or "data") + ".optional-dependencies.{data__optionaldependencies_key}[{data__optionaldependencies_val_x}]")
914
- if data__optionaldependencies_keys:
915
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".optional-dependencies must not contain "+str(data__optionaldependencies_keys)+" properties", value=data__optionaldependencies, name="" + (name_prefix or "data") + ".optional-dependencies", definition={'type': 'object', 'description': 'Optional dependency for the project', 'propertyNames': {'format': 'pep508-identifier'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'array', 'items': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}}, rule='additionalProperties')
916
- data__optionaldependencies_len = len(data__optionaldependencies)
917
- if data__optionaldependencies_len != 0:
918
- data__optionaldependencies_property_names = True
919
- for data__optionaldependencies_key in data__optionaldependencies:
920
- try:
921
- if isinstance(data__optionaldependencies_key, str):
922
- if not custom_formats["pep508-identifier"](data__optionaldependencies_key):
923
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".optional-dependencies must be pep508-identifier", value=data__optionaldependencies_key, name="" + (name_prefix or "data") + ".optional-dependencies", definition={'format': 'pep508-identifier'}, rule='format')
924
- except JsonSchemaValueException:
925
- data__optionaldependencies_property_names = False
926
- if not data__optionaldependencies_property_names:
927
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".optional-dependencies must be named by propertyName definition", value=data__optionaldependencies, name="" + (name_prefix or "data") + ".optional-dependencies", definition={'type': 'object', 'description': 'Optional dependency for the project', 'propertyNames': {'format': 'pep508-identifier'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'array', 'items': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}}, rule='propertyNames')
928
- if "dynamic" in data_keys:
929
- data_keys.remove("dynamic")
930
- data__dynamic = data["dynamic"]
931
- if not isinstance(data__dynamic, (list, tuple)):
932
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic must be array", value=data__dynamic, name="" + (name_prefix or "data") + ".dynamic", definition={'type': 'array', '$$description': ['Specifies which fields are intentionally unspecified and expected to be', 'dynamically provided by build tools'], 'items': {'enum': ['version', 'description', 'readme', 'requires-python', 'license', 'authors', 'maintainers', 'keywords', 'classifiers', 'urls', 'scripts', 'gui-scripts', 'entry-points', 'dependencies', 'optional-dependencies']}}, rule='type')
933
- data__dynamic_is_list = isinstance(data__dynamic, (list, tuple))
934
- if data__dynamic_is_list:
935
- data__dynamic_len = len(data__dynamic)
936
- for data__dynamic_x, data__dynamic_item in enumerate(data__dynamic):
937
- if data__dynamic_item not in ['version', 'description', 'readme', 'requires-python', 'license', 'authors', 'maintainers', 'keywords', 'classifiers', 'urls', 'scripts', 'gui-scripts', 'entry-points', 'dependencies', 'optional-dependencies']:
938
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic[{data__dynamic_x}]".format(**locals()) + " must be one of ['version', 'description', 'readme', 'requires-python', 'license', 'authors', 'maintainers', 'keywords', 'classifiers', 'urls', 'scripts', 'gui-scripts', 'entry-points', 'dependencies', 'optional-dependencies']", value=data__dynamic_item, name="" + (name_prefix or "data") + ".dynamic[{data__dynamic_x}]".format(**locals()) + "", definition={'enum': ['version', 'description', 'readme', 'requires-python', 'license', 'authors', 'maintainers', 'keywords', 'classifiers', 'urls', 'scripts', 'gui-scripts', 'entry-points', 'dependencies', 'optional-dependencies']}, rule='enum')
939
- if data_keys:
940
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must not contain "+str(data_keys)+" properties", value=data, name="" + (name_prefix or "data") + "", definition={'$schema': 'http://json-schema.org/draft-07/schema', '$id': 'https://packaging.python.org/en/latest/specifications/declaring-project-metadata/', 'title': 'Package metadata stored in the ``project`` table', '$$description': ['Data structure for the **project** table inside ``pyproject.toml``', '(as initially defined in :pep:`621`)'], 'type': 'object', 'properties': {'name': {'type': 'string', 'description': 'The name (primary identifier) of the project. MUST be statically defined.', 'format': 'pep508-identifier'}, 'version': {'type': 'string', 'description': 'The version of the project as supported by :pep:`440`.', 'format': 'pep440'}, 'description': {'type': 'string', '$$description': ['The `summary description of the project', '<https://packaging.python.org/specifications/core-metadata/#summary>`_']}, 'readme': {'$$description': ['`Full/detailed description of the project in the form of a README', '<https://www.python.org/dev/peps/pep-0621/#readme>`_', "with meaning similar to the one defined in `core metadata's Description", '<https://packaging.python.org/specifications/core-metadata/#description>`_'], 'oneOf': [{'type': 'string', '$$description': ['Relative path to a text file (UTF-8) containing the full description', 'of the project. If the file path ends in case-insensitive ``.md`` or', '``.rst`` suffixes, then the content-type is respectively', '``text/markdown`` or ``text/x-rst``']}, {'type': 'object', 'allOf': [{'anyOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to a text file containing the full description', 'of the project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', 'description': 'Full text describing the project.'}}, 'required': ['text']}]}, {'properties': {'content-type': {'type': 'string', '$$description': ['Content-type (:rfc:`1341`) of the full description', '(e.g. ``text/markdown``). The ``charset`` parameter is assumed', 'UTF-8 when not present.'], '$comment': 'TODO: add regex pattern or format?'}}, 'required': ['content-type']}]}]}, 'requires-python': {'type': 'string', 'format': 'pep508-versionspec', '$$description': ['`The Python version requirements of the project', '<https://packaging.python.org/specifications/core-metadata/#requires-python>`_.']}, 'license': {'description': '`Project license <https://www.python.org/dev/peps/pep-0621/#license>`_.', 'oneOf': [{'properties': {'file': {'type': 'string', '$$description': ['Relative path to the file (UTF-8) which contains the license for the', 'project.']}}, 'required': ['file']}, {'properties': {'text': {'type': 'string', '$$description': ['The license of the project whose meaning is that of the', '`License field from the core metadata', '<https://packaging.python.org/specifications/core-metadata/#license>`_.']}}, 'required': ['text']}]}, 'authors': {'type': 'array', 'items': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, '$$description': ["The people or organizations considered to be the 'authors' of the project.", 'The exact meaning is open to interpretation (e.g. original or primary authors,', 'current maintainers, or owners of the package).']}, 'maintainers': {'type': 'array', 'items': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, '$$description': ["The people or organizations considered to be the 'maintainers' of the project.", 'Similarly to ``authors``, the exact meaning is open to interpretation.']}, 'keywords': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of keywords to assist searching for the distribution in a larger catalog.'}, 'classifiers': {'type': 'array', 'items': {'type': 'string', 'format': 'trove-classifier', 'description': '`PyPI classifier <https://pypi.org/classifiers/>`_.'}, '$$description': ['`Trove classifiers <https://pypi.org/classifiers/>`_', 'which apply to the project.']}, 'urls': {'type': 'object', 'description': 'URLs associated with the project in the form ``label => value``.', 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', 'format': 'url'}}}, 'scripts': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'gui-scripts': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'entry-points': {'$$description': ['Instruct the installer to expose the given modules/functions via', '``entry-point`` discovery mechanism (useful for plugins).', 'More information available in the `Python packaging guide', '<https://packaging.python.org/specifications/entry-points/>`_.'], 'propertyNames': {'format': 'python-entrypoint-group'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}}}, 'dependencies': {'type': 'array', 'description': 'Project (mandatory) dependencies.', 'items': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}, 'optional-dependencies': {'type': 'object', 'description': 'Optional dependency for the project', 'propertyNames': {'format': 'pep508-identifier'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'array', 'items': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}}, 'dynamic': {'type': 'array', '$$description': ['Specifies which fields are intentionally unspecified and expected to be', 'dynamically provided by build tools'], 'items': {'enum': ['version', 'description', 'readme', 'requires-python', 'license', 'authors', 'maintainers', 'keywords', 'classifiers', 'urls', 'scripts', 'gui-scripts', 'entry-points', 'dependencies', 'optional-dependencies']}}}, 'required': ['name'], 'additionalProperties': False, 'if': {'not': {'required': ['dynamic'], 'properties': {'dynamic': {'contains': {'const': 'version'}, '$$description': ['version is listed in ``dynamic``']}}}, '$$comment': ['According to :pep:`621`:', ' If the core metadata specification lists a field as "Required", then', ' the metadata MUST specify the field statically or list it in dynamic', 'In turn, `core metadata`_ defines:', ' The required fields are: Metadata-Version, Name, Version.', ' All the other fields are optional.', 'Since ``Metadata-Version`` is defined by the build back-end, ``name`` and', '``version`` are the only mandatory information in ``pyproject.toml``.', '.. _core metadata: https://packaging.python.org/specifications/core-metadata/']}, 'then': {'required': ['version'], '$$description': ['version should be statically defined in the ``version`` field']}, 'definitions': {'author': {'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, 'entry-point-group': {'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, 'dependency': {'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}}}, rule='additionalProperties')
941
- try:
942
- try:
943
- data_is_dict = isinstance(data, dict)
944
- if data_is_dict:
945
- data_len = len(data)
946
- if not all(prop in data for prop in ['dynamic']):
947
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must contain ['dynamic'] properties", value=data, name="" + (name_prefix or "data") + "", definition={'required': ['dynamic'], 'properties': {'dynamic': {'contains': {'const': 'version'}, '$$description': ['version is listed in ``dynamic``']}}}, rule='required')
948
- data_keys = set(data.keys())
949
- if "dynamic" in data_keys:
950
- data_keys.remove("dynamic")
951
- data__dynamic = data["dynamic"]
952
- data__dynamic_is_list = isinstance(data__dynamic, (list, tuple))
953
- if data__dynamic_is_list:
954
- data__dynamic_contains = False
955
- for data__dynamic_key in data__dynamic:
956
- try:
957
- if data__dynamic_key != "version":
958
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic must be same as const definition: version", value=data__dynamic_key, name="" + (name_prefix or "data") + ".dynamic", definition={'const': 'version'}, rule='const')
959
- data__dynamic_contains = True
960
- break
961
- except JsonSchemaValueException: pass
962
- if not data__dynamic_contains:
963
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".dynamic must contain one of contains definition", value=data__dynamic, name="" + (name_prefix or "data") + ".dynamic", definition={'contains': {'const': 'version'}, '$$description': ['version is listed in ``dynamic``']}, rule='contains')
964
- except JsonSchemaValueException: pass
965
- else:
966
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must NOT match a disallowed definition", value=data, name="" + (name_prefix or "data") + "", definition={'not': {'required': ['dynamic'], 'properties': {'dynamic': {'contains': {'const': 'version'}, '$$description': ['version is listed in ``dynamic``']}}}, '$$comment': ['According to :pep:`621`:', ' If the core metadata specification lists a field as "Required", then', ' the metadata MUST specify the field statically or list it in dynamic', 'In turn, `core metadata`_ defines:', ' The required fields are: Metadata-Version, Name, Version.', ' All the other fields are optional.', 'Since ``Metadata-Version`` is defined by the build back-end, ``name`` and', '``version`` are the only mandatory information in ``pyproject.toml``.', '.. _core metadata: https://packaging.python.org/specifications/core-metadata/']}, rule='not')
967
- except JsonSchemaValueException:
968
- pass
969
- else:
970
- data_is_dict = isinstance(data, dict)
971
- if data_is_dict:
972
- data_len = len(data)
973
- if not all(prop in data for prop in ['version']):
974
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must contain ['version'] properties", value=data, name="" + (name_prefix or "data") + "", definition={'required': ['version'], '$$description': ['version should be statically defined in the ``version`` field']}, rule='required')
975
- return data
976
-
977
- def validate_https___packaging_python_org_en_latest_specifications_declaring_project_metadata___definitions_dependency(data, custom_formats={}, name_prefix=None):
978
- if not isinstance(data, (str)):
979
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be string", value=data, name="" + (name_prefix or "data") + "", definition={'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}, rule='type')
980
- if isinstance(data, str):
981
- if not custom_formats["pep508"](data):
982
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be pep508", value=data, name="" + (name_prefix or "data") + "", definition={'$id': '#/definitions/dependency', 'title': 'Dependency', 'type': 'string', 'description': 'Project dependency specification according to PEP 508', 'format': 'pep508'}, rule='format')
983
- return data
984
-
985
- def validate_https___packaging_python_org_en_latest_specifications_declaring_project_metadata___definitions_entry_point_group(data, custom_formats={}, name_prefix=None):
986
- if not isinstance(data, (dict)):
987
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be object", value=data, name="" + (name_prefix or "data") + "", definition={'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, rule='type')
988
- data_is_dict = isinstance(data, dict)
989
- if data_is_dict:
990
- data_keys = set(data.keys())
991
- for data_key, data_val in data.items():
992
- if REGEX_PATTERNS['^.+$'].search(data_key):
993
- if data_key in data_keys:
994
- data_keys.remove(data_key)
995
- if not isinstance(data_val, (str)):
996
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".{data_key}".format(**locals()) + " must be string", value=data_val, name="" + (name_prefix or "data") + ".{data_key}".format(**locals()) + "", definition={'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}, rule='type')
997
- if isinstance(data_val, str):
998
- if not custom_formats["python-entrypoint-reference"](data_val):
999
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".{data_key}".format(**locals()) + " must be python-entrypoint-reference", value=data_val, name="" + (name_prefix or "data") + ".{data_key}".format(**locals()) + "", definition={'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}, rule='format')
1000
- if data_keys:
1001
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must not contain "+str(data_keys)+" properties", value=data, name="" + (name_prefix or "data") + "", definition={'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, rule='additionalProperties')
1002
- data_len = len(data)
1003
- if data_len != 0:
1004
- data_property_names = True
1005
- for data_key in data:
1006
- try:
1007
- if isinstance(data_key, str):
1008
- if not custom_formats["python-entrypoint-name"](data_key):
1009
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be python-entrypoint-name", value=data_key, name="" + (name_prefix or "data") + "", definition={'format': 'python-entrypoint-name'}, rule='format')
1010
- except JsonSchemaValueException:
1011
- data_property_names = False
1012
- if not data_property_names:
1013
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be named by propertyName definition", value=data, name="" + (name_prefix or "data") + "", definition={'$id': '#/definitions/entry-point-group', 'title': 'Entry-points', 'type': 'object', '$$description': ['Entry-points are grouped together to indicate what sort of capabilities they', 'provide.', 'See the `packaging guides', '<https://packaging.python.org/specifications/entry-points/>`_', 'and `setuptools docs', '<https://setuptools.pypa.io/en/latest/userguide/entry_point.html>`_', 'for more information.'], 'propertyNames': {'format': 'python-entrypoint-name'}, 'additionalProperties': False, 'patternProperties': {'^.+$': {'type': 'string', '$$description': ['Reference to a Python object. It is either in the form', '``importable.module``, or ``importable.module:object.attr``.'], 'format': 'python-entrypoint-reference', '$comment': 'https://packaging.python.org/specifications/entry-points/'}}}, rule='propertyNames')
1014
- return data
1015
-
1016
- def validate_https___packaging_python_org_en_latest_specifications_declaring_project_metadata___definitions_author(data, custom_formats={}, name_prefix=None):
1017
- if not isinstance(data, (dict)):
1018
- raise JsonSchemaValueException("" + (name_prefix or "data") + " must be object", value=data, name="" + (name_prefix or "data") + "", definition={'$id': '#/definitions/author', 'title': 'Author or Maintainer', '$comment': 'https://www.python.org/dev/peps/pep-0621/#authors-maintainers', 'type': 'object', 'properties': {'name': {'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, 'email': {'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}}}, rule='type')
1019
- data_is_dict = isinstance(data, dict)
1020
- if data_is_dict:
1021
- data_keys = set(data.keys())
1022
- if "name" in data_keys:
1023
- data_keys.remove("name")
1024
- data__name = data["name"]
1025
- if not isinstance(data__name, (str)):
1026
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".name must be string", value=data__name, name="" + (name_prefix or "data") + ".name", definition={'type': 'string', '$$description': ['MUST be a valid email name, i.e. whatever can be put as a name, before an', 'email, in :rfc:`822`.']}, rule='type')
1027
- if "email" in data_keys:
1028
- data_keys.remove("email")
1029
- data__email = data["email"]
1030
- if not isinstance(data__email, (str)):
1031
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".email must be string", value=data__email, name="" + (name_prefix or "data") + ".email", definition={'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}, rule='type')
1032
- if isinstance(data__email, str):
1033
- if not REGEX_PATTERNS["idn-email_re_pattern"].match(data__email):
1034
- raise JsonSchemaValueException("" + (name_prefix or "data") + ".email must be idn-email", value=data__email, name="" + (name_prefix or "data") + ".email", definition={'type': 'string', 'format': 'idn-email', 'description': 'MUST be a valid email address'}, rule='format')
1035
- return data