{"id":3373,"library":"mypy-boto3-outposts","title":"Type annotations for boto3 Outposts","description":"Type annotations for boto3 Outposts 1.42.86 service generated with mypy-boto3-builder 8.12.0. This library provides static type checking for AWS boto3 clients, resources, paginators, and waiters, enhancing developer experience with auto-completion and early error detection in IDEs and with type checkers like mypy and pyright.","status":"active","version":"1.42.86","language":"en","source_language":"en","source_url":"https://github.com/youtype/mypy_boto3_builder","tags":["aws","boto3","mypy","type-hints","outposts","stub","typing","type-checking"],"install":[{"cmd":"pip install mypy-boto3-outposts","lang":"bash","label":"Install with pip"}],"dependencies":[{"reason":"Provides the AWS SDK for Python, which these stubs type-check.","package":"boto3"},{"reason":"May be required for advanced type-hinting features on older Python versions (prior to 3.9), though less critical for modern Python versions supported by this library.","package":"typing-extensions","optional":true}],"imports":[{"note":"While boto3.client('outposts') returns a client, for static type checking with mypy-boto3-outposts, you need to import the specific client type from the stubs package for full benefits.","wrong":"from boto3.client import OutpostsClient","symbol":"OutpostsClient","correct":"from mypy_boto3_outposts.client import OutpostsClient"},{"note":"Type definitions for service requests and responses are typically found in the `type_defs` submodule.","symbol":"CreateOutpostInputRequestTypeDef","correct":"from mypy_boto3_outposts.type_defs import CreateOutpostInputRequestTypeDef"}],"quickstart":{"code":"import boto3\nfrom mypy_boto3_outposts.client import OutpostsClient\n\ndef get_outposts_client() -> OutpostsClient:\n    \"\"\"Returns a type-hinted Outposts client.\"\"\"\n    client: OutpostsClient = boto3.client(\"outposts\")\n    return client\n\nif __name__ == \"__main__\":\n    outposts_client = get_outposts_client()\n    try:\n        # Example: List outposts\n        response = outposts_client.list_outposts()\n        print(f\"Found {len(response.get('Outposts', []))} Outposts.\")\n        if response.get('Outposts'):\n            print(f\"First Outpost ARN: {response['Outposts'][0]['OutpostArn']}\")\n    except Exception as e:\n        print(f\"An error occurred: {e}\")","lang":"python","description":"This quickstart demonstrates how to obtain a type-hinted `OutpostsClient` from `boto3` and use it to interact with the AWS Outposts service. The type annotations provided by `mypy-boto3-outposts` enable robust static analysis and IDE auto-completion for client methods and response structures."},"warnings":[{"fix":"Upgrade Python to 3.9 or higher. Alternatively, pin `mypy-boto3-builder` to a version older than 8.12.0 if using Python 3.8.","message":"Python 3.8 support was removed in `mypy-boto3-builder` version 8.12.0. Users on Python 3.8 or older must upgrade their Python version to >=3.9 or use an older version of `mypy-boto3-outposts` and its builder.","severity":"breaking","affected_versions":"mypy-boto3-builder >=8.12.0, mypy-boto3-outposts (built with >=8.12.0)"},{"fix":"Update your code to use the new `TypeDef` naming conventions as reflected in the generated stubs.","message":"Breaking changes to `TypeDef` names occurred in `mypy-boto3-builder` version 8.9.0. Packed method arguments now use shorter names (e.g., `CreateDistributionRequestRequestTypeDef` became `CreateDistributionRequestTypeDef`), and conflicting `Extra` postfixes were moved (e.g., `CreateDistributionExtraRequestTypeDef` to `CreateDistributionRequestExtraTypeDef`).","severity":"breaking","affected_versions":"mypy-boto3-builder >=8.9.0, mypy-boto3-outposts (built with >=8.9.0)"},{"fix":"Ensure `mypy-boto3-outposts` is installed in the same Python environment used by your type checker. No special `MYPYPATH` configuration is needed or supported for stub-only packages.","message":"The `mypy-boto3` ecosystem migrated to PEP 561 compliant stub-only packages starting with `mypy-boto3-builder` 8.12.0. This means `mypy` will typically auto-discover types if the packages are installed, but users should be aware that `MYPYPATH` is not used for stub-only packages and direct installation is necessary for type checkers to find them.","severity":"gotcha","affected_versions":"mypy-boto3-builder >=8.12.0, all generated `mypy-boto3-*` packages"},{"fix":"Consult the changelog for the specific `mypy-boto3-*` package or the `mypy-boto3-builder` repository for any service renames or deprecations relevant to your project.","message":"A pattern of service renaming/deprecation exists within the `mypy-boto3` ecosystem. For example, the `sms-voice` service was deprecated in favor of `pinpoint-sms-voice` in builder 8.11.0. While specific to `sms-voice`, this indicates that users should periodically check release notes for service-specific stub deprecations or renames.","severity":"deprecated","affected_versions":"mypy-boto3-builder >=8.11.0 (for other services)"},{"fix":"Ensure you are installing `boto3-stubs` or specific `mypy-boto3-` service packages, rather than relying on the older `mypy-boto3` package for new projects or after upgrading the builder.","message":"The legacy `mypy-boto3` package was moved to a separate product starting in `mypy-boto3-builder` 8.9.0 and is no longer generated alongside `boto3-stubs`. Users upgrading from older `mypy-boto3` installations might need to adjust their package names or rebuild their stubs.","severity":"gotcha","affected_versions":"mypy-boto3-builder >=8.9.0"}],"env_vars":null,"last_verified":"2026-04-11T00:00:00.000Z","next_check":"2026-07-10T00:00:00.000Z"}