Install & Compatibility
Where this runs
tested against v1.43.80 · 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.618s · 51.9MB
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 3.8s · import 0.572s · 52MB
50MB installed
● package 50MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
EVSClient
✓ from mypy_boto3_evs.client import EVSClient
DescribeVolumesResultTypeDef
✓ from mypy_boto3_evs.type_defs import DescribeVolumesResultTypeDef
Demonstrates how to use `mypy-boto3-evs` to add type hints to your `boto3` EVS client and its operations. This example creates an EVS client, calls `describe_volumes`, and prints information about the found volumes. The `EVSClient` and `DescribeVolumesResultTypeDef` are imported directly from the `mypy-boto3-evs` package, enabling static analysis by `mypy`.
import boto3
from mypy_boto3_evs.client import EVSClient
from mypy_boto3_evs.type_defs import DescribeVolumesResultTypeDef
# Instantiate the EVS client with type hints
# Ensure you have 'boto3' and 'mypy-boto3-evs' installed:
# pip install boto3 mypy-boto3-evs
# The actual boto3 client is created, but its type is now known to mypy
evs_client: EVSClient = boto3.client("evs", region_name="us-east-1")
try:
# Call an EVS operation, result will be type-checked
response: DescribeVolumesResultTypeDef = evs_client.describe_volumes()
print(f"Found {len(response.get('Volumes', []))} EVS volumes.")
# Example of accessing typed data
for volume in response.get('Volumes', []):
print(f" - Volume ID: {volume.get('VolumeId')}, State: {volume.get('State')}")
except Exception as e:
print(f"Error describing EVS volumes: {e}")
# To type-check this file, run: mypy your_script_name.py
Debug
Known issues
breakingThe `mypy-boto3` builder (version 8.12.0) used to generate `mypy-boto3-evs` (version 1.42.29) has removed support for Python 3.8. Projects relying on these stubs must use Python 3.9 or newer.fixUpgrade your project's Python version to 3.9 or newer. If you must use Python 3.8, you will need to pin to older `mypy-boto3-evs` versions and potentially `mypy-boto3-builder`.
affects: mypy-boto3-builder >= 8.12.0, mypy-boto3-evs >= 1.42.0
breakingBuilder version 8.9.0 introduced breaking changes to `TypeDef` naming conventions (e.g., shorter names for packed method arguments, `Extra` postfix moved). If you have custom types or code relying on specific `TypeDef` names generated by older `mypy-boto3` versions, these names might have changed.fixReview `mypy` errors after upgrading and update references to `TypeDef` names in your code. Consult the `mypy-boto3` documentation for the correct generated names.
affects: mypy-boto3-builder >= 8.9.0, mypy-boto3-evs >= 1.38.0
gotchaThis package provides only type stubs for `boto3` EVS. It does not install the `boto3` runtime itself. You must explicitly install `boto3` (e.g., `pip install boto3`) in your environment for your code to run.fixEnsure `boto3` is included in your project's dependencies and installed alongside `mypy-boto3-evs`.
affects: All versions
gotchaFor optimal type inference, especially when using `boto3.Session().client()` or `boto3.Session().resource()`, it is recommended to add the `mypy-boto3` plugin to your `mypy` configuration.fixAdd `plugins = ['mypy_boto3.plugins.connectors']` to your `mypy.ini` (or equivalent `pyproject.toml` or `setup.cfg`) configuration file.
affects: All versions
Upgrade
Version history
1.43.80latest on PyPI · released Aug 25, 2026
Audit
Dependencies
boto3requiredRuntime dependency for the AWS SDK for Python that these stubs type-check. Must be installed separately.