diff --git a/.github/workflows/update_pytorch.yml b/.github/workflows/update_pytorch.yml index d716ca5d..008d89a6 100644 --- a/.github/workflows/update_pytorch.yml +++ b/.github/workflows/update_pytorch.yml @@ -38,6 +38,10 @@ jobs: # Run your script here to produce a list of missing subdirs and letters # example: linux-64@p linux-64@d message=$(pixi run parselmouth updater-producer --channel pytorch) + if [ "$message" = "[]" ]; then + echo "Skipping job as no new packages found" + exit 0 + fi echo $message echo "string_list=$message" >> $GITHUB_OUTPUT env: diff --git a/pixi.lock b/pixi.lock index a5acd26b..b3298bf3 100644 --- a/pixi.lock +++ b/pixi.lock @@ -99,6 +99,8 @@ environments: - pypi: https://files.pythonhosted.org/packages/73/67/8ece580cc363331d9a53055130f86b096bf16e38156e33b1d3014fffda6b/ruamel.yaml-0.18.6-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/30/d3/5fe978cd01a61c12efd24d65fa68c6f28f28c8073a06cf11db3a854390ca/ruamel.yaml.clib-0.2.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl - pypi: . osx-arm64: - conda: https://conda.anaconda.org/conda-forge/noarch/aioboto3-13.1.1-pyhff2d567_1.conda @@ -186,6 +188,8 @@ environments: - pypi: https://files.pythonhosted.org/packages/73/67/8ece580cc363331d9a53055130f86b096bf16e38156e33b1d3014fffda6b/ruamel.yaml-0.18.6-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/66/98/8de4f22bbfd9135deb3422e96d450c4bc0a57d38c25976119307d2efe0aa/ruamel.yaml.clib-0.2.8-cp312-cp312-macosx_13_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl - pypi: . win-64: - conda: https://conda.anaconda.org/conda-forge/noarch/aioboto3-13.1.1-pyhff2d567_1.conda @@ -276,6 +280,8 @@ environments: - pypi: https://files.pythonhosted.org/packages/73/67/8ece580cc363331d9a53055130f86b096bf16e38156e33b1d3014fffda6b/ruamel.yaml-0.18.6-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/10/d2/52a3d810d0b5b3720725c0504a27b3fced7b6f310fe928f7019d79387bc1/ruamel.yaml.clib-0.2.8-cp312-cp312-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl - pypi: . fmt: channels: @@ -394,6 +400,8 @@ environments: - pypi: https://files.pythonhosted.org/packages/b7/59/2056f61236782a2c86b33906c025d4f4a0b17be0161b63b70fd9e8775d36/referencing-0.35.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0f/f7/a59a673594e6c2ff2dbc44b00fd4ecdec2fc399bb6a7bd82d612699a0121/rpds_py-0.20.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl - pypi: . osx-arm64: - conda: https://conda.anaconda.org/conda-forge/noarch/aioboto3-13.1.1-pyhff2d567_1.conda @@ -499,6 +507,8 @@ environments: - pypi: https://files.pythonhosted.org/packages/b7/59/2056f61236782a2c86b33906c025d4f4a0b17be0161b63b70fd9e8775d36/referencing-0.35.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/b8/ad/fc82be4eaceb8d444cb6fc1956ce972b3a0795104279de05e0e4131d0a47/rpds_py-0.20.0-cp312-cp312-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl - pypi: . win-64: - conda: https://conda.anaconda.org/conda-forge/noarch/aioboto3-13.1.1-pyhff2d567_1.conda @@ -613,6 +623,8 @@ environments: - pypi: https://files.pythonhosted.org/packages/b7/59/2056f61236782a2c86b33906c025d4f4a0b17be0161b63b70fd9e8775d36/referencing-0.35.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ec/2f/b938864d66b86a6e4acadefdc56de75ef56f7cafdfd568a6464605457bd5/rpds_py-0.20.0-cp312-none-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl - pypi: . test: channels: @@ -719,6 +731,8 @@ environments: - pypi: https://files.pythonhosted.org/packages/b7/59/2056f61236782a2c86b33906c025d4f4a0b17be0161b63b70fd9e8775d36/referencing-0.35.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/0f/f7/a59a673594e6c2ff2dbc44b00fd4ecdec2fc399bb6a7bd82d612699a0121/rpds_py-0.20.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl - pypi: . osx-arm64: - conda: https://conda.anaconda.org/conda-forge/noarch/aioboto3-13.1.1-pyhff2d567_1.conda @@ -812,6 +826,8 @@ environments: - pypi: https://files.pythonhosted.org/packages/b7/59/2056f61236782a2c86b33906c025d4f4a0b17be0161b63b70fd9e8775d36/referencing-0.35.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/b8/ad/fc82be4eaceb8d444cb6fc1956ce972b3a0795104279de05e0e4131d0a47/rpds_py-0.20.0-cp312-cp312-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl - pypi: . win-64: - conda: https://conda.anaconda.org/conda-forge/noarch/aioboto3-13.1.1-pyhff2d567_1.conda @@ -907,6 +923,8 @@ environments: - pypi: https://files.pythonhosted.org/packages/b7/59/2056f61236782a2c86b33906c025d4f4a0b17be0161b63b70fd9e8775d36/referencing-0.35.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ec/2f/b938864d66b86a6e4acadefdc56de75ef56f7cafdfd568a6464605457bd5/rpds_py-0.20.0-cp312-none-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl - pypi: . type-checking: channels: @@ -1013,6 +1031,8 @@ environments: - pypi: https://files.pythonhosted.org/packages/73/67/8ece580cc363331d9a53055130f86b096bf16e38156e33b1d3014fffda6b/ruamel.yaml-0.18.6-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/30/d3/5fe978cd01a61c12efd24d65fa68c6f28f28c8073a06cf11db3a854390ca/ruamel.yaml.clib-0.2.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl - pypi: https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl - pypi: . osx-arm64: - conda: https://conda.anaconda.org/conda-forge/noarch/aioboto3-13.1.1-pyhff2d567_1.conda @@ -1106,6 +1126,8 @@ environments: - pypi: https://files.pythonhosted.org/packages/73/67/8ece580cc363331d9a53055130f86b096bf16e38156e33b1d3014fffda6b/ruamel.yaml-0.18.6-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/66/98/8de4f22bbfd9135deb3422e96d450c4bc0a57d38c25976119307d2efe0aa/ruamel.yaml.clib-0.2.8-cp312-cp312-macosx_13_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl - pypi: . win-64: - conda: https://conda.anaconda.org/conda-forge/noarch/aioboto3-13.1.1-pyhff2d567_1.conda @@ -1202,6 +1224,8 @@ environments: - pypi: https://files.pythonhosted.org/packages/73/67/8ece580cc363331d9a53055130f86b096bf16e38156e33b1d3014fffda6b/ruamel.yaml-0.18.6-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/10/d2/52a3d810d0b5b3720725c0504a27b3fced7b6f310fe928f7019d79387bc1/ruamel.yaml.clib-0.2.8-cp312-cp312-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl - pypi: . packages: - kind: conda @@ -2247,9 +2271,9 @@ packages: sha256: fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566 requires_dist: - attrs>=22.2.0 - - importlib-resources>=1.4.0 ; python_version < '3.9' + - importlib-resources>=1.4.0 ; python_full_version < '3.9' - jsonschema-specifications>=2023.3.6 - - pkgutil-resolve-name>=1.3.10 ; python_version < '3.9' + - pkgutil-resolve-name>=1.3.10 ; python_full_version < '3.9' - referencing>=0.28.4 - rpds-py>=0.7.1 - fqdn ; extra == 'format' @@ -2275,7 +2299,7 @@ packages: url: https://files.pythonhosted.org/packages/ee/07/44bd408781594c4d0a027666ef27fab1e441b109dc3b76b4f836f8fd04fe/jsonschema_specifications-2023.12.1-py3-none-any.whl sha256: 87e4fdf3a94858b8a2ba2778d9ba57d8a9cafca7c7489c46ba0d30a8bc6a9c3c requires_dist: - - importlib-resources>=1.4.0 ; python_version < '3.9' + - importlib-resources>=1.4.0 ; python_full_version < '3.9' - referencing>=0.31.0 requires_python: '>=3.8' - kind: conda @@ -3002,7 +3026,7 @@ packages: name: parselmouth version: 0.0.1 path: . - sha256: c4ab41629a9f7ad55281fdd865df6e878ea557cbdef7fa297bd4788ff6329704 + sha256: abf5eec706b7e8ce1f1962a9b35e27b208577385c66dd1eecd156c8aacb7981d requires_dist: - conda-oci-mirror @ git+https://github.com/channel-mirrors/conda-oci-mirror.git@25ea3e436f0b0bc5a9c646121efafc9c68e116cd - conda-forge-metadata~=0.8.1 @@ -3678,7 +3702,7 @@ packages: url: https://files.pythonhosted.org/packages/73/67/8ece580cc363331d9a53055130f86b096bf16e38156e33b1d3014fffda6b/ruamel.yaml-0.18.6-py3-none-any.whl sha256: 57b53ba33def16c4f3d807c0ccbc00f8a6081827e81ba2491691b76882d0c636 requires_dist: - - ruamel-yaml-clib>=0.2.7 ; platform_python_implementation == 'CPython' and python_version < '3.13' + - ruamel-yaml-clib>=0.2.7 ; python_full_version < '3.13' and platform_python_implementation == 'CPython' - ryd ; extra == 'docs' - mercurial>5.7 ; extra == 'docs' - ruamel-yaml-jinja2>=0.2 ; extra == 'jinja2' @@ -4082,6 +4106,1586 @@ packages: purls: [] size: 45944 timestamp: 1723995567529 +- kind: pypi + name: types-aioboto3 + version: 13.1.1 + url: https://files.pythonhosted.org/packages/91/11/35732ea5c4e050f46f0e43ec9957d73c55c5dfbc4566f6a7429ecb980e53/types_aioboto3-13.1.1-py3-none-any.whl + sha256: 0cbca6be13fe8c032f98c718b47af04973c82fe39819a1080327395d5bf6bb30 + requires_dist: + - botocore-stubs + - types-aiobotocore + - types-s3transfer + - typing-extensions>=4.1.0 ; python_full_version < '3.12' + - types-aiobotocore-accessanalyzer ; extra == 'accessanalyzer' + - types-aiobotocore-account ; extra == 'account' + - types-aiobotocore-acm ; extra == 'acm' + - types-aiobotocore-acm-pca ; extra == 'acm-pca' + - aioboto3==13.1.1 ; extra == 'aioboto3' + - botocore==1.34.131 ; extra == 'aioboto3' + - types-aiobotocore-accessanalyzer ; extra == 'all' + - types-aiobotocore-account ; extra == 'all' + - types-aiobotocore-acm ; extra == 'all' + - types-aiobotocore-acm-pca ; extra == 'all' + - types-aiobotocore-amp ; extra == 'all' + - types-aiobotocore-amplify ; extra == 'all' + - types-aiobotocore-amplifybackend ; extra == 'all' + - types-aiobotocore-amplifyuibuilder ; extra == 'all' + - types-aiobotocore-apigateway ; extra == 'all' + - types-aiobotocore-apigatewaymanagementapi ; extra == 'all' + - types-aiobotocore-apigatewayv2 ; extra == 'all' + - types-aiobotocore-appconfig ; extra == 'all' + - types-aiobotocore-appconfigdata ; extra == 'all' + - types-aiobotocore-appfabric ; extra == 'all' + - types-aiobotocore-appflow ; extra == 'all' + - types-aiobotocore-appintegrations ; extra == 'all' + - types-aiobotocore-application-autoscaling ; extra == 'all' + - types-aiobotocore-application-insights ; extra == 'all' + - types-aiobotocore-application-signals ; extra == 'all' + - types-aiobotocore-applicationcostprofiler ; extra == 'all' + - types-aiobotocore-appmesh ; extra == 'all' + - types-aiobotocore-apprunner ; extra == 'all' + - types-aiobotocore-appstream ; extra == 'all' + - types-aiobotocore-appsync ; extra == 'all' + - types-aiobotocore-apptest ; extra == 'all' + - types-aiobotocore-arc-zonal-shift ; extra == 'all' + - types-aiobotocore-artifact ; extra == 'all' + - types-aiobotocore-athena ; extra == 'all' + - types-aiobotocore-auditmanager ; extra == 'all' + - types-aiobotocore-autoscaling ; extra == 'all' + - types-aiobotocore-autoscaling-plans ; extra == 'all' + - types-aiobotocore-b2bi ; extra == 'all' + - types-aiobotocore-backup ; extra == 'all' + - types-aiobotocore-backup-gateway ; extra == 'all' + - types-aiobotocore-batch ; extra == 'all' + - types-aiobotocore-bcm-data-exports ; extra == 'all' + - types-aiobotocore-bedrock ; extra == 'all' + - types-aiobotocore-bedrock-agent ; extra == 'all' + - types-aiobotocore-bedrock-agent-runtime ; extra == 'all' + - types-aiobotocore-bedrock-runtime ; extra == 'all' + - types-aiobotocore-billingconductor ; extra == 'all' + - types-aiobotocore-braket ; extra == 'all' + - types-aiobotocore-budgets ; extra == 'all' + - types-aiobotocore-ce ; extra == 'all' + - types-aiobotocore-chatbot ; extra == 'all' + - types-aiobotocore-chime ; extra == 'all' + - types-aiobotocore-chime-sdk-identity ; extra == 'all' + - types-aiobotocore-chime-sdk-media-pipelines ; extra == 'all' + - types-aiobotocore-chime-sdk-meetings ; extra == 'all' + - types-aiobotocore-chime-sdk-messaging ; extra == 'all' + - types-aiobotocore-chime-sdk-voice ; extra == 'all' + - types-aiobotocore-cleanrooms ; extra == 'all' + - types-aiobotocore-cleanroomsml ; extra == 'all' + - types-aiobotocore-cloud9 ; extra == 'all' + - types-aiobotocore-cloudcontrol ; extra == 'all' + - types-aiobotocore-clouddirectory ; extra == 'all' + - types-aiobotocore-cloudformation ; extra == 'all' + - types-aiobotocore-cloudfront ; extra == 'all' + - types-aiobotocore-cloudfront-keyvaluestore ; extra == 'all' + - types-aiobotocore-cloudhsm ; extra == 'all' + - types-aiobotocore-cloudhsmv2 ; extra == 'all' + - types-aiobotocore-cloudsearch ; extra == 'all' + - types-aiobotocore-cloudsearchdomain ; extra == 'all' + - types-aiobotocore-cloudtrail ; extra == 'all' + - types-aiobotocore-cloudtrail-data ; extra == 'all' + - types-aiobotocore-cloudwatch ; extra == 'all' + - types-aiobotocore-codeartifact ; extra == 'all' + - types-aiobotocore-codebuild ; extra == 'all' + - types-aiobotocore-codecatalyst ; extra == 'all' + - types-aiobotocore-codecommit ; extra == 'all' + - types-aiobotocore-codeconnections ; extra == 'all' + - types-aiobotocore-codedeploy ; extra == 'all' + - types-aiobotocore-codeguru-reviewer ; extra == 'all' + - types-aiobotocore-codeguru-security ; extra == 'all' + - types-aiobotocore-codeguruprofiler ; extra == 'all' + - types-aiobotocore-codepipeline ; extra == 'all' + - types-aiobotocore-codestar ; extra == 'all' + - types-aiobotocore-codestar-connections ; extra == 'all' + - types-aiobotocore-codestar-notifications ; extra == 'all' + - types-aiobotocore-cognito-identity ; extra == 'all' + - types-aiobotocore-cognito-idp ; extra == 'all' + - types-aiobotocore-cognito-sync ; extra == 'all' + - types-aiobotocore-comprehend ; extra == 'all' + - types-aiobotocore-comprehendmedical ; extra == 'all' + - types-aiobotocore-compute-optimizer ; extra == 'all' + - types-aiobotocore-config ; extra == 'all' + - types-aiobotocore-connect ; extra == 'all' + - types-aiobotocore-connect-contact-lens ; extra == 'all' + - types-aiobotocore-connectcampaigns ; extra == 'all' + - types-aiobotocore-connectcases ; extra == 'all' + - types-aiobotocore-connectparticipant ; extra == 'all' + - types-aiobotocore-controlcatalog ; extra == 'all' + - types-aiobotocore-controltower ; extra == 'all' + - types-aiobotocore-cost-optimization-hub ; extra == 'all' + - types-aiobotocore-cur ; extra == 'all' + - types-aiobotocore-customer-profiles ; extra == 'all' + - types-aiobotocore-databrew ; extra == 'all' + - types-aiobotocore-dataexchange ; extra == 'all' + - types-aiobotocore-datapipeline ; extra == 'all' + - types-aiobotocore-datasync ; extra == 'all' + - types-aiobotocore-datazone ; extra == 'all' + - types-aiobotocore-dax ; extra == 'all' + - types-aiobotocore-deadline ; extra == 'all' + - types-aiobotocore-detective ; extra == 'all' + - types-aiobotocore-devicefarm ; extra == 'all' + - types-aiobotocore-devops-guru ; extra == 'all' + - types-aiobotocore-directconnect ; extra == 'all' + - types-aiobotocore-discovery ; extra == 'all' + - types-aiobotocore-dlm ; extra == 'all' + - types-aiobotocore-dms ; extra == 'all' + - types-aiobotocore-docdb ; extra == 'all' + - types-aiobotocore-docdb-elastic ; extra == 'all' + - types-aiobotocore-drs ; extra == 'all' + - types-aiobotocore-ds ; extra == 'all' + - types-aiobotocore-dynamodb ; extra == 'all' + - types-aiobotocore-dynamodbstreams ; extra == 'all' + - types-aiobotocore-ebs ; extra == 'all' + - types-aiobotocore-ec2 ; extra == 'all' + - types-aiobotocore-ec2-instance-connect ; extra == 'all' + - types-aiobotocore-ecr ; extra == 'all' + - types-aiobotocore-ecr-public ; extra == 'all' + - types-aiobotocore-ecs ; extra == 'all' + - types-aiobotocore-efs ; extra == 'all' + - types-aiobotocore-eks ; extra == 'all' + - types-aiobotocore-eks-auth ; extra == 'all' + - types-aiobotocore-elastic-inference ; extra == 'all' + - types-aiobotocore-elasticache ; extra == 'all' + - types-aiobotocore-elasticbeanstalk ; extra == 'all' + - types-aiobotocore-elastictranscoder ; extra == 'all' + - types-aiobotocore-elb ; extra == 'all' + - types-aiobotocore-elbv2 ; extra == 'all' + - types-aiobotocore-emr ; extra == 'all' + - types-aiobotocore-emr-containers ; extra == 'all' + - types-aiobotocore-emr-serverless ; extra == 'all' + - types-aiobotocore-entityresolution ; extra == 'all' + - types-aiobotocore-es ; extra == 'all' + - types-aiobotocore-events ; extra == 'all' + - types-aiobotocore-evidently ; extra == 'all' + - types-aiobotocore-finspace ; extra == 'all' + - types-aiobotocore-finspace-data ; extra == 'all' + - types-aiobotocore-firehose ; extra == 'all' + - types-aiobotocore-fis ; extra == 'all' + - types-aiobotocore-fms ; extra == 'all' + - types-aiobotocore-forecast ; extra == 'all' + - types-aiobotocore-forecastquery ; extra == 'all' + - types-aiobotocore-frauddetector ; extra == 'all' + - types-aiobotocore-freetier ; extra == 'all' + - types-aiobotocore-fsx ; extra == 'all' + - types-aiobotocore-gamelift ; extra == 'all' + - types-aiobotocore-glacier ; extra == 'all' + - types-aiobotocore-globalaccelerator ; extra == 'all' + - types-aiobotocore-glue ; extra == 'all' + - types-aiobotocore-grafana ; extra == 'all' + - types-aiobotocore-greengrass ; extra == 'all' + - types-aiobotocore-greengrassv2 ; extra == 'all' + - types-aiobotocore-groundstation ; extra == 'all' + - types-aiobotocore-guardduty ; extra == 'all' + - types-aiobotocore-health ; extra == 'all' + - types-aiobotocore-healthlake ; extra == 'all' + - types-aiobotocore-iam ; extra == 'all' + - types-aiobotocore-identitystore ; extra == 'all' + - types-aiobotocore-imagebuilder ; extra == 'all' + - types-aiobotocore-importexport ; extra == 'all' + - types-aiobotocore-inspector ; extra == 'all' + - types-aiobotocore-inspector-scan ; extra == 'all' + - types-aiobotocore-inspector2 ; extra == 'all' + - types-aiobotocore-internetmonitor ; extra == 'all' + - types-aiobotocore-iot ; extra == 'all' + - types-aiobotocore-iot-data ; extra == 'all' + - types-aiobotocore-iot-jobs-data ; extra == 'all' + - types-aiobotocore-iot1click-devices ; extra == 'all' + - types-aiobotocore-iot1click-projects ; extra == 'all' + - types-aiobotocore-iotanalytics ; extra == 'all' + - types-aiobotocore-iotdeviceadvisor ; extra == 'all' + - types-aiobotocore-iotevents ; extra == 'all' + - types-aiobotocore-iotevents-data ; extra == 'all' + - types-aiobotocore-iotfleethub ; extra == 'all' + - types-aiobotocore-iotfleetwise ; extra == 'all' + - types-aiobotocore-iotsecuretunneling ; extra == 'all' + - types-aiobotocore-iotsitewise ; extra == 'all' + - types-aiobotocore-iotthingsgraph ; extra == 'all' + - types-aiobotocore-iottwinmaker ; extra == 'all' + - types-aiobotocore-iotwireless ; extra == 'all' + - types-aiobotocore-ivs ; extra == 'all' + - types-aiobotocore-ivs-realtime ; extra == 'all' + - types-aiobotocore-ivschat ; extra == 'all' + - types-aiobotocore-kafka ; extra == 'all' + - types-aiobotocore-kafkaconnect ; extra == 'all' + - types-aiobotocore-kendra ; extra == 'all' + - types-aiobotocore-kendra-ranking ; extra == 'all' + - types-aiobotocore-keyspaces ; extra == 'all' + - types-aiobotocore-kinesis ; extra == 'all' + - types-aiobotocore-kinesis-video-archived-media ; extra == 'all' + - types-aiobotocore-kinesis-video-media ; extra == 'all' + - types-aiobotocore-kinesis-video-signaling ; extra == 'all' + - types-aiobotocore-kinesis-video-webrtc-storage ; extra == 'all' + - types-aiobotocore-kinesisanalytics ; extra == 'all' + - types-aiobotocore-kinesisanalyticsv2 ; extra == 'all' + - types-aiobotocore-kinesisvideo ; extra == 'all' + - types-aiobotocore-kms ; extra == 'all' + - types-aiobotocore-lakeformation ; extra == 'all' + - types-aiobotocore-lambda ; extra == 'all' + - types-aiobotocore-launch-wizard ; extra == 'all' + - types-aiobotocore-lex-models ; extra == 'all' + - types-aiobotocore-lex-runtime ; extra == 'all' + - types-aiobotocore-lexv2-models ; extra == 'all' + - types-aiobotocore-lexv2-runtime ; extra == 'all' + - types-aiobotocore-license-manager ; extra == 'all' + - types-aiobotocore-license-manager-linux-subscriptions ; extra == 'all' + - types-aiobotocore-license-manager-user-subscriptions ; extra == 'all' + - types-aiobotocore-lightsail ; extra == 'all' + - types-aiobotocore-location ; extra == 'all' + - types-aiobotocore-logs ; extra == 'all' + - types-aiobotocore-lookoutequipment ; extra == 'all' + - types-aiobotocore-lookoutmetrics ; extra == 'all' + - types-aiobotocore-lookoutvision ; extra == 'all' + - types-aiobotocore-m2 ; extra == 'all' + - types-aiobotocore-machinelearning ; extra == 'all' + - types-aiobotocore-macie2 ; extra == 'all' + - types-aiobotocore-mailmanager ; extra == 'all' + - types-aiobotocore-managedblockchain ; extra == 'all' + - types-aiobotocore-managedblockchain-query ; extra == 'all' + - types-aiobotocore-marketplace-agreement ; extra == 'all' + - types-aiobotocore-marketplace-catalog ; extra == 'all' + - types-aiobotocore-marketplace-deployment ; extra == 'all' + - types-aiobotocore-marketplace-entitlement ; extra == 'all' + - types-aiobotocore-marketplacecommerceanalytics ; extra == 'all' + - types-aiobotocore-mediaconnect ; extra == 'all' + - types-aiobotocore-mediaconvert ; extra == 'all' + - types-aiobotocore-medialive ; extra == 'all' + - types-aiobotocore-mediapackage ; extra == 'all' + - types-aiobotocore-mediapackage-vod ; extra == 'all' + - types-aiobotocore-mediapackagev2 ; extra == 'all' + - types-aiobotocore-mediastore ; extra == 'all' + - types-aiobotocore-mediastore-data ; extra == 'all' + - types-aiobotocore-mediatailor ; extra == 'all' + - types-aiobotocore-medical-imaging ; extra == 'all' + - types-aiobotocore-memorydb ; extra == 'all' + - types-aiobotocore-meteringmarketplace ; extra == 'all' + - types-aiobotocore-mgh ; extra == 'all' + - types-aiobotocore-mgn ; extra == 'all' + - types-aiobotocore-migration-hub-refactor-spaces ; extra == 'all' + - types-aiobotocore-migrationhub-config ; extra == 'all' + - types-aiobotocore-migrationhuborchestrator ; extra == 'all' + - types-aiobotocore-migrationhubstrategy ; extra == 'all' + - types-aiobotocore-mobile ; extra == 'all' + - types-aiobotocore-mq ; extra == 'all' + - types-aiobotocore-mturk ; extra == 'all' + - types-aiobotocore-mwaa ; extra == 'all' + - types-aiobotocore-neptune ; extra == 'all' + - types-aiobotocore-neptune-graph ; extra == 'all' + - types-aiobotocore-neptunedata ; extra == 'all' + - types-aiobotocore-network-firewall ; extra == 'all' + - types-aiobotocore-networkmanager ; extra == 'all' + - types-aiobotocore-networkmonitor ; extra == 'all' + - types-aiobotocore-nimble ; extra == 'all' + - types-aiobotocore-oam ; extra == 'all' + - types-aiobotocore-omics ; extra == 'all' + - types-aiobotocore-opensearch ; extra == 'all' + - types-aiobotocore-opensearchserverless ; extra == 'all' + - types-aiobotocore-opsworks ; extra == 'all' + - types-aiobotocore-opsworkscm ; extra == 'all' + - types-aiobotocore-organizations ; extra == 'all' + - types-aiobotocore-osis ; extra == 'all' + - types-aiobotocore-outposts ; extra == 'all' + - types-aiobotocore-panorama ; extra == 'all' + - types-aiobotocore-payment-cryptography ; extra == 'all' + - types-aiobotocore-payment-cryptography-data ; extra == 'all' + - types-aiobotocore-pca-connector-ad ; extra == 'all' + - types-aiobotocore-pca-connector-scep ; extra == 'all' + - types-aiobotocore-personalize ; extra == 'all' + - types-aiobotocore-personalize-events ; extra == 'all' + - types-aiobotocore-personalize-runtime ; extra == 'all' + - types-aiobotocore-pi ; extra == 'all' + - types-aiobotocore-pinpoint ; extra == 'all' + - types-aiobotocore-pinpoint-email ; extra == 'all' + - types-aiobotocore-pinpoint-sms-voice ; extra == 'all' + - types-aiobotocore-pinpoint-sms-voice-v2 ; extra == 'all' + - types-aiobotocore-pipes ; extra == 'all' + - types-aiobotocore-polly ; extra == 'all' + - types-aiobotocore-pricing ; extra == 'all' + - types-aiobotocore-privatenetworks ; extra == 'all' + - types-aiobotocore-proton ; extra == 'all' + - types-aiobotocore-qbusiness ; extra == 'all' + - types-aiobotocore-qconnect ; extra == 'all' + - types-aiobotocore-qldb ; extra == 'all' + - types-aiobotocore-qldb-session ; extra == 'all' + - types-aiobotocore-quicksight ; extra == 'all' + - types-aiobotocore-ram ; extra == 'all' + - types-aiobotocore-rbin ; extra == 'all' + - types-aiobotocore-rds ; extra == 'all' + - types-aiobotocore-rds-data ; extra == 'all' + - types-aiobotocore-redshift ; extra == 'all' + - types-aiobotocore-redshift-data ; extra == 'all' + - types-aiobotocore-redshift-serverless ; extra == 'all' + - types-aiobotocore-rekognition ; extra == 'all' + - types-aiobotocore-repostspace ; extra == 'all' + - types-aiobotocore-resiliencehub ; extra == 'all' + - types-aiobotocore-resource-explorer-2 ; extra == 'all' + - types-aiobotocore-resource-groups ; extra == 'all' + - types-aiobotocore-resourcegroupstaggingapi ; extra == 'all' + - types-aiobotocore-robomaker ; extra == 'all' + - types-aiobotocore-rolesanywhere ; extra == 'all' + - types-aiobotocore-route53 ; extra == 'all' + - types-aiobotocore-route53-recovery-cluster ; extra == 'all' + - types-aiobotocore-route53-recovery-control-config ; extra == 'all' + - types-aiobotocore-route53-recovery-readiness ; extra == 'all' + - types-aiobotocore-route53domains ; extra == 'all' + - types-aiobotocore-route53profiles ; extra == 'all' + - types-aiobotocore-route53resolver ; extra == 'all' + - types-aiobotocore-rum ; extra == 'all' + - types-aiobotocore-s3 ; extra == 'all' + - types-aiobotocore-s3control ; extra == 'all' + - types-aiobotocore-s3outposts ; extra == 'all' + - types-aiobotocore-sagemaker ; extra == 'all' + - types-aiobotocore-sagemaker-a2i-runtime ; extra == 'all' + - types-aiobotocore-sagemaker-edge ; extra == 'all' + - types-aiobotocore-sagemaker-featurestore-runtime ; extra == 'all' + - types-aiobotocore-sagemaker-geospatial ; extra == 'all' + - types-aiobotocore-sagemaker-metrics ; extra == 'all' + - types-aiobotocore-sagemaker-runtime ; extra == 'all' + - types-aiobotocore-savingsplans ; extra == 'all' + - types-aiobotocore-scheduler ; extra == 'all' + - types-aiobotocore-schemas ; extra == 'all' + - types-aiobotocore-sdb ; extra == 'all' + - types-aiobotocore-secretsmanager ; extra == 'all' + - types-aiobotocore-securityhub ; extra == 'all' + - types-aiobotocore-securitylake ; extra == 'all' + - types-aiobotocore-serverlessrepo ; extra == 'all' + - types-aiobotocore-service-quotas ; extra == 'all' + - types-aiobotocore-servicecatalog ; extra == 'all' + - types-aiobotocore-servicecatalog-appregistry ; extra == 'all' + - types-aiobotocore-servicediscovery ; extra == 'all' + - types-aiobotocore-ses ; extra == 'all' + - types-aiobotocore-sesv2 ; extra == 'all' + - types-aiobotocore-shield ; extra == 'all' + - types-aiobotocore-signer ; extra == 'all' + - types-aiobotocore-simspaceweaver ; extra == 'all' + - types-aiobotocore-sms ; extra == 'all' + - types-aiobotocore-sms-voice ; extra == 'all' + - types-aiobotocore-snow-device-management ; extra == 'all' + - types-aiobotocore-snowball ; extra == 'all' + - types-aiobotocore-sns ; extra == 'all' + - types-aiobotocore-sqs ; extra == 'all' + - types-aiobotocore-ssm ; extra == 'all' + - types-aiobotocore-ssm-contacts ; extra == 'all' + - types-aiobotocore-ssm-incidents ; extra == 'all' + - types-aiobotocore-ssm-sap ; extra == 'all' + - types-aiobotocore-sso ; extra == 'all' + - types-aiobotocore-sso-admin ; extra == 'all' + - types-aiobotocore-sso-oidc ; extra == 'all' + - types-aiobotocore-stepfunctions ; extra == 'all' + - types-aiobotocore-storagegateway ; extra == 'all' + - types-aiobotocore-sts ; extra == 'all' + - types-aiobotocore-supplychain ; extra == 'all' + - types-aiobotocore-support ; extra == 'all' + - types-aiobotocore-support-app ; extra == 'all' + - types-aiobotocore-swf ; extra == 'all' + - types-aiobotocore-synthetics ; extra == 'all' + - types-aiobotocore-taxsettings ; extra == 'all' + - types-aiobotocore-textract ; extra == 'all' + - types-aiobotocore-timestream-influxdb ; extra == 'all' + - types-aiobotocore-timestream-query ; extra == 'all' + - types-aiobotocore-timestream-write ; extra == 'all' + - types-aiobotocore-tnb ; extra == 'all' + - types-aiobotocore-transcribe ; extra == 'all' + - types-aiobotocore-transfer ; extra == 'all' + - types-aiobotocore-translate ; extra == 'all' + - types-aiobotocore-trustedadvisor ; extra == 'all' + - types-aiobotocore-verifiedpermissions ; extra == 'all' + - types-aiobotocore-voice-id ; extra == 'all' + - types-aiobotocore-vpc-lattice ; extra == 'all' + - types-aiobotocore-waf ; extra == 'all' + - types-aiobotocore-waf-regional ; extra == 'all' + - types-aiobotocore-wafv2 ; extra == 'all' + - types-aiobotocore-wellarchitected ; extra == 'all' + - types-aiobotocore-wisdom ; extra == 'all' + - types-aiobotocore-workdocs ; extra == 'all' + - types-aiobotocore-worklink ; extra == 'all' + - types-aiobotocore-workmail ; extra == 'all' + - types-aiobotocore-workmailmessageflow ; extra == 'all' + - types-aiobotocore-workspaces ; extra == 'all' + - types-aiobotocore-workspaces-thin-client ; extra == 'all' + - types-aiobotocore-workspaces-web ; extra == 'all' + - types-aiobotocore-xray ; extra == 'all' + - types-aiobotocore-amp ; extra == 'amp' + - types-aiobotocore-amplify ; extra == 'amplify' + - types-aiobotocore-amplifybackend ; extra == 'amplifybackend' + - types-aiobotocore-amplifyuibuilder ; extra == 'amplifyuibuilder' + - types-aiobotocore-apigateway ; extra == 'apigateway' + - types-aiobotocore-apigatewaymanagementapi ; extra == 'apigatewaymanagementapi' + - types-aiobotocore-apigatewayv2 ; extra == 'apigatewayv2' + - types-aiobotocore-appconfig ; extra == 'appconfig' + - types-aiobotocore-appconfigdata ; extra == 'appconfigdata' + - types-aiobotocore-appfabric ; extra == 'appfabric' + - types-aiobotocore-appflow ; extra == 'appflow' + - types-aiobotocore-appintegrations ; extra == 'appintegrations' + - types-aiobotocore-application-autoscaling ; extra == 'application-autoscaling' + - types-aiobotocore-application-insights ; extra == 'application-insights' + - types-aiobotocore-application-signals ; extra == 'application-signals' + - types-aiobotocore-applicationcostprofiler ; extra == 'applicationcostprofiler' + - types-aiobotocore-appmesh ; extra == 'appmesh' + - types-aiobotocore-apprunner ; extra == 'apprunner' + - types-aiobotocore-appstream ; extra == 'appstream' + - types-aiobotocore-appsync ; extra == 'appsync' + - types-aiobotocore-apptest ; extra == 'apptest' + - types-aiobotocore-arc-zonal-shift ; extra == 'arc-zonal-shift' + - types-aiobotocore-artifact ; extra == 'artifact' + - types-aiobotocore-athena ; extra == 'athena' + - types-aiobotocore-auditmanager ; extra == 'auditmanager' + - types-aiobotocore-autoscaling ; extra == 'autoscaling' + - types-aiobotocore-autoscaling-plans ; extra == 'autoscaling-plans' + - types-aiobotocore-b2bi ; extra == 'b2bi' + - types-aiobotocore-backup ; extra == 'backup' + - types-aiobotocore-backup-gateway ; extra == 'backup-gateway' + - types-aiobotocore-batch ; extra == 'batch' + - types-aiobotocore-bcm-data-exports ; extra == 'bcm-data-exports' + - types-aiobotocore-bedrock ; extra == 'bedrock' + - types-aiobotocore-bedrock-agent ; extra == 'bedrock-agent' + - types-aiobotocore-bedrock-agent-runtime ; extra == 'bedrock-agent-runtime' + - types-aiobotocore-bedrock-runtime ; extra == 'bedrock-runtime' + - types-aiobotocore-billingconductor ; extra == 'billingconductor' + - types-aiobotocore-braket ; extra == 'braket' + - types-aiobotocore-budgets ; extra == 'budgets' + - types-aiobotocore-ce ; extra == 'ce' + - types-aiobotocore-chatbot ; extra == 'chatbot' + - types-aiobotocore-chime ; extra == 'chime' + - types-aiobotocore-chime-sdk-identity ; extra == 'chime-sdk-identity' + - types-aiobotocore-chime-sdk-media-pipelines ; extra == 'chime-sdk-media-pipelines' + - types-aiobotocore-chime-sdk-meetings ; extra == 'chime-sdk-meetings' + - types-aiobotocore-chime-sdk-messaging ; extra == 'chime-sdk-messaging' + - types-aiobotocore-chime-sdk-voice ; extra == 'chime-sdk-voice' + - types-aiobotocore-cleanrooms ; extra == 'cleanrooms' + - types-aiobotocore-cleanroomsml ; extra == 'cleanroomsml' + - types-aiobotocore-cloud9 ; extra == 'cloud9' + - types-aiobotocore-cloudcontrol ; extra == 'cloudcontrol' + - types-aiobotocore-clouddirectory ; extra == 'clouddirectory' + - types-aiobotocore-cloudformation ; extra == 'cloudformation' + - types-aiobotocore-cloudfront ; extra == 'cloudfront' + - types-aiobotocore-cloudfront-keyvaluestore ; extra == 'cloudfront-keyvaluestore' + - types-aiobotocore-cloudhsm ; extra == 'cloudhsm' + - types-aiobotocore-cloudhsmv2 ; extra == 'cloudhsmv2' + - types-aiobotocore-cloudsearch ; extra == 'cloudsearch' + - types-aiobotocore-cloudsearchdomain ; extra == 'cloudsearchdomain' + - types-aiobotocore-cloudtrail ; extra == 'cloudtrail' + - types-aiobotocore-cloudtrail-data ; extra == 'cloudtrail-data' + - types-aiobotocore-cloudwatch ; extra == 'cloudwatch' + - types-aiobotocore-codeartifact ; extra == 'codeartifact' + - types-aiobotocore-codebuild ; extra == 'codebuild' + - types-aiobotocore-codecatalyst ; extra == 'codecatalyst' + - types-aiobotocore-codecommit ; extra == 'codecommit' + - types-aiobotocore-codeconnections ; extra == 'codeconnections' + - types-aiobotocore-codedeploy ; extra == 'codedeploy' + - types-aiobotocore-codeguru-reviewer ; extra == 'codeguru-reviewer' + - types-aiobotocore-codeguru-security ; extra == 'codeguru-security' + - types-aiobotocore-codeguruprofiler ; extra == 'codeguruprofiler' + - types-aiobotocore-codepipeline ; extra == 'codepipeline' + - types-aiobotocore-codestar ; extra == 'codestar' + - types-aiobotocore-codestar-connections ; extra == 'codestar-connections' + - types-aiobotocore-codestar-notifications ; extra == 'codestar-notifications' + - types-aiobotocore-cognito-identity ; extra == 'cognito-identity' + - types-aiobotocore-cognito-idp ; extra == 'cognito-idp' + - types-aiobotocore-cognito-sync ; extra == 'cognito-sync' + - types-aiobotocore-comprehend ; extra == 'comprehend' + - types-aiobotocore-comprehendmedical ; extra == 'comprehendmedical' + - types-aiobotocore-compute-optimizer ; extra == 'compute-optimizer' + - types-aiobotocore-config ; extra == 'config' + - types-aiobotocore-connect ; extra == 'connect' + - types-aiobotocore-connect-contact-lens ; extra == 'connect-contact-lens' + - types-aiobotocore-connectcampaigns ; extra == 'connectcampaigns' + - types-aiobotocore-connectcases ; extra == 'connectcases' + - types-aiobotocore-connectparticipant ; extra == 'connectparticipant' + - types-aiobotocore-controlcatalog ; extra == 'controlcatalog' + - types-aiobotocore-controltower ; extra == 'controltower' + - types-aiobotocore-cost-optimization-hub ; extra == 'cost-optimization-hub' + - types-aiobotocore-cur ; extra == 'cur' + - types-aiobotocore-customer-profiles ; extra == 'customer-profiles' + - types-aiobotocore-databrew ; extra == 'databrew' + - types-aiobotocore-dataexchange ; extra == 'dataexchange' + - types-aiobotocore-datapipeline ; extra == 'datapipeline' + - types-aiobotocore-datasync ; extra == 'datasync' + - types-aiobotocore-datazone ; extra == 'datazone' + - types-aiobotocore-dax ; extra == 'dax' + - types-aiobotocore-deadline ; extra == 'deadline' + - types-aiobotocore-detective ; extra == 'detective' + - types-aiobotocore-devicefarm ; extra == 'devicefarm' + - types-aiobotocore-devops-guru ; extra == 'devops-guru' + - types-aiobotocore-directconnect ; extra == 'directconnect' + - types-aiobotocore-discovery ; extra == 'discovery' + - types-aiobotocore-dlm ; extra == 'dlm' + - types-aiobotocore-dms ; extra == 'dms' + - types-aiobotocore-docdb ; extra == 'docdb' + - types-aiobotocore-docdb-elastic ; extra == 'docdb-elastic' + - types-aiobotocore-drs ; extra == 'drs' + - types-aiobotocore-ds ; extra == 'ds' + - types-aiobotocore-dynamodb ; extra == 'dynamodb' + - types-aiobotocore-dynamodbstreams ; extra == 'dynamodbstreams' + - types-aiobotocore-ebs ; extra == 'ebs' + - types-aiobotocore-ec2 ; extra == 'ec2' + - types-aiobotocore-ec2-instance-connect ; extra == 'ec2-instance-connect' + - types-aiobotocore-ecr ; extra == 'ecr' + - types-aiobotocore-ecr-public ; extra == 'ecr-public' + - types-aiobotocore-ecs ; extra == 'ecs' + - types-aiobotocore-efs ; extra == 'efs' + - types-aiobotocore-eks ; extra == 'eks' + - types-aiobotocore-eks-auth ; extra == 'eks-auth' + - types-aiobotocore-elastic-inference ; extra == 'elastic-inference' + - types-aiobotocore-elasticache ; extra == 'elasticache' + - types-aiobotocore-elasticbeanstalk ; extra == 'elasticbeanstalk' + - types-aiobotocore-elastictranscoder ; extra == 'elastictranscoder' + - types-aiobotocore-elb ; extra == 'elb' + - types-aiobotocore-elbv2 ; extra == 'elbv2' + - types-aiobotocore-emr ; extra == 'emr' + - types-aiobotocore-emr-containers ; extra == 'emr-containers' + - types-aiobotocore-emr-serverless ; extra == 'emr-serverless' + - types-aiobotocore-entityresolution ; extra == 'entityresolution' + - types-aiobotocore-es ; extra == 'es' + - types-aiobotocore-cloudformation ; extra == 'essential' + - types-aiobotocore-dynamodb ; extra == 'essential' + - types-aiobotocore-ec2 ; extra == 'essential' + - types-aiobotocore-lambda ; extra == 'essential' + - types-aiobotocore-rds ; extra == 'essential' + - types-aiobotocore-s3 ; extra == 'essential' + - types-aiobotocore-sqs ; extra == 'essential' + - types-aiobotocore-events ; extra == 'events' + - types-aiobotocore-evidently ; extra == 'evidently' + - types-aiobotocore-finspace ; extra == 'finspace' + - types-aiobotocore-finspace-data ; extra == 'finspace-data' + - types-aiobotocore-firehose ; extra == 'firehose' + - types-aiobotocore-fis ; extra == 'fis' + - types-aiobotocore-fms ; extra == 'fms' + - types-aiobotocore-forecast ; extra == 'forecast' + - types-aiobotocore-forecastquery ; extra == 'forecastquery' + - types-aiobotocore-frauddetector ; extra == 'frauddetector' + - types-aiobotocore-freetier ; extra == 'freetier' + - types-aiobotocore-fsx ; extra == 'fsx' + - types-aiobotocore-gamelift ; extra == 'gamelift' + - types-aiobotocore-glacier ; extra == 'glacier' + - types-aiobotocore-globalaccelerator ; extra == 'globalaccelerator' + - types-aiobotocore-glue ; extra == 'glue' + - types-aiobotocore-grafana ; extra == 'grafana' + - types-aiobotocore-greengrass ; extra == 'greengrass' + - types-aiobotocore-greengrassv2 ; extra == 'greengrassv2' + - types-aiobotocore-groundstation ; extra == 'groundstation' + - types-aiobotocore-guardduty ; extra == 'guardduty' + - types-aiobotocore-health ; extra == 'health' + - types-aiobotocore-healthlake ; extra == 'healthlake' + - types-aiobotocore-iam ; extra == 'iam' + - types-aiobotocore-identitystore ; extra == 'identitystore' + - types-aiobotocore-imagebuilder ; extra == 'imagebuilder' + - types-aiobotocore-importexport ; extra == 'importexport' + - types-aiobotocore-inspector ; extra == 'inspector' + - types-aiobotocore-inspector-scan ; extra == 'inspector-scan' + - types-aiobotocore-inspector2 ; extra == 'inspector2' + - types-aiobotocore-internetmonitor ; extra == 'internetmonitor' + - types-aiobotocore-iot ; extra == 'iot' + - types-aiobotocore-iot-data ; extra == 'iot-data' + - types-aiobotocore-iot-jobs-data ; extra == 'iot-jobs-data' + - types-aiobotocore-iot1click-devices ; extra == 'iot1click-devices' + - types-aiobotocore-iot1click-projects ; extra == 'iot1click-projects' + - types-aiobotocore-iotanalytics ; extra == 'iotanalytics' + - types-aiobotocore-iotdeviceadvisor ; extra == 'iotdeviceadvisor' + - types-aiobotocore-iotevents ; extra == 'iotevents' + - types-aiobotocore-iotevents-data ; extra == 'iotevents-data' + - types-aiobotocore-iotfleethub ; extra == 'iotfleethub' + - types-aiobotocore-iotfleetwise ; extra == 'iotfleetwise' + - types-aiobotocore-iotsecuretunneling ; extra == 'iotsecuretunneling' + - types-aiobotocore-iotsitewise ; extra == 'iotsitewise' + - types-aiobotocore-iotthingsgraph ; extra == 'iotthingsgraph' + - types-aiobotocore-iottwinmaker ; extra == 'iottwinmaker' + - types-aiobotocore-iotwireless ; extra == 'iotwireless' + - types-aiobotocore-ivs ; extra == 'ivs' + - types-aiobotocore-ivs-realtime ; extra == 'ivs-realtime' + - types-aiobotocore-ivschat ; extra == 'ivschat' + - types-aiobotocore-kafka ; extra == 'kafka' + - types-aiobotocore-kafkaconnect ; extra == 'kafkaconnect' + - types-aiobotocore-kendra ; extra == 'kendra' + - types-aiobotocore-kendra-ranking ; extra == 'kendra-ranking' + - types-aiobotocore-keyspaces ; extra == 'keyspaces' + - types-aiobotocore-kinesis ; extra == 'kinesis' + - types-aiobotocore-kinesis-video-archived-media ; extra == 'kinesis-video-archived-media' + - types-aiobotocore-kinesis-video-media ; extra == 'kinesis-video-media' + - types-aiobotocore-kinesis-video-signaling ; extra == 'kinesis-video-signaling' + - types-aiobotocore-kinesis-video-webrtc-storage ; extra == 'kinesis-video-webrtc-storage' + - types-aiobotocore-kinesisanalytics ; extra == 'kinesisanalytics' + - types-aiobotocore-kinesisanalyticsv2 ; extra == 'kinesisanalyticsv2' + - types-aiobotocore-kinesisvideo ; extra == 'kinesisvideo' + - types-aiobotocore-kms ; extra == 'kms' + - types-aiobotocore-lakeformation ; extra == 'lakeformation' + - types-aiobotocore-lambda ; extra == 'lambda' + - types-aiobotocore-launch-wizard ; extra == 'launch-wizard' + - types-aiobotocore-lex-models ; extra == 'lex-models' + - types-aiobotocore-lex-runtime ; extra == 'lex-runtime' + - types-aiobotocore-lexv2-models ; extra == 'lexv2-models' + - types-aiobotocore-lexv2-runtime ; extra == 'lexv2-runtime' + - types-aiobotocore-license-manager ; extra == 'license-manager' + - types-aiobotocore-license-manager-linux-subscriptions ; extra == 'license-manager-linux-subscriptions' + - types-aiobotocore-license-manager-user-subscriptions ; extra == 'license-manager-user-subscriptions' + - types-aiobotocore-lightsail ; extra == 'lightsail' + - types-aiobotocore-location ; extra == 'location' + - types-aiobotocore-logs ; extra == 'logs' + - types-aiobotocore-lookoutequipment ; extra == 'lookoutequipment' + - types-aiobotocore-lookoutmetrics ; extra == 'lookoutmetrics' + - types-aiobotocore-lookoutvision ; extra == 'lookoutvision' + - types-aiobotocore-m2 ; extra == 'm2' + - types-aiobotocore-machinelearning ; extra == 'machinelearning' + - types-aiobotocore-macie2 ; extra == 'macie2' + - types-aiobotocore-mailmanager ; extra == 'mailmanager' + - types-aiobotocore-managedblockchain ; extra == 'managedblockchain' + - types-aiobotocore-managedblockchain-query ; extra == 'managedblockchain-query' + - types-aiobotocore-marketplace-agreement ; extra == 'marketplace-agreement' + - types-aiobotocore-marketplace-catalog ; extra == 'marketplace-catalog' + - types-aiobotocore-marketplace-deployment ; extra == 'marketplace-deployment' + - types-aiobotocore-marketplace-entitlement ; extra == 'marketplace-entitlement' + - types-aiobotocore-marketplacecommerceanalytics ; extra == 'marketplacecommerceanalytics' + - types-aiobotocore-mediaconnect ; extra == 'mediaconnect' + - types-aiobotocore-mediaconvert ; extra == 'mediaconvert' + - types-aiobotocore-medialive ; extra == 'medialive' + - types-aiobotocore-mediapackage ; extra == 'mediapackage' + - types-aiobotocore-mediapackage-vod ; extra == 'mediapackage-vod' + - types-aiobotocore-mediapackagev2 ; extra == 'mediapackagev2' + - types-aiobotocore-mediastore ; extra == 'mediastore' + - types-aiobotocore-mediastore-data ; extra == 'mediastore-data' + - types-aiobotocore-mediatailor ; extra == 'mediatailor' + - types-aiobotocore-medical-imaging ; extra == 'medical-imaging' + - types-aiobotocore-memorydb ; extra == 'memorydb' + - types-aiobotocore-meteringmarketplace ; extra == 'meteringmarketplace' + - types-aiobotocore-mgh ; extra == 'mgh' + - types-aiobotocore-mgn ; extra == 'mgn' + - types-aiobotocore-migration-hub-refactor-spaces ; extra == 'migration-hub-refactor-spaces' + - types-aiobotocore-migrationhub-config ; extra == 'migrationhub-config' + - types-aiobotocore-migrationhuborchestrator ; extra == 'migrationhuborchestrator' + - types-aiobotocore-migrationhubstrategy ; extra == 'migrationhubstrategy' + - types-aiobotocore-mobile ; extra == 'mobile' + - types-aiobotocore-mq ; extra == 'mq' + - types-aiobotocore-mturk ; extra == 'mturk' + - types-aiobotocore-mwaa ; extra == 'mwaa' + - types-aiobotocore-neptune ; extra == 'neptune' + - types-aiobotocore-neptune-graph ; extra == 'neptune-graph' + - types-aiobotocore-neptunedata ; extra == 'neptunedata' + - types-aiobotocore-network-firewall ; extra == 'network-firewall' + - types-aiobotocore-networkmanager ; extra == 'networkmanager' + - types-aiobotocore-networkmonitor ; extra == 'networkmonitor' + - types-aiobotocore-nimble ; extra == 'nimble' + - types-aiobotocore-oam ; extra == 'oam' + - types-aiobotocore-omics ; extra == 'omics' + - types-aiobotocore-opensearch ; extra == 'opensearch' + - types-aiobotocore-opensearchserverless ; extra == 'opensearchserverless' + - types-aiobotocore-opsworks ; extra == 'opsworks' + - types-aiobotocore-opsworkscm ; extra == 'opsworkscm' + - types-aiobotocore-organizations ; extra == 'organizations' + - types-aiobotocore-osis ; extra == 'osis' + - types-aiobotocore-outposts ; extra == 'outposts' + - types-aiobotocore-panorama ; extra == 'panorama' + - types-aiobotocore-payment-cryptography ; extra == 'payment-cryptography' + - types-aiobotocore-payment-cryptography-data ; extra == 'payment-cryptography-data' + - types-aiobotocore-pca-connector-ad ; extra == 'pca-connector-ad' + - types-aiobotocore-pca-connector-scep ; extra == 'pca-connector-scep' + - types-aiobotocore-personalize ; extra == 'personalize' + - types-aiobotocore-personalize-events ; extra == 'personalize-events' + - types-aiobotocore-personalize-runtime ; extra == 'personalize-runtime' + - types-aiobotocore-pi ; extra == 'pi' + - types-aiobotocore-pinpoint ; extra == 'pinpoint' + - types-aiobotocore-pinpoint-email ; extra == 'pinpoint-email' + - types-aiobotocore-pinpoint-sms-voice ; extra == 'pinpoint-sms-voice' + - types-aiobotocore-pinpoint-sms-voice-v2 ; extra == 'pinpoint-sms-voice-v2' + - types-aiobotocore-pipes ; extra == 'pipes' + - types-aiobotocore-polly ; extra == 'polly' + - types-aiobotocore-pricing ; extra == 'pricing' + - types-aiobotocore-privatenetworks ; extra == 'privatenetworks' + - types-aiobotocore-proton ; extra == 'proton' + - types-aiobotocore-qbusiness ; extra == 'qbusiness' + - types-aiobotocore-qconnect ; extra == 'qconnect' + - types-aiobotocore-qldb ; extra == 'qldb' + - types-aiobotocore-qldb-session ; extra == 'qldb-session' + - types-aiobotocore-quicksight ; extra == 'quicksight' + - types-aiobotocore-ram ; extra == 'ram' + - types-aiobotocore-rbin ; extra == 'rbin' + - types-aiobotocore-rds ; extra == 'rds' + - types-aiobotocore-rds-data ; extra == 'rds-data' + - types-aiobotocore-redshift ; extra == 'redshift' + - types-aiobotocore-redshift-data ; extra == 'redshift-data' + - types-aiobotocore-redshift-serverless ; extra == 'redshift-serverless' + - types-aiobotocore-rekognition ; extra == 'rekognition' + - types-aiobotocore-repostspace ; extra == 'repostspace' + - types-aiobotocore-resiliencehub ; extra == 'resiliencehub' + - types-aiobotocore-resource-explorer-2 ; extra == 'resource-explorer-2' + - types-aiobotocore-resource-groups ; extra == 'resource-groups' + - types-aiobotocore-resourcegroupstaggingapi ; extra == 'resourcegroupstaggingapi' + - types-aiobotocore-robomaker ; extra == 'robomaker' + - types-aiobotocore-rolesanywhere ; extra == 'rolesanywhere' + - types-aiobotocore-route53 ; extra == 'route53' + - types-aiobotocore-route53-recovery-cluster ; extra == 'route53-recovery-cluster' + - types-aiobotocore-route53-recovery-control-config ; extra == 'route53-recovery-control-config' + - types-aiobotocore-route53-recovery-readiness ; extra == 'route53-recovery-readiness' + - types-aiobotocore-route53domains ; extra == 'route53domains' + - types-aiobotocore-route53profiles ; extra == 'route53profiles' + - types-aiobotocore-route53resolver ; extra == 'route53resolver' + - types-aiobotocore-rum ; extra == 'rum' + - types-aiobotocore-s3 ; extra == 's3' + - types-aiobotocore-s3control ; extra == 's3control' + - types-aiobotocore-s3outposts ; extra == 's3outposts' + - types-aiobotocore-sagemaker ; extra == 'sagemaker' + - types-aiobotocore-sagemaker-a2i-runtime ; extra == 'sagemaker-a2i-runtime' + - types-aiobotocore-sagemaker-edge ; extra == 'sagemaker-edge' + - types-aiobotocore-sagemaker-featurestore-runtime ; extra == 'sagemaker-featurestore-runtime' + - types-aiobotocore-sagemaker-geospatial ; extra == 'sagemaker-geospatial' + - types-aiobotocore-sagemaker-metrics ; extra == 'sagemaker-metrics' + - types-aiobotocore-sagemaker-runtime ; extra == 'sagemaker-runtime' + - types-aiobotocore-savingsplans ; extra == 'savingsplans' + - types-aiobotocore-scheduler ; extra == 'scheduler' + - types-aiobotocore-schemas ; extra == 'schemas' + - types-aiobotocore-sdb ; extra == 'sdb' + - types-aiobotocore-secretsmanager ; extra == 'secretsmanager' + - types-aiobotocore-securityhub ; extra == 'securityhub' + - types-aiobotocore-securitylake ; extra == 'securitylake' + - types-aiobotocore-serverlessrepo ; extra == 'serverlessrepo' + - types-aiobotocore-service-quotas ; extra == 'service-quotas' + - types-aiobotocore-servicecatalog ; extra == 'servicecatalog' + - types-aiobotocore-servicecatalog-appregistry ; extra == 'servicecatalog-appregistry' + - types-aiobotocore-servicediscovery ; extra == 'servicediscovery' + - types-aiobotocore-ses ; extra == 'ses' + - types-aiobotocore-sesv2 ; extra == 'sesv2' + - types-aiobotocore-shield ; extra == 'shield' + - types-aiobotocore-signer ; extra == 'signer' + - types-aiobotocore-simspaceweaver ; extra == 'simspaceweaver' + - types-aiobotocore-sms ; extra == 'sms' + - types-aiobotocore-sms-voice ; extra == 'sms-voice' + - types-aiobotocore-snow-device-management ; extra == 'snow-device-management' + - types-aiobotocore-snowball ; extra == 'snowball' + - types-aiobotocore-sns ; extra == 'sns' + - types-aiobotocore-sqs ; extra == 'sqs' + - types-aiobotocore-ssm ; extra == 'ssm' + - types-aiobotocore-ssm-contacts ; extra == 'ssm-contacts' + - types-aiobotocore-ssm-incidents ; extra == 'ssm-incidents' + - types-aiobotocore-ssm-sap ; extra == 'ssm-sap' + - types-aiobotocore-sso ; extra == 'sso' + - types-aiobotocore-sso-admin ; extra == 'sso-admin' + - types-aiobotocore-sso-oidc ; extra == 'sso-oidc' + - types-aiobotocore-stepfunctions ; extra == 'stepfunctions' + - types-aiobotocore-storagegateway ; extra == 'storagegateway' + - types-aiobotocore-sts ; extra == 'sts' + - types-aiobotocore-supplychain ; extra == 'supplychain' + - types-aiobotocore-support ; extra == 'support' + - types-aiobotocore-support-app ; extra == 'support-app' + - types-aiobotocore-swf ; extra == 'swf' + - types-aiobotocore-synthetics ; extra == 'synthetics' + - types-aiobotocore-taxsettings ; extra == 'taxsettings' + - types-aiobotocore-textract ; extra == 'textract' + - types-aiobotocore-timestream-influxdb ; extra == 'timestream-influxdb' + - types-aiobotocore-timestream-query ; extra == 'timestream-query' + - types-aiobotocore-timestream-write ; extra == 'timestream-write' + - types-aiobotocore-tnb ; extra == 'tnb' + - types-aiobotocore-transcribe ; extra == 'transcribe' + - types-aiobotocore-transfer ; extra == 'transfer' + - types-aiobotocore-translate ; extra == 'translate' + - types-aiobotocore-trustedadvisor ; extra == 'trustedadvisor' + - types-aiobotocore-verifiedpermissions ; extra == 'verifiedpermissions' + - types-aiobotocore-voice-id ; extra == 'voice-id' + - types-aiobotocore-vpc-lattice ; extra == 'vpc-lattice' + - types-aiobotocore-waf ; extra == 'waf' + - types-aiobotocore-waf-regional ; extra == 'waf-regional' + - types-aiobotocore-wafv2 ; extra == 'wafv2' + - types-aiobotocore-wellarchitected ; extra == 'wellarchitected' + - types-aiobotocore-wisdom ; extra == 'wisdom' + - types-aiobotocore-workdocs ; extra == 'workdocs' + - types-aiobotocore-worklink ; extra == 'worklink' + - types-aiobotocore-workmail ; extra == 'workmail' + - types-aiobotocore-workmailmessageflow ; extra == 'workmailmessageflow' + - types-aiobotocore-workspaces ; extra == 'workspaces' + - types-aiobotocore-workspaces-thin-client ; extra == 'workspaces-thin-client' + - types-aiobotocore-workspaces-web ; extra == 'workspaces-web' + - types-aiobotocore-xray ; extra == 'xray' + requires_python: '>=3.8' +- kind: pypi + name: types-aiobotocore + version: 2.15.0 + url: https://files.pythonhosted.org/packages/4f/f1/77e8ff4fd2ff011fe8e65d4fc56917575d7f20c80f7377466b3d2140740a/types_aiobotocore-2.15.0-py3-none-any.whl + sha256: a3b9ccfb7f1a7689af564f7e9079ac76d701a1b0757cf6235de433520bdfae80 + requires_dist: + - botocore-stubs + - typing-extensions>=4.1.0 ; python_full_version < '3.12' + - types-aiobotocore-accessanalyzer<2.16.0,>=2.15.0 ; extra == 'accessanalyzer' + - types-aiobotocore-account<2.16.0,>=2.15.0 ; extra == 'account' + - types-aiobotocore-acm<2.16.0,>=2.15.0 ; extra == 'acm' + - types-aiobotocore-acm-pca<2.16.0,>=2.15.0 ; extra == 'acm-pca' + - aiobotocore==2.15.0 ; extra == 'aiobotocore' + - botocore==1.35.16 ; extra == 'aiobotocore' + - types-aiobotocore-accessanalyzer<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-account<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-acm<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-acm-pca<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-amp<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-amplify<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-amplifybackend<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-amplifyuibuilder<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-apigateway<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-apigatewaymanagementapi<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-apigatewayv2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-appconfig<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-appconfigdata<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-appfabric<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-appflow<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-appintegrations<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-application-autoscaling<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-application-insights<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-application-signals<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-applicationcostprofiler<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-appmesh<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-apprunner<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-appstream<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-appsync<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-apptest<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-arc-zonal-shift<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-artifact<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-athena<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-auditmanager<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-autoscaling<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-autoscaling-plans<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-b2bi<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-backup<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-backup-gateway<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-batch<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-bcm-data-exports<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-bedrock<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-bedrock-agent<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-bedrock-agent-runtime<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-bedrock-runtime<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-billingconductor<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-braket<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-budgets<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ce<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-chatbot<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-chime<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-chime-sdk-identity<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-chime-sdk-media-pipelines<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-chime-sdk-meetings<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-chime-sdk-messaging<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-chime-sdk-voice<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cleanrooms<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cleanroomsml<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cloud9<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cloudcontrol<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-clouddirectory<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cloudformation<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cloudfront<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cloudfront-keyvaluestore<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cloudhsm<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cloudhsmv2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cloudsearch<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cloudsearchdomain<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cloudtrail<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cloudtrail-data<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cloudwatch<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-codeartifact<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-codebuild<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-codecatalyst<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-codecommit<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-codeconnections<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-codedeploy<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-codeguru-reviewer<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-codeguru-security<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-codeguruprofiler<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-codepipeline<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-codestar-connections<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-codestar-notifications<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cognito-identity<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cognito-idp<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cognito-sync<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-comprehend<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-comprehendmedical<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-compute-optimizer<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-config<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-connect<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-connect-contact-lens<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-connectcampaigns<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-connectcases<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-connectparticipant<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-controlcatalog<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-controltower<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cost-optimization-hub<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-cur<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-customer-profiles<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-databrew<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-dataexchange<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-datapipeline<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-datasync<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-datazone<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-dax<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-deadline<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-detective<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-devicefarm<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-devops-guru<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-directconnect<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-discovery<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-dlm<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-dms<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-docdb<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-docdb-elastic<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-drs<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ds<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-dynamodb<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-dynamodbstreams<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ebs<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ec2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ec2-instance-connect<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ecr<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ecr-public<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ecs<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-efs<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-eks<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-eks-auth<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-elastic-inference<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-elasticache<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-elasticbeanstalk<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-elastictranscoder<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-elb<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-elbv2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-emr<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-emr-containers<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-emr-serverless<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-entityresolution<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-es<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-events<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-evidently<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-finspace<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-finspace-data<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-firehose<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-fis<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-fms<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-forecast<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-forecastquery<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-frauddetector<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-freetier<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-fsx<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-gamelift<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-glacier<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-globalaccelerator<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-glue<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-grafana<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-greengrass<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-greengrassv2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-groundstation<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-guardduty<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-health<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-healthlake<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iam<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-identitystore<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-imagebuilder<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-importexport<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-inspector<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-inspector-scan<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-inspector2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-internetmonitor<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iot<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iot-data<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iot-jobs-data<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iot1click-devices<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iot1click-projects<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iotanalytics<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iotdeviceadvisor<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iotevents<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iotevents-data<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iotfleethub<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iotfleetwise<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iotsecuretunneling<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iotsitewise<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iotthingsgraph<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iottwinmaker<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-iotwireless<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ivs<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ivs-realtime<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ivschat<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kafka<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kafkaconnect<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kendra<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kendra-ranking<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-keyspaces<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kinesis<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kinesis-video-archived-media<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kinesis-video-media<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kinesis-video-signaling<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kinesis-video-webrtc-storage<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kinesisanalytics<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kinesisanalyticsv2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kinesisvideo<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-kms<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-lakeformation<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-lambda<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-launch-wizard<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-lex-models<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-lex-runtime<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-lexv2-models<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-lexv2-runtime<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-license-manager<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-license-manager-linux-subscriptions<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-license-manager-user-subscriptions<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-lightsail<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-location<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-logs<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-lookoutequipment<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-lookoutmetrics<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-lookoutvision<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-m2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-machinelearning<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-macie2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mailmanager<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-managedblockchain<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-managedblockchain-query<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-marketplace-agreement<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-marketplace-catalog<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-marketplace-deployment<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-marketplace-entitlement<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-marketplacecommerceanalytics<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mediaconnect<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mediaconvert<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-medialive<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mediapackage<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mediapackage-vod<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mediapackagev2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mediastore<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mediastore-data<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mediatailor<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-medical-imaging<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-memorydb<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-meteringmarketplace<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mgh<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mgn<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-migration-hub-refactor-spaces<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-migrationhub-config<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-migrationhuborchestrator<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-migrationhubstrategy<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mq<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mturk<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-mwaa<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-neptune<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-neptune-graph<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-neptunedata<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-network-firewall<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-networkmanager<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-networkmonitor<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-nimble<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-oam<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-omics<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-opensearch<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-opensearchserverless<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-opsworks<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-opsworkscm<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-organizations<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-osis<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-outposts<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-panorama<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-payment-cryptography<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-payment-cryptography-data<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-pca-connector-ad<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-pca-connector-scep<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-pcs<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-personalize<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-personalize-events<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-personalize-runtime<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-pi<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-pinpoint<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-pinpoint-email<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-pinpoint-sms-voice<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-pinpoint-sms-voice-v2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-pipes<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-polly<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-pricing<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-privatenetworks<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-proton<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-qapps<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-qbusiness<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-qconnect<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-qldb<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-qldb-session<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-quicksight<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ram<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-rbin<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-rds<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-rds-data<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-redshift<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-redshift-data<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-redshift-serverless<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-rekognition<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-repostspace<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-resiliencehub<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-resource-explorer-2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-resource-groups<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-resourcegroupstaggingapi<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-robomaker<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-rolesanywhere<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-route53<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-route53-recovery-cluster<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-route53-recovery-control-config<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-route53-recovery-readiness<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-route53domains<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-route53profiles<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-route53resolver<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-rum<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-s3<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-s3control<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-s3outposts<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sagemaker<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sagemaker-a2i-runtime<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sagemaker-edge<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sagemaker-featurestore-runtime<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sagemaker-geospatial<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sagemaker-metrics<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sagemaker-runtime<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-savingsplans<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-scheduler<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-schemas<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sdb<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-secretsmanager<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-securityhub<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-securitylake<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-serverlessrepo<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-service-quotas<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-servicecatalog<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-servicecatalog-appregistry<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-servicediscovery<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ses<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sesv2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-shield<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-signer<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-simspaceweaver<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sms<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sms-voice<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-snow-device-management<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-snowball<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sns<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sqs<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ssm<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ssm-contacts<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ssm-incidents<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ssm-quicksetup<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-ssm-sap<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sso<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sso-admin<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sso-oidc<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-stepfunctions<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-storagegateway<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-sts<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-supplychain<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-support<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-support-app<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-swf<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-synthetics<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-taxsettings<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-textract<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-timestream-influxdb<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-timestream-query<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-timestream-write<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-tnb<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-transcribe<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-transfer<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-translate<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-trustedadvisor<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-verifiedpermissions<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-voice-id<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-vpc-lattice<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-waf<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-waf-regional<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-wafv2<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-wellarchitected<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-wisdom<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-workdocs<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-worklink<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-workmail<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-workmailmessageflow<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-workspaces<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-workspaces-thin-client<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-workspaces-web<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-xray<2.16.0,>=2.15.0 ; extra == 'all' + - types-aiobotocore-amp<2.16.0,>=2.15.0 ; extra == 'amp' + - types-aiobotocore-amplify<2.16.0,>=2.15.0 ; extra == 'amplify' + - types-aiobotocore-amplifybackend<2.16.0,>=2.15.0 ; extra == 'amplifybackend' + - types-aiobotocore-amplifyuibuilder<2.16.0,>=2.15.0 ; extra == 'amplifyuibuilder' + - types-aiobotocore-apigateway<2.16.0,>=2.15.0 ; extra == 'apigateway' + - types-aiobotocore-apigatewaymanagementapi<2.16.0,>=2.15.0 ; extra == 'apigatewaymanagementapi' + - types-aiobotocore-apigatewayv2<2.16.0,>=2.15.0 ; extra == 'apigatewayv2' + - types-aiobotocore-appconfig<2.16.0,>=2.15.0 ; extra == 'appconfig' + - types-aiobotocore-appconfigdata<2.16.0,>=2.15.0 ; extra == 'appconfigdata' + - types-aiobotocore-appfabric<2.16.0,>=2.15.0 ; extra == 'appfabric' + - types-aiobotocore-appflow<2.16.0,>=2.15.0 ; extra == 'appflow' + - types-aiobotocore-appintegrations<2.16.0,>=2.15.0 ; extra == 'appintegrations' + - types-aiobotocore-application-autoscaling<2.16.0,>=2.15.0 ; extra == 'application-autoscaling' + - types-aiobotocore-application-insights<2.16.0,>=2.15.0 ; extra == 'application-insights' + - types-aiobotocore-application-signals<2.16.0,>=2.15.0 ; extra == 'application-signals' + - types-aiobotocore-applicationcostprofiler<2.16.0,>=2.15.0 ; extra == 'applicationcostprofiler' + - types-aiobotocore-appmesh<2.16.0,>=2.15.0 ; extra == 'appmesh' + - types-aiobotocore-apprunner<2.16.0,>=2.15.0 ; extra == 'apprunner' + - types-aiobotocore-appstream<2.16.0,>=2.15.0 ; extra == 'appstream' + - types-aiobotocore-appsync<2.16.0,>=2.15.0 ; extra == 'appsync' + - types-aiobotocore-apptest<2.16.0,>=2.15.0 ; extra == 'apptest' + - types-aiobotocore-arc-zonal-shift<2.16.0,>=2.15.0 ; extra == 'arc-zonal-shift' + - types-aiobotocore-artifact<2.16.0,>=2.15.0 ; extra == 'artifact' + - types-aiobotocore-athena<2.16.0,>=2.15.0 ; extra == 'athena' + - types-aiobotocore-auditmanager<2.16.0,>=2.15.0 ; extra == 'auditmanager' + - types-aiobotocore-autoscaling<2.16.0,>=2.15.0 ; extra == 'autoscaling' + - types-aiobotocore-autoscaling-plans<2.16.0,>=2.15.0 ; extra == 'autoscaling-plans' + - types-aiobotocore-b2bi<2.16.0,>=2.15.0 ; extra == 'b2bi' + - types-aiobotocore-backup<2.16.0,>=2.15.0 ; extra == 'backup' + - types-aiobotocore-backup-gateway<2.16.0,>=2.15.0 ; extra == 'backup-gateway' + - types-aiobotocore-batch<2.16.0,>=2.15.0 ; extra == 'batch' + - types-aiobotocore-bcm-data-exports<2.16.0,>=2.15.0 ; extra == 'bcm-data-exports' + - types-aiobotocore-bedrock<2.16.0,>=2.15.0 ; extra == 'bedrock' + - types-aiobotocore-bedrock-agent<2.16.0,>=2.15.0 ; extra == 'bedrock-agent' + - types-aiobotocore-bedrock-agent-runtime<2.16.0,>=2.15.0 ; extra == 'bedrock-agent-runtime' + - types-aiobotocore-bedrock-runtime<2.16.0,>=2.15.0 ; extra == 'bedrock-runtime' + - types-aiobotocore-billingconductor<2.16.0,>=2.15.0 ; extra == 'billingconductor' + - types-aiobotocore-braket<2.16.0,>=2.15.0 ; extra == 'braket' + - types-aiobotocore-budgets<2.16.0,>=2.15.0 ; extra == 'budgets' + - types-aiobotocore-ce<2.16.0,>=2.15.0 ; extra == 'ce' + - types-aiobotocore-chatbot<2.16.0,>=2.15.0 ; extra == 'chatbot' + - types-aiobotocore-chime<2.16.0,>=2.15.0 ; extra == 'chime' + - types-aiobotocore-chime-sdk-identity<2.16.0,>=2.15.0 ; extra == 'chime-sdk-identity' + - types-aiobotocore-chime-sdk-media-pipelines<2.16.0,>=2.15.0 ; extra == 'chime-sdk-media-pipelines' + - types-aiobotocore-chime-sdk-meetings<2.16.0,>=2.15.0 ; extra == 'chime-sdk-meetings' + - types-aiobotocore-chime-sdk-messaging<2.16.0,>=2.15.0 ; extra == 'chime-sdk-messaging' + - types-aiobotocore-chime-sdk-voice<2.16.0,>=2.15.0 ; extra == 'chime-sdk-voice' + - types-aiobotocore-cleanrooms<2.16.0,>=2.15.0 ; extra == 'cleanrooms' + - types-aiobotocore-cleanroomsml<2.16.0,>=2.15.0 ; extra == 'cleanroomsml' + - types-aiobotocore-cloud9<2.16.0,>=2.15.0 ; extra == 'cloud9' + - types-aiobotocore-cloudcontrol<2.16.0,>=2.15.0 ; extra == 'cloudcontrol' + - types-aiobotocore-clouddirectory<2.16.0,>=2.15.0 ; extra == 'clouddirectory' + - types-aiobotocore-cloudformation<2.16.0,>=2.15.0 ; extra == 'cloudformation' + - types-aiobotocore-cloudfront<2.16.0,>=2.15.0 ; extra == 'cloudfront' + - types-aiobotocore-cloudfront-keyvaluestore<2.16.0,>=2.15.0 ; extra == 'cloudfront-keyvaluestore' + - types-aiobotocore-cloudhsm<2.16.0,>=2.15.0 ; extra == 'cloudhsm' + - types-aiobotocore-cloudhsmv2<2.16.0,>=2.15.0 ; extra == 'cloudhsmv2' + - types-aiobotocore-cloudsearch<2.16.0,>=2.15.0 ; extra == 'cloudsearch' + - types-aiobotocore-cloudsearchdomain<2.16.0,>=2.15.0 ; extra == 'cloudsearchdomain' + - types-aiobotocore-cloudtrail<2.16.0,>=2.15.0 ; extra == 'cloudtrail' + - types-aiobotocore-cloudtrail-data<2.16.0,>=2.15.0 ; extra == 'cloudtrail-data' + - types-aiobotocore-cloudwatch<2.16.0,>=2.15.0 ; extra == 'cloudwatch' + - types-aiobotocore-codeartifact<2.16.0,>=2.15.0 ; extra == 'codeartifact' + - types-aiobotocore-codebuild<2.16.0,>=2.15.0 ; extra == 'codebuild' + - types-aiobotocore-codecatalyst<2.16.0,>=2.15.0 ; extra == 'codecatalyst' + - types-aiobotocore-codecommit<2.16.0,>=2.15.0 ; extra == 'codecommit' + - types-aiobotocore-codeconnections<2.16.0,>=2.15.0 ; extra == 'codeconnections' + - types-aiobotocore-codedeploy<2.16.0,>=2.15.0 ; extra == 'codedeploy' + - types-aiobotocore-codeguru-reviewer<2.16.0,>=2.15.0 ; extra == 'codeguru-reviewer' + - types-aiobotocore-codeguru-security<2.16.0,>=2.15.0 ; extra == 'codeguru-security' + - types-aiobotocore-codeguruprofiler<2.16.0,>=2.15.0 ; extra == 'codeguruprofiler' + - types-aiobotocore-codepipeline<2.16.0,>=2.15.0 ; extra == 'codepipeline' + - types-aiobotocore-codestar-connections<2.16.0,>=2.15.0 ; extra == 'codestar-connections' + - types-aiobotocore-codestar-notifications<2.16.0,>=2.15.0 ; extra == 'codestar-notifications' + - types-aiobotocore-cognito-identity<2.16.0,>=2.15.0 ; extra == 'cognito-identity' + - types-aiobotocore-cognito-idp<2.16.0,>=2.15.0 ; extra == 'cognito-idp' + - types-aiobotocore-cognito-sync<2.16.0,>=2.15.0 ; extra == 'cognito-sync' + - types-aiobotocore-comprehend<2.16.0,>=2.15.0 ; extra == 'comprehend' + - types-aiobotocore-comprehendmedical<2.16.0,>=2.15.0 ; extra == 'comprehendmedical' + - types-aiobotocore-compute-optimizer<2.16.0,>=2.15.0 ; extra == 'compute-optimizer' + - types-aiobotocore-config<2.16.0,>=2.15.0 ; extra == 'config' + - types-aiobotocore-connect<2.16.0,>=2.15.0 ; extra == 'connect' + - types-aiobotocore-connect-contact-lens<2.16.0,>=2.15.0 ; extra == 'connect-contact-lens' + - types-aiobotocore-connectcampaigns<2.16.0,>=2.15.0 ; extra == 'connectcampaigns' + - types-aiobotocore-connectcases<2.16.0,>=2.15.0 ; extra == 'connectcases' + - types-aiobotocore-connectparticipant<2.16.0,>=2.15.0 ; extra == 'connectparticipant' + - types-aiobotocore-controlcatalog<2.16.0,>=2.15.0 ; extra == 'controlcatalog' + - types-aiobotocore-controltower<2.16.0,>=2.15.0 ; extra == 'controltower' + - types-aiobotocore-cost-optimization-hub<2.16.0,>=2.15.0 ; extra == 'cost-optimization-hub' + - types-aiobotocore-cur<2.16.0,>=2.15.0 ; extra == 'cur' + - types-aiobotocore-customer-profiles<2.16.0,>=2.15.0 ; extra == 'customer-profiles' + - types-aiobotocore-databrew<2.16.0,>=2.15.0 ; extra == 'databrew' + - types-aiobotocore-dataexchange<2.16.0,>=2.15.0 ; extra == 'dataexchange' + - types-aiobotocore-datapipeline<2.16.0,>=2.15.0 ; extra == 'datapipeline' + - types-aiobotocore-datasync<2.16.0,>=2.15.0 ; extra == 'datasync' + - types-aiobotocore-datazone<2.16.0,>=2.15.0 ; extra == 'datazone' + - types-aiobotocore-dax<2.16.0,>=2.15.0 ; extra == 'dax' + - types-aiobotocore-deadline<2.16.0,>=2.15.0 ; extra == 'deadline' + - types-aiobotocore-detective<2.16.0,>=2.15.0 ; extra == 'detective' + - types-aiobotocore-devicefarm<2.16.0,>=2.15.0 ; extra == 'devicefarm' + - types-aiobotocore-devops-guru<2.16.0,>=2.15.0 ; extra == 'devops-guru' + - types-aiobotocore-directconnect<2.16.0,>=2.15.0 ; extra == 'directconnect' + - types-aiobotocore-discovery<2.16.0,>=2.15.0 ; extra == 'discovery' + - types-aiobotocore-dlm<2.16.0,>=2.15.0 ; extra == 'dlm' + - types-aiobotocore-dms<2.16.0,>=2.15.0 ; extra == 'dms' + - types-aiobotocore-docdb<2.16.0,>=2.15.0 ; extra == 'docdb' + - types-aiobotocore-docdb-elastic<2.16.0,>=2.15.0 ; extra == 'docdb-elastic' + - types-aiobotocore-drs<2.16.0,>=2.15.0 ; extra == 'drs' + - types-aiobotocore-ds<2.16.0,>=2.15.0 ; extra == 'ds' + - types-aiobotocore-dynamodb<2.16.0,>=2.15.0 ; extra == 'dynamodb' + - types-aiobotocore-dynamodbstreams<2.16.0,>=2.15.0 ; extra == 'dynamodbstreams' + - types-aiobotocore-ebs<2.16.0,>=2.15.0 ; extra == 'ebs' + - types-aiobotocore-ec2<2.16.0,>=2.15.0 ; extra == 'ec2' + - types-aiobotocore-ec2-instance-connect<2.16.0,>=2.15.0 ; extra == 'ec2-instance-connect' + - types-aiobotocore-ecr<2.16.0,>=2.15.0 ; extra == 'ecr' + - types-aiobotocore-ecr-public<2.16.0,>=2.15.0 ; extra == 'ecr-public' + - types-aiobotocore-ecs<2.16.0,>=2.15.0 ; extra == 'ecs' + - types-aiobotocore-efs<2.16.0,>=2.15.0 ; extra == 'efs' + - types-aiobotocore-eks<2.16.0,>=2.15.0 ; extra == 'eks' + - types-aiobotocore-eks-auth<2.16.0,>=2.15.0 ; extra == 'eks-auth' + - types-aiobotocore-elastic-inference<2.16.0,>=2.15.0 ; extra == 'elastic-inference' + - types-aiobotocore-elasticache<2.16.0,>=2.15.0 ; extra == 'elasticache' + - types-aiobotocore-elasticbeanstalk<2.16.0,>=2.15.0 ; extra == 'elasticbeanstalk' + - types-aiobotocore-elastictranscoder<2.16.0,>=2.15.0 ; extra == 'elastictranscoder' + - types-aiobotocore-elb<2.16.0,>=2.15.0 ; extra == 'elb' + - types-aiobotocore-elbv2<2.16.0,>=2.15.0 ; extra == 'elbv2' + - types-aiobotocore-emr<2.16.0,>=2.15.0 ; extra == 'emr' + - types-aiobotocore-emr-containers<2.16.0,>=2.15.0 ; extra == 'emr-containers' + - types-aiobotocore-emr-serverless<2.16.0,>=2.15.0 ; extra == 'emr-serverless' + - types-aiobotocore-entityresolution<2.16.0,>=2.15.0 ; extra == 'entityresolution' + - types-aiobotocore-es<2.16.0,>=2.15.0 ; extra == 'es' + - types-aiobotocore-cloudformation<2.16.0,>=2.15.0 ; extra == 'essential' + - types-aiobotocore-dynamodb<2.16.0,>=2.15.0 ; extra == 'essential' + - types-aiobotocore-ec2<2.16.0,>=2.15.0 ; extra == 'essential' + - types-aiobotocore-lambda<2.16.0,>=2.15.0 ; extra == 'essential' + - types-aiobotocore-rds<2.16.0,>=2.15.0 ; extra == 'essential' + - types-aiobotocore-s3<2.16.0,>=2.15.0 ; extra == 'essential' + - types-aiobotocore-sqs<2.16.0,>=2.15.0 ; extra == 'essential' + - types-aiobotocore-events<2.16.0,>=2.15.0 ; extra == 'events' + - types-aiobotocore-evidently<2.16.0,>=2.15.0 ; extra == 'evidently' + - types-aiobotocore-finspace<2.16.0,>=2.15.0 ; extra == 'finspace' + - types-aiobotocore-finspace-data<2.16.0,>=2.15.0 ; extra == 'finspace-data' + - types-aiobotocore-firehose<2.16.0,>=2.15.0 ; extra == 'firehose' + - types-aiobotocore-fis<2.16.0,>=2.15.0 ; extra == 'fis' + - types-aiobotocore-fms<2.16.0,>=2.15.0 ; extra == 'fms' + - types-aiobotocore-forecast<2.16.0,>=2.15.0 ; extra == 'forecast' + - types-aiobotocore-forecastquery<2.16.0,>=2.15.0 ; extra == 'forecastquery' + - types-aiobotocore-frauddetector<2.16.0,>=2.15.0 ; extra == 'frauddetector' + - types-aiobotocore-freetier<2.16.0,>=2.15.0 ; extra == 'freetier' + - types-aiobotocore-fsx<2.16.0,>=2.15.0 ; extra == 'fsx' + - types-aiobotocore-gamelift<2.16.0,>=2.15.0 ; extra == 'gamelift' + - types-aiobotocore-glacier<2.16.0,>=2.15.0 ; extra == 'glacier' + - types-aiobotocore-globalaccelerator<2.16.0,>=2.15.0 ; extra == 'globalaccelerator' + - types-aiobotocore-glue<2.16.0,>=2.15.0 ; extra == 'glue' + - types-aiobotocore-grafana<2.16.0,>=2.15.0 ; extra == 'grafana' + - types-aiobotocore-greengrass<2.16.0,>=2.15.0 ; extra == 'greengrass' + - types-aiobotocore-greengrassv2<2.16.0,>=2.15.0 ; extra == 'greengrassv2' + - types-aiobotocore-groundstation<2.16.0,>=2.15.0 ; extra == 'groundstation' + - types-aiobotocore-guardduty<2.16.0,>=2.15.0 ; extra == 'guardduty' + - types-aiobotocore-health<2.16.0,>=2.15.0 ; extra == 'health' + - types-aiobotocore-healthlake<2.16.0,>=2.15.0 ; extra == 'healthlake' + - types-aiobotocore-iam<2.16.0,>=2.15.0 ; extra == 'iam' + - types-aiobotocore-identitystore<2.16.0,>=2.15.0 ; extra == 'identitystore' + - types-aiobotocore-imagebuilder<2.16.0,>=2.15.0 ; extra == 'imagebuilder' + - types-aiobotocore-importexport<2.16.0,>=2.15.0 ; extra == 'importexport' + - types-aiobotocore-inspector<2.16.0,>=2.15.0 ; extra == 'inspector' + - types-aiobotocore-inspector-scan<2.16.0,>=2.15.0 ; extra == 'inspector-scan' + - types-aiobotocore-inspector2<2.16.0,>=2.15.0 ; extra == 'inspector2' + - types-aiobotocore-internetmonitor<2.16.0,>=2.15.0 ; extra == 'internetmonitor' + - types-aiobotocore-iot<2.16.0,>=2.15.0 ; extra == 'iot' + - types-aiobotocore-iot-data<2.16.0,>=2.15.0 ; extra == 'iot-data' + - types-aiobotocore-iot-jobs-data<2.16.0,>=2.15.0 ; extra == 'iot-jobs-data' + - types-aiobotocore-iot1click-devices<2.16.0,>=2.15.0 ; extra == 'iot1click-devices' + - types-aiobotocore-iot1click-projects<2.16.0,>=2.15.0 ; extra == 'iot1click-projects' + - types-aiobotocore-iotanalytics<2.16.0,>=2.15.0 ; extra == 'iotanalytics' + - types-aiobotocore-iotdeviceadvisor<2.16.0,>=2.15.0 ; extra == 'iotdeviceadvisor' + - types-aiobotocore-iotevents<2.16.0,>=2.15.0 ; extra == 'iotevents' + - types-aiobotocore-iotevents-data<2.16.0,>=2.15.0 ; extra == 'iotevents-data' + - types-aiobotocore-iotfleethub<2.16.0,>=2.15.0 ; extra == 'iotfleethub' + - types-aiobotocore-iotfleetwise<2.16.0,>=2.15.0 ; extra == 'iotfleetwise' + - types-aiobotocore-iotsecuretunneling<2.16.0,>=2.15.0 ; extra == 'iotsecuretunneling' + - types-aiobotocore-iotsitewise<2.16.0,>=2.15.0 ; extra == 'iotsitewise' + - types-aiobotocore-iotthingsgraph<2.16.0,>=2.15.0 ; extra == 'iotthingsgraph' + - types-aiobotocore-iottwinmaker<2.16.0,>=2.15.0 ; extra == 'iottwinmaker' + - types-aiobotocore-iotwireless<2.16.0,>=2.15.0 ; extra == 'iotwireless' + - types-aiobotocore-ivs<2.16.0,>=2.15.0 ; extra == 'ivs' + - types-aiobotocore-ivs-realtime<2.16.0,>=2.15.0 ; extra == 'ivs-realtime' + - types-aiobotocore-ivschat<2.16.0,>=2.15.0 ; extra == 'ivschat' + - types-aiobotocore-kafka<2.16.0,>=2.15.0 ; extra == 'kafka' + - types-aiobotocore-kafkaconnect<2.16.0,>=2.15.0 ; extra == 'kafkaconnect' + - types-aiobotocore-kendra<2.16.0,>=2.15.0 ; extra == 'kendra' + - types-aiobotocore-kendra-ranking<2.16.0,>=2.15.0 ; extra == 'kendra-ranking' + - types-aiobotocore-keyspaces<2.16.0,>=2.15.0 ; extra == 'keyspaces' + - types-aiobotocore-kinesis<2.16.0,>=2.15.0 ; extra == 'kinesis' + - types-aiobotocore-kinesis-video-archived-media<2.16.0,>=2.15.0 ; extra == 'kinesis-video-archived-media' + - types-aiobotocore-kinesis-video-media<2.16.0,>=2.15.0 ; extra == 'kinesis-video-media' + - types-aiobotocore-kinesis-video-signaling<2.16.0,>=2.15.0 ; extra == 'kinesis-video-signaling' + - types-aiobotocore-kinesis-video-webrtc-storage<2.16.0,>=2.15.0 ; extra == 'kinesis-video-webrtc-storage' + - types-aiobotocore-kinesisanalytics<2.16.0,>=2.15.0 ; extra == 'kinesisanalytics' + - types-aiobotocore-kinesisanalyticsv2<2.16.0,>=2.15.0 ; extra == 'kinesisanalyticsv2' + - types-aiobotocore-kinesisvideo<2.16.0,>=2.15.0 ; extra == 'kinesisvideo' + - types-aiobotocore-kms<2.16.0,>=2.15.0 ; extra == 'kms' + - types-aiobotocore-lakeformation<2.16.0,>=2.15.0 ; extra == 'lakeformation' + - types-aiobotocore-lambda<2.16.0,>=2.15.0 ; extra == 'lambda' + - types-aiobotocore-launch-wizard<2.16.0,>=2.15.0 ; extra == 'launch-wizard' + - types-aiobotocore-lex-models<2.16.0,>=2.15.0 ; extra == 'lex-models' + - types-aiobotocore-lex-runtime<2.16.0,>=2.15.0 ; extra == 'lex-runtime' + - types-aiobotocore-lexv2-models<2.16.0,>=2.15.0 ; extra == 'lexv2-models' + - types-aiobotocore-lexv2-runtime<2.16.0,>=2.15.0 ; extra == 'lexv2-runtime' + - types-aiobotocore-license-manager<2.16.0,>=2.15.0 ; extra == 'license-manager' + - types-aiobotocore-license-manager-linux-subscriptions<2.16.0,>=2.15.0 ; extra == 'license-manager-linux-subscriptions' + - types-aiobotocore-license-manager-user-subscriptions<2.16.0,>=2.15.0 ; extra == 'license-manager-user-subscriptions' + - types-aiobotocore-lightsail<2.16.0,>=2.15.0 ; extra == 'lightsail' + - types-aiobotocore-location<2.16.0,>=2.15.0 ; extra == 'location' + - types-aiobotocore-logs<2.16.0,>=2.15.0 ; extra == 'logs' + - types-aiobotocore-lookoutequipment<2.16.0,>=2.15.0 ; extra == 'lookoutequipment' + - types-aiobotocore-lookoutmetrics<2.16.0,>=2.15.0 ; extra == 'lookoutmetrics' + - types-aiobotocore-lookoutvision<2.16.0,>=2.15.0 ; extra == 'lookoutvision' + - types-aiobotocore-m2<2.16.0,>=2.15.0 ; extra == 'm2' + - types-aiobotocore-machinelearning<2.16.0,>=2.15.0 ; extra == 'machinelearning' + - types-aiobotocore-macie2<2.16.0,>=2.15.0 ; extra == 'macie2' + - types-aiobotocore-mailmanager<2.16.0,>=2.15.0 ; extra == 'mailmanager' + - types-aiobotocore-managedblockchain<2.16.0,>=2.15.0 ; extra == 'managedblockchain' + - types-aiobotocore-managedblockchain-query<2.16.0,>=2.15.0 ; extra == 'managedblockchain-query' + - types-aiobotocore-marketplace-agreement<2.16.0,>=2.15.0 ; extra == 'marketplace-agreement' + - types-aiobotocore-marketplace-catalog<2.16.0,>=2.15.0 ; extra == 'marketplace-catalog' + - types-aiobotocore-marketplace-deployment<2.16.0,>=2.15.0 ; extra == 'marketplace-deployment' + - types-aiobotocore-marketplace-entitlement<2.16.0,>=2.15.0 ; extra == 'marketplace-entitlement' + - types-aiobotocore-marketplacecommerceanalytics<2.16.0,>=2.15.0 ; extra == 'marketplacecommerceanalytics' + - types-aiobotocore-mediaconnect<2.16.0,>=2.15.0 ; extra == 'mediaconnect' + - types-aiobotocore-mediaconvert<2.16.0,>=2.15.0 ; extra == 'mediaconvert' + - types-aiobotocore-medialive<2.16.0,>=2.15.0 ; extra == 'medialive' + - types-aiobotocore-mediapackage<2.16.0,>=2.15.0 ; extra == 'mediapackage' + - types-aiobotocore-mediapackage-vod<2.16.0,>=2.15.0 ; extra == 'mediapackage-vod' + - types-aiobotocore-mediapackagev2<2.16.0,>=2.15.0 ; extra == 'mediapackagev2' + - types-aiobotocore-mediastore<2.16.0,>=2.15.0 ; extra == 'mediastore' + - types-aiobotocore-mediastore-data<2.16.0,>=2.15.0 ; extra == 'mediastore-data' + - types-aiobotocore-mediatailor<2.16.0,>=2.15.0 ; extra == 'mediatailor' + - types-aiobotocore-medical-imaging<2.16.0,>=2.15.0 ; extra == 'medical-imaging' + - types-aiobotocore-memorydb<2.16.0,>=2.15.0 ; extra == 'memorydb' + - types-aiobotocore-meteringmarketplace<2.16.0,>=2.15.0 ; extra == 'meteringmarketplace' + - types-aiobotocore-mgh<2.16.0,>=2.15.0 ; extra == 'mgh' + - types-aiobotocore-mgn<2.16.0,>=2.15.0 ; extra == 'mgn' + - types-aiobotocore-migration-hub-refactor-spaces<2.16.0,>=2.15.0 ; extra == 'migration-hub-refactor-spaces' + - types-aiobotocore-migrationhub-config<2.16.0,>=2.15.0 ; extra == 'migrationhub-config' + - types-aiobotocore-migrationhuborchestrator<2.16.0,>=2.15.0 ; extra == 'migrationhuborchestrator' + - types-aiobotocore-migrationhubstrategy<2.16.0,>=2.15.0 ; extra == 'migrationhubstrategy' + - types-aiobotocore-mq<2.16.0,>=2.15.0 ; extra == 'mq' + - types-aiobotocore-mturk<2.16.0,>=2.15.0 ; extra == 'mturk' + - types-aiobotocore-mwaa<2.16.0,>=2.15.0 ; extra == 'mwaa' + - types-aiobotocore-neptune<2.16.0,>=2.15.0 ; extra == 'neptune' + - types-aiobotocore-neptune-graph<2.16.0,>=2.15.0 ; extra == 'neptune-graph' + - types-aiobotocore-neptunedata<2.16.0,>=2.15.0 ; extra == 'neptunedata' + - types-aiobotocore-network-firewall<2.16.0,>=2.15.0 ; extra == 'network-firewall' + - types-aiobotocore-networkmanager<2.16.0,>=2.15.0 ; extra == 'networkmanager' + - types-aiobotocore-networkmonitor<2.16.0,>=2.15.0 ; extra == 'networkmonitor' + - types-aiobotocore-nimble<2.16.0,>=2.15.0 ; extra == 'nimble' + - types-aiobotocore-oam<2.16.0,>=2.15.0 ; extra == 'oam' + - types-aiobotocore-omics<2.16.0,>=2.15.0 ; extra == 'omics' + - types-aiobotocore-opensearch<2.16.0,>=2.15.0 ; extra == 'opensearch' + - types-aiobotocore-opensearchserverless<2.16.0,>=2.15.0 ; extra == 'opensearchserverless' + - types-aiobotocore-opsworks<2.16.0,>=2.15.0 ; extra == 'opsworks' + - types-aiobotocore-opsworkscm<2.16.0,>=2.15.0 ; extra == 'opsworkscm' + - types-aiobotocore-organizations<2.16.0,>=2.15.0 ; extra == 'organizations' + - types-aiobotocore-osis<2.16.0,>=2.15.0 ; extra == 'osis' + - types-aiobotocore-outposts<2.16.0,>=2.15.0 ; extra == 'outposts' + - types-aiobotocore-panorama<2.16.0,>=2.15.0 ; extra == 'panorama' + - types-aiobotocore-payment-cryptography<2.16.0,>=2.15.0 ; extra == 'payment-cryptography' + - types-aiobotocore-payment-cryptography-data<2.16.0,>=2.15.0 ; extra == 'payment-cryptography-data' + - types-aiobotocore-pca-connector-ad<2.16.0,>=2.15.0 ; extra == 'pca-connector-ad' + - types-aiobotocore-pca-connector-scep<2.16.0,>=2.15.0 ; extra == 'pca-connector-scep' + - types-aiobotocore-pcs<2.16.0,>=2.15.0 ; extra == 'pcs' + - types-aiobotocore-personalize<2.16.0,>=2.15.0 ; extra == 'personalize' + - types-aiobotocore-personalize-events<2.16.0,>=2.15.0 ; extra == 'personalize-events' + - types-aiobotocore-personalize-runtime<2.16.0,>=2.15.0 ; extra == 'personalize-runtime' + - types-aiobotocore-pi<2.16.0,>=2.15.0 ; extra == 'pi' + - types-aiobotocore-pinpoint<2.16.0,>=2.15.0 ; extra == 'pinpoint' + - types-aiobotocore-pinpoint-email<2.16.0,>=2.15.0 ; extra == 'pinpoint-email' + - types-aiobotocore-pinpoint-sms-voice<2.16.0,>=2.15.0 ; extra == 'pinpoint-sms-voice' + - types-aiobotocore-pinpoint-sms-voice-v2<2.16.0,>=2.15.0 ; extra == 'pinpoint-sms-voice-v2' + - types-aiobotocore-pipes<2.16.0,>=2.15.0 ; extra == 'pipes' + - types-aiobotocore-polly<2.16.0,>=2.15.0 ; extra == 'polly' + - types-aiobotocore-pricing<2.16.0,>=2.15.0 ; extra == 'pricing' + - types-aiobotocore-privatenetworks<2.16.0,>=2.15.0 ; extra == 'privatenetworks' + - types-aiobotocore-proton<2.16.0,>=2.15.0 ; extra == 'proton' + - types-aiobotocore-qapps<2.16.0,>=2.15.0 ; extra == 'qapps' + - types-aiobotocore-qbusiness<2.16.0,>=2.15.0 ; extra == 'qbusiness' + - types-aiobotocore-qconnect<2.16.0,>=2.15.0 ; extra == 'qconnect' + - types-aiobotocore-qldb<2.16.0,>=2.15.0 ; extra == 'qldb' + - types-aiobotocore-qldb-session<2.16.0,>=2.15.0 ; extra == 'qldb-session' + - types-aiobotocore-quicksight<2.16.0,>=2.15.0 ; extra == 'quicksight' + - types-aiobotocore-ram<2.16.0,>=2.15.0 ; extra == 'ram' + - types-aiobotocore-rbin<2.16.0,>=2.15.0 ; extra == 'rbin' + - types-aiobotocore-rds<2.16.0,>=2.15.0 ; extra == 'rds' + - types-aiobotocore-rds-data<2.16.0,>=2.15.0 ; extra == 'rds-data' + - types-aiobotocore-redshift<2.16.0,>=2.15.0 ; extra == 'redshift' + - types-aiobotocore-redshift-data<2.16.0,>=2.15.0 ; extra == 'redshift-data' + - types-aiobotocore-redshift-serverless<2.16.0,>=2.15.0 ; extra == 'redshift-serverless' + - types-aiobotocore-rekognition<2.16.0,>=2.15.0 ; extra == 'rekognition' + - types-aiobotocore-repostspace<2.16.0,>=2.15.0 ; extra == 'repostspace' + - types-aiobotocore-resiliencehub<2.16.0,>=2.15.0 ; extra == 'resiliencehub' + - types-aiobotocore-resource-explorer-2<2.16.0,>=2.15.0 ; extra == 'resource-explorer-2' + - types-aiobotocore-resource-groups<2.16.0,>=2.15.0 ; extra == 'resource-groups' + - types-aiobotocore-resourcegroupstaggingapi<2.16.0,>=2.15.0 ; extra == 'resourcegroupstaggingapi' + - types-aiobotocore-robomaker<2.16.0,>=2.15.0 ; extra == 'robomaker' + - types-aiobotocore-rolesanywhere<2.16.0,>=2.15.0 ; extra == 'rolesanywhere' + - types-aiobotocore-route53<2.16.0,>=2.15.0 ; extra == 'route53' + - types-aiobotocore-route53-recovery-cluster<2.16.0,>=2.15.0 ; extra == 'route53-recovery-cluster' + - types-aiobotocore-route53-recovery-control-config<2.16.0,>=2.15.0 ; extra == 'route53-recovery-control-config' + - types-aiobotocore-route53-recovery-readiness<2.16.0,>=2.15.0 ; extra == 'route53-recovery-readiness' + - types-aiobotocore-route53domains<2.16.0,>=2.15.0 ; extra == 'route53domains' + - types-aiobotocore-route53profiles<2.16.0,>=2.15.0 ; extra == 'route53profiles' + - types-aiobotocore-route53resolver<2.16.0,>=2.15.0 ; extra == 'route53resolver' + - types-aiobotocore-rum<2.16.0,>=2.15.0 ; extra == 'rum' + - types-aiobotocore-s3<2.16.0,>=2.15.0 ; extra == 's3' + - types-aiobotocore-s3control<2.16.0,>=2.15.0 ; extra == 's3control' + - types-aiobotocore-s3outposts<2.16.0,>=2.15.0 ; extra == 's3outposts' + - types-aiobotocore-sagemaker<2.16.0,>=2.15.0 ; extra == 'sagemaker' + - types-aiobotocore-sagemaker-a2i-runtime<2.16.0,>=2.15.0 ; extra == 'sagemaker-a2i-runtime' + - types-aiobotocore-sagemaker-edge<2.16.0,>=2.15.0 ; extra == 'sagemaker-edge' + - types-aiobotocore-sagemaker-featurestore-runtime<2.16.0,>=2.15.0 ; extra == 'sagemaker-featurestore-runtime' + - types-aiobotocore-sagemaker-geospatial<2.16.0,>=2.15.0 ; extra == 'sagemaker-geospatial' + - types-aiobotocore-sagemaker-metrics<2.16.0,>=2.15.0 ; extra == 'sagemaker-metrics' + - types-aiobotocore-sagemaker-runtime<2.16.0,>=2.15.0 ; extra == 'sagemaker-runtime' + - types-aiobotocore-savingsplans<2.16.0,>=2.15.0 ; extra == 'savingsplans' + - types-aiobotocore-scheduler<2.16.0,>=2.15.0 ; extra == 'scheduler' + - types-aiobotocore-schemas<2.16.0,>=2.15.0 ; extra == 'schemas' + - types-aiobotocore-sdb<2.16.0,>=2.15.0 ; extra == 'sdb' + - types-aiobotocore-secretsmanager<2.16.0,>=2.15.0 ; extra == 'secretsmanager' + - types-aiobotocore-securityhub<2.16.0,>=2.15.0 ; extra == 'securityhub' + - types-aiobotocore-securitylake<2.16.0,>=2.15.0 ; extra == 'securitylake' + - types-aiobotocore-serverlessrepo<2.16.0,>=2.15.0 ; extra == 'serverlessrepo' + - types-aiobotocore-service-quotas<2.16.0,>=2.15.0 ; extra == 'service-quotas' + - types-aiobotocore-servicecatalog<2.16.0,>=2.15.0 ; extra == 'servicecatalog' + - types-aiobotocore-servicecatalog-appregistry<2.16.0,>=2.15.0 ; extra == 'servicecatalog-appregistry' + - types-aiobotocore-servicediscovery<2.16.0,>=2.15.0 ; extra == 'servicediscovery' + - types-aiobotocore-ses<2.16.0,>=2.15.0 ; extra == 'ses' + - types-aiobotocore-sesv2<2.16.0,>=2.15.0 ; extra == 'sesv2' + - types-aiobotocore-shield<2.16.0,>=2.15.0 ; extra == 'shield' + - types-aiobotocore-signer<2.16.0,>=2.15.0 ; extra == 'signer' + - types-aiobotocore-simspaceweaver<2.16.0,>=2.15.0 ; extra == 'simspaceweaver' + - types-aiobotocore-sms<2.16.0,>=2.15.0 ; extra == 'sms' + - types-aiobotocore-sms-voice<2.16.0,>=2.15.0 ; extra == 'sms-voice' + - types-aiobotocore-snow-device-management<2.16.0,>=2.15.0 ; extra == 'snow-device-management' + - types-aiobotocore-snowball<2.16.0,>=2.15.0 ; extra == 'snowball' + - types-aiobotocore-sns<2.16.0,>=2.15.0 ; extra == 'sns' + - types-aiobotocore-sqs<2.16.0,>=2.15.0 ; extra == 'sqs' + - types-aiobotocore-ssm<2.16.0,>=2.15.0 ; extra == 'ssm' + - types-aiobotocore-ssm-contacts<2.16.0,>=2.15.0 ; extra == 'ssm-contacts' + - types-aiobotocore-ssm-incidents<2.16.0,>=2.15.0 ; extra == 'ssm-incidents' + - types-aiobotocore-ssm-quicksetup<2.16.0,>=2.15.0 ; extra == 'ssm-quicksetup' + - types-aiobotocore-ssm-sap<2.16.0,>=2.15.0 ; extra == 'ssm-sap' + - types-aiobotocore-sso<2.16.0,>=2.15.0 ; extra == 'sso' + - types-aiobotocore-sso-admin<2.16.0,>=2.15.0 ; extra == 'sso-admin' + - types-aiobotocore-sso-oidc<2.16.0,>=2.15.0 ; extra == 'sso-oidc' + - types-aiobotocore-stepfunctions<2.16.0,>=2.15.0 ; extra == 'stepfunctions' + - types-aiobotocore-storagegateway<2.16.0,>=2.15.0 ; extra == 'storagegateway' + - types-aiobotocore-sts<2.16.0,>=2.15.0 ; extra == 'sts' + - types-aiobotocore-supplychain<2.16.0,>=2.15.0 ; extra == 'supplychain' + - types-aiobotocore-support<2.16.0,>=2.15.0 ; extra == 'support' + - types-aiobotocore-support-app<2.16.0,>=2.15.0 ; extra == 'support-app' + - types-aiobotocore-swf<2.16.0,>=2.15.0 ; extra == 'swf' + - types-aiobotocore-synthetics<2.16.0,>=2.15.0 ; extra == 'synthetics' + - types-aiobotocore-taxsettings<2.16.0,>=2.15.0 ; extra == 'taxsettings' + - types-aiobotocore-textract<2.16.0,>=2.15.0 ; extra == 'textract' + - types-aiobotocore-timestream-influxdb<2.16.0,>=2.15.0 ; extra == 'timestream-influxdb' + - types-aiobotocore-timestream-query<2.16.0,>=2.15.0 ; extra == 'timestream-query' + - types-aiobotocore-timestream-write<2.16.0,>=2.15.0 ; extra == 'timestream-write' + - types-aiobotocore-tnb<2.16.0,>=2.15.0 ; extra == 'tnb' + - types-aiobotocore-transcribe<2.16.0,>=2.15.0 ; extra == 'transcribe' + - types-aiobotocore-transfer<2.16.0,>=2.15.0 ; extra == 'transfer' + - types-aiobotocore-translate<2.16.0,>=2.15.0 ; extra == 'translate' + - types-aiobotocore-trustedadvisor<2.16.0,>=2.15.0 ; extra == 'trustedadvisor' + - types-aiobotocore-verifiedpermissions<2.16.0,>=2.15.0 ; extra == 'verifiedpermissions' + - types-aiobotocore-voice-id<2.16.0,>=2.15.0 ; extra == 'voice-id' + - types-aiobotocore-vpc-lattice<2.16.0,>=2.15.0 ; extra == 'vpc-lattice' + - types-aiobotocore-waf<2.16.0,>=2.15.0 ; extra == 'waf' + - types-aiobotocore-waf-regional<2.16.0,>=2.15.0 ; extra == 'waf-regional' + - types-aiobotocore-wafv2<2.16.0,>=2.15.0 ; extra == 'wafv2' + - types-aiobotocore-wellarchitected<2.16.0,>=2.15.0 ; extra == 'wellarchitected' + - types-aiobotocore-wisdom<2.16.0,>=2.15.0 ; extra == 'wisdom' + - types-aiobotocore-workdocs<2.16.0,>=2.15.0 ; extra == 'workdocs' + - types-aiobotocore-worklink<2.16.0,>=2.15.0 ; extra == 'worklink' + - types-aiobotocore-workmail<2.16.0,>=2.15.0 ; extra == 'workmail' + - types-aiobotocore-workmailmessageflow<2.16.0,>=2.15.0 ; extra == 'workmailmessageflow' + - types-aiobotocore-workspaces<2.16.0,>=2.15.0 ; extra == 'workspaces' + - types-aiobotocore-workspaces-thin-client<2.16.0,>=2.15.0 ; extra == 'workspaces-thin-client' + - types-aiobotocore-workspaces-web<2.16.0,>=2.15.0 ; extra == 'workspaces-web' + - types-aiobotocore-xray<2.16.0,>=2.15.0 ; extra == 'xray' + requires_python: '>=3.8' - kind: conda name: types-awscrt version: 0.21.2 diff --git a/pyproject.toml b/pyproject.toml index 525db410..18124c5c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -34,6 +34,7 @@ platforms = ["osx-arm64", "linux-64", "win-64"] [tool.pixi.pypi-dependencies] parselmouth = { path = ".", editable = true } +types-aioboto3 = "*" [tool.pixi.dependencies] requests = ">=2.31.0,<2.32" diff --git a/src/parselmouth/internals/artifact.py b/src/parselmouth/internals/artifact.py new file mode 100644 index 00000000..b8409b5b --- /dev/null +++ b/src/parselmouth/internals/artifact.py @@ -0,0 +1,114 @@ +from pathlib import Path +import re +from packaging.version import parse +from parselmouth.internals.utils import normalize +from typing import Optional +from conda_forge_metadata.types import ArtifactData +import logging + +from parselmouth.internals.s3 import MappingEntry + + +dist_info_pattern = r"([^/]+)-(\d+[^/]*)\.dist-info\/METADATA" +egg_info_pattern = r"([^/]+?)-(\d+[^/]*)\.egg-info\/PKG-INFO" + +dist_pattern_compiled = re.compile(dist_info_pattern) +egg_pattern_compiled = re.compile(egg_info_pattern) + + +def check_if_is_direct_url(package_name: str, url: Optional[str]) -> bool: + if not url: + return False + urls = None + if not isinstance(url, str): + logging.warning(f"{package_name} contains multiple urls") + urls = url + else: + urls = list(url) + + if all( + url.startswith("https://pypi.io/packages/") + or url.startswith("https://pypi.org/packages/") + or url.startswith("https://pypi.python.org/packages/") + for url in urls + ): + return False + + return True + + +def get_pypi_names_and_version(files: list[str]) -> dict[str, str]: + """ + Return a dictionary of normalized names to it's version + """ + package_names: dict[str, str] = {} + for file_name in files: + file_path = Path(file_name) + # sometimes, packages like setuptools have some stuff vendored + # that our regex will catch: + # site-packages/setuptools/_vendor/zipp-3.19.2.dist-info/RECORD + # but in reality we don't want to include itages: + if "_vendor" in file_path.parts or "_vendored" in file_path.parts: + continue + match = dist_pattern_compiled.search(file_name) or egg_pattern_compiled.search( + file_name + ) + if match: + package_name = match.group(1) + if not package_name: + continue + + version = match.group(2) + if "-py" in version: + index_of_py = version.index("-py") + version = version[:index_of_py] + + pkg_version = None + + try: + pkg_version = parse(version) + except Exception: + if "-" in version: + index_of_dash = version.rfind("-") + version = version[:index_of_dash] + + if pkg_version: + version = str(pkg_version) + + package_names[normalize(package_name)] = version + + return package_names + + +def extract_artifact_mapping(artifact: ArtifactData, package_name: str) -> MappingEntry: + pypi_names_and_versions = get_pypi_names_and_version(artifact["files"]) + pypi_normalized_names = ( + [name for name in pypi_names_and_versions] if pypi_names_and_versions else None + ) + source: Optional[dict] = artifact["rendered_recipe"].get("source", None) + is_direct_url: Optional[bool] = None + + if source and isinstance(source, list): + source = artifact["rendered_recipe"]["source"][0] + is_direct_url = check_if_is_direct_url( + package_name, + source.get("url"), + ) + + conda_name = artifact["name"] + + if not is_direct_url or not source: + direct_url = None + else: + url = source.get("url", None) + direct_url = [str(url)] if isinstance(url, str) else url + + return MappingEntry.model_validate( + { + "pypi_normalized_names": pypi_normalized_names, + "versions": pypi_names_and_versions if pypi_names_and_versions else None, + "conda_name": str(conda_name), + "package_name": package_name, + "direct_url": direct_url, + } + ) diff --git a/src/parselmouth/internals/check_one.py b/src/parselmouth/internals/check_one.py index 1a8884ac..e2d82b3d 100644 --- a/src/parselmouth/internals/check_one.py +++ b/src/parselmouth/internals/check_one.py @@ -1,13 +1,13 @@ import re from typing import Optional import logging +from parselmouth.internals.artifact import extract_artifact_mapping from parselmouth.internals.channels import SupportedChannels from parselmouth.internals.conda_forge import ( get_all_packages_by_subdir, get_artifact_info, ) from parselmouth.internals.s3 import MappingEntry, s3_client -from parselmouth.internals.updater import get_pypi_names_and_version from rich import print @@ -71,43 +71,11 @@ def main( subdir=subdir, artifact=package_name, backend=backend_type, channel=channel ) if artifact: - pypi_names_and_versions = get_pypi_names_and_version(artifact["files"]) - pypi_normalized_names = ( - [name for name in pypi_names_and_versions] - if pypi_names_and_versions - else None - ) - source: Optional[dict] = artifact["rendered_recipe"].get("source", None) - is_direct_url: Optional[bool] = None - - if source and isinstance(source, list): - source = artifact["rendered_recipe"]["source"][0] - is_direct_url = check_if_is_direct_url( - package_name, - source.get("url"), - ) - sha = repodatas[package_name]["sha256"] - conda_name = artifact["name"] - - if not is_direct_url or not source: - direct_url = None - else: - url = source.get("url", None) - direct_url = [url] if isinstance(url, str) else url if sha not in names_mapping: - names_mapping[sha] = MappingEntry.model_validate( - { - "pypi_normalized_names": pypi_normalized_names, - "versions": pypi_names_and_versions - if pypi_names_and_versions - else None, - "conda_name": conda_name, - "package_name": package_name, - "direct_url": direct_url, - } - ) + mapping_entry = extract_artifact_mapping(artifact, package_name) + names_mapping[sha] = mapping_entry break if not names_mapping: @@ -116,6 +84,17 @@ def main( print(names_mapping) if upload: + # getting the index mapping + existing_mapping_data = s3_client.get_channel_index(channel=channel) + if not existing_mapping_data: + raise ValueError(f"Could not get the index mapping for channel {channel}") + + # updating with the new mapping + existing_mapping_data.root.update(names_mapping) + + logging.warning("Uploading index to S3") + s3_client.upload_index(existing_mapping_data, channel=channel) + logging.warning("Uploading mapping to S3") for sha_name, mapping_body in names_mapping.items(): s3_client.upload_mapping(mapping_body, sha_name) diff --git a/src/parselmouth/internals/legacy_mapping.py b/src/parselmouth/internals/legacy_mapping.py index b2175275..e23ad7b7 100644 --- a/src/parselmouth/internals/legacy_mapping.py +++ b/src/parselmouth/internals/legacy_mapping.py @@ -1,4 +1,5 @@ import json +from typing import Mapping from deprecated import deprecated from pydantic import BaseModel @@ -15,7 +16,7 @@ class CompressedMapping(BaseModel): def format_and_save_mapping( - mapping: dict[str, SmallMapping] | dict[str, CompressedMapping], + mapping: Mapping[str, SmallMapping | CompressedMapping], mapping_name: str = "mapping_as_grayskull", ): # now le'ts iterate over created small_mapping diff --git a/src/parselmouth/internals/updater.py b/src/parselmouth/internals/updater.py index a76e16d0..50b0dd9a 100644 --- a/src/parselmouth/internals/updater.py +++ b/src/parselmouth/internals/updater.py @@ -3,7 +3,6 @@ import json import os from pathlib import Path -import re from typing import Optional import aioboto3.session import botocore.client @@ -11,90 +10,20 @@ import concurrent.futures import logging from dotenv import load_dotenv -from packaging.version import parse + +from parselmouth.internals.artifact import extract_artifact_mapping from parselmouth.internals.channels import BackendRequestType, SupportedChannels from parselmouth.internals.conda_forge import ( get_all_packages_by_subdir, get_artifact_info, ) -from parselmouth.internals.s3 import IndexMapping, MappingEntry -from parselmouth.internals.utils import normalize +from parselmouth.internals.s3 import IndexMapping import aioboto3 names_mapping: IndexMapping = IndexMapping.model_construct(root={}) -dist_info_pattern = r"([^/]+)-(\d+[^/]*)\.dist-info\/METADATA" -egg_info_pattern = r"([^/]+?)-(\d+[^/]*)\.egg-info\/PKG-INFO" - -dist_pattern_compiled = re.compile(dist_info_pattern) -egg_pattern_compiled = re.compile(egg_info_pattern) - - -def check_if_is_direct_url(package_name: str, url: Optional[str]) -> bool: - if not url: - return False - urls = None - if not isinstance(url, str): - logging.warning(f"{package_name} contains multiple urls") - urls = url - else: - urls = list(url) - - if all( - url.startswith("https://pypi.io/packages/") - or url.startswith("https://pypi.org/packages/") - or url.startswith("https://pypi.python.org/packages/") - for url in urls - ): - return False - - return True - - -def get_pypi_names_and_version(files: list[str]) -> dict[str, str]: - """ - Return a dictionary of normalized names to it's version - """ - package_names: dict[str, str] = {} - for file_name in files: - file_path = Path(file_name) - # sometimes, packages like setuptools have some stuff vendored - # that our regex will catch: - # site-packages/setuptools/_vendor/zipp-3.19.2.dist-info/RECORD - # but in reality we don't want to include itages: - if "_vendor" in file_path.parts or "_vendored" in file_path.parts: - continue - match = dist_pattern_compiled.search(file_name) or egg_pattern_compiled.search( - file_name - ) - if match: - package_name = match.group(1) - if not package_name: - continue - - version = match.group(2) - if "-py" in version: - index_of_py = version.index("-py") - version = version[:index_of_py] - - pkg_version = None - - try: - pkg_version = parse(version) - except Exception: - if "-" in version: - index_of_dash = version.rfind("-") - version = version[:index_of_dash] - - if pkg_version: - version = str(pkg_version) - - package_names[normalize(package_name)] = version - - return package_names - async def async_upload_package( s3_client, pkg_body: str, package_hash, bucket_name: str @@ -175,7 +104,7 @@ def main( package = repodatas[package_name] sha256 = package["sha256"] - if sha256 not in existing_mapping_data: + if sha256 not in existing_mapping_data.root: # trying to get packages info using all backends. # note: streamed is not supported for .tar.gz if package_name.endswith(".conda"): @@ -220,47 +149,10 @@ def main( try: artifact: Optional[ArtifactData] = done.result() if artifact: - pypi_names_and_versions = get_pypi_names_and_version( - artifact["files"] - ) - pypi_normalized_names = ( - [name for name in pypi_names_and_versions] - if pypi_names_and_versions - else None - ) - source: Optional[dict] = artifact["rendered_recipe"].get( - "source", None - ) - is_direct_url: Optional[bool] = None - - if source and isinstance(source, list): - source = artifact["rendered_recipe"]["source"][0] - is_direct_url = check_if_is_direct_url( - package_name, - source.get("url"), - ) - sha = repodatas[package_name]["sha256"] - conda_name = artifact["name"] - - if not is_direct_url or not source: - direct_url = None - else: - url = source.get("url", None) - direct_url = [str(url)] if isinstance(url, str) else url + mapping_entry = extract_artifact_mapping(artifact, package_name) - if sha not in names_mapping: - names_mapping.root[sha] = MappingEntry.model_validate( - { - "pypi_normalized_names": pypi_normalized_names, - "versions": pypi_names_and_versions - if pypi_names_and_versions - else None, - "conda_name": str(conda_name), - "package_name": package_name, - "direct_url": direct_url, - } - ) + names_mapping.root[sha] = mapping_entry else: logging.warning( f"Could not get artifact for {package_name} using backend: {backend_type}" diff --git a/src/parselmouth/internals/updater_producer.py b/src/parselmouth/internals/updater_producer.py index 6c059eee..38270e7c 100644 --- a/src/parselmouth/internals/updater_producer.py +++ b/src/parselmouth/internals/updater_producer.py @@ -39,6 +39,7 @@ def main( if not existing_mapping_data: existing_mapping_data = IndexMapping(root={}) else: + # a new channel may not have any mapping data. so we need to create an empty one existing_mapping_data = IndexMapping(root={}) letters = set()