Mypy-boto3-builder

Latest version: v8.7.1

Safety actively analyzes 693883 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 8 of 36

7.18.0

Notes

G'day!

Finally, `boto3-stubs` is fully compatible with `pydantic 2.x`. `TypedDict`, `Literal`, and `NotRequired` are imported from `typing_extensions` for Python 3.7 - 3.11. However, no code changes are required on your side. The only change is that your py37-py311 projects will now depend on `typing_extensions`

With `pydantic 2.x` support, we can finally switch to a new `TypedDict` rendering with a `NotRequired` type annotation wrapper. This change decreased `type_defs.py` size by 10% and overall looks nicer.

Since the changes are quite big, please report any bugs that you encounter, and do not forget to request new features.

Keep on keeping on!

Changed
- `[all]` `Literal` and `TypedDict` are imported from `typing_extensions` for `py311` and below (suggested by tobni in 221)
- `[all]` Switched to a new `TypedDict` renderer
- `[all]` New detection and replacement logic for self-referencing TypeDefs

Fixed
- `[all]` Potential incorrect imports for `Union`-only TypeDefs
- `[builder]` Speed up required import mapping

7.17.3

Fixed
- `[dynamodb]` Waiters and Paginators use separate type maps (reported by Weber-Tr in 217)
- `[iam]` String shapes are handled as JSON objects in they have JSON pattern
- `[s3]` Mark arguments as optional properly in injected methods (reported by caner-cetin in 218)

7.17.2

Fixed
- `[docs]` Removed `TypeDef`s list from service docs to shorten readmes (reported by kevinnowland in 215)
- `[dynamodb]` Replaced `TableAttributeValueTypeDef` with `AttributeValueTypeDef` in outputs other than `ServiceResource` and `Table` (reported by BrentSouza in 216)

7.17.1

Fixed
- `[builder]` Removed dependency on `typing_extensions`

7.17.0

Notes

As you know, the builder not only generates type annotations, but it also supplies tons of `TypeDef`s that you can use in your code for type checking. Starting from this release `TypeDef`s not only generated for `TypedDict`s to help you with method inputs and outputs, but they also include named `Union`s!

This is especially helpful for `dynamodb` service because it has a complex `TableAttributeTypeDef` `Union`. However, I added support for all `Union`s, even for small ones, even for the ones added in version `7.16.0` to merge input and output shapes! Just import them from `<service_name>.type_defs` and start using them in your projects!

Small usage example just for you:

python
import boto3
from mypy_boto3_s3.type_defs import BlobTypeDef, PutObjectOutputTypeDef

BlobTypeDef is a Union[str, bytes, IO[Any], botocore.response.StreamingBody]
let's use it in our function!

def put_object(body: BlobTypeDef) -> PutObjectOutputTypeDef:
s3_client = boto3.client("s3")
return s3_client.put_object(body=body)


Keep on keeping on!

Added
- `[services]` All `Union`s now have named type annotations in `type_defs.py` (requested by perlow in 196)
- `[builder]` `TypeUnion` type annotation to support named `Union`s
- `[builder]` `TypeDefSortable` protocol to topologically sort both `TypedDict`s and `Union`s
- `[docs]` Added named `Union`s support

Changed
- `[docs]` `TypeDef` usage examples were removed to make docs lighter

Fixed
- `[builder]` Formatting with `black` and `isort` uses temp path
- `[builder]` Moved reusable templates to `templates/common`
- `[dynamodb]` Replace `AttributeValueTypeDef` with `TableAttributeValueTypeDef` in `Table` methods output (reported by fizyk in 210)
- `[iam]` Fixed `PolicyDocumentTypeDef` with hardcode, bug in `botocore` (reported by skeggsein 212)

7.16.2

Fixed
- `[builder]` All method arguments accept both input and output shapes (reported by potiuk in 209)

Updated packages

- `mypy-boto3-appflow 1.28.15.post1`
- `mypy-boto3-dynamodb 1.28.15.post1`

Page 8 of 36

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.