From 0710b4160a909aac9f6578dac5f84c312bea28d5 Mon Sep 17 00:00:00 2001 From: "gcf-owl-bot[bot]" <78513119+gcf-owl-bot[bot]@users.noreply.github.com> Date: Mon, 1 Nov 2021 14:50:13 +0000 Subject: [PATCH] chore: use gapic-generator-python 0.53.4 (#167) - [ ] Regenerate this pull request now. docs: list oneofs in docstring fix(deps): require google-api-core >= 1.28.0 fix(deps): drop packaging dependency fix: fix extras_require typo in setup.py committer: busunkim96@ PiperOrigin-RevId: 406468269 Source-Link: https://github.com/googleapis/googleapis/commit/83d81b0c8fc22291a13398d6d77f02dc97a5b6f4 Source-Link: https://github.com/googleapis/googleapis-gen/commit/2ff001fbacb9e77e71d734de5f955c05fdae8526 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMmZmMDAxZmJhY2I5ZTc3ZTcxZDczNGRlNWY5NTVjMDVmZGFlODUyNiJ9 --- .../data_labeling_service/async_client.py | 218 +++++++++--------- .../services/data_labeling_service/client.py | 70 +++--- .../data_labeling_service/transports/base.py | 37 +-- .../data_labeling_service/transports/grpc.py | 2 +- .../transports/grpc_asyncio.py | 3 +- .../datalabeling_v1beta1/types/annotation.py | 43 ++++ .../types/data_labeling_service.py | 31 +++ .../datalabeling_v1beta1/types/dataset.py | 56 +++++ .../datalabeling_v1beta1/types/evaluation.py | 13 ++ .../types/evaluation_job.py | 10 + .../datalabeling_v1beta1/types/operations.py | 19 ++ setup.py | 5 +- testing/constraints-3.6.txt | 6 +- .../test_data_labeling_service.py | 91 +------- 14 files changed, 339 insertions(+), 265 deletions(-) diff --git a/google/cloud/datalabeling_v1beta1/services/data_labeling_service/async_client.py b/google/cloud/datalabeling_v1beta1/services/data_labeling_service/async_client.py index 3018c1a..26efd1d 100644 --- a/google/cloud/datalabeling_v1beta1/services/data_labeling_service/async_client.py +++ b/google/cloud/datalabeling_v1beta1/services/data_labeling_service/async_client.py @@ -19,13 +19,15 @@ from typing import Dict, Sequence, Tuple, Type, Union import pkg_resources -import google.api_core.client_options as ClientOptions # type: ignore +from google.api_core.client_options import ClientOptions # type: ignore from google.api_core import exceptions as core_exceptions # type: ignore from google.api_core import gapic_v1 # type: ignore from google.api_core import retry as retries # type: ignore from google.auth import credentials as ga_credentials # type: ignore from google.oauth2 import service_account # type: ignore +OptionalRetry = Union[retries.Retry, object] + from google.api_core import operation # type: ignore from google.api_core import operation_async # type: ignore from google.cloud.datalabeling_v1beta1.services.data_labeling_service import pagers @@ -211,11 +213,11 @@ def __init__( async def create_dataset( self, - request: data_labeling_service.CreateDatasetRequest = None, + request: Union[data_labeling_service.CreateDatasetRequest, dict] = None, *, parent: str = None, dataset: gcd_dataset.Dataset = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> gcd_dataset.Dataset: @@ -223,7 +225,7 @@ async def create_dataset( resource. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.CreateDatasetRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.CreateDatasetRequest, dict]): The request object. Request message for CreateDataset. parent (:class:`str`): Required. Dataset resource parent, format: @@ -292,17 +294,17 @@ async def create_dataset( async def get_dataset( self, - request: data_labeling_service.GetDatasetRequest = None, + request: Union[data_labeling_service.GetDatasetRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> dataset.Dataset: r"""Gets dataset by resource name. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.GetDatasetRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.GetDatasetRequest, dict]): The request object. Request message for GetDataSet. name (:class:`str`): Required. Dataset resource name, format: @@ -374,11 +376,11 @@ async def get_dataset( async def list_datasets( self, - request: data_labeling_service.ListDatasetsRequest = None, + request: Union[data_labeling_service.ListDatasetsRequest, dict] = None, *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListDatasetsAsyncPager: @@ -386,7 +388,7 @@ async def list_datasets( supported. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.ListDatasetsRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.ListDatasetsRequest, dict]): The request object. Request message for ListDataset. parent (:class:`str`): Required. Dataset resource parent, format: @@ -474,17 +476,17 @@ async def list_datasets( async def delete_dataset( self, - request: data_labeling_service.DeleteDatasetRequest = None, + request: Union[data_labeling_service.DeleteDatasetRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: r"""Deletes a dataset by resource name. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.DeleteDatasetRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.DeleteDatasetRequest, dict]): The request object. Request message for DeleteDataset. name (:class:`str`): Required. Dataset resource name, format: @@ -547,11 +549,11 @@ async def delete_dataset( async def import_data( self, - request: data_labeling_service.ImportDataRequest = None, + request: Union[data_labeling_service.ImportDataRequest, dict] = None, *, name: str = None, input_config: dataset.InputConfig = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: @@ -563,7 +565,7 @@ async def import_data( started while importing is still ongoing. Vice versa. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.ImportDataRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.ImportDataRequest, dict]): The request object. Request message for ImportData API. name (:class:`str`): Required. Dataset resource name, format: @@ -643,20 +645,20 @@ async def import_data( async def export_data( self, - request: data_labeling_service.ExportDataRequest = None, + request: Union[data_labeling_service.ExportDataRequest, dict] = None, *, name: str = None, annotated_dataset: str = None, filter: str = None, output_config: dataset.OutputConfig = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: r"""Exports data and annotations from dataset. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.ExportDataRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.ExportDataRequest, dict]): The request object. Request message for ExportData API. name (:class:`str`): Required. Dataset resource name, format: @@ -767,10 +769,10 @@ async def export_data( async def get_data_item( self, - request: data_labeling_service.GetDataItemRequest = None, + request: Union[data_labeling_service.GetDataItemRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> dataset.DataItem: @@ -778,7 +780,7 @@ async def get_data_item( API can be called after data are imported into dataset. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.GetDataItemRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.GetDataItemRequest, dict]): The request object. Request message for GetDataItem. name (:class:`str`): Required. The name of the data item to get, format: @@ -848,11 +850,11 @@ async def get_data_item( async def list_data_items( self, - request: data_labeling_service.ListDataItemsRequest = None, + request: Union[data_labeling_service.ListDataItemsRequest, dict] = None, *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListDataItemsAsyncPager: @@ -861,7 +863,7 @@ async def list_data_items( supported. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.ListDataItemsRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.ListDataItemsRequest, dict]): The request object. Request message for ListDataItems. parent (:class:`str`): Required. Name of the dataset to list data items, @@ -949,17 +951,17 @@ async def list_data_items( async def get_annotated_dataset( self, - request: data_labeling_service.GetAnnotatedDatasetRequest = None, + request: Union[data_labeling_service.GetAnnotatedDatasetRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> dataset.AnnotatedDataset: r"""Gets an annotated dataset by resource name. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.GetAnnotatedDatasetRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.GetAnnotatedDatasetRequest, dict]): The request object. Request message for GetAnnotatedDataset. name (:class:`str`): @@ -1034,11 +1036,11 @@ async def get_annotated_dataset( async def list_annotated_datasets( self, - request: data_labeling_service.ListAnnotatedDatasetsRequest = None, + request: Union[data_labeling_service.ListAnnotatedDatasetsRequest, dict] = None, *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListAnnotatedDatasetsAsyncPager: @@ -1046,7 +1048,7 @@ async def list_annotated_datasets( supported. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.ListAnnotatedDatasetsRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.ListAnnotatedDatasetsRequest, dict]): The request object. Request message for ListAnnotatedDatasets. parent (:class:`str`): @@ -1136,16 +1138,18 @@ async def list_annotated_datasets( async def delete_annotated_dataset( self, - request: data_labeling_service.DeleteAnnotatedDatasetRequest = None, + request: Union[ + data_labeling_service.DeleteAnnotatedDatasetRequest, dict + ] = None, *, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: r"""Deletes an annotated dataset by resource name. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.DeleteAnnotatedDatasetRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.DeleteAnnotatedDatasetRequest, dict]): The request object. Request message for DeleteAnnotatedDataset. retry (google.api_core.retry.Retry): Designation of what errors, if any, @@ -1178,12 +1182,12 @@ async def delete_annotated_dataset( async def label_image( self, - request: data_labeling_service.LabelImageRequest = None, + request: Union[data_labeling_service.LabelImageRequest, dict] = None, *, parent: str = None, basic_config: human_annotation_config.HumanAnnotationConfig = None, feature: data_labeling_service.LabelImageRequest.Feature = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: @@ -1191,7 +1195,7 @@ async def label_image( labeling task is configured by feature in the request. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.LabelImageRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.LabelImageRequest, dict]): The request object. Request message for starting an image labeling task. parent (:class:`str`): @@ -1281,12 +1285,12 @@ async def label_image( async def label_video( self, - request: data_labeling_service.LabelVideoRequest = None, + request: Union[data_labeling_service.LabelVideoRequest, dict] = None, *, parent: str = None, basic_config: human_annotation_config.HumanAnnotationConfig = None, feature: data_labeling_service.LabelVideoRequest.Feature = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: @@ -1294,7 +1298,7 @@ async def label_video( labeling task is configured by feature in the request. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.LabelVideoRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.LabelVideoRequest, dict]): The request object. Request message for LabelVideo. parent (:class:`str`): Required. Name of the dataset to request labeling task, @@ -1383,12 +1387,12 @@ async def label_video( async def label_text( self, - request: data_labeling_service.LabelTextRequest = None, + request: Union[data_labeling_service.LabelTextRequest, dict] = None, *, parent: str = None, basic_config: human_annotation_config.HumanAnnotationConfig = None, feature: data_labeling_service.LabelTextRequest.Feature = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: @@ -1396,7 +1400,7 @@ async def label_text( labeling task is configured by feature in the request. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.LabelTextRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.LabelTextRequest, dict]): The request object. Request message for LabelText. parent (:class:`str`): Required. Name of the data set to request labeling task, @@ -1485,11 +1489,11 @@ async def label_text( async def get_example( self, - request: data_labeling_service.GetExampleRequest = None, + request: Union[data_labeling_service.GetExampleRequest, dict] = None, *, name: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> dataset.Example: @@ -1497,7 +1501,7 @@ async def get_example( and annotation. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.GetExampleRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.GetExampleRequest, dict]): The request object. Request message for GetExample name (:class:`str`): Required. Name of example, format: @@ -1579,11 +1583,11 @@ async def get_example( async def list_examples( self, - request: data_labeling_service.ListExamplesRequest = None, + request: Union[data_labeling_service.ListExamplesRequest, dict] = None, *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListExamplesAsyncPager: @@ -1591,7 +1595,7 @@ async def list_examples( supported. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.ListExamplesRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.ListExamplesRequest, dict]): The request object. Request message for ListExamples. parent (:class:`str`): Required. Example resource parent. @@ -1679,11 +1683,13 @@ async def list_examples( async def create_annotation_spec_set( self, - request: data_labeling_service.CreateAnnotationSpecSetRequest = None, + request: Union[ + data_labeling_service.CreateAnnotationSpecSetRequest, dict + ] = None, *, parent: str = None, annotation_spec_set: gcd_annotation_spec_set.AnnotationSpecSet = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> gcd_annotation_spec_set.AnnotationSpecSet: @@ -1691,7 +1697,7 @@ async def create_annotation_spec_set( labels. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.CreateAnnotationSpecSetRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.CreateAnnotationSpecSetRequest, dict]): The request object. Request message for CreateAnnotationSpecSet. parent (:class:`str`): @@ -1766,17 +1772,17 @@ async def create_annotation_spec_set( async def get_annotation_spec_set( self, - request: data_labeling_service.GetAnnotationSpecSetRequest = None, + request: Union[data_labeling_service.GetAnnotationSpecSetRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> annotation_spec_set.AnnotationSpecSet: r"""Gets an annotation spec set by resource name. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.GetAnnotationSpecSetRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.GetAnnotationSpecSetRequest, dict]): The request object. Request message for GetAnnotationSpecSet. name (:class:`str`): @@ -1851,11 +1857,13 @@ async def get_annotation_spec_set( async def list_annotation_spec_sets( self, - request: data_labeling_service.ListAnnotationSpecSetsRequest = None, + request: Union[ + data_labeling_service.ListAnnotationSpecSetsRequest, dict + ] = None, *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListAnnotationSpecSetsAsyncPager: @@ -1863,7 +1871,7 @@ async def list_annotation_spec_sets( is supported. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.ListAnnotationSpecSetsRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.ListAnnotationSpecSetsRequest, dict]): The request object. Request message for ListAnnotationSpecSets. parent (:class:`str`): @@ -1952,17 +1960,19 @@ async def list_annotation_spec_sets( async def delete_annotation_spec_set( self, - request: data_labeling_service.DeleteAnnotationSpecSetRequest = None, + request: Union[ + data_labeling_service.DeleteAnnotationSpecSetRequest, dict + ] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: r"""Deletes an annotation spec set by resource name. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.DeleteAnnotationSpecSetRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.DeleteAnnotationSpecSetRequest, dict]): The request object. Request message for DeleteAnnotationSpecSet. name (:class:`str`): @@ -2026,11 +2036,11 @@ async def delete_annotation_spec_set( async def create_instruction( self, - request: data_labeling_service.CreateInstructionRequest = None, + request: Union[data_labeling_service.CreateInstructionRequest, dict] = None, *, parent: str = None, instruction: gcd_instruction.Instruction = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation_async.AsyncOperation: @@ -2038,7 +2048,7 @@ async def create_instruction( labeled. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.CreateInstructionRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.CreateInstructionRequest, dict]): The request object. Request message for CreateInstruction. parent (:class:`str`): @@ -2118,17 +2128,17 @@ async def create_instruction( async def get_instruction( self, - request: data_labeling_service.GetInstructionRequest = None, + request: Union[data_labeling_service.GetInstructionRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> instruction.Instruction: r"""Gets an instruction by resource name. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.GetInstructionRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.GetInstructionRequest, dict]): The request object. Request message for GetInstruction. name (:class:`str`): Required. Instruction resource name, format: @@ -2200,11 +2210,11 @@ async def get_instruction( async def list_instructions( self, - request: data_labeling_service.ListInstructionsRequest = None, + request: Union[data_labeling_service.ListInstructionsRequest, dict] = None, *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListInstructionsAsyncPager: @@ -2212,7 +2222,7 @@ async def list_instructions( supported. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.ListInstructionsRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.ListInstructionsRequest, dict]): The request object. Request message for ListInstructions. parent (:class:`str`): @@ -2301,17 +2311,17 @@ async def list_instructions( async def delete_instruction( self, - request: data_labeling_service.DeleteInstructionRequest = None, + request: Union[data_labeling_service.DeleteInstructionRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: r"""Deletes an instruction object by resource name. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.DeleteInstructionRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.DeleteInstructionRequest, dict]): The request object. Request message for DeleteInstruction. name (:class:`str`): @@ -2375,10 +2385,10 @@ async def delete_instruction( async def get_evaluation( self, - request: data_labeling_service.GetEvaluationRequest = None, + request: Union[data_labeling_service.GetEvaluationRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> evaluation.Evaluation: @@ -2386,7 +2396,7 @@ async def get_evaluation( [projects.evaluations.search][google.cloud.datalabeling.v1beta1.DataLabelingService.SearchEvaluations]). Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.GetEvaluationRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.GetEvaluationRequest, dict]): The request object. Request message for GetEvaluation. name (:class:`str`): Required. Name of the evaluation. Format: @@ -2459,11 +2469,11 @@ async def get_evaluation( async def search_evaluations( self, - request: data_labeling_service.SearchEvaluationsRequest = None, + request: Union[data_labeling_service.SearchEvaluationsRequest, dict] = None, *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.SearchEvaluationsAsyncPager: @@ -2472,7 +2482,7 @@ async def search_evaluations( within a project. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.SearchEvaluationsRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.SearchEvaluationsRequest, dict]): The request object. Request message for SearchEvaluation. parent (:class:`str`): @@ -2591,10 +2601,12 @@ async def search_evaluations( async def search_example_comparisons( self, - request: data_labeling_service.SearchExampleComparisonsRequest = None, + request: Union[ + data_labeling_service.SearchExampleComparisonsRequest, dict + ] = None, *, parent: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.SearchExampleComparisonsAsyncPager: @@ -2604,7 +2616,7 @@ async def search_example_comparisons( Search by providing an evaluation ID. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.SearchExampleComparisonsRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.SearchExampleComparisonsRequest, dict]): The request object. Request message of SearchExampleComparisons. parent (:class:`str`): @@ -2677,18 +2689,18 @@ async def search_example_comparisons( async def create_evaluation_job( self, - request: data_labeling_service.CreateEvaluationJobRequest = None, + request: Union[data_labeling_service.CreateEvaluationJobRequest, dict] = None, *, parent: str = None, job: evaluation_job.EvaluationJob = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> evaluation_job.EvaluationJob: r"""Creates an evaluation job. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.CreateEvaluationJobRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.CreateEvaluationJobRequest, dict]): The request object. Request message for CreateEvaluationJob. parent (:class:`str`): @@ -2762,11 +2774,11 @@ async def create_evaluation_job( async def update_evaluation_job( self, - request: data_labeling_service.UpdateEvaluationJobRequest = None, + request: Union[data_labeling_service.UpdateEvaluationJobRequest, dict] = None, *, evaluation_job: gcd_evaluation_job.EvaluationJob = None, update_mask: field_mask_pb2.FieldMask = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> gcd_evaluation_job.EvaluationJob: @@ -2780,7 +2792,7 @@ async def update_evaluation_job( you must delete the job and create a new one. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.UpdateEvaluationJobRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.UpdateEvaluationJobRequest, dict]): The request object. Request message for UpdateEvaluationJob. evaluation_job (:class:`google.cloud.datalabeling_v1beta1.types.EvaluationJob`): @@ -2863,17 +2875,17 @@ async def update_evaluation_job( async def get_evaluation_job( self, - request: data_labeling_service.GetEvaluationJobRequest = None, + request: Union[data_labeling_service.GetEvaluationJobRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> evaluation_job.EvaluationJob: r"""Gets an evaluation job by resource name. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.GetEvaluationJobRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.GetEvaluationJobRequest, dict]): The request object. Request message for GetEvaluationJob. name (:class:`str`): @@ -2949,10 +2961,10 @@ async def get_evaluation_job( async def pause_evaluation_job( self, - request: data_labeling_service.PauseEvaluationJobRequest = None, + request: Union[data_labeling_service.PauseEvaluationJobRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: @@ -2960,7 +2972,7 @@ async def pause_evaluation_job( already in a ``PAUSED`` state is a no-op. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.PauseEvaluationJobRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.PauseEvaluationJobRequest, dict]): The request object. Request message for PauseEvaluationJob. name (:class:`str`): @@ -3016,10 +3028,10 @@ async def pause_evaluation_job( async def resume_evaluation_job( self, - request: data_labeling_service.ResumeEvaluationJobRequest = None, + request: Union[data_labeling_service.ResumeEvaluationJobRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: @@ -3028,7 +3040,7 @@ async def resume_evaluation_job( evaluation job is a no-op. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.ResumeEvaluationJobRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.ResumeEvaluationJobRequest, dict]): The request object. Request message ResumeEvaluationJob. name (:class:`str`): Required. Name of the evaluation job that is going to be @@ -3083,17 +3095,17 @@ async def resume_evaluation_job( async def delete_evaluation_job( self, - request: data_labeling_service.DeleteEvaluationJobRequest = None, + request: Union[data_labeling_service.DeleteEvaluationJobRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: r"""Stops and deletes an evaluation job. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.DeleteEvaluationJobRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.DeleteEvaluationJobRequest, dict]): The request object. Request message DeleteEvaluationJob. name (:class:`str`): Required. Name of the evaluation job that is going to be @@ -3158,11 +3170,11 @@ async def delete_evaluation_job( async def list_evaluation_jobs( self, - request: data_labeling_service.ListEvaluationJobsRequest = None, + request: Union[data_labeling_service.ListEvaluationJobsRequest, dict] = None, *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListEvaluationJobsAsyncPager: @@ -3170,7 +3182,7 @@ async def list_evaluation_jobs( possible filters. Pagination is supported. Args: - request (:class:`google.cloud.datalabeling_v1beta1.types.ListEvaluationJobsRequest`): + request (Union[google.cloud.datalabeling_v1beta1.types.ListEvaluationJobsRequest, dict]): The request object. Request message for ListEvaluationJobs. parent (:class:`str`): diff --git a/google/cloud/datalabeling_v1beta1/services/data_labeling_service/client.py b/google/cloud/datalabeling_v1beta1/services/data_labeling_service/client.py index 97554e8..40d63a4 100644 --- a/google/cloud/datalabeling_v1beta1/services/data_labeling_service/client.py +++ b/google/cloud/datalabeling_v1beta1/services/data_labeling_service/client.py @@ -30,6 +30,8 @@ from google.auth.exceptions import MutualTLSChannelError # type: ignore from google.oauth2 import service_account # type: ignore +OptionalRetry = Union[retries.Retry, object] + from google.api_core import operation # type: ignore from google.api_core import operation_async # type: ignore from google.cloud.datalabeling_v1beta1.services.data_labeling_service import pagers @@ -488,7 +490,7 @@ def create_dataset( *, parent: str = None, dataset: gcd_dataset.Dataset = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> gcd_dataset.Dataset: @@ -568,7 +570,7 @@ def get_dataset( request: Union[data_labeling_service.GetDatasetRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> dataset.Dataset: @@ -641,7 +643,7 @@ def list_datasets( *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListDatasetsPager: @@ -730,7 +732,7 @@ def delete_dataset( request: Union[data_labeling_service.DeleteDatasetRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: @@ -794,7 +796,7 @@ def import_data( *, name: str = None, input_config: dataset.InputConfig = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: @@ -892,7 +894,7 @@ def export_data( annotated_dataset: str = None, filter: str = None, output_config: dataset.OutputConfig = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: @@ -1003,7 +1005,7 @@ def get_data_item( request: Union[data_labeling_service.GetDataItemRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> dataset.DataItem: @@ -1075,7 +1077,7 @@ def list_data_items( *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListDataItemsPager: @@ -1165,7 +1167,7 @@ def get_annotated_dataset( request: Union[data_labeling_service.GetAnnotatedDatasetRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> dataset.AnnotatedDataset: @@ -1241,7 +1243,7 @@ def list_annotated_datasets( *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListAnnotatedDatasetsPager: @@ -1333,7 +1335,7 @@ def delete_annotated_dataset( data_labeling_service.DeleteAnnotatedDatasetRequest, dict ] = None, *, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: @@ -1379,7 +1381,7 @@ def label_image( parent: str = None, basic_config: human_annotation_config.HumanAnnotationConfig = None, feature: data_labeling_service.LabelImageRequest.Feature = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: @@ -1482,7 +1484,7 @@ def label_video( parent: str = None, basic_config: human_annotation_config.HumanAnnotationConfig = None, feature: data_labeling_service.LabelVideoRequest.Feature = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: @@ -1584,7 +1586,7 @@ def label_text( parent: str = None, basic_config: human_annotation_config.HumanAnnotationConfig = None, feature: data_labeling_service.LabelTextRequest.Feature = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: @@ -1685,7 +1687,7 @@ def get_example( *, name: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> dataset.Example: @@ -1769,7 +1771,7 @@ def list_examples( *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListExamplesPager: @@ -1861,7 +1863,7 @@ def create_annotation_spec_set( *, parent: str = None, annotation_spec_set: gcd_annotation_spec_set.AnnotationSpecSet = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> gcd_annotation_spec_set.AnnotationSpecSet: @@ -1951,7 +1953,7 @@ def get_annotation_spec_set( request: Union[data_labeling_service.GetAnnotationSpecSetRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> annotation_spec_set.AnnotationSpecSet: @@ -2029,7 +2031,7 @@ def list_annotation_spec_sets( *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListAnnotationSpecSetsPager: @@ -2123,7 +2125,7 @@ def delete_annotation_spec_set( ] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: @@ -2192,7 +2194,7 @@ def create_instruction( *, parent: str = None, instruction: gcd_instruction.Instruction = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> operation.Operation: @@ -2283,7 +2285,7 @@ def get_instruction( request: Union[data_labeling_service.GetInstructionRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> instruction.Instruction: @@ -2356,7 +2358,7 @@ def list_instructions( *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListInstructionsPager: @@ -2446,7 +2448,7 @@ def delete_instruction( request: Union[data_labeling_service.DeleteInstructionRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: @@ -2510,7 +2512,7 @@ def get_evaluation( request: Union[data_labeling_service.GetEvaluationRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> evaluation.Evaluation: @@ -2585,7 +2587,7 @@ def search_evaluations( *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.SearchEvaluationsPager: @@ -2708,7 +2710,7 @@ def search_example_comparisons( ] = None, *, parent: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.SearchExampleComparisonsPager: @@ -2799,7 +2801,7 @@ def create_evaluation_job( *, parent: str = None, job: evaluation_job.EvaluationJob = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> evaluation_job.EvaluationJob: @@ -2884,7 +2886,7 @@ def update_evaluation_job( *, evaluation_job: gcd_evaluation_job.EvaluationJob = None, update_mask: field_mask_pb2.FieldMask = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> gcd_evaluation_job.EvaluationJob: @@ -2984,7 +2986,7 @@ def get_evaluation_job( request: Union[data_labeling_service.GetEvaluationJobRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> evaluation_job.EvaluationJob: @@ -3060,7 +3062,7 @@ def pause_evaluation_job( request: Union[data_labeling_service.PauseEvaluationJobRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: @@ -3127,7 +3129,7 @@ def resume_evaluation_job( request: Union[data_labeling_service.ResumeEvaluationJobRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: @@ -3194,7 +3196,7 @@ def delete_evaluation_job( request: Union[data_labeling_service.DeleteEvaluationJobRequest, dict] = None, *, name: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> None: @@ -3260,7 +3262,7 @@ def list_evaluation_jobs( *, parent: str = None, filter: str = None, - retry: retries.Retry = gapic_v1.method.DEFAULT, + retry: OptionalRetry = gapic_v1.method.DEFAULT, timeout: float = None, metadata: Sequence[Tuple[str, str]] = (), ) -> pagers.ListEvaluationJobsPager: diff --git a/google/cloud/datalabeling_v1beta1/services/data_labeling_service/transports/base.py b/google/cloud/datalabeling_v1beta1/services/data_labeling_service/transports/base.py index 42745e0..62558a8 100644 --- a/google/cloud/datalabeling_v1beta1/services/data_labeling_service/transports/base.py +++ b/google/cloud/datalabeling_v1beta1/services/data_labeling_service/transports/base.py @@ -15,7 +15,6 @@ # import abc from typing import Awaitable, Callable, Dict, Optional, Sequence, Union -import packaging.version import pkg_resources import google.auth # type: ignore @@ -50,15 +49,6 @@ except pkg_resources.DistributionNotFound: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo() -try: - # google.auth.__version__ was added in 1.26.0 - _GOOGLE_AUTH_VERSION = google.auth.__version__ -except AttributeError: - try: # try pkg_resources if it is available - _GOOGLE_AUTH_VERSION = pkg_resources.get_distribution("google-auth").version - except pkg_resources.DistributionNotFound: # pragma: NO COVER - _GOOGLE_AUTH_VERSION = None - class DataLabelingServiceTransport(abc.ABC): """Abstract transport class for DataLabelingService.""" @@ -108,7 +98,7 @@ def __init__( host += ":443" self._host = host - scopes_kwargs = self._get_scopes_kwargs(self._host, scopes) + scopes_kwargs = {"scopes": scopes, "default_scopes": self.AUTH_SCOPES} # Save the scopes. self._scopes = scopes @@ -141,29 +131,6 @@ def __init__( # Save the credentials. self._credentials = credentials - # TODO(busunkim): This method is in the base transport - # to avoid duplicating code across the transport classes. These functions - # should be deleted once the minimum required versions of google-auth is increased. - - # TODO: Remove this function once google-auth >= 1.25.0 is required - @classmethod - def _get_scopes_kwargs( - cls, host: str, scopes: Optional[Sequence[str]] - ) -> Dict[str, Optional[Sequence[str]]]: - """Returns scopes kwargs to pass to google-auth methods depending on the google-auth version""" - - scopes_kwargs = {} - - if _GOOGLE_AUTH_VERSION and ( - packaging.version.parse(_GOOGLE_AUTH_VERSION) - >= packaging.version.parse("1.25.0") - ): - scopes_kwargs = {"scopes": scopes, "default_scopes": cls.AUTH_SCOPES} - else: - scopes_kwargs = {"scopes": scopes or cls.AUTH_SCOPES} - - return scopes_kwargs - def _prep_wrapped_messages(self, client_info): # Precompute the wrapped methods. self._wrapped_methods = { @@ -547,7 +514,7 @@ def close(self): raise NotImplementedError() @property - def operations_client(self) -> operations_v1.OperationsClient: + def operations_client(self): """Return the client designed to process long-running operations.""" raise NotImplementedError() diff --git a/google/cloud/datalabeling_v1beta1/services/data_labeling_service/transports/grpc.py b/google/cloud/datalabeling_v1beta1/services/data_labeling_service/transports/grpc.py index 42b93b3..5e769b0 100644 --- a/google/cloud/datalabeling_v1beta1/services/data_labeling_service/transports/grpc.py +++ b/google/cloud/datalabeling_v1beta1/services/data_labeling_service/transports/grpc.py @@ -123,7 +123,7 @@ def __init__( self._grpc_channel = None self._ssl_channel_credentials = ssl_channel_credentials self._stubs: Dict[str, Callable] = {} - self._operations_client = None + self._operations_client: Optional[operations_v1.OperationsClient] = None if api_mtls_endpoint: warnings.warn("api_mtls_endpoint is deprecated", DeprecationWarning) diff --git a/google/cloud/datalabeling_v1beta1/services/data_labeling_service/transports/grpc_asyncio.py b/google/cloud/datalabeling_v1beta1/services/data_labeling_service/transports/grpc_asyncio.py index 1c8ff43..b9b423d 100644 --- a/google/cloud/datalabeling_v1beta1/services/data_labeling_service/transports/grpc_asyncio.py +++ b/google/cloud/datalabeling_v1beta1/services/data_labeling_service/transports/grpc_asyncio.py @@ -21,7 +21,6 @@ from google.api_core import operations_v1 # type: ignore from google.auth import credentials as ga_credentials # type: ignore from google.auth.transport.grpc import SslCredentials # type: ignore -import packaging.version import grpc # type: ignore from grpc.experimental import aio # type: ignore @@ -170,7 +169,7 @@ def __init__( self._grpc_channel = None self._ssl_channel_credentials = ssl_channel_credentials self._stubs: Dict[str, Callable] = {} - self._operations_client = None + self._operations_client: Optional[operations_v1.OperationsAsyncClient] = None if api_mtls_endpoint: warnings.warn("api_mtls_endpoint is deprecated", DeprecationWarning) diff --git a/google/cloud/datalabeling_v1beta1/types/annotation.py b/google/cloud/datalabeling_v1beta1/types/annotation.py index f905e2a..9ebed20 100644 --- a/google/cloud/datalabeling_v1beta1/types/annotation.py +++ b/google/cloud/datalabeling_v1beta1/types/annotation.py @@ -122,35 +122,51 @@ class Annotation(proto.Message): class AnnotationValue(proto.Message): r"""Annotation value for an example. + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: image_classification_annotation (google.cloud.datalabeling_v1beta1.types.ImageClassificationAnnotation): Annotation value for image classification case. + This field is a member of `oneof`_ ``value_type``. image_bounding_poly_annotation (google.cloud.datalabeling_v1beta1.types.ImageBoundingPolyAnnotation): Annotation value for image bounding box, oriented bounding box and polygon cases. + This field is a member of `oneof`_ ``value_type``. image_polyline_annotation (google.cloud.datalabeling_v1beta1.types.ImagePolylineAnnotation): Annotation value for image polyline cases. Polyline here is different from BoundingPoly. It is formed by line segments connected to each other but not closed form(Bounding Poly). The line segments can cross each other. + This field is a member of `oneof`_ ``value_type``. image_segmentation_annotation (google.cloud.datalabeling_v1beta1.types.ImageSegmentationAnnotation): Annotation value for image segmentation. + This field is a member of `oneof`_ ``value_type``. text_classification_annotation (google.cloud.datalabeling_v1beta1.types.TextClassificationAnnotation): Annotation value for text classification case. + This field is a member of `oneof`_ ``value_type``. text_entity_extraction_annotation (google.cloud.datalabeling_v1beta1.types.TextEntityExtractionAnnotation): Annotation value for text entity extraction case. + This field is a member of `oneof`_ ``value_type``. video_classification_annotation (google.cloud.datalabeling_v1beta1.types.VideoClassificationAnnotation): Annotation value for video classification case. + This field is a member of `oneof`_ ``value_type``. video_object_tracking_annotation (google.cloud.datalabeling_v1beta1.types.VideoObjectTrackingAnnotation): Annotation value for video object detection and tracking case. + This field is a member of `oneof`_ ``value_type``. video_event_annotation (google.cloud.datalabeling_v1beta1.types.VideoEventAnnotation): Annotation value for video event case. + This field is a member of `oneof`_ ``value_type``. """ image_classification_annotation = proto.Field( @@ -276,11 +292,20 @@ class ImageBoundingPolyAnnotation(proto.Message): r"""Image bounding poly annotation. It represents a polygon including bounding box in the image. + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: bounding_poly (google.cloud.datalabeling_v1beta1.types.BoundingPoly): + This field is a member of `oneof`_ ``bounded_area``. normalized_bounding_poly (google.cloud.datalabeling_v1beta1.types.NormalizedBoundingPoly): + This field is a member of `oneof`_ ``bounded_area``. annotation_spec (google.cloud.datalabeling_v1beta1.types.AnnotationSpec): Label of object in this bounding polygon. """ @@ -323,11 +348,20 @@ class NormalizedPolyline(proto.Message): class ImagePolylineAnnotation(proto.Message): r"""A polyline for the image annotation. + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: polyline (google.cloud.datalabeling_v1beta1.types.Polyline): + This field is a member of `oneof`_ ``poly``. normalized_polyline (google.cloud.datalabeling_v1beta1.types.NormalizedPolyline): + This field is a member of `oneof`_ ``poly``. annotation_spec (google.cloud.datalabeling_v1beta1.types.AnnotationSpec): Label of this polyline. """ @@ -455,11 +489,20 @@ class ObjectTrackingFrame(proto.Message): r"""Video frame level annotation for object detection and tracking. + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: bounding_poly (google.cloud.datalabeling_v1beta1.types.BoundingPoly): + This field is a member of `oneof`_ ``bounded_area``. normalized_bounding_poly (google.cloud.datalabeling_v1beta1.types.NormalizedBoundingPoly): + This field is a member of `oneof`_ ``bounded_area``. time_offset (google.protobuf.duration_pb2.Duration): The time offset of this frame relative to the beginning of the video. diff --git a/google/cloud/datalabeling_v1beta1/types/data_labeling_service.py b/google/cloud/datalabeling_v1beta1/types/data_labeling_service.py index f7aed56..47c5396 100644 --- a/google/cloud/datalabeling_v1beta1/types/data_labeling_service.py +++ b/google/cloud/datalabeling_v1beta1/types/data_labeling_service.py @@ -356,23 +356,34 @@ class DeleteAnnotatedDatasetRequest(proto.Message): class LabelImageRequest(proto.Message): r"""Request message for starting an image labeling task. + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: image_classification_config (google.cloud.datalabeling_v1beta1.types.ImageClassificationConfig): Configuration for image classification task. One of image_classification_config, bounding_poly_config, polyline_config and segmentation_config are required. + This field is a member of `oneof`_ ``request_config``. bounding_poly_config (google.cloud.datalabeling_v1beta1.types.BoundingPolyConfig): Configuration for bounding box and bounding poly task. One of image_classification_config, bounding_poly_config, polyline_config and segmentation_config are required. + This field is a member of `oneof`_ ``request_config``. polyline_config (google.cloud.datalabeling_v1beta1.types.PolylineConfig): Configuration for polyline task. One of image_classification_config, bounding_poly_config, polyline_config and segmentation_config are required. + This field is a member of `oneof`_ ``request_config``. segmentation_config (google.cloud.datalabeling_v1beta1.types.SegmentationConfig): Configuration for segmentation task. One of image_classification_config, bounding_poly_config, polyline_config and segmentation_config are required. + This field is a member of `oneof`_ ``request_config``. parent (str): Required. Name of the dataset to request labeling task, format: projects/{project_id}/datasets/{dataset_id} @@ -426,23 +437,34 @@ class Feature(proto.Enum): class LabelVideoRequest(proto.Message): r"""Request message for LabelVideo. + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: video_classification_config (google.cloud.datalabeling_v1beta1.types.VideoClassificationConfig): Configuration for video classification task. One of video_classification_config, object_detection_config, object_tracking_config and event_config is required. + This field is a member of `oneof`_ ``request_config``. object_detection_config (google.cloud.datalabeling_v1beta1.types.ObjectDetectionConfig): Configuration for video object detection task. One of video_classification_config, object_detection_config, object_tracking_config and event_config is required. + This field is a member of `oneof`_ ``request_config``. object_tracking_config (google.cloud.datalabeling_v1beta1.types.ObjectTrackingConfig): Configuration for video object tracking task. One of video_classification_config, object_detection_config, object_tracking_config and event_config is required. + This field is a member of `oneof`_ ``request_config``. event_config (google.cloud.datalabeling_v1beta1.types.EventConfig): Configuration for video event task. One of video_classification_config, object_detection_config, object_tracking_config and event_config is required. + This field is a member of `oneof`_ ``request_config``. parent (str): Required. Name of the dataset to request labeling task, format: projects/{project_id}/datasets/{dataset_id} @@ -494,15 +516,24 @@ class Feature(proto.Enum): class LabelTextRequest(proto.Message): r"""Request message for LabelText. + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: text_classification_config (google.cloud.datalabeling_v1beta1.types.TextClassificationConfig): Configuration for text classification task. One of text_classification_config and text_entity_extraction_config is required. + This field is a member of `oneof`_ ``request_config``. text_entity_extraction_config (google.cloud.datalabeling_v1beta1.types.TextEntityExtractionConfig): Configuration for entity extraction task. One of text_classification_config and text_entity_extraction_config is required. + This field is a member of `oneof`_ ``request_config``. parent (str): Required. Name of the data set to request labeling task, format: projects/{project_id}/datasets/{dataset_id} diff --git a/google/cloud/datalabeling_v1beta1/types/dataset.py b/google/cloud/datalabeling_v1beta1/types/dataset.py index e50fb30..22b62ac 100644 --- a/google/cloud/datalabeling_v1beta1/types/dataset.py +++ b/google/cloud/datalabeling_v1beta1/types/dataset.py @@ -99,16 +99,26 @@ class InputConfig(proto.Message): r"""The configuration of input data, including data type, location, etc. + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: text_metadata (google.cloud.datalabeling_v1beta1.types.TextMetadata): Required for text import, as language code must be specified. + This field is a member of `oneof`_ ``data_type_metadata``. gcs_source (google.cloud.datalabeling_v1beta1.types.GcsSource): Source located in Cloud Storage. + This field is a member of `oneof`_ ``source``. bigquery_source (google.cloud.datalabeling_v1beta1.types.BigQuerySource): Source located in BigQuery. You must specify this field if you are using this InputConfig in an [EvaluationJob][google.cloud.datalabeling.v1beta1.EvaluationJob]. + This field is a member of `oneof`_ ``source``. data_type (google.cloud.datalabeling_v1beta1.types.DataType): Required. Data type must be specifed when user tries to import data. @@ -212,14 +222,23 @@ class BigQuerySource(proto.Message): class OutputConfig(proto.Message): r"""The configuration of output data. + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: gcs_destination (google.cloud.datalabeling_v1beta1.types.GcsDestination): Output to a file in Cloud Storage. Should be used for labeling output other than image segmentation. + This field is a member of `oneof`_ ``destination``. gcs_folder_destination (google.cloud.datalabeling_v1beta1.types.GcsFolderDestination): Output to a folder in Cloud Storage. Should be used for image segmentation labeling output. + This field is a member of `oneof`_ ``destination``. """ gcs_destination = proto.Field( @@ -263,16 +282,26 @@ class DataItem(proto.Message): r"""DataItem is a piece of data, without annotation. For example, an image. + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: image_payload (google.cloud.datalabeling_v1beta1.types.ImagePayload): The image payload, a container of the image bytes/uri. + This field is a member of `oneof`_ ``payload``. text_payload (google.cloud.datalabeling_v1beta1.types.TextPayload): The text payload, a container of text content. + This field is a member of `oneof`_ ``payload``. video_payload (google.cloud.datalabeling_v1beta1.types.VideoPayload): The video payload, a container of the video uri. + This field is a member of `oneof`_ ``payload``. name (str): Output only. Name of the data item, in format of: projects/{project_id}/datasets/{dataset_id}/dataItems/{data_item_id} @@ -372,30 +401,47 @@ class LabelStats(proto.Message): class AnnotatedDatasetMetadata(proto.Message): r"""Metadata on AnnotatedDataset. + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: image_classification_config (google.cloud.datalabeling_v1beta1.types.ImageClassificationConfig): Configuration for image classification task. + This field is a member of `oneof`_ ``annotation_request_config``. bounding_poly_config (google.cloud.datalabeling_v1beta1.types.BoundingPolyConfig): Configuration for image bounding box and bounding poly task. + This field is a member of `oneof`_ ``annotation_request_config``. polyline_config (google.cloud.datalabeling_v1beta1.types.PolylineConfig): Configuration for image polyline task. + This field is a member of `oneof`_ ``annotation_request_config``. segmentation_config (google.cloud.datalabeling_v1beta1.types.SegmentationConfig): Configuration for image segmentation task. + This field is a member of `oneof`_ ``annotation_request_config``. video_classification_config (google.cloud.datalabeling_v1beta1.types.VideoClassificationConfig): Configuration for video classification task. + This field is a member of `oneof`_ ``annotation_request_config``. object_detection_config (google.cloud.datalabeling_v1beta1.types.ObjectDetectionConfig): Configuration for video object detection task. + This field is a member of `oneof`_ ``annotation_request_config``. object_tracking_config (google.cloud.datalabeling_v1beta1.types.ObjectTrackingConfig): Configuration for video object tracking task. + This field is a member of `oneof`_ ``annotation_request_config``. event_config (google.cloud.datalabeling_v1beta1.types.EventConfig): Configuration for video event labeling task. + This field is a member of `oneof`_ ``annotation_request_config``. text_classification_config (google.cloud.datalabeling_v1beta1.types.TextClassificationConfig): Configuration for text classification task. + This field is a member of `oneof`_ ``annotation_request_config``. text_entity_extraction_config (google.cloud.datalabeling_v1beta1.types.TextEntityExtractionConfig): Configuration for text entity extraction task. + This field is a member of `oneof`_ ``annotation_request_config``. human_annotation_config (google.cloud.datalabeling_v1beta1.types.HumanAnnotationConfig): HumanAnnotationConfig used when requesting the human labeling task for this @@ -473,16 +519,26 @@ class Example(proto.Message): r"""An Example is a piece of data and its annotation. For example, an image with label "house". + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: image_payload (google.cloud.datalabeling_v1beta1.types.ImagePayload): The image payload, a container of the image bytes/uri. + This field is a member of `oneof`_ ``payload``. text_payload (google.cloud.datalabeling_v1beta1.types.TextPayload): The text payload, a container of the text content. + This field is a member of `oneof`_ ``payload``. video_payload (google.cloud.datalabeling_v1beta1.types.VideoPayload): The video payload, a container of the video uri. + This field is a member of `oneof`_ ``payload``. name (str): Output only. Name of the example, in format of: projects/{project_id}/datasets/{dataset_id}/annotatedDatasets/ diff --git a/google/cloud/datalabeling_v1beta1/types/evaluation.py b/google/cloud/datalabeling_v1beta1/types/evaluation.py index 0bd1ff8..a37bede 100644 --- a/google/cloud/datalabeling_v1beta1/types/evaluation.py +++ b/google/cloud/datalabeling_v1beta1/types/evaluation.py @@ -90,11 +90,15 @@ class EvaluationConfig(proto.Message): creating an [Evaluation][google.cloud.datalabeling.v1beta1.Evaluation]. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: bounding_box_evaluation_options (google.cloud.datalabeling_v1beta1.types.BoundingBoxEvaluationOptions): Only specify this field if the related model performs image object detection (``IMAGE_BOUNDING_BOX_ANNOTATION``). Describes how to evaluate bounding boxes. + This field is a member of `oneof`_ ``vertical_option``. """ bounding_box_evaluation_options = proto.Field( @@ -123,11 +127,20 @@ class BoundingBoxEvaluationOptions(proto.Message): class EvaluationMetrics(proto.Message): r""" + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: classification_metrics (google.cloud.datalabeling_v1beta1.types.ClassificationMetrics): + This field is a member of `oneof`_ ``metrics``. object_detection_metrics (google.cloud.datalabeling_v1beta1.types.ObjectDetectionMetrics): + This field is a member of `oneof`_ ``metrics``. """ classification_metrics = proto.Field( diff --git a/google/cloud/datalabeling_v1beta1/types/evaluation_job.py b/google/cloud/datalabeling_v1beta1/types/evaluation_job.py index e9186a9..091d843 100644 --- a/google/cloud/datalabeling_v1beta1/types/evaluation_job.py +++ b/google/cloud/datalabeling_v1beta1/types/evaluation_job.py @@ -134,6 +134,13 @@ class EvaluationJobConfig(proto.Message): job works. Provide this configuration when you create an EvaluationJob. + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: image_classification_config (google.cloud.datalabeling_v1beta1.types.ImageClassificationConfig): Specify this field if your model version performs image @@ -144,12 +151,14 @@ class EvaluationJobConfig(proto.Message): ``allowMultiLabel`` in this configuration must match ``classificationMetadata.isMultiLabel`` in [input_config][google.cloud.datalabeling.v1beta1.EvaluationJobConfig.input_config]. + This field is a member of `oneof`_ ``human_annotation_request_config``. bounding_poly_config (google.cloud.datalabeling_v1beta1.types.BoundingPolyConfig): Specify this field if your model version performs image object detection (bounding box detection). ``annotationSpecSet`` in this configuration must match [EvaluationJob.annotationSpecSet][google.cloud.datalabeling.v1beta1.EvaluationJob.annotation_spec_set]. + This field is a member of `oneof`_ ``human_annotation_request_config``. text_classification_config (google.cloud.datalabeling_v1beta1.types.TextClassificationConfig): Specify this field if your model version performs text classification. @@ -159,6 +168,7 @@ class EvaluationJobConfig(proto.Message): ``allowMultiLabel`` in this configuration must match ``classificationMetadata.isMultiLabel`` in [input_config][google.cloud.datalabeling.v1beta1.EvaluationJobConfig.input_config]. + This field is a member of `oneof`_ ``human_annotation_request_config``. input_config (google.cloud.datalabeling_v1beta1.types.InputConfig): Rquired. Details for the sampled prediction input. Within this configuration, there are requirements for several diff --git a/google/cloud/datalabeling_v1beta1/types/operations.py b/google/cloud/datalabeling_v1beta1/types/operations.py index e7f37c4..1087068 100644 --- a/google/cloud/datalabeling_v1beta1/types/operations.py +++ b/google/cloud/datalabeling_v1beta1/types/operations.py @@ -145,41 +145,60 @@ class LabelOperationMetadata(proto.Message): r"""Metadata of a labeling operation, such as LabelImage or LabelVideo. Next tag: 20 + This message has `oneof`_ fields (mutually exclusive fields). + For each oneof, at most one member field can be set at the same time. + Setting any member of the oneof automatically clears all other + members. + + .. _oneof: https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields + Attributes: image_classification_details (google.cloud.datalabeling_v1beta1.types.LabelImageClassificationOperationMetadata): Details of label image classification operation. + This field is a member of `oneof`_ ``details``. image_bounding_box_details (google.cloud.datalabeling_v1beta1.types.LabelImageBoundingBoxOperationMetadata): Details of label image bounding box operation. + This field is a member of `oneof`_ ``details``. image_bounding_poly_details (google.cloud.datalabeling_v1beta1.types.LabelImageBoundingPolyOperationMetadata): Details of label image bounding poly operation. + This field is a member of `oneof`_ ``details``. image_oriented_bounding_box_details (google.cloud.datalabeling_v1beta1.types.LabelImageOrientedBoundingBoxOperationMetadata): Details of label image oriented bounding box operation. + This field is a member of `oneof`_ ``details``. image_polyline_details (google.cloud.datalabeling_v1beta1.types.LabelImagePolylineOperationMetadata): Details of label image polyline operation. + This field is a member of `oneof`_ ``details``. image_segmentation_details (google.cloud.datalabeling_v1beta1.types.LabelImageSegmentationOperationMetadata): Details of label image segmentation operation. + This field is a member of `oneof`_ ``details``. video_classification_details (google.cloud.datalabeling_v1beta1.types.LabelVideoClassificationOperationMetadata): Details of label video classification operation. + This field is a member of `oneof`_ ``details``. video_object_detection_details (google.cloud.datalabeling_v1beta1.types.LabelVideoObjectDetectionOperationMetadata): Details of label video object detection operation. + This field is a member of `oneof`_ ``details``. video_object_tracking_details (google.cloud.datalabeling_v1beta1.types.LabelVideoObjectTrackingOperationMetadata): Details of label video object tracking operation. + This field is a member of `oneof`_ ``details``. video_event_details (google.cloud.datalabeling_v1beta1.types.LabelVideoEventOperationMetadata): Details of label video event operation. + This field is a member of `oneof`_ ``details``. text_classification_details (google.cloud.datalabeling_v1beta1.types.LabelTextClassificationOperationMetadata): Details of label text classification operation. + This field is a member of `oneof`_ ``details``. text_entity_extraction_details (google.cloud.datalabeling_v1beta1.types.LabelTextEntityExtractionOperationMetadata): Details of label text entity extraction operation. + This field is a member of `oneof`_ ``details``. progress_percent (int): Output only. Progress of label operation. Range: [0, 100]. partial_failures (Sequence[google.rpc.status_pb2.Status]): diff --git a/setup.py b/setup.py index 749bbf8..0ed8c7e 100644 --- a/setup.py +++ b/setup.py @@ -27,9 +27,8 @@ # NOTE: Maintainers, please do not require google-api-core>=2.x.x # Until this issue is closed # https://github.com/googleapis/google-cloud-python/issues/10566 - "google-api-core[grpc] >= 1.26.0, <3.0.0dev", + "google-api-core[grpc] >= 1.28.0, <3.0.0dev", "proto-plus >= 1.4.0", - "packaging >= 14.3", ] extras = {"libcst": "libcst >= 0.2.5"} @@ -79,7 +78,7 @@ scripts=["scripts/fixup_datalabeling_v1beta1_keywords.py"], namespace_packages=namespaces, install_requires=dependencies, - extras_requires=extras, + extras_require=extras, include_package_data=True, zip_safe=False, ) diff --git a/testing/constraints-3.6.txt b/testing/constraints-3.6.txt index b018f85..96d3604 100644 --- a/testing/constraints-3.6.txt +++ b/testing/constraints-3.6.txt @@ -5,10 +5,6 @@ # # e.g., if setup.py has "foo >= 1.14.0, < 2.0.0dev", # Then this file should have foo==1.14.0 -google-api-core==1.26.0 +google-api-core==1.28.0 libcst==0.2.5 proto-plus==1.4.0 -packaging==14.3 -# TODO: remove once google-auth>=1.25.0 is required transitively -# through google-api-core>=1.28.0 -google-auth==1.24.0 diff --git a/tests/unit/gapic/datalabeling_v1beta1/test_data_labeling_service.py b/tests/unit/gapic/datalabeling_v1beta1/test_data_labeling_service.py index a4d2fe6..e10db40 100644 --- a/tests/unit/gapic/datalabeling_v1beta1/test_data_labeling_service.py +++ b/tests/unit/gapic/datalabeling_v1beta1/test_data_labeling_service.py @@ -15,7 +15,6 @@ # import os import mock -import packaging.version import grpc from grpc.experimental import aio @@ -43,9 +42,6 @@ ) from google.cloud.datalabeling_v1beta1.services.data_labeling_service import pagers from google.cloud.datalabeling_v1beta1.services.data_labeling_service import transports -from google.cloud.datalabeling_v1beta1.services.data_labeling_service.transports.base import ( - _GOOGLE_AUTH_VERSION, -) from google.cloud.datalabeling_v1beta1.types import annotation from google.cloud.datalabeling_v1beta1.types import annotation_spec_set from google.cloud.datalabeling_v1beta1.types import ( @@ -72,20 +68,6 @@ import google.auth -# TODO(busunkim): Once google-auth >= 1.25.0 is required transitively -# through google-api-core: -# - Delete the auth "less than" test cases -# - Delete these pytest markers (Make the "greater than or equal to" tests the default). -requires_google_auth_lt_1_25_0 = pytest.mark.skipif( - packaging.version.parse(_GOOGLE_AUTH_VERSION) >= packaging.version.parse("1.25.0"), - reason="This test requires google-auth < 1.25.0", -) -requires_google_auth_gte_1_25_0 = pytest.mark.skipif( - packaging.version.parse(_GOOGLE_AUTH_VERSION) < packaging.version.parse("1.25.0"), - reason="This test requires google-auth >= 1.25.0", -) - - def client_cert_source_callback(): return b"cert bytes", b"key bytes" @@ -247,7 +229,7 @@ def test_data_labeling_service_client_client_options( options = client_options.ClientOptions(api_endpoint="squid.clam.whelk") with mock.patch.object(transport_class, "__init__") as patched: patched.return_value = None - client = client_class(client_options=options) + client = client_class(transport=transport_name, client_options=options) patched.assert_called_once_with( credentials=None, credentials_file=None, @@ -264,7 +246,7 @@ def test_data_labeling_service_client_client_options( with mock.patch.dict(os.environ, {"GOOGLE_API_USE_MTLS_ENDPOINT": "never"}): with mock.patch.object(transport_class, "__init__") as patched: patched.return_value = None - client = client_class() + client = client_class(transport=transport_name) patched.assert_called_once_with( credentials=None, credentials_file=None, @@ -281,7 +263,7 @@ def test_data_labeling_service_client_client_options( with mock.patch.dict(os.environ, {"GOOGLE_API_USE_MTLS_ENDPOINT": "always"}): with mock.patch.object(transport_class, "__init__") as patched: patched.return_value = None - client = client_class() + client = client_class(transport=transport_name) patched.assert_called_once_with( credentials=None, credentials_file=None, @@ -310,7 +292,7 @@ def test_data_labeling_service_client_client_options( options = client_options.ClientOptions(quota_project_id="octopus") with mock.patch.object(transport_class, "__init__") as patched: patched.return_value = None - client = client_class(client_options=options) + client = client_class(transport=transport_name, client_options=options) patched.assert_called_once_with( credentials=None, credentials_file=None, @@ -379,7 +361,7 @@ def test_data_labeling_service_client_mtls_env_auto( ) with mock.patch.object(transport_class, "__init__") as patched: patched.return_value = None - client = client_class(client_options=options) + client = client_class(transport=transport_name, client_options=options) if use_client_cert_env == "false": expected_client_cert_source = None @@ -421,7 +403,7 @@ def test_data_labeling_service_client_mtls_env_auto( expected_client_cert_source = client_cert_source_callback patched.return_value = None - client = client_class() + client = client_class(transport=transport_name) patched.assert_called_once_with( credentials=None, credentials_file=None, @@ -443,7 +425,7 @@ def test_data_labeling_service_client_mtls_env_auto( return_value=False, ): patched.return_value = None - client = client_class() + client = client_class(transport=transport_name) patched.assert_called_once_with( credentials=None, credentials_file=None, @@ -478,7 +460,7 @@ def test_data_labeling_service_client_client_options_scopes( options = client_options.ClientOptions(scopes=["1", "2"],) with mock.patch.object(transport_class, "__init__") as patched: patched.return_value = None - client = client_class(client_options=options) + client = client_class(transport=transport_name, client_options=options) patched.assert_called_once_with( credentials=None, credentials_file=None, @@ -513,7 +495,7 @@ def test_data_labeling_service_client_client_options_credentials_file( options = client_options.ClientOptions(credentials_file="credentials.json") with mock.patch.object(transport_class, "__init__") as patched: patched.return_value = None - client = client_class(client_options=options) + client = client_class(transport=transport_name, client_options=options) patched.assert_called_once_with( credentials=None, credentials_file="credentials.json", @@ -9980,7 +9962,6 @@ def test_data_labeling_service_base_transport(): transport.operations_client -@requires_google_auth_gte_1_25_0 def test_data_labeling_service_base_transport_with_credentials_file(): # Instantiate the base transport with a credentials file with mock.patch.object( @@ -10001,26 +9982,6 @@ def test_data_labeling_service_base_transport_with_credentials_file(): ) -@requires_google_auth_lt_1_25_0 -def test_data_labeling_service_base_transport_with_credentials_file_old_google_auth(): - # Instantiate the base transport with a credentials file - with mock.patch.object( - google.auth, "load_credentials_from_file", autospec=True - ) as load_creds, mock.patch( - "google.cloud.datalabeling_v1beta1.services.data_labeling_service.transports.DataLabelingServiceTransport._prep_wrapped_messages" - ) as Transport: - Transport.return_value = None - load_creds.return_value = (ga_credentials.AnonymousCredentials(), None) - transport = transports.DataLabelingServiceTransport( - credentials_file="credentials.json", quota_project_id="octopus", - ) - load_creds.assert_called_once_with( - "credentials.json", - scopes=("https://www.googleapis.com/auth/cloud-platform",), - quota_project_id="octopus", - ) - - def test_data_labeling_service_base_transport_with_adc(): # Test the default credentials are used if credentials and credentials_file are None. with mock.patch.object(google.auth, "default", autospec=True) as adc, mock.patch( @@ -10032,7 +9993,6 @@ def test_data_labeling_service_base_transport_with_adc(): adc.assert_called_once() -@requires_google_auth_gte_1_25_0 def test_data_labeling_service_auth_adc(): # If no credentials are provided, we should use ADC credentials. with mock.patch.object(google.auth, "default", autospec=True) as adc: @@ -10045,18 +10005,6 @@ def test_data_labeling_service_auth_adc(): ) -@requires_google_auth_lt_1_25_0 -def test_data_labeling_service_auth_adc_old_google_auth(): - # If no credentials are provided, we should use ADC credentials. - with mock.patch.object(google.auth, "default", autospec=True) as adc: - adc.return_value = (ga_credentials.AnonymousCredentials(), None) - DataLabelingServiceClient() - adc.assert_called_once_with( - scopes=("https://www.googleapis.com/auth/cloud-platform",), - quota_project_id=None, - ) - - @pytest.mark.parametrize( "transport_class", [ @@ -10064,7 +10012,6 @@ def test_data_labeling_service_auth_adc_old_google_auth(): transports.DataLabelingServiceGrpcAsyncIOTransport, ], ) -@requires_google_auth_gte_1_25_0 def test_data_labeling_service_transport_auth_adc(transport_class): # If credentials and host are not provided, the transport class should use # ADC credentials. @@ -10078,26 +10025,6 @@ def test_data_labeling_service_transport_auth_adc(transport_class): ) -@pytest.mark.parametrize( - "transport_class", - [ - transports.DataLabelingServiceGrpcTransport, - transports.DataLabelingServiceGrpcAsyncIOTransport, - ], -) -@requires_google_auth_lt_1_25_0 -def test_data_labeling_service_transport_auth_adc_old_google_auth(transport_class): - # If credentials and host are not provided, the transport class should use - # ADC credentials. - with mock.patch.object(google.auth, "default", autospec=True) as adc: - adc.return_value = (ga_credentials.AnonymousCredentials(), None) - transport_class(quota_project_id="octopus") - adc.assert_called_once_with( - scopes=("https://www.googleapis.com/auth/cloud-platform",), - quota_project_id="octopus", - ) - - @pytest.mark.parametrize( "transport_class,grpc_helpers", [