%global _empty_manifest_terminate_build 0 Name: python-mypy-boto3-cur Version: 1.26.0.post1 Release: 1 Summary: Type annotations for boto3.CostandUsageReportService 1.26.0 service generated with mypy-boto3-builder 7.11.10 License: MIT License URL: https://github.com/youtype/mypy_boto3_builder Source0: https://mirrors.nju.edu.cn/pypi/web/packages/ec/38/fad3d7762533bef06baa24ec757dc02c8746c39b59f0e40d9a931f77dd1a/mypy-boto3-cur-1.26.0.post1.tar.gz BuildArch: noarch Requires: python3-typing-extensions %description # mypy-boto3-cur [![PyPI - mypy-boto3-cur](https://img.shields.io/pypi/v/mypy-boto3-cur.svg?color=blue)](https://pypi.org/project/mypy-boto3-cur) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-cur.svg?color=blue)](https://pypi.org/project/mypy-boto3-cur) [![Docs](https://img.shields.io/readthedocs/mypy-boto3-builder.svg?color=blue)](https://mypy-boto3-builder.readthedocs.io/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-cur?color=blue)](https://pypistats.org/packages/mypy-boto3-cur) ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png) Type annotations for [boto3.CostandUsageReportService 1.26.0](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/cur.html#CostandUsageReportService) service compatible with [VSCode](https://code.visualstudio.com/), [PyCharm](https://www.jetbrains.com/pycharm/), [Emacs](https://www.gnu.org/software/emacs/), [Sublime Text](https://www.sublimetext.com/), [mypy](https://github.com/python/mypy), [pyright](https://github.com/microsoft/pyright) and other tools. Generated by [mypy-boto3-builder 7.11.10](https://github.com/youtype/mypy_boto3_builder). More information can be found on [boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in [mypy-boto3-cur docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cur/). See how it helps to find and fix potential bugs: ![boto3-stubs demo](https://github.com/youtype/mypy_boto3_builder/raw/main/demo.gif) - [mypy-boto3-cur](#mypy-boto3-cur) - [How to install](#how-to-install) - [VSCode extension](#vscode-extension) - [From PyPI with pip](#from-pypi-with-pip) - [How to uninstall](#how-to-uninstall) - [Usage](#usage) - [VSCode](#vscode) - [PyCharm](#pycharm) - [Emacs](#emacs) - [Sublime Text](#sublime-text) - [Other IDEs](#other-ides) - [mypy](#mypy) - [pyright](#pyright) - [Explicit type annotations](#explicit-type-annotations) - [Client annotations](#client-annotations) - [Paginators annotations](#paginators-annotations) - [Literals](#literals) - [Typed dictionaries](#typed-dictionaries) - [How it works](#how-it-works) - [What's new](#what's-new) - [Implemented features](#implemented-features) - [Latest changes](#latest-changes) - [Versioning](#versioning) - [Thank you](#thank-you) - [Documentation](#documentation) - [Support and contributing](#support-and-contributing) ## How to install ### VSCode extension Add [AWS Boto3](https://marketplace.visualstudio.com/items?itemName=Boto3typed.boto3-ide) extension to your VSCode and run `AWS boto3: Quick Start` command. Click `Modify` and select `boto3 common` and `CostandUsageReportService`. ### From PyPI with pip Install `boto3-stubs` for `CostandUsageReportService` service. ```bash # install with boto3 type annotations python -m pip install 'boto3-stubs[cur]' # 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[cur]' # standalone installation python -m pip install mypy-boto3-cur ``` ## How to uninstall ```bash python -m pip uninstall -y mypy-boto3-cur ``` ## Usage ### VSCode - Install [Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python) - Install [Pylance extension](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance) - Set `Pylance` as your Python Language Server - Install `boto3-stubs[cur]` in your environment: ```bash python -m pip install 'boto3-stubs[cur]' ``` Both type checking and code completion should now work. No explicit type annotations required, write your `boto3` code as usual. ### PyCharm Install `boto3-stubs-lite[cur]` in your environment: ```bash python -m pip install 'boto3-stubs-lite[cur]'` ``` Both type checking and code completion should now work. Explicit type annotations **are required**. Use `boto3-stubs` package instead for implicit type discovery. ### Emacs - Install `boto3-stubs` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[cur]' ``` - Install [use-package](https://github.com/jwiegley/use-package), [lsp](https://github.com/emacs-lsp/lsp-mode/), [company](https://github.com/company-mode/company-mode) and [flycheck](https://github.com/flycheck/flycheck) packages - Install [lsp-pyright](https://github.com/emacs-lsp/lsp-pyright) package ```elisp (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` Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ### Sublime Text - Install `boto3-stubs[cur]` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[cur]' ``` - Install [LSP-pyright](https://github.com/sublimelsp/LSP-pyright) package Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ### 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[cur]` in your environment: ```bash python -m pip install 'boto3-stubs[cur]'` ``` Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ### pyright - Install `pyright`: `npm i -g pyright` - Install `boto3-stubs[cur]` in your environment: ```bash python -m pip install 'boto3-stubs[cur]' ``` Optionally, you can install `boto3-stubs` to `typings` folder. Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ## Explicit type annotations ### Client annotations `CostandUsageReportServiceClient` provides annotations for `boto3.client("cur")`. ```python from boto3.session import Session from mypy_boto3_cur import CostandUsageReportServiceClient client: CostandUsageReportServiceClient = Session().client("cur") # now client usage is checked by mypy and IDE should provide code completion ``` ### Paginators annotations `mypy_boto3_cur.paginator` module contains type annotations for all paginators. ```python from boto3.session import Session from mypy_boto3_cur import CostandUsageReportServiceClient from mypy_boto3_cur.paginator import DescribeReportDefinitionsPaginator client: CostandUsageReportServiceClient = Session().client("cur") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs describe_report_definitions_paginator: DescribeReportDefinitionsPaginator = client.get_paginator( "describe_report_definitions" ) ``` ### Literals `mypy_boto3_cur.literals` module contains literals extracted from shapes that can be used in user code for type checking. ```python from mypy_boto3_cur.literals import ( AWSRegionType, AdditionalArtifactType, CompressionFormatType, DescribeReportDefinitionsPaginatorName, ReportFormatType, ReportVersioningType, SchemaElementType, TimeUnitType, CostandUsageReportServiceServiceName, ServiceName, ResourceServiceName, PaginatorName, RegionName, ) def check_value(value: AWSRegionType) -> bool: ... ``` ### Typed dictionaries `mypy_boto3_cur.type_defs` module contains structures and shapes assembled to typed dictionaries for additional type checking. ```python from mypy_boto3_cur.type_defs import ( DeleteReportDefinitionRequestRequestTypeDef, ResponseMetadataTypeDef, PaginatorConfigTypeDef, DescribeReportDefinitionsRequestRequestTypeDef, ReportDefinitionTypeDef, DeleteReportDefinitionResponseTypeDef, DescribeReportDefinitionsRequestDescribeReportDefinitionsPaginateTypeDef, DescribeReportDefinitionsResponseTypeDef, ModifyReportDefinitionRequestRequestTypeDef, PutReportDefinitionRequestRequestTypeDef, ) def get_structure() -> DeleteReportDefinitionRequestRequestTypeDef: return {...} ``` ## How it works Fully automated [mypy-boto3-builder](https://github.com/youtype/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](https://github.com/psf/black) and [isort](https://github.com/PyCQA/isort) for readability. ## What's new ### Implemented features - Fully type annotated `boto3`, `botocore` and `aiobotocore` libraries - `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs` compatibility - `Client`, `ServiceResource`, `Resource`, `Waiter` `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 - Auto discovery of types for `aiobotocore.Session.create_client` calls ### Latest changes Builder changelog can be found in [Releases](https://github.com/youtype/mypy_boto3_builder/releases). ## Versioning `mypy-boto3-cur` version is the same as related `boto3` version and follows [PEP 440](https://www.python.org/dev/peps/pep-0440/) format. ## Thank you - [Allie Fitter](https://github.com/alliefitter) for [boto3-type-annotations](https://pypi.org/project/boto3-type-annotations/), this package is based on top of his work - [black](https://github.com/psf/black) developers for an awesome formatting tool - [Timothy Edmund Crosley](https://github.com/timothycrosley) for [isort](https://github.com/PyCQA/isort) and how flexible it is - [mypy](https://github.com/python/mypy) developers for doing all dirty work for us - [pyright](https://github.com/microsoft/pyright) team for the new era of typed Python ## Documentation All services type annotations can be found in [boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cur/) ## Support and contributing This package is auto-generated. Please reports any bugs or request new features in [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder/issues/) repository. %package -n python3-mypy-boto3-cur Summary: Type annotations for boto3.CostandUsageReportService 1.26.0 service generated with mypy-boto3-builder 7.11.10 Provides: python-mypy-boto3-cur BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-mypy-boto3-cur # mypy-boto3-cur [![PyPI - mypy-boto3-cur](https://img.shields.io/pypi/v/mypy-boto3-cur.svg?color=blue)](https://pypi.org/project/mypy-boto3-cur) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-cur.svg?color=blue)](https://pypi.org/project/mypy-boto3-cur) [![Docs](https://img.shields.io/readthedocs/mypy-boto3-builder.svg?color=blue)](https://mypy-boto3-builder.readthedocs.io/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-cur?color=blue)](https://pypistats.org/packages/mypy-boto3-cur) ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png) Type annotations for [boto3.CostandUsageReportService 1.26.0](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/cur.html#CostandUsageReportService) service compatible with [VSCode](https://code.visualstudio.com/), [PyCharm](https://www.jetbrains.com/pycharm/), [Emacs](https://www.gnu.org/software/emacs/), [Sublime Text](https://www.sublimetext.com/), [mypy](https://github.com/python/mypy), [pyright](https://github.com/microsoft/pyright) and other tools. Generated by [mypy-boto3-builder 7.11.10](https://github.com/youtype/mypy_boto3_builder). More information can be found on [boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in [mypy-boto3-cur docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cur/). See how it helps to find and fix potential bugs: ![boto3-stubs demo](https://github.com/youtype/mypy_boto3_builder/raw/main/demo.gif) - [mypy-boto3-cur](#mypy-boto3-cur) - [How to install](#how-to-install) - [VSCode extension](#vscode-extension) - [From PyPI with pip](#from-pypi-with-pip) - [How to uninstall](#how-to-uninstall) - [Usage](#usage) - [VSCode](#vscode) - [PyCharm](#pycharm) - [Emacs](#emacs) - [Sublime Text](#sublime-text) - [Other IDEs](#other-ides) - [mypy](#mypy) - [pyright](#pyright) - [Explicit type annotations](#explicit-type-annotations) - [Client annotations](#client-annotations) - [Paginators annotations](#paginators-annotations) - [Literals](#literals) - [Typed dictionaries](#typed-dictionaries) - [How it works](#how-it-works) - [What's new](#what's-new) - [Implemented features](#implemented-features) - [Latest changes](#latest-changes) - [Versioning](#versioning) - [Thank you](#thank-you) - [Documentation](#documentation) - [Support and contributing](#support-and-contributing) ## How to install ### VSCode extension Add [AWS Boto3](https://marketplace.visualstudio.com/items?itemName=Boto3typed.boto3-ide) extension to your VSCode and run `AWS boto3: Quick Start` command. Click `Modify` and select `boto3 common` and `CostandUsageReportService`. ### From PyPI with pip Install `boto3-stubs` for `CostandUsageReportService` service. ```bash # install with boto3 type annotations python -m pip install 'boto3-stubs[cur]' # 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[cur]' # standalone installation python -m pip install mypy-boto3-cur ``` ## How to uninstall ```bash python -m pip uninstall -y mypy-boto3-cur ``` ## Usage ### VSCode - Install [Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python) - Install [Pylance extension](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance) - Set `Pylance` as your Python Language Server - Install `boto3-stubs[cur]` in your environment: ```bash python -m pip install 'boto3-stubs[cur]' ``` Both type checking and code completion should now work. No explicit type annotations required, write your `boto3` code as usual. ### PyCharm Install `boto3-stubs-lite[cur]` in your environment: ```bash python -m pip install 'boto3-stubs-lite[cur]'` ``` Both type checking and code completion should now work. Explicit type annotations **are required**. Use `boto3-stubs` package instead for implicit type discovery. ### Emacs - Install `boto3-stubs` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[cur]' ``` - Install [use-package](https://github.com/jwiegley/use-package), [lsp](https://github.com/emacs-lsp/lsp-mode/), [company](https://github.com/company-mode/company-mode) and [flycheck](https://github.com/flycheck/flycheck) packages - Install [lsp-pyright](https://github.com/emacs-lsp/lsp-pyright) package ```elisp (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` Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ### Sublime Text - Install `boto3-stubs[cur]` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[cur]' ``` - Install [LSP-pyright](https://github.com/sublimelsp/LSP-pyright) package Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ### 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[cur]` in your environment: ```bash python -m pip install 'boto3-stubs[cur]'` ``` Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ### pyright - Install `pyright`: `npm i -g pyright` - Install `boto3-stubs[cur]` in your environment: ```bash python -m pip install 'boto3-stubs[cur]' ``` Optionally, you can install `boto3-stubs` to `typings` folder. Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ## Explicit type annotations ### Client annotations `CostandUsageReportServiceClient` provides annotations for `boto3.client("cur")`. ```python from boto3.session import Session from mypy_boto3_cur import CostandUsageReportServiceClient client: CostandUsageReportServiceClient = Session().client("cur") # now client usage is checked by mypy and IDE should provide code completion ``` ### Paginators annotations `mypy_boto3_cur.paginator` module contains type annotations for all paginators. ```python from boto3.session import Session from mypy_boto3_cur import CostandUsageReportServiceClient from mypy_boto3_cur.paginator import DescribeReportDefinitionsPaginator client: CostandUsageReportServiceClient = Session().client("cur") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs describe_report_definitions_paginator: DescribeReportDefinitionsPaginator = client.get_paginator( "describe_report_definitions" ) ``` ### Literals `mypy_boto3_cur.literals` module contains literals extracted from shapes that can be used in user code for type checking. ```python from mypy_boto3_cur.literals import ( AWSRegionType, AdditionalArtifactType, CompressionFormatType, DescribeReportDefinitionsPaginatorName, ReportFormatType, ReportVersioningType, SchemaElementType, TimeUnitType, CostandUsageReportServiceServiceName, ServiceName, ResourceServiceName, PaginatorName, RegionName, ) def check_value(value: AWSRegionType) -> bool: ... ``` ### Typed dictionaries `mypy_boto3_cur.type_defs` module contains structures and shapes assembled to typed dictionaries for additional type checking. ```python from mypy_boto3_cur.type_defs import ( DeleteReportDefinitionRequestRequestTypeDef, ResponseMetadataTypeDef, PaginatorConfigTypeDef, DescribeReportDefinitionsRequestRequestTypeDef, ReportDefinitionTypeDef, DeleteReportDefinitionResponseTypeDef, DescribeReportDefinitionsRequestDescribeReportDefinitionsPaginateTypeDef, DescribeReportDefinitionsResponseTypeDef, ModifyReportDefinitionRequestRequestTypeDef, PutReportDefinitionRequestRequestTypeDef, ) def get_structure() -> DeleteReportDefinitionRequestRequestTypeDef: return {...} ``` ## How it works Fully automated [mypy-boto3-builder](https://github.com/youtype/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](https://github.com/psf/black) and [isort](https://github.com/PyCQA/isort) for readability. ## What's new ### Implemented features - Fully type annotated `boto3`, `botocore` and `aiobotocore` libraries - `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs` compatibility - `Client`, `ServiceResource`, `Resource`, `Waiter` `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 - Auto discovery of types for `aiobotocore.Session.create_client` calls ### Latest changes Builder changelog can be found in [Releases](https://github.com/youtype/mypy_boto3_builder/releases). ## Versioning `mypy-boto3-cur` version is the same as related `boto3` version and follows [PEP 440](https://www.python.org/dev/peps/pep-0440/) format. ## Thank you - [Allie Fitter](https://github.com/alliefitter) for [boto3-type-annotations](https://pypi.org/project/boto3-type-annotations/), this package is based on top of his work - [black](https://github.com/psf/black) developers for an awesome formatting tool - [Timothy Edmund Crosley](https://github.com/timothycrosley) for [isort](https://github.com/PyCQA/isort) and how flexible it is - [mypy](https://github.com/python/mypy) developers for doing all dirty work for us - [pyright](https://github.com/microsoft/pyright) team for the new era of typed Python ## Documentation All services type annotations can be found in [boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cur/) ## Support and contributing This package is auto-generated. Please reports any bugs or request new features in [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder/issues/) repository. %package help Summary: Development documents and examples for mypy-boto3-cur Provides: python3-mypy-boto3-cur-doc %description help # mypy-boto3-cur [![PyPI - mypy-boto3-cur](https://img.shields.io/pypi/v/mypy-boto3-cur.svg?color=blue)](https://pypi.org/project/mypy-boto3-cur) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-cur.svg?color=blue)](https://pypi.org/project/mypy-boto3-cur) [![Docs](https://img.shields.io/readthedocs/mypy-boto3-builder.svg?color=blue)](https://mypy-boto3-builder.readthedocs.io/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-cur?color=blue)](https://pypistats.org/packages/mypy-boto3-cur) ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png) Type annotations for [boto3.CostandUsageReportService 1.26.0](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/cur.html#CostandUsageReportService) service compatible with [VSCode](https://code.visualstudio.com/), [PyCharm](https://www.jetbrains.com/pycharm/), [Emacs](https://www.gnu.org/software/emacs/), [Sublime Text](https://www.sublimetext.com/), [mypy](https://github.com/python/mypy), [pyright](https://github.com/microsoft/pyright) and other tools. Generated by [mypy-boto3-builder 7.11.10](https://github.com/youtype/mypy_boto3_builder). More information can be found on [boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in [mypy-boto3-cur docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cur/). See how it helps to find and fix potential bugs: ![boto3-stubs demo](https://github.com/youtype/mypy_boto3_builder/raw/main/demo.gif) - [mypy-boto3-cur](#mypy-boto3-cur) - [How to install](#how-to-install) - [VSCode extension](#vscode-extension) - [From PyPI with pip](#from-pypi-with-pip) - [How to uninstall](#how-to-uninstall) - [Usage](#usage) - [VSCode](#vscode) - [PyCharm](#pycharm) - [Emacs](#emacs) - [Sublime Text](#sublime-text) - [Other IDEs](#other-ides) - [mypy](#mypy) - [pyright](#pyright) - [Explicit type annotations](#explicit-type-annotations) - [Client annotations](#client-annotations) - [Paginators annotations](#paginators-annotations) - [Literals](#literals) - [Typed dictionaries](#typed-dictionaries) - [How it works](#how-it-works) - [What's new](#what's-new) - [Implemented features](#implemented-features) - [Latest changes](#latest-changes) - [Versioning](#versioning) - [Thank you](#thank-you) - [Documentation](#documentation) - [Support and contributing](#support-and-contributing) ## How to install ### VSCode extension Add [AWS Boto3](https://marketplace.visualstudio.com/items?itemName=Boto3typed.boto3-ide) extension to your VSCode and run `AWS boto3: Quick Start` command. Click `Modify` and select `boto3 common` and `CostandUsageReportService`. ### From PyPI with pip Install `boto3-stubs` for `CostandUsageReportService` service. ```bash # install with boto3 type annotations python -m pip install 'boto3-stubs[cur]' # 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[cur]' # standalone installation python -m pip install mypy-boto3-cur ``` ## How to uninstall ```bash python -m pip uninstall -y mypy-boto3-cur ``` ## Usage ### VSCode - Install [Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python) - Install [Pylance extension](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance) - Set `Pylance` as your Python Language Server - Install `boto3-stubs[cur]` in your environment: ```bash python -m pip install 'boto3-stubs[cur]' ``` Both type checking and code completion should now work. No explicit type annotations required, write your `boto3` code as usual. ### PyCharm Install `boto3-stubs-lite[cur]` in your environment: ```bash python -m pip install 'boto3-stubs-lite[cur]'` ``` Both type checking and code completion should now work. Explicit type annotations **are required**. Use `boto3-stubs` package instead for implicit type discovery. ### Emacs - Install `boto3-stubs` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[cur]' ``` - Install [use-package](https://github.com/jwiegley/use-package), [lsp](https://github.com/emacs-lsp/lsp-mode/), [company](https://github.com/company-mode/company-mode) and [flycheck](https://github.com/flycheck/flycheck) packages - Install [lsp-pyright](https://github.com/emacs-lsp/lsp-pyright) package ```elisp (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` Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ### Sublime Text - Install `boto3-stubs[cur]` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[cur]' ``` - Install [LSP-pyright](https://github.com/sublimelsp/LSP-pyright) package Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ### 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[cur]` in your environment: ```bash python -m pip install 'boto3-stubs[cur]'` ``` Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ### pyright - Install `pyright`: `npm i -g pyright` - Install `boto3-stubs[cur]` in your environment: ```bash python -m pip install 'boto3-stubs[cur]' ``` Optionally, you can install `boto3-stubs` to `typings` folder. Type checking should now work. No explicit type annotations required, write your `boto3` code as usual. ## Explicit type annotations ### Client annotations `CostandUsageReportServiceClient` provides annotations for `boto3.client("cur")`. ```python from boto3.session import Session from mypy_boto3_cur import CostandUsageReportServiceClient client: CostandUsageReportServiceClient = Session().client("cur") # now client usage is checked by mypy and IDE should provide code completion ``` ### Paginators annotations `mypy_boto3_cur.paginator` module contains type annotations for all paginators. ```python from boto3.session import Session from mypy_boto3_cur import CostandUsageReportServiceClient from mypy_boto3_cur.paginator import DescribeReportDefinitionsPaginator client: CostandUsageReportServiceClient = Session().client("cur") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs describe_report_definitions_paginator: DescribeReportDefinitionsPaginator = client.get_paginator( "describe_report_definitions" ) ``` ### Literals `mypy_boto3_cur.literals` module contains literals extracted from shapes that can be used in user code for type checking. ```python from mypy_boto3_cur.literals import ( AWSRegionType, AdditionalArtifactType, CompressionFormatType, DescribeReportDefinitionsPaginatorName, ReportFormatType, ReportVersioningType, SchemaElementType, TimeUnitType, CostandUsageReportServiceServiceName, ServiceName, ResourceServiceName, PaginatorName, RegionName, ) def check_value(value: AWSRegionType) -> bool: ... ``` ### Typed dictionaries `mypy_boto3_cur.type_defs` module contains structures and shapes assembled to typed dictionaries for additional type checking. ```python from mypy_boto3_cur.type_defs import ( DeleteReportDefinitionRequestRequestTypeDef, ResponseMetadataTypeDef, PaginatorConfigTypeDef, DescribeReportDefinitionsRequestRequestTypeDef, ReportDefinitionTypeDef, DeleteReportDefinitionResponseTypeDef, DescribeReportDefinitionsRequestDescribeReportDefinitionsPaginateTypeDef, DescribeReportDefinitionsResponseTypeDef, ModifyReportDefinitionRequestRequestTypeDef, PutReportDefinitionRequestRequestTypeDef, ) def get_structure() -> DeleteReportDefinitionRequestRequestTypeDef: return {...} ``` ## How it works Fully automated [mypy-boto3-builder](https://github.com/youtype/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](https://github.com/psf/black) and [isort](https://github.com/PyCQA/isort) for readability. ## What's new ### Implemented features - Fully type annotated `boto3`, `botocore` and `aiobotocore` libraries - `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs` compatibility - `Client`, `ServiceResource`, `Resource`, `Waiter` `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 - Auto discovery of types for `aiobotocore.Session.create_client` calls ### Latest changes Builder changelog can be found in [Releases](https://github.com/youtype/mypy_boto3_builder/releases). ## Versioning `mypy-boto3-cur` version is the same as related `boto3` version and follows [PEP 440](https://www.python.org/dev/peps/pep-0440/) format. ## Thank you - [Allie Fitter](https://github.com/alliefitter) for [boto3-type-annotations](https://pypi.org/project/boto3-type-annotations/), this package is based on top of his work - [black](https://github.com/psf/black) developers for an awesome formatting tool - [Timothy Edmund Crosley](https://github.com/timothycrosley) for [isort](https://github.com/PyCQA/isort) and how flexible it is - [mypy](https://github.com/python/mypy) developers for doing all dirty work for us - [pyright](https://github.com/microsoft/pyright) team for the new era of typed Python ## Documentation All services type annotations can be found in [boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_cur/) ## Support and contributing This package is auto-generated. Please reports any bugs or request new features in [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder/issues/) repository. %prep %autosetup -n mypy-boto3-cur-1.26.0.post1 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-mypy-boto3-cur -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Sun Apr 23 2023 Python_Bot - 1.26.0.post1-1 - Package Spec generated