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.
- py2docfx/convert_prepare/environment.py +3 -1
- py2docfx/convert_prepare/get_source.py +6 -1
- py2docfx/convert_prepare/package_info.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/babel/py.typed +1 -0
- py2docfx/venv/basevenv/Lib/site-packages/markupsafe/_speedups.pyi +1 -0
- py2docfx/venv/basevenv/Lib/site-packages/markupsafe/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/packaging/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/cachecontrol/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/certifi/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/chardet/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/distro/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/idna/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/packaging/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/platformdirs/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/pyparsing/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/resolvelib/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/rich/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/tenacity/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/tomli/py.typed +1 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/_vendor/truststore/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/pip/py.typed +4 -0
- py2docfx/venv/basevenv/Lib/site-packages/pkg_resources/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/importlib_metadata/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/inflect/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/jaraco/collections/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/jaraco/functools/__init__.pyi +125 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/jaraco/functools/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/more_itertools/__init__.pyi +2 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/more_itertools/more.pyi +709 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/more_itertools/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/more_itertools/recipes.pyi +136 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/packaging/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/platformdirs/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/tomli/py.typed +1 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/typeguard/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/sphinx/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/sphinxcontrib/applehelp/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/sphinxcontrib/htmlhelp/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/sphinxcontrib/qthelp/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/sphinxcontrib/serializinghtml/py.typed +0 -0
- py2docfx/venv/basevenv/Lib/site-packages/urllib3/_version.py +9 -4
- py2docfx/venv/basevenv/Lib/site-packages/urllib3/contrib/emscripten/response.py +8 -16
- py2docfx/venv/basevenv/Lib/site-packages/urllib3/contrib/pyopenssl.py +10 -0
- py2docfx/venv/basevenv/Lib/site-packages/urllib3/exceptions.py +12 -4
- py2docfx/venv/basevenv/Lib/site-packages/urllib3/http2/connection.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/urllib3/py.typed +2 -0
- py2docfx/venv/basevenv/Lib/site-packages/urllib3/util/ssl_.py +21 -1
- py2docfx/venv/basevenv/Lib/site-packages/urllib3/util/ssl_match_hostname.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/wheel/__init__.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/wheel/__main__.py +7 -5
- py2docfx/venv/basevenv/Lib/site-packages/wheel/{cli → _commands}/__init__.py +3 -5
- py2docfx/venv/basevenv/Lib/site-packages/wheel/{cli → _commands}/convert.py +14 -9
- py2docfx/venv/basevenv/Lib/site-packages/wheel/{cli → _commands}/pack.py +1 -2
- py2docfx/venv/basevenv/Lib/site-packages/wheel/{cli → _commands}/tags.py +4 -3
- py2docfx/venv/basevenv/Lib/site-packages/wheel/_metadata.py +184 -0
- py2docfx/venv/basevenv/Lib/site-packages/wheel/bdist_wheel.py +12 -23
- py2docfx/venv/basevenv/Lib/site-packages/wheel/macosx_libfile.py +4 -0
- py2docfx/venv/basevenv/Lib/site-packages/wheel/metadata.py +17 -183
- py2docfx/venv/basevenv/Lib/site-packages/wheel/wheelfile.py +30 -16
- py2docfx/venv/venv1/Lib/site-packages/azure/core/_version.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/azure/core/credentials.py +5 -4
- py2docfx/venv/venv1/Lib/site-packages/azure/core/instrumentation.py +67 -0
- py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/_base.py +3 -1
- py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/_tools.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_authentication.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_authentication_async.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_distributed_tracing.py +152 -29
- py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_redirect.py +3 -2
- py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_redirect_async.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_retry.py +3 -10
- py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_retry_async.py +3 -8
- py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/policies/_universal.py +2 -0
- py2docfx/venv/venv1/Lib/site-packages/azure/core/pipeline/transport/_aiohttp.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/azure/core/polling/base_polling.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/azure/core/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/azure/core/rest/_http_response_impl_async.py +3 -0
- py2docfx/venv/venv1/Lib/site-packages/azure/core/rest/_rest_py3.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/azure/core/settings.py +27 -21
- py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/__init__.py +3 -7
- py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/_abstract_span.py +2 -35
- py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/_models.py +71 -0
- py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/common.py +12 -4
- py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/decorator.py +66 -13
- py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/decorator_async.py +62 -23
- py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/ext/opencensus_span/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/azure/core/tracing/opentelemetry.py +244 -0
- py2docfx/venv/venv1/Lib/site-packages/azure/core/utils/_connection_string_parser.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/azure/core/utils/_messaging_shared.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/azure/core/utils/_pipeline_transport_rest_shared.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/azure/core/utils/_utils.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/azure/identity/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/certifi/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/charset_normalizer/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/__init__.pyi +28 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/_openssl.pyi +8 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/asn1.pyi +7 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/exceptions.pyi +17 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/ocsp.pyi +117 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/__init__.pyi +72 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/aead.pyi +103 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/ciphers.pyi +38 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/cmac.pyi +18 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/dh.pyi +51 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/dsa.pyi +41 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/ec.pyi +52 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/ed25519.pyi +12 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/ed448.pyi +12 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/hashes.pyi +19 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/hmac.pyi +21 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/kdf.pyi +43 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/keys.pyi +33 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/poly1305.pyi +13 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/rsa.pyi +55 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/x25519.pyi +12 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/openssl/x448.pyi +12 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/pkcs12.pyi +46 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/pkcs7.pyi +49 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/test_support.pyi +22 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/hazmat/bindings/_rust/x509.pyi +246 -0
- py2docfx/venv/venv1/Lib/site-packages/cryptography/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/annotations_pb2.pyi +24 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/auth_pb2.pyi +120 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/backend_pb2.pyi +102 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/billing_pb2.pyi +50 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/client_pb2.pyi +405 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/config_change_pb2.pyi +65 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/consumer_pb2.pyi +62 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/context_pb2.pyi +60 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/control_pb2.pyi +43 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/distribution_pb2.pyi +144 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/documentation_pb2.pyi +86 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/endpoint_pb2.pyi +41 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/error_reason_pb2.pyi +90 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/field_behavior_pb2.pyi +45 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/field_info_pb2.pyi +60 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/http_pb2.pyi +94 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/httpbody_pb2.pyi +41 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/label_pb2.pyi +47 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/launch_stage_pb2.pyi +40 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/log_pb2.pyi +47 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/logging_pb2.pyi +57 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/metric_pb2.pyi +186 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/monitored_resource_pb2.pyi +104 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/monitoring_pb2.pyi +57 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/policy_pb2.pyi +57 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/quota_pb2.pyi +116 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/resource_pb2.pyi +93 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/routing_pb2.pyi +49 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/service_pb2.pyi +170 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/source_info_pb2.pyi +34 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/system_parameter_pb2.pyi +60 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/usage_pb2.pyi +55 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api/visibility_pb2.pyi +56 -0
- py2docfx/venv/venv1/Lib/site-packages/google/api_core/py.typed +2 -0
- py2docfx/venv/venv1/Lib/site-packages/google/auth/py.typed +2 -0
- py2docfx/venv/venv1/Lib/site-packages/google/cloud/extended_operations_pb2.pyi +45 -0
- py2docfx/venv/venv1/Lib/site-packages/google/cloud/location/locations_pb2.pyi +96 -0
- py2docfx/venv/venv1/Lib/site-packages/google/gapic/metadata/gapic_metadata_pb2.pyi +118 -0
- py2docfx/venv/venv1/Lib/site-packages/google/logging/type/http_request_pb2.pyi +91 -0
- py2docfx/venv/venv1/Lib/site-packages/google/logging/type/log_severity_pb2.pyi +42 -0
- py2docfx/venv/venv1/Lib/site-packages/google/longrunning/operations_proto_pb2.pyi +126 -0
- py2docfx/venv/venv1/Lib/site-packages/google/oauth2/py.typed +2 -0
- py2docfx/venv/venv1/Lib/site-packages/google/rpc/code_pb2.pyi +58 -0
- py2docfx/venv/venv1/Lib/site-packages/google/rpc/context/attribute_context_pb2.pyi +309 -0
- py2docfx/venv/venv1/Lib/site-packages/google/rpc/context/audit_context_pb2.pyi +51 -0
- py2docfx/venv/venv1/Lib/site-packages/google/rpc/error_details_pb2.pyi +207 -0
- py2docfx/venv/venv1/Lib/site-packages/google/rpc/http_pb2.pyi +71 -0
- py2docfx/venv/venv1/Lib/site-packages/google/rpc/status_pb2.pyi +41 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/calendar_period_pb2.pyi +40 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/color_pb2.pyi +42 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/date_pb2.pyi +36 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/datetime_pb2.pyi +77 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/dayofweek_pb2.pyi +40 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/decimal_pb2.pyi +27 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/expr_pb2.pyi +39 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/fraction_pb2.pyi +31 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/interval_pb2.pyi +36 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/latlng_pb2.pyi +31 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/localized_text_pb2.pyi +31 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/money_pb2.pyi +36 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/month_pb2.pyi +50 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/phone_number_pb2.pyi +48 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/postal_address_pb2.pyi +74 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/quaternion_pb2.pyi +39 -0
- py2docfx/venv/venv1/Lib/site-packages/google/type/timeofday_pb2.pyi +39 -0
- py2docfx/venv/venv1/Lib/site-packages/idna/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/jwt/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/packaging/__init__.py +15 -0
- py2docfx/venv/venv1/Lib/site-packages/{wheel/vendored/packaging → packaging}/_elffile.py +9 -7
- py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/_manylinux.py +12 -9
- py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/_musllinux.py +5 -3
- py2docfx/venv/venv1/Lib/site-packages/{wheel/vendored/packaging → packaging}/_parser.py +11 -13
- py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/_tokenizer.py +10 -8
- py2docfx/venv/venv1/Lib/site-packages/packaging/licenses/__init__.py +145 -0
- py2docfx/venv/venv1/Lib/site-packages/packaging/licenses/_spdx.py +759 -0
- py2docfx/venv/venv1/Lib/site-packages/{wheel/vendored/packaging → packaging}/markers.py +103 -25
- py2docfx/venv/venv1/Lib/site-packages/packaging/metadata.py +863 -0
- py2docfx/venv/venv1/Lib/site-packages/packaging/py.typed +0 -0
- py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/requirements.py +5 -4
- py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/specifiers.py +40 -31
- py2docfx/venv/venv1/Lib/site-packages/{wheel/vendored/packaging → packaging}/tags.py +96 -50
- py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/utils.py +39 -48
- py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/version.py +53 -32
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/cachecontrol/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/certifi/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/chardet/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/distro/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/idna/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/packaging/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/platformdirs/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/pyparsing/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/resolvelib/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/rich/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/tenacity/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/tomli/py.typed +1 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/_vendor/truststore/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pip/py.typed +4 -0
- py2docfx/venv/venv1/Lib/site-packages/pkg_resources/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/rsa/py.typed +1 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/importlib_metadata/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/inflect/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/jaraco/collections/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/jaraco/functools/__init__.pyi +125 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/jaraco/functools/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/more_itertools/__init__.pyi +2 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/more_itertools/more.pyi +709 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/more_itertools/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/more_itertools/recipes.pyi +136 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/packaging/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/platformdirs/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/tomli/py.typed +1 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/typeguard/py.typed +0 -0
- py2docfx/venv/venv1/Lib/site-packages/typing_extensions.py +30 -12
- py2docfx/venv/venv1/Lib/site-packages/urllib3/_version.py +9 -4
- py2docfx/venv/venv1/Lib/site-packages/urllib3/contrib/emscripten/response.py +8 -16
- py2docfx/venv/venv1/Lib/site-packages/urllib3/contrib/pyopenssl.py +10 -0
- py2docfx/venv/venv1/Lib/site-packages/urllib3/exceptions.py +12 -4
- py2docfx/venv/venv1/Lib/site-packages/urllib3/http2/connection.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/urllib3/py.typed +2 -0
- py2docfx/venv/venv1/Lib/site-packages/urllib3/util/ssl_.py +21 -1
- py2docfx/venv/venv1/Lib/site-packages/urllib3/util/ssl_match_hostname.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/wheel/__init__.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/wheel/__main__.py +7 -5
- py2docfx/venv/venv1/Lib/site-packages/wheel/{cli → _commands}/__init__.py +3 -5
- py2docfx/venv/venv1/Lib/site-packages/wheel/{cli → _commands}/convert.py +14 -9
- py2docfx/venv/venv1/Lib/site-packages/wheel/{cli → _commands}/pack.py +1 -2
- py2docfx/venv/venv1/Lib/site-packages/wheel/{cli → _commands}/tags.py +4 -3
- py2docfx/venv/venv1/Lib/site-packages/wheel/_metadata.py +184 -0
- py2docfx/venv/venv1/Lib/site-packages/wheel/bdist_wheel.py +12 -23
- py2docfx/venv/venv1/Lib/site-packages/wheel/macosx_libfile.py +4 -0
- py2docfx/venv/venv1/Lib/site-packages/wheel/metadata.py +17 -183
- py2docfx/venv/venv1/Lib/site-packages/wheel/wheelfile.py +30 -16
- {py2docfx-0.1.16.dev2051338.dist-info → py2docfx-0.1.16.dev2064350.dist-info}/METADATA +2 -3
- {py2docfx-0.1.16.dev2051338.dist-info → py2docfx-0.1.16.dev2064350.dist-info}/RECORD +263 -104
- {py2docfx-0.1.16.dev2051338.dist-info → py2docfx-0.1.16.dev2064350.dist-info}/WHEEL +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/wheel/_bdist_wheel.py +0 -613
- py2docfx/venv/basevenv/Lib/site-packages/wheel/_setuptools_logging.py +0 -26
- py2docfx/venv/basevenv/Lib/site-packages/wheel/util.py +0 -17
- py2docfx/venv/basevenv/Lib/site-packages/wheel/vendored/packaging/_elffile.py +0 -108
- py2docfx/venv/basevenv/Lib/site-packages/wheel/vendored/packaging/_parser.py +0 -356
- py2docfx/venv/basevenv/Lib/site-packages/wheel/vendored/packaging/markers.py +0 -253
- py2docfx/venv/basevenv/Lib/site-packages/wheel/vendored/packaging/tags.py +0 -571
- py2docfx/venv/venv1/Lib/site-packages/wheel/_bdist_wheel.py +0 -613
- py2docfx/venv/venv1/Lib/site-packages/wheel/_setuptools_logging.py +0 -26
- py2docfx/venv/venv1/Lib/site-packages/wheel/util.py +0 -17
- py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/_manylinux.py +0 -260
- py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/_musllinux.py +0 -83
- py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/_structures.py +0 -61
- py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/_tokenizer.py +0 -192
- py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/requirements.py +0 -90
- py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/specifiers.py +0 -1011
- py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/utils.py +0 -172
- py2docfx/venv/venv1/Lib/site-packages/wheel/vendored/packaging/version.py +0 -561
- /py2docfx/venv/basevenv/Lib/site-packages/{wheel/vendored/__init__.py → certifi/py.typed} +0 -0
- /py2docfx/venv/basevenv/Lib/site-packages/{wheel/vendored/packaging/__init__.py → charset_normalizer/py.typed} +0 -0
- /py2docfx/venv/{venv1/Lib/site-packages/wheel/vendored/__init__.py → basevenv/Lib/site-packages/idna/py.typed} +0 -0
- /py2docfx/venv/{venv1/Lib/site-packages/wheel/vendored/packaging/__init__.py → basevenv/Lib/site-packages/jinja2/py.typed} +0 -0
- /py2docfx/venv/basevenv/Lib/site-packages/wheel/{cli → _commands}/unpack.py +0 -0
- /py2docfx/venv/{basevenv/Lib/site-packages/wheel/vendored → venv1/Lib/site-packages}/packaging/_structures.py +0 -0
- /py2docfx/venv/venv1/Lib/site-packages/wheel/{cli → _commands}/unpack.py +0 -0
- {py2docfx-0.1.16.dev2051338.dist-info → py2docfx-0.1.16.dev2064350.dist-info}/top_level.txt +0 -0
File without changes
|
@@ -1,8 +1,9 @@
|
|
1
1
|
# This file is dual licensed under the terms of the Apache License, Version
|
2
2
|
# 2.0, and the BSD License. See the LICENSE file in the root of this repository
|
3
3
|
# for complete details.
|
4
|
+
from __future__ import annotations
|
4
5
|
|
5
|
-
from typing import Any, Iterator
|
6
|
+
from typing import Any, Iterator
|
6
7
|
|
7
8
|
from ._parser import parse_requirement as _parse_requirement
|
8
9
|
from ._tokenizer import ParserSyntaxError
|
@@ -37,10 +38,10 @@ class Requirement:
|
|
37
38
|
raise InvalidRequirement(str(e)) from e
|
38
39
|
|
39
40
|
self.name: str = parsed.name
|
40
|
-
self.url:
|
41
|
-
self.extras:
|
41
|
+
self.url: str | None = parsed.url or None
|
42
|
+
self.extras: set[str] = set(parsed.extras or [])
|
42
43
|
self.specifier: SpecifierSet = SpecifierSet(parsed.specifier)
|
43
|
-
self.marker:
|
44
|
+
self.marker: Marker | None = None
|
44
45
|
if parsed.marker is not None:
|
45
46
|
self.marker = Marker.__new__(Marker)
|
46
47
|
self.marker._markers = _normalize_extra_values(parsed.marker)
|
@@ -8,10 +8,12 @@
|
|
8
8
|
from packaging.version import Version
|
9
9
|
"""
|
10
10
|
|
11
|
+
from __future__ import annotations
|
12
|
+
|
11
13
|
import abc
|
12
14
|
import itertools
|
13
15
|
import re
|
14
|
-
from typing import Callable, Iterable, Iterator,
|
16
|
+
from typing import Callable, Iterable, Iterator, TypeVar, Union
|
15
17
|
|
16
18
|
from .utils import canonicalize_version
|
17
19
|
from .version import Version
|
@@ -64,7 +66,7 @@ class BaseSpecifier(metaclass=abc.ABCMeta):
|
|
64
66
|
|
65
67
|
@property
|
66
68
|
@abc.abstractmethod
|
67
|
-
def prereleases(self) ->
|
69
|
+
def prereleases(self) -> bool | None:
|
68
70
|
"""Whether or not pre-releases as a whole are allowed.
|
69
71
|
|
70
72
|
This can be set to either ``True`` or ``False`` to explicitly enable or disable
|
@@ -79,14 +81,14 @@ class BaseSpecifier(metaclass=abc.ABCMeta):
|
|
79
81
|
"""
|
80
82
|
|
81
83
|
@abc.abstractmethod
|
82
|
-
def contains(self, item: str, prereleases:
|
84
|
+
def contains(self, item: str, prereleases: bool | None = None) -> bool:
|
83
85
|
"""
|
84
86
|
Determines if the given item is contained within this specifier.
|
85
87
|
"""
|
86
88
|
|
87
89
|
@abc.abstractmethod
|
88
90
|
def filter(
|
89
|
-
self, iterable: Iterable[UnparsedVersionVar], prereleases:
|
91
|
+
self, iterable: Iterable[UnparsedVersionVar], prereleases: bool | None = None
|
90
92
|
) -> Iterator[UnparsedVersionVar]:
|
91
93
|
"""
|
92
94
|
Takes an iterable of items and filters them so that only items which
|
@@ -217,7 +219,7 @@ class Specifier(BaseSpecifier):
|
|
217
219
|
"===": "arbitrary",
|
218
220
|
}
|
219
221
|
|
220
|
-
def __init__(self, spec: str = "", prereleases:
|
222
|
+
def __init__(self, spec: str = "", prereleases: bool | None = None) -> None:
|
221
223
|
"""Initialize a Specifier instance.
|
222
224
|
|
223
225
|
:param spec:
|
@@ -232,9 +234,9 @@ class Specifier(BaseSpecifier):
|
|
232
234
|
"""
|
233
235
|
match = self._regex.search(spec)
|
234
236
|
if not match:
|
235
|
-
raise InvalidSpecifier(f"Invalid specifier:
|
237
|
+
raise InvalidSpecifier(f"Invalid specifier: {spec!r}")
|
236
238
|
|
237
|
-
self._spec:
|
239
|
+
self._spec: tuple[str, str] = (
|
238
240
|
match.group("operator").strip(),
|
239
241
|
match.group("version").strip(),
|
240
242
|
)
|
@@ -254,7 +256,7 @@ class Specifier(BaseSpecifier):
|
|
254
256
|
# operators, and if they are if they are including an explicit
|
255
257
|
# prerelease.
|
256
258
|
operator, version = self._spec
|
257
|
-
if operator in ["==", ">=", "<=", "~=", "==="]:
|
259
|
+
if operator in ["==", ">=", "<=", "~=", "===", ">", "<"]:
|
258
260
|
# The == specifier can include a trailing .*, if it does we
|
259
261
|
# want to remove before parsing.
|
260
262
|
if operator == "==" and version.endswith(".*"):
|
@@ -318,7 +320,7 @@ class Specifier(BaseSpecifier):
|
|
318
320
|
return "{}{}".format(*self._spec)
|
319
321
|
|
320
322
|
@property
|
321
|
-
def _canonical_spec(self) ->
|
323
|
+
def _canonical_spec(self) -> tuple[str, str]:
|
322
324
|
canonical_version = canonicalize_version(
|
323
325
|
self._spec[1],
|
324
326
|
strip_trailing_zero=(self._spec[0] != "~="),
|
@@ -495,7 +497,7 @@ class Specifier(BaseSpecifier):
|
|
495
497
|
def _compare_arbitrary(self, prospective: Version, spec: str) -> bool:
|
496
498
|
return str(prospective).lower() == str(spec).lower()
|
497
499
|
|
498
|
-
def __contains__(self, item:
|
500
|
+
def __contains__(self, item: str | Version) -> bool:
|
499
501
|
"""Return whether or not the item is contained in this specifier.
|
500
502
|
|
501
503
|
:param item: The item to check for.
|
@@ -516,9 +518,7 @@ class Specifier(BaseSpecifier):
|
|
516
518
|
"""
|
517
519
|
return self.contains(item)
|
518
520
|
|
519
|
-
def contains(
|
520
|
-
self, item: UnparsedVersion, prereleases: Optional[bool] = None
|
521
|
-
) -> bool:
|
521
|
+
def contains(self, item: UnparsedVersion, prereleases: bool | None = None) -> bool:
|
522
522
|
"""Return whether or not the item is contained in this specifier.
|
523
523
|
|
524
524
|
:param item:
|
@@ -563,7 +563,7 @@ class Specifier(BaseSpecifier):
|
|
563
563
|
return operator_callable(normalized_item, self.version)
|
564
564
|
|
565
565
|
def filter(
|
566
|
-
self, iterable: Iterable[UnparsedVersionVar], prereleases:
|
566
|
+
self, iterable: Iterable[UnparsedVersionVar], prereleases: bool | None = None
|
567
567
|
) -> Iterator[UnparsedVersionVar]:
|
568
568
|
"""Filter items in the given iterable, that match the specifier.
|
569
569
|
|
@@ -627,7 +627,7 @@ class Specifier(BaseSpecifier):
|
|
627
627
|
_prefix_regex = re.compile(r"^([0-9]+)((?:a|b|c|rc)[0-9]+)$")
|
628
628
|
|
629
629
|
|
630
|
-
def _version_split(version: str) ->
|
630
|
+
def _version_split(version: str) -> list[str]:
|
631
631
|
"""Split version into components.
|
632
632
|
|
633
633
|
The split components are intended for version comparison. The logic does
|
@@ -635,7 +635,7 @@ def _version_split(version: str) -> List[str]:
|
|
635
635
|
components back with :func:`_version_join` may not produce the original
|
636
636
|
version string.
|
637
637
|
"""
|
638
|
-
result:
|
638
|
+
result: list[str] = []
|
639
639
|
|
640
640
|
epoch, _, rest = version.rpartition("!")
|
641
641
|
result.append(epoch or "0")
|
@@ -649,7 +649,7 @@ def _version_split(version: str) -> List[str]:
|
|
649
649
|
return result
|
650
650
|
|
651
651
|
|
652
|
-
def _version_join(components:
|
652
|
+
def _version_join(components: list[str]) -> str:
|
653
653
|
"""Join split version components into a version string.
|
654
654
|
|
655
655
|
This function assumes the input came from :func:`_version_split`, where the
|
@@ -666,7 +666,7 @@ def _is_not_suffix(segment: str) -> bool:
|
|
666
666
|
)
|
667
667
|
|
668
668
|
|
669
|
-
def _pad_version(left:
|
669
|
+
def _pad_version(left: list[str], right: list[str]) -> tuple[list[str], list[str]]:
|
670
670
|
left_split, right_split = [], []
|
671
671
|
|
672
672
|
# Get the release segment of our versions
|
@@ -695,13 +695,17 @@ class SpecifierSet(BaseSpecifier):
|
|
695
695
|
"""
|
696
696
|
|
697
697
|
def __init__(
|
698
|
-
self,
|
698
|
+
self,
|
699
|
+
specifiers: str | Iterable[Specifier] = "",
|
700
|
+
prereleases: bool | None = None,
|
699
701
|
) -> None:
|
700
702
|
"""Initialize a SpecifierSet instance.
|
701
703
|
|
702
704
|
:param specifiers:
|
703
705
|
The string representation of a specifier or a comma-separated list of
|
704
706
|
specifiers which will be parsed and normalized before use.
|
707
|
+
May also be an iterable of ``Specifier`` instances, which will be used
|
708
|
+
as is.
|
705
709
|
:param prereleases:
|
706
710
|
This tells the SpecifierSet if it should accept prerelease versions if
|
707
711
|
applicable or not. The default of ``None`` will autodetect it from the
|
@@ -712,19 +716,24 @@ class SpecifierSet(BaseSpecifier):
|
|
712
716
|
raised.
|
713
717
|
"""
|
714
718
|
|
715
|
-
|
716
|
-
|
717
|
-
|
719
|
+
if isinstance(specifiers, str):
|
720
|
+
# Split on `,` to break each individual specifier into its own item, and
|
721
|
+
# strip each item to remove leading/trailing whitespace.
|
722
|
+
split_specifiers = [s.strip() for s in specifiers.split(",") if s.strip()]
|
718
723
|
|
719
|
-
|
720
|
-
|
724
|
+
# Make each individual specifier a Specifier and save in a frozen set
|
725
|
+
# for later.
|
726
|
+
self._specs = frozenset(map(Specifier, split_specifiers))
|
727
|
+
else:
|
728
|
+
# Save the supplied specifiers in a frozen set.
|
729
|
+
self._specs = frozenset(specifiers)
|
721
730
|
|
722
731
|
# Store our prereleases value so we can use it later to determine if
|
723
732
|
# we accept prereleases or not.
|
724
733
|
self._prereleases = prereleases
|
725
734
|
|
726
735
|
@property
|
727
|
-
def prereleases(self) ->
|
736
|
+
def prereleases(self) -> bool | None:
|
728
737
|
# If we have been given an explicit prerelease modifier, then we'll
|
729
738
|
# pass that through here.
|
730
739
|
if self._prereleases is not None:
|
@@ -781,7 +790,7 @@ class SpecifierSet(BaseSpecifier):
|
|
781
790
|
def __hash__(self) -> int:
|
782
791
|
return hash(self._specs)
|
783
792
|
|
784
|
-
def __and__(self, other:
|
793
|
+
def __and__(self, other: SpecifierSet | str) -> SpecifierSet:
|
785
794
|
"""Return a SpecifierSet which is a combination of the two sets.
|
786
795
|
|
787
796
|
:param other: The other object to combine with.
|
@@ -877,8 +886,8 @@ class SpecifierSet(BaseSpecifier):
|
|
877
886
|
def contains(
|
878
887
|
self,
|
879
888
|
item: UnparsedVersion,
|
880
|
-
prereleases:
|
881
|
-
installed:
|
889
|
+
prereleases: bool | None = None,
|
890
|
+
installed: bool | None = None,
|
882
891
|
) -> bool:
|
883
892
|
"""Return whether or not the item is contained in this SpecifierSet.
|
884
893
|
|
@@ -932,7 +941,7 @@ class SpecifierSet(BaseSpecifier):
|
|
932
941
|
return all(s.contains(item, prereleases=prereleases) for s in self._specs)
|
933
942
|
|
934
943
|
def filter(
|
935
|
-
self, iterable: Iterable[UnparsedVersionVar], prereleases:
|
944
|
+
self, iterable: Iterable[UnparsedVersionVar], prereleases: bool | None = None
|
936
945
|
) -> Iterator[UnparsedVersionVar]:
|
937
946
|
"""Filter items in the given iterable, that match the specifiers in this set.
|
938
947
|
|
@@ -989,8 +998,8 @@ class SpecifierSet(BaseSpecifier):
|
|
989
998
|
# which will filter out any pre-releases, unless there are no final
|
990
999
|
# releases.
|
991
1000
|
else:
|
992
|
-
filtered:
|
993
|
-
found_prereleases:
|
1001
|
+
filtered: list[UnparsedVersionVar] = []
|
1002
|
+
found_prereleases: list[UnparsedVersionVar] = []
|
994
1003
|
|
995
1004
|
for item in iterable:
|
996
1005
|
parsed_version = _coerce_version(item)
|
@@ -2,6 +2,8 @@
|
|
2
2
|
# 2.0, and the BSD License. See the LICENSE file in the root of this repository
|
3
3
|
# for complete details.
|
4
4
|
|
5
|
+
from __future__ import annotations
|
6
|
+
|
5
7
|
import logging
|
6
8
|
import platform
|
7
9
|
import re
|
@@ -11,15 +13,10 @@ import sys
|
|
11
13
|
import sysconfig
|
12
14
|
from importlib.machinery import EXTENSION_SUFFIXES
|
13
15
|
from typing import (
|
14
|
-
Dict,
|
15
|
-
FrozenSet,
|
16
16
|
Iterable,
|
17
17
|
Iterator,
|
18
|
-
List,
|
19
|
-
Optional,
|
20
18
|
Sequence,
|
21
19
|
Tuple,
|
22
|
-
Union,
|
23
20
|
cast,
|
24
21
|
)
|
25
22
|
|
@@ -28,9 +25,9 @@ from . import _manylinux, _musllinux
|
|
28
25
|
logger = logging.getLogger(__name__)
|
29
26
|
|
30
27
|
PythonVersion = Sequence[int]
|
31
|
-
|
28
|
+
AppleVersion = Tuple[int, int]
|
32
29
|
|
33
|
-
INTERPRETER_SHORT_NAMES:
|
30
|
+
INTERPRETER_SHORT_NAMES: dict[str, str] = {
|
34
31
|
"python": "py", # Generic.
|
35
32
|
"cpython": "cp",
|
36
33
|
"pypy": "pp",
|
@@ -50,7 +47,7 @@ class Tag:
|
|
50
47
|
is also supported.
|
51
48
|
"""
|
52
49
|
|
53
|
-
__slots__ = ["
|
50
|
+
__slots__ = ["_abi", "_hash", "_interpreter", "_platform"]
|
54
51
|
|
55
52
|
def __init__(self, interpreter: str, abi: str, platform: str) -> None:
|
56
53
|
self._interpreter = interpreter.lower()
|
@@ -96,7 +93,7 @@ class Tag:
|
|
96
93
|
return f"<{self} @ {id(self)}>"
|
97
94
|
|
98
95
|
|
99
|
-
def parse_tag(tag: str) ->
|
96
|
+
def parse_tag(tag: str) -> frozenset[Tag]:
|
100
97
|
"""
|
101
98
|
Parses the provided tag (e.g. `py3-none-any`) into a frozenset of Tag instances.
|
102
99
|
|
@@ -112,8 +109,8 @@ def parse_tag(tag: str) -> FrozenSet[Tag]:
|
|
112
109
|
return frozenset(tags)
|
113
110
|
|
114
111
|
|
115
|
-
def _get_config_var(name: str, warn: bool = False) ->
|
116
|
-
value:
|
112
|
+
def _get_config_var(name: str, warn: bool = False) -> int | str | None:
|
113
|
+
value: int | str | None = sysconfig.get_config_var(name)
|
117
114
|
if value is None and warn:
|
118
115
|
logger.debug(
|
119
116
|
"Config variable '%s' is unset, Python ABI tag may be incorrect", name
|
@@ -125,7 +122,7 @@ def _normalize_string(string: str) -> str:
|
|
125
122
|
return string.replace(".", "_").replace("-", "_").replace(" ", "_")
|
126
123
|
|
127
124
|
|
128
|
-
def _is_threaded_cpython(abis:
|
125
|
+
def _is_threaded_cpython(abis: list[str]) -> bool:
|
129
126
|
"""
|
130
127
|
Determine if the ABI corresponds to a threaded (`--disable-gil`) build.
|
131
128
|
|
@@ -151,7 +148,7 @@ def _abi3_applies(python_version: PythonVersion, threading: bool) -> bool:
|
|
151
148
|
return len(python_version) > 1 and tuple(python_version) >= (3, 2) and not threading
|
152
149
|
|
153
150
|
|
154
|
-
def _cpython_abis(py_version: PythonVersion, warn: bool = False) ->
|
151
|
+
def _cpython_abis(py_version: PythonVersion, warn: bool = False) -> list[str]:
|
155
152
|
py_version = tuple(py_version) # To allow for version comparison.
|
156
153
|
abis = []
|
157
154
|
version = _version_nodot(py_version[:2])
|
@@ -185,9 +182,9 @@ def _cpython_abis(py_version: PythonVersion, warn: bool = False) -> List[str]:
|
|
185
182
|
|
186
183
|
|
187
184
|
def cpython_tags(
|
188
|
-
python_version:
|
189
|
-
abis:
|
190
|
-
platforms:
|
185
|
+
python_version: PythonVersion | None = None,
|
186
|
+
abis: Iterable[str] | None = None,
|
187
|
+
platforms: Iterable[str] | None = None,
|
191
188
|
*,
|
192
189
|
warn: bool = False,
|
193
190
|
) -> Iterator[Tag]:
|
@@ -238,13 +235,12 @@ def cpython_tags(
|
|
238
235
|
if use_abi3:
|
239
236
|
for minor_version in range(python_version[1] - 1, 1, -1):
|
240
237
|
for platform_ in platforms:
|
241
|
-
|
242
|
-
|
243
|
-
)
|
238
|
+
version = _version_nodot((python_version[0], minor_version))
|
239
|
+
interpreter = f"cp{version}"
|
244
240
|
yield Tag(interpreter, "abi3", platform_)
|
245
241
|
|
246
242
|
|
247
|
-
def _generic_abi() ->
|
243
|
+
def _generic_abi() -> list[str]:
|
248
244
|
"""
|
249
245
|
Return the ABI tag based on EXT_SUFFIX.
|
250
246
|
"""
|
@@ -286,9 +282,9 @@ def _generic_abi() -> List[str]:
|
|
286
282
|
|
287
283
|
|
288
284
|
def generic_tags(
|
289
|
-
interpreter:
|
290
|
-
abis:
|
291
|
-
platforms:
|
285
|
+
interpreter: str | None = None,
|
286
|
+
abis: Iterable[str] | None = None,
|
287
|
+
platforms: Iterable[str] | None = None,
|
292
288
|
*,
|
293
289
|
warn: bool = False,
|
294
290
|
) -> Iterator[Tag]:
|
@@ -332,9 +328,9 @@ def _py_interpreter_range(py_version: PythonVersion) -> Iterator[str]:
|
|
332
328
|
|
333
329
|
|
334
330
|
def compatible_tags(
|
335
|
-
python_version:
|
336
|
-
interpreter:
|
337
|
-
platforms:
|
331
|
+
python_version: PythonVersion | None = None,
|
332
|
+
interpreter: str | None = None,
|
333
|
+
platforms: Iterable[str] | None = None,
|
338
334
|
) -> Iterator[Tag]:
|
339
335
|
"""
|
340
336
|
Yields the sequence of tags that are compatible with a specific version of Python.
|
@@ -366,7 +362,7 @@ def _mac_arch(arch: str, is_32bit: bool = _32_BIT_INTERPRETER) -> str:
|
|
366
362
|
return "i386"
|
367
363
|
|
368
364
|
|
369
|
-
def _mac_binary_formats(version:
|
365
|
+
def _mac_binary_formats(version: AppleVersion, cpu_arch: str) -> list[str]:
|
370
366
|
formats = [cpu_arch]
|
371
367
|
if cpu_arch == "x86_64":
|
372
368
|
if version < (10, 4):
|
@@ -399,7 +395,7 @@ def _mac_binary_formats(version: MacVersion, cpu_arch: str) -> List[str]:
|
|
399
395
|
|
400
396
|
|
401
397
|
def mac_platforms(
|
402
|
-
version:
|
398
|
+
version: AppleVersion | None = None, arch: str | None = None
|
403
399
|
) -> Iterator[str]:
|
404
400
|
"""
|
405
401
|
Yields the platform tags for a macOS system.
|
@@ -411,7 +407,7 @@ def mac_platforms(
|
|
411
407
|
"""
|
412
408
|
version_str, _, cpu_arch = platform.mac_ver()
|
413
409
|
if version is None:
|
414
|
-
version = cast("
|
410
|
+
version = cast("AppleVersion", tuple(map(int, version_str.split(".")[:2])))
|
415
411
|
if version == (10, 16):
|
416
412
|
# When built against an older macOS SDK, Python will report macOS 10.16
|
417
413
|
# instead of the real version.
|
@@ -427,7 +423,7 @@ def mac_platforms(
|
|
427
423
|
stdout=subprocess.PIPE,
|
428
424
|
text=True,
|
429
425
|
).stdout
|
430
|
-
version = cast("
|
426
|
+
version = cast("AppleVersion", tuple(map(int, version_str.split(".")[:2])))
|
431
427
|
else:
|
432
428
|
version = version
|
433
429
|
if arch is None:
|
@@ -438,24 +434,22 @@ def mac_platforms(
|
|
438
434
|
if (10, 0) <= version and version < (11, 0):
|
439
435
|
# Prior to Mac OS 11, each yearly release of Mac OS bumped the
|
440
436
|
# "minor" version number. The major version was always 10.
|
437
|
+
major_version = 10
|
441
438
|
for minor_version in range(version[1], -1, -1):
|
442
|
-
compat_version =
|
439
|
+
compat_version = major_version, minor_version
|
443
440
|
binary_formats = _mac_binary_formats(compat_version, arch)
|
444
441
|
for binary_format in binary_formats:
|
445
|
-
yield "macosx_{
|
446
|
-
major=10, minor=minor_version, binary_format=binary_format
|
447
|
-
)
|
442
|
+
yield f"macosx_{major_version}_{minor_version}_{binary_format}"
|
448
443
|
|
449
444
|
if version >= (11, 0):
|
450
445
|
# Starting with Mac OS 11, each yearly release bumps the major version
|
451
446
|
# number. The minor versions are now the midyear updates.
|
447
|
+
minor_version = 0
|
452
448
|
for major_version in range(version[0], 10, -1):
|
453
|
-
compat_version = major_version,
|
449
|
+
compat_version = major_version, minor_version
|
454
450
|
binary_formats = _mac_binary_formats(compat_version, arch)
|
455
451
|
for binary_format in binary_formats:
|
456
|
-
yield "macosx_{
|
457
|
-
major=major_version, minor=0, binary_format=binary_format
|
458
|
-
)
|
452
|
+
yield f"macosx_{major_version}_{minor_version}_{binary_format}"
|
459
453
|
|
460
454
|
if version >= (11, 0):
|
461
455
|
# Mac OS 11 on x86_64 is compatible with binaries from previous releases.
|
@@ -465,25 +459,75 @@ def mac_platforms(
|
|
465
459
|
# However, the "universal2" binary format can have a
|
466
460
|
# macOS version earlier than 11.0 when the x86_64 part of the binary supports
|
467
461
|
# that version of macOS.
|
462
|
+
major_version = 10
|
468
463
|
if arch == "x86_64":
|
469
464
|
for minor_version in range(16, 3, -1):
|
470
|
-
compat_version =
|
465
|
+
compat_version = major_version, minor_version
|
471
466
|
binary_formats = _mac_binary_formats(compat_version, arch)
|
472
467
|
for binary_format in binary_formats:
|
473
|
-
yield "macosx_{
|
474
|
-
major=compat_version[0],
|
475
|
-
minor=compat_version[1],
|
476
|
-
binary_format=binary_format,
|
477
|
-
)
|
468
|
+
yield f"macosx_{major_version}_{minor_version}_{binary_format}"
|
478
469
|
else:
|
479
470
|
for minor_version in range(16, 3, -1):
|
480
|
-
compat_version =
|
471
|
+
compat_version = major_version, minor_version
|
481
472
|
binary_format = "universal2"
|
482
|
-
yield "macosx_{
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
473
|
+
yield f"macosx_{major_version}_{minor_version}_{binary_format}"
|
474
|
+
|
475
|
+
|
476
|
+
def ios_platforms(
|
477
|
+
version: AppleVersion | None = None, multiarch: str | None = None
|
478
|
+
) -> Iterator[str]:
|
479
|
+
"""
|
480
|
+
Yields the platform tags for an iOS system.
|
481
|
+
|
482
|
+
:param version: A two-item tuple specifying the iOS version to generate
|
483
|
+
platform tags for. Defaults to the current iOS version.
|
484
|
+
:param multiarch: The CPU architecture+ABI to generate platform tags for -
|
485
|
+
(the value used by `sys.implementation._multiarch` e.g.,
|
486
|
+
`arm64_iphoneos` or `x84_64_iphonesimulator`). Defaults to the current
|
487
|
+
multiarch value.
|
488
|
+
"""
|
489
|
+
if version is None:
|
490
|
+
# if iOS is the current platform, ios_ver *must* be defined. However,
|
491
|
+
# it won't exist for CPython versions before 3.13, which causes a mypy
|
492
|
+
# error.
|
493
|
+
_, release, _, _ = platform.ios_ver() # type: ignore[attr-defined, unused-ignore]
|
494
|
+
version = cast("AppleVersion", tuple(map(int, release.split(".")[:2])))
|
495
|
+
|
496
|
+
if multiarch is None:
|
497
|
+
multiarch = sys.implementation._multiarch
|
498
|
+
multiarch = multiarch.replace("-", "_")
|
499
|
+
|
500
|
+
ios_platform_template = "ios_{major}_{minor}_{multiarch}"
|
501
|
+
|
502
|
+
# Consider any iOS major.minor version from the version requested, down to
|
503
|
+
# 12.0. 12.0 is the first iOS version that is known to have enough features
|
504
|
+
# to support CPython. Consider every possible minor release up to X.9. There
|
505
|
+
# highest the minor has ever gone is 8 (14.8 and 15.8) but having some extra
|
506
|
+
# candidates that won't ever match doesn't really hurt, and it saves us from
|
507
|
+
# having to keep an explicit list of known iOS versions in the code. Return
|
508
|
+
# the results descending order of version number.
|
509
|
+
|
510
|
+
# If the requested major version is less than 12, there won't be any matches.
|
511
|
+
if version[0] < 12:
|
512
|
+
return
|
513
|
+
|
514
|
+
# Consider the actual X.Y version that was requested.
|
515
|
+
yield ios_platform_template.format(
|
516
|
+
major=version[0], minor=version[1], multiarch=multiarch
|
517
|
+
)
|
518
|
+
|
519
|
+
# Consider every minor version from X.0 to the minor version prior to the
|
520
|
+
# version requested by the platform.
|
521
|
+
for minor in range(version[1] - 1, -1, -1):
|
522
|
+
yield ios_platform_template.format(
|
523
|
+
major=version[0], minor=minor, multiarch=multiarch
|
524
|
+
)
|
525
|
+
|
526
|
+
for major in range(version[0] - 1, 11, -1):
|
527
|
+
for minor in range(9, -1, -1):
|
528
|
+
yield ios_platform_template.format(
|
529
|
+
major=major, minor=minor, multiarch=multiarch
|
530
|
+
)
|
487
531
|
|
488
532
|
|
489
533
|
def _linux_platforms(is_32bit: bool = _32_BIT_INTERPRETER) -> Iterator[str]:
|
@@ -515,6 +559,8 @@ def platform_tags() -> Iterator[str]:
|
|
515
559
|
"""
|
516
560
|
if platform.system() == "Darwin":
|
517
561
|
return mac_platforms()
|
562
|
+
elif platform.system() == "iOS":
|
563
|
+
return ios_platforms()
|
518
564
|
elif platform.system() == "Linux":
|
519
565
|
return _linux_platforms()
|
520
566
|
else:
|