py2docfx 0.1.9.dev1897607__py3-none-any.whl → 0.1.9.dev1926139__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (397) hide show
  1. py2docfx/__main__.py +77 -22
  2. py2docfx/convert_prepare/environment.py +59 -19
  3. py2docfx/convert_prepare/generate_document.py +12 -5
  4. py2docfx/convert_prepare/get_source.py +5 -1
  5. py2docfx/convert_prepare/git.py +24 -20
  6. py2docfx/convert_prepare/package_info.py +15 -9
  7. py2docfx/convert_prepare/pip_utils.py +29 -8
  8. py2docfx/convert_prepare/post_process/merge_toc.py +5 -1
  9. py2docfx/convert_prepare/sphinx_caller.py +31 -14
  10. py2docfx/convert_prepare/tests/test_generate_document.py +6 -4
  11. py2docfx/convert_prepare/tests/test_get_source.py +6 -6
  12. py2docfx/convert_prepare/tests/test_params.py +1 -1
  13. py2docfx/convert_prepare/tests/test_sphinx_caller.py +5 -3
  14. py2docfx/convert_prepare/tests/utils.py +11 -0
  15. py2docfx/docfx_yaml/build_finished.py +11 -3
  16. py2docfx/docfx_yaml/convert_class.py +4 -2
  17. py2docfx/docfx_yaml/convert_enum.py +4 -2
  18. py2docfx/docfx_yaml/convert_module.py +4 -2
  19. py2docfx/docfx_yaml/convert_package.py +4 -2
  20. py2docfx/docfx_yaml/logger.py +68 -0
  21. py2docfx/docfx_yaml/process_doctree.py +6 -4
  22. py2docfx/docfx_yaml/translator.py +5 -7
  23. py2docfx/docfx_yaml/writer.py +10 -4
  24. py2docfx/docfx_yaml/yaml_builder.py +0 -1
  25. py2docfx/venv/basevenv/Lib/site-packages/_distutils_hack/__init__.py +2 -3
  26. py2docfx/venv/basevenv/Lib/site-packages/packaging/__init__.py +2 -2
  27. py2docfx/venv/basevenv/Lib/site-packages/packaging/_elffile.py +4 -4
  28. py2docfx/venv/basevenv/Lib/site-packages/packaging/_manylinux.py +1 -0
  29. py2docfx/venv/basevenv/Lib/site-packages/packaging/licenses/__init__.py +145 -0
  30. py2docfx/venv/basevenv/Lib/site-packages/packaging/licenses/_spdx.py +759 -0
  31. py2docfx/venv/basevenv/Lib/site-packages/packaging/markers.py +15 -9
  32. py2docfx/venv/basevenv/Lib/site-packages/packaging/metadata.py +83 -24
  33. py2docfx/venv/basevenv/Lib/site-packages/packaging/specifiers.py +19 -8
  34. py2docfx/venv/basevenv/Lib/site-packages/packaging/tags.py +78 -29
  35. py2docfx/venv/basevenv/Lib/site-packages/packaging/utils.py +33 -44
  36. py2docfx/venv/basevenv/Lib/site-packages/packaging/version.py +26 -7
  37. py2docfx/venv/basevenv/Lib/site-packages/pkg_resources/__init__.py +27 -32
  38. py2docfx/venv/basevenv/Lib/site-packages/pkg_resources/tests/test_pkg_resources.py +4 -4
  39. py2docfx/venv/basevenv/Lib/site-packages/pkg_resources/tests/test_resources.py +7 -7
  40. py2docfx/venv/basevenv/Lib/site-packages/pkg_resources/tests/test_working_set.py +1 -1
  41. py2docfx/venv/basevenv/Lib/site-packages/setuptools/__init__.py +7 -9
  42. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compat/py38.py +1 -1
  43. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/dir_util.py +3 -8
  44. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/tests/test_dir_util.py +22 -0
  45. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_importlib.py +1 -4
  46. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_path.py +5 -8
  47. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_reqs.py +2 -1
  48. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_shutil.py +53 -0
  49. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/__init__.py +2 -2
  50. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/_elffile.py +4 -4
  51. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/_manylinux.py +1 -0
  52. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/licenses/__init__.py +145 -0
  53. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/licenses/_spdx.py +759 -0
  54. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/markers.py +15 -9
  55. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/metadata.py +83 -24
  56. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/specifiers.py +19 -8
  57. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/tags.py +78 -29
  58. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/utils.py +33 -44
  59. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/version.py +26 -7
  60. py2docfx/venv/basevenv/Lib/site-packages/setuptools/archive_util.py +6 -4
  61. py2docfx/venv/basevenv/Lib/site-packages/setuptools/build_meta.py +25 -19
  62. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/__init__.py +9 -1
  63. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/_requirestxt.py +4 -4
  64. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/alias.py +3 -4
  65. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/bdist_egg.py +27 -13
  66. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/bdist_rpm.py +1 -1
  67. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/bdist_wheel.py +43 -84
  68. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/build.py +3 -3
  69. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/build_clib.py +2 -9
  70. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/build_ext.py +15 -14
  71. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/build_py.py +26 -30
  72. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/develop.py +4 -4
  73. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/dist_info.py +3 -7
  74. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/easy_install.py +57 -80
  75. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/editable_wheel.py +21 -23
  76. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/egg_info.py +32 -32
  77. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/install.py +31 -13
  78. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/install_egg_info.py +4 -4
  79. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/install_lib.py +10 -7
  80. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/install_scripts.py +2 -2
  81. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/rotate.py +6 -6
  82. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/saveopts.py +2 -2
  83. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/sdist.py +11 -10
  84. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/setopt.py +3 -3
  85. py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +19 -14
  86. py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/expand.py +22 -16
  87. py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/pyprojecttoml.py +12 -10
  88. py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/setupcfg.py +39 -47
  89. py2docfx/venv/basevenv/Lib/site-packages/setuptools/depends.py +26 -7
  90. py2docfx/venv/basevenv/Lib/site-packages/setuptools/discovery.py +21 -14
  91. py2docfx/venv/basevenv/Lib/site-packages/setuptools/dist.py +51 -47
  92. py2docfx/venv/basevenv/Lib/site-packages/setuptools/errors.py +21 -26
  93. py2docfx/venv/basevenv/Lib/site-packages/setuptools/extension.py +18 -6
  94. py2docfx/venv/basevenv/Lib/site-packages/setuptools/glob.py +35 -15
  95. py2docfx/venv/basevenv/Lib/site-packages/setuptools/installer.py +6 -1
  96. py2docfx/venv/basevenv/Lib/site-packages/setuptools/launch.py +1 -1
  97. py2docfx/venv/basevenv/Lib/site-packages/setuptools/logging.py +2 -2
  98. py2docfx/venv/basevenv/Lib/site-packages/setuptools/modified.py +16 -6
  99. py2docfx/venv/basevenv/Lib/site-packages/setuptools/monkey.py +5 -5
  100. py2docfx/venv/basevenv/Lib/site-packages/setuptools/msvc.py +35 -24
  101. py2docfx/venv/basevenv/Lib/site-packages/setuptools/namespaces.py +2 -2
  102. py2docfx/venv/basevenv/Lib/site-packages/setuptools/package_index.py +42 -43
  103. py2docfx/venv/basevenv/Lib/site-packages/setuptools/sandbox.py +19 -12
  104. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/downloads/__init__.py +5 -3
  105. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py +7 -6
  106. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/test_expand.py +3 -3
  107. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/test_pyprojecttoml.py +2 -2
  108. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/test_pyprojecttoml_dynamic_deps.py +21 -11
  109. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/test_setupcfg.py +12 -16
  110. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/integration/test_pip_install_sdist.py +10 -11
  111. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_bdist_egg.py +7 -3
  112. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_bdist_wheel.py +10 -33
  113. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_build_ext.py +2 -2
  114. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_build_meta.py +1 -1
  115. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_build_py.py +6 -6
  116. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_config_discovery.py +4 -4
  117. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_core_metadata.py +171 -76
  118. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_dist.py +11 -13
  119. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_dist_info.py +1 -1
  120. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_distutils_adoption.py +44 -5
  121. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_easy_install.py +32 -26
  122. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_editable_install.py +10 -6
  123. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_egg_info.py +15 -15
  124. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_glob.py +1 -1
  125. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_logging.py +1 -1
  126. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_manifest.py +2 -8
  127. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_packageindex.py +6 -17
  128. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_setuptools.py +4 -3
  129. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_shutil_wrapper.py +23 -0
  130. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_wheel.py +29 -20
  131. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_windows_wrappers.py +3 -3
  132. py2docfx/venv/basevenv/Lib/site-packages/setuptools/unicode_utils.py +3 -3
  133. py2docfx/venv/basevenv/Lib/site-packages/setuptools/warnings.py +5 -2
  134. py2docfx/venv/basevenv/Lib/site-packages/setuptools/wheel.py +4 -4
  135. py2docfx/venv/basevenv/Lib/site-packages/wheel/__init__.py +1 -1
  136. py2docfx/venv/basevenv/Lib/site-packages/wheel/_bdist_wheel.py +9 -0
  137. py2docfx/venv/basevenv/Lib/site-packages/wheel/bdist_wheel.py +17 -2
  138. py2docfx/venv/basevenv/Lib/site-packages/wheel/cli/convert.py +279 -220
  139. py2docfx/venv/basevenv/Lib/site-packages/wheel/util.py +0 -9
  140. py2docfx/venv/venv1/Lib/site-packages/_distutils_hack/__init__.py +2 -3
  141. py2docfx/venv/venv1/Lib/site-packages/azure/core/_enum_meta.py +1 -1
  142. py2docfx/venv/venv1/Lib/site-packages/azure/core/_pipeline_client.py +2 -2
  143. py2docfx/venv/venv1/Lib/site-packages/azure/core/_pipeline_client_async.py +5 -3
  144. py2docfx/venv/venv1/Lib/site-packages/azure/core/_version.py +1 -1
  145. py2docfx/venv/venv1/Lib/site-packages/azure/core/credentials.py +6 -1
  146. py2docfx/venv/venv1/Lib/site-packages/azure/core/exceptions.py +13 -5
  147. py2docfx/venv/venv1/Lib/site-packages/azure/core/messaging.py +3 -3
  148. py2docfx/venv/venv1/Lib/site-packages/azure/core/paging.py +1 -1
  149. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/__init__.py +16 -5
  150. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/_base.py +15 -4
  151. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/_base_async.py +20 -10
  152. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/_tools.py +3 -1
  153. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_authentication.py +55 -19
  154. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_authentication_async.py +46 -15
  155. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_custom_hook.py +8 -3
  156. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_distributed_tracing.py +9 -3
  157. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_redirect.py +9 -2
  158. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_redirect_async.py +4 -1
  159. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_retry.py +27 -8
  160. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_retry_async.py +6 -3
  161. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_sensitive_header_cleanup_policy.py +4 -1
  162. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_universal.py +6 -10
  163. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_utils.py +101 -1
  164. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/transport/__init__.py +1 -1
  165. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/transport/_aiohttp.py +9 -2
  166. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/transport/_base.py +1 -1
  167. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/transport/_base_async.py +7 -5
  168. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/transport/_requests_asyncio.py +0 -1
  169. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/transport/_requests_basic.py +11 -3
  170. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/transport/_requests_trio.py +11 -3
  171. py2docfx/venv/venv1/Lib/site-packages/azure/core/polling/_async_poller.py +5 -2
  172. py2docfx/venv/venv1/Lib/site-packages/azure/core/polling/_poller.py +4 -1
  173. py2docfx/venv/venv1/Lib/site-packages/azure/core/polling/async_base_polling.py +3 -1
  174. py2docfx/venv/venv1/Lib/site-packages/azure/core/polling/base_polling.py +47 -16
  175. py2docfx/venv/venv1/Lib/site-packages/azure/core/rest/_helpers.py +3 -1
  176. py2docfx/venv/venv1/Lib/site-packages/azure/core/rest/_http_response_impl.py +1 -1
  177. py2docfx/venv/venv1/Lib/site-packages/azure/core/rest/_requests_basic.py +3 -1
  178. py2docfx/venv/venv1/Lib/site-packages/azure/core/serialization.py +1 -1
  179. py2docfx/venv/venv1/Lib/site-packages/azure/core/settings.py +15 -3
  180. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/_abstract_span.py +15 -5
  181. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/common.py +1 -1
  182. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/decorator.py +12 -1
  183. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/decorator_async.py +24 -4
  184. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/ext/opencensus_span/__init__.py +119 -110
  185. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/ext/opencensus_span/_version.py +1 -1
  186. py2docfx/venv/venv1/Lib/site-packages/azure/core/utils/_pipeline_transport_rest_shared.py +3 -1
  187. py2docfx/venv/venv1/Lib/site-packages/azure/core/utils/_pipeline_transport_rest_shared_async.py +10 -1
  188. py2docfx/venv/venv1/Lib/site-packages/google/api/client_pb2.py +41 -39
  189. py2docfx/venv/venv1/Lib/site-packages/google/api/error_reason_pb2.py +2 -2
  190. py2docfx/venv/venv1/Lib/site-packages/google/api/httpbody_pb2.py +2 -2
  191. py2docfx/venv/venv1/Lib/site-packages/google/api/metric_pb2.py +17 -11
  192. py2docfx/venv/venv1/Lib/site-packages/google/api_core/client_options.py +17 -13
  193. py2docfx/venv/venv1/Lib/site-packages/google/api_core/protobuf_helpers.py +1 -3
  194. py2docfx/venv/venv1/Lib/site-packages/google/api_core/version.py +1 -1
  195. py2docfx/venv/venv1/Lib/site-packages/google/auth/_default.py +4 -0
  196. py2docfx/venv/venv1/Lib/site-packages/google/auth/compute_engine/_metadata.py +1 -1
  197. py2docfx/venv/venv1/Lib/site-packages/google/auth/iam.py +25 -8
  198. py2docfx/venv/venv1/Lib/site-packages/google/auth/impersonated_credentials.py +34 -16
  199. py2docfx/venv/venv1/Lib/site-packages/google/auth/transport/_requests_base.py +2 -1
  200. py2docfx/venv/venv1/Lib/site-packages/google/auth/transport/requests.py +2 -3
  201. py2docfx/venv/venv1/Lib/site-packages/google/auth/version.py +1 -1
  202. py2docfx/venv/venv1/Lib/site-packages/google/oauth2/_client.py +10 -2
  203. py2docfx/venv/venv1/Lib/site-packages/google/oauth2/service_account.py +1 -0
  204. py2docfx/venv/venv1/Lib/site-packages/jwt/__init__.py +3 -2
  205. py2docfx/venv/venv1/Lib/site-packages/jwt/algorithms.py +31 -16
  206. py2docfx/venv/venv1/Lib/site-packages/jwt/api_jws.py +19 -8
  207. py2docfx/venv/venv1/Lib/site-packages/jwt/api_jwt.py +75 -19
  208. py2docfx/venv/venv1/Lib/site-packages/jwt/exceptions.py +8 -0
  209. py2docfx/venv/venv1/Lib/site-packages/jwt/help.py +4 -1
  210. py2docfx/venv/venv1/Lib/site-packages/jwt/jwks_client.py +4 -2
  211. py2docfx/venv/venv1/Lib/site-packages/jwt/utils.py +7 -10
  212. py2docfx/venv/venv1/Lib/site-packages/msal/application.py +1 -1
  213. py2docfx/venv/venv1/Lib/site-packages/msal/managed_identity.py +5 -3
  214. py2docfx/venv/venv1/Lib/site-packages/pkg_resources/__init__.py +27 -32
  215. py2docfx/venv/venv1/Lib/site-packages/pkg_resources/tests/test_pkg_resources.py +4 -4
  216. py2docfx/venv/venv1/Lib/site-packages/pkg_resources/tests/test_resources.py +7 -7
  217. py2docfx/venv/venv1/Lib/site-packages/pkg_resources/tests/test_working_set.py +1 -1
  218. py2docfx/venv/venv1/Lib/site-packages/proto/enums.py +3 -1
  219. py2docfx/venv/venv1/Lib/site-packages/proto/marshal/collections/repeated.py +7 -2
  220. py2docfx/venv/venv1/Lib/site-packages/proto/marshal/compat.py +18 -21
  221. py2docfx/venv/venv1/Lib/site-packages/proto/marshal/rules/message.py +7 -3
  222. py2docfx/venv/venv1/Lib/site-packages/proto/message.py +6 -35
  223. py2docfx/venv/venv1/Lib/site-packages/proto/version.py +1 -1
  224. py2docfx/venv/venv1/Lib/site-packages/setuptools/__init__.py +7 -9
  225. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compat/py38.py +1 -1
  226. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/dir_util.py +3 -8
  227. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/tests/test_dir_util.py +22 -0
  228. py2docfx/venv/venv1/Lib/site-packages/setuptools/_importlib.py +1 -4
  229. py2docfx/venv/venv1/Lib/site-packages/setuptools/_path.py +5 -8
  230. py2docfx/venv/venv1/Lib/site-packages/setuptools/_reqs.py +2 -1
  231. py2docfx/venv/venv1/Lib/site-packages/setuptools/_shutil.py +53 -0
  232. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/__init__.py +2 -2
  233. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/_elffile.py +4 -4
  234. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/_manylinux.py +1 -0
  235. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/licenses/__init__.py +145 -0
  236. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/licenses/_spdx.py +759 -0
  237. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/markers.py +15 -9
  238. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/metadata.py +83 -24
  239. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/specifiers.py +19 -8
  240. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/tags.py +78 -29
  241. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/utils.py +33 -44
  242. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/version.py +26 -7
  243. py2docfx/venv/venv1/Lib/site-packages/setuptools/archive_util.py +6 -4
  244. py2docfx/venv/venv1/Lib/site-packages/setuptools/build_meta.py +25 -19
  245. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/__init__.py +9 -1
  246. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/_requirestxt.py +4 -4
  247. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/alias.py +3 -4
  248. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/bdist_egg.py +27 -13
  249. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/bdist_rpm.py +1 -1
  250. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/bdist_wheel.py +43 -84
  251. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/build.py +3 -3
  252. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/build_clib.py +2 -9
  253. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/build_ext.py +15 -14
  254. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/build_py.py +26 -30
  255. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/develop.py +4 -4
  256. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/dist_info.py +3 -7
  257. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/easy_install.py +57 -80
  258. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/editable_wheel.py +21 -23
  259. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/egg_info.py +32 -32
  260. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/install.py +31 -13
  261. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/install_egg_info.py +4 -4
  262. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/install_lib.py +10 -7
  263. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/install_scripts.py +2 -2
  264. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/rotate.py +6 -6
  265. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/saveopts.py +2 -2
  266. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/sdist.py +11 -10
  267. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/setopt.py +3 -3
  268. py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +19 -14
  269. py2docfx/venv/venv1/Lib/site-packages/setuptools/config/expand.py +22 -16
  270. py2docfx/venv/venv1/Lib/site-packages/setuptools/config/pyprojecttoml.py +12 -10
  271. py2docfx/venv/venv1/Lib/site-packages/setuptools/config/setupcfg.py +39 -47
  272. py2docfx/venv/venv1/Lib/site-packages/setuptools/depends.py +26 -7
  273. py2docfx/venv/venv1/Lib/site-packages/setuptools/discovery.py +21 -14
  274. py2docfx/venv/venv1/Lib/site-packages/setuptools/dist.py +51 -47
  275. py2docfx/venv/venv1/Lib/site-packages/setuptools/errors.py +21 -26
  276. py2docfx/venv/venv1/Lib/site-packages/setuptools/extension.py +18 -6
  277. py2docfx/venv/venv1/Lib/site-packages/setuptools/glob.py +35 -15
  278. py2docfx/venv/venv1/Lib/site-packages/setuptools/installer.py +6 -1
  279. py2docfx/venv/venv1/Lib/site-packages/setuptools/launch.py +1 -1
  280. py2docfx/venv/venv1/Lib/site-packages/setuptools/logging.py +2 -2
  281. py2docfx/venv/venv1/Lib/site-packages/setuptools/modified.py +16 -6
  282. py2docfx/venv/venv1/Lib/site-packages/setuptools/monkey.py +5 -5
  283. py2docfx/venv/venv1/Lib/site-packages/setuptools/msvc.py +35 -24
  284. py2docfx/venv/venv1/Lib/site-packages/setuptools/namespaces.py +2 -2
  285. py2docfx/venv/venv1/Lib/site-packages/setuptools/package_index.py +42 -43
  286. py2docfx/venv/venv1/Lib/site-packages/setuptools/sandbox.py +19 -12
  287. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/downloads/__init__.py +5 -3
  288. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py +7 -6
  289. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/test_expand.py +3 -3
  290. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/test_pyprojecttoml.py +2 -2
  291. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/test_pyprojecttoml_dynamic_deps.py +21 -11
  292. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/test_setupcfg.py +12 -16
  293. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/integration/test_pip_install_sdist.py +10 -11
  294. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_bdist_egg.py +7 -3
  295. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_bdist_wheel.py +10 -33
  296. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_build_ext.py +2 -2
  297. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_build_meta.py +1 -1
  298. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_build_py.py +6 -6
  299. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_config_discovery.py +4 -4
  300. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_core_metadata.py +171 -76
  301. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_dist.py +11 -13
  302. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_dist_info.py +1 -1
  303. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_distutils_adoption.py +44 -5
  304. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_easy_install.py +32 -26
  305. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_editable_install.py +10 -6
  306. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_egg_info.py +15 -15
  307. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_glob.py +1 -1
  308. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_logging.py +1 -1
  309. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_manifest.py +2 -8
  310. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_packageindex.py +6 -17
  311. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_setuptools.py +4 -3
  312. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_shutil_wrapper.py +23 -0
  313. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_wheel.py +29 -20
  314. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_windows_wrappers.py +3 -3
  315. py2docfx/venv/venv1/Lib/site-packages/setuptools/unicode_utils.py +3 -3
  316. py2docfx/venv/venv1/Lib/site-packages/setuptools/warnings.py +5 -2
  317. py2docfx/venv/venv1/Lib/site-packages/setuptools/wheel.py +4 -4
  318. py2docfx/venv/venv1/Lib/site-packages/wheel/__init__.py +1 -1
  319. py2docfx/venv/venv1/Lib/site-packages/wheel/_bdist_wheel.py +9 -0
  320. py2docfx/venv/venv1/Lib/site-packages/wheel/bdist_wheel.py +17 -2
  321. py2docfx/venv/venv1/Lib/site-packages/wheel/cli/convert.py +279 -220
  322. py2docfx/venv/venv1/Lib/site-packages/wheel/util.py +0 -9
  323. {py2docfx-0.1.9.dev1897607.dist-info → py2docfx-0.1.9.dev1926139.dist-info}/METADATA +1 -1
  324. {py2docfx-0.1.9.dev1897607.dist-info → py2docfx-0.1.9.dev1926139.dist-info}/RECORD +327 -385
  325. {py2docfx-0.1.9.dev1897607.dist-info → py2docfx-0.1.9.dev1926139.dist-info}/WHEEL +1 -1
  326. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/__init__.py +0 -36
  327. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/_adapters.py +0 -168
  328. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/_common.py +0 -210
  329. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/_itertools.py +0 -38
  330. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/abc.py +0 -171
  331. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/compat/__init__.py +0 -0
  332. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/compat/py38.py +0 -11
  333. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/compat/py39.py +0 -10
  334. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/functional.py +0 -81
  335. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/future/__init__.py +0 -0
  336. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/future/adapters.py +0 -95
  337. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/readers.py +0 -194
  338. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/simple.py +0 -106
  339. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/__init__.py +0 -0
  340. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/_path.py +0 -56
  341. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/compat/__init__.py +0 -0
  342. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/compat/py312.py +0 -18
  343. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/compat/py39.py +0 -10
  344. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data01/__init__.py +0 -0
  345. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data01/subdirectory/__init__.py +0 -0
  346. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data02/__init__.py +0 -0
  347. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data02/one/__init__.py +0 -0
  348. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data02/two/__init__.py +0 -0
  349. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_compatibilty_files.py +0 -104
  350. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_contents.py +0 -43
  351. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_custom.py +0 -47
  352. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_files.py +0 -117
  353. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_functional.py +0 -242
  354. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_open.py +0 -89
  355. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_path.py +0 -65
  356. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_read.py +0 -97
  357. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_reader.py +0 -145
  358. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_resource.py +0 -241
  359. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/util.py +0 -164
  360. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/zip.py +0 -32
  361. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/__init__.py +0 -36
  362. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/_adapters.py +0 -168
  363. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/_common.py +0 -210
  364. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/_itertools.py +0 -38
  365. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/abc.py +0 -171
  366. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/compat/__init__.py +0 -0
  367. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/compat/py38.py +0 -11
  368. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/compat/py39.py +0 -10
  369. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/functional.py +0 -81
  370. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/future/__init__.py +0 -0
  371. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/future/adapters.py +0 -95
  372. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/readers.py +0 -194
  373. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/simple.py +0 -106
  374. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/__init__.py +0 -0
  375. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/_path.py +0 -56
  376. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/compat/__init__.py +0 -0
  377. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/compat/py312.py +0 -18
  378. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/compat/py39.py +0 -10
  379. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data01/__init__.py +0 -0
  380. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data01/subdirectory/__init__.py +0 -0
  381. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data02/__init__.py +0 -0
  382. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data02/one/__init__.py +0 -0
  383. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data02/two/__init__.py +0 -0
  384. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_compatibilty_files.py +0 -104
  385. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_contents.py +0 -43
  386. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_custom.py +0 -47
  387. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_files.py +0 -117
  388. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_functional.py +0 -242
  389. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_open.py +0 -89
  390. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_path.py +0 -65
  391. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_read.py +0 -97
  392. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_reader.py +0 -145
  393. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_resource.py +0 -241
  394. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/util.py +0 -164
  395. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/zip.py +0 -32
  396. /py2docfx/convert_prepare/conf_templates/{master_doc.rst_t → root_doc.rst_t} +0 -0
  397. {py2docfx-0.1.9.dev1897607.dist-info → py2docfx-0.1.9.dev1926139.dist-info}/top_level.txt +0 -0
@@ -261,11 +261,11 @@ class TestEggInfo:
261
261
  })
262
262
 
263
263
  mismatch_marker = "python_version<'{this_ver}'".format(
264
- this_ver=sys.version_info[0],
264
+ this_ver=sys.version_info.major,
265
265
  )
266
266
  # Alternate equivalent syntax.
267
267
  mismatch_marker_alternate = 'python_version < "{this_ver}"'.format(
268
- this_ver=sys.version_info[0],
268
+ this_ver=sys.version_info.major,
269
269
  )
270
270
  invalid_marker = "<=>++"
271
271
 
@@ -283,9 +283,9 @@ class TestEggInfo:
283
283
  else:
284
284
  install_cmd_kwargs = {}
285
285
  name = name_kwargs[0].strip()
286
- setup_py_requires, setup_cfg_requires, expected_requires = (
286
+ setup_py_requires, setup_cfg_requires, expected_requires = [
287
287
  DALS(a).format(**format_dict) for a in test_params
288
- )
288
+ ]
289
289
  for id_, requires, use_cfg in (
290
290
  (name, setup_py_requires, False),
291
291
  (name + '_in_setup_cfg', setup_cfg_requires, True),
@@ -512,7 +512,7 @@ class TestEggInfo:
512
512
  environ = os.environ.copy().update(
513
513
  HOME=env.paths['home'],
514
514
  )
515
- code, data = environment.run_setup_py(
515
+ environment.run_setup_py(
516
516
  cmd=['egg_info'],
517
517
  pypath=os.pathsep.join([env.paths['lib'], str(tmpdir_cwd)]),
518
518
  data_stream=1,
@@ -543,7 +543,7 @@ class TestEggInfo:
543
543
  assert 'Provides-Extra:' not in pkg_info_text
544
544
 
545
545
  @pytest.mark.parametrize(
546
- "files, license_in_sources",
546
+ ('files', 'license_in_sources'),
547
547
  [
548
548
  (
549
549
  {
@@ -627,7 +627,7 @@ class TestEggInfo:
627
627
  assert 'INVALID_LICENSE' not in sources_text
628
628
 
629
629
  @pytest.mark.parametrize(
630
- "files, incl_licenses, excl_licenses",
630
+ ('files', 'incl_licenses', 'excl_licenses'),
631
631
  [
632
632
  (
633
633
  {
@@ -839,7 +839,7 @@ class TestEggInfo:
839
839
  assert sources_lines.count(lf) == 0
840
840
 
841
841
  @pytest.mark.parametrize(
842
- "files, incl_licenses, excl_licenses",
842
+ ('files', 'incl_licenses', 'excl_licenses'),
843
843
  [
844
844
  (
845
845
  {
@@ -1060,7 +1060,7 @@ class TestEggInfo:
1060
1060
  def test_metadata_version(self, tmpdir_cwd, env):
1061
1061
  """Make sure latest metadata version is used by default."""
1062
1062
  self._setup_script_with_requires("")
1063
- code, data = environment.run_setup_py(
1063
+ environment.run_setup_py(
1064
1064
  cmd=['egg_info'],
1065
1065
  pypath=os.pathsep.join([env.paths['lib'], str(tmpdir_cwd)]),
1066
1066
  data_stream=1,
@@ -1085,7 +1085,7 @@ class TestEggInfo:
1085
1085
  environ = os.environ.copy().update(
1086
1086
  HOME=env.paths['home'],
1087
1087
  )
1088
- code, data = environment.run_setup_py(
1088
+ environment.run_setup_py(
1089
1089
  cmd=['egg_info'],
1090
1090
  pypath=os.pathsep.join([env.paths['lib'], str(tmpdir_cwd)]),
1091
1091
  data_stream=1,
@@ -1107,7 +1107,7 @@ class TestEggInfo:
1107
1107
  "long_description='This is a long description\\nover multiple lines',"
1108
1108
  "long_description_content_type='text/markdown',"
1109
1109
  )
1110
- code, data = environment.run_setup_py(
1110
+ environment.run_setup_py(
1111
1111
  cmd=['egg_info'],
1112
1112
  pypath=os.pathsep.join([env.paths['lib'], str(tmpdir_cwd)]),
1113
1113
  data_stream=1,
@@ -1138,7 +1138,7 @@ class TestEggInfo:
1138
1138
  environ = os.environ.copy().update(
1139
1139
  HOME=env.paths['home'],
1140
1140
  )
1141
- code, data = environment.run_setup_py(
1141
+ environment.run_setup_py(
1142
1142
  cmd=['egg_info'],
1143
1143
  pypath=os.pathsep.join([env.paths['lib'], str(tmpdir_cwd)]),
1144
1144
  data_stream=1,
@@ -1156,7 +1156,7 @@ class TestEggInfo:
1156
1156
  def test_license(self, tmpdir_cwd, env):
1157
1157
  """Test single line license."""
1158
1158
  self._setup_script_with_requires("license='MIT',")
1159
- code, data = environment.run_setup_py(
1159
+ environment.run_setup_py(
1160
1160
  cmd=['egg_info'],
1161
1161
  pypath=os.pathsep.join([env.paths['lib'], str(tmpdir_cwd)]),
1162
1162
  data_stream=1,
@@ -1171,7 +1171,7 @@ class TestEggInfo:
1171
1171
  self._setup_script_with_requires(
1172
1172
  "license='This is a long license text \\nover multiple lines',"
1173
1173
  )
1174
- code, data = environment.run_setup_py(
1174
+ environment.run_setup_py(
1175
1175
  cmd=['egg_info'],
1176
1176
  pypath=os.pathsep.join([env.paths['lib'], str(tmpdir_cwd)]),
1177
1177
  data_stream=1,
@@ -1189,7 +1189,7 @@ class TestEggInfo:
1189
1189
  environ = os.environ.copy().update(
1190
1190
  HOME=env.paths['home'],
1191
1191
  )
1192
- code, data = environment.run_setup_py(
1192
+ environment.run_setup_py(
1193
1193
  cmd=['egg_info'],
1194
1194
  pypath=os.pathsep.join([env.paths['lib'], str(tmpdir_cwd)]),
1195
1195
  data_stream=1,
@@ -5,7 +5,7 @@ from setuptools.glob import glob
5
5
 
6
6
 
7
7
  @pytest.mark.parametrize(
8
- 'tree, pattern, matches',
8
+ ('tree', 'pattern', 'matches'),
9
9
  (
10
10
  ('', b'', []),
11
11
  ('', '', []),
@@ -19,7 +19,7 @@ setup(
19
19
 
20
20
 
21
21
  @pytest.mark.parametrize(
22
- "flag, expected_level", [("--dry-run", "INFO"), ("--verbose", "DEBUG")]
22
+ ('flag', 'expected_level'), [("--dry-run", "INFO"), ("--verbose", "DEBUG")]
23
23
  )
24
24
  def test_verbosity_level(tmp_path, monkeypatch, flag, expected_level):
25
25
  """Make sure the correct verbosity level is set (issue #3038)"""
@@ -369,7 +369,7 @@ class TestFileListTest(TempDirTestCase):
369
369
  def make_files(self, files):
370
370
  for file in files:
371
371
  file = os.path.join(self.temp_dir, file)
372
- dirname, basename = os.path.split(file)
372
+ dirname, _basename = os.path.split(file)
373
373
  os.makedirs(dirname, exist_ok=True)
374
374
  touch(file)
375
375
 
@@ -485,14 +485,8 @@ class TestFileListTest(TempDirTestCase):
485
485
  'prune',
486
486
  'blarg',
487
487
  ):
488
- try:
488
+ with pytest.raises(DistutilsTemplateError):
489
489
  file_list.process_template_line(action)
490
- except DistutilsTemplateError:
491
- pass
492
- except Exception:
493
- assert False, "Incorrect error thrown"
494
- else:
495
- assert False, "Should have thrown an error"
496
490
 
497
491
  def test_include(self, caplog):
498
492
  caplog.set_level(logging.DEBUG)
@@ -1,4 +1,5 @@
1
1
  import http.client
2
+ import re
2
3
  import urllib.error
3
4
  import urllib.request
4
5
  from inspect import cleandoc
@@ -24,11 +25,8 @@ class TestPackageIndex:
24
25
  def test_bad_url_bad_port(self):
25
26
  index = setuptools.package_index.PackageIndex()
26
27
  url = 'http://127.0.0.1:0/nonesuch/test_package_index'
27
- try:
28
+ with pytest.raises(Exception, match=re.escape(url)):
28
29
  v = index.open_url(url)
29
- except Exception as exc:
30
- assert url in str(exc)
31
- else:
32
30
  assert isinstance(v, urllib.error.HTTPError)
33
31
 
34
32
  def test_bad_url_typo(self):
@@ -37,15 +35,10 @@ class TestPackageIndex:
37
35
  # in its home URL
38
36
  index = setuptools.package_index.PackageIndex(hosts=('www.example.com',))
39
37
 
40
- url = (
41
- 'url:%20https://svn.plone.org/svn'
42
- '/collective/inquant.contentmirror.plone/trunk'
43
- )
44
- try:
38
+ url = 'url:%20https://svn.plone.org/svn/collective/inquant.contentmirror.plone/trunk'
39
+
40
+ with pytest.raises(Exception, match=re.escape(url)):
45
41
  v = index.open_url(url)
46
- except Exception as exc:
47
- assert url in str(exc)
48
- else:
49
42
  assert isinstance(v, urllib.error.HTTPError)
50
43
 
51
44
  def test_bad_url_bad_status_line(self):
@@ -56,12 +49,8 @@ class TestPackageIndex:
56
49
 
57
50
  index.opener = _urlopen
58
51
  url = 'http://example.com'
59
- try:
52
+ with pytest.raises(Exception, match=r'line'):
60
53
  index.open_url(url)
61
- except Exception as exc:
62
- assert 'line' in str(exc)
63
- else:
64
- raise AssertionError('Should have raise here!')
65
54
 
66
55
  def test_bad_url_double_scheme(self):
67
56
  """
@@ -21,7 +21,7 @@ from distutils.errors import DistutilsSetupError
21
21
 
22
22
  @pytest.fixture(autouse=True)
23
23
  def isolated_dir(tmpdir_cwd):
24
- yield
24
+ return
25
25
 
26
26
 
27
27
  def makeSetup(**args):
@@ -74,7 +74,7 @@ class TestDepends:
74
74
  dep.find_module('no-such.-thing')
75
75
  with pytest.raises(ImportError):
76
76
  dep.find_module('setuptools.non-existent')
77
- f, p, i = dep.find_module('setuptools.tests')
77
+ f, _p, _i = dep.find_module('setuptools.tests')
78
78
  f.close()
79
79
 
80
80
  @needs_bytecode
@@ -257,7 +257,8 @@ def can_symlink(tmpdir):
257
257
  os.remove(link_fn)
258
258
 
259
259
 
260
- def test_findall_missing_symlink(tmpdir, can_symlink):
260
+ @pytest.mark.usefixtures("can_symlink")
261
+ def test_findall_missing_symlink(tmpdir):
261
262
  with tmpdir.as_cwd():
262
263
  os.symlink('foo', 'bar')
263
264
  found = list(setuptools.findall())
@@ -0,0 +1,23 @@
1
+ import stat
2
+ import sys
3
+ from unittest.mock import Mock
4
+
5
+ from setuptools import _shutil
6
+
7
+
8
+ def test_rmtree_readonly(monkeypatch, tmp_path):
9
+ """Verify onerr works as expected"""
10
+
11
+ tmp_dir = tmp_path / "with_readonly"
12
+ tmp_dir.mkdir()
13
+ some_file = tmp_dir.joinpath("file.txt")
14
+ some_file.touch()
15
+ some_file.chmod(stat.S_IREAD)
16
+
17
+ expected_count = 1 if sys.platform.startswith("win") else 0
18
+ chmod_fn = Mock(wraps=_shutil.attempt_chmod_verbose)
19
+ monkeypatch.setattr(_shutil, "attempt_chmod_verbose", chmod_fn)
20
+
21
+ _shutil.rmtree(tmp_dir)
22
+ assert chmod_fn.call_count == expected_count
23
+ assert not tmp_dir.is_dir()
@@ -564,14 +564,17 @@ def test_wheel_install(params):
564
564
  install_tree = params.get('install_tree')
565
565
  file_defs = params.get('file_defs', {})
566
566
  setup_kwargs = params.get('setup_kwargs', {})
567
- with build_wheel(
568
- name=project_name,
569
- version=version,
570
- install_requires=install_requires,
571
- extras_require=extras_require,
572
- extra_file_defs=file_defs,
573
- **setup_kwargs,
574
- ) as filename, tempdir() as install_dir:
567
+ with (
568
+ build_wheel(
569
+ name=project_name,
570
+ version=version,
571
+ install_requires=install_requires,
572
+ extras_require=extras_require,
573
+ extra_file_defs=file_defs,
574
+ **setup_kwargs,
575
+ ) as filename,
576
+ tempdir() as install_dir,
577
+ ):
575
578
  _check_wheel_install(
576
579
  filename, install_dir, install_tree, project_name, version, requires_txt
577
580
  )
@@ -580,10 +583,13 @@ def test_wheel_install(params):
580
583
  def test_wheel_install_pep_503():
581
584
  project_name = 'Foo_Bar' # PEP 503 canonicalized name is "foo-bar"
582
585
  version = '1.0'
583
- with build_wheel(
584
- name=project_name,
585
- version=version,
586
- ) as filename, tempdir() as install_dir:
586
+ with (
587
+ build_wheel(
588
+ name=project_name,
589
+ version=version,
590
+ ) as filename,
591
+ tempdir() as install_dir,
592
+ ):
587
593
  new_filename = filename.replace(project_name, canonicalize_name(project_name))
588
594
  shutil.move(filename, new_filename)
589
595
  _check_wheel_install(
@@ -687,14 +693,17 @@ def test_wheel_mode():
687
693
  file_defs = params.get('file_defs', {})
688
694
  setup_kwargs = params.get('setup_kwargs', {})
689
695
 
690
- with build_wheel(
691
- name=project_name,
692
- version=version,
693
- install_requires=[],
694
- extras_require={},
695
- extra_file_defs=file_defs,
696
- **setup_kwargs,
697
- ) as filename, tempdir() as install_dir:
696
+ with (
697
+ build_wheel(
698
+ name=project_name,
699
+ version=version,
700
+ install_requires=[],
701
+ extras_require={},
702
+ extra_file_defs=file_defs,
703
+ **setup_kwargs,
704
+ ) as filename,
705
+ tempdir() as install_dir,
706
+ ):
698
707
  _check_wheel_install(
699
708
  filename, install_dir, install_tree, project_name, version, None
700
709
  )
@@ -116,7 +116,7 @@ class TestCLI(WrapperTester):
116
116
  text=True,
117
117
  encoding="utf-8",
118
118
  )
119
- stdout, stderr = proc.communicate('hello\nworld\n')
119
+ stdout, _stderr = proc.communicate('hello\nworld\n')
120
120
  actual = stdout.replace('\r\n', '\n')
121
121
  expected = textwrap.dedent(
122
122
  r"""
@@ -153,7 +153,7 @@ class TestCLI(WrapperTester):
153
153
  text=True,
154
154
  encoding="utf-8",
155
155
  )
156
- stdout, stderr = proc.communicate('hello\nworld\n')
156
+ stdout, _stderr = proc.communicate('hello\nworld\n')
157
157
  actual = stdout.replace('\r\n', '\n')
158
158
  expected = textwrap.dedent(
159
159
  r"""
@@ -201,7 +201,7 @@ class TestCLI(WrapperTester):
201
201
  text=True,
202
202
  encoding="utf-8",
203
203
  )
204
- stdout, stderr = proc.communicate()
204
+ stdout, _stderr = proc.communicate()
205
205
  actual = stdout.replace('\r\n', '\n')
206
206
  expected = textwrap.dedent(
207
207
  r"""
@@ -1,6 +1,6 @@
1
1
  import sys
2
2
  import unicodedata
3
- from configparser import ConfigParser
3
+ from configparser import RawConfigParser
4
4
 
5
5
  from .compat import py39
6
6
  from .warnings import SetuptoolsDeprecationWarning
@@ -65,10 +65,10 @@ def _read_utf8_with_fallback(file: str, fallback_encoding=py39.LOCALE_ENCODING)
65
65
 
66
66
 
67
67
  def _cfg_read_utf8_with_fallback(
68
- cfg: ConfigParser, file: str, fallback_encoding=py39.LOCALE_ENCODING
68
+ cfg: RawConfigParser, file: str, fallback_encoding=py39.LOCALE_ENCODING
69
69
  ) -> None:
70
70
  """Same idea as :func:`_read_utf8_with_fallback`, but for the
71
- :meth:`ConfigParser.read` method.
71
+ :meth:`RawConfigParser.read` method.
72
72
 
73
73
  This method may call ``cfg.clear()``.
74
74
  """
@@ -12,9 +12,12 @@ import warnings
12
12
  from datetime import date
13
13
  from inspect import cleandoc
14
14
  from textwrap import indent
15
- from typing import Tuple
15
+ from typing import TYPE_CHECKING
16
16
 
17
- _DueDate = Tuple[int, int, int] # time tuple
17
+ if TYPE_CHECKING:
18
+ from typing_extensions import TypeAlias
19
+
20
+ _DueDate: TypeAlias = tuple[int, int, int] # time tuple
18
21
  _INDENT = 8 * " "
19
22
  _TEMPLATE = f"""{80 * '*'}\n{{details}}\n{80 * '*'}"""
20
23
 
@@ -31,7 +31,7 @@ WHEEL_NAME = re.compile(
31
31
  NAMESPACE_PACKAGE_INIT = "__import__('pkg_resources').declare_namespace(__name__)\n"
32
32
 
33
33
 
34
- @functools.lru_cache(maxsize=None)
34
+ @functools.cache
35
35
  def _get_supported_tags():
36
36
  # We calculate the supported tags only once, otherwise calling
37
37
  # this method on thousands of wheels takes seconds instead of
@@ -39,7 +39,7 @@ def _get_supported_tags():
39
39
  return {(t.interpreter, t.abi, t.platform) for t in sys_tags()}
40
40
 
41
41
 
42
- def unpack(src_dir, dst_dir):
42
+ def unpack(src_dir, dst_dir) -> None:
43
43
  """Move everything under `src_dir` to `dst_dir`, and delete the former."""
44
44
  for dirpath, dirnames, filenames in os.walk(src_dir):
45
45
  subdir = os.path.relpath(dirpath, src_dir)
@@ -76,7 +76,7 @@ def disable_info_traces():
76
76
 
77
77
 
78
78
  class Wheel:
79
- def __init__(self, filename):
79
+ def __init__(self, filename) -> None:
80
80
  match = WHEEL_NAME(os.path.basename(filename))
81
81
  if match is None:
82
82
  raise ValueError('invalid wheel name: %r' % filename)
@@ -116,7 +116,7 @@ class Wheel:
116
116
  return dirname
117
117
  raise ValueError("unsupported wheel format. .dist-info not found")
118
118
 
119
- def install_as_egg(self, destination_eggdir):
119
+ def install_as_egg(self, destination_eggdir) -> None:
120
120
  """Install wheel as an egg directory."""
121
121
  with zipfile.ZipFile(self.filename) as zf:
122
122
  self._install_as_egg(destination_eggdir, zf)
@@ -1,3 +1,3 @@
1
1
  from __future__ import annotations
2
2
 
3
- __version__ = "0.44.0"
3
+ __version__ = "0.45.1"
@@ -34,6 +34,15 @@ from .wheelfile import WheelFile
34
34
  if TYPE_CHECKING:
35
35
  import types
36
36
 
37
+ # ensure Python logging is configured
38
+ try:
39
+ __import__("setuptools.logging")
40
+ except ImportError:
41
+ # setuptools < ??
42
+ from . import _setuptools_logging
43
+
44
+ _setuptools_logging.configure()
45
+
37
46
 
38
47
  def safe_name(name: str) -> str:
39
48
  """Convert an arbitrary string to a standard distribution name
@@ -1,7 +1,6 @@
1
+ from typing import TYPE_CHECKING
1
2
  from warnings import warn
2
3
 
3
- from ._bdist_wheel import bdist_wheel as bdist_wheel
4
-
5
4
  warn(
6
5
  "The 'wheel' package is no longer the canonical location of the 'bdist_wheel' "
7
6
  "command, and will be removed in a future release. Please update to setuptools "
@@ -9,3 +8,19 @@ warn(
9
8
  DeprecationWarning,
10
9
  stacklevel=1,
11
10
  )
11
+
12
+ if TYPE_CHECKING:
13
+ from ._bdist_wheel import bdist_wheel as bdist_wheel
14
+ else:
15
+ try:
16
+ # Better integration/compatibility with setuptools:
17
+ # in the case new fixes or PEPs are implemented in setuptools
18
+ # there is no need to backport them to the deprecated code base.
19
+ # This is useful in the case of old packages in the ecosystem
20
+ # that are still used but have low maintenance.
21
+ from setuptools.command.bdist_wheel import bdist_wheel
22
+ except ImportError:
23
+ # Only used in the case of old setuptools versions.
24
+ # If the user wants to get the latest fixes/PEPs,
25
+ # they are encouraged to address the deprecation warning.
26
+ from ._bdist_wheel import bdist_wheel as bdist_wheel