Skip to main content

Proxy package for botocore-stubs

Project description

types-botocore

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

boto3.typed

Proxy package for botocore-stubs. Install submodules for boto3 services type annotations.

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

See how it helps to find and fix potential bugs:

boto3-stubs demo

How to install

VSCode extension

Add AWS Boto3 extension to your VSCode and run AWS boto3: Quick Start command.

From PyPI with pip

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]'

# Lite version does not provide session.client/resource overloads
# it is more RAM-friendly, but requires explicit type annotations
python -m pip install 'boto3-stubs-lite[essential]'

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

From conda-forge

Installing botocore-stubs from the conda-forge channel can be achieved by adding conda-forge to your channels with:

conda config --add channels conda-forge
conda config --set channel_priority strict

Once the conda-forge channel has been enabled, botocore-stubs can be installed with:

conda install botocore-stubs

It is possible to list all of the versions of botocore-stubs available on your platform with:

conda search botocore-stubs --channel conda-forge

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 boto3-stubs with services you use in your environment: python -m pip install 'boto3-stubs[s3,ec2]'

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

PyCharm

  • Install boto3-stubs-lite with services you use in your environment:
python -m pip install 'boto3-stubs-lite[s3,ec2]'

Both type checking and code completion should work for installed services. Explicit type annotations are required. Use boto3-stubs package instead for implicit type discovery.

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 boto3-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 supports mypy or pyright, everything should work.

mypy

  • Install mypy: python -m pip install mypy
  • Install boto3-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 boto3-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


Download files

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

Source Distribution

types-botocore-1.0.2.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

types_botocore-1.0.2-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file types-botocore-1.0.2.tar.gz.

File metadata

  • Download URL: types-botocore-1.0.2.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.0

File hashes

Hashes for types-botocore-1.0.2.tar.gz
Algorithm Hash digest
SHA256 885d4ceb8d0594b73d08d5feb12b6bbd1ef9e7333531acb80477dc7904f02304
MD5 19427ca9234bbf8190015b761b1744e2
BLAKE2b-256 18e02fc05f11a376ee73b4fa71684e57c599a3b49698fe708ea8347664af2184

See more details on using hashes here.

File details

Details for the file types_botocore-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for types_botocore-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 453fc52a1da8ac162793323d5f0f0dbaa40a3cd9dad915f5a3de79a07fd65674
MD5 f2a5657c7493310b712056cc65c6393e
BLAKE2b-256 bd98f8ce0e9beb5b877969cbb2330f457a8ef066debc486082ee28ad7cb8f9bc

See more details on using hashes here.

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