Skip to content

Releases: youtype/mypy_boto3_builder

8.3.0 - Beautiful Docstrings

18 Nov 15:33

Choose a tag to compare

Changed

  • [all] xform_name functionality moved to the project to avoid bugs in botocore
  • [docs] Use the same links to boto3 documentation as the rest of the project
  • [services] Added missing docstrings to subresource Collections
  • [docs] Added a warning about PyCharm high CPU usage (PY-40997)

Fixed

  • [services] textwrap logic for docstings no longer adds a linebreak before the last word
  • [services] Fixed links to boto3 documentation for all classes and methods
  • [services] Fixed Collection.all method docstring
  • [services] Fixed Client.exceptions method docstring

8.2.1

07 Nov 22:53
d69bec3

Choose a tag to compare

Fixed

  • [*-full] TypedDicts with reserved words are no longer rendered as classes

8.2.0 - Classy TypedDicts

02 Nov 10:11
7fc1971

Choose a tag to compare

Added

  • [all] Python 3.14 support
  • [builder] Faster lookup for stubbed types, thanks to new LookupDict class
  • [builder] NotRequired output TypedDict keys can be mapped per-service
  • [builder] Total ordering support for Waiter and Paginator structures

Changed

  • [builder] TypedDicts are rendered as a class if possible with a fallback to old function-style rendering
  • [builder] Ensure that empty ImportString is never generated
  • [docker] Rebased to python:3.13.0-alpine3.20
  • [services] Names are sorted alphabetically in __all__ statements

Fixed

  • [docs] Collection links are now correct in all places
  • [builder] Potential name generation error for __string literals
  • [builder] Hash calculation is optimized for all structures
  • [stepfunctions] DescribeExecutionOutputTypeDef keys are marked as NotRequired according to docs (reported by @taesungh in #321)
  • [dynamodb] LastEvaluatedKey is now optional in all output shapes (reported by @Ricool06 in #324)
  • [types-aiobotocore] Incorrect __aexit__ signature in async context managers (submitted by @hxyannay in #323)

Updated packages

  • mypy-boto3-dynamodb 1.35.54
  • mypy-boto3-stepfunctions 1.35.54
  • types-aiobotocore 2.15.2.post1
  • types-aiobotocore-lite 2.15.2.post1
  • types-aioboto3 13.2.0.post1
  • types-aioboto3-lite 13.2.0.post1

8.1.4

25 Oct 12:46
530901d

Choose a tag to compare

Fixed

  • [builder] Removed code with typing_extensions library, that was not listed as a project dependency (submitted by @maresb in #319)
  • [types-aiobotocore-docs] Error on method docs generation if an argument has no type annotation (reported by @BwL1289 in #320)
  • [types-aiobotocore-docs] Code examples were invalid due to missing # comment characters

8.1.3

23 Oct 14:35
d736061

Choose a tag to compare

Fixed

  • [types-aioboto3-docs] Fixed incorrect usage for PyCharm (submitted by @ymuraki-csc in #316)
  • [stepfunctions] nextToken output shape key is marked as NotRequired (reported by @taesungh in #318)
  • [builder] Fixed TypeDefSortable potential clashing of sort keys
  • [builder] JinjaManager context does not have access to builtin function anymore to avoid errors during template rendering

Updated packages

  • mypy-boto3-stepfunctions 1.35.46

8.1.2

23 Sep 06:52
d2c7af9

Choose a tag to compare

Fixed

  • [services] Self-references in TypedDicts, Unions and Subscripts are replaced with corresponding types to avoid recursion
  • [builder] Universal input-output TypeDefs were overlapped in some cases

8.1.1

18 Sep 18:16
6399205

Choose a tag to compare

Fixed

  • [aiobotocore] Some boto3 imports were not wrapped in try-except to be available without boto3 installed
  • [builder] ResponseTypeDef name clash resolution was potentially incorrect

Updated packages

  • types-aiobotocore-dynamodb 2.15.0.post1

8.1.0 - All-in-one Packages

16 Sep 23:24
083cd9a

Choose a tag to compare

Notes

This release add support for full packages for boto3-stubs, types-aiobotocore, and types-aioboto3.

  • boto3-stubs-full - Type annotations for all botocore services, install with pip install 'boto3-stubs[full]'
  • types-aiobotocore-full - Type annotations for all aiobotocore services, install with pip install 'types-aiobotocore[full]' or pip install 'types-aioboto3[full]'

Added

  • [boto3-stubs] full extra that installs boto3-stubs-full
  • [types-aiobotocore] full extra that installs types-aiobotocore-full
  • [types-aioboto3] full extra that installs types-aiobotocore-full
  • [docs] Instructions how to install full packages

Changed

  • [builder] Installed aioboto3/aiobotocore package is no longer required, latest version from PyPI is used if it is missing
  • [builder] Refactored import strings sorting logic, imports with fallback and Python min version required are grouped

8.0.1

31 Aug 05:02
c085019

Choose a tag to compare

Fixed

  • [builder] Allow to use mypy_boto3_builder as a module

8.0.0 - Unpack Syntax

31 Aug 03:52
ee6bf13

Choose a tag to compare

Notes

  • Starting from this release builder requires Python 3.12+. However, generated packages still support Python 3.8+
  • Packages generation is 2 times faster due to new template rendering and code formatting approach
  • New **kwargs: Unpack[RequestTypeDef] syntax for all kw-only methods and functions
  • Output code formatting uses ruff instead of isort and black

Added

  • [builder] New documentation and usage instructions
  • [builder] New CLI argument --download-static-stubs that allows to fetch the latest static stubs from GitHub instead of built-in
  • [services] New **kwargs: Unpack[RequestTypeDef] syntax for all kw-only methods and functions

Changed

  • [builder] Twice as fast packages generation due to optimizations in processing and formatting
  • [builder] Import sorting in output files is now performed by ruff instead of isort (20x faster!)
  • [builder] Code formatting in output files is now performed by ruff instead of black (40x faster!)
  • [services] Generated package size reduced by 20%

Fixed

  • [services] Output TypedDict clashing was not resolved correctly in some cases, shadowing output TypeDef
  • [builder] Formatting did not use minimal support Python version correctly
  • [builder] Required imports with fallback with minimal sys.version required are sorted correctly
  • [builder] Multiple performance optimizations
  • [builder] *-full package data was incorrect
  • [builder] *-full package name was incorrect