diff options
Diffstat (limited to 'python-mypy-boto3-devicefarm.spec')
| -rw-r--r-- | python-mypy-boto3-devicefarm.spec | 2179 |
1 files changed, 2179 insertions, 0 deletions
diff --git a/python-mypy-boto3-devicefarm.spec b/python-mypy-boto3-devicefarm.spec new file mode 100644 index 0000000..7bdb220 --- /dev/null +++ b/python-mypy-boto3-devicefarm.spec @@ -0,0 +1,2179 @@ +%global _empty_manifest_terminate_build 0 +Name: python-mypy-boto3-devicefarm +Version: 1.26.0.post1 +Release: 1 +Summary: Type annotations for boto3.DeviceFarm 1.26.0 service generated with mypy-boto3-builder 7.11.10 +License: MIT License +URL: https://github.com/youtype/mypy_boto3_builder +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/a4/c7/53f190a3765c72ca34808ef4a553d2575c15f48a6aa69b3a8774edebf206/mypy-boto3-devicefarm-1.26.0.post1.tar.gz +BuildArch: noarch + +Requires: python3-typing-extensions + +%description +<a id="mypy-boto3-devicefarm"></a> + +# mypy-boto3-devicefarm + +[](https://pypi.org/project/mypy-boto3-devicefarm) +[](https://pypi.org/project/mypy-boto3-devicefarm) +[](https://mypy-boto3-builder.readthedocs.io/) +[](https://pypistats.org/packages/mypy-boto3-devicefarm) + + + +Type annotations for +[boto3.DeviceFarm 1.26.0](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/devicefarm.html#DeviceFarm) +service compatible with [VSCode](https://code.visualstudio.com/), +[PyCharm](https://www.jetbrains.com/pycharm/), +[Emacs](https://www.gnu.org/software/emacs/), +[Sublime Text](https://www.sublimetext.com/), +[mypy](https://github.com/python/mypy), +[pyright](https://github.com/microsoft/pyright) and other tools. + +Generated by +[mypy-boto3-builder 7.11.10](https://github.com/youtype/mypy_boto3_builder). + +More information can be found on +[boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in +[mypy-boto3-devicefarm docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_devicefarm/). + +See how it helps to find and fix potential bugs: + + + +- [mypy-boto3-devicefarm](#mypy-boto3-devicefarm) + - [How to install](#how-to-install) + - [VSCode extension](#vscode-extension) + - [From PyPI with pip](#from-pypi-with-pip) + - [How to uninstall](#how-to-uninstall) + - [Usage](#usage) + - [VSCode](#vscode) + - [PyCharm](#pycharm) + - [Emacs](#emacs) + - [Sublime Text](#sublime-text) + - [Other IDEs](#other-ides) + - [mypy](#mypy) + - [pyright](#pyright) + - [Explicit type annotations](#explicit-type-annotations) + - [Client annotations](#client-annotations) + - [Paginators annotations](#paginators-annotations) + - [Literals](#literals) + - [Typed dictionaries](#typed-dictionaries) + - [How it works](#how-it-works) + - [What's new](#what's-new) + - [Implemented features](#implemented-features) + - [Latest changes](#latest-changes) + - [Versioning](#versioning) + - [Thank you](#thank-you) + - [Documentation](#documentation) + - [Support and contributing](#support-and-contributing) + +<a id="how-to-install"></a> + +## How to install + +<a id="vscode-extension"></a> + +### 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 `DeviceFarm`. + +<a id="from-pypi-with-pip"></a> + +### From PyPI with pip + +Install `boto3-stubs` for `DeviceFarm` service. + +```bash +# install with boto3 type annotations +python -m pip install 'boto3-stubs[devicefarm]' + + +# 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[devicefarm]' + + +# standalone installation +python -m pip install mypy-boto3-devicefarm +``` + +<a id="how-to-uninstall"></a> + +## How to uninstall + +```bash +python -m pip uninstall -y mypy-boto3-devicefarm +``` + +<a id="usage"></a> + +## Usage + +<a id="vscode"></a> + +### 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[devicefarm]` in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]' +``` + +Both type checking and code completion should now work. No explicit type +annotations required, write your `boto3` code as usual. + +<a id="pycharm"></a> + +### PyCharm + +Install `boto3-stubs-lite[devicefarm]` in your environment: + +```bash +python -m pip install 'boto3-stubs-lite[devicefarm]'` +``` + +Both type checking and code completion should now work. Explicit type +annotations **are required**. + +Use `boto3-stubs` package instead for implicit type discovery. + +<a id="emacs"></a> + +### Emacs + +- Install `boto3-stubs` with services you use in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]' +``` + +- 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. + +<a id="sublime-text"></a> + +### Sublime Text + +- Install `boto3-stubs[devicefarm]` with services you use in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]' +``` + +- 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. + +<a id="other-ides"></a> + +### Other IDEs + +Not tested, but as long as your IDE supports `mypy` or `pyright`, everything +should work. + +<a id="mypy"></a> + +### mypy + +- Install `mypy`: `python -m pip install mypy` +- Install `boto3-stubs[devicefarm]` in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]'` +``` + +Type checking should now work. No explicit type annotations required, write +your `boto3` code as usual. + +<a id="pyright"></a> + +### pyright + +- Install `pyright`: `npm i -g pyright` +- Install `boto3-stubs[devicefarm]` in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]' +``` + +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. + +<a id="explicit-type-annotations"></a> + +## Explicit type annotations + +<a id="client-annotations"></a> + +### Client annotations + +`DeviceFarmClient` provides annotations for `boto3.client("devicefarm")`. + +```python +from boto3.session import Session + +from mypy_boto3_devicefarm import DeviceFarmClient + +client: DeviceFarmClient = Session().client("devicefarm") + +# now client usage is checked by mypy and IDE should provide code completion +``` + +<a id="paginators-annotations"></a> + +### Paginators annotations + +`mypy_boto3_devicefarm.paginator` module contains type annotations for all +paginators. + +```python +from boto3.session import Session + +from mypy_boto3_devicefarm import DeviceFarmClient +from mypy_boto3_devicefarm.paginator import ( + GetOfferingStatusPaginator, + ListArtifactsPaginator, + ListDeviceInstancesPaginator, + ListDevicePoolsPaginator, + ListDevicesPaginator, + ListInstanceProfilesPaginator, + ListJobsPaginator, + ListNetworkProfilesPaginator, + ListOfferingPromotionsPaginator, + ListOfferingTransactionsPaginator, + ListOfferingsPaginator, + ListProjectsPaginator, + ListRemoteAccessSessionsPaginator, + ListRunsPaginator, + ListSamplesPaginator, + ListSuitesPaginator, + ListTestsPaginator, + ListUniqueProblemsPaginator, + ListUploadsPaginator, + ListVPCEConfigurationsPaginator, +) + +client: DeviceFarmClient = Session().client("devicefarm") + +# Explicit type annotations are optional here +# Types should be correctly discovered by mypy and IDEs +get_offering_status_paginator: GetOfferingStatusPaginator = client.get_paginator( + "get_offering_status" +) +list_artifacts_paginator: ListArtifactsPaginator = client.get_paginator("list_artifacts") +list_device_instances_paginator: ListDeviceInstancesPaginator = client.get_paginator( + "list_device_instances" +) +list_device_pools_paginator: ListDevicePoolsPaginator = client.get_paginator("list_device_pools") +list_devices_paginator: ListDevicesPaginator = client.get_paginator("list_devices") +list_instance_profiles_paginator: ListInstanceProfilesPaginator = client.get_paginator( + "list_instance_profiles" +) +list_jobs_paginator: ListJobsPaginator = client.get_paginator("list_jobs") +list_network_profiles_paginator: ListNetworkProfilesPaginator = client.get_paginator( + "list_network_profiles" +) +list_offering_promotions_paginator: ListOfferingPromotionsPaginator = client.get_paginator( + "list_offering_promotions" +) +list_offering_transactions_paginator: ListOfferingTransactionsPaginator = client.get_paginator( + "list_offering_transactions" +) +list_offerings_paginator: ListOfferingsPaginator = client.get_paginator("list_offerings") +list_projects_paginator: ListProjectsPaginator = client.get_paginator("list_projects") +list_remote_access_sessions_paginator: ListRemoteAccessSessionsPaginator = client.get_paginator( + "list_remote_access_sessions" +) +list_runs_paginator: ListRunsPaginator = client.get_paginator("list_runs") +list_samples_paginator: ListSamplesPaginator = client.get_paginator("list_samples") +list_suites_paginator: ListSuitesPaginator = client.get_paginator("list_suites") +list_tests_paginator: ListTestsPaginator = client.get_paginator("list_tests") +list_unique_problems_paginator: ListUniqueProblemsPaginator = client.get_paginator( + "list_unique_problems" +) +list_uploads_paginator: ListUploadsPaginator = client.get_paginator("list_uploads") +list_vpce_configurations_paginator: ListVPCEConfigurationsPaginator = client.get_paginator( + "list_vpce_configurations" +) +``` + +<a id="literals"></a> + +### Literals + +`mypy_boto3_devicefarm.literals` module contains literals extracted from shapes +that can be used in user code for type checking. + +```python +from mypy_boto3_devicefarm.literals import ( + ArtifactCategoryType, + ArtifactTypeType, + BillingMethodType, + CurrencyCodeType, + DeviceAttributeType, + DeviceAvailabilityType, + DeviceFilterAttributeType, + DeviceFormFactorType, + DevicePlatformType, + DevicePoolTypeType, + ExecutionResultCodeType, + ExecutionResultType, + ExecutionStatusType, + GetOfferingStatusPaginatorName, + InstanceStatusType, + InteractionModeType, + ListArtifactsPaginatorName, + ListDeviceInstancesPaginatorName, + ListDevicePoolsPaginatorName, + ListDevicesPaginatorName, + ListInstanceProfilesPaginatorName, + ListJobsPaginatorName, + ListNetworkProfilesPaginatorName, + ListOfferingPromotionsPaginatorName, + ListOfferingTransactionsPaginatorName, + ListOfferingsPaginatorName, + ListProjectsPaginatorName, + ListRemoteAccessSessionsPaginatorName, + ListRunsPaginatorName, + ListSamplesPaginatorName, + ListSuitesPaginatorName, + ListTestsPaginatorName, + ListUniqueProblemsPaginatorName, + ListUploadsPaginatorName, + ListVPCEConfigurationsPaginatorName, + NetworkProfileTypeType, + OfferingTransactionTypeType, + OfferingTypeType, + RecurringChargeFrequencyType, + RuleOperatorType, + SampleTypeType, + TestGridSessionArtifactCategoryType, + TestGridSessionArtifactTypeType, + TestGridSessionStatusType, + TestTypeType, + UploadCategoryType, + UploadStatusType, + UploadTypeType, + DeviceFarmServiceName, + ServiceName, + ResourceServiceName, + PaginatorName, + RegionName, +) + + +def check_value(value: ArtifactCategoryType) -> bool: + ... +``` + +<a id="typed-dictionaries"></a> + +### Typed dictionaries + +`mypy_boto3_devicefarm.type_defs` module contains structures and shapes +assembled to typed dictionaries for additional type checking. + +```python +from mypy_boto3_devicefarm.type_defs import ( + TrialMinutesTypeDef, + ArtifactTypeDef, + CPUTypeDef, + CountersTypeDef, + RuleTypeDef, + ResponseMetadataTypeDef, + CreateInstanceProfileRequestRequestTypeDef, + InstanceProfileTypeDef, + CreateNetworkProfileRequestRequestTypeDef, + NetworkProfileTypeDef, + VpcConfigTypeDef, + CreateRemoteAccessSessionConfigurationTypeDef, + TestGridVpcConfigTypeDef, + CreateTestGridUrlRequestRequestTypeDef, + CreateUploadRequestRequestTypeDef, + UploadTypeDef, + CreateVPCEConfigurationRequestRequestTypeDef, + VPCEConfigurationTypeDef, + CustomerArtifactPathsTypeDef, + DeleteDevicePoolRequestRequestTypeDef, + DeleteInstanceProfileRequestRequestTypeDef, + DeleteNetworkProfileRequestRequestTypeDef, + DeleteProjectRequestRequestTypeDef, + DeleteRemoteAccessSessionRequestRequestTypeDef, + DeleteRunRequestRequestTypeDef, + DeleteTestGridProjectRequestRequestTypeDef, + DeleteUploadRequestRequestTypeDef, + DeleteVPCEConfigurationRequestRequestTypeDef, + DeviceFilterTypeDef, + DeviceMinutesTypeDef, + IncompatibilityMessageTypeDef, + ResolutionTypeDef, + ExecutionConfigurationTypeDef, + GetDeviceInstanceRequestRequestTypeDef, + ScheduleRunTestTypeDef, + GetDevicePoolRequestRequestTypeDef, + GetDeviceRequestRequestTypeDef, + GetInstanceProfileRequestRequestTypeDef, + GetJobRequestRequestTypeDef, + GetNetworkProfileRequestRequestTypeDef, + PaginatorConfigTypeDef, + GetOfferingStatusRequestRequestTypeDef, + GetProjectRequestRequestTypeDef, + GetRemoteAccessSessionRequestRequestTypeDef, + GetRunRequestRequestTypeDef, + GetSuiteRequestRequestTypeDef, + GetTestGridProjectRequestRequestTypeDef, + GetTestGridSessionRequestRequestTypeDef, + TestGridSessionTypeDef, + GetTestRequestRequestTypeDef, + GetUploadRequestRequestTypeDef, + GetVPCEConfigurationRequestRequestTypeDef, + InstallToRemoteAccessSessionRequestRequestTypeDef, + ListArtifactsRequestRequestTypeDef, + ListDeviceInstancesRequestRequestTypeDef, + ListDevicePoolsRequestRequestTypeDef, + ListInstanceProfilesRequestRequestTypeDef, + ListJobsRequestRequestTypeDef, + ListNetworkProfilesRequestRequestTypeDef, + ListOfferingPromotionsRequestRequestTypeDef, + OfferingPromotionTypeDef, + ListOfferingTransactionsRequestRequestTypeDef, + ListOfferingsRequestRequestTypeDef, + ListProjectsRequestRequestTypeDef, + ListRemoteAccessSessionsRequestRequestTypeDef, + ListRunsRequestRequestTypeDef, + ListSamplesRequestRequestTypeDef, + SampleTypeDef, + ListSuitesRequestRequestTypeDef, + ListTagsForResourceRequestRequestTypeDef, + TagTypeDef, + ListTestGridProjectsRequestRequestTypeDef, + ListTestGridSessionActionsRequestRequestTypeDef, + TestGridSessionActionTypeDef, + ListTestGridSessionArtifactsRequestRequestTypeDef, + TestGridSessionArtifactTypeDef, + ListTestGridSessionsRequestRequestTypeDef, + ListTestsRequestRequestTypeDef, + ListUniqueProblemsRequestRequestTypeDef, + ListUploadsRequestRequestTypeDef, + ListVPCEConfigurationsRequestRequestTypeDef, + LocationTypeDef, + MonetaryAmountTypeDef, + ProblemDetailTypeDef, + PurchaseOfferingRequestRequestTypeDef, + RadiosTypeDef, + RenewOfferingRequestRequestTypeDef, + StopJobRequestRequestTypeDef, + StopRemoteAccessSessionRequestRequestTypeDef, + StopRunRequestRequestTypeDef, + UntagResourceRequestRequestTypeDef, + UpdateDeviceInstanceRequestRequestTypeDef, + UpdateInstanceProfileRequestRequestTypeDef, + UpdateNetworkProfileRequestRequestTypeDef, + UpdateUploadRequestRequestTypeDef, + UpdateVPCEConfigurationRequestRequestTypeDef, + AccountSettingsTypeDef, + CreateDevicePoolRequestRequestTypeDef, + DevicePoolTypeDef, + UpdateDevicePoolRequestRequestTypeDef, + CreateTestGridUrlResultTypeDef, + ListArtifactsResultTypeDef, + CreateInstanceProfileResultTypeDef, + DeviceInstanceTypeDef, + GetInstanceProfileResultTypeDef, + ListInstanceProfilesResultTypeDef, + UpdateInstanceProfileResultTypeDef, + CreateNetworkProfileResultTypeDef, + GetNetworkProfileResultTypeDef, + ListNetworkProfilesResultTypeDef, + UpdateNetworkProfileResultTypeDef, + CreateProjectRequestRequestTypeDef, + ProjectTypeDef, + UpdateProjectRequestRequestTypeDef, + CreateRemoteAccessSessionRequestRequestTypeDef, + CreateTestGridProjectRequestRequestTypeDef, + TestGridProjectTypeDef, + UpdateTestGridProjectRequestRequestTypeDef, + CreateUploadResultTypeDef, + GetUploadResultTypeDef, + InstallToRemoteAccessSessionResultTypeDef, + ListUploadsResultTypeDef, + UpdateUploadResultTypeDef, + CreateVPCEConfigurationResultTypeDef, + GetVPCEConfigurationResultTypeDef, + ListVPCEConfigurationsResultTypeDef, + UpdateVPCEConfigurationResultTypeDef, + DeviceSelectionConfigurationTypeDef, + DeviceSelectionResultTypeDef, + ListDevicesRequestRequestTypeDef, + SuiteTypeDef, + TestTypeDef, + GetOfferingStatusRequestGetOfferingStatusPaginateTypeDef, + ListArtifactsRequestListArtifactsPaginateTypeDef, + ListDeviceInstancesRequestListDeviceInstancesPaginateTypeDef, + ListDevicePoolsRequestListDevicePoolsPaginateTypeDef, + ListDevicesRequestListDevicesPaginateTypeDef, + ListInstanceProfilesRequestListInstanceProfilesPaginateTypeDef, + ListJobsRequestListJobsPaginateTypeDef, + ListNetworkProfilesRequestListNetworkProfilesPaginateTypeDef, + ListOfferingPromotionsRequestListOfferingPromotionsPaginateTypeDef, + ListOfferingTransactionsRequestListOfferingTransactionsPaginateTypeDef, + ListOfferingsRequestListOfferingsPaginateTypeDef, + ListProjectsRequestListProjectsPaginateTypeDef, + ListRemoteAccessSessionsRequestListRemoteAccessSessionsPaginateTypeDef, + ListRunsRequestListRunsPaginateTypeDef, + ListSamplesRequestListSamplesPaginateTypeDef, + ListSuitesRequestListSuitesPaginateTypeDef, + ListTestsRequestListTestsPaginateTypeDef, + ListUniqueProblemsRequestListUniqueProblemsPaginateTypeDef, + ListUploadsRequestListUploadsPaginateTypeDef, + ListVPCEConfigurationsRequestListVPCEConfigurationsPaginateTypeDef, + GetTestGridSessionResultTypeDef, + ListTestGridSessionsResultTypeDef, + ListOfferingPromotionsResultTypeDef, + ListSamplesResultTypeDef, + ListTagsForResourceResponseTypeDef, + TagResourceRequestRequestTypeDef, + ListTestGridSessionActionsResultTypeDef, + ListTestGridSessionArtifactsResultTypeDef, + RecurringChargeTypeDef, + ScheduleRunConfigurationTypeDef, + GetAccountSettingsResultTypeDef, + CreateDevicePoolResultTypeDef, + GetDevicePoolResultTypeDef, + ListDevicePoolsResultTypeDef, + UpdateDevicePoolResultTypeDef, + DeviceTypeDef, + GetDeviceInstanceResultTypeDef, + ListDeviceInstancesResultTypeDef, + UpdateDeviceInstanceResultTypeDef, + CreateProjectResultTypeDef, + GetProjectResultTypeDef, + ListProjectsResultTypeDef, + UpdateProjectResultTypeDef, + CreateTestGridProjectResultTypeDef, + GetTestGridProjectResultTypeDef, + ListTestGridProjectsResultTypeDef, + UpdateTestGridProjectResultTypeDef, + RunTypeDef, + GetSuiteResultTypeDef, + ListSuitesResultTypeDef, + GetTestResultTypeDef, + ListTestsResultTypeDef, + OfferingTypeDef, + GetDevicePoolCompatibilityRequestRequestTypeDef, + ScheduleRunRequestRequestTypeDef, + DevicePoolCompatibilityResultTypeDef, + GetDeviceResultTypeDef, + JobTypeDef, + ListDevicesResultTypeDef, + ProblemTypeDef, + RemoteAccessSessionTypeDef, + GetRunResultTypeDef, + ListRunsResultTypeDef, + ScheduleRunResultTypeDef, + StopRunResultTypeDef, + ListOfferingsResultTypeDef, + OfferingStatusTypeDef, + GetDevicePoolCompatibilityResultTypeDef, + GetJobResultTypeDef, + ListJobsResultTypeDef, + StopJobResultTypeDef, + UniqueProblemTypeDef, + CreateRemoteAccessSessionResultTypeDef, + GetRemoteAccessSessionResultTypeDef, + ListRemoteAccessSessionsResultTypeDef, + StopRemoteAccessSessionResultTypeDef, + GetOfferingStatusResultTypeDef, + OfferingTransactionTypeDef, + ListUniqueProblemsResultTypeDef, + ListOfferingTransactionsResultTypeDef, + PurchaseOfferingResultTypeDef, + RenewOfferingResultTypeDef, +) + + +def get_structure() -> TrialMinutesTypeDef: + return {...} +``` + +<a id="how-it-works"></a> + +## How it works + +Fully automated +[mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder) carefully +generates type annotations for each service, patiently waiting for `boto3` +updates. It delivers a drop-in type annotations for you and makes sure that: + +- All available `boto3` services are covered. +- Each public class and method of every `boto3` service gets valid type + annotations extracted from the documentation (blame `botocore` docs if types + are incorrect). +- Type annotations include up-to-date documentation. +- Link to documentation is provided for every method. +- Code is processed by [black](https://github.com/psf/black) and + [isort](https://github.com/PyCQA/isort) for readability. + +<a id="what's-new"></a> + +## What's new + +<a id="implemented-features"></a> + +### Implemented features + +- Fully type annotated `boto3`, `botocore` and `aiobotocore` libraries +- `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs` + compatibility +- `Client`, `ServiceResource`, `Resource`, `Waiter` `Paginator` type + annotations for each service +- Generated `TypeDefs` for each service +- Generated `Literals` for each service +- Auto discovery of types for `boto3.client` and `boto3.session` calls +- Auto discovery of types for `session.client` and `session.session` calls +- Auto discovery of types for `client.get_waiter` and `client.get_paginator` + calls +- Auto discovery of types for `ServiceResource` and `Resource` collections +- Auto discovery of types for `aiobotocore.Session.create_client` calls + +<a id="latest-changes"></a> + +### Latest changes + +Builder changelog can be found in +[Releases](https://github.com/youtype/mypy_boto3_builder/releases). + +<a id="versioning"></a> + +## Versioning + +`mypy-boto3-devicefarm` version is the same as related `boto3` version and +follows [PEP 440](https://www.python.org/dev/peps/pep-0440/) format. + +<a id="thank-you"></a> + +## 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 + +<a id="documentation"></a> + +## Documentation + +All services type annotations can be found in +[boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_devicefarm/) + +<a id="support-and-contributing"></a> + +## 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-devicefarm +Summary: Type annotations for boto3.DeviceFarm 1.26.0 service generated with mypy-boto3-builder 7.11.10 +Provides: python-mypy-boto3-devicefarm +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-mypy-boto3-devicefarm +<a id="mypy-boto3-devicefarm"></a> + +# mypy-boto3-devicefarm + +[](https://pypi.org/project/mypy-boto3-devicefarm) +[](https://pypi.org/project/mypy-boto3-devicefarm) +[](https://mypy-boto3-builder.readthedocs.io/) +[](https://pypistats.org/packages/mypy-boto3-devicefarm) + + + +Type annotations for +[boto3.DeviceFarm 1.26.0](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/devicefarm.html#DeviceFarm) +service compatible with [VSCode](https://code.visualstudio.com/), +[PyCharm](https://www.jetbrains.com/pycharm/), +[Emacs](https://www.gnu.org/software/emacs/), +[Sublime Text](https://www.sublimetext.com/), +[mypy](https://github.com/python/mypy), +[pyright](https://github.com/microsoft/pyright) and other tools. + +Generated by +[mypy-boto3-builder 7.11.10](https://github.com/youtype/mypy_boto3_builder). + +More information can be found on +[boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in +[mypy-boto3-devicefarm docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_devicefarm/). + +See how it helps to find and fix potential bugs: + + + +- [mypy-boto3-devicefarm](#mypy-boto3-devicefarm) + - [How to install](#how-to-install) + - [VSCode extension](#vscode-extension) + - [From PyPI with pip](#from-pypi-with-pip) + - [How to uninstall](#how-to-uninstall) + - [Usage](#usage) + - [VSCode](#vscode) + - [PyCharm](#pycharm) + - [Emacs](#emacs) + - [Sublime Text](#sublime-text) + - [Other IDEs](#other-ides) + - [mypy](#mypy) + - [pyright](#pyright) + - [Explicit type annotations](#explicit-type-annotations) + - [Client annotations](#client-annotations) + - [Paginators annotations](#paginators-annotations) + - [Literals](#literals) + - [Typed dictionaries](#typed-dictionaries) + - [How it works](#how-it-works) + - [What's new](#what's-new) + - [Implemented features](#implemented-features) + - [Latest changes](#latest-changes) + - [Versioning](#versioning) + - [Thank you](#thank-you) + - [Documentation](#documentation) + - [Support and contributing](#support-and-contributing) + +<a id="how-to-install"></a> + +## How to install + +<a id="vscode-extension"></a> + +### 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 `DeviceFarm`. + +<a id="from-pypi-with-pip"></a> + +### From PyPI with pip + +Install `boto3-stubs` for `DeviceFarm` service. + +```bash +# install with boto3 type annotations +python -m pip install 'boto3-stubs[devicefarm]' + + +# 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[devicefarm]' + + +# standalone installation +python -m pip install mypy-boto3-devicefarm +``` + +<a id="how-to-uninstall"></a> + +## How to uninstall + +```bash +python -m pip uninstall -y mypy-boto3-devicefarm +``` + +<a id="usage"></a> + +## Usage + +<a id="vscode"></a> + +### 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[devicefarm]` in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]' +``` + +Both type checking and code completion should now work. No explicit type +annotations required, write your `boto3` code as usual. + +<a id="pycharm"></a> + +### PyCharm + +Install `boto3-stubs-lite[devicefarm]` in your environment: + +```bash +python -m pip install 'boto3-stubs-lite[devicefarm]'` +``` + +Both type checking and code completion should now work. Explicit type +annotations **are required**. + +Use `boto3-stubs` package instead for implicit type discovery. + +<a id="emacs"></a> + +### Emacs + +- Install `boto3-stubs` with services you use in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]' +``` + +- 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. + +<a id="sublime-text"></a> + +### Sublime Text + +- Install `boto3-stubs[devicefarm]` with services you use in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]' +``` + +- 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. + +<a id="other-ides"></a> + +### Other IDEs + +Not tested, but as long as your IDE supports `mypy` or `pyright`, everything +should work. + +<a id="mypy"></a> + +### mypy + +- Install `mypy`: `python -m pip install mypy` +- Install `boto3-stubs[devicefarm]` in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]'` +``` + +Type checking should now work. No explicit type annotations required, write +your `boto3` code as usual. + +<a id="pyright"></a> + +### pyright + +- Install `pyright`: `npm i -g pyright` +- Install `boto3-stubs[devicefarm]` in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]' +``` + +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. + +<a id="explicit-type-annotations"></a> + +## Explicit type annotations + +<a id="client-annotations"></a> + +### Client annotations + +`DeviceFarmClient` provides annotations for `boto3.client("devicefarm")`. + +```python +from boto3.session import Session + +from mypy_boto3_devicefarm import DeviceFarmClient + +client: DeviceFarmClient = Session().client("devicefarm") + +# now client usage is checked by mypy and IDE should provide code completion +``` + +<a id="paginators-annotations"></a> + +### Paginators annotations + +`mypy_boto3_devicefarm.paginator` module contains type annotations for all +paginators. + +```python +from boto3.session import Session + +from mypy_boto3_devicefarm import DeviceFarmClient +from mypy_boto3_devicefarm.paginator import ( + GetOfferingStatusPaginator, + ListArtifactsPaginator, + ListDeviceInstancesPaginator, + ListDevicePoolsPaginator, + ListDevicesPaginator, + ListInstanceProfilesPaginator, + ListJobsPaginator, + ListNetworkProfilesPaginator, + ListOfferingPromotionsPaginator, + ListOfferingTransactionsPaginator, + ListOfferingsPaginator, + ListProjectsPaginator, + ListRemoteAccessSessionsPaginator, + ListRunsPaginator, + ListSamplesPaginator, + ListSuitesPaginator, + ListTestsPaginator, + ListUniqueProblemsPaginator, + ListUploadsPaginator, + ListVPCEConfigurationsPaginator, +) + +client: DeviceFarmClient = Session().client("devicefarm") + +# Explicit type annotations are optional here +# Types should be correctly discovered by mypy and IDEs +get_offering_status_paginator: GetOfferingStatusPaginator = client.get_paginator( + "get_offering_status" +) +list_artifacts_paginator: ListArtifactsPaginator = client.get_paginator("list_artifacts") +list_device_instances_paginator: ListDeviceInstancesPaginator = client.get_paginator( + "list_device_instances" +) +list_device_pools_paginator: ListDevicePoolsPaginator = client.get_paginator("list_device_pools") +list_devices_paginator: ListDevicesPaginator = client.get_paginator("list_devices") +list_instance_profiles_paginator: ListInstanceProfilesPaginator = client.get_paginator( + "list_instance_profiles" +) +list_jobs_paginator: ListJobsPaginator = client.get_paginator("list_jobs") +list_network_profiles_paginator: ListNetworkProfilesPaginator = client.get_paginator( + "list_network_profiles" +) +list_offering_promotions_paginator: ListOfferingPromotionsPaginator = client.get_paginator( + "list_offering_promotions" +) +list_offering_transactions_paginator: ListOfferingTransactionsPaginator = client.get_paginator( + "list_offering_transactions" +) +list_offerings_paginator: ListOfferingsPaginator = client.get_paginator("list_offerings") +list_projects_paginator: ListProjectsPaginator = client.get_paginator("list_projects") +list_remote_access_sessions_paginator: ListRemoteAccessSessionsPaginator = client.get_paginator( + "list_remote_access_sessions" +) +list_runs_paginator: ListRunsPaginator = client.get_paginator("list_runs") +list_samples_paginator: ListSamplesPaginator = client.get_paginator("list_samples") +list_suites_paginator: ListSuitesPaginator = client.get_paginator("list_suites") +list_tests_paginator: ListTestsPaginator = client.get_paginator("list_tests") +list_unique_problems_paginator: ListUniqueProblemsPaginator = client.get_paginator( + "list_unique_problems" +) +list_uploads_paginator: ListUploadsPaginator = client.get_paginator("list_uploads") +list_vpce_configurations_paginator: ListVPCEConfigurationsPaginator = client.get_paginator( + "list_vpce_configurations" +) +``` + +<a id="literals"></a> + +### Literals + +`mypy_boto3_devicefarm.literals` module contains literals extracted from shapes +that can be used in user code for type checking. + +```python +from mypy_boto3_devicefarm.literals import ( + ArtifactCategoryType, + ArtifactTypeType, + BillingMethodType, + CurrencyCodeType, + DeviceAttributeType, + DeviceAvailabilityType, + DeviceFilterAttributeType, + DeviceFormFactorType, + DevicePlatformType, + DevicePoolTypeType, + ExecutionResultCodeType, + ExecutionResultType, + ExecutionStatusType, + GetOfferingStatusPaginatorName, + InstanceStatusType, + InteractionModeType, + ListArtifactsPaginatorName, + ListDeviceInstancesPaginatorName, + ListDevicePoolsPaginatorName, + ListDevicesPaginatorName, + ListInstanceProfilesPaginatorName, + ListJobsPaginatorName, + ListNetworkProfilesPaginatorName, + ListOfferingPromotionsPaginatorName, + ListOfferingTransactionsPaginatorName, + ListOfferingsPaginatorName, + ListProjectsPaginatorName, + ListRemoteAccessSessionsPaginatorName, + ListRunsPaginatorName, + ListSamplesPaginatorName, + ListSuitesPaginatorName, + ListTestsPaginatorName, + ListUniqueProblemsPaginatorName, + ListUploadsPaginatorName, + ListVPCEConfigurationsPaginatorName, + NetworkProfileTypeType, + OfferingTransactionTypeType, + OfferingTypeType, + RecurringChargeFrequencyType, + RuleOperatorType, + SampleTypeType, + TestGridSessionArtifactCategoryType, + TestGridSessionArtifactTypeType, + TestGridSessionStatusType, + TestTypeType, + UploadCategoryType, + UploadStatusType, + UploadTypeType, + DeviceFarmServiceName, + ServiceName, + ResourceServiceName, + PaginatorName, + RegionName, +) + + +def check_value(value: ArtifactCategoryType) -> bool: + ... +``` + +<a id="typed-dictionaries"></a> + +### Typed dictionaries + +`mypy_boto3_devicefarm.type_defs` module contains structures and shapes +assembled to typed dictionaries for additional type checking. + +```python +from mypy_boto3_devicefarm.type_defs import ( + TrialMinutesTypeDef, + ArtifactTypeDef, + CPUTypeDef, + CountersTypeDef, + RuleTypeDef, + ResponseMetadataTypeDef, + CreateInstanceProfileRequestRequestTypeDef, + InstanceProfileTypeDef, + CreateNetworkProfileRequestRequestTypeDef, + NetworkProfileTypeDef, + VpcConfigTypeDef, + CreateRemoteAccessSessionConfigurationTypeDef, + TestGridVpcConfigTypeDef, + CreateTestGridUrlRequestRequestTypeDef, + CreateUploadRequestRequestTypeDef, + UploadTypeDef, + CreateVPCEConfigurationRequestRequestTypeDef, + VPCEConfigurationTypeDef, + CustomerArtifactPathsTypeDef, + DeleteDevicePoolRequestRequestTypeDef, + DeleteInstanceProfileRequestRequestTypeDef, + DeleteNetworkProfileRequestRequestTypeDef, + DeleteProjectRequestRequestTypeDef, + DeleteRemoteAccessSessionRequestRequestTypeDef, + DeleteRunRequestRequestTypeDef, + DeleteTestGridProjectRequestRequestTypeDef, + DeleteUploadRequestRequestTypeDef, + DeleteVPCEConfigurationRequestRequestTypeDef, + DeviceFilterTypeDef, + DeviceMinutesTypeDef, + IncompatibilityMessageTypeDef, + ResolutionTypeDef, + ExecutionConfigurationTypeDef, + GetDeviceInstanceRequestRequestTypeDef, + ScheduleRunTestTypeDef, + GetDevicePoolRequestRequestTypeDef, + GetDeviceRequestRequestTypeDef, + GetInstanceProfileRequestRequestTypeDef, + GetJobRequestRequestTypeDef, + GetNetworkProfileRequestRequestTypeDef, + PaginatorConfigTypeDef, + GetOfferingStatusRequestRequestTypeDef, + GetProjectRequestRequestTypeDef, + GetRemoteAccessSessionRequestRequestTypeDef, + GetRunRequestRequestTypeDef, + GetSuiteRequestRequestTypeDef, + GetTestGridProjectRequestRequestTypeDef, + GetTestGridSessionRequestRequestTypeDef, + TestGridSessionTypeDef, + GetTestRequestRequestTypeDef, + GetUploadRequestRequestTypeDef, + GetVPCEConfigurationRequestRequestTypeDef, + InstallToRemoteAccessSessionRequestRequestTypeDef, + ListArtifactsRequestRequestTypeDef, + ListDeviceInstancesRequestRequestTypeDef, + ListDevicePoolsRequestRequestTypeDef, + ListInstanceProfilesRequestRequestTypeDef, + ListJobsRequestRequestTypeDef, + ListNetworkProfilesRequestRequestTypeDef, + ListOfferingPromotionsRequestRequestTypeDef, + OfferingPromotionTypeDef, + ListOfferingTransactionsRequestRequestTypeDef, + ListOfferingsRequestRequestTypeDef, + ListProjectsRequestRequestTypeDef, + ListRemoteAccessSessionsRequestRequestTypeDef, + ListRunsRequestRequestTypeDef, + ListSamplesRequestRequestTypeDef, + SampleTypeDef, + ListSuitesRequestRequestTypeDef, + ListTagsForResourceRequestRequestTypeDef, + TagTypeDef, + ListTestGridProjectsRequestRequestTypeDef, + ListTestGridSessionActionsRequestRequestTypeDef, + TestGridSessionActionTypeDef, + ListTestGridSessionArtifactsRequestRequestTypeDef, + TestGridSessionArtifactTypeDef, + ListTestGridSessionsRequestRequestTypeDef, + ListTestsRequestRequestTypeDef, + ListUniqueProblemsRequestRequestTypeDef, + ListUploadsRequestRequestTypeDef, + ListVPCEConfigurationsRequestRequestTypeDef, + LocationTypeDef, + MonetaryAmountTypeDef, + ProblemDetailTypeDef, + PurchaseOfferingRequestRequestTypeDef, + RadiosTypeDef, + RenewOfferingRequestRequestTypeDef, + StopJobRequestRequestTypeDef, + StopRemoteAccessSessionRequestRequestTypeDef, + StopRunRequestRequestTypeDef, + UntagResourceRequestRequestTypeDef, + UpdateDeviceInstanceRequestRequestTypeDef, + UpdateInstanceProfileRequestRequestTypeDef, + UpdateNetworkProfileRequestRequestTypeDef, + UpdateUploadRequestRequestTypeDef, + UpdateVPCEConfigurationRequestRequestTypeDef, + AccountSettingsTypeDef, + CreateDevicePoolRequestRequestTypeDef, + DevicePoolTypeDef, + UpdateDevicePoolRequestRequestTypeDef, + CreateTestGridUrlResultTypeDef, + ListArtifactsResultTypeDef, + CreateInstanceProfileResultTypeDef, + DeviceInstanceTypeDef, + GetInstanceProfileResultTypeDef, + ListInstanceProfilesResultTypeDef, + UpdateInstanceProfileResultTypeDef, + CreateNetworkProfileResultTypeDef, + GetNetworkProfileResultTypeDef, + ListNetworkProfilesResultTypeDef, + UpdateNetworkProfileResultTypeDef, + CreateProjectRequestRequestTypeDef, + ProjectTypeDef, + UpdateProjectRequestRequestTypeDef, + CreateRemoteAccessSessionRequestRequestTypeDef, + CreateTestGridProjectRequestRequestTypeDef, + TestGridProjectTypeDef, + UpdateTestGridProjectRequestRequestTypeDef, + CreateUploadResultTypeDef, + GetUploadResultTypeDef, + InstallToRemoteAccessSessionResultTypeDef, + ListUploadsResultTypeDef, + UpdateUploadResultTypeDef, + CreateVPCEConfigurationResultTypeDef, + GetVPCEConfigurationResultTypeDef, + ListVPCEConfigurationsResultTypeDef, + UpdateVPCEConfigurationResultTypeDef, + DeviceSelectionConfigurationTypeDef, + DeviceSelectionResultTypeDef, + ListDevicesRequestRequestTypeDef, + SuiteTypeDef, + TestTypeDef, + GetOfferingStatusRequestGetOfferingStatusPaginateTypeDef, + ListArtifactsRequestListArtifactsPaginateTypeDef, + ListDeviceInstancesRequestListDeviceInstancesPaginateTypeDef, + ListDevicePoolsRequestListDevicePoolsPaginateTypeDef, + ListDevicesRequestListDevicesPaginateTypeDef, + ListInstanceProfilesRequestListInstanceProfilesPaginateTypeDef, + ListJobsRequestListJobsPaginateTypeDef, + ListNetworkProfilesRequestListNetworkProfilesPaginateTypeDef, + ListOfferingPromotionsRequestListOfferingPromotionsPaginateTypeDef, + ListOfferingTransactionsRequestListOfferingTransactionsPaginateTypeDef, + ListOfferingsRequestListOfferingsPaginateTypeDef, + ListProjectsRequestListProjectsPaginateTypeDef, + ListRemoteAccessSessionsRequestListRemoteAccessSessionsPaginateTypeDef, + ListRunsRequestListRunsPaginateTypeDef, + ListSamplesRequestListSamplesPaginateTypeDef, + ListSuitesRequestListSuitesPaginateTypeDef, + ListTestsRequestListTestsPaginateTypeDef, + ListUniqueProblemsRequestListUniqueProblemsPaginateTypeDef, + ListUploadsRequestListUploadsPaginateTypeDef, + ListVPCEConfigurationsRequestListVPCEConfigurationsPaginateTypeDef, + GetTestGridSessionResultTypeDef, + ListTestGridSessionsResultTypeDef, + ListOfferingPromotionsResultTypeDef, + ListSamplesResultTypeDef, + ListTagsForResourceResponseTypeDef, + TagResourceRequestRequestTypeDef, + ListTestGridSessionActionsResultTypeDef, + ListTestGridSessionArtifactsResultTypeDef, + RecurringChargeTypeDef, + ScheduleRunConfigurationTypeDef, + GetAccountSettingsResultTypeDef, + CreateDevicePoolResultTypeDef, + GetDevicePoolResultTypeDef, + ListDevicePoolsResultTypeDef, + UpdateDevicePoolResultTypeDef, + DeviceTypeDef, + GetDeviceInstanceResultTypeDef, + ListDeviceInstancesResultTypeDef, + UpdateDeviceInstanceResultTypeDef, + CreateProjectResultTypeDef, + GetProjectResultTypeDef, + ListProjectsResultTypeDef, + UpdateProjectResultTypeDef, + CreateTestGridProjectResultTypeDef, + GetTestGridProjectResultTypeDef, + ListTestGridProjectsResultTypeDef, + UpdateTestGridProjectResultTypeDef, + RunTypeDef, + GetSuiteResultTypeDef, + ListSuitesResultTypeDef, + GetTestResultTypeDef, + ListTestsResultTypeDef, + OfferingTypeDef, + GetDevicePoolCompatibilityRequestRequestTypeDef, + ScheduleRunRequestRequestTypeDef, + DevicePoolCompatibilityResultTypeDef, + GetDeviceResultTypeDef, + JobTypeDef, + ListDevicesResultTypeDef, + ProblemTypeDef, + RemoteAccessSessionTypeDef, + GetRunResultTypeDef, + ListRunsResultTypeDef, + ScheduleRunResultTypeDef, + StopRunResultTypeDef, + ListOfferingsResultTypeDef, + OfferingStatusTypeDef, + GetDevicePoolCompatibilityResultTypeDef, + GetJobResultTypeDef, + ListJobsResultTypeDef, + StopJobResultTypeDef, + UniqueProblemTypeDef, + CreateRemoteAccessSessionResultTypeDef, + GetRemoteAccessSessionResultTypeDef, + ListRemoteAccessSessionsResultTypeDef, + StopRemoteAccessSessionResultTypeDef, + GetOfferingStatusResultTypeDef, + OfferingTransactionTypeDef, + ListUniqueProblemsResultTypeDef, + ListOfferingTransactionsResultTypeDef, + PurchaseOfferingResultTypeDef, + RenewOfferingResultTypeDef, +) + + +def get_structure() -> TrialMinutesTypeDef: + return {...} +``` + +<a id="how-it-works"></a> + +## How it works + +Fully automated +[mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder) carefully +generates type annotations for each service, patiently waiting for `boto3` +updates. It delivers a drop-in type annotations for you and makes sure that: + +- All available `boto3` services are covered. +- Each public class and method of every `boto3` service gets valid type + annotations extracted from the documentation (blame `botocore` docs if types + are incorrect). +- Type annotations include up-to-date documentation. +- Link to documentation is provided for every method. +- Code is processed by [black](https://github.com/psf/black) and + [isort](https://github.com/PyCQA/isort) for readability. + +<a id="what's-new"></a> + +## What's new + +<a id="implemented-features"></a> + +### Implemented features + +- Fully type annotated `boto3`, `botocore` and `aiobotocore` libraries +- `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs` + compatibility +- `Client`, `ServiceResource`, `Resource`, `Waiter` `Paginator` type + annotations for each service +- Generated `TypeDefs` for each service +- Generated `Literals` for each service +- Auto discovery of types for `boto3.client` and `boto3.session` calls +- Auto discovery of types for `session.client` and `session.session` calls +- Auto discovery of types for `client.get_waiter` and `client.get_paginator` + calls +- Auto discovery of types for `ServiceResource` and `Resource` collections +- Auto discovery of types for `aiobotocore.Session.create_client` calls + +<a id="latest-changes"></a> + +### Latest changes + +Builder changelog can be found in +[Releases](https://github.com/youtype/mypy_boto3_builder/releases). + +<a id="versioning"></a> + +## Versioning + +`mypy-boto3-devicefarm` version is the same as related `boto3` version and +follows [PEP 440](https://www.python.org/dev/peps/pep-0440/) format. + +<a id="thank-you"></a> + +## 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 + +<a id="documentation"></a> + +## Documentation + +All services type annotations can be found in +[boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_devicefarm/) + +<a id="support-and-contributing"></a> + +## 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-devicefarm +Provides: python3-mypy-boto3-devicefarm-doc +%description help +<a id="mypy-boto3-devicefarm"></a> + +# mypy-boto3-devicefarm + +[](https://pypi.org/project/mypy-boto3-devicefarm) +[](https://pypi.org/project/mypy-boto3-devicefarm) +[](https://mypy-boto3-builder.readthedocs.io/) +[](https://pypistats.org/packages/mypy-boto3-devicefarm) + + + +Type annotations for +[boto3.DeviceFarm 1.26.0](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/devicefarm.html#DeviceFarm) +service compatible with [VSCode](https://code.visualstudio.com/), +[PyCharm](https://www.jetbrains.com/pycharm/), +[Emacs](https://www.gnu.org/software/emacs/), +[Sublime Text](https://www.sublimetext.com/), +[mypy](https://github.com/python/mypy), +[pyright](https://github.com/microsoft/pyright) and other tools. + +Generated by +[mypy-boto3-builder 7.11.10](https://github.com/youtype/mypy_boto3_builder). + +More information can be found on +[boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in +[mypy-boto3-devicefarm docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_devicefarm/). + +See how it helps to find and fix potential bugs: + + + +- [mypy-boto3-devicefarm](#mypy-boto3-devicefarm) + - [How to install](#how-to-install) + - [VSCode extension](#vscode-extension) + - [From PyPI with pip](#from-pypi-with-pip) + - [How to uninstall](#how-to-uninstall) + - [Usage](#usage) + - [VSCode](#vscode) + - [PyCharm](#pycharm) + - [Emacs](#emacs) + - [Sublime Text](#sublime-text) + - [Other IDEs](#other-ides) + - [mypy](#mypy) + - [pyright](#pyright) + - [Explicit type annotations](#explicit-type-annotations) + - [Client annotations](#client-annotations) + - [Paginators annotations](#paginators-annotations) + - [Literals](#literals) + - [Typed dictionaries](#typed-dictionaries) + - [How it works](#how-it-works) + - [What's new](#what's-new) + - [Implemented features](#implemented-features) + - [Latest changes](#latest-changes) + - [Versioning](#versioning) + - [Thank you](#thank-you) + - [Documentation](#documentation) + - [Support and contributing](#support-and-contributing) + +<a id="how-to-install"></a> + +## How to install + +<a id="vscode-extension"></a> + +### 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 `DeviceFarm`. + +<a id="from-pypi-with-pip"></a> + +### From PyPI with pip + +Install `boto3-stubs` for `DeviceFarm` service. + +```bash +# install with boto3 type annotations +python -m pip install 'boto3-stubs[devicefarm]' + + +# 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[devicefarm]' + + +# standalone installation +python -m pip install mypy-boto3-devicefarm +``` + +<a id="how-to-uninstall"></a> + +## How to uninstall + +```bash +python -m pip uninstall -y mypy-boto3-devicefarm +``` + +<a id="usage"></a> + +## Usage + +<a id="vscode"></a> + +### 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[devicefarm]` in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]' +``` + +Both type checking and code completion should now work. No explicit type +annotations required, write your `boto3` code as usual. + +<a id="pycharm"></a> + +### PyCharm + +Install `boto3-stubs-lite[devicefarm]` in your environment: + +```bash +python -m pip install 'boto3-stubs-lite[devicefarm]'` +``` + +Both type checking and code completion should now work. Explicit type +annotations **are required**. + +Use `boto3-stubs` package instead for implicit type discovery. + +<a id="emacs"></a> + +### Emacs + +- Install `boto3-stubs` with services you use in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]' +``` + +- 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. + +<a id="sublime-text"></a> + +### Sublime Text + +- Install `boto3-stubs[devicefarm]` with services you use in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]' +``` + +- 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. + +<a id="other-ides"></a> + +### Other IDEs + +Not tested, but as long as your IDE supports `mypy` or `pyright`, everything +should work. + +<a id="mypy"></a> + +### mypy + +- Install `mypy`: `python -m pip install mypy` +- Install `boto3-stubs[devicefarm]` in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]'` +``` + +Type checking should now work. No explicit type annotations required, write +your `boto3` code as usual. + +<a id="pyright"></a> + +### pyright + +- Install `pyright`: `npm i -g pyright` +- Install `boto3-stubs[devicefarm]` in your environment: + +```bash +python -m pip install 'boto3-stubs[devicefarm]' +``` + +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. + +<a id="explicit-type-annotations"></a> + +## Explicit type annotations + +<a id="client-annotations"></a> + +### Client annotations + +`DeviceFarmClient` provides annotations for `boto3.client("devicefarm")`. + +```python +from boto3.session import Session + +from mypy_boto3_devicefarm import DeviceFarmClient + +client: DeviceFarmClient = Session().client("devicefarm") + +# now client usage is checked by mypy and IDE should provide code completion +``` + +<a id="paginators-annotations"></a> + +### Paginators annotations + +`mypy_boto3_devicefarm.paginator` module contains type annotations for all +paginators. + +```python +from boto3.session import Session + +from mypy_boto3_devicefarm import DeviceFarmClient +from mypy_boto3_devicefarm.paginator import ( + GetOfferingStatusPaginator, + ListArtifactsPaginator, + ListDeviceInstancesPaginator, + ListDevicePoolsPaginator, + ListDevicesPaginator, + ListInstanceProfilesPaginator, + ListJobsPaginator, + ListNetworkProfilesPaginator, + ListOfferingPromotionsPaginator, + ListOfferingTransactionsPaginator, + ListOfferingsPaginator, + ListProjectsPaginator, + ListRemoteAccessSessionsPaginator, + ListRunsPaginator, + ListSamplesPaginator, + ListSuitesPaginator, + ListTestsPaginator, + ListUniqueProblemsPaginator, + ListUploadsPaginator, + ListVPCEConfigurationsPaginator, +) + +client: DeviceFarmClient = Session().client("devicefarm") + +# Explicit type annotations are optional here +# Types should be correctly discovered by mypy and IDEs +get_offering_status_paginator: GetOfferingStatusPaginator = client.get_paginator( + "get_offering_status" +) +list_artifacts_paginator: ListArtifactsPaginator = client.get_paginator("list_artifacts") +list_device_instances_paginator: ListDeviceInstancesPaginator = client.get_paginator( + "list_device_instances" +) +list_device_pools_paginator: ListDevicePoolsPaginator = client.get_paginator("list_device_pools") +list_devices_paginator: ListDevicesPaginator = client.get_paginator("list_devices") +list_instance_profiles_paginator: ListInstanceProfilesPaginator = client.get_paginator( + "list_instance_profiles" +) +list_jobs_paginator: ListJobsPaginator = client.get_paginator("list_jobs") +list_network_profiles_paginator: ListNetworkProfilesPaginator = client.get_paginator( + "list_network_profiles" +) +list_offering_promotions_paginator: ListOfferingPromotionsPaginator = client.get_paginator( + "list_offering_promotions" +) +list_offering_transactions_paginator: ListOfferingTransactionsPaginator = client.get_paginator( + "list_offering_transactions" +) +list_offerings_paginator: ListOfferingsPaginator = client.get_paginator("list_offerings") +list_projects_paginator: ListProjectsPaginator = client.get_paginator("list_projects") +list_remote_access_sessions_paginator: ListRemoteAccessSessionsPaginator = client.get_paginator( + "list_remote_access_sessions" +) +list_runs_paginator: ListRunsPaginator = client.get_paginator("list_runs") +list_samples_paginator: ListSamplesPaginator = client.get_paginator("list_samples") +list_suites_paginator: ListSuitesPaginator = client.get_paginator("list_suites") +list_tests_paginator: ListTestsPaginator = client.get_paginator("list_tests") +list_unique_problems_paginator: ListUniqueProblemsPaginator = client.get_paginator( + "list_unique_problems" +) +list_uploads_paginator: ListUploadsPaginator = client.get_paginator("list_uploads") +list_vpce_configurations_paginator: ListVPCEConfigurationsPaginator = client.get_paginator( + "list_vpce_configurations" +) +``` + +<a id="literals"></a> + +### Literals + +`mypy_boto3_devicefarm.literals` module contains literals extracted from shapes +that can be used in user code for type checking. + +```python +from mypy_boto3_devicefarm.literals import ( + ArtifactCategoryType, + ArtifactTypeType, + BillingMethodType, + CurrencyCodeType, + DeviceAttributeType, + DeviceAvailabilityType, + DeviceFilterAttributeType, + DeviceFormFactorType, + DevicePlatformType, + DevicePoolTypeType, + ExecutionResultCodeType, + ExecutionResultType, + ExecutionStatusType, + GetOfferingStatusPaginatorName, + InstanceStatusType, + InteractionModeType, + ListArtifactsPaginatorName, + ListDeviceInstancesPaginatorName, + ListDevicePoolsPaginatorName, + ListDevicesPaginatorName, + ListInstanceProfilesPaginatorName, + ListJobsPaginatorName, + ListNetworkProfilesPaginatorName, + ListOfferingPromotionsPaginatorName, + ListOfferingTransactionsPaginatorName, + ListOfferingsPaginatorName, + ListProjectsPaginatorName, + ListRemoteAccessSessionsPaginatorName, + ListRunsPaginatorName, + ListSamplesPaginatorName, + ListSuitesPaginatorName, + ListTestsPaginatorName, + ListUniqueProblemsPaginatorName, + ListUploadsPaginatorName, + ListVPCEConfigurationsPaginatorName, + NetworkProfileTypeType, + OfferingTransactionTypeType, + OfferingTypeType, + RecurringChargeFrequencyType, + RuleOperatorType, + SampleTypeType, + TestGridSessionArtifactCategoryType, + TestGridSessionArtifactTypeType, + TestGridSessionStatusType, + TestTypeType, + UploadCategoryType, + UploadStatusType, + UploadTypeType, + DeviceFarmServiceName, + ServiceName, + ResourceServiceName, + PaginatorName, + RegionName, +) + + +def check_value(value: ArtifactCategoryType) -> bool: + ... +``` + +<a id="typed-dictionaries"></a> + +### Typed dictionaries + +`mypy_boto3_devicefarm.type_defs` module contains structures and shapes +assembled to typed dictionaries for additional type checking. + +```python +from mypy_boto3_devicefarm.type_defs import ( + TrialMinutesTypeDef, + ArtifactTypeDef, + CPUTypeDef, + CountersTypeDef, + RuleTypeDef, + ResponseMetadataTypeDef, + CreateInstanceProfileRequestRequestTypeDef, + InstanceProfileTypeDef, + CreateNetworkProfileRequestRequestTypeDef, + NetworkProfileTypeDef, + VpcConfigTypeDef, + CreateRemoteAccessSessionConfigurationTypeDef, + TestGridVpcConfigTypeDef, + CreateTestGridUrlRequestRequestTypeDef, + CreateUploadRequestRequestTypeDef, + UploadTypeDef, + CreateVPCEConfigurationRequestRequestTypeDef, + VPCEConfigurationTypeDef, + CustomerArtifactPathsTypeDef, + DeleteDevicePoolRequestRequestTypeDef, + DeleteInstanceProfileRequestRequestTypeDef, + DeleteNetworkProfileRequestRequestTypeDef, + DeleteProjectRequestRequestTypeDef, + DeleteRemoteAccessSessionRequestRequestTypeDef, + DeleteRunRequestRequestTypeDef, + DeleteTestGridProjectRequestRequestTypeDef, + DeleteUploadRequestRequestTypeDef, + DeleteVPCEConfigurationRequestRequestTypeDef, + DeviceFilterTypeDef, + DeviceMinutesTypeDef, + IncompatibilityMessageTypeDef, + ResolutionTypeDef, + ExecutionConfigurationTypeDef, + GetDeviceInstanceRequestRequestTypeDef, + ScheduleRunTestTypeDef, + GetDevicePoolRequestRequestTypeDef, + GetDeviceRequestRequestTypeDef, + GetInstanceProfileRequestRequestTypeDef, + GetJobRequestRequestTypeDef, + GetNetworkProfileRequestRequestTypeDef, + PaginatorConfigTypeDef, + GetOfferingStatusRequestRequestTypeDef, + GetProjectRequestRequestTypeDef, + GetRemoteAccessSessionRequestRequestTypeDef, + GetRunRequestRequestTypeDef, + GetSuiteRequestRequestTypeDef, + GetTestGridProjectRequestRequestTypeDef, + GetTestGridSessionRequestRequestTypeDef, + TestGridSessionTypeDef, + GetTestRequestRequestTypeDef, + GetUploadRequestRequestTypeDef, + GetVPCEConfigurationRequestRequestTypeDef, + InstallToRemoteAccessSessionRequestRequestTypeDef, + ListArtifactsRequestRequestTypeDef, + ListDeviceInstancesRequestRequestTypeDef, + ListDevicePoolsRequestRequestTypeDef, + ListInstanceProfilesRequestRequestTypeDef, + ListJobsRequestRequestTypeDef, + ListNetworkProfilesRequestRequestTypeDef, + ListOfferingPromotionsRequestRequestTypeDef, + OfferingPromotionTypeDef, + ListOfferingTransactionsRequestRequestTypeDef, + ListOfferingsRequestRequestTypeDef, + ListProjectsRequestRequestTypeDef, + ListRemoteAccessSessionsRequestRequestTypeDef, + ListRunsRequestRequestTypeDef, + ListSamplesRequestRequestTypeDef, + SampleTypeDef, + ListSuitesRequestRequestTypeDef, + ListTagsForResourceRequestRequestTypeDef, + TagTypeDef, + ListTestGridProjectsRequestRequestTypeDef, + ListTestGridSessionActionsRequestRequestTypeDef, + TestGridSessionActionTypeDef, + ListTestGridSessionArtifactsRequestRequestTypeDef, + TestGridSessionArtifactTypeDef, + ListTestGridSessionsRequestRequestTypeDef, + ListTestsRequestRequestTypeDef, + ListUniqueProblemsRequestRequestTypeDef, + ListUploadsRequestRequestTypeDef, + ListVPCEConfigurationsRequestRequestTypeDef, + LocationTypeDef, + MonetaryAmountTypeDef, + ProblemDetailTypeDef, + PurchaseOfferingRequestRequestTypeDef, + RadiosTypeDef, + RenewOfferingRequestRequestTypeDef, + StopJobRequestRequestTypeDef, + StopRemoteAccessSessionRequestRequestTypeDef, + StopRunRequestRequestTypeDef, + UntagResourceRequestRequestTypeDef, + UpdateDeviceInstanceRequestRequestTypeDef, + UpdateInstanceProfileRequestRequestTypeDef, + UpdateNetworkProfileRequestRequestTypeDef, + UpdateUploadRequestRequestTypeDef, + UpdateVPCEConfigurationRequestRequestTypeDef, + AccountSettingsTypeDef, + CreateDevicePoolRequestRequestTypeDef, + DevicePoolTypeDef, + UpdateDevicePoolRequestRequestTypeDef, + CreateTestGridUrlResultTypeDef, + ListArtifactsResultTypeDef, + CreateInstanceProfileResultTypeDef, + DeviceInstanceTypeDef, + GetInstanceProfileResultTypeDef, + ListInstanceProfilesResultTypeDef, + UpdateInstanceProfileResultTypeDef, + CreateNetworkProfileResultTypeDef, + GetNetworkProfileResultTypeDef, + ListNetworkProfilesResultTypeDef, + UpdateNetworkProfileResultTypeDef, + CreateProjectRequestRequestTypeDef, + ProjectTypeDef, + UpdateProjectRequestRequestTypeDef, + CreateRemoteAccessSessionRequestRequestTypeDef, + CreateTestGridProjectRequestRequestTypeDef, + TestGridProjectTypeDef, + UpdateTestGridProjectRequestRequestTypeDef, + CreateUploadResultTypeDef, + GetUploadResultTypeDef, + InstallToRemoteAccessSessionResultTypeDef, + ListUploadsResultTypeDef, + UpdateUploadResultTypeDef, + CreateVPCEConfigurationResultTypeDef, + GetVPCEConfigurationResultTypeDef, + ListVPCEConfigurationsResultTypeDef, + UpdateVPCEConfigurationResultTypeDef, + DeviceSelectionConfigurationTypeDef, + DeviceSelectionResultTypeDef, + ListDevicesRequestRequestTypeDef, + SuiteTypeDef, + TestTypeDef, + GetOfferingStatusRequestGetOfferingStatusPaginateTypeDef, + ListArtifactsRequestListArtifactsPaginateTypeDef, + ListDeviceInstancesRequestListDeviceInstancesPaginateTypeDef, + ListDevicePoolsRequestListDevicePoolsPaginateTypeDef, + ListDevicesRequestListDevicesPaginateTypeDef, + ListInstanceProfilesRequestListInstanceProfilesPaginateTypeDef, + ListJobsRequestListJobsPaginateTypeDef, + ListNetworkProfilesRequestListNetworkProfilesPaginateTypeDef, + ListOfferingPromotionsRequestListOfferingPromotionsPaginateTypeDef, + ListOfferingTransactionsRequestListOfferingTransactionsPaginateTypeDef, + ListOfferingsRequestListOfferingsPaginateTypeDef, + ListProjectsRequestListProjectsPaginateTypeDef, + ListRemoteAccessSessionsRequestListRemoteAccessSessionsPaginateTypeDef, + ListRunsRequestListRunsPaginateTypeDef, + ListSamplesRequestListSamplesPaginateTypeDef, + ListSuitesRequestListSuitesPaginateTypeDef, + ListTestsRequestListTestsPaginateTypeDef, + ListUniqueProblemsRequestListUniqueProblemsPaginateTypeDef, + ListUploadsRequestListUploadsPaginateTypeDef, + ListVPCEConfigurationsRequestListVPCEConfigurationsPaginateTypeDef, + GetTestGridSessionResultTypeDef, + ListTestGridSessionsResultTypeDef, + ListOfferingPromotionsResultTypeDef, + ListSamplesResultTypeDef, + ListTagsForResourceResponseTypeDef, + TagResourceRequestRequestTypeDef, + ListTestGridSessionActionsResultTypeDef, + ListTestGridSessionArtifactsResultTypeDef, + RecurringChargeTypeDef, + ScheduleRunConfigurationTypeDef, + GetAccountSettingsResultTypeDef, + CreateDevicePoolResultTypeDef, + GetDevicePoolResultTypeDef, + ListDevicePoolsResultTypeDef, + UpdateDevicePoolResultTypeDef, + DeviceTypeDef, + GetDeviceInstanceResultTypeDef, + ListDeviceInstancesResultTypeDef, + UpdateDeviceInstanceResultTypeDef, + CreateProjectResultTypeDef, + GetProjectResultTypeDef, + ListProjectsResultTypeDef, + UpdateProjectResultTypeDef, + CreateTestGridProjectResultTypeDef, + GetTestGridProjectResultTypeDef, + ListTestGridProjectsResultTypeDef, + UpdateTestGridProjectResultTypeDef, + RunTypeDef, + GetSuiteResultTypeDef, + ListSuitesResultTypeDef, + GetTestResultTypeDef, + ListTestsResultTypeDef, + OfferingTypeDef, + GetDevicePoolCompatibilityRequestRequestTypeDef, + ScheduleRunRequestRequestTypeDef, + DevicePoolCompatibilityResultTypeDef, + GetDeviceResultTypeDef, + JobTypeDef, + ListDevicesResultTypeDef, + ProblemTypeDef, + RemoteAccessSessionTypeDef, + GetRunResultTypeDef, + ListRunsResultTypeDef, + ScheduleRunResultTypeDef, + StopRunResultTypeDef, + ListOfferingsResultTypeDef, + OfferingStatusTypeDef, + GetDevicePoolCompatibilityResultTypeDef, + GetJobResultTypeDef, + ListJobsResultTypeDef, + StopJobResultTypeDef, + UniqueProblemTypeDef, + CreateRemoteAccessSessionResultTypeDef, + GetRemoteAccessSessionResultTypeDef, + ListRemoteAccessSessionsResultTypeDef, + StopRemoteAccessSessionResultTypeDef, + GetOfferingStatusResultTypeDef, + OfferingTransactionTypeDef, + ListUniqueProblemsResultTypeDef, + ListOfferingTransactionsResultTypeDef, + PurchaseOfferingResultTypeDef, + RenewOfferingResultTypeDef, +) + + +def get_structure() -> TrialMinutesTypeDef: + return {...} +``` + +<a id="how-it-works"></a> + +## How it works + +Fully automated +[mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder) carefully +generates type annotations for each service, patiently waiting for `boto3` +updates. It delivers a drop-in type annotations for you and makes sure that: + +- All available `boto3` services are covered. +- Each public class and method of every `boto3` service gets valid type + annotations extracted from the documentation (blame `botocore` docs if types + are incorrect). +- Type annotations include up-to-date documentation. +- Link to documentation is provided for every method. +- Code is processed by [black](https://github.com/psf/black) and + [isort](https://github.com/PyCQA/isort) for readability. + +<a id="what's-new"></a> + +## What's new + +<a id="implemented-features"></a> + +### Implemented features + +- Fully type annotated `boto3`, `botocore` and `aiobotocore` libraries +- `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs` + compatibility +- `Client`, `ServiceResource`, `Resource`, `Waiter` `Paginator` type + annotations for each service +- Generated `TypeDefs` for each service +- Generated `Literals` for each service +- Auto discovery of types for `boto3.client` and `boto3.session` calls +- Auto discovery of types for `session.client` and `session.session` calls +- Auto discovery of types for `client.get_waiter` and `client.get_paginator` + calls +- Auto discovery of types for `ServiceResource` and `Resource` collections +- Auto discovery of types for `aiobotocore.Session.create_client` calls + +<a id="latest-changes"></a> + +### Latest changes + +Builder changelog can be found in +[Releases](https://github.com/youtype/mypy_boto3_builder/releases). + +<a id="versioning"></a> + +## Versioning + +`mypy-boto3-devicefarm` version is the same as related `boto3` version and +follows [PEP 440](https://www.python.org/dev/peps/pep-0440/) format. + +<a id="thank-you"></a> + +## 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 + +<a id="documentation"></a> + +## Documentation + +All services type annotations can be found in +[boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_devicefarm/) + +<a id="support-and-contributing"></a> + +## 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-devicefarm-1.26.0.post1 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-mypy-boto3-devicefarm -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Apr 11 2023 Python_Bot <Python_Bot@openeuler.org> - 1.26.0.post1-1 +- Package Spec generated |
