%global _empty_manifest_terminate_build 0 Name: python-mypy-boto3-emr Version: 1.26.103 Release: 1 Summary: Type annotations for boto3.EMR 1.26.103 service generated with mypy-boto3-builder 7.14.4 License: MIT License URL: https://github.com/youtype/mypy_boto3_builder Source0: https://mirrors.nju.edu.cn/pypi/web/packages/2d/7f/a94f86e91e391f6a382c01e8f0a92e16db177518a8a7bb18a8df123029b6/mypy-boto3-emr-1.26.103.tar.gz BuildArch: noarch Requires: python3-typing-extensions %description # mypy-boto3-emr [![PyPI - mypy-boto3-emr](https://img.shields.io/pypi/v/mypy-boto3-emr.svg?color=blue)](https://pypi.org/project/mypy-boto3-emr) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-emr.svg?color=blue)](https://pypi.org/project/mypy-boto3-emr) [![Docs](https://img.shields.io/readthedocs/boto3-stubs.svg?color=blue)](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_emr/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-emr?color=blue)](https://pypistats.org/packages/mypy-boto3-emr) ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png) Type annotations for [boto3.EMR 1.26.103](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/emr.html#EMR) 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.14.4](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-emr docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_emr/). 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-emr](#mypy-boto3-emr) - [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) - [Waiters annotations](#waiters-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 `EMR`. ### From PyPI with pip Install `boto3-stubs` for `EMR` service. ```bash # install with boto3 type annotations python -m pip install 'boto3-stubs[emr]' # 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[emr]' # standalone installation python -m pip install mypy-boto3-emr ``` ## How to uninstall ```bash python -m pip uninstall -y mypy-boto3-emr ``` ## 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[emr]` in your environment: ```bash python -m pip install 'boto3-stubs[emr]' ``` 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[emr]` in your environment: ```bash python -m pip install 'boto3-stubs-lite[emr]'` ``` 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[emr]' ``` - 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[emr]` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[emr]' ``` - 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[emr]` in your environment: ```bash python -m pip install 'boto3-stubs[emr]'` ``` 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[emr]` in your environment: ```bash python -m pip install 'boto3-stubs[emr]' ``` 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 `EMRClient` provides annotations for `boto3.client("emr")`. ```python from boto3.session import Session from mypy_boto3_emr import EMRClient client: EMRClient = Session().client("emr") # now client usage is checked by mypy and IDE should provide code completion ``` ### Paginators annotations `mypy_boto3_emr.paginator` module contains type annotations for all paginators. ```python from boto3.session import Session from mypy_boto3_emr import EMRClient from mypy_boto3_emr.paginator import ( ListBootstrapActionsPaginator, ListClustersPaginator, ListInstanceFleetsPaginator, ListInstanceGroupsPaginator, ListInstancesPaginator, ListNotebookExecutionsPaginator, ListSecurityConfigurationsPaginator, ListStepsPaginator, ListStudioSessionMappingsPaginator, ListStudiosPaginator, ) client: EMRClient = Session().client("emr") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs list_bootstrap_actions_paginator: ListBootstrapActionsPaginator = client.get_paginator( "list_bootstrap_actions" ) list_clusters_paginator: ListClustersPaginator = client.get_paginator("list_clusters") list_instance_fleets_paginator: ListInstanceFleetsPaginator = client.get_paginator( "list_instance_fleets" ) list_instance_groups_paginator: ListInstanceGroupsPaginator = client.get_paginator( "list_instance_groups" ) list_instances_paginator: ListInstancesPaginator = client.get_paginator("list_instances") list_notebook_executions_paginator: ListNotebookExecutionsPaginator = client.get_paginator( "list_notebook_executions" ) list_security_configurations_paginator: ListSecurityConfigurationsPaginator = client.get_paginator( "list_security_configurations" ) list_steps_paginator: ListStepsPaginator = client.get_paginator("list_steps") list_studio_session_mappings_paginator: ListStudioSessionMappingsPaginator = client.get_paginator( "list_studio_session_mappings" ) list_studios_paginator: ListStudiosPaginator = client.get_paginator("list_studios") ``` ### Waiters annotations `mypy_boto3_emr.waiter` module contains type annotations for all waiters. ```python from boto3.session import Session from mypy_boto3_emr import EMRClient from mypy_boto3_emr.waiter import ClusterRunningWaiter, ClusterTerminatedWaiter, StepCompleteWaiter client: EMRClient = Session().client("emr") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs cluster_running_waiter: ClusterRunningWaiter = client.get_waiter("cluster_running") cluster_terminated_waiter: ClusterTerminatedWaiter = client.get_waiter("cluster_terminated") step_complete_waiter: StepCompleteWaiter = client.get_waiter("step_complete") ``` ### Literals `mypy_boto3_emr.literals` module contains literals extracted from shapes that can be used in user code for type checking. ```python from mypy_boto3_emr.literals import ( ActionOnFailureType, AdjustmentTypeType, AuthModeType, AutoScalingPolicyStateChangeReasonCodeType, AutoScalingPolicyStateType, CancelStepsRequestStatusType, ClusterRunningWaiterName, ClusterStateChangeReasonCodeType, ClusterStateType, ClusterTerminatedWaiterName, ComparisonOperatorType, ComputeLimitsUnitTypeType, ExecutionEngineTypeType, IdentityTypeType, InstanceCollectionTypeType, InstanceFleetStateChangeReasonCodeType, InstanceFleetStateType, InstanceFleetTypeType, InstanceGroupStateChangeReasonCodeType, InstanceGroupStateType, InstanceGroupTypeType, InstanceRoleTypeType, InstanceStateChangeReasonCodeType, InstanceStateType, JobFlowExecutionStateType, ListBootstrapActionsPaginatorName, ListClustersPaginatorName, ListInstanceFleetsPaginatorName, ListInstanceGroupsPaginatorName, ListInstancesPaginatorName, ListNotebookExecutionsPaginatorName, ListSecurityConfigurationsPaginatorName, ListStepsPaginatorName, ListStudioSessionMappingsPaginatorName, ListStudiosPaginatorName, MarketTypeType, NotebookExecutionStatusType, OnDemandCapacityReservationPreferenceType, OnDemandCapacityReservationUsageStrategyType, OnDemandProvisioningAllocationStrategyType, PlacementGroupStrategyType, ReconfigurationTypeType, RepoUpgradeOnBootType, ScaleDownBehaviorType, SpotProvisioningAllocationStrategyType, SpotProvisioningTimeoutActionType, StatisticType, StepCancellationOptionType, StepCompleteWaiterName, StepExecutionStateType, StepStateChangeReasonCodeType, StepStateType, UnitType, EMRServiceName, ServiceName, ResourceServiceName, PaginatorName, WaiterName, RegionName, ) def check_value(value: ActionOnFailureType) -> bool: ... ``` ### Typed dictionaries `mypy_boto3_emr.type_defs` module contains structures and shapes assembled to typed dictionaries for additional type checking. ```python from mypy_boto3_emr.type_defs import ( ResponseMetadataTypeDef, TagTypeDef, ApplicationTypeDef, ScalingConstraintsTypeDef, AutoScalingPolicyStateChangeReasonTypeDef, AutoTerminationPolicyTypeDef, BlockPublicAccessConfigurationMetadataTypeDef, PortRangeTypeDef, ScriptBootstrapActionConfigTypeDef, CancelStepsInfoTypeDef, CancelStepsInputRequestTypeDef, MetricDimensionTypeDef, ClusterStateChangeReasonTypeDef, ClusterTimelineTypeDef, ErrorDetailTypeDef, Ec2InstanceAttributesTypeDef, KerberosAttributesTypeDef, PlacementGroupConfigTypeDef, CommandTypeDef, ComputeLimitsTypeDef, ConfigurationTypeDef, CreateSecurityConfigurationInputRequestTypeDef, CreateStudioSessionMappingInputRequestTypeDef, UsernamePasswordTypeDef, DeleteSecurityConfigurationInputRequestTypeDef, DeleteStudioInputRequestTypeDef, DeleteStudioSessionMappingInputRequestTypeDef, WaiterConfigTypeDef, DescribeClusterInputRequestTypeDef, DescribeJobFlowsInputRequestTypeDef, DescribeNotebookExecutionInputRequestTypeDef, DescribeReleaseLabelInputRequestTypeDef, OSReleaseTypeDef, SimplifiedApplicationTypeDef, DescribeSecurityConfigurationInputRequestTypeDef, DescribeStepInputRequestTypeDef, DescribeStudioInputRequestTypeDef, VolumeSpecificationTypeDef, EbsVolumeTypeDef, ExecutionEngineConfigTypeDef, FailureDetailsTypeDef, GetAutoTerminationPolicyInputRequestTypeDef, GetClusterSessionCredentialsInputRequestTypeDef, GetManagedScalingPolicyInputRequestTypeDef, GetStudioSessionMappingInputRequestTypeDef, SessionMappingDetailTypeDef, KeyValueTypeDef, HadoopStepConfigTypeDef, SpotProvisioningSpecificationTypeDef, OnDemandResizingSpecificationTypeDef, SpotResizingSpecificationTypeDef, InstanceFleetStateChangeReasonTypeDef, InstanceFleetTimelineTypeDef, InstanceGroupDetailTypeDef, InstanceGroupStateChangeReasonTypeDef, InstanceGroupTimelineTypeDef, InstanceResizePolicyTypeDef, InstanceStateChangeReasonTypeDef, InstanceTimelineTypeDef, JobFlowExecutionStatusDetailTypeDef, PlacementTypeTypeDef, PaginatorConfigTypeDef, ListBootstrapActionsInputRequestTypeDef, ListClustersInputRequestTypeDef, ListInstanceFleetsInputRequestTypeDef, ListInstanceGroupsInputRequestTypeDef, ListInstancesInputRequestTypeDef, ListNotebookExecutionsInputRequestTypeDef, NotebookExecutionSummaryTypeDef, ReleaseLabelFilterTypeDef, ListSecurityConfigurationsInputRequestTypeDef, SecurityConfigurationSummaryTypeDef, ListStepsInputRequestTypeDef, ListStudioSessionMappingsInputRequestTypeDef, SessionMappingSummaryTypeDef, ListStudiosInputRequestTypeDef, StudioSummaryTypeDef, ModifyClusterInputRequestTypeDef, OnDemandCapacityReservationOptionsTypeDef, RemoveAutoScalingPolicyInputRequestTypeDef, RemoveAutoTerminationPolicyInputRequestTypeDef, RemoveManagedScalingPolicyInputRequestTypeDef, RemoveTagsInputRequestTypeDef, SupportedProductConfigTypeDef, SimpleScalingPolicyConfigurationTypeDef, SetTerminationProtectionInputRequestTypeDef, SetVisibleToAllUsersInputRequestTypeDef, StepExecutionStatusDetailTypeDef, StepStateChangeReasonTypeDef, StepTimelineTypeDef, StopNotebookExecutionInputRequestTypeDef, TerminateJobFlowsInputRequestTypeDef, UpdateStudioInputRequestTypeDef, UpdateStudioSessionMappingInputRequestTypeDef, AddInstanceFleetOutputTypeDef, AddInstanceGroupsOutputTypeDef, AddJobFlowStepsOutputTypeDef, CreateSecurityConfigurationOutputTypeDef, CreateStudioOutputTypeDef, DescribeSecurityConfigurationOutputTypeDef, EmptyResponseMetadataTypeDef, ListReleaseLabelsOutputTypeDef, ModifyClusterOutputTypeDef, RunJobFlowOutputTypeDef, StartNotebookExecutionOutputTypeDef, AddTagsInputRequestTypeDef, CreateStudioInputRequestTypeDef, StudioTypeDef, AutoScalingPolicyStatusTypeDef, GetAutoTerminationPolicyOutputTypeDef, PutAutoTerminationPolicyInputRequestTypeDef, BlockPublicAccessConfigurationTypeDef, BootstrapActionConfigTypeDef, CancelStepsOutputTypeDef, CloudWatchAlarmDefinitionTypeDef, ClusterStatusTypeDef, ListBootstrapActionsOutputTypeDef, ManagedScalingPolicyTypeDef, CredentialsTypeDef, DescribeClusterInputClusterRunningWaitTypeDef, DescribeClusterInputClusterTerminatedWaitTypeDef, DescribeStepInputStepCompleteWaitTypeDef, DescribeReleaseLabelOutputTypeDef, EbsBlockDeviceConfigTypeDef, EbsBlockDeviceTypeDef, NotebookExecutionTypeDef, StartNotebookExecutionInputRequestTypeDef, GetStudioSessionMappingOutputTypeDef, HadoopJarStepConfigTypeDef, InstanceFleetResizingSpecificationsTypeDef, InstanceFleetStatusTypeDef, InstanceGroupStatusTypeDef, ShrinkPolicyTypeDef, InstanceStatusTypeDef, JobFlowInstancesDetailTypeDef, ListBootstrapActionsInputListBootstrapActionsPaginateTypeDef, ListClustersInputListClustersPaginateTypeDef, ListInstanceFleetsInputListInstanceFleetsPaginateTypeDef, ListInstanceGroupsInputListInstanceGroupsPaginateTypeDef, ListInstancesInputListInstancesPaginateTypeDef, ListNotebookExecutionsInputListNotebookExecutionsPaginateTypeDef, ListSecurityConfigurationsInputListSecurityConfigurationsPaginateTypeDef, ListStepsInputListStepsPaginateTypeDef, ListStudioSessionMappingsInputListStudioSessionMappingsPaginateTypeDef, ListStudiosInputListStudiosPaginateTypeDef, ListNotebookExecutionsOutputTypeDef, ListReleaseLabelsInputRequestTypeDef, ListSecurityConfigurationsOutputTypeDef, ListStudioSessionMappingsOutputTypeDef, ListStudiosOutputTypeDef, OnDemandProvisioningSpecificationTypeDef, ScalingActionTypeDef, StepStatusTypeDef, DescribeStudioOutputTypeDef, GetBlockPublicAccessConfigurationOutputTypeDef, PutBlockPublicAccessConfigurationInputRequestTypeDef, BootstrapActionDetailTypeDef, ScalingTriggerTypeDef, ClusterSummaryTypeDef, ClusterTypeDef, GetManagedScalingPolicyOutputTypeDef, PutManagedScalingPolicyInputRequestTypeDef, GetClusterSessionCredentialsOutputTypeDef, EbsConfigurationTypeDef, InstanceTypeSpecificationTypeDef, DescribeNotebookExecutionOutputTypeDef, StepConfigTypeDef, InstanceFleetModifyConfigTypeDef, InstanceGroupModifyConfigTypeDef, InstanceTypeDef, InstanceFleetProvisioningSpecificationsTypeDef, StepSummaryTypeDef, StepTypeDef, ScalingRuleTypeDef, ListClustersOutputTypeDef, DescribeClusterOutputTypeDef, InstanceTypeConfigTypeDef, AddJobFlowStepsInputRequestTypeDef, StepDetailTypeDef, ModifyInstanceFleetInputRequestTypeDef, ModifyInstanceGroupsInputRequestTypeDef, ListInstancesOutputTypeDef, InstanceFleetTypeDef, ListStepsOutputTypeDef, DescribeStepOutputTypeDef, AutoScalingPolicyDescriptionTypeDef, AutoScalingPolicyTypeDef, InstanceFleetConfigTypeDef, JobFlowDetailTypeDef, ListInstanceFleetsOutputTypeDef, InstanceGroupTypeDef, PutAutoScalingPolicyOutputTypeDef, InstanceGroupConfigTypeDef, PutAutoScalingPolicyInputRequestTypeDef, AddInstanceFleetInputRequestTypeDef, DescribeJobFlowsOutputTypeDef, ListInstanceGroupsOutputTypeDef, AddInstanceGroupsInputRequestTypeDef, JobFlowInstancesConfigTypeDef, RunJobFlowInputRequestTypeDef, ) def get_structure() -> ResponseMetadataTypeDef: 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 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 `botocore` schemas. - 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`, `aiobotocore` and `aioboto3` 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.resource` calls - Auto discovery of types for `session.client` and `session.resource` 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-emr` 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_emr/) ## 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-emr Summary: Type annotations for boto3.EMR 1.26.103 service generated with mypy-boto3-builder 7.14.4 Provides: python-mypy-boto3-emr BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-mypy-boto3-emr # mypy-boto3-emr [![PyPI - mypy-boto3-emr](https://img.shields.io/pypi/v/mypy-boto3-emr.svg?color=blue)](https://pypi.org/project/mypy-boto3-emr) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-emr.svg?color=blue)](https://pypi.org/project/mypy-boto3-emr) [![Docs](https://img.shields.io/readthedocs/boto3-stubs.svg?color=blue)](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_emr/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-emr?color=blue)](https://pypistats.org/packages/mypy-boto3-emr) ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png) Type annotations for [boto3.EMR 1.26.103](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/emr.html#EMR) 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.14.4](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-emr docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_emr/). 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-emr](#mypy-boto3-emr) - [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) - [Waiters annotations](#waiters-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 `EMR`. ### From PyPI with pip Install `boto3-stubs` for `EMR` service. ```bash # install with boto3 type annotations python -m pip install 'boto3-stubs[emr]' # 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[emr]' # standalone installation python -m pip install mypy-boto3-emr ``` ## How to uninstall ```bash python -m pip uninstall -y mypy-boto3-emr ``` ## 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[emr]` in your environment: ```bash python -m pip install 'boto3-stubs[emr]' ``` 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[emr]` in your environment: ```bash python -m pip install 'boto3-stubs-lite[emr]'` ``` 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[emr]' ``` - 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[emr]` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[emr]' ``` - 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[emr]` in your environment: ```bash python -m pip install 'boto3-stubs[emr]'` ``` 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[emr]` in your environment: ```bash python -m pip install 'boto3-stubs[emr]' ``` 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 `EMRClient` provides annotations for `boto3.client("emr")`. ```python from boto3.session import Session from mypy_boto3_emr import EMRClient client: EMRClient = Session().client("emr") # now client usage is checked by mypy and IDE should provide code completion ``` ### Paginators annotations `mypy_boto3_emr.paginator` module contains type annotations for all paginators. ```python from boto3.session import Session from mypy_boto3_emr import EMRClient from mypy_boto3_emr.paginator import ( ListBootstrapActionsPaginator, ListClustersPaginator, ListInstanceFleetsPaginator, ListInstanceGroupsPaginator, ListInstancesPaginator, ListNotebookExecutionsPaginator, ListSecurityConfigurationsPaginator, ListStepsPaginator, ListStudioSessionMappingsPaginator, ListStudiosPaginator, ) client: EMRClient = Session().client("emr") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs list_bootstrap_actions_paginator: ListBootstrapActionsPaginator = client.get_paginator( "list_bootstrap_actions" ) list_clusters_paginator: ListClustersPaginator = client.get_paginator("list_clusters") list_instance_fleets_paginator: ListInstanceFleetsPaginator = client.get_paginator( "list_instance_fleets" ) list_instance_groups_paginator: ListInstanceGroupsPaginator = client.get_paginator( "list_instance_groups" ) list_instances_paginator: ListInstancesPaginator = client.get_paginator("list_instances") list_notebook_executions_paginator: ListNotebookExecutionsPaginator = client.get_paginator( "list_notebook_executions" ) list_security_configurations_paginator: ListSecurityConfigurationsPaginator = client.get_paginator( "list_security_configurations" ) list_steps_paginator: ListStepsPaginator = client.get_paginator("list_steps") list_studio_session_mappings_paginator: ListStudioSessionMappingsPaginator = client.get_paginator( "list_studio_session_mappings" ) list_studios_paginator: ListStudiosPaginator = client.get_paginator("list_studios") ``` ### Waiters annotations `mypy_boto3_emr.waiter` module contains type annotations for all waiters. ```python from boto3.session import Session from mypy_boto3_emr import EMRClient from mypy_boto3_emr.waiter import ClusterRunningWaiter, ClusterTerminatedWaiter, StepCompleteWaiter client: EMRClient = Session().client("emr") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs cluster_running_waiter: ClusterRunningWaiter = client.get_waiter("cluster_running") cluster_terminated_waiter: ClusterTerminatedWaiter = client.get_waiter("cluster_terminated") step_complete_waiter: StepCompleteWaiter = client.get_waiter("step_complete") ``` ### Literals `mypy_boto3_emr.literals` module contains literals extracted from shapes that can be used in user code for type checking. ```python from mypy_boto3_emr.literals import ( ActionOnFailureType, AdjustmentTypeType, AuthModeType, AutoScalingPolicyStateChangeReasonCodeType, AutoScalingPolicyStateType, CancelStepsRequestStatusType, ClusterRunningWaiterName, ClusterStateChangeReasonCodeType, ClusterStateType, ClusterTerminatedWaiterName, ComparisonOperatorType, ComputeLimitsUnitTypeType, ExecutionEngineTypeType, IdentityTypeType, InstanceCollectionTypeType, InstanceFleetStateChangeReasonCodeType, InstanceFleetStateType, InstanceFleetTypeType, InstanceGroupStateChangeReasonCodeType, InstanceGroupStateType, InstanceGroupTypeType, InstanceRoleTypeType, InstanceStateChangeReasonCodeType, InstanceStateType, JobFlowExecutionStateType, ListBootstrapActionsPaginatorName, ListClustersPaginatorName, ListInstanceFleetsPaginatorName, ListInstanceGroupsPaginatorName, ListInstancesPaginatorName, ListNotebookExecutionsPaginatorName, ListSecurityConfigurationsPaginatorName, ListStepsPaginatorName, ListStudioSessionMappingsPaginatorName, ListStudiosPaginatorName, MarketTypeType, NotebookExecutionStatusType, OnDemandCapacityReservationPreferenceType, OnDemandCapacityReservationUsageStrategyType, OnDemandProvisioningAllocationStrategyType, PlacementGroupStrategyType, ReconfigurationTypeType, RepoUpgradeOnBootType, ScaleDownBehaviorType, SpotProvisioningAllocationStrategyType, SpotProvisioningTimeoutActionType, StatisticType, StepCancellationOptionType, StepCompleteWaiterName, StepExecutionStateType, StepStateChangeReasonCodeType, StepStateType, UnitType, EMRServiceName, ServiceName, ResourceServiceName, PaginatorName, WaiterName, RegionName, ) def check_value(value: ActionOnFailureType) -> bool: ... ``` ### Typed dictionaries `mypy_boto3_emr.type_defs` module contains structures and shapes assembled to typed dictionaries for additional type checking. ```python from mypy_boto3_emr.type_defs import ( ResponseMetadataTypeDef, TagTypeDef, ApplicationTypeDef, ScalingConstraintsTypeDef, AutoScalingPolicyStateChangeReasonTypeDef, AutoTerminationPolicyTypeDef, BlockPublicAccessConfigurationMetadataTypeDef, PortRangeTypeDef, ScriptBootstrapActionConfigTypeDef, CancelStepsInfoTypeDef, CancelStepsInputRequestTypeDef, MetricDimensionTypeDef, ClusterStateChangeReasonTypeDef, ClusterTimelineTypeDef, ErrorDetailTypeDef, Ec2InstanceAttributesTypeDef, KerberosAttributesTypeDef, PlacementGroupConfigTypeDef, CommandTypeDef, ComputeLimitsTypeDef, ConfigurationTypeDef, CreateSecurityConfigurationInputRequestTypeDef, CreateStudioSessionMappingInputRequestTypeDef, UsernamePasswordTypeDef, DeleteSecurityConfigurationInputRequestTypeDef, DeleteStudioInputRequestTypeDef, DeleteStudioSessionMappingInputRequestTypeDef, WaiterConfigTypeDef, DescribeClusterInputRequestTypeDef, DescribeJobFlowsInputRequestTypeDef, DescribeNotebookExecutionInputRequestTypeDef, DescribeReleaseLabelInputRequestTypeDef, OSReleaseTypeDef, SimplifiedApplicationTypeDef, DescribeSecurityConfigurationInputRequestTypeDef, DescribeStepInputRequestTypeDef, DescribeStudioInputRequestTypeDef, VolumeSpecificationTypeDef, EbsVolumeTypeDef, ExecutionEngineConfigTypeDef, FailureDetailsTypeDef, GetAutoTerminationPolicyInputRequestTypeDef, GetClusterSessionCredentialsInputRequestTypeDef, GetManagedScalingPolicyInputRequestTypeDef, GetStudioSessionMappingInputRequestTypeDef, SessionMappingDetailTypeDef, KeyValueTypeDef, HadoopStepConfigTypeDef, SpotProvisioningSpecificationTypeDef, OnDemandResizingSpecificationTypeDef, SpotResizingSpecificationTypeDef, InstanceFleetStateChangeReasonTypeDef, InstanceFleetTimelineTypeDef, InstanceGroupDetailTypeDef, InstanceGroupStateChangeReasonTypeDef, InstanceGroupTimelineTypeDef, InstanceResizePolicyTypeDef, InstanceStateChangeReasonTypeDef, InstanceTimelineTypeDef, JobFlowExecutionStatusDetailTypeDef, PlacementTypeTypeDef, PaginatorConfigTypeDef, ListBootstrapActionsInputRequestTypeDef, ListClustersInputRequestTypeDef, ListInstanceFleetsInputRequestTypeDef, ListInstanceGroupsInputRequestTypeDef, ListInstancesInputRequestTypeDef, ListNotebookExecutionsInputRequestTypeDef, NotebookExecutionSummaryTypeDef, ReleaseLabelFilterTypeDef, ListSecurityConfigurationsInputRequestTypeDef, SecurityConfigurationSummaryTypeDef, ListStepsInputRequestTypeDef, ListStudioSessionMappingsInputRequestTypeDef, SessionMappingSummaryTypeDef, ListStudiosInputRequestTypeDef, StudioSummaryTypeDef, ModifyClusterInputRequestTypeDef, OnDemandCapacityReservationOptionsTypeDef, RemoveAutoScalingPolicyInputRequestTypeDef, RemoveAutoTerminationPolicyInputRequestTypeDef, RemoveManagedScalingPolicyInputRequestTypeDef, RemoveTagsInputRequestTypeDef, SupportedProductConfigTypeDef, SimpleScalingPolicyConfigurationTypeDef, SetTerminationProtectionInputRequestTypeDef, SetVisibleToAllUsersInputRequestTypeDef, StepExecutionStatusDetailTypeDef, StepStateChangeReasonTypeDef, StepTimelineTypeDef, StopNotebookExecutionInputRequestTypeDef, TerminateJobFlowsInputRequestTypeDef, UpdateStudioInputRequestTypeDef, UpdateStudioSessionMappingInputRequestTypeDef, AddInstanceFleetOutputTypeDef, AddInstanceGroupsOutputTypeDef, AddJobFlowStepsOutputTypeDef, CreateSecurityConfigurationOutputTypeDef, CreateStudioOutputTypeDef, DescribeSecurityConfigurationOutputTypeDef, EmptyResponseMetadataTypeDef, ListReleaseLabelsOutputTypeDef, ModifyClusterOutputTypeDef, RunJobFlowOutputTypeDef, StartNotebookExecutionOutputTypeDef, AddTagsInputRequestTypeDef, CreateStudioInputRequestTypeDef, StudioTypeDef, AutoScalingPolicyStatusTypeDef, GetAutoTerminationPolicyOutputTypeDef, PutAutoTerminationPolicyInputRequestTypeDef, BlockPublicAccessConfigurationTypeDef, BootstrapActionConfigTypeDef, CancelStepsOutputTypeDef, CloudWatchAlarmDefinitionTypeDef, ClusterStatusTypeDef, ListBootstrapActionsOutputTypeDef, ManagedScalingPolicyTypeDef, CredentialsTypeDef, DescribeClusterInputClusterRunningWaitTypeDef, DescribeClusterInputClusterTerminatedWaitTypeDef, DescribeStepInputStepCompleteWaitTypeDef, DescribeReleaseLabelOutputTypeDef, EbsBlockDeviceConfigTypeDef, EbsBlockDeviceTypeDef, NotebookExecutionTypeDef, StartNotebookExecutionInputRequestTypeDef, GetStudioSessionMappingOutputTypeDef, HadoopJarStepConfigTypeDef, InstanceFleetResizingSpecificationsTypeDef, InstanceFleetStatusTypeDef, InstanceGroupStatusTypeDef, ShrinkPolicyTypeDef, InstanceStatusTypeDef, JobFlowInstancesDetailTypeDef, ListBootstrapActionsInputListBootstrapActionsPaginateTypeDef, ListClustersInputListClustersPaginateTypeDef, ListInstanceFleetsInputListInstanceFleetsPaginateTypeDef, ListInstanceGroupsInputListInstanceGroupsPaginateTypeDef, ListInstancesInputListInstancesPaginateTypeDef, ListNotebookExecutionsInputListNotebookExecutionsPaginateTypeDef, ListSecurityConfigurationsInputListSecurityConfigurationsPaginateTypeDef, ListStepsInputListStepsPaginateTypeDef, ListStudioSessionMappingsInputListStudioSessionMappingsPaginateTypeDef, ListStudiosInputListStudiosPaginateTypeDef, ListNotebookExecutionsOutputTypeDef, ListReleaseLabelsInputRequestTypeDef, ListSecurityConfigurationsOutputTypeDef, ListStudioSessionMappingsOutputTypeDef, ListStudiosOutputTypeDef, OnDemandProvisioningSpecificationTypeDef, ScalingActionTypeDef, StepStatusTypeDef, DescribeStudioOutputTypeDef, GetBlockPublicAccessConfigurationOutputTypeDef, PutBlockPublicAccessConfigurationInputRequestTypeDef, BootstrapActionDetailTypeDef, ScalingTriggerTypeDef, ClusterSummaryTypeDef, ClusterTypeDef, GetManagedScalingPolicyOutputTypeDef, PutManagedScalingPolicyInputRequestTypeDef, GetClusterSessionCredentialsOutputTypeDef, EbsConfigurationTypeDef, InstanceTypeSpecificationTypeDef, DescribeNotebookExecutionOutputTypeDef, StepConfigTypeDef, InstanceFleetModifyConfigTypeDef, InstanceGroupModifyConfigTypeDef, InstanceTypeDef, InstanceFleetProvisioningSpecificationsTypeDef, StepSummaryTypeDef, StepTypeDef, ScalingRuleTypeDef, ListClustersOutputTypeDef, DescribeClusterOutputTypeDef, InstanceTypeConfigTypeDef, AddJobFlowStepsInputRequestTypeDef, StepDetailTypeDef, ModifyInstanceFleetInputRequestTypeDef, ModifyInstanceGroupsInputRequestTypeDef, ListInstancesOutputTypeDef, InstanceFleetTypeDef, ListStepsOutputTypeDef, DescribeStepOutputTypeDef, AutoScalingPolicyDescriptionTypeDef, AutoScalingPolicyTypeDef, InstanceFleetConfigTypeDef, JobFlowDetailTypeDef, ListInstanceFleetsOutputTypeDef, InstanceGroupTypeDef, PutAutoScalingPolicyOutputTypeDef, InstanceGroupConfigTypeDef, PutAutoScalingPolicyInputRequestTypeDef, AddInstanceFleetInputRequestTypeDef, DescribeJobFlowsOutputTypeDef, ListInstanceGroupsOutputTypeDef, AddInstanceGroupsInputRequestTypeDef, JobFlowInstancesConfigTypeDef, RunJobFlowInputRequestTypeDef, ) def get_structure() -> ResponseMetadataTypeDef: 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 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 `botocore` schemas. - 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`, `aiobotocore` and `aioboto3` 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.resource` calls - Auto discovery of types for `session.client` and `session.resource` 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-emr` 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_emr/) ## 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-emr Provides: python3-mypy-boto3-emr-doc %description help # mypy-boto3-emr [![PyPI - mypy-boto3-emr](https://img.shields.io/pypi/v/mypy-boto3-emr.svg?color=blue)](https://pypi.org/project/mypy-boto3-emr) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-emr.svg?color=blue)](https://pypi.org/project/mypy-boto3-emr) [![Docs](https://img.shields.io/readthedocs/boto3-stubs.svg?color=blue)](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_emr/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-emr?color=blue)](https://pypistats.org/packages/mypy-boto3-emr) ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png) Type annotations for [boto3.EMR 1.26.103](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/emr.html#EMR) 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.14.4](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-emr docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_emr/). 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-emr](#mypy-boto3-emr) - [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) - [Waiters annotations](#waiters-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 `EMR`. ### From PyPI with pip Install `boto3-stubs` for `EMR` service. ```bash # install with boto3 type annotations python -m pip install 'boto3-stubs[emr]' # 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[emr]' # standalone installation python -m pip install mypy-boto3-emr ``` ## How to uninstall ```bash python -m pip uninstall -y mypy-boto3-emr ``` ## 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[emr]` in your environment: ```bash python -m pip install 'boto3-stubs[emr]' ``` 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[emr]` in your environment: ```bash python -m pip install 'boto3-stubs-lite[emr]'` ``` 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[emr]' ``` - 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[emr]` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[emr]' ``` - 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[emr]` in your environment: ```bash python -m pip install 'boto3-stubs[emr]'` ``` 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[emr]` in your environment: ```bash python -m pip install 'boto3-stubs[emr]' ``` 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 `EMRClient` provides annotations for `boto3.client("emr")`. ```python from boto3.session import Session from mypy_boto3_emr import EMRClient client: EMRClient = Session().client("emr") # now client usage is checked by mypy and IDE should provide code completion ``` ### Paginators annotations `mypy_boto3_emr.paginator` module contains type annotations for all paginators. ```python from boto3.session import Session from mypy_boto3_emr import EMRClient from mypy_boto3_emr.paginator import ( ListBootstrapActionsPaginator, ListClustersPaginator, ListInstanceFleetsPaginator, ListInstanceGroupsPaginator, ListInstancesPaginator, ListNotebookExecutionsPaginator, ListSecurityConfigurationsPaginator, ListStepsPaginator, ListStudioSessionMappingsPaginator, ListStudiosPaginator, ) client: EMRClient = Session().client("emr") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs list_bootstrap_actions_paginator: ListBootstrapActionsPaginator = client.get_paginator( "list_bootstrap_actions" ) list_clusters_paginator: ListClustersPaginator = client.get_paginator("list_clusters") list_instance_fleets_paginator: ListInstanceFleetsPaginator = client.get_paginator( "list_instance_fleets" ) list_instance_groups_paginator: ListInstanceGroupsPaginator = client.get_paginator( "list_instance_groups" ) list_instances_paginator: ListInstancesPaginator = client.get_paginator("list_instances") list_notebook_executions_paginator: ListNotebookExecutionsPaginator = client.get_paginator( "list_notebook_executions" ) list_security_configurations_paginator: ListSecurityConfigurationsPaginator = client.get_paginator( "list_security_configurations" ) list_steps_paginator: ListStepsPaginator = client.get_paginator("list_steps") list_studio_session_mappings_paginator: ListStudioSessionMappingsPaginator = client.get_paginator( "list_studio_session_mappings" ) list_studios_paginator: ListStudiosPaginator = client.get_paginator("list_studios") ``` ### Waiters annotations `mypy_boto3_emr.waiter` module contains type annotations for all waiters. ```python from boto3.session import Session from mypy_boto3_emr import EMRClient from mypy_boto3_emr.waiter import ClusterRunningWaiter, ClusterTerminatedWaiter, StepCompleteWaiter client: EMRClient = Session().client("emr") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs cluster_running_waiter: ClusterRunningWaiter = client.get_waiter("cluster_running") cluster_terminated_waiter: ClusterTerminatedWaiter = client.get_waiter("cluster_terminated") step_complete_waiter: StepCompleteWaiter = client.get_waiter("step_complete") ``` ### Literals `mypy_boto3_emr.literals` module contains literals extracted from shapes that can be used in user code for type checking. ```python from mypy_boto3_emr.literals import ( ActionOnFailureType, AdjustmentTypeType, AuthModeType, AutoScalingPolicyStateChangeReasonCodeType, AutoScalingPolicyStateType, CancelStepsRequestStatusType, ClusterRunningWaiterName, ClusterStateChangeReasonCodeType, ClusterStateType, ClusterTerminatedWaiterName, ComparisonOperatorType, ComputeLimitsUnitTypeType, ExecutionEngineTypeType, IdentityTypeType, InstanceCollectionTypeType, InstanceFleetStateChangeReasonCodeType, InstanceFleetStateType, InstanceFleetTypeType, InstanceGroupStateChangeReasonCodeType, InstanceGroupStateType, InstanceGroupTypeType, InstanceRoleTypeType, InstanceStateChangeReasonCodeType, InstanceStateType, JobFlowExecutionStateType, ListBootstrapActionsPaginatorName, ListClustersPaginatorName, ListInstanceFleetsPaginatorName, ListInstanceGroupsPaginatorName, ListInstancesPaginatorName, ListNotebookExecutionsPaginatorName, ListSecurityConfigurationsPaginatorName, ListStepsPaginatorName, ListStudioSessionMappingsPaginatorName, ListStudiosPaginatorName, MarketTypeType, NotebookExecutionStatusType, OnDemandCapacityReservationPreferenceType, OnDemandCapacityReservationUsageStrategyType, OnDemandProvisioningAllocationStrategyType, PlacementGroupStrategyType, ReconfigurationTypeType, RepoUpgradeOnBootType, ScaleDownBehaviorType, SpotProvisioningAllocationStrategyType, SpotProvisioningTimeoutActionType, StatisticType, StepCancellationOptionType, StepCompleteWaiterName, StepExecutionStateType, StepStateChangeReasonCodeType, StepStateType, UnitType, EMRServiceName, ServiceName, ResourceServiceName, PaginatorName, WaiterName, RegionName, ) def check_value(value: ActionOnFailureType) -> bool: ... ``` ### Typed dictionaries `mypy_boto3_emr.type_defs` module contains structures and shapes assembled to typed dictionaries for additional type checking. ```python from mypy_boto3_emr.type_defs import ( ResponseMetadataTypeDef, TagTypeDef, ApplicationTypeDef, ScalingConstraintsTypeDef, AutoScalingPolicyStateChangeReasonTypeDef, AutoTerminationPolicyTypeDef, BlockPublicAccessConfigurationMetadataTypeDef, PortRangeTypeDef, ScriptBootstrapActionConfigTypeDef, CancelStepsInfoTypeDef, CancelStepsInputRequestTypeDef, MetricDimensionTypeDef, ClusterStateChangeReasonTypeDef, ClusterTimelineTypeDef, ErrorDetailTypeDef, Ec2InstanceAttributesTypeDef, KerberosAttributesTypeDef, PlacementGroupConfigTypeDef, CommandTypeDef, ComputeLimitsTypeDef, ConfigurationTypeDef, CreateSecurityConfigurationInputRequestTypeDef, CreateStudioSessionMappingInputRequestTypeDef, UsernamePasswordTypeDef, DeleteSecurityConfigurationInputRequestTypeDef, DeleteStudioInputRequestTypeDef, DeleteStudioSessionMappingInputRequestTypeDef, WaiterConfigTypeDef, DescribeClusterInputRequestTypeDef, DescribeJobFlowsInputRequestTypeDef, DescribeNotebookExecutionInputRequestTypeDef, DescribeReleaseLabelInputRequestTypeDef, OSReleaseTypeDef, SimplifiedApplicationTypeDef, DescribeSecurityConfigurationInputRequestTypeDef, DescribeStepInputRequestTypeDef, DescribeStudioInputRequestTypeDef, VolumeSpecificationTypeDef, EbsVolumeTypeDef, ExecutionEngineConfigTypeDef, FailureDetailsTypeDef, GetAutoTerminationPolicyInputRequestTypeDef, GetClusterSessionCredentialsInputRequestTypeDef, GetManagedScalingPolicyInputRequestTypeDef, GetStudioSessionMappingInputRequestTypeDef, SessionMappingDetailTypeDef, KeyValueTypeDef, HadoopStepConfigTypeDef, SpotProvisioningSpecificationTypeDef, OnDemandResizingSpecificationTypeDef, SpotResizingSpecificationTypeDef, InstanceFleetStateChangeReasonTypeDef, InstanceFleetTimelineTypeDef, InstanceGroupDetailTypeDef, InstanceGroupStateChangeReasonTypeDef, InstanceGroupTimelineTypeDef, InstanceResizePolicyTypeDef, InstanceStateChangeReasonTypeDef, InstanceTimelineTypeDef, JobFlowExecutionStatusDetailTypeDef, PlacementTypeTypeDef, PaginatorConfigTypeDef, ListBootstrapActionsInputRequestTypeDef, ListClustersInputRequestTypeDef, ListInstanceFleetsInputRequestTypeDef, ListInstanceGroupsInputRequestTypeDef, ListInstancesInputRequestTypeDef, ListNotebookExecutionsInputRequestTypeDef, NotebookExecutionSummaryTypeDef, ReleaseLabelFilterTypeDef, ListSecurityConfigurationsInputRequestTypeDef, SecurityConfigurationSummaryTypeDef, ListStepsInputRequestTypeDef, ListStudioSessionMappingsInputRequestTypeDef, SessionMappingSummaryTypeDef, ListStudiosInputRequestTypeDef, StudioSummaryTypeDef, ModifyClusterInputRequestTypeDef, OnDemandCapacityReservationOptionsTypeDef, RemoveAutoScalingPolicyInputRequestTypeDef, RemoveAutoTerminationPolicyInputRequestTypeDef, RemoveManagedScalingPolicyInputRequestTypeDef, RemoveTagsInputRequestTypeDef, SupportedProductConfigTypeDef, SimpleScalingPolicyConfigurationTypeDef, SetTerminationProtectionInputRequestTypeDef, SetVisibleToAllUsersInputRequestTypeDef, StepExecutionStatusDetailTypeDef, StepStateChangeReasonTypeDef, StepTimelineTypeDef, StopNotebookExecutionInputRequestTypeDef, TerminateJobFlowsInputRequestTypeDef, UpdateStudioInputRequestTypeDef, UpdateStudioSessionMappingInputRequestTypeDef, AddInstanceFleetOutputTypeDef, AddInstanceGroupsOutputTypeDef, AddJobFlowStepsOutputTypeDef, CreateSecurityConfigurationOutputTypeDef, CreateStudioOutputTypeDef, DescribeSecurityConfigurationOutputTypeDef, EmptyResponseMetadataTypeDef, ListReleaseLabelsOutputTypeDef, ModifyClusterOutputTypeDef, RunJobFlowOutputTypeDef, StartNotebookExecutionOutputTypeDef, AddTagsInputRequestTypeDef, CreateStudioInputRequestTypeDef, StudioTypeDef, AutoScalingPolicyStatusTypeDef, GetAutoTerminationPolicyOutputTypeDef, PutAutoTerminationPolicyInputRequestTypeDef, BlockPublicAccessConfigurationTypeDef, BootstrapActionConfigTypeDef, CancelStepsOutputTypeDef, CloudWatchAlarmDefinitionTypeDef, ClusterStatusTypeDef, ListBootstrapActionsOutputTypeDef, ManagedScalingPolicyTypeDef, CredentialsTypeDef, DescribeClusterInputClusterRunningWaitTypeDef, DescribeClusterInputClusterTerminatedWaitTypeDef, DescribeStepInputStepCompleteWaitTypeDef, DescribeReleaseLabelOutputTypeDef, EbsBlockDeviceConfigTypeDef, EbsBlockDeviceTypeDef, NotebookExecutionTypeDef, StartNotebookExecutionInputRequestTypeDef, GetStudioSessionMappingOutputTypeDef, HadoopJarStepConfigTypeDef, InstanceFleetResizingSpecificationsTypeDef, InstanceFleetStatusTypeDef, InstanceGroupStatusTypeDef, ShrinkPolicyTypeDef, InstanceStatusTypeDef, JobFlowInstancesDetailTypeDef, ListBootstrapActionsInputListBootstrapActionsPaginateTypeDef, ListClustersInputListClustersPaginateTypeDef, ListInstanceFleetsInputListInstanceFleetsPaginateTypeDef, ListInstanceGroupsInputListInstanceGroupsPaginateTypeDef, ListInstancesInputListInstancesPaginateTypeDef, ListNotebookExecutionsInputListNotebookExecutionsPaginateTypeDef, ListSecurityConfigurationsInputListSecurityConfigurationsPaginateTypeDef, ListStepsInputListStepsPaginateTypeDef, ListStudioSessionMappingsInputListStudioSessionMappingsPaginateTypeDef, ListStudiosInputListStudiosPaginateTypeDef, ListNotebookExecutionsOutputTypeDef, ListReleaseLabelsInputRequestTypeDef, ListSecurityConfigurationsOutputTypeDef, ListStudioSessionMappingsOutputTypeDef, ListStudiosOutputTypeDef, OnDemandProvisioningSpecificationTypeDef, ScalingActionTypeDef, StepStatusTypeDef, DescribeStudioOutputTypeDef, GetBlockPublicAccessConfigurationOutputTypeDef, PutBlockPublicAccessConfigurationInputRequestTypeDef, BootstrapActionDetailTypeDef, ScalingTriggerTypeDef, ClusterSummaryTypeDef, ClusterTypeDef, GetManagedScalingPolicyOutputTypeDef, PutManagedScalingPolicyInputRequestTypeDef, GetClusterSessionCredentialsOutputTypeDef, EbsConfigurationTypeDef, InstanceTypeSpecificationTypeDef, DescribeNotebookExecutionOutputTypeDef, StepConfigTypeDef, InstanceFleetModifyConfigTypeDef, InstanceGroupModifyConfigTypeDef, InstanceTypeDef, InstanceFleetProvisioningSpecificationsTypeDef, StepSummaryTypeDef, StepTypeDef, ScalingRuleTypeDef, ListClustersOutputTypeDef, DescribeClusterOutputTypeDef, InstanceTypeConfigTypeDef, AddJobFlowStepsInputRequestTypeDef, StepDetailTypeDef, ModifyInstanceFleetInputRequestTypeDef, ModifyInstanceGroupsInputRequestTypeDef, ListInstancesOutputTypeDef, InstanceFleetTypeDef, ListStepsOutputTypeDef, DescribeStepOutputTypeDef, AutoScalingPolicyDescriptionTypeDef, AutoScalingPolicyTypeDef, InstanceFleetConfigTypeDef, JobFlowDetailTypeDef, ListInstanceFleetsOutputTypeDef, InstanceGroupTypeDef, PutAutoScalingPolicyOutputTypeDef, InstanceGroupConfigTypeDef, PutAutoScalingPolicyInputRequestTypeDef, AddInstanceFleetInputRequestTypeDef, DescribeJobFlowsOutputTypeDef, ListInstanceGroupsOutputTypeDef, AddInstanceGroupsInputRequestTypeDef, JobFlowInstancesConfigTypeDef, RunJobFlowInputRequestTypeDef, ) def get_structure() -> ResponseMetadataTypeDef: 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 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 `botocore` schemas. - 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`, `aiobotocore` and `aioboto3` 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.resource` calls - Auto discovery of types for `session.client` and `session.resource` 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-emr` 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_emr/) ## 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-emr-1.26.103 %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-emr -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue Apr 11 2023 Python_Bot - 1.26.103-1 - Package Spec generated