Skip to content

Commit 7da4fde

Browse files
[formrecognizer] unexpose api_version property (Azure#16378)
* unexpose api_version property * update changelog
1 parent 68bc8c3 commit 7da4fde

File tree

9 files changed

+52
-51
lines changed

9 files changed

+52
-51
lines changed

sdk/formrecognizer/azure-ai-formrecognizer/CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66

77
- `Appearance` is renamed to `TextAppearance`
88
- `Style` is renamed to `TextStyle`
9-
9+
- Client property `api_version` is no longer exposed. Pass keyword argument `api_version` into the client to select the
10+
API version
1011

1112
## 3.1.0b2 (2021-01-12)
1213

sdk/formrecognizer/azure-ai-formrecognizer/azure/ai/formrecognizer/_form_base_client.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ def __init__(self, endpoint, credential, **kwargs):
2424
# type: (str, Union[AzureKeyCredential, TokenCredential], Any) -> None
2525
self._endpoint = endpoint
2626
self._credential = credential
27-
self.api_version = kwargs.pop('api_version', FormRecognizerApiVersion.V2_1_PREVIEW)
28-
validate_api_version(self.api_version)
27+
self._api_version = kwargs.pop('api_version', FormRecognizerApiVersion.V2_1_PREVIEW)
28+
validate_api_version(self._api_version)
2929

3030
authentication_policy = get_authentication_policy(credential)
3131
polling_interval = kwargs.pop("polling_interval", POLLING_INTERVAL)
@@ -57,12 +57,12 @@ def __init__(self, endpoint, credential, **kwargs):
5757
self._client = FormRecognizer(
5858
endpoint=endpoint,
5959
credential=credential, # type: ignore
60-
api_version=self.api_version,
60+
api_version=self._api_version,
6161
sdk_moniker=USER_AGENT,
6262
authentication_policy=authentication_policy,
6363
http_logging_policy=http_logging_policy,
6464
polling_interval=polling_interval,
6565
**kwargs
6666
)
67-
self._deserialize = _get_deserialize(self.api_version)
68-
self._generated_models = self._client.models(self.api_version)
67+
self._deserialize = _get_deserialize(self._api_version)
68+
self._generated_models = self._client.models(self._api_version)

sdk/formrecognizer/azure-ai-formrecognizer/azure/ai/formrecognizer/_form_recognizer_client.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ def begin_recognize_receipts(self, receipt, **kwargs):
122122
# FIXME: part of this code will be removed once autorest can handle diff mixin
123123
# signatures across API versions
124124
if locale:
125-
if self.api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
125+
if self._api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
126126
kwargs.update({"locale": locale})
127127
else:
128128
raise ValueError("'locale' is only available for API version V2_1_PREVIEW and up")
@@ -179,7 +179,7 @@ def begin_recognize_receipts_from_url(self, receipt_url, **kwargs):
179179
# FIXME: part of this code will be removed once autorest can handle diff mixin
180180
# signatures across API versions
181181
if locale:
182-
if self.api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
182+
if self._api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
183183
kwargs.update({"locale": locale})
184184
else:
185185
raise ValueError("'locale' is only available for API version V2_1_PREVIEW and up")
@@ -488,13 +488,13 @@ def begin_recognize_content(self, form, **kwargs):
488488
# FIXME: part of this code will be removed once autorest can handle diff mixin
489489
# signatures across API versions
490490
if pages:
491-
if self.api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
491+
if self._api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
492492
kwargs.update({"pages": pages})
493493
else:
494494
raise ValueError("'pages' is only available for API version V2_1_PREVIEW and up")
495495

496496
if language:
497-
if self.api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
497+
if self._api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
498498
kwargs.update({"language": language})
499499
else:
500500
raise ValueError("'language' is only available for API version V2_1_PREVIEW and up")
@@ -541,13 +541,13 @@ def begin_recognize_content_from_url(self, form_url, **kwargs):
541541
# FIXME: part of this code will be removed once autorest can handle diff mixin
542542
# signatures across API versions
543543
if pages:
544-
if self.api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
544+
if self._api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
545545
kwargs.update({"pages": pages})
546546
else:
547547
raise ValueError("'pages' is only available for API version V2_1_PREVIEW and up")
548548

549549
if language:
550-
if self.api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
550+
if self._api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
551551
kwargs.update({"language": language})
552552
else:
553553
raise ValueError("'language' is only available for API version V2_1_PREVIEW and up")

sdk/formrecognizer/azure-ai-formrecognizer/azure/ai/formrecognizer/_form_training_client.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -123,20 +123,20 @@ def begin_training(self, training_files_url, use_training_labels, **kwargs):
123123

124124
def callback_v2_0(raw_response):
125125
model = self._deserialize(self._generated_models.Model, raw_response)
126-
return CustomFormModel._from_generated(model, api_version=self.api_version)
126+
return CustomFormModel._from_generated(model, api_version=self._api_version)
127127

128128
def callback_v2_1(raw_response, _, headers): # pylint: disable=unused-argument
129129
model = self._deserialize(self._generated_models.Model, raw_response)
130-
return CustomFormModel._from_generated(model, api_version=self.api_version)
130+
return CustomFormModel._from_generated(model, api_version=self._api_version)
131131

132132
cls = kwargs.pop("cls", None)
133133
model_name = kwargs.pop("model_name", None)
134-
if model_name and self.api_version == "2.0":
134+
if model_name and self._api_version == "2.0":
135135
raise ValueError("'model_name' is only available for API version V2_1_PREVIEW and up")
136136
continuation_token = kwargs.pop("continuation_token", None)
137137
polling_interval = kwargs.pop("polling_interval", self._client._config.polling_interval)
138138

139-
if self.api_version == "2.0":
139+
if self._api_version == "2.0":
140140
deserialization_callback = cls if cls else callback_v2_0
141141
if continuation_token:
142142
return LROPoller.from_continuation_token(
@@ -232,7 +232,7 @@ def list_custom_models(self, **kwargs):
232232
"""
233233
return self._client.list_custom_models( # type: ignore
234234
cls=kwargs.pop("cls", lambda objs:
235-
[CustomFormModelInfo._from_generated(x, api_version=self.api_version) for x in objs]),
235+
[CustomFormModelInfo._from_generated(x, api_version=self._api_version) for x in objs]),
236236
**kwargs
237237
)
238238

@@ -285,7 +285,7 @@ def get_custom_model(self, model_id, **kwargs):
285285
response = self._client.get_custom_model(model_id=model_id, include_keys=True, **kwargs)
286286
if hasattr(response, "composed_train_results") and response.composed_train_results:
287287
return CustomFormModel._from_generated_composed(response)
288-
return CustomFormModel._from_generated(response, api_version=self.api_version)
288+
return CustomFormModel._from_generated(response, api_version=self._api_version)
289289

290290
@distributed_trace
291291
def get_copy_authorization(self, resource_id, resource_region, **kwargs):
@@ -369,12 +369,12 @@ def _copy_callback(raw_response, _, headers): # pylint: disable=unused-argument
369369
copy_operation = self._deserialize(self._generated_models.CopyOperationResult, raw_response)
370370
model_id = copy_operation.copy_result.model_id if hasattr(copy_operation, "copy_result") else None
371371
if model_id:
372-
return CustomFormModelInfo._from_generated(copy_operation, model_id, api_version=self.api_version)
372+
return CustomFormModelInfo._from_generated(copy_operation, model_id, api_version=self._api_version)
373373
if target:
374374
return CustomFormModelInfo._from_generated(
375-
copy_operation, target["model_id"], api_version=self.api_version
375+
copy_operation, target["model_id"], api_version=self._api_version
376376
)
377-
return CustomFormModelInfo._from_generated(copy_operation, None, api_version=self.api_version)
377+
return CustomFormModelInfo._from_generated(copy_operation, None, api_version=self._api_version)
378378

379379
return self._client.begin_copy_custom_model( # type: ignore
380380
model_id=model_id,
@@ -465,7 +465,7 @@ def get_form_recognizer_client(self, **kwargs):
465465
endpoint=self._endpoint,
466466
credential=self._credential,
467467
pipeline=_pipeline,
468-
api_version=self.api_version,
468+
api_version=self._api_version,
469469
**kwargs
470470
)
471471
# need to share config, but can't pass as a keyword into client

sdk/formrecognizer/azure-ai-formrecognizer/azure/ai/formrecognizer/aio/_form_base_client_async.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ def __init__(
2929
) -> None:
3030
self._endpoint = endpoint
3131
self._credential = credential
32-
self.api_version = kwargs.pop('api_version', FormRecognizerApiVersion.V2_1_PREVIEW)
33-
validate_api_version(self.api_version)
32+
self._api_version = kwargs.pop('api_version', FormRecognizerApiVersion.V2_1_PREVIEW)
33+
validate_api_version(self._api_version)
3434

3535
authentication_policy = get_authentication_policy(credential)
3636
polling_interval = kwargs.pop("polling_interval", POLLING_INTERVAL)
@@ -57,12 +57,12 @@ def __init__(
5757
self._client = FormRecognizer(
5858
endpoint=endpoint,
5959
credential=credential, # type: ignore
60-
api_version=self.api_version,
60+
api_version=self._api_version,
6161
sdk_moniker=USER_AGENT,
6262
authentication_policy=authentication_policy,
6363
http_logging_policy=http_logging_policy,
6464
polling_interval=polling_interval,
6565
**kwargs
6666
)
67-
self._deserialize = _get_deserialize(self.api_version)
68-
self._generated_models = self._client.models(self.api_version)
67+
self._deserialize = _get_deserialize(self._api_version)
68+
self._generated_models = self._client.models(self._api_version)

sdk/formrecognizer/azure-ai-formrecognizer/azure/ai/formrecognizer/aio/_form_recognizer_client_async.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ async def begin_recognize_receipts(
122122
# FIXME: part of this code will be removed once autorest can handle diff mixin
123123
# signatures across API versions
124124
if locale:
125-
if self.api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
125+
if self._api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
126126
kwargs.update({"locale": locale})
127127
else:
128128
raise ValueError("'locale' is only available for API version V2_1_PREVIEW and up")
@@ -182,7 +182,7 @@ async def begin_recognize_receipts_from_url(
182182
# FIXME: part of this code will be removed once autorest can handle diff mixin
183183
# signatures across API versions
184184
if locale:
185-
if self.api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
185+
if self._api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
186186
kwargs.update({"locale": locale})
187187
else:
188188
raise ValueError("'locale' is only available for API version V2_1_PREVIEW and up")
@@ -490,13 +490,13 @@ async def begin_recognize_content(
490490
# FIXME: part of this code will be removed once autorest can handle diff mixin
491491
# signatures across API versions
492492
if pages:
493-
if self.api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
493+
if self._api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
494494
kwargs.update({"pages": pages})
495495
else:
496496
raise ValueError("'pages' is only available for API version V2_1_PREVIEW and up")
497497

498498
if language:
499-
if self.api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
499+
if self._api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
500500
kwargs.update({"language": language})
501501
else:
502502
raise ValueError("'language' is only available for API version V2_1_PREVIEW and up")
@@ -542,13 +542,13 @@ async def begin_recognize_content_from_url(self, form_url: str, **kwargs: Any) -
542542
# FIXME: part of this code will be removed once autorest can handle diff mixin
543543
# signatures across API versions
544544
if pages:
545-
if self.api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
545+
if self._api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
546546
kwargs.update({"pages": pages})
547547
else:
548548
raise ValueError("'pages' is only available for API version V2_1_PREVIEW and up")
549549

550550
if language:
551-
if self.api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
551+
if self._api_version == FormRecognizerApiVersion.V2_1_PREVIEW:
552552
kwargs.update({"language": language})
553553
else:
554554
raise ValueError("'language' is only available for API version V2_1_PREVIEW and up")

sdk/formrecognizer/azure-ai-formrecognizer/azure/ai/formrecognizer/aio/_form_training_client_async.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -125,20 +125,20 @@ async def begin_training(
125125

126126
def callback_v2_0(raw_response):
127127
model = self._deserialize(self._generated_models.Model, raw_response)
128-
return CustomFormModel._from_generated(model, api_version=self.api_version)
128+
return CustomFormModel._from_generated(model, api_version=self._api_version)
129129

130130
def callback_v2_1(raw_response, _, headers): # pylint: disable=unused-argument
131131
model = self._deserialize(self._generated_models.Model, raw_response)
132-
return CustomFormModel._from_generated(model, api_version=self.api_version)
132+
return CustomFormModel._from_generated(model, api_version=self._api_version)
133133

134134
cls = kwargs.pop("cls", None)
135135
model_name = kwargs.pop("model_name", None)
136-
if model_name and self.api_version == "2.0":
136+
if model_name and self._api_version == "2.0":
137137
raise ValueError("'model_name' is only available for API version V2_1_PREVIEW and up")
138138
continuation_token = kwargs.pop("continuation_token", None)
139139
polling_interval = kwargs.pop("polling_interval", self._client._config.polling_interval)
140140

141-
if self.api_version == "2.0":
141+
if self._api_version == "2.0":
142142
deserialization_callback = cls if cls else callback_v2_0
143143
if continuation_token:
144144
return AsyncLROPoller.from_continuation_token(
@@ -238,7 +238,7 @@ def list_custom_models(self, **kwargs: Any) -> AsyncItemPaged[CustomFormModelInf
238238
"""
239239
return self._client.list_custom_models( # type: ignore
240240
cls=kwargs.pop("cls", lambda objs:
241-
[CustomFormModelInfo._from_generated(x, api_version=self.api_version) for x in objs]),
241+
[CustomFormModelInfo._from_generated(x, api_version=self._api_version) for x in objs]),
242242
**kwargs
243243
)
244244

@@ -291,7 +291,7 @@ async def get_custom_model(self, model_id: str, **kwargs: Any) -> CustomFormMode
291291
)
292292
if hasattr(response, "composed_train_results") and response.composed_train_results:
293293
return CustomFormModel._from_generated_composed(response)
294-
return CustomFormModel._from_generated(response, api_version=self.api_version)
294+
return CustomFormModel._from_generated(response, api_version=self._api_version)
295295

296296
@distributed_trace_async
297297
async def get_copy_authorization(
@@ -378,12 +378,12 @@ def _copy_callback(raw_response, _, headers): # pylint: disable=unused-argument
378378
copy_operation = self._deserialize(self._generated_models.CopyOperationResult, raw_response)
379379
model_id = copy_operation.copy_result.model_id if hasattr(copy_operation, "copy_result") else None
380380
if model_id:
381-
return CustomFormModelInfo._from_generated(copy_operation, model_id, api_version=self.api_version)
381+
return CustomFormModelInfo._from_generated(copy_operation, model_id, api_version=self._api_version)
382382
if target:
383383
return CustomFormModelInfo._from_generated(
384-
copy_operation, target["model_id"], api_version=self.api_version
384+
copy_operation, target["model_id"], api_version=self._api_version
385385
)
386-
return CustomFormModelInfo._from_generated(copy_operation, None, api_version=self.api_version)
386+
return CustomFormModelInfo._from_generated(copy_operation, None, api_version=self._api_version)
387387

388388
return await self._client.begin_copy_custom_model( # type: ignore
389389
model_id=model_id,
@@ -476,7 +476,7 @@ def get_form_recognizer_client(self, **kwargs: Any) -> FormRecognizerClient:
476476
endpoint=self._endpoint,
477477
credential=self._credential,
478478
pipeline=_pipeline,
479-
api_version=self.api_version,
479+
api_version=self._api_version,
480480
**kwargs
481481
)
482482
# need to share config, but can't pass as a keyword into client

sdk/formrecognizer/azure-ai-formrecognizer/tests/test_training.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ def test_training_transform(self, client, container_sas_url):
109109

110110
def callback(response, _, headers):
111111
raw_model = client._deserialize(Model, response)
112-
custom_model = CustomFormModel._from_generated(raw_model, client.api_version)
112+
custom_model = CustomFormModel._from_generated(raw_model, client._api_version)
113113
raw_response.append(raw_model)
114114
raw_response.append(custom_model)
115115

@@ -128,7 +128,7 @@ def test_training_multipage_transform(self, client, container_sas_url):
128128

129129
def callback(response, _, headers):
130130
raw_model = client._deserialize(Model, response)
131-
custom_model = CustomFormModel._from_generated(raw_model, client.api_version)
131+
custom_model = CustomFormModel._from_generated(raw_model, client._api_version)
132132
raw_response.append(raw_model)
133133
raw_response.append(custom_model)
134134

@@ -196,7 +196,7 @@ def test_training_with_labels_transform(self, client, container_sas_url):
196196

197197
def callback(response, _, headers):
198198
raw_model = client._deserialize(Model, response)
199-
custom_model = CustomFormModel._from_generated(raw_model, client.api_version)
199+
custom_model = CustomFormModel._from_generated(raw_model, client._api_version)
200200
raw_response.append(raw_model)
201201
raw_response.append(custom_model)
202202

@@ -215,7 +215,7 @@ def test_train_multipage_w_labels_transform(self, client, container_sas_url):
215215

216216
def callback(response, _, headers):
217217
raw_model = client._deserialize(Model, response)
218-
custom_model = CustomFormModel._from_generated(raw_model, client.api_version)
218+
custom_model = CustomFormModel._from_generated(raw_model, client._api_version)
219219
raw_response.append(raw_model)
220220
raw_response.append(custom_model)
221221

0 commit comments

Comments
 (0)