Install & Compatibility
Where this runs
tested against v1.0.2 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.000s · 18.2MB
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 1.8s · import 0.000s · 19MB
16MB installed
● package 16MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
Client
✓ from mypy_boto3_botocore import Client
✗ from types_botocore import Client
This quickstart demonstrates how to use `mypy-boto3` to get type stubs for `botocore` (and `boto3`). It specifically advises *against* installing `types-botocore` due to its deprecated status. The example shows how to correctly type an S3 client and call a method, relying on `mypy-boto3` for accurate type hints.
import boto3
from typing import TYPE_CHECKING
# NOTE: Do NOT install 'types-botocore'. It is deprecated.
# Instead, install 'mypy-boto3' for comprehensive type stubs for boto3 and botocore.
# pip install mypy-boto3
# Example usage with proper type stubs (via mypy-boto3):
if TYPE_CHECKING:
# These imports are for type checking only and are provided by mypy-boto3-s3
from mypy_boto3_s3.client import S3Client
from mypy_boto3_s3.type_defs import CreateBucketOutputTypeDef
def create_s3_bucket(bucket_name: str, region: str) -> None:
# When mypy-boto3 is installed, boto3.client('s3') will be correctly typed.
# For explicit type annotation, you can use the imported S3Client type.
client: S3Client = boto3.client('s3', region_name=region)
print(f"Attempting to create bucket: {bucket_name} in {region}")
try:
response: CreateBucketOutputTypeDef = client.create_bucket(
Bucket=bucket_name,
CreateBucketConfiguration={'LocationConstraint': region}
)
print(f"Bucket creation successful: {response}")
except client.exceptions.BucketAlreadyOwnedByYou:
print(f"Bucket {bucket_name} already exists and is owned by you.")
except Exception as e:
print(f"Error creating bucket: {e}")
if __name__ == "__main__":
# Replace with your desired bucket name and region
# Use environment variables for sensitive info in real applications
# Or ensure AWS credentials are configured (e.g., via ~/.aws/credentials)
test_bucket_name = "my-unique-test-bucket-1234567890"
test_region = "us-east-1"
create_s3_bucket(test_bucket_name, test_region)
Debug
Known issues
breakingThe `types-botocore` package is deprecated and no longer actively maintained. Its version 1.0.2 is extremely outdated and will not provide accurate or complete type stubs for modern `botocore` versions.fixInstall `mypy-boto3` to get comprehensive type stubs for `botocore` (via `mypy-boto3-botocore`) and `boto3`. For example: `pip install mypy-boto3`. For `botocore` stubs specifically, you can use `mypy-boto3-botocore`.
affects: 1.0.2 and earlier
gotchaInstalling `types-botocore` will not provide the expected type-checking functionality or IDE auto-completion for current `botocore` usage. It's a legacy package that has been superseded by the robust `mypy_boto3_builder` ecosystem.fixAlways use `mypy-boto3` (or `mypy-boto3-botocore` for just botocore stubs) for up-to-date and complete type stubs compatible with modern `botocore` versions.
affects: All versions
breakingThe release notes provided in the prompt (e.g., versions like `8.12.0`, `8.11.0`) are for the `mypy_boto3_builder` project and its generated stub packages (like `mypy-boto3` and `mypy-boto3-botocore`), *not* for the `types-botocore` package itself. `types-botocore` is explicitly stuck at version 1.0.2.fixRefer to the `mypy-boto3-builder` GitHub repository and documentation for current information, releases, and changelogs related to `botocore` type stubs.
affects: All versions of `types-botocore` (1.0.2)
Upgrade
Version history
1.0.2latest on PyPI · released Apr 1, 2022
Audit
Dependencies
No dependency data recorded yet.