Skip to main content

Type annotations for botocore 1.21.2, generated by mypy-boto3-buider 5.0.0

Project description

botocore-stubs

PyPI - botocore-stubs PyPI - Python Version Docs PyPI - Downloads

boto3.typed

Type annotations for botocore 1.21.2 compatible with VSCode, PyCharm, Emacs, Sublime Text, mypy, pyright and other tools.

Generated by mypy-boto3-buider 5.0.0.

See how it helps to find and fix potential bugs:

boto3-stubs demo

How to install

Basic

Install botocore-stubs to add type annotations for botocore package. Install boto3-stubs to add type annotations for boto3 package.

# install type annotations only for botocore
python -m pip install botocore-stubs

# install type annotations only for boto3 and botocore
python -m pip install botocore-stubs boto3-stubs

# install `boto3` type annotations
# for ec2, s3, rds, lambda, sqs, dynamo and cloudformation
# Consumes ~7 MB of space
python -m pip install 'boto3-stubs[essential]'

# or install annotations for services you use
python -m pip install 'boto3-stubs[acm,apigateway]'

How to uninstall

# uninstall boto3-stubs
python -m pip uninstall -y boto3-stubs botocore-stubs

# uninstall submodules
python -m pip freeze | grep mypy-boto3 | xargs python -m pip uninstall -y

Usage

VSCode

  • Install Python extension
  • Install Pylance extension
  • Set Pylance as your Python Language Server
  • Install boto-stubs with services you use in your environment: python -m pip install 'boto3-stubs[s3,ec2]'

Both type checking and auto-complete should work for installed boto3 services. No explicit type annotations required, write your boto3 code as usual.

PyCharm

  • Install boto-stubs with services you use in your environment: python -m pip install 'boto3-stubs[s3,ec2]'
  • Install mypy_boto3_builder: pip install mypy_boto3_builder
  • Generate stubs in <project_root>/typings directory for services you use
python -m mypy_boto3_builder --installed --skip-services typings -d -s s3 ec2

Since stubs are stored in your project root, you do not need to re-generate them after update.

Emacs

(use-package lsp-pyright
  :ensure t
  :hook (python-mode . (lambda ()
                          (require 'lsp-pyright)
                          (lsp)))  ; or lsp-deferred
  :init (when (executable-find "python3")
          (setq lsp-pyright-python-executable-cmd "python3"))
  )
  • Make sure emacs uses the environment where you have installed boto3-stubs

Sublime Text

  • Install boto-stubs with services you use in your environment: python -m pip install 'boto3-stubs[s3,ec2]'
  • Install LSP-pyright package
  • Make sure emacs uses the environment where you have installed boto3-stubs

Other IDEs

Not tested, but as long as your IDE support mypy or pyright, everything should work.

mypy

  • Install mypy: python -m pip install mypy
  • Install boto-stubs with services you use in your environment: python -m pip install 'boto3-stubs[s3,ec2]'
  • Run mypy as usual

Type checking should work for installed boto3 services. No explicit type annotations required, write your boto3 code as usual.

pyright

  • Install pyright: yarn global add pyright
  • Install boto-stubs with services you use in your environment: python -m pip install 'boto3-stubs[s3,ec2]'
  • Optionally, you can install boto3-stubs to typings folder.

Type checking should work for installed boto3 services. No explicit type annotations required, write your boto3 code as usual.

How it works

Fully automated mypy-boto3-builder carefully generates type annotations for each service, patiently waiting for boto3 updates. It delivers a drop-in type annotations for you and makes sure that:

  • All available boto3 services are covered.
  • Each public class and method of every boto3 service gets valid type annotations extracted from the documentation (blame botocore docs if types are incorrect).
  • Type annotations include up-to-date documentation.
  • Link to documentation is provided for every method.
  • Code is processed by black and isort for readability.

What's new

Implemented features

  • Fully type annotated boto3 library
  • mypy, pyright, VSCode, PyCharm, Sublime Text and Emacs compatibility
  • Client type annotations for each service
  • ServiceResource type annotations for each service
  • Resource type annotations for each service
  • Waiter type annotations for each service
  • Paginator type annotations for each service
  • Generated TypeDefs for each service
  • Generated Literals for each service
  • Auto discovery of types for boto3.client and boto3.session calls
  • Auto discovery of types for session.client and session.session calls
  • Auto discovery of types for client.get_waiter and client.get_paginator calls
  • Auto discovery of types for ServiceResource and Resource collections

Latest changes

Builder changelog can be found in Releases.

Versioning

botocore-stubs version is the same as related botocore version and follows PEP 440 format.

Thank you

Documentation

All services type annotations can be found in boto3-stubs docs

Support and contributing

This package is auto-generated. Please reports any bugs or request new features in mypy-boto3-builder repository.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

botocore-stubs-1.21.2.tar.gz (31.7 kB view hashes)

Uploaded Source

Built Distribution

botocore_stubs-1.21.2-py3-none-any.whl (40.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page