Type annotations builder for boto3 compatible with VSCode, PyCharm, Emacs, Sublime Text, pyright and mypy.
[builder]
Output TypeDef
keys can be marked as optional[builder]
Bumped black
and isort
to the latest versions[ci]
Using ruff
instead of flake8
, isort
and black
[builder]
Union TypeDef
definitions no longer have clashing names[builder]
Output TypeDef
map lookup did not work as expected[services]
Literal
names are capitalized even if the underlying shape name is not[services]
Client
/ServiceResource
class names are capitalized even if the service name is not[services]
All potentially optional keys in output shapes marked as NotRequired
[cognito-idp]
NextToken
output key marked as NotRequired
(reported by @filol in #238)[dynamodb]
Item
output key marked as NotRequired
(reported by @pavlobielousov in #241)[s3]
Contents
output key marked as NotRequired
(reported by @raymondbutcher in #242)[s3]
CommonPrefixes
output key marked as NotRequired
(reported by @guilhem-dvr in #248)[ec2]
PlatformValuesType
is stubbed until https://github.com/boto/botocore/issues/3128 is fixed (reported by @andrew-womeldorf
in #245)[services]
Fixed TypedDict naming resolution when conflicting shape is present only in resources (reported by @andrew-womeldorf in #244)[aiobotocore]
resource.meta
is no longer marked as Awaitable
[aiobotocore]
Static stubs updated to the latest version[builder]
All packages now have a list of supported Python versions[all]
Minimum Python version bumped to 3.8, Python 3.7 is no longer officially supported[builder]
black
uses Python versions supported by the package for formatting[services]
Replaced Typing :: Typed
classifier with Typing :: Stubs Only
[cloudwatch]
New CloudwatchEventTypeDef
for user-defined events (contributed by @aripollak in #234)[docker]
Rebased to python:3.11.6
on alpine3.18
[builder]
NicePath
removed due to bad compatibility with Python 3.12[boto3-stubs]
setup_default_session
accepts only keyword arguments[boto3-stubs]
Added missing stubs from boto3 1.33.x
[mypy-boto3]
Up-to-date ServiceName
and ResourceServiceName
to mypy_boto3.literals
module (reported by @jvtm in #231)[builder]
type_def.render_definition` helper method[builder]
Jinja2 template caching[all]
Replaced BaseException
with Exception
everywhere[builder]
Updated black
/isort
[builder]
Refactored injected TypeDefs to support service-specific injections[boto3-stubs]
Session.get_credentials
returns Credentials | None
(fixed by @aripollak in #234)[types-aioboto3]
Session.get_credentials
returns AioCredentials | None
[types-aioboto3]
Removed default values in Session
type annotations[types-aiobotocore]
Session.get_credentials
returns AioCredentials | None
[builder]
All type annotations support copy
interface[builder]
Simplified rendering of type annotations