Skip to content

Commit bf3ee1c

Browse files
committed
Merge branch 'master' of https://github.com/Azure/azure-sdk-for-python into regenerate_keys
* 'master' of https://github.com/Azure/azure-sdk-for-python: Resolve Pip Related Errors (Azure#12157) [Service Bus] Delete swagger file (Azure#12097) Add set_delete_after_tag as a parameter on ResourceGroupPreparer (Azure#11749) Custom Vision Training: release_3_3 Prediction: release_3_1 (Azure#12105) Don't redact Key Vault header values in logs (Azure#12077)
2 parents c4589a0 + c5ca969 commit bf3ee1c

File tree

26 files changed

+919
-1178
lines changed

26 files changed

+919
-1178
lines changed

eng/ci_tools.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# requirements leveraged by ci tools
22
setuptools==44.1.0; python_version == '2.7'
33
setuptools==45.1.0; python_version >= '3.5'
4+
virtualenv==20.0.24
45
wheel==0.34.2
56
Jinja2==2.11.1
67
packaging==20.4
@@ -32,4 +33,3 @@ pytest-cov==2.8.1
3233
./tools/azure-sdk-tools
3334

3435

35-

eng/pipelines/templates/steps/build-test.yml

+16-16
Original file line numberDiff line numberDiff line change
@@ -26,27 +26,27 @@ steps:
2626
- template: /eng/common/pipelines/templates/steps/verify-agent-os.yml
2727

2828
- script: |
29-
python -m pip install pip == 20.1
30-
pip install -r eng/ci_tools.txt
31-
pip --version
29+
python -m pip install -r eng/ci_tools.txt
30+
mkdir $(Build.SourcesDirectory)/env
31+
python -m virtualenv $(Build.SourcesDirectory)/env
3232
displayName: 'Prep Environment'
3333
3434
- ${{ parameters.BeforeTestSteps }}
3535

36-
- task: PythonScript@0
37-
displayName: 'Run Tests'
38-
inputs:
39-
scriptPath: 'scripts/devops_tasks/setup_execute_tests.py'
40-
arguments: >-
41-
"${{ parameters.BuildTargetingString }}"
42-
${{ parameters.AdditionalTestArgs }}
43-
${{ parameters.CoverageArg }}
44-
--mark_arg="${{ parameters.TestMarkArgument }}"
45-
--service="${{ parameters.ServiceDirectory }}"
46-
--toxenv="${{ parameters.ToxTestEnv }}"
47-
--injected-packages="${{ parameters.InjectedPackages }}"
48-
${{ parameters.ToxEnvParallel }}
36+
- pwsh: |
37+
$env:Path = "$(Build.SourcesDirectory)/env;" + $env:Path
38+
python -m pip install pip==20.1
39+
python -m pip install -r eng/ci_tools.txt
40+
python -m pip --version
41+
42+
$env:PYTHON_HOME = ""
43+
$env:VIRTUAL_ENV = "$(Build.SourcesDirectory)/env"
44+
45+
Write-Host 'python ./scripts/devops_tasks/setup_execute_tests.py "${{ parameters.BuildTargetingString }}" ${{ parameters.AdditionalTestArgs }} ${{ parameters.CoverageArg }} --mark_arg="${{ parameters.TestMarkArgument }}" --service="${{ parameters.ServiceDirectory }}" --toxenv="${{ parameters.ToxTestEnv }}" --injected-packages="${{ parameters.InjectedPackages }}" ${{ parameters.ToxEnvParallel }}"'
46+
python ./scripts/devops_tasks/setup_execute_tests.py "${{ parameters.BuildTargetingString }}" ${{ parameters.AdditionalTestArgs }} ${{ parameters.CoverageArg }} --mark_arg="${{ parameters.TestMarkArgument }}" --service="${{ parameters.ServiceDirectory }}" --toxenv="${{ parameters.ToxTestEnv }}" --injected-packages="${{ parameters.InjectedPackages }}" ${{ parameters.ToxEnvParallel }}
47+
4948
env: ${{ parameters.EnvVars }}
49+
displayName: 'Run Tests'
5050
5151
- ${{ parameters.AfterTestSteps }}
5252

sdk/cognitiveservices/azure-cognitiveservices-vision-customvision/CHANGELOG.md

+31-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,35 @@
11
# Release History
22

3+
## 3.0.0 (2020-06-22)
4+
5+
*Training 3.3*
6+
7+
**Features**
8+
9+
- Model ImageUrlCreateBatch has a new parameter metadata
10+
- Model ImageIdCreateBatch has a new parameter metadata
11+
- Model Prediction has a new parameter tag_type
12+
- Model ImageFileCreateBatch has a new parameter metadata
13+
- Model Image has a new parameter metadata
14+
- Added operation get_images
15+
- Added operation update_image_metadata
16+
- Added operation get_artifact
17+
- Added operation get_image_count
18+
19+
**Breaking changes**
20+
21+
- Operation import_project has a new signature
22+
- Operation publish_iteration has a new signature
23+
- Operation create_images_from_files has a new signature
24+
- Operation create_images_from_urls has a new signature
25+
- Operation create_images_from_predictions has a new signature
26+
27+
*Prediction 3.1*
28+
29+
**Features**
30+
31+
- Model Prediction has a new parameter tag_type
32+
333
## 2.0.0 (2020-05-14)
434

535
**Features**
@@ -21,7 +51,7 @@
2151

2252
**Breaking changes**
2353

24-
- Credentials are now longer a simple string, but a `msrest.authentication.ApiKeyCredentials` instance instead
54+
- Credentials are now longer a simple string, but a `msrest.authentication.ApiKeyCredentials` instance instead
2555

2656
**General Breaking changes**
2757

sdk/cognitiveservices/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/vision/customvision/prediction/_configuration.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ def __init__(
3333
raise ValueError("Parameter 'endpoint' must not be None.")
3434
if credentials is None:
3535
raise ValueError("Parameter 'credentials' must not be None.")
36-
base_url = '{Endpoint}/customvision/v3.0/prediction'
36+
base_url = '{Endpoint}/customvision/v3.1/prediction'
3737

3838
super(CustomVisionPredictionClientConfiguration, self).__init__(base_url)
3939

sdk/cognitiveservices/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/vision/customvision/prediction/_custom_vision_prediction_client.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ def __init__(
3737
super(CustomVisionPredictionClient, self).__init__(self.config.credentials, self.config)
3838

3939
client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)}
40-
self.api_version = '3.0'
40+
self.api_version = '3.1'
4141
self._serialize = Serializer(client_models)
4242
self._deserialize = Deserializer(client_models)
4343

sdk/cognitiveservices/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/vision/customvision/prediction/models/__init__.py

+2
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
from ._models import Prediction
2424
from ._custom_vision_prediction_client_enums import (
2525
CustomVisionErrorCodes,
26+
TagType,
2627
)
2728

2829
__all__ = [
@@ -32,4 +33,5 @@
3233
'ImageUrl',
3334
'Prediction',
3435
'CustomVisionErrorCodes',
36+
'TagType',
3537
]

sdk/cognitiveservices/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/vision/customvision/prediction/models/_custom_vision_prediction_client_enums.py

+25
Original file line numberDiff line numberDiff line change
@@ -26,25 +26,31 @@ class CustomVisionErrorCodes(str, Enum):
2626
bad_request_project_unknown_classification = "BadRequestProjectUnknownClassification"
2727
bad_request_project_unsupported_domain_type_change = "BadRequestProjectUnsupportedDomainTypeChange"
2828
bad_request_project_unsupported_export_platform = "BadRequestProjectUnsupportedExportPlatform"
29+
bad_request_project_image_preprocessing_settings = "BadRequestProjectImagePreprocessingSettings"
30+
bad_request_project_duplicated = "BadRequestProjectDuplicated"
2931
bad_request_iteration_name = "BadRequestIterationName"
3032
bad_request_iteration_name_not_unique = "BadRequestIterationNameNotUnique"
3133
bad_request_iteration_description = "BadRequestIterationDescription"
3234
bad_request_iteration_is_not_trained = "BadRequestIterationIsNotTrained"
35+
bad_request_iteration_validation_failed = "BadRequestIterationValidationFailed"
3336
bad_request_workspace_cannot_be_modified = "BadRequestWorkspaceCannotBeModified"
3437
bad_request_workspace_not_deletable = "BadRequestWorkspaceNotDeletable"
3538
bad_request_tag_name = "BadRequestTagName"
3639
bad_request_tag_name_not_unique = "BadRequestTagNameNotUnique"
3740
bad_request_tag_description = "BadRequestTagDescription"
3841
bad_request_tag_type = "BadRequestTagType"
3942
bad_request_multiple_negative_tag = "BadRequestMultipleNegativeTag"
43+
bad_request_multiple_general_product_tag = "BadRequestMultipleGeneralProductTag"
4044
bad_request_image_tags = "BadRequestImageTags"
4145
bad_request_image_regions = "BadRequestImageRegions"
4246
bad_request_negative_and_regular_tag_on_same_image = "BadRequestNegativeAndRegularTagOnSameImage"
47+
bad_request_unsupported_domain = "BadRequestUnsupportedDomain"
4348
bad_request_required_param_is_null = "BadRequestRequiredParamIsNull"
4449
bad_request_iteration_is_published = "BadRequestIterationIsPublished"
4550
bad_request_invalid_publish_name = "BadRequestInvalidPublishName"
4651
bad_request_invalid_publish_target = "BadRequestInvalidPublishTarget"
4752
bad_request_unpublish_failed = "BadRequestUnpublishFailed"
53+
bad_request_iteration_not_published = "BadRequestIterationNotPublished"
4854
bad_request_subscription_api = "BadRequestSubscriptionApi"
4955
bad_request_exceed_project_limit = "BadRequestExceedProjectLimit"
5056
bad_request_exceed_iteration_per_project_limit = "BadRequestExceedIterationPerProjectLimit"
@@ -58,6 +64,7 @@ class CustomVisionErrorCodes(str, Enum):
5864
bad_request_image_url = "BadRequestImageUrl"
5965
bad_request_image_format = "BadRequestImageFormat"
6066
bad_request_image_size_bytes = "BadRequestImageSizeBytes"
67+
bad_request_image_dimensions = "BadRequestImageDimensions"
6168
bad_request_image_exceeded_count = "BadRequestImageExceededCount"
6269
bad_request_training_not_needed = "BadRequestTrainingNotNeeded"
6370
bad_request_training_not_needed_but_training_pipeline_updated = "BadRequestTrainingNotNeededButTrainingPipelineUpdated"
@@ -80,6 +87,13 @@ class CustomVisionErrorCodes(str, Enum):
8087
bad_request_prediction_results_exceeded_count = "BadRequestPredictionResultsExceededCount"
8188
bad_request_prediction_invalid_application_name = "BadRequestPredictionInvalidApplicationName"
8289
bad_request_prediction_invalid_query_parameters = "BadRequestPredictionInvalidQueryParameters"
90+
bad_request_invalid_import_token = "BadRequestInvalidImportToken"
91+
bad_request_export_while_training = "BadRequestExportWhileTraining"
92+
bad_request_image_metadata_key = "BadRequestImageMetadataKey"
93+
bad_request_image_metadata_value = "BadRequestImageMetadataValue"
94+
bad_request_operation_not_supported = "BadRequestOperationNotSupported"
95+
bad_request_invalid_artifact_uri = "BadRequestInvalidArtifactUri"
96+
bad_request_customer_managed_key_revoked = "BadRequestCustomerManagedKeyRevoked"
8397
bad_request_invalid = "BadRequestInvalid"
8498
unsupported_media_type = "UnsupportedMediaType"
8599
forbidden = "Forbidden"
@@ -105,10 +119,13 @@ class CustomVisionErrorCodes(str, Enum):
105119
conflict = "Conflict"
106120
conflict_invalid = "ConflictInvalid"
107121
error_unknown = "ErrorUnknown"
122+
error_iteration_copy_failed = "ErrorIterationCopyFailed"
123+
error_prepare_performance_migration_failed = "ErrorPreparePerformanceMigrationFailed"
108124
error_project_invalid_workspace = "ErrorProjectInvalidWorkspace"
109125
error_project_invalid_pipeline_configuration = "ErrorProjectInvalidPipelineConfiguration"
110126
error_project_invalid_domain = "ErrorProjectInvalidDomain"
111127
error_project_training_request_failed = "ErrorProjectTrainingRequestFailed"
128+
error_project_import_request_failed = "ErrorProjectImportRequestFailed"
112129
error_project_export_request_failed = "ErrorProjectExportRequestFailed"
113130
error_featurization_service_unavailable = "ErrorFeaturizationServiceUnavailable"
114131
error_featurization_queue_timeout = "ErrorFeaturizationQueueTimeout"
@@ -125,4 +142,12 @@ class CustomVisionErrorCodes(str, Enum):
125142
error_prediction = "ErrorPrediction"
126143
error_prediction_storage = "ErrorPredictionStorage"
127144
error_region_proposal = "ErrorRegionProposal"
145+
error_unknown_base_model = "ErrorUnknownBaseModel"
128146
error_invalid = "ErrorInvalid"
147+
148+
149+
class TagType(str, Enum):
150+
151+
regular = "Regular"
152+
negative = "Negative"
153+
general_product = "GeneralProduct"

sdk/cognitiveservices/azure-cognitiveservices-vision-customvision/azure/cognitiveservices/vision/customvision/prediction/models/_models.py

+33-17
Original file line numberDiff line numberDiff line change
@@ -62,25 +62,29 @@ class CustomVisionError(Model):
6262
'BadRequestProjectUnknownDomain',
6363
'BadRequestProjectUnknownClassification',
6464
'BadRequestProjectUnsupportedDomainTypeChange',
65-
'BadRequestProjectUnsupportedExportPlatform', 'BadRequestIterationName',
65+
'BadRequestProjectUnsupportedExportPlatform',
66+
'BadRequestProjectImagePreprocessingSettings',
67+
'BadRequestProjectDuplicated', 'BadRequestIterationName',
6668
'BadRequestIterationNameNotUnique', 'BadRequestIterationDescription',
67-
'BadRequestIterationIsNotTrained', 'BadRequestWorkspaceCannotBeModified',
68-
'BadRequestWorkspaceNotDeletable', 'BadRequestTagName',
69-
'BadRequestTagNameNotUnique', 'BadRequestTagDescription',
70-
'BadRequestTagType', 'BadRequestMultipleNegativeTag',
69+
'BadRequestIterationIsNotTrained', 'BadRequestIterationValidationFailed',
70+
'BadRequestWorkspaceCannotBeModified', 'BadRequestWorkspaceNotDeletable',
71+
'BadRequestTagName', 'BadRequestTagNameNotUnique',
72+
'BadRequestTagDescription', 'BadRequestTagType',
73+
'BadRequestMultipleNegativeTag', 'BadRequestMultipleGeneralProductTag',
7174
'BadRequestImageTags', 'BadRequestImageRegions',
7275
'BadRequestNegativeAndRegularTagOnSameImage',
73-
'BadRequestRequiredParamIsNull', 'BadRequestIterationIsPublished',
74-
'BadRequestInvalidPublishName', 'BadRequestInvalidPublishTarget',
75-
'BadRequestUnpublishFailed', 'BadRequestSubscriptionApi',
76+
'BadRequestUnsupportedDomain', 'BadRequestRequiredParamIsNull',
77+
'BadRequestIterationIsPublished', 'BadRequestInvalidPublishName',
78+
'BadRequestInvalidPublishTarget', 'BadRequestUnpublishFailed',
79+
'BadRequestIterationNotPublished', 'BadRequestSubscriptionApi',
7680
'BadRequestExceedProjectLimit',
7781
'BadRequestExceedIterationPerProjectLimit',
7882
'BadRequestExceedTagPerProjectLimit', 'BadRequestExceedTagPerImageLimit',
7983
'BadRequestExceededQuota', 'BadRequestCannotMigrateProjectWithName',
8084
'BadRequestNotLimitedTrial', 'BadRequestImageBatch',
8185
'BadRequestImageStream', 'BadRequestImageUrl', 'BadRequestImageFormat',
82-
'BadRequestImageSizeBytes', 'BadRequestImageExceededCount',
83-
'BadRequestTrainingNotNeeded',
86+
'BadRequestImageSizeBytes', 'BadRequestImageDimensions',
87+
'BadRequestImageExceededCount', 'BadRequestTrainingNotNeeded',
8488
'BadRequestTrainingNotNeededButTrainingPipelineUpdated',
8589
'BadRequestTrainingValidationFailed',
8690
'BadRequestClassificationTrainingValidationFailed',
@@ -98,7 +102,11 @@ class CustomVisionError(Model):
98102
'BadRequestPredictionTagsExceededCount',
99103
'BadRequestPredictionResultsExceededCount',
100104
'BadRequestPredictionInvalidApplicationName',
101-
'BadRequestPredictionInvalidQueryParameters', 'BadRequestInvalid',
105+
'BadRequestPredictionInvalidQueryParameters',
106+
'BadRequestInvalidImportToken', 'BadRequestExportWhileTraining',
107+
'BadRequestImageMetadataKey', 'BadRequestImageMetadataValue',
108+
'BadRequestOperationNotSupported', 'BadRequestInvalidArtifactUri',
109+
'BadRequestCustomerManagedKeyRevoked', 'BadRequestInvalid',
102110
'UnsupportedMediaType', 'Forbidden', 'ForbiddenUser',
103111
'ForbiddenUserResource', 'ForbiddenUserSignupDisabled',
104112
'ForbiddenUserSignupAllowanceExceeded', 'ForbiddenUserDoesNotExist',
@@ -107,19 +115,20 @@ class CustomVisionError(Model):
107115
'NotFoundProject', 'NotFoundProjectDefaultIteration', 'NotFoundIteration',
108116
'NotFoundIterationPerformance', 'NotFoundTag', 'NotFoundImage',
109117
'NotFoundDomain', 'NotFoundApimSubscription', 'NotFoundInvalid',
110-
'Conflict', 'ConflictInvalid', 'ErrorUnknown',
111-
'ErrorProjectInvalidWorkspace',
118+
'Conflict', 'ConflictInvalid', 'ErrorUnknown', 'ErrorIterationCopyFailed',
119+
'ErrorPreparePerformanceMigrationFailed', 'ErrorProjectInvalidWorkspace',
112120
'ErrorProjectInvalidPipelineConfiguration', 'ErrorProjectInvalidDomain',
113-
'ErrorProjectTrainingRequestFailed', 'ErrorProjectExportRequestFailed',
114-
'ErrorFeaturizationServiceUnavailable', 'ErrorFeaturizationQueueTimeout',
115-
'ErrorFeaturizationInvalidFeaturizer',
121+
'ErrorProjectTrainingRequestFailed', 'ErrorProjectImportRequestFailed',
122+
'ErrorProjectExportRequestFailed', 'ErrorFeaturizationServiceUnavailable',
123+
'ErrorFeaturizationQueueTimeout', 'ErrorFeaturizationInvalidFeaturizer',
116124
'ErrorFeaturizationAugmentationUnavailable',
117125
'ErrorFeaturizationUnrecognizedJob',
118126
'ErrorFeaturizationAugmentationError', 'ErrorExporterInvalidPlatform',
119127
'ErrorExporterInvalidFeaturizer', 'ErrorExporterInvalidClassifier',
120128
'ErrorPredictionServiceUnavailable', 'ErrorPredictionModelNotFound',
121129
'ErrorPredictionModelNotCached', 'ErrorPrediction',
122-
'ErrorPredictionStorage', 'ErrorRegionProposal', 'ErrorInvalid'
130+
'ErrorPredictionStorage', 'ErrorRegionProposal', 'ErrorUnknownBaseModel',
131+
'ErrorInvalid'
123132
:type code: str or
124133
~azure.cognitiveservices.vision.customvision.prediction.models.CustomVisionErrorCodes
125134
:param message: Required. A message explaining the error reported by the
@@ -236,20 +245,26 @@ class Prediction(Model):
236245
:ivar bounding_box: Bounding box of the prediction.
237246
:vartype bounding_box:
238247
~azure.cognitiveservices.vision.customvision.prediction.models.BoundingBox
248+
:ivar tag_type: Type of the predicted tag. Possible values include:
249+
'Regular', 'Negative', 'GeneralProduct'
250+
:vartype tag_type: str or
251+
~azure.cognitiveservices.vision.customvision.prediction.models.TagType
239252
"""
240253

241254
_validation = {
242255
'probability': {'readonly': True},
243256
'tag_id': {'readonly': True},
244257
'tag_name': {'readonly': True},
245258
'bounding_box': {'readonly': True},
259+
'tag_type': {'readonly': True},
246260
}
247261

248262
_attribute_map = {
249263
'probability': {'key': 'probability', 'type': 'float'},
250264
'tag_id': {'key': 'tagId', 'type': 'str'},
251265
'tag_name': {'key': 'tagName', 'type': 'str'},
252266
'bounding_box': {'key': 'boundingBox', 'type': 'BoundingBox'},
267+
'tag_type': {'key': 'tagType', 'type': 'str'},
253268
}
254269

255270
def __init__(self, **kwargs):
@@ -258,3 +273,4 @@ def __init__(self, **kwargs):
258273
self.tag_id = None
259274
self.tag_name = None
260275
self.bounding_box = None
276+
self.tag_type = None

0 commit comments

Comments
 (0)