py2docfx 0.1.16.dev2051338__py3-none-any.whl → 0.1.16.dev2064350__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 (281) hide show
  1. py2docfx/convert_prepare/environment.py +3 -1
  2. py2docfx/convert_prepare/get_source.py +6 -1
  3. py2docfx/convert_prepare/package_info.py +1 -1
  4. py2docfx/venv/basevenv/Lib/site-packages/babel/py.typed +1 -0
  5. py2docfx/venv/basevenv/Lib/site-packages/markupsafe/_speedups.pyi +1 -0
  6. py2docfx/venv/basevenv/Lib/site-packages/markupsafe/py.typed +0 -0
  7. py2docfx/venv/basevenv/Lib/site-packages/packaging/py.typed +0 -0
  8. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/cachecontrol/py.typed +0 -0
  9. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/certifi/py.typed +0 -0
  10. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/chardet/py.typed +0 -0
  11. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/distro/py.typed +0 -0
  12. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/idna/py.typed +0 -0
  13. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/packaging/py.typed +0 -0
  14. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/platformdirs/py.typed +0 -0
  15. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/pyparsing/py.typed +0 -0
  16. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/resolvelib/py.typed +0 -0
  17. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/rich/py.typed +0 -0
  18. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/tenacity/py.typed +0 -0
  19. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/tomli/py.typed +1 -0
  20. py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/truststore/py.typed +0 -0
  21. py2docfx/venv/basevenv/Lib/site-packages/pip/py.typed +4 -0
  22. py2docfx/venv/basevenv/Lib/site-packages/pkg_resources/py.typed +0 -0
  23. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_metadata/py.typed +0 -0
  24. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/inflect/py.typed +0 -0
  25. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/jaraco/collections/py.typed +0 -0
  26. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/jaraco/functools/__init__.pyi +125 -0
  27. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/jaraco/functools/py.typed +0 -0
  28. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/more_itertools/__init__.pyi +2 -0
  29. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/more_itertools/more.pyi +709 -0
  30. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/more_itertools/py.typed +0 -0
  31. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/more_itertools/recipes.pyi +136 -0
  32. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/py.typed +0 -0
  33. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/platformdirs/py.typed +0 -0
  34. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/tomli/py.typed +1 -0
  35. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/typeguard/py.typed +0 -0
  36. py2docfx/venv/basevenv/Lib/site-packages/sphinx/py.typed +0 -0
  37. py2docfx/venv/basevenv/Lib/site-packages/sphinxcontrib/applehelp/py.typed +0 -0
  38. py2docfx/venv/basevenv/Lib/site-packages/sphinxcontrib/htmlhelp/py.typed +0 -0
  39. py2docfx/venv/basevenv/Lib/site-packages/sphinxcontrib/qthelp/py.typed +0 -0
  40. py2docfx/venv/basevenv/Lib/site-packages/sphinxcontrib/serializinghtml/py.typed +0 -0
  41. py2docfx/venv/basevenv/Lib/site-packages/urllib3/_version.py +9 -4
  42. py2docfx/venv/basevenv/Lib/site-packages/urllib3/contrib/emscripten/response.py +8 -16
  43. py2docfx/venv/basevenv/Lib/site-packages/urllib3/contrib/pyopenssl.py +10 -0
  44. py2docfx/venv/basevenv/Lib/site-packages/urllib3/exceptions.py +12 -4
  45. py2docfx/venv/basevenv/Lib/site-packages/urllib3/http2/connection.py +1 -1
  46. py2docfx/venv/basevenv/Lib/site-packages/urllib3/py.typed +2 -0
  47. py2docfx/venv/basevenv/Lib/site-packages/urllib3/util/ssl_.py +21 -1
  48. py2docfx/venv/basevenv/Lib/site-packages/urllib3/util/ssl_match_hostname.py +1 -1
  49. py2docfx/venv/basevenv/Lib/site-packages/wheel/__init__.py +1 -1
  50. py2docfx/venv/basevenv/Lib/site-packages/wheel/__main__.py +7 -5
  51. py2docfx/venv/basevenv/Lib/site-packages/wheel/{cli → _commands}/__init__.py +3 -5
  52. py2docfx/venv/basevenv/Lib/site-packages/wheel/{cli → _commands}/convert.py +14 -9
  53. py2docfx/venv/basevenv/Lib/site-packages/wheel/{cli → _commands}/pack.py +1 -2
  54. py2docfx/venv/basevenv/Lib/site-packages/wheel/{cli → _commands}/tags.py +4 -3
  55. py2docfx/venv/basevenv/Lib/site-packages/wheel/_metadata.py +184 -0
  56. py2docfx/venv/basevenv/Lib/site-packages/wheel/bdist_wheel.py +12 -23
  57. py2docfx/venv/basevenv/Lib/site-packages/wheel/macosx_libfile.py +4 -0
  58. py2docfx/venv/basevenv/Lib/site-packages/wheel/metadata.py +17 -183
  59. py2docfx/venv/basevenv/Lib/site-packages/wheel/wheelfile.py +30 -16
  60. py2docfx/venv/venv1/Lib/site-packages/azure/core/_version.py +1 -1
  61. py2docfx/venv/venv1/Lib/site-packages/azure/core/credentials.py +5 -4
  62. py2docfx/venv/venv1/Lib/site-packages/azure/core/instrumentation.py +67 -0
  63. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/_base.py +3 -1
  64. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/_tools.py +1 -1
  65. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_authentication.py +4 -4
  66. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_authentication_async.py +1 -2
  67. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_distributed_tracing.py +152 -29
  68. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_redirect.py +3 -2
  69. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_redirect_async.py +2 -2
  70. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_retry.py +3 -10
  71. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_retry_async.py +3 -8
  72. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_universal.py +2 -0
  73. py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/transport/_aiohttp.py +0 -1
  74. py2docfx/venv/venv1/Lib/site-packages/azure/core/polling/base_polling.py +3 -3
  75. py2docfx/venv/venv1/Lib/site-packages/azure/core/py.typed +0 -0
  76. py2docfx/venv/venv1/Lib/site-packages/azure/core/rest/_http_response_impl_async.py +3 -0
  77. py2docfx/venv/venv1/Lib/site-packages/azure/core/rest/_rest_py3.py +2 -2
  78. py2docfx/venv/venv1/Lib/site-packages/azure/core/settings.py +27 -21
  79. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/__init__.py +3 -7
  80. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/_abstract_span.py +2 -35
  81. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/_models.py +71 -0
  82. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/common.py +12 -4
  83. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/decorator.py +66 -13
  84. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/decorator_async.py +62 -23
  85. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/ext/opencensus_span/py.typed +0 -0
  86. py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/opentelemetry.py +244 -0
  87. py2docfx/venv/venv1/Lib/site-packages/azure/core/utils/_connection_string_parser.py +1 -2
  88. py2docfx/venv/venv1/Lib/site-packages/azure/core/utils/_messaging_shared.py +1 -1
  89. py2docfx/venv/venv1/Lib/site-packages/azure/core/utils/_pipeline_transport_rest_shared.py +1 -1
  90. py2docfx/venv/venv1/Lib/site-packages/azure/core/utils/_utils.py +1 -1
  91. py2docfx/venv/venv1/Lib/site-packages/azure/identity/py.typed +0 -0
  92. py2docfx/venv/venv1/Lib/site-packages/certifi/py.typed +0 -0
  93. py2docfx/venv/venv1/Lib/site-packages/charset_normalizer/py.typed +0 -0
  94. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/__init__.pyi +28 -0
  95. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/_openssl.pyi +8 -0
  96. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/asn1.pyi +7 -0
  97. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/exceptions.pyi +17 -0
  98. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/ocsp.pyi +117 -0
  99. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi +72 -0
  100. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/aead.pyi +103 -0
  101. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/ciphers.pyi +38 -0
  102. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/cmac.pyi +18 -0
  103. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/dh.pyi +51 -0
  104. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/dsa.pyi +41 -0
  105. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/ec.pyi +52 -0
  106. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/ed25519.pyi +12 -0
  107. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/ed448.pyi +12 -0
  108. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/hashes.pyi +19 -0
  109. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/hmac.pyi +21 -0
  110. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/kdf.pyi +43 -0
  111. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/keys.pyi +33 -0
  112. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/poly1305.pyi +13 -0
  113. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/rsa.pyi +55 -0
  114. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/x25519.pyi +12 -0
  115. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/x448.pyi +12 -0
  116. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/pkcs12.pyi +46 -0
  117. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/pkcs7.pyi +49 -0
  118. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/test_support.pyi +22 -0
  119. py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/x509.pyi +246 -0
  120. py2docfx/venv/venv1/Lib/site-packages/cryptography/py.typed +0 -0
  121. py2docfx/venv/venv1/Lib/site-packages/google/api/annotations_pb2.pyi +24 -0
  122. py2docfx/venv/venv1/Lib/site-packages/google/api/auth_pb2.pyi +120 -0
  123. py2docfx/venv/venv1/Lib/site-packages/google/api/backend_pb2.pyi +102 -0
  124. py2docfx/venv/venv1/Lib/site-packages/google/api/billing_pb2.pyi +50 -0
  125. py2docfx/venv/venv1/Lib/site-packages/google/api/client_pb2.pyi +405 -0
  126. py2docfx/venv/venv1/Lib/site-packages/google/api/config_change_pb2.pyi +65 -0
  127. py2docfx/venv/venv1/Lib/site-packages/google/api/consumer_pb2.pyi +62 -0
  128. py2docfx/venv/venv1/Lib/site-packages/google/api/context_pb2.pyi +60 -0
  129. py2docfx/venv/venv1/Lib/site-packages/google/api/control_pb2.pyi +43 -0
  130. py2docfx/venv/venv1/Lib/site-packages/google/api/distribution_pb2.pyi +144 -0
  131. py2docfx/venv/venv1/Lib/site-packages/google/api/documentation_pb2.pyi +86 -0
  132. py2docfx/venv/venv1/Lib/site-packages/google/api/endpoint_pb2.pyi +41 -0
  133. py2docfx/venv/venv1/Lib/site-packages/google/api/error_reason_pb2.pyi +90 -0
  134. py2docfx/venv/venv1/Lib/site-packages/google/api/field_behavior_pb2.pyi +45 -0
  135. py2docfx/venv/venv1/Lib/site-packages/google/api/field_info_pb2.pyi +60 -0
  136. py2docfx/venv/venv1/Lib/site-packages/google/api/http_pb2.pyi +94 -0
  137. py2docfx/venv/venv1/Lib/site-packages/google/api/httpbody_pb2.pyi +41 -0
  138. py2docfx/venv/venv1/Lib/site-packages/google/api/label_pb2.pyi +47 -0
  139. py2docfx/venv/venv1/Lib/site-packages/google/api/launch_stage_pb2.pyi +40 -0
  140. py2docfx/venv/venv1/Lib/site-packages/google/api/log_pb2.pyi +47 -0
  141. py2docfx/venv/venv1/Lib/site-packages/google/api/logging_pb2.pyi +57 -0
  142. py2docfx/venv/venv1/Lib/site-packages/google/api/metric_pb2.pyi +186 -0
  143. py2docfx/venv/venv1/Lib/site-packages/google/api/monitored_resource_pb2.pyi +104 -0
  144. py2docfx/venv/venv1/Lib/site-packages/google/api/monitoring_pb2.pyi +57 -0
  145. py2docfx/venv/venv1/Lib/site-packages/google/api/policy_pb2.pyi +57 -0
  146. py2docfx/venv/venv1/Lib/site-packages/google/api/quota_pb2.pyi +116 -0
  147. py2docfx/venv/venv1/Lib/site-packages/google/api/resource_pb2.pyi +93 -0
  148. py2docfx/venv/venv1/Lib/site-packages/google/api/routing_pb2.pyi +49 -0
  149. py2docfx/venv/venv1/Lib/site-packages/google/api/service_pb2.pyi +170 -0
  150. py2docfx/venv/venv1/Lib/site-packages/google/api/source_info_pb2.pyi +34 -0
  151. py2docfx/venv/venv1/Lib/site-packages/google/api/system_parameter_pb2.pyi +60 -0
  152. py2docfx/venv/venv1/Lib/site-packages/google/api/usage_pb2.pyi +55 -0
  153. py2docfx/venv/venv1/Lib/site-packages/google/api/visibility_pb2.pyi +56 -0
  154. py2docfx/venv/venv1/Lib/site-packages/google/api_core/py.typed +2 -0
  155. py2docfx/venv/venv1/Lib/site-packages/google/auth/py.typed +2 -0
  156. py2docfx/venv/venv1/Lib/site-packages/google/cloud/extended_operations_pb2.pyi +45 -0
  157. py2docfx/venv/venv1/Lib/site-packages/google/cloud/location/locations_pb2.pyi +96 -0
  158. py2docfx/venv/venv1/Lib/site-packages/google/gapic/metadata/gapic_metadata_pb2.pyi +118 -0
  159. py2docfx/venv/venv1/Lib/site-packages/google/logging/type/http_request_pb2.pyi +91 -0
  160. py2docfx/venv/venv1/Lib/site-packages/google/logging/type/log_severity_pb2.pyi +42 -0
  161. py2docfx/venv/venv1/Lib/site-packages/google/longrunning/operations_proto_pb2.pyi +126 -0
  162. py2docfx/venv/venv1/Lib/site-packages/google/oauth2/py.typed +2 -0
  163. py2docfx/venv/venv1/Lib/site-packages/google/rpc/code_pb2.pyi +58 -0
  164. py2docfx/venv/venv1/Lib/site-packages/google/rpc/context/attribute_context_pb2.pyi +309 -0
  165. py2docfx/venv/venv1/Lib/site-packages/google/rpc/context/audit_context_pb2.pyi +51 -0
  166. py2docfx/venv/venv1/Lib/site-packages/google/rpc/error_details_pb2.pyi +207 -0
  167. py2docfx/venv/venv1/Lib/site-packages/google/rpc/http_pb2.pyi +71 -0
  168. py2docfx/venv/venv1/Lib/site-packages/google/rpc/status_pb2.pyi +41 -0
  169. py2docfx/venv/venv1/Lib/site-packages/google/type/calendar_period_pb2.pyi +40 -0
  170. py2docfx/venv/venv1/Lib/site-packages/google/type/color_pb2.pyi +42 -0
  171. py2docfx/venv/venv1/Lib/site-packages/google/type/date_pb2.pyi +36 -0
  172. py2docfx/venv/venv1/Lib/site-packages/google/type/datetime_pb2.pyi +77 -0
  173. py2docfx/venv/venv1/Lib/site-packages/google/type/dayofweek_pb2.pyi +40 -0
  174. py2docfx/venv/venv1/Lib/site-packages/google/type/decimal_pb2.pyi +27 -0
  175. py2docfx/venv/venv1/Lib/site-packages/google/type/expr_pb2.pyi +39 -0
  176. py2docfx/venv/venv1/Lib/site-packages/google/type/fraction_pb2.pyi +31 -0
  177. py2docfx/venv/venv1/Lib/site-packages/google/type/interval_pb2.pyi +36 -0
  178. py2docfx/venv/venv1/Lib/site-packages/google/type/latlng_pb2.pyi +31 -0
  179. py2docfx/venv/venv1/Lib/site-packages/google/type/localized_text_pb2.pyi +31 -0
  180. py2docfx/venv/venv1/Lib/site-packages/google/type/money_pb2.pyi +36 -0
  181. py2docfx/venv/venv1/Lib/site-packages/google/type/month_pb2.pyi +50 -0
  182. py2docfx/venv/venv1/Lib/site-packages/google/type/phone_number_pb2.pyi +48 -0
  183. py2docfx/venv/venv1/Lib/site-packages/google/type/postal_address_pb2.pyi +74 -0
  184. py2docfx/venv/venv1/Lib/site-packages/google/type/quaternion_pb2.pyi +39 -0
  185. py2docfx/venv/venv1/Lib/site-packages/google/type/timeofday_pb2.pyi +39 -0
  186. py2docfx/venv/venv1/Lib/site-packages/idna/py.typed +0 -0
  187. py2docfx/venv/venv1/Lib/site-packages/jwt/py.typed +0 -0
  188. py2docfx/venv/venv1/Lib/site-packages/packaging/__init__.py +15 -0
  189. py2docfx/venv/venv1/Lib/site-packages/{wheel/vendored/packaging → packaging}/_elffile.py +9 -7
  190. py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/_manylinux.py +12 -9
  191. py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/_musllinux.py +5 -3
  192. py2docfx/venv/venv1/Lib/site-packages/{wheel/vendored/packaging → packaging}/_parser.py +11 -13
  193. py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/_tokenizer.py +10 -8
  194. py2docfx/venv/venv1/Lib/site-packages/packaging/licenses/__init__.py +145 -0
  195. py2docfx/venv/venv1/Lib/site-packages/packaging/licenses/_spdx.py +759 -0
  196. py2docfx/venv/venv1/Lib/site-packages/{wheel/vendored/packaging → packaging}/markers.py +103 -25
  197. py2docfx/venv/venv1/Lib/site-packages/packaging/metadata.py +863 -0
  198. py2docfx/venv/venv1/Lib/site-packages/packaging/py.typed +0 -0
  199. py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/requirements.py +5 -4
  200. py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/specifiers.py +40 -31
  201. py2docfx/venv/venv1/Lib/site-packages/{wheel/vendored/packaging → packaging}/tags.py +96 -50
  202. py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/utils.py +39 -48
  203. py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/version.py +53 -32
  204. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/cachecontrol/py.typed +0 -0
  205. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/certifi/py.typed +0 -0
  206. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/chardet/py.typed +0 -0
  207. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/distro/py.typed +0 -0
  208. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/idna/py.typed +0 -0
  209. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/packaging/py.typed +0 -0
  210. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/platformdirs/py.typed +0 -0
  211. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/pyparsing/py.typed +0 -0
  212. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/resolvelib/py.typed +0 -0
  213. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/rich/py.typed +0 -0
  214. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/tenacity/py.typed +0 -0
  215. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/tomli/py.typed +1 -0
  216. py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/truststore/py.typed +0 -0
  217. py2docfx/venv/venv1/Lib/site-packages/pip/py.typed +4 -0
  218. py2docfx/venv/venv1/Lib/site-packages/pkg_resources/py.typed +0 -0
  219. py2docfx/venv/venv1/Lib/site-packages/rsa/py.typed +1 -0
  220. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_metadata/py.typed +0 -0
  221. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/inflect/py.typed +0 -0
  222. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/jaraco/collections/py.typed +0 -0
  223. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/jaraco/functools/__init__.pyi +125 -0
  224. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/jaraco/functools/py.typed +0 -0
  225. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/more_itertools/__init__.pyi +2 -0
  226. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/more_itertools/more.pyi +709 -0
  227. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/more_itertools/py.typed +0 -0
  228. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/more_itertools/recipes.pyi +136 -0
  229. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/py.typed +0 -0
  230. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/platformdirs/py.typed +0 -0
  231. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/tomli/py.typed +1 -0
  232. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/typeguard/py.typed +0 -0
  233. py2docfx/venv/venv1/Lib/site-packages/typing_extensions.py +30 -12
  234. py2docfx/venv/venv1/Lib/site-packages/urllib3/_version.py +9 -4
  235. py2docfx/venv/venv1/Lib/site-packages/urllib3/contrib/emscripten/response.py +8 -16
  236. py2docfx/venv/venv1/Lib/site-packages/urllib3/contrib/pyopenssl.py +10 -0
  237. py2docfx/venv/venv1/Lib/site-packages/urllib3/exceptions.py +12 -4
  238. py2docfx/venv/venv1/Lib/site-packages/urllib3/http2/connection.py +1 -1
  239. py2docfx/venv/venv1/Lib/site-packages/urllib3/py.typed +2 -0
  240. py2docfx/venv/venv1/Lib/site-packages/urllib3/util/ssl_.py +21 -1
  241. py2docfx/venv/venv1/Lib/site-packages/urllib3/util/ssl_match_hostname.py +1 -1
  242. py2docfx/venv/venv1/Lib/site-packages/wheel/__init__.py +1 -1
  243. py2docfx/venv/venv1/Lib/site-packages/wheel/__main__.py +7 -5
  244. py2docfx/venv/venv1/Lib/site-packages/wheel/{cli → _commands}/__init__.py +3 -5
  245. py2docfx/venv/venv1/Lib/site-packages/wheel/{cli → _commands}/convert.py +14 -9
  246. py2docfx/venv/venv1/Lib/site-packages/wheel/{cli → _commands}/pack.py +1 -2
  247. py2docfx/venv/venv1/Lib/site-packages/wheel/{cli → _commands}/tags.py +4 -3
  248. py2docfx/venv/venv1/Lib/site-packages/wheel/_metadata.py +184 -0
  249. py2docfx/venv/venv1/Lib/site-packages/wheel/bdist_wheel.py +12 -23
  250. py2docfx/venv/venv1/Lib/site-packages/wheel/macosx_libfile.py +4 -0
  251. py2docfx/venv/venv1/Lib/site-packages/wheel/metadata.py +17 -183
  252. py2docfx/venv/venv1/Lib/site-packages/wheel/wheelfile.py +30 -16
  253. {py2docfx-0.1.16.dev2051338.dist-info → py2docfx-0.1.16.dev2064350.dist-info}/METADATA +2 -3
  254. {py2docfx-0.1.16.dev2051338.dist-info → py2docfx-0.1.16.dev2064350.dist-info}/RECORD +263 -104
  255. {py2docfx-0.1.16.dev2051338.dist-info → py2docfx-0.1.16.dev2064350.dist-info}/WHEEL +1 -1
  256. py2docfx/venv/basevenv/Lib/site-packages/wheel/_bdist_wheel.py +0 -613
  257. py2docfx/venv/basevenv/Lib/site-packages/wheel/_setuptools_logging.py +0 -26
  258. py2docfx/venv/basevenv/Lib/site-packages/wheel/util.py +0 -17
  259. py2docfx/venv/basevenv/Lib/site-packages/wheel/vendored/packaging/_elffile.py +0 -108
  260. py2docfx/venv/basevenv/Lib/site-packages/wheel/vendored/packaging/_parser.py +0 -356
  261. py2docfx/venv/basevenv/Lib/site-packages/wheel/vendored/packaging/markers.py +0 -253
  262. py2docfx/venv/basevenv/Lib/site-packages/wheel/vendored/packaging/tags.py +0 -571
  263. py2docfx/venv/venv1/Lib/site-packages/wheel/_bdist_wheel.py +0 -613
  264. py2docfx/venv/venv1/Lib/site-packages/wheel/_setuptools_logging.py +0 -26
  265. py2docfx/venv/venv1/Lib/site-packages/wheel/util.py +0 -17
  266. py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/_manylinux.py +0 -260
  267. py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/_musllinux.py +0 -83
  268. py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/_structures.py +0 -61
  269. py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/_tokenizer.py +0 -192
  270. py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/requirements.py +0 -90
  271. py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/specifiers.py +0 -1011
  272. py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/utils.py +0 -172
  273. py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/version.py +0 -561
  274. /py2docfx/venv/basevenv/Lib/site-packages/{wheel/vendored/__init__.py → certifi/py.typed} +0 -0
  275. /py2docfx/venv/basevenv/Lib/site-packages/{wheel/vendored/packaging/__init__.py → charset_normalizer/py.typed} +0 -0
  276. /py2docfx/venv/{venv1/Lib/site-packages/wheel/vendored/__init__.py → basevenv/Lib/site-packages/idna/py.typed} +0 -0
  277. /py2docfx/venv/{venv1/Lib/site-packages/wheel/vendored/packaging/__init__.py → basevenv/Lib/site-packages/jinja2/py.typed} +0 -0
  278. /py2docfx/venv/basevenv/Lib/site-packages/wheel/{cli → _commands}/unpack.py +0 -0
  279. /py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/_structures.py +0 -0
  280. /py2docfx/venv/venv1/Lib/site-packages/wheel/{cli → _commands}/unpack.py +0 -0
  281. {py2docfx-0.1.16.dev2051338.dist-info → py2docfx-0.1.16.dev2064350.dist-info}/top_level.txt +0 -0
@@ -1,561 +0,0 @@
1
- # This file is dual licensed under the terms of the Apache License, Version
2
- # 2.0, and the BSD License. See the LICENSE file in the root of this repository
3
- # for complete details.
4
- """
5
- .. testsetup::
6
-
7
- from packaging.version import parse, Version
8
- """
9
-
10
- import itertools
11
- import re
12
- from typing import Any, Callable, NamedTuple, Optional, SupportsInt, Tuple, Union
13
-
14
- from ._structures import Infinity, InfinityType, NegativeInfinity, NegativeInfinityType
15
-
16
- __all__ = ["VERSION_PATTERN", "parse", "Version", "InvalidVersion"]
17
-
18
- LocalType = Tuple[Union[int, str], ...]
19
-
20
- CmpPrePostDevType = Union[InfinityType, NegativeInfinityType, Tuple[str, int]]
21
- CmpLocalType = Union[
22
- NegativeInfinityType,
23
- Tuple[Union[Tuple[int, str], Tuple[NegativeInfinityType, Union[int, str]]], ...],
24
- ]
25
- CmpKey = Tuple[
26
- int,
27
- Tuple[int, ...],
28
- CmpPrePostDevType,
29
- CmpPrePostDevType,
30
- CmpPrePostDevType,
31
- CmpLocalType,
32
- ]
33
- VersionComparisonMethod = Callable[[CmpKey, CmpKey], bool]
34
-
35
-
36
- class _Version(NamedTuple):
37
- epoch: int
38
- release: Tuple[int, ...]
39
- dev: Optional[Tuple[str, int]]
40
- pre: Optional[Tuple[str, int]]
41
- post: Optional[Tuple[str, int]]
42
- local: Optional[LocalType]
43
-
44
-
45
- def parse(version: str) -> "Version":
46
- """Parse the given version string.
47
-
48
- >>> parse('1.0.dev1')
49
- <Version('1.0.dev1')>
50
-
51
- :param version: The version string to parse.
52
- :raises InvalidVersion: When the version string is not a valid version.
53
- """
54
- return Version(version)
55
-
56
-
57
- class InvalidVersion(ValueError):
58
- """Raised when a version string is not a valid version.
59
-
60
- >>> Version("invalid")
61
- Traceback (most recent call last):
62
- ...
63
- packaging.version.InvalidVersion: Invalid version: 'invalid'
64
- """
65
-
66
-
67
- class _BaseVersion:
68
- _key: Tuple[Any, ...]
69
-
70
- def __hash__(self) -> int:
71
- return hash(self._key)
72
-
73
- # Please keep the duplicated `isinstance` check
74
- # in the six comparisons hereunder
75
- # unless you find a way to avoid adding overhead function calls.
76
- def __lt__(self, other: "_BaseVersion") -> bool:
77
- if not isinstance(other, _BaseVersion):
78
- return NotImplemented
79
-
80
- return self._key < other._key
81
-
82
- def __le__(self, other: "_BaseVersion") -> bool:
83
- if not isinstance(other, _BaseVersion):
84
- return NotImplemented
85
-
86
- return self._key <= other._key
87
-
88
- def __eq__(self, other: object) -> bool:
89
- if not isinstance(other, _BaseVersion):
90
- return NotImplemented
91
-
92
- return self._key == other._key
93
-
94
- def __ge__(self, other: "_BaseVersion") -> bool:
95
- if not isinstance(other, _BaseVersion):
96
- return NotImplemented
97
-
98
- return self._key >= other._key
99
-
100
- def __gt__(self, other: "_BaseVersion") -> bool:
101
- if not isinstance(other, _BaseVersion):
102
- return NotImplemented
103
-
104
- return self._key > other._key
105
-
106
- def __ne__(self, other: object) -> bool:
107
- if not isinstance(other, _BaseVersion):
108
- return NotImplemented
109
-
110
- return self._key != other._key
111
-
112
-
113
- # Deliberately not anchored to the start and end of the string, to make it
114
- # easier for 3rd party code to reuse
115
- _VERSION_PATTERN = r"""
116
- v?
117
- (?:
118
- (?:(?P<epoch>[0-9]+)!)? # epoch
119
- (?P<release>[0-9]+(?:\.[0-9]+)*) # release segment
120
- (?P<pre> # pre-release
121
- [-_\.]?
122
- (?P<pre_l>alpha|a|beta|b|preview|pre|c|rc)
123
- [-_\.]?
124
- (?P<pre_n>[0-9]+)?
125
- )?
126
- (?P<post> # post release
127
- (?:-(?P<post_n1>[0-9]+))
128
- |
129
- (?:
130
- [-_\.]?
131
- (?P<post_l>post|rev|r)
132
- [-_\.]?
133
- (?P<post_n2>[0-9]+)?
134
- )
135
- )?
136
- (?P<dev> # dev release
137
- [-_\.]?
138
- (?P<dev_l>dev)
139
- [-_\.]?
140
- (?P<dev_n>[0-9]+)?
141
- )?
142
- )
143
- (?:\+(?P<local>[a-z0-9]+(?:[-_\.][a-z0-9]+)*))? # local version
144
- """
145
-
146
- VERSION_PATTERN = _VERSION_PATTERN
147
- """
148
- A string containing the regular expression used to match a valid version.
149
-
150
- The pattern is not anchored at either end, and is intended for embedding in larger
151
- expressions (for example, matching a version number as part of a file name). The
152
- regular expression should be compiled with the ``re.VERBOSE`` and ``re.IGNORECASE``
153
- flags set.
154
-
155
- :meta hide-value:
156
- """
157
-
158
-
159
- class Version(_BaseVersion):
160
- """This class abstracts handling of a project's versions.
161
-
162
- A :class:`Version` instance is comparison aware and can be compared and
163
- sorted using the standard Python interfaces.
164
-
165
- >>> v1 = Version("1.0a5")
166
- >>> v2 = Version("1.0")
167
- >>> v1
168
- <Version('1.0a5')>
169
- >>> v2
170
- <Version('1.0')>
171
- >>> v1 < v2
172
- True
173
- >>> v1 == v2
174
- False
175
- >>> v1 > v2
176
- False
177
- >>> v1 >= v2
178
- False
179
- >>> v1 <= v2
180
- True
181
- """
182
-
183
- _regex = re.compile(r"^\s*" + VERSION_PATTERN + r"\s*$", re.VERBOSE | re.IGNORECASE)
184
- _key: CmpKey
185
-
186
- def __init__(self, version: str) -> None:
187
- """Initialize a Version object.
188
-
189
- :param version:
190
- The string representation of a version which will be parsed and normalized
191
- before use.
192
- :raises InvalidVersion:
193
- If the ``version`` does not conform to PEP 440 in any way then this
194
- exception will be raised.
195
- """
196
-
197
- # Validate the version and parse it into pieces
198
- match = self._regex.search(version)
199
- if not match:
200
- raise InvalidVersion(f"Invalid version: '{version}'")
201
-
202
- # Store the parsed out pieces of the version
203
- self._version = _Version(
204
- epoch=int(match.group("epoch")) if match.group("epoch") else 0,
205
- release=tuple(int(i) for i in match.group("release").split(".")),
206
- pre=_parse_letter_version(match.group("pre_l"), match.group("pre_n")),
207
- post=_parse_letter_version(
208
- match.group("post_l"), match.group("post_n1") or match.group("post_n2")
209
- ),
210
- dev=_parse_letter_version(match.group("dev_l"), match.group("dev_n")),
211
- local=_parse_local_version(match.group("local")),
212
- )
213
-
214
- # Generate a key which will be used for sorting
215
- self._key = _cmpkey(
216
- self._version.epoch,
217
- self._version.release,
218
- self._version.pre,
219
- self._version.post,
220
- self._version.dev,
221
- self._version.local,
222
- )
223
-
224
- def __repr__(self) -> str:
225
- """A representation of the Version that shows all internal state.
226
-
227
- >>> Version('1.0.0')
228
- <Version('1.0.0')>
229
- """
230
- return f"<Version('{self}')>"
231
-
232
- def __str__(self) -> str:
233
- """A string representation of the version that can be rounded-tripped.
234
-
235
- >>> str(Version("1.0a5"))
236
- '1.0a5'
237
- """
238
- parts = []
239
-
240
- # Epoch
241
- if self.epoch != 0:
242
- parts.append(f"{self.epoch}!")
243
-
244
- # Release segment
245
- parts.append(".".join(str(x) for x in self.release))
246
-
247
- # Pre-release
248
- if self.pre is not None:
249
- parts.append("".join(str(x) for x in self.pre))
250
-
251
- # Post-release
252
- if self.post is not None:
253
- parts.append(f".post{self.post}")
254
-
255
- # Development release
256
- if self.dev is not None:
257
- parts.append(f".dev{self.dev}")
258
-
259
- # Local version segment
260
- if self.local is not None:
261
- parts.append(f"+{self.local}")
262
-
263
- return "".join(parts)
264
-
265
- @property
266
- def epoch(self) -> int:
267
- """The epoch of the version.
268
-
269
- >>> Version("2.0.0").epoch
270
- 0
271
- >>> Version("1!2.0.0").epoch
272
- 1
273
- """
274
- return self._version.epoch
275
-
276
- @property
277
- def release(self) -> Tuple[int, ...]:
278
- """The components of the "release" segment of the version.
279
-
280
- >>> Version("1.2.3").release
281
- (1, 2, 3)
282
- >>> Version("2.0.0").release
283
- (2, 0, 0)
284
- >>> Version("1!2.0.0.post0").release
285
- (2, 0, 0)
286
-
287
- Includes trailing zeroes but not the epoch or any pre-release / development /
288
- post-release suffixes.
289
- """
290
- return self._version.release
291
-
292
- @property
293
- def pre(self) -> Optional[Tuple[str, int]]:
294
- """The pre-release segment of the version.
295
-
296
- >>> print(Version("1.2.3").pre)
297
- None
298
- >>> Version("1.2.3a1").pre
299
- ('a', 1)
300
- >>> Version("1.2.3b1").pre
301
- ('b', 1)
302
- >>> Version("1.2.3rc1").pre
303
- ('rc', 1)
304
- """
305
- return self._version.pre
306
-
307
- @property
308
- def post(self) -> Optional[int]:
309
- """The post-release number of the version.
310
-
311
- >>> print(Version("1.2.3").post)
312
- None
313
- >>> Version("1.2.3.post1").post
314
- 1
315
- """
316
- return self._version.post[1] if self._version.post else None
317
-
318
- @property
319
- def dev(self) -> Optional[int]:
320
- """The development number of the version.
321
-
322
- >>> print(Version("1.2.3").dev)
323
- None
324
- >>> Version("1.2.3.dev1").dev
325
- 1
326
- """
327
- return self._version.dev[1] if self._version.dev else None
328
-
329
- @property
330
- def local(self) -> Optional[str]:
331
- """The local version segment of the version.
332
-
333
- >>> print(Version("1.2.3").local)
334
- None
335
- >>> Version("1.2.3+abc").local
336
- 'abc'
337
- """
338
- if self._version.local:
339
- return ".".join(str(x) for x in self._version.local)
340
- else:
341
- return None
342
-
343
- @property
344
- def public(self) -> str:
345
- """The public portion of the version.
346
-
347
- >>> Version("1.2.3").public
348
- '1.2.3'
349
- >>> Version("1.2.3+abc").public
350
- '1.2.3'
351
- >>> Version("1.2.3+abc.dev1").public
352
- '1.2.3'
353
- """
354
- return str(self).split("+", 1)[0]
355
-
356
- @property
357
- def base_version(self) -> str:
358
- """The "base version" of the version.
359
-
360
- >>> Version("1.2.3").base_version
361
- '1.2.3'
362
- >>> Version("1.2.3+abc").base_version
363
- '1.2.3'
364
- >>> Version("1!1.2.3+abc.dev1").base_version
365
- '1!1.2.3'
366
-
367
- The "base version" is the public version of the project without any pre or post
368
- release markers.
369
- """
370
- parts = []
371
-
372
- # Epoch
373
- if self.epoch != 0:
374
- parts.append(f"{self.epoch}!")
375
-
376
- # Release segment
377
- parts.append(".".join(str(x) for x in self.release))
378
-
379
- return "".join(parts)
380
-
381
- @property
382
- def is_prerelease(self) -> bool:
383
- """Whether this version is a pre-release.
384
-
385
- >>> Version("1.2.3").is_prerelease
386
- False
387
- >>> Version("1.2.3a1").is_prerelease
388
- True
389
- >>> Version("1.2.3b1").is_prerelease
390
- True
391
- >>> Version("1.2.3rc1").is_prerelease
392
- True
393
- >>> Version("1.2.3dev1").is_prerelease
394
- True
395
- """
396
- return self.dev is not None or self.pre is not None
397
-
398
- @property
399
- def is_postrelease(self) -> bool:
400
- """Whether this version is a post-release.
401
-
402
- >>> Version("1.2.3").is_postrelease
403
- False
404
- >>> Version("1.2.3.post1").is_postrelease
405
- True
406
- """
407
- return self.post is not None
408
-
409
- @property
410
- def is_devrelease(self) -> bool:
411
- """Whether this version is a development release.
412
-
413
- >>> Version("1.2.3").is_devrelease
414
- False
415
- >>> Version("1.2.3.dev1").is_devrelease
416
- True
417
- """
418
- return self.dev is not None
419
-
420
- @property
421
- def major(self) -> int:
422
- """The first item of :attr:`release` or ``0`` if unavailable.
423
-
424
- >>> Version("1.2.3").major
425
- 1
426
- """
427
- return self.release[0] if len(self.release) >= 1 else 0
428
-
429
- @property
430
- def minor(self) -> int:
431
- """The second item of :attr:`release` or ``0`` if unavailable.
432
-
433
- >>> Version("1.2.3").minor
434
- 2
435
- >>> Version("1").minor
436
- 0
437
- """
438
- return self.release[1] if len(self.release) >= 2 else 0
439
-
440
- @property
441
- def micro(self) -> int:
442
- """The third item of :attr:`release` or ``0`` if unavailable.
443
-
444
- >>> Version("1.2.3").micro
445
- 3
446
- >>> Version("1").micro
447
- 0
448
- """
449
- return self.release[2] if len(self.release) >= 3 else 0
450
-
451
-
452
- def _parse_letter_version(
453
- letter: Optional[str], number: Union[str, bytes, SupportsInt, None]
454
- ) -> Optional[Tuple[str, int]]:
455
- if letter:
456
- # We consider there to be an implicit 0 in a pre-release if there is
457
- # not a numeral associated with it.
458
- if number is None:
459
- number = 0
460
-
461
- # We normalize any letters to their lower case form
462
- letter = letter.lower()
463
-
464
- # We consider some words to be alternate spellings of other words and
465
- # in those cases we want to normalize the spellings to our preferred
466
- # spelling.
467
- if letter == "alpha":
468
- letter = "a"
469
- elif letter == "beta":
470
- letter = "b"
471
- elif letter in ["c", "pre", "preview"]:
472
- letter = "rc"
473
- elif letter in ["rev", "r"]:
474
- letter = "post"
475
-
476
- return letter, int(number)
477
- if not letter and number:
478
- # We assume if we are given a number, but we are not given a letter
479
- # then this is using the implicit post release syntax (e.g. 1.0-1)
480
- letter = "post"
481
-
482
- return letter, int(number)
483
-
484
- return None
485
-
486
-
487
- _local_version_separators = re.compile(r"[\._-]")
488
-
489
-
490
- def _parse_local_version(local: Optional[str]) -> Optional[LocalType]:
491
- """
492
- Takes a string like abc.1.twelve and turns it into ("abc", 1, "twelve").
493
- """
494
- if local is not None:
495
- return tuple(
496
- part.lower() if not part.isdigit() else int(part)
497
- for part in _local_version_separators.split(local)
498
- )
499
- return None
500
-
501
-
502
- def _cmpkey(
503
- epoch: int,
504
- release: Tuple[int, ...],
505
- pre: Optional[Tuple[str, int]],
506
- post: Optional[Tuple[str, int]],
507
- dev: Optional[Tuple[str, int]],
508
- local: Optional[LocalType],
509
- ) -> CmpKey:
510
- # When we compare a release version, we want to compare it with all of the
511
- # trailing zeros removed. So we'll use a reverse the list, drop all the now
512
- # leading zeros until we come to something non zero, then take the rest
513
- # re-reverse it back into the correct order and make it a tuple and use
514
- # that for our sorting key.
515
- _release = tuple(
516
- reversed(list(itertools.dropwhile(lambda x: x == 0, reversed(release))))
517
- )
518
-
519
- # We need to "trick" the sorting algorithm to put 1.0.dev0 before 1.0a0.
520
- # We'll do this by abusing the pre segment, but we _only_ want to do this
521
- # if there is not a pre or a post segment. If we have one of those then
522
- # the normal sorting rules will handle this case correctly.
523
- if pre is None and post is None and dev is not None:
524
- _pre: CmpPrePostDevType = NegativeInfinity
525
- # Versions without a pre-release (except as noted above) should sort after
526
- # those with one.
527
- elif pre is None:
528
- _pre = Infinity
529
- else:
530
- _pre = pre
531
-
532
- # Versions without a post segment should sort before those with one.
533
- if post is None:
534
- _post: CmpPrePostDevType = NegativeInfinity
535
-
536
- else:
537
- _post = post
538
-
539
- # Versions without a development segment should sort after those with one.
540
- if dev is None:
541
- _dev: CmpPrePostDevType = Infinity
542
-
543
- else:
544
- _dev = dev
545
-
546
- if local is None:
547
- # Versions without a local segment should sort before those with one.
548
- _local: CmpLocalType = NegativeInfinity
549
- else:
550
- # Versions with a local segment need that segment parsed to implement
551
- # the sorting rules in PEP440.
552
- # - Alpha numeric segments sort before numeric segments
553
- # - Alpha numeric segments sort lexicographically
554
- # - Numeric segments sort numerically
555
- # - Shorter versions sort before longer versions when the prefixes
556
- # match exactly
557
- _local = tuple(
558
- (i, "") if isinstance(i, int) else (NegativeInfinity, i) for i in local
559
- )
560
-
561
- return epoch, _release, _pre, _post, _dev, _local