%global _empty_manifest_terminate_build 0 Name: python-mypy-boto3-ecs Version: 1.26.110 Release: 1 Summary: Type annotations for boto3.ECS 1.26.110 service generated with mypy-boto3-builder 7.14.5 License: MIT License URL: https://github.com/youtype/mypy_boto3_builder Source0: https://mirrors.nju.edu.cn/pypi/web/packages/13/89/461fc2e3e16d83d7809c8db71b685ce01a2290abd5e228fbd93c0f54f63c/mypy-boto3-ecs-1.26.110.tar.gz BuildArch: noarch Requires: python3-typing-extensions %description # mypy-boto3-ecs [![PyPI - mypy-boto3-ecs](https://img.shields.io/pypi/v/mypy-boto3-ecs.svg?color=blue)](https://pypi.org/project/mypy-boto3-ecs) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-ecs.svg?color=blue)](https://pypi.org/project/mypy-boto3-ecs) [![Docs](https://img.shields.io/readthedocs/boto3-stubs.svg?color=blue)](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ecs/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-ecs?color=blue)](https://pypistats.org/packages/mypy-boto3-ecs) ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png) Type annotations for [boto3.ECS 1.26.110](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ecs.html#ECS) 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.5](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-ecs docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ecs/). 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-ecs](#mypy-boto3-ecs) - [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 `ECS`. ### From PyPI with pip Install `boto3-stubs` for `ECS` service. ```bash # install with boto3 type annotations python -m pip install 'boto3-stubs[ecs]' # 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[ecs]' # standalone installation python -m pip install mypy-boto3-ecs ``` ## How to uninstall ```bash python -m pip uninstall -y mypy-boto3-ecs ``` ## 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[ecs]` in your environment: ```bash python -m pip install 'boto3-stubs[ecs]' ``` 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[ecs]` in your environment: ```bash python -m pip install 'boto3-stubs-lite[ecs]'` ``` 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[ecs]' ``` - 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[ecs]` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[ecs]' ``` - 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[ecs]` in your environment: ```bash python -m pip install 'boto3-stubs[ecs]'` ``` 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[ecs]` in your environment: ```bash python -m pip install 'boto3-stubs[ecs]' ``` 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 `ECSClient` provides annotations for `boto3.client("ecs")`. ```python from boto3.session import Session from mypy_boto3_ecs import ECSClient client: ECSClient = Session().client("ecs") # now client usage is checked by mypy and IDE should provide code completion ``` ### Paginators annotations `mypy_boto3_ecs.paginator` module contains type annotations for all paginators. ```python from boto3.session import Session from mypy_boto3_ecs import ECSClient from mypy_boto3_ecs.paginator import ( ListAccountSettingsPaginator, ListAttributesPaginator, ListClustersPaginator, ListContainerInstancesPaginator, ListServicesPaginator, ListServicesByNamespacePaginator, ListTaskDefinitionFamiliesPaginator, ListTaskDefinitionsPaginator, ListTasksPaginator, ) client: ECSClient = Session().client("ecs") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs list_account_settings_paginator: ListAccountSettingsPaginator = client.get_paginator( "list_account_settings" ) list_attributes_paginator: ListAttributesPaginator = client.get_paginator("list_attributes") list_clusters_paginator: ListClustersPaginator = client.get_paginator("list_clusters") list_container_instances_paginator: ListContainerInstancesPaginator = client.get_paginator( "list_container_instances" ) list_services_paginator: ListServicesPaginator = client.get_paginator("list_services") list_services_by_namespace_paginator: ListServicesByNamespacePaginator = client.get_paginator( "list_services_by_namespace" ) list_task_definition_families_paginator: ListTaskDefinitionFamiliesPaginator = client.get_paginator( "list_task_definition_families" ) list_task_definitions_paginator: ListTaskDefinitionsPaginator = client.get_paginator( "list_task_definitions" ) list_tasks_paginator: ListTasksPaginator = client.get_paginator("list_tasks") ``` ### Waiters annotations `mypy_boto3_ecs.waiter` module contains type annotations for all waiters. ```python from boto3.session import Session from mypy_boto3_ecs import ECSClient from mypy_boto3_ecs.waiter import ( ServicesInactiveWaiter, ServicesStableWaiter, TasksRunningWaiter, TasksStoppedWaiter, ) client: ECSClient = Session().client("ecs") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs services_inactive_waiter: ServicesInactiveWaiter = client.get_waiter("services_inactive") services_stable_waiter: ServicesStableWaiter = client.get_waiter("services_stable") tasks_running_waiter: TasksRunningWaiter = client.get_waiter("tasks_running") tasks_stopped_waiter: TasksStoppedWaiter = client.get_waiter("tasks_stopped") ``` ### Literals `mypy_boto3_ecs.literals` module contains literals extracted from shapes that can be used in user code for type checking. ```python from mypy_boto3_ecs.literals import ( AgentUpdateStatusType, ApplicationProtocolType, AssignPublicIpType, CPUArchitectureType, CapacityProviderFieldType, CapacityProviderStatusType, CapacityProviderUpdateStatusType, ClusterFieldType, ClusterSettingNameType, CompatibilityType, ConnectivityType, ContainerConditionType, ContainerInstanceFieldType, ContainerInstanceStatusType, DeploymentControllerTypeType, DeploymentRolloutStateType, DesiredStatusType, DeviceCgroupPermissionType, EFSAuthorizationConfigIAMType, EFSTransitEncryptionType, EnvironmentFileTypeType, ExecuteCommandLoggingType, FirelensConfigurationTypeType, HealthStatusType, InstanceHealthCheckStateType, InstanceHealthCheckTypeType, IpcModeType, LaunchTypeType, ListAccountSettingsPaginatorName, ListAttributesPaginatorName, ListClustersPaginatorName, ListContainerInstancesPaginatorName, ListServicesByNamespacePaginatorName, ListServicesPaginatorName, ListTaskDefinitionFamiliesPaginatorName, ListTaskDefinitionsPaginatorName, ListTasksPaginatorName, LogDriverType, ManagedAgentNameType, ManagedScalingStatusType, ManagedTerminationProtectionType, NetworkModeType, OSFamilyType, PidModeType, PlacementConstraintTypeType, PlacementStrategyTypeType, PlatformDeviceTypeType, PropagateTagsType, ProxyConfigurationTypeType, ResourceTypeType, ScaleUnitType, SchedulingStrategyType, ScopeType, ServiceFieldType, ServicesInactiveWaiterName, ServicesStableWaiterName, SettingNameType, SortOrderType, StabilityStatusType, TargetTypeType, TaskDefinitionFamilyStatusType, TaskDefinitionFieldType, TaskDefinitionPlacementConstraintTypeType, TaskDefinitionStatusType, TaskFieldType, TaskSetFieldType, TaskStopCodeType, TasksRunningWaiterName, TasksStoppedWaiterName, TransportProtocolType, UlimitNameType, ECSServiceName, ServiceName, ResourceServiceName, PaginatorName, WaiterName, RegionName, ) def check_value(value: AgentUpdateStatusType) -> bool: ... ``` ### Typed dictionaries `mypy_boto3_ecs.type_defs` module contains structures and shapes assembled to typed dictionaries for additional type checking. ```python from mypy_boto3_ecs.type_defs import ( AttachmentStateChangeTypeDef, KeyValuePairTypeDef, AttributeTypeDef, ManagedScalingTypeDef, AwsVpcConfigurationTypeDef, CapacityProviderStrategyItemTypeDef, TagTypeDef, ClusterServiceConnectDefaultsRequestTypeDef, ClusterServiceConnectDefaultsTypeDef, ClusterSettingTypeDef, ContainerDependencyTypeDef, EnvironmentFileTypeDef, FirelensConfigurationTypeDef, HealthCheckTypeDef, HostEntryTypeDef, MountPointTypeDef, PortMappingTypeDef, RepositoryCredentialsTypeDef, ResourceRequirementTypeDef, SecretTypeDef, SystemControlTypeDef, UlimitTypeDef, VolumeFromTypeDef, InstanceHealthCheckResultTypeDef, ResourceTypeDef, VersionInfoTypeDef, NetworkBindingTypeDef, ManagedAgentTypeDef, NetworkInterfaceTypeDef, ResponseMetadataTypeDef, DeploymentControllerTypeDef, LoadBalancerTypeDef, PlacementConstraintTypeDef, PlacementStrategyTypeDef, ServiceRegistryTypeDef, ScaleTypeDef, DeleteAccountSettingRequestRequestTypeDef, SettingTypeDef, DeleteCapacityProviderRequestRequestTypeDef, DeleteClusterRequestRequestTypeDef, DeleteServiceRequestRequestTypeDef, DeleteTaskDefinitionsRequestRequestTypeDef, FailureTypeDef, DeleteTaskSetRequestRequestTypeDef, DeploymentAlarmsTypeDef, DeploymentCircuitBreakerTypeDef, ServiceConnectServiceResourceTypeDef, DeregisterContainerInstanceRequestRequestTypeDef, DeregisterTaskDefinitionRequestRequestTypeDef, DescribeCapacityProvidersRequestRequestTypeDef, DescribeClustersRequestRequestTypeDef, DescribeContainerInstancesRequestRequestTypeDef, DescribeServicesRequestRequestTypeDef, WaiterConfigTypeDef, DescribeTaskDefinitionRequestRequestTypeDef, DescribeTaskSetsRequestRequestTypeDef, DescribeTasksRequestRequestTypeDef, DeviceTypeDef, DiscoverPollEndpointRequestRequestTypeDef, DockerVolumeConfigurationTypeDef, EFSAuthorizationConfigTypeDef, EphemeralStorageTypeDef, ExecuteCommandLogConfigurationTypeDef, ExecuteCommandRequestRequestTypeDef, SessionTypeDef, FSxWindowsFileServerAuthorizationConfigTypeDef, GetTaskProtectionRequestRequestTypeDef, ProtectedTaskTypeDef, HostVolumePropertiesTypeDef, InferenceAcceleratorOverrideTypeDef, InferenceAcceleratorTypeDef, KernelCapabilitiesTypeDef, TmpfsTypeDef, PaginatorConfigTypeDef, ListAccountSettingsRequestRequestTypeDef, ListAttributesRequestRequestTypeDef, ListClustersRequestRequestTypeDef, ListContainerInstancesRequestRequestTypeDef, ListServicesByNamespaceRequestRequestTypeDef, ListServicesRequestRequestTypeDef, ListTagsForResourceRequestRequestTypeDef, ListTaskDefinitionFamiliesRequestRequestTypeDef, ListTaskDefinitionsRequestRequestTypeDef, ListTasksRequestRequestTypeDef, ManagedAgentStateChangeTypeDef, PlatformDeviceTypeDef, PutAccountSettingDefaultRequestRequestTypeDef, PutAccountSettingRequestRequestTypeDef, RuntimePlatformTypeDef, TaskDefinitionPlacementConstraintTypeDef, ServiceConnectClientAliasTypeDef, ServiceEventTypeDef, StopTaskRequestRequestTypeDef, UntagResourceRequestRequestTypeDef, UpdateContainerAgentRequestRequestTypeDef, UpdateContainerInstancesStateRequestRequestTypeDef, UpdateServicePrimaryTaskSetRequestRequestTypeDef, UpdateTaskProtectionRequestRequestTypeDef, SubmitAttachmentStateChangesRequestRequestTypeDef, AttachmentTypeDef, ProxyConfigurationTypeDef, DeleteAttributesRequestRequestTypeDef, PutAttributesRequestRequestTypeDef, AutoScalingGroupProviderTypeDef, AutoScalingGroupProviderUpdateTypeDef, NetworkConfigurationTypeDef, PutClusterCapacityProvidersRequestRequestTypeDef, TagResourceRequestRequestTypeDef, UpdateClusterSettingsRequestRequestTypeDef, ContainerOverrideTypeDef, LogConfigurationTypeDef, ContainerInstanceHealthStatusTypeDef, ContainerStateChangeTypeDef, SubmitContainerStateChangeRequestRequestTypeDef, ContainerTypeDef, DeleteAttributesResponseTypeDef, DiscoverPollEndpointResponseTypeDef, ListAttributesResponseTypeDef, ListClustersResponseTypeDef, ListContainerInstancesResponseTypeDef, ListServicesByNamespaceResponseTypeDef, ListServicesResponseTypeDef, ListTagsForResourceResponseTypeDef, ListTaskDefinitionFamiliesResponseTypeDef, ListTaskDefinitionsResponseTypeDef, ListTasksResponseTypeDef, PutAttributesResponseTypeDef, SubmitAttachmentStateChangesResponseTypeDef, SubmitContainerStateChangeResponseTypeDef, SubmitTaskStateChangeResponseTypeDef, UpdateTaskSetRequestRequestTypeDef, DeleteAccountSettingResponseTypeDef, ListAccountSettingsResponseTypeDef, PutAccountSettingDefaultResponseTypeDef, PutAccountSettingResponseTypeDef, DeploymentConfigurationTypeDef, DescribeServicesRequestServicesInactiveWaitTypeDef, DescribeServicesRequestServicesStableWaitTypeDef, DescribeTasksRequestTasksRunningWaitTypeDef, DescribeTasksRequestTasksStoppedWaitTypeDef, EFSVolumeConfigurationTypeDef, ExecuteCommandConfigurationTypeDef, ExecuteCommandResponseTypeDef, FSxWindowsFileServerVolumeConfigurationTypeDef, GetTaskProtectionResponseTypeDef, UpdateTaskProtectionResponseTypeDef, LinuxParametersTypeDef, ListAccountSettingsRequestListAccountSettingsPaginateTypeDef, ListAttributesRequestListAttributesPaginateTypeDef, ListClustersRequestListClustersPaginateTypeDef, ListContainerInstancesRequestListContainerInstancesPaginateTypeDef, ListServicesByNamespaceRequestListServicesByNamespacePaginateTypeDef, ListServicesRequestListServicesPaginateTypeDef, ListTaskDefinitionFamiliesRequestListTaskDefinitionFamiliesPaginateTypeDef, ListTaskDefinitionsRequestListTaskDefinitionsPaginateTypeDef, ListTasksRequestListTasksPaginateTypeDef, RegisterContainerInstanceRequestRequestTypeDef, ServiceConnectServiceTypeDef, CapacityProviderTypeDef, CreateCapacityProviderRequestRequestTypeDef, UpdateCapacityProviderRequestRequestTypeDef, CreateTaskSetRequestRequestTypeDef, TaskSetTypeDef, TaskOverrideTypeDef, ContainerInstanceTypeDef, SubmitTaskStateChangeRequestRequestTypeDef, ClusterConfigurationTypeDef, VolumeTypeDef, ContainerDefinitionTypeDef, ServiceConnectConfigurationTypeDef, CreateCapacityProviderResponseTypeDef, DeleteCapacityProviderResponseTypeDef, DescribeCapacityProvidersResponseTypeDef, UpdateCapacityProviderResponseTypeDef, CreateTaskSetResponseTypeDef, DeleteTaskSetResponseTypeDef, DescribeTaskSetsResponseTypeDef, UpdateServicePrimaryTaskSetResponseTypeDef, UpdateTaskSetResponseTypeDef, RunTaskRequestRequestTypeDef, StartTaskRequestRequestTypeDef, TaskTypeDef, DeregisterContainerInstanceResponseTypeDef, DescribeContainerInstancesResponseTypeDef, RegisterContainerInstanceResponseTypeDef, UpdateContainerAgentResponseTypeDef, UpdateContainerInstancesStateResponseTypeDef, ClusterTypeDef, CreateClusterRequestRequestTypeDef, UpdateClusterRequestRequestTypeDef, RegisterTaskDefinitionRequestRequestTypeDef, TaskDefinitionTypeDef, CreateServiceRequestRequestTypeDef, DeploymentTypeDef, UpdateServiceRequestRequestTypeDef, DescribeTasksResponseTypeDef, RunTaskResponseTypeDef, StartTaskResponseTypeDef, StopTaskResponseTypeDef, CreateClusterResponseTypeDef, DeleteClusterResponseTypeDef, DescribeClustersResponseTypeDef, PutClusterCapacityProvidersResponseTypeDef, UpdateClusterResponseTypeDef, UpdateClusterSettingsResponseTypeDef, DeleteTaskDefinitionsResponseTypeDef, DeregisterTaskDefinitionResponseTypeDef, DescribeTaskDefinitionResponseTypeDef, RegisterTaskDefinitionResponseTypeDef, ServiceTypeDef, CreateServiceResponseTypeDef, DeleteServiceResponseTypeDef, DescribeServicesResponseTypeDef, UpdateServiceResponseTypeDef, ) def get_structure() -> AttachmentStateChangeTypeDef: 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-ecs` 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_ecs/) ## 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-ecs Summary: Type annotations for boto3.ECS 1.26.110 service generated with mypy-boto3-builder 7.14.5 Provides: python-mypy-boto3-ecs BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-mypy-boto3-ecs # mypy-boto3-ecs [![PyPI - mypy-boto3-ecs](https://img.shields.io/pypi/v/mypy-boto3-ecs.svg?color=blue)](https://pypi.org/project/mypy-boto3-ecs) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-ecs.svg?color=blue)](https://pypi.org/project/mypy-boto3-ecs) [![Docs](https://img.shields.io/readthedocs/boto3-stubs.svg?color=blue)](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ecs/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-ecs?color=blue)](https://pypistats.org/packages/mypy-boto3-ecs) ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png) Type annotations for [boto3.ECS 1.26.110](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ecs.html#ECS) 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.5](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-ecs docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ecs/). 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-ecs](#mypy-boto3-ecs) - [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 `ECS`. ### From PyPI with pip Install `boto3-stubs` for `ECS` service. ```bash # install with boto3 type annotations python -m pip install 'boto3-stubs[ecs]' # 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[ecs]' # standalone installation python -m pip install mypy-boto3-ecs ``` ## How to uninstall ```bash python -m pip uninstall -y mypy-boto3-ecs ``` ## 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[ecs]` in your environment: ```bash python -m pip install 'boto3-stubs[ecs]' ``` 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[ecs]` in your environment: ```bash python -m pip install 'boto3-stubs-lite[ecs]'` ``` 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[ecs]' ``` - 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[ecs]` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[ecs]' ``` - 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[ecs]` in your environment: ```bash python -m pip install 'boto3-stubs[ecs]'` ``` 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[ecs]` in your environment: ```bash python -m pip install 'boto3-stubs[ecs]' ``` 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 `ECSClient` provides annotations for `boto3.client("ecs")`. ```python from boto3.session import Session from mypy_boto3_ecs import ECSClient client: ECSClient = Session().client("ecs") # now client usage is checked by mypy and IDE should provide code completion ``` ### Paginators annotations `mypy_boto3_ecs.paginator` module contains type annotations for all paginators. ```python from boto3.session import Session from mypy_boto3_ecs import ECSClient from mypy_boto3_ecs.paginator import ( ListAccountSettingsPaginator, ListAttributesPaginator, ListClustersPaginator, ListContainerInstancesPaginator, ListServicesPaginator, ListServicesByNamespacePaginator, ListTaskDefinitionFamiliesPaginator, ListTaskDefinitionsPaginator, ListTasksPaginator, ) client: ECSClient = Session().client("ecs") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs list_account_settings_paginator: ListAccountSettingsPaginator = client.get_paginator( "list_account_settings" ) list_attributes_paginator: ListAttributesPaginator = client.get_paginator("list_attributes") list_clusters_paginator: ListClustersPaginator = client.get_paginator("list_clusters") list_container_instances_paginator: ListContainerInstancesPaginator = client.get_paginator( "list_container_instances" ) list_services_paginator: ListServicesPaginator = client.get_paginator("list_services") list_services_by_namespace_paginator: ListServicesByNamespacePaginator = client.get_paginator( "list_services_by_namespace" ) list_task_definition_families_paginator: ListTaskDefinitionFamiliesPaginator = client.get_paginator( "list_task_definition_families" ) list_task_definitions_paginator: ListTaskDefinitionsPaginator = client.get_paginator( "list_task_definitions" ) list_tasks_paginator: ListTasksPaginator = client.get_paginator("list_tasks") ``` ### Waiters annotations `mypy_boto3_ecs.waiter` module contains type annotations for all waiters. ```python from boto3.session import Session from mypy_boto3_ecs import ECSClient from mypy_boto3_ecs.waiter import ( ServicesInactiveWaiter, ServicesStableWaiter, TasksRunningWaiter, TasksStoppedWaiter, ) client: ECSClient = Session().client("ecs") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs services_inactive_waiter: ServicesInactiveWaiter = client.get_waiter("services_inactive") services_stable_waiter: ServicesStableWaiter = client.get_waiter("services_stable") tasks_running_waiter: TasksRunningWaiter = client.get_waiter("tasks_running") tasks_stopped_waiter: TasksStoppedWaiter = client.get_waiter("tasks_stopped") ``` ### Literals `mypy_boto3_ecs.literals` module contains literals extracted from shapes that can be used in user code for type checking. ```python from mypy_boto3_ecs.literals import ( AgentUpdateStatusType, ApplicationProtocolType, AssignPublicIpType, CPUArchitectureType, CapacityProviderFieldType, CapacityProviderStatusType, CapacityProviderUpdateStatusType, ClusterFieldType, ClusterSettingNameType, CompatibilityType, ConnectivityType, ContainerConditionType, ContainerInstanceFieldType, ContainerInstanceStatusType, DeploymentControllerTypeType, DeploymentRolloutStateType, DesiredStatusType, DeviceCgroupPermissionType, EFSAuthorizationConfigIAMType, EFSTransitEncryptionType, EnvironmentFileTypeType, ExecuteCommandLoggingType, FirelensConfigurationTypeType, HealthStatusType, InstanceHealthCheckStateType, InstanceHealthCheckTypeType, IpcModeType, LaunchTypeType, ListAccountSettingsPaginatorName, ListAttributesPaginatorName, ListClustersPaginatorName, ListContainerInstancesPaginatorName, ListServicesByNamespacePaginatorName, ListServicesPaginatorName, ListTaskDefinitionFamiliesPaginatorName, ListTaskDefinitionsPaginatorName, ListTasksPaginatorName, LogDriverType, ManagedAgentNameType, ManagedScalingStatusType, ManagedTerminationProtectionType, NetworkModeType, OSFamilyType, PidModeType, PlacementConstraintTypeType, PlacementStrategyTypeType, PlatformDeviceTypeType, PropagateTagsType, ProxyConfigurationTypeType, ResourceTypeType, ScaleUnitType, SchedulingStrategyType, ScopeType, ServiceFieldType, ServicesInactiveWaiterName, ServicesStableWaiterName, SettingNameType, SortOrderType, StabilityStatusType, TargetTypeType, TaskDefinitionFamilyStatusType, TaskDefinitionFieldType, TaskDefinitionPlacementConstraintTypeType, TaskDefinitionStatusType, TaskFieldType, TaskSetFieldType, TaskStopCodeType, TasksRunningWaiterName, TasksStoppedWaiterName, TransportProtocolType, UlimitNameType, ECSServiceName, ServiceName, ResourceServiceName, PaginatorName, WaiterName, RegionName, ) def check_value(value: AgentUpdateStatusType) -> bool: ... ``` ### Typed dictionaries `mypy_boto3_ecs.type_defs` module contains structures and shapes assembled to typed dictionaries for additional type checking. ```python from mypy_boto3_ecs.type_defs import ( AttachmentStateChangeTypeDef, KeyValuePairTypeDef, AttributeTypeDef, ManagedScalingTypeDef, AwsVpcConfigurationTypeDef, CapacityProviderStrategyItemTypeDef, TagTypeDef, ClusterServiceConnectDefaultsRequestTypeDef, ClusterServiceConnectDefaultsTypeDef, ClusterSettingTypeDef, ContainerDependencyTypeDef, EnvironmentFileTypeDef, FirelensConfigurationTypeDef, HealthCheckTypeDef, HostEntryTypeDef, MountPointTypeDef, PortMappingTypeDef, RepositoryCredentialsTypeDef, ResourceRequirementTypeDef, SecretTypeDef, SystemControlTypeDef, UlimitTypeDef, VolumeFromTypeDef, InstanceHealthCheckResultTypeDef, ResourceTypeDef, VersionInfoTypeDef, NetworkBindingTypeDef, ManagedAgentTypeDef, NetworkInterfaceTypeDef, ResponseMetadataTypeDef, DeploymentControllerTypeDef, LoadBalancerTypeDef, PlacementConstraintTypeDef, PlacementStrategyTypeDef, ServiceRegistryTypeDef, ScaleTypeDef, DeleteAccountSettingRequestRequestTypeDef, SettingTypeDef, DeleteCapacityProviderRequestRequestTypeDef, DeleteClusterRequestRequestTypeDef, DeleteServiceRequestRequestTypeDef, DeleteTaskDefinitionsRequestRequestTypeDef, FailureTypeDef, DeleteTaskSetRequestRequestTypeDef, DeploymentAlarmsTypeDef, DeploymentCircuitBreakerTypeDef, ServiceConnectServiceResourceTypeDef, DeregisterContainerInstanceRequestRequestTypeDef, DeregisterTaskDefinitionRequestRequestTypeDef, DescribeCapacityProvidersRequestRequestTypeDef, DescribeClustersRequestRequestTypeDef, DescribeContainerInstancesRequestRequestTypeDef, DescribeServicesRequestRequestTypeDef, WaiterConfigTypeDef, DescribeTaskDefinitionRequestRequestTypeDef, DescribeTaskSetsRequestRequestTypeDef, DescribeTasksRequestRequestTypeDef, DeviceTypeDef, DiscoverPollEndpointRequestRequestTypeDef, DockerVolumeConfigurationTypeDef, EFSAuthorizationConfigTypeDef, EphemeralStorageTypeDef, ExecuteCommandLogConfigurationTypeDef, ExecuteCommandRequestRequestTypeDef, SessionTypeDef, FSxWindowsFileServerAuthorizationConfigTypeDef, GetTaskProtectionRequestRequestTypeDef, ProtectedTaskTypeDef, HostVolumePropertiesTypeDef, InferenceAcceleratorOverrideTypeDef, InferenceAcceleratorTypeDef, KernelCapabilitiesTypeDef, TmpfsTypeDef, PaginatorConfigTypeDef, ListAccountSettingsRequestRequestTypeDef, ListAttributesRequestRequestTypeDef, ListClustersRequestRequestTypeDef, ListContainerInstancesRequestRequestTypeDef, ListServicesByNamespaceRequestRequestTypeDef, ListServicesRequestRequestTypeDef, ListTagsForResourceRequestRequestTypeDef, ListTaskDefinitionFamiliesRequestRequestTypeDef, ListTaskDefinitionsRequestRequestTypeDef, ListTasksRequestRequestTypeDef, ManagedAgentStateChangeTypeDef, PlatformDeviceTypeDef, PutAccountSettingDefaultRequestRequestTypeDef, PutAccountSettingRequestRequestTypeDef, RuntimePlatformTypeDef, TaskDefinitionPlacementConstraintTypeDef, ServiceConnectClientAliasTypeDef, ServiceEventTypeDef, StopTaskRequestRequestTypeDef, UntagResourceRequestRequestTypeDef, UpdateContainerAgentRequestRequestTypeDef, UpdateContainerInstancesStateRequestRequestTypeDef, UpdateServicePrimaryTaskSetRequestRequestTypeDef, UpdateTaskProtectionRequestRequestTypeDef, SubmitAttachmentStateChangesRequestRequestTypeDef, AttachmentTypeDef, ProxyConfigurationTypeDef, DeleteAttributesRequestRequestTypeDef, PutAttributesRequestRequestTypeDef, AutoScalingGroupProviderTypeDef, AutoScalingGroupProviderUpdateTypeDef, NetworkConfigurationTypeDef, PutClusterCapacityProvidersRequestRequestTypeDef, TagResourceRequestRequestTypeDef, UpdateClusterSettingsRequestRequestTypeDef, ContainerOverrideTypeDef, LogConfigurationTypeDef, ContainerInstanceHealthStatusTypeDef, ContainerStateChangeTypeDef, SubmitContainerStateChangeRequestRequestTypeDef, ContainerTypeDef, DeleteAttributesResponseTypeDef, DiscoverPollEndpointResponseTypeDef, ListAttributesResponseTypeDef, ListClustersResponseTypeDef, ListContainerInstancesResponseTypeDef, ListServicesByNamespaceResponseTypeDef, ListServicesResponseTypeDef, ListTagsForResourceResponseTypeDef, ListTaskDefinitionFamiliesResponseTypeDef, ListTaskDefinitionsResponseTypeDef, ListTasksResponseTypeDef, PutAttributesResponseTypeDef, SubmitAttachmentStateChangesResponseTypeDef, SubmitContainerStateChangeResponseTypeDef, SubmitTaskStateChangeResponseTypeDef, UpdateTaskSetRequestRequestTypeDef, DeleteAccountSettingResponseTypeDef, ListAccountSettingsResponseTypeDef, PutAccountSettingDefaultResponseTypeDef, PutAccountSettingResponseTypeDef, DeploymentConfigurationTypeDef, DescribeServicesRequestServicesInactiveWaitTypeDef, DescribeServicesRequestServicesStableWaitTypeDef, DescribeTasksRequestTasksRunningWaitTypeDef, DescribeTasksRequestTasksStoppedWaitTypeDef, EFSVolumeConfigurationTypeDef, ExecuteCommandConfigurationTypeDef, ExecuteCommandResponseTypeDef, FSxWindowsFileServerVolumeConfigurationTypeDef, GetTaskProtectionResponseTypeDef, UpdateTaskProtectionResponseTypeDef, LinuxParametersTypeDef, ListAccountSettingsRequestListAccountSettingsPaginateTypeDef, ListAttributesRequestListAttributesPaginateTypeDef, ListClustersRequestListClustersPaginateTypeDef, ListContainerInstancesRequestListContainerInstancesPaginateTypeDef, ListServicesByNamespaceRequestListServicesByNamespacePaginateTypeDef, ListServicesRequestListServicesPaginateTypeDef, ListTaskDefinitionFamiliesRequestListTaskDefinitionFamiliesPaginateTypeDef, ListTaskDefinitionsRequestListTaskDefinitionsPaginateTypeDef, ListTasksRequestListTasksPaginateTypeDef, RegisterContainerInstanceRequestRequestTypeDef, ServiceConnectServiceTypeDef, CapacityProviderTypeDef, CreateCapacityProviderRequestRequestTypeDef, UpdateCapacityProviderRequestRequestTypeDef, CreateTaskSetRequestRequestTypeDef, TaskSetTypeDef, TaskOverrideTypeDef, ContainerInstanceTypeDef, SubmitTaskStateChangeRequestRequestTypeDef, ClusterConfigurationTypeDef, VolumeTypeDef, ContainerDefinitionTypeDef, ServiceConnectConfigurationTypeDef, CreateCapacityProviderResponseTypeDef, DeleteCapacityProviderResponseTypeDef, DescribeCapacityProvidersResponseTypeDef, UpdateCapacityProviderResponseTypeDef, CreateTaskSetResponseTypeDef, DeleteTaskSetResponseTypeDef, DescribeTaskSetsResponseTypeDef, UpdateServicePrimaryTaskSetResponseTypeDef, UpdateTaskSetResponseTypeDef, RunTaskRequestRequestTypeDef, StartTaskRequestRequestTypeDef, TaskTypeDef, DeregisterContainerInstanceResponseTypeDef, DescribeContainerInstancesResponseTypeDef, RegisterContainerInstanceResponseTypeDef, UpdateContainerAgentResponseTypeDef, UpdateContainerInstancesStateResponseTypeDef, ClusterTypeDef, CreateClusterRequestRequestTypeDef, UpdateClusterRequestRequestTypeDef, RegisterTaskDefinitionRequestRequestTypeDef, TaskDefinitionTypeDef, CreateServiceRequestRequestTypeDef, DeploymentTypeDef, UpdateServiceRequestRequestTypeDef, DescribeTasksResponseTypeDef, RunTaskResponseTypeDef, StartTaskResponseTypeDef, StopTaskResponseTypeDef, CreateClusterResponseTypeDef, DeleteClusterResponseTypeDef, DescribeClustersResponseTypeDef, PutClusterCapacityProvidersResponseTypeDef, UpdateClusterResponseTypeDef, UpdateClusterSettingsResponseTypeDef, DeleteTaskDefinitionsResponseTypeDef, DeregisterTaskDefinitionResponseTypeDef, DescribeTaskDefinitionResponseTypeDef, RegisterTaskDefinitionResponseTypeDef, ServiceTypeDef, CreateServiceResponseTypeDef, DeleteServiceResponseTypeDef, DescribeServicesResponseTypeDef, UpdateServiceResponseTypeDef, ) def get_structure() -> AttachmentStateChangeTypeDef: 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-ecs` 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_ecs/) ## 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-ecs Provides: python3-mypy-boto3-ecs-doc %description help # mypy-boto3-ecs [![PyPI - mypy-boto3-ecs](https://img.shields.io/pypi/v/mypy-boto3-ecs.svg?color=blue)](https://pypi.org/project/mypy-boto3-ecs) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-ecs.svg?color=blue)](https://pypi.org/project/mypy-boto3-ecs) [![Docs](https://img.shields.io/readthedocs/boto3-stubs.svg?color=blue)](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ecs/) [![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-ecs?color=blue)](https://pypistats.org/packages/mypy-boto3-ecs) ![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png) Type annotations for [boto3.ECS 1.26.110](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ecs.html#ECS) 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.5](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-ecs docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_ecs/). 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-ecs](#mypy-boto3-ecs) - [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 `ECS`. ### From PyPI with pip Install `boto3-stubs` for `ECS` service. ```bash # install with boto3 type annotations python -m pip install 'boto3-stubs[ecs]' # 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[ecs]' # standalone installation python -m pip install mypy-boto3-ecs ``` ## How to uninstall ```bash python -m pip uninstall -y mypy-boto3-ecs ``` ## 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[ecs]` in your environment: ```bash python -m pip install 'boto3-stubs[ecs]' ``` 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[ecs]` in your environment: ```bash python -m pip install 'boto3-stubs-lite[ecs]'` ``` 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[ecs]' ``` - 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[ecs]` with services you use in your environment: ```bash python -m pip install 'boto3-stubs[ecs]' ``` - 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[ecs]` in your environment: ```bash python -m pip install 'boto3-stubs[ecs]'` ``` 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[ecs]` in your environment: ```bash python -m pip install 'boto3-stubs[ecs]' ``` 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 `ECSClient` provides annotations for `boto3.client("ecs")`. ```python from boto3.session import Session from mypy_boto3_ecs import ECSClient client: ECSClient = Session().client("ecs") # now client usage is checked by mypy and IDE should provide code completion ``` ### Paginators annotations `mypy_boto3_ecs.paginator` module contains type annotations for all paginators. ```python from boto3.session import Session from mypy_boto3_ecs import ECSClient from mypy_boto3_ecs.paginator import ( ListAccountSettingsPaginator, ListAttributesPaginator, ListClustersPaginator, ListContainerInstancesPaginator, ListServicesPaginator, ListServicesByNamespacePaginator, ListTaskDefinitionFamiliesPaginator, ListTaskDefinitionsPaginator, ListTasksPaginator, ) client: ECSClient = Session().client("ecs") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs list_account_settings_paginator: ListAccountSettingsPaginator = client.get_paginator( "list_account_settings" ) list_attributes_paginator: ListAttributesPaginator = client.get_paginator("list_attributes") list_clusters_paginator: ListClustersPaginator = client.get_paginator("list_clusters") list_container_instances_paginator: ListContainerInstancesPaginator = client.get_paginator( "list_container_instances" ) list_services_paginator: ListServicesPaginator = client.get_paginator("list_services") list_services_by_namespace_paginator: ListServicesByNamespacePaginator = client.get_paginator( "list_services_by_namespace" ) list_task_definition_families_paginator: ListTaskDefinitionFamiliesPaginator = client.get_paginator( "list_task_definition_families" ) list_task_definitions_paginator: ListTaskDefinitionsPaginator = client.get_paginator( "list_task_definitions" ) list_tasks_paginator: ListTasksPaginator = client.get_paginator("list_tasks") ``` ### Waiters annotations `mypy_boto3_ecs.waiter` module contains type annotations for all waiters. ```python from boto3.session import Session from mypy_boto3_ecs import ECSClient from mypy_boto3_ecs.waiter import ( ServicesInactiveWaiter, ServicesStableWaiter, TasksRunningWaiter, TasksStoppedWaiter, ) client: ECSClient = Session().client("ecs") # Explicit type annotations are optional here # Types should be correctly discovered by mypy and IDEs services_inactive_waiter: ServicesInactiveWaiter = client.get_waiter("services_inactive") services_stable_waiter: ServicesStableWaiter = client.get_waiter("services_stable") tasks_running_waiter: TasksRunningWaiter = client.get_waiter("tasks_running") tasks_stopped_waiter: TasksStoppedWaiter = client.get_waiter("tasks_stopped") ``` ### Literals `mypy_boto3_ecs.literals` module contains literals extracted from shapes that can be used in user code for type checking. ```python from mypy_boto3_ecs.literals import ( AgentUpdateStatusType, ApplicationProtocolType, AssignPublicIpType, CPUArchitectureType, CapacityProviderFieldType, CapacityProviderStatusType, CapacityProviderUpdateStatusType, ClusterFieldType, ClusterSettingNameType, CompatibilityType, ConnectivityType, ContainerConditionType, ContainerInstanceFieldType, ContainerInstanceStatusType, DeploymentControllerTypeType, DeploymentRolloutStateType, DesiredStatusType, DeviceCgroupPermissionType, EFSAuthorizationConfigIAMType, EFSTransitEncryptionType, EnvironmentFileTypeType, ExecuteCommandLoggingType, FirelensConfigurationTypeType, HealthStatusType, InstanceHealthCheckStateType, InstanceHealthCheckTypeType, IpcModeType, LaunchTypeType, ListAccountSettingsPaginatorName, ListAttributesPaginatorName, ListClustersPaginatorName, ListContainerInstancesPaginatorName, ListServicesByNamespacePaginatorName, ListServicesPaginatorName, ListTaskDefinitionFamiliesPaginatorName, ListTaskDefinitionsPaginatorName, ListTasksPaginatorName, LogDriverType, ManagedAgentNameType, ManagedScalingStatusType, ManagedTerminationProtectionType, NetworkModeType, OSFamilyType, PidModeType, PlacementConstraintTypeType, PlacementStrategyTypeType, PlatformDeviceTypeType, PropagateTagsType, ProxyConfigurationTypeType, ResourceTypeType, ScaleUnitType, SchedulingStrategyType, ScopeType, ServiceFieldType, ServicesInactiveWaiterName, ServicesStableWaiterName, SettingNameType, SortOrderType, StabilityStatusType, TargetTypeType, TaskDefinitionFamilyStatusType, TaskDefinitionFieldType, TaskDefinitionPlacementConstraintTypeType, TaskDefinitionStatusType, TaskFieldType, TaskSetFieldType, TaskStopCodeType, TasksRunningWaiterName, TasksStoppedWaiterName, TransportProtocolType, UlimitNameType, ECSServiceName, ServiceName, ResourceServiceName, PaginatorName, WaiterName, RegionName, ) def check_value(value: AgentUpdateStatusType) -> bool: ... ``` ### Typed dictionaries `mypy_boto3_ecs.type_defs` module contains structures and shapes assembled to typed dictionaries for additional type checking. ```python from mypy_boto3_ecs.type_defs import ( AttachmentStateChangeTypeDef, KeyValuePairTypeDef, AttributeTypeDef, ManagedScalingTypeDef, AwsVpcConfigurationTypeDef, CapacityProviderStrategyItemTypeDef, TagTypeDef, ClusterServiceConnectDefaultsRequestTypeDef, ClusterServiceConnectDefaultsTypeDef, ClusterSettingTypeDef, ContainerDependencyTypeDef, EnvironmentFileTypeDef, FirelensConfigurationTypeDef, HealthCheckTypeDef, HostEntryTypeDef, MountPointTypeDef, PortMappingTypeDef, RepositoryCredentialsTypeDef, ResourceRequirementTypeDef, SecretTypeDef, SystemControlTypeDef, UlimitTypeDef, VolumeFromTypeDef, InstanceHealthCheckResultTypeDef, ResourceTypeDef, VersionInfoTypeDef, NetworkBindingTypeDef, ManagedAgentTypeDef, NetworkInterfaceTypeDef, ResponseMetadataTypeDef, DeploymentControllerTypeDef, LoadBalancerTypeDef, PlacementConstraintTypeDef, PlacementStrategyTypeDef, ServiceRegistryTypeDef, ScaleTypeDef, DeleteAccountSettingRequestRequestTypeDef, SettingTypeDef, DeleteCapacityProviderRequestRequestTypeDef, DeleteClusterRequestRequestTypeDef, DeleteServiceRequestRequestTypeDef, DeleteTaskDefinitionsRequestRequestTypeDef, FailureTypeDef, DeleteTaskSetRequestRequestTypeDef, DeploymentAlarmsTypeDef, DeploymentCircuitBreakerTypeDef, ServiceConnectServiceResourceTypeDef, DeregisterContainerInstanceRequestRequestTypeDef, DeregisterTaskDefinitionRequestRequestTypeDef, DescribeCapacityProvidersRequestRequestTypeDef, DescribeClustersRequestRequestTypeDef, DescribeContainerInstancesRequestRequestTypeDef, DescribeServicesRequestRequestTypeDef, WaiterConfigTypeDef, DescribeTaskDefinitionRequestRequestTypeDef, DescribeTaskSetsRequestRequestTypeDef, DescribeTasksRequestRequestTypeDef, DeviceTypeDef, DiscoverPollEndpointRequestRequestTypeDef, DockerVolumeConfigurationTypeDef, EFSAuthorizationConfigTypeDef, EphemeralStorageTypeDef, ExecuteCommandLogConfigurationTypeDef, ExecuteCommandRequestRequestTypeDef, SessionTypeDef, FSxWindowsFileServerAuthorizationConfigTypeDef, GetTaskProtectionRequestRequestTypeDef, ProtectedTaskTypeDef, HostVolumePropertiesTypeDef, InferenceAcceleratorOverrideTypeDef, InferenceAcceleratorTypeDef, KernelCapabilitiesTypeDef, TmpfsTypeDef, PaginatorConfigTypeDef, ListAccountSettingsRequestRequestTypeDef, ListAttributesRequestRequestTypeDef, ListClustersRequestRequestTypeDef, ListContainerInstancesRequestRequestTypeDef, ListServicesByNamespaceRequestRequestTypeDef, ListServicesRequestRequestTypeDef, ListTagsForResourceRequestRequestTypeDef, ListTaskDefinitionFamiliesRequestRequestTypeDef, ListTaskDefinitionsRequestRequestTypeDef, ListTasksRequestRequestTypeDef, ManagedAgentStateChangeTypeDef, PlatformDeviceTypeDef, PutAccountSettingDefaultRequestRequestTypeDef, PutAccountSettingRequestRequestTypeDef, RuntimePlatformTypeDef, TaskDefinitionPlacementConstraintTypeDef, ServiceConnectClientAliasTypeDef, ServiceEventTypeDef, StopTaskRequestRequestTypeDef, UntagResourceRequestRequestTypeDef, UpdateContainerAgentRequestRequestTypeDef, UpdateContainerInstancesStateRequestRequestTypeDef, UpdateServicePrimaryTaskSetRequestRequestTypeDef, UpdateTaskProtectionRequestRequestTypeDef, SubmitAttachmentStateChangesRequestRequestTypeDef, AttachmentTypeDef, ProxyConfigurationTypeDef, DeleteAttributesRequestRequestTypeDef, PutAttributesRequestRequestTypeDef, AutoScalingGroupProviderTypeDef, AutoScalingGroupProviderUpdateTypeDef, NetworkConfigurationTypeDef, PutClusterCapacityProvidersRequestRequestTypeDef, TagResourceRequestRequestTypeDef, UpdateClusterSettingsRequestRequestTypeDef, ContainerOverrideTypeDef, LogConfigurationTypeDef, ContainerInstanceHealthStatusTypeDef, ContainerStateChangeTypeDef, SubmitContainerStateChangeRequestRequestTypeDef, ContainerTypeDef, DeleteAttributesResponseTypeDef, DiscoverPollEndpointResponseTypeDef, ListAttributesResponseTypeDef, ListClustersResponseTypeDef, ListContainerInstancesResponseTypeDef, ListServicesByNamespaceResponseTypeDef, ListServicesResponseTypeDef, ListTagsForResourceResponseTypeDef, ListTaskDefinitionFamiliesResponseTypeDef, ListTaskDefinitionsResponseTypeDef, ListTasksResponseTypeDef, PutAttributesResponseTypeDef, SubmitAttachmentStateChangesResponseTypeDef, SubmitContainerStateChangeResponseTypeDef, SubmitTaskStateChangeResponseTypeDef, UpdateTaskSetRequestRequestTypeDef, DeleteAccountSettingResponseTypeDef, ListAccountSettingsResponseTypeDef, PutAccountSettingDefaultResponseTypeDef, PutAccountSettingResponseTypeDef, DeploymentConfigurationTypeDef, DescribeServicesRequestServicesInactiveWaitTypeDef, DescribeServicesRequestServicesStableWaitTypeDef, DescribeTasksRequestTasksRunningWaitTypeDef, DescribeTasksRequestTasksStoppedWaitTypeDef, EFSVolumeConfigurationTypeDef, ExecuteCommandConfigurationTypeDef, ExecuteCommandResponseTypeDef, FSxWindowsFileServerVolumeConfigurationTypeDef, GetTaskProtectionResponseTypeDef, UpdateTaskProtectionResponseTypeDef, LinuxParametersTypeDef, ListAccountSettingsRequestListAccountSettingsPaginateTypeDef, ListAttributesRequestListAttributesPaginateTypeDef, ListClustersRequestListClustersPaginateTypeDef, ListContainerInstancesRequestListContainerInstancesPaginateTypeDef, ListServicesByNamespaceRequestListServicesByNamespacePaginateTypeDef, ListServicesRequestListServicesPaginateTypeDef, ListTaskDefinitionFamiliesRequestListTaskDefinitionFamiliesPaginateTypeDef, ListTaskDefinitionsRequestListTaskDefinitionsPaginateTypeDef, ListTasksRequestListTasksPaginateTypeDef, RegisterContainerInstanceRequestRequestTypeDef, ServiceConnectServiceTypeDef, CapacityProviderTypeDef, CreateCapacityProviderRequestRequestTypeDef, UpdateCapacityProviderRequestRequestTypeDef, CreateTaskSetRequestRequestTypeDef, TaskSetTypeDef, TaskOverrideTypeDef, ContainerInstanceTypeDef, SubmitTaskStateChangeRequestRequestTypeDef, ClusterConfigurationTypeDef, VolumeTypeDef, ContainerDefinitionTypeDef, ServiceConnectConfigurationTypeDef, CreateCapacityProviderResponseTypeDef, DeleteCapacityProviderResponseTypeDef, DescribeCapacityProvidersResponseTypeDef, UpdateCapacityProviderResponseTypeDef, CreateTaskSetResponseTypeDef, DeleteTaskSetResponseTypeDef, DescribeTaskSetsResponseTypeDef, UpdateServicePrimaryTaskSetResponseTypeDef, UpdateTaskSetResponseTypeDef, RunTaskRequestRequestTypeDef, StartTaskRequestRequestTypeDef, TaskTypeDef, DeregisterContainerInstanceResponseTypeDef, DescribeContainerInstancesResponseTypeDef, RegisterContainerInstanceResponseTypeDef, UpdateContainerAgentResponseTypeDef, UpdateContainerInstancesStateResponseTypeDef, ClusterTypeDef, CreateClusterRequestRequestTypeDef, UpdateClusterRequestRequestTypeDef, RegisterTaskDefinitionRequestRequestTypeDef, TaskDefinitionTypeDef, CreateServiceRequestRequestTypeDef, DeploymentTypeDef, UpdateServiceRequestRequestTypeDef, DescribeTasksResponseTypeDef, RunTaskResponseTypeDef, StartTaskResponseTypeDef, StopTaskResponseTypeDef, CreateClusterResponseTypeDef, DeleteClusterResponseTypeDef, DescribeClustersResponseTypeDef, PutClusterCapacityProvidersResponseTypeDef, UpdateClusterResponseTypeDef, UpdateClusterSettingsResponseTypeDef, DeleteTaskDefinitionsResponseTypeDef, DeregisterTaskDefinitionResponseTypeDef, DescribeTaskDefinitionResponseTypeDef, RegisterTaskDefinitionResponseTypeDef, ServiceTypeDef, CreateServiceResponseTypeDef, DeleteServiceResponseTypeDef, DescribeServicesResponseTypeDef, UpdateServiceResponseTypeDef, ) def get_structure() -> AttachmentStateChangeTypeDef: 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-ecs` 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_ecs/) ## 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-ecs-1.26.110 %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-ecs -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue Apr 11 2023 Python_Bot - 1.26.110-1 - Package Spec generated