azureml-core 1.56.0__py3-none-any.whl → 1.57.0.post1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- azureml/_base_sdk_common/_version.py +1 -1
 - azureml/_file_utils/file_utils.py +19 -19
 - azureml/_project/azureml_base_images.json +7 -7
 - azureml/_project/azureml_sdk_scope.txt +12 -45
 - azureml/_vendor/azure_storage/blob/_encryption.py +1 -2
 - azureml/_vendor/azure_storage/blob/_shared/policies.py +20 -20
 - azureml/_vendor/azure_storage/fileshare/_shared/policies.py +20 -20
 - azureml/_workspace/_utils.py +2 -1
 - azureml/core/authentication.py +1 -4
 - azureml/core/compute/computeinstance.py +54 -0
 - azureml/core/conda_dependencies.py +1 -1
 - azureml/core/datastore.py +23 -23
 - azureml/core/model.py +0 -8
 - azureml/core/runconfig.py +4 -6
 - azureml/core/webservice/aks.py +0 -4
 - azureml/core/webservice/local.py +0 -4
 - azureml/core/webservice/webservice.py +0 -4
 - azureml/data/context_managers.py +1 -1
 - {azureml_core-1.56.0.dist-info → azureml_core-1.57.0.post1.dist-info}/METADATA +32 -32
 - {azureml_core-1.56.0.dist-info → azureml_core-1.57.0.post1.dist-info}/RECORD +24 -24
 - {azureml_core-1.56.0.dist-info → azureml_core-1.57.0.post1.dist-info}/WHEEL +1 -1
 - {azureml_core-1.56.0.dist-info → azureml_core-1.57.0.post1.dist-info}/LICENSE.txt +0 -0
 - {azureml_core-1.56.0.dist-info → azureml_core-1.57.0.post1.dist-info}/entry_points.txt +0 -0
 - {azureml_core-1.56.0.dist-info → azureml_core-1.57.0.post1.dist-info}/top_level.txt +0 -0
 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            ver = "1. 
     | 
| 
      
 1 
     | 
    
         
            +
            ver = "1.57.0"
         
     | 
| 
         @@ -24,11 +24,11 @@ from azure.common import AzureMissingResourceHttpError 
     | 
|
| 
       24 
24 
     | 
    
         
             
            module_logger = logging.getLogger(__name__)
         
     | 
| 
       25 
25 
     | 
    
         | 
| 
       26 
26 
     | 
    
         | 
| 
       27 
     | 
    
         
            -
            def _validate_content_match( 
     | 
| 
       28 
     | 
    
         
            -
                 
     | 
| 
       29 
     | 
    
         
            -
                    ' 
     | 
| 
       30 
     | 
    
         
            -
                if  
     | 
| 
       31 
     | 
    
         
            -
                    raise AzureMLException( 
     | 
| 
      
 27 
     | 
    
         
            +
            def _validate_content_match(server_256, computed_sha256):
         
     | 
| 
      
 28 
     | 
    
         
            +
                _ERROR_sha256_MISMATCH = \
         
     | 
| 
      
 29 
     | 
    
         
            +
                    'sha256 mismatch. Expected value is \'{0}\', computed value is \'{1}\'.'
         
     | 
| 
      
 30 
     | 
    
         
            +
                if server_256 != computed_sha256:
         
     | 
| 
      
 31 
     | 
    
         
            +
                    raise AzureMLException(_ERROR_sha256_MISMATCH.format(server_256, computed_sha256))
         
     | 
| 
       32 
32 
     | 
    
         | 
| 
       33 
33 
     | 
    
         | 
| 
       34 
34 
     | 
    
         
             
            def normalize_path_and_join(path, name):
         
     | 
| 
         @@ -247,14 +247,14 @@ def download_file(source_uri, path=None, max_retries=5, stream=True, protocol="h 
     | 
|
| 
       247 
247 
     | 
    
         
             
                # download using requests.Session
         
     | 
| 
       248 
248 
     | 
    
         
             
                def _handle_response(response):
         
     | 
| 
       249 
249 
     | 
    
         
             
                    makedirs_for_file_path(path)
         
     | 
| 
       250 
     | 
    
         
            -
                     
     | 
| 
      
 250 
     | 
    
         
            +
                    sha256_hash = hashlib.sha256()
         
     | 
| 
       251 
251 
     | 
    
         
             
                    with open(path, 'wb') as write_to_file:
         
     | 
| 
       252 
252 
     | 
    
         
             
                        for chunk in response.iter_content(chunk_size=1024):
         
     | 
| 
       253 
253 
     | 
    
         
             
                            if chunk:
         
     | 
| 
       254 
     | 
    
         
            -
                                 
     | 
| 
      
 254 
     | 
    
         
            +
                                sha256_hash.update(chunk)
         
     | 
| 
       255 
255 
     | 
    
         
             
                                write_to_file.write(chunk)
         
     | 
| 
       256 
256 
     | 
    
         
             
                        if _validate_check_sum:
         
     | 
| 
       257 
     | 
    
         
            -
                            _validate_content( 
     | 
| 
      
 257 
     | 
    
         
            +
                            _validate_content(sha256_hash, response)
         
     | 
| 
       258 
258 
     | 
    
         | 
| 
       259 
259 
     | 
    
         
             
                _request_file_with_retry(source_uri, _handle_response, max_retries, stream, session)
         
     | 
| 
       260 
260 
     | 
    
         | 
| 
         @@ -319,37 +319,37 @@ def download_file_stream(source_uri, encoding="utf-8", download_to_bytes=False, 
     | 
|
| 
       319 
319 
     | 
    
         
             
                # download using requests.Session
         
     | 
| 
       320 
320 
     | 
    
         
             
                def _handle_response(response):
         
     | 
| 
       321 
321 
     | 
    
         
             
                    bytes_str = bytes()
         
     | 
| 
       322 
     | 
    
         
            -
                     
     | 
| 
      
 322 
     | 
    
         
            +
                    sha256_hash = hashlib.sha256()
         
     | 
| 
       323 
323 
     | 
    
         
             
                    if response.status_code != 200:
         
     | 
| 
       324 
324 
     | 
    
         
             
                        response.raise_for_status()
         
     | 
| 
       325 
325 
     | 
    
         
             
                    for chunk in response.iter_content(chunk_size=1024):
         
     | 
| 
       326 
326 
     | 
    
         
             
                        if chunk:
         
     | 
| 
       327 
     | 
    
         
            -
                             
     | 
| 
      
 327 
     | 
    
         
            +
                            sha256_hash.update(chunk)
         
     | 
| 
       328 
328 
     | 
    
         
             
                            bytes_str += chunk
         
     | 
| 
       329 
329 
     | 
    
         
             
                    if _validate_check_sum:
         
     | 
| 
       330 
     | 
    
         
            -
                        _validate_content( 
     | 
| 
      
 330 
     | 
    
         
            +
                        _validate_content(sha256_hash, response)
         
     | 
| 
       331 
331 
     | 
    
         
             
                    return bytes_str if download_to_bytes else bytes_str.decode(encoding)
         
     | 
| 
       332 
332 
     | 
    
         | 
| 
       333 
333 
     | 
    
         
             
                return _request_file_with_retry(source_uri, _handle_response, max_retries, stream, session)
         
     | 
| 
       334 
334 
     | 
    
         | 
| 
       335 
335 
     | 
    
         | 
| 
       336 
     | 
    
         
            -
            def _validate_content( 
     | 
| 
      
 336 
     | 
    
         
            +
            def _validate_content(sha256_hash, response):
         
     | 
| 
       337 
337 
     | 
    
         
             
                """
         
     | 
| 
       338 
     | 
    
         
            -
                Validate the content of response with  
     | 
| 
      
 338 
     | 
    
         
            +
                Validate the content of response with sha256_hash
         
     | 
| 
       339 
339 
     | 
    
         | 
| 
       340 
     | 
    
         
            -
                :param  
     | 
| 
       341 
     | 
    
         
            -
                :type  
     | 
| 
      
 340 
     | 
    
         
            +
                :param sha256_hash:
         
     | 
| 
      
 341 
     | 
    
         
            +
                :type sha256_hash: _Hash
         
     | 
| 
       342 
342 
     | 
    
         
             
                :param response: the response object
         
     | 
| 
       343 
343 
     | 
    
         
             
                :type response: requests.Response
         
     | 
| 
       344 
344 
     | 
    
         
             
                :return: None
         
     | 
| 
       345 
345 
     | 
    
         
             
                :rtype: None
         
     | 
| 
       346 
346 
     | 
    
         
             
                """
         
     | 
| 
       347 
     | 
    
         
            -
                if 'content- 
     | 
| 
       348 
     | 
    
         
            -
                    _validate_content_match(response.headers['content- 
     | 
| 
       349 
     | 
    
         
            -
                                            base64.b64encode( 
     | 
| 
      
 347 
     | 
    
         
            +
                if 'content-sha256' in response.headers:
         
     | 
| 
      
 348 
     | 
    
         
            +
                    _validate_content_match(response.headers['content-sha256'],
         
     | 
| 
      
 349 
     | 
    
         
            +
                                            base64.b64encode(sha256_hash.digest()).decode('utf-8'))
         
     | 
| 
       350 
350 
     | 
    
         
             
                else:
         
     | 
| 
       351 
351 
     | 
    
         
             
                    module_logger.debug(
         
     | 
| 
       352 
     | 
    
         
            -
                        "validate_check_sum flag is set to true but content- 
     | 
| 
      
 352 
     | 
    
         
            +
                        "validate_check_sum flag is set to true but content-sha256 not found on respose header")
         
     | 
| 
       353 
353 
     | 
    
         | 
| 
       354 
354 
     | 
    
         | 
| 
       355 
355 
     | 
    
         
             
            def get_directory_size(path, size_limit=None, include_function=None, exclude_function=None):
         
     | 
| 
         @@ -1,9 +1,9 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            {
         
     | 
| 
       2 
     | 
    
         
            -
                "mcr.microsoft.com/azureml/openmpi4.1.0-cuda11.1-cudnn8-ubuntu20.04": " 
     | 
| 
       3 
     | 
    
         
            -
                "mcr.microsoft.com/azureml/openmpi4.1.0-cuda11.2-cudnn8-ubuntu20.04": " 
     | 
| 
       4 
     | 
    
         
            -
                "mcr.microsoft.com/azureml/openmpi4.1.0-cuda11.3-cudnn8-ubuntu20.04": " 
     | 
| 
       5 
     | 
    
         
            -
                "mcr.microsoft.com/azureml/openmpi4.1.0-cuda11.6-cudnn8-ubuntu20.04": " 
     | 
| 
       6 
     | 
    
         
            -
                "mcr.microsoft.com/azureml/openmpi4.1.0-cuda11.8-cudnn8-ubuntu22.04": " 
     | 
| 
       7 
     | 
    
         
            -
                "mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04": " 
     | 
| 
       8 
     | 
    
         
            -
                "mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu22.04": " 
     | 
| 
      
 2 
     | 
    
         
            +
                "mcr.microsoft.com/azureml/openmpi4.1.0-cuda11.1-cudnn8-ubuntu20.04": "20240908.v1",
         
     | 
| 
      
 3 
     | 
    
         
            +
                "mcr.microsoft.com/azureml/openmpi4.1.0-cuda11.2-cudnn8-ubuntu20.04": "20240908.v1",
         
     | 
| 
      
 4 
     | 
    
         
            +
                "mcr.microsoft.com/azureml/openmpi4.1.0-cuda11.3-cudnn8-ubuntu20.04": "20240908.v1",
         
     | 
| 
      
 5 
     | 
    
         
            +
                "mcr.microsoft.com/azureml/openmpi4.1.0-cuda11.6-cudnn8-ubuntu20.04": "20240908.v1",
         
     | 
| 
      
 6 
     | 
    
         
            +
                "mcr.microsoft.com/azureml/openmpi4.1.0-cuda11.8-cudnn8-ubuntu22.04": "20240908.v1",
         
     | 
| 
      
 7 
     | 
    
         
            +
                "mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04": "20240908.v1",
         
     | 
| 
      
 8 
     | 
    
         
            +
                "mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu22.04": "20240908.v1"
         
     | 
| 
       9 
9 
     | 
    
         
             
            }
         
     | 
| 
         @@ -1,45 +1,12 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
       5 
     | 
    
         
            -
             
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
             
     | 
| 
       8 
     | 
    
         
            -
             
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
            azureml-automl-dnn-vision
         
     | 
| 
       14 
     | 
    
         
            -
            azureml-automl-dnn-nlp
         
     | 
| 
       15 
     | 
    
         
            -
            azureml-contrib-automl-pipeline-steps
         
     | 
| 
       16 
     | 
    
         
            -
            azureml-train-restclients-hyperdrive
         
     | 
| 
       17 
     | 
    
         
            -
            azureml-telemetry
         
     | 
| 
       18 
     | 
    
         
            -
            azureml-tensorboard
         
     | 
| 
       19 
     | 
    
         
            -
            azureml-contrib-notebook
         
     | 
| 
       20 
     | 
    
         
            -
            azureml-explain-model
         
     | 
| 
       21 
     | 
    
         
            -
            azureml-interpret
         
     | 
| 
       22 
     | 
    
         
            -
            azureml-contrib-server
         
     | 
| 
       23 
     | 
    
         
            -
            azureml-contrib-services
         
     | 
| 
       24 
     | 
    
         
            -
            azureml-contrib-iot
         
     | 
| 
       25 
     | 
    
         
            -
            azureml-contrib-run
         
     | 
| 
       26 
     | 
    
         
            -
            azureml-datadrift
         
     | 
| 
       27 
     | 
    
         
            -
            azureml-widgets
         
     | 
| 
       28 
     | 
    
         
            -
            azureml-pipeline
         
     | 
| 
       29 
     | 
    
         
            -
            azureml-pipeline-core
         
     | 
| 
       30 
     | 
    
         
            -
            azureml-pipeline-steps
         
     | 
| 
       31 
     | 
    
         
            -
            azureml-contrib-pipeline-steps
         
     | 
| 
       32 
     | 
    
         
            -
            azureml-cli-common
         
     | 
| 
       33 
     | 
    
         
            -
            azureml-opendatasets
         
     | 
| 
       34 
     | 
    
         
            -
            azureml-accel-models
         
     | 
| 
       35 
     | 
    
         
            -
            azureml-mlflow
         
     | 
| 
       36 
     | 
    
         
            -
            azureml-contrib-functions
         
     | 
| 
       37 
     | 
    
         
            -
            azureml-contrib-dataset
         
     | 
| 
       38 
     | 
    
         
            -
            azureml-contrib-reinforcementlearning
         
     | 
| 
       39 
     | 
    
         
            -
            azureml-contrib-mir
         
     | 
| 
       40 
     | 
    
         
            -
            azureml-contrib-fairness
         
     | 
| 
       41 
     | 
    
         
            -
            azureml-contrib-aisc
         
     | 
| 
       42 
     | 
    
         
            -
            azureml-dataset-runtime
         
     | 
| 
       43 
     | 
    
         
            -
            azureml-synapse
         
     | 
| 
       44 
     | 
    
         
            -
            azureml-responsibleai
         
     | 
| 
       45 
     | 
    
         
            -
            azureml-automl-common-tools
         
     | 
| 
      
 1 
     | 
    
         
            +
            a
         
     | 
| 
      
 2 
     | 
    
         
            +
            z
         
     | 
| 
      
 3 
     | 
    
         
            +
            u
         
     | 
| 
      
 4 
     | 
    
         
            +
            r
         
     | 
| 
      
 5 
     | 
    
         
            +
            e
         
     | 
| 
      
 6 
     | 
    
         
            +
            m
         
     | 
| 
      
 7 
     | 
    
         
            +
            l
         
     | 
| 
      
 8 
     | 
    
         
            +
            -
         
     | 
| 
      
 9 
     | 
    
         
            +
            c
         
     | 
| 
      
 10 
     | 
    
         
            +
            o
         
     | 
| 
      
 11 
     | 
    
         
            +
            r
         
     | 
| 
      
 12 
     | 
    
         
            +
            e
         
     | 
| 
         @@ -251,8 +251,7 @@ class GCMBlobEncryptionStream: 
     | 
|
| 
       251 
251 
     | 
    
         
             
                    :param bytes data: The data to encrypt.
         
     | 
| 
       252 
252 
     | 
    
         
             
                    """
         
     | 
| 
       253 
253 
     | 
    
         
             
                    # Each region MUST use a different nonce
         
     | 
| 
       254 
     | 
    
         
            -
                    nonce =  
     | 
| 
       255 
     | 
    
         
            -
                    self.nonce_counter += 1
         
     | 
| 
      
 254 
     | 
    
         
            +
                    nonce = os.urandom(12)
         
     | 
| 
       256 
255 
     | 
    
         | 
| 
       257 
256 
     | 
    
         
             
                    aesgcm = AESGCM(self.content_encryption_key)
         
     | 
| 
       258 
257 
     | 
    
         | 
| 
         @@ -101,11 +101,11 @@ def is_retry(response, mode):   # pylint: disable=too-many-return-statements 
     | 
|
| 
       101 
101 
     | 
    
         
             
                    if status in [501, 505]:
         
     | 
| 
       102 
102 
     | 
    
         
             
                        return False
         
     | 
| 
       103 
103 
     | 
    
         
             
                    return True
         
     | 
| 
       104 
     | 
    
         
            -
                # retry if invalid content  
     | 
| 
       105 
     | 
    
         
            -
                if response.context.get('validate_content', False) and response.http_response.headers.get('content- 
     | 
| 
       106 
     | 
    
         
            -
                     
     | 
| 
       107 
     | 
    
         
            -
                                   encode_base64(StorageContentValidation. 
     | 
| 
       108 
     | 
    
         
            -
                    if response.http_response.headers['content- 
     | 
| 
      
 104 
     | 
    
         
            +
                # retry if invalid content sha256
         
     | 
| 
      
 105 
     | 
    
         
            +
                if response.context.get('validate_content', False) and response.http_response.headers.get('content-sha256'):
         
     | 
| 
      
 106 
     | 
    
         
            +
                    computed_sha256 = response.http_request.headers.get('content-sha256', None) or \
         
     | 
| 
      
 107 
     | 
    
         
            +
                                   encode_base64(StorageContentValidation.get_content_sha256(response.http_response.body()))
         
     | 
| 
      
 108 
     | 
    
         
            +
                    if response.http_response.headers['content-sha256'] != computed_sha256:
         
     | 
| 
       109 
109 
     | 
    
         
             
                        return True
         
     | 
| 
       110 
110 
     | 
    
         
             
                return False
         
     | 
| 
       111 
111 
     | 
    
         | 
| 
         @@ -343,17 +343,17 @@ class StorageContentValidation(SansIOHTTPPolicy): 
     | 
|
| 
       343 
343 
     | 
    
         | 
| 
       344 
344 
     | 
    
         
             
                This will overwrite any headers already defined in the request.
         
     | 
| 
       345 
345 
     | 
    
         
             
                """
         
     | 
| 
       346 
     | 
    
         
            -
                header_name = 'Content- 
     | 
| 
      
 346 
     | 
    
         
            +
                header_name = 'Content-sha256'
         
     | 
| 
       347 
347 
     | 
    
         | 
| 
       348 
348 
     | 
    
         
             
                def __init__(self, **kwargs):  # pylint: disable=unused-argument
         
     | 
| 
       349 
349 
     | 
    
         
             
                    super(StorageContentValidation, self).__init__()
         
     | 
| 
       350 
350 
     | 
    
         | 
| 
       351 
351 
     | 
    
         
             
                @staticmethod
         
     | 
| 
       352 
     | 
    
         
            -
                def  
     | 
| 
      
 352 
     | 
    
         
            +
                def get_content_sha256(data):
         
     | 
| 
       353 
353 
     | 
    
         
             
                    data = data or b""
         
     | 
| 
       354 
     | 
    
         
            -
                     
     | 
| 
      
 354 
     | 
    
         
            +
                    sha256 = hashlib.sha256() # nosec
         
     | 
| 
       355 
355 
     | 
    
         
             
                    if isinstance(data, bytes):
         
     | 
| 
       356 
     | 
    
         
            -
                         
     | 
| 
      
 356 
     | 
    
         
            +
                        sha256.update(data)
         
     | 
| 
       357 
357 
     | 
    
         
             
                    elif hasattr(data, 'read'):
         
     | 
| 
       358 
358 
     | 
    
         
             
                        pos = 0
         
     | 
| 
       359 
359 
     | 
    
         
             
                        try:
         
     | 
| 
         @@ -361,7 +361,7 @@ class StorageContentValidation(SansIOHTTPPolicy): 
     | 
|
| 
       361 
361 
     | 
    
         
             
                        except:  # pylint: disable=bare-except
         
     | 
| 
       362 
362 
     | 
    
         
             
                            pass
         
     | 
| 
       363 
363 
     | 
    
         
             
                        for chunk in iter(lambda: data.read(4096), b""):
         
     | 
| 
       364 
     | 
    
         
            -
                             
     | 
| 
      
 364 
     | 
    
         
            +
                            sha256.update(chunk)
         
     | 
| 
       365 
365 
     | 
    
         
             
                        try:
         
     | 
| 
       366 
366 
     | 
    
         
             
                            data.seek(pos, SEEK_SET)
         
     | 
| 
       367 
367 
     | 
    
         
             
                        except (AttributeError, IOError):
         
     | 
| 
         @@ -369,25 +369,25 @@ class StorageContentValidation(SansIOHTTPPolicy): 
     | 
|
| 
       369 
369 
     | 
    
         
             
                    else:
         
     | 
| 
       370 
370 
     | 
    
         
             
                        raise ValueError("Data should be bytes or a seekable file-like object.")
         
     | 
| 
       371 
371 
     | 
    
         | 
| 
       372 
     | 
    
         
            -
                    return  
     | 
| 
      
 372 
     | 
    
         
            +
                    return sha256.digest()
         
     | 
| 
       373 
373 
     | 
    
         | 
| 
       374 
374 
     | 
    
         
             
                def on_request(self, request):
         
     | 
| 
       375 
375 
     | 
    
         
             
                    # type: (PipelineRequest, Any) -> None
         
     | 
| 
       376 
376 
     | 
    
         
             
                    validate_content = request.context.options.pop('validate_content', False)
         
     | 
| 
       377 
377 
     | 
    
         
             
                    if validate_content and request.http_request.method != 'GET':
         
     | 
| 
       378 
     | 
    
         
            -
                         
     | 
| 
       379 
     | 
    
         
            -
                        request.http_request.headers[self.header_name] =  
     | 
| 
       380 
     | 
    
         
            -
                        request.context[' 
     | 
| 
      
 378 
     | 
    
         
            +
                        computed_sha256 = encode_base64(StorageContentValidation.get_content_sha256(request.http_request.data))
         
     | 
| 
      
 379 
     | 
    
         
            +
                        request.http_request.headers[self.header_name] = computed_sha256
         
     | 
| 
      
 380 
     | 
    
         
            +
                        request.context['validate_content_sha256'] = computed_sha256
         
     | 
| 
       381 
381 
     | 
    
         
             
                    request.context['validate_content'] = validate_content
         
     | 
| 
       382 
382 
     | 
    
         | 
| 
       383 
383 
     | 
    
         
             
                def on_response(self, request, response):
         
     | 
| 
       384 
     | 
    
         
            -
                    if response.context.get('validate_content', False) and response.http_response.headers.get('content- 
     | 
| 
       385 
     | 
    
         
            -
                         
     | 
| 
       386 
     | 
    
         
            -
                            encode_base64(StorageContentValidation. 
     | 
| 
       387 
     | 
    
         
            -
                        if response.http_response.headers['content- 
     | 
| 
      
 384 
     | 
    
         
            +
                    if response.context.get('validate_content', False) and response.http_response.headers.get('content-sha256'):
         
     | 
| 
      
 385 
     | 
    
         
            +
                        computed_sha256 = request.context.get('validate_content_sha256') or \
         
     | 
| 
      
 386 
     | 
    
         
            +
                            encode_base64(StorageContentValidation.get_content_sha256(response.http_response.body()))
         
     | 
| 
      
 387 
     | 
    
         
            +
                        if response.http_response.headers['content-sha256'] != computed_sha256:
         
     | 
| 
       388 
388 
     | 
    
         
             
                            raise AzureError(
         
     | 
| 
       389 
     | 
    
         
            -
                                ' 
     | 
| 
       390 
     | 
    
         
            -
                                    response.http_response.headers['content- 
     | 
| 
      
 389 
     | 
    
         
            +
                                'sha256 mismatch. Expected value is \'{0}\', computed value is \'{1}\'.'.format(
         
     | 
| 
      
 390 
     | 
    
         
            +
                                    response.http_response.headers['content-sha256'], computed_sha256),
         
     | 
| 
       391 
391 
     | 
    
         
             
                                response=response.http_response
         
     | 
| 
       392 
392 
     | 
    
         
             
                            )
         
     | 
| 
       393 
393 
     | 
    
         | 
| 
         @@ -97,11 +97,11 @@ def is_retry(response, mode):   # pylint: disable=too-many-return-statements 
     | 
|
| 
       97 
97 
     | 
    
         
             
                    if status in [501, 505]:
         
     | 
| 
       98 
98 
     | 
    
         
             
                        return False
         
     | 
| 
       99 
99 
     | 
    
         
             
                    return True
         
     | 
| 
       100 
     | 
    
         
            -
                # retry if invalid content  
     | 
| 
       101 
     | 
    
         
            -
                if response.context.get('validate_content', False) and response.http_response.headers.get('content- 
     | 
| 
       102 
     | 
    
         
            -
                     
     | 
| 
       103 
     | 
    
         
            -
                                   encode_base64(StorageContentValidation. 
     | 
| 
       104 
     | 
    
         
            -
                    if response.http_response.headers['content- 
     | 
| 
      
 100 
     | 
    
         
            +
                # retry if invalid content sha256
         
     | 
| 
      
 101 
     | 
    
         
            +
                if response.context.get('validate_content', False) and response.http_response.headers.get('content-sha256'):
         
     | 
| 
      
 102 
     | 
    
         
            +
                    computed_sha256 = response.http_request.headers.get('content-sha256', None) or \
         
     | 
| 
      
 103 
     | 
    
         
            +
                                   encode_base64(StorageContentValidation.get_content_sha256(response.http_response.body()))
         
     | 
| 
      
 104 
     | 
    
         
            +
                    if response.http_response.headers['content-sha256'] != computed_sha256:
         
     | 
| 
       105 
105 
     | 
    
         
             
                        return True
         
     | 
| 
       106 
106 
     | 
    
         
             
                return False
         
     | 
| 
       107 
107 
     | 
    
         | 
| 
         @@ -329,17 +329,17 @@ class StorageContentValidation(SansIOHTTPPolicy): 
     | 
|
| 
       329 
329 
     | 
    
         | 
| 
       330 
330 
     | 
    
         
             
                This will overwrite any headers already defined in the request.
         
     | 
| 
       331 
331 
     | 
    
         
             
                """
         
     | 
| 
       332 
     | 
    
         
            -
                header_name = 'Content- 
     | 
| 
      
 332 
     | 
    
         
            +
                header_name = 'Content-sha256'
         
     | 
| 
       333 
333 
     | 
    
         | 
| 
       334 
334 
     | 
    
         
             
                def __init__(self, **kwargs):  # pylint: disable=unused-argument
         
     | 
| 
       335 
335 
     | 
    
         
             
                    super(StorageContentValidation, self).__init__()
         
     | 
| 
       336 
336 
     | 
    
         | 
| 
       337 
337 
     | 
    
         
             
                @staticmethod
         
     | 
| 
       338 
     | 
    
         
            -
                def  
     | 
| 
      
 338 
     | 
    
         
            +
                def get_content_sha256(data):
         
     | 
| 
       339 
339 
     | 
    
         
             
                    data = data or b""
         
     | 
| 
       340 
     | 
    
         
            -
                     
     | 
| 
      
 340 
     | 
    
         
            +
                    sha256 = hashlib.sha256() # nosec
         
     | 
| 
       341 
341 
     | 
    
         
             
                    if isinstance(data, bytes):
         
     | 
| 
       342 
     | 
    
         
            -
                         
     | 
| 
      
 342 
     | 
    
         
            +
                        sha256.update(data)
         
     | 
| 
       343 
343 
     | 
    
         
             
                    elif hasattr(data, 'read'):
         
     | 
| 
       344 
344 
     | 
    
         
             
                        pos = 0
         
     | 
| 
       345 
345 
     | 
    
         
             
                        try:
         
     | 
| 
         @@ -347,7 +347,7 @@ class StorageContentValidation(SansIOHTTPPolicy): 
     | 
|
| 
       347 
347 
     | 
    
         
             
                        except:  # pylint: disable=bare-except
         
     | 
| 
       348 
348 
     | 
    
         
             
                            pass
         
     | 
| 
       349 
349 
     | 
    
         
             
                        for chunk in iter(lambda: data.read(4096), b""):
         
     | 
| 
       350 
     | 
    
         
            -
                             
     | 
| 
      
 350 
     | 
    
         
            +
                            sha256.update(chunk)
         
     | 
| 
       351 
351 
     | 
    
         
             
                        try:
         
     | 
| 
       352 
352 
     | 
    
         
             
                            data.seek(pos, SEEK_SET)
         
     | 
| 
       353 
353 
     | 
    
         
             
                        except (AttributeError, IOError):
         
     | 
| 
         @@ -355,25 +355,25 @@ class StorageContentValidation(SansIOHTTPPolicy): 
     | 
|
| 
       355 
355 
     | 
    
         
             
                    else:
         
     | 
| 
       356 
356 
     | 
    
         
             
                        raise ValueError("Data should be bytes or a seekable file-like object.")
         
     | 
| 
       357 
357 
     | 
    
         | 
| 
       358 
     | 
    
         
            -
                    return  
     | 
| 
      
 358 
     | 
    
         
            +
                    return sha256.digest()
         
     | 
| 
       359 
359 
     | 
    
         | 
| 
       360 
360 
     | 
    
         
             
                def on_request(self, request):
         
     | 
| 
       361 
361 
     | 
    
         
             
                    # type: (PipelineRequest, Any) -> None
         
     | 
| 
       362 
362 
     | 
    
         
             
                    validate_content = request.context.options.pop('validate_content', False)
         
     | 
| 
       363 
363 
     | 
    
         
             
                    if validate_content and request.http_request.method != 'GET':
         
     | 
| 
       364 
     | 
    
         
            -
                         
     | 
| 
       365 
     | 
    
         
            -
                        request.http_request.headers[self.header_name] =  
     | 
| 
       366 
     | 
    
         
            -
                        request.context[' 
     | 
| 
      
 364 
     | 
    
         
            +
                        computed_sha256 = encode_base64(StorageContentValidation.get_content_sha256(request.http_request.data))
         
     | 
| 
      
 365 
     | 
    
         
            +
                        request.http_request.headers[self.header_name] = computed_sha256
         
     | 
| 
      
 366 
     | 
    
         
            +
                        request.context['validate_content_sha256'] = computed_sha256
         
     | 
| 
       367 
367 
     | 
    
         
             
                    request.context['validate_content'] = validate_content
         
     | 
| 
       368 
368 
     | 
    
         | 
| 
       369 
369 
     | 
    
         
             
                def on_response(self, request, response):
         
     | 
| 
       370 
     | 
    
         
            -
                    if response.context.get('validate_content', False) and response.http_response.headers.get('content- 
     | 
| 
       371 
     | 
    
         
            -
                         
     | 
| 
       372 
     | 
    
         
            -
                            encode_base64(StorageContentValidation. 
     | 
| 
       373 
     | 
    
         
            -
                        if response.http_response.headers['content- 
     | 
| 
      
 370 
     | 
    
         
            +
                    if response.context.get('validate_content', False) and response.http_response.headers.get('content-sha256'):
         
     | 
| 
      
 371 
     | 
    
         
            +
                        computed_sha256 = request.context.get('validate_content_sha256') or \
         
     | 
| 
      
 372 
     | 
    
         
            +
                            encode_base64(StorageContentValidation.get_content_sha256(response.http_response.body()))
         
     | 
| 
      
 373 
     | 
    
         
            +
                        if response.http_response.headers['content-sha256'] != computed_sha256:
         
     | 
| 
       374 
374 
     | 
    
         
             
                            raise AzureError(
         
     | 
| 
       375 
     | 
    
         
            -
                                ' 
     | 
| 
       376 
     | 
    
         
            -
                                    response.http_response.headers['content- 
     | 
| 
      
 375 
     | 
    
         
            +
                                'sha256 mismatch. Expected value is \'{0}\', computed value is \'{1}\'.'.format(
         
     | 
| 
      
 376 
     | 
    
         
            +
                                    response.http_response.headers['content-sha256'], computed_sha256),
         
     | 
| 
       377 
377 
     | 
    
         
             
                                response=response.http_response
         
     | 
| 
       378 
378 
     | 
    
         
             
                            )
         
     | 
| 
       379 
379 
     | 
    
         | 
    
        azureml/_workspace/_utils.py
    CHANGED
    
    | 
         @@ -52,7 +52,8 @@ def get_application_insights_region(workspace_region): 
     | 
|
| 
       52 
52 
     | 
    
         
             
                    "southindia": "centralindia",
         
     | 
| 
       53 
53 
     | 
    
         
             
                    "polandcentral": "northeurope",
         
     | 
| 
       54 
54 
     | 
    
         
             
                    "italynorth": "westeurope",
         
     | 
| 
       55 
     | 
    
         
            -
                    "chinaeast3": "chinaeast2"
         
     | 
| 
      
 55 
     | 
    
         
            +
                    "chinaeast3": "chinaeast2",
         
     | 
| 
      
 56 
     | 
    
         
            +
                    "spaincentral": "francecentral"
         
     | 
| 
       56 
57 
     | 
    
         
             
                }.get(workspace_region, workspace_region)
         
     | 
| 
       57 
58 
     | 
    
         | 
| 
       58 
59 
     | 
    
         | 
    
        azureml/core/authentication.py
    CHANGED
    
    | 
         @@ -1566,10 +1566,7 @@ class AzureMLTokenAuthentication(AbstractAuthentication): 
     | 
|
| 
       1566 
1566 
     | 
    
         
             
                @staticmethod
         
     | 
| 
       1567 
1567 
     | 
    
         
             
                def _get_token(token, should_encrypt=False):
         
     | 
| 
       1568 
1568 
     | 
    
         
             
                    password = os.environ.get("AZUREML_RUN_TOKEN_PASS")
         
     | 
| 
       1569 
     | 
    
         
            -
                     
     | 
| 
       1570 
     | 
    
         
            -
                    m = hashlib.sha256()
         
     | 
| 
       1571 
     | 
    
         
            -
                    m.update(random_string.encode())
         
     | 
| 
       1572 
     | 
    
         
            -
                    salt = m.digest()
         
     | 
| 
      
 1569 
     | 
    
         
            +
                    salt = os.urandom(16)
         
     | 
| 
       1573 
1570 
     | 
    
         
             
                    kdf = PBKDF2HMAC(
         
     | 
| 
       1574 
1571 
     | 
    
         
             
                        algorithm=hashes.SHA256(),
         
     | 
| 
       1575 
1572 
     | 
    
         
             
                        length=32,
         
     | 
| 
         @@ -365,6 +365,60 @@ class ComputeInstance(ComputeTarget): 
     | 
|
| 
       365 
365 
     | 
    
         
             
                        vnet_name, subnet_name, tags, description, assigned_user_object_id, assigned_user_tenant_id)
         
     | 
| 
       366 
366 
     | 
    
         
             
                    return config
         
     | 
| 
       367 
367 
     | 
    
         | 
| 
      
 368 
     | 
    
         
            +
                def update_sso_settings(self, value):
         
     | 
| 
      
 369 
     | 
    
         
            +
                    """Update single sign-on settings of the compute instance.
         
     | 
| 
      
 370 
     | 
    
         
            +
             
     | 
| 
      
 371 
     | 
    
         
            +
                    :param value: The value of sso settings
         
     | 
| 
      
 372 
     | 
    
         
            +
                    :type value: bool
         
     | 
| 
      
 373 
     | 
    
         
            +
                    :return: Whether the update was successful or not
         
     | 
| 
      
 374 
     | 
    
         
            +
                    :rtype: bool
         
     | 
| 
      
 375 
     | 
    
         
            +
                    """
         
     | 
| 
      
 376 
     | 
    
         
            +
                    return self._update_sso_settings(self.workspace, self.name, value)
         
     | 
| 
      
 377 
     | 
    
         
            +
             
     | 
| 
      
 378 
     | 
    
         
            +
                @staticmethod
         
     | 
| 
      
 379 
     | 
    
         
            +
                def _update_sso_settings(workspace, compute_name, value):
         
     | 
| 
      
 380 
     | 
    
         
            +
                    """Update single sign-on settings.
         
     | 
| 
      
 381 
     | 
    
         
            +
             
     | 
| 
      
 382 
     | 
    
         
            +
                    :param workspace: The workspace.
         
     | 
| 
      
 383 
     | 
    
         
            +
                    :type workspace: azureml.core.Workspace
         
     | 
| 
      
 384 
     | 
    
         
            +
                    :param compute_name: The compute name.
         
     | 
| 
      
 385 
     | 
    
         
            +
                    :type compute_name: string
         
     | 
| 
      
 386 
     | 
    
         
            +
                    :param value: The value of sso settings
         
     | 
| 
      
 387 
     | 
    
         
            +
                    :type value: bool
         
     | 
| 
      
 388 
     | 
    
         
            +
                    :return: Whether the update was successful or not
         
     | 
| 
      
 389 
     | 
    
         
            +
                    :rtype: bool
         
     | 
| 
      
 390 
     | 
    
         
            +
                    """
         
     | 
| 
      
 391 
     | 
    
         
            +
                    if not workspace:
         
     | 
| 
      
 392 
     | 
    
         
            +
                        return False
         
     | 
| 
      
 393 
     | 
    
         
            +
             
     | 
| 
      
 394 
     | 
    
         
            +
                    enable_sso_fmt = '{}/subscriptions/{}/resourcegroups/{}/providers/' \
         
     | 
| 
      
 395 
     | 
    
         
            +
                        'Microsoft.MachineLearningServices/workspaces/{}/computes/{}/enableSso'
         
     | 
| 
      
 396 
     | 
    
         
            +
                    arm_endpoint = ComputeTarget._get_resource_manager_endpoint(workspace)
         
     | 
| 
      
 397 
     | 
    
         
            +
                    endpoint = enable_sso_fmt.format(arm_endpoint,
         
     | 
| 
      
 398 
     | 
    
         
            +
                                                     workspace.subscription_id,
         
     | 
| 
      
 399 
     | 
    
         
            +
                                                     workspace.resource_group,
         
     | 
| 
      
 400 
     | 
    
         
            +
                                                     workspace.name,
         
     | 
| 
      
 401 
     | 
    
         
            +
                                                     compute_name)
         
     | 
| 
      
 402 
     | 
    
         
            +
                    headers = workspace._auth.get_authentication_header()
         
     | 
| 
      
 403 
     | 
    
         
            +
                    ComputeTarget._add_request_tracking_headers(headers)
         
     | 
| 
      
 404 
     | 
    
         
            +
                    params = {'api-version': MLC_WORKSPACE_API_VERSION}
         
     | 
| 
      
 405 
     | 
    
         
            +
                    compute_update_payload = {'EnableSSO': value}
         
     | 
| 
      
 406 
     | 
    
         
            +
             
     | 
| 
      
 407 
     | 
    
         
            +
                    try:
         
     | 
| 
      
 408 
     | 
    
         
            +
                        resp = ClientBase._execute_func(get_requests_session().post, endpoint,
         
     | 
| 
      
 409 
     | 
    
         
            +
                                                        params=params, headers=headers, json=compute_update_payload)
         
     | 
| 
      
 410 
     | 
    
         
            +
                        resp.raise_for_status()
         
     | 
| 
      
 411 
     | 
    
         
            +
                    except requests.exceptions.HTTPError:
         
     | 
| 
      
 412 
     | 
    
         
            +
                        raise ComputeTargetException('Single sign-on settings update request failed:\n'
         
     | 
| 
      
 413 
     | 
    
         
            +
                                                     'Response Code: {}\n'
         
     | 
| 
      
 414 
     | 
    
         
            +
                                                     'Headers: {}\n'
         
     | 
| 
      
 415 
     | 
    
         
            +
                                                     'Content: {}'.format(resp.status_code, resp.headers, resp.content))
         
     | 
| 
      
 416 
     | 
    
         
            +
             
     | 
| 
      
 417 
     | 
    
         
            +
                    if resp.status_code != 200:
         
     | 
| 
      
 418 
     | 
    
         
            +
                        return False
         
     | 
| 
      
 419 
     | 
    
         
            +
             
     | 
| 
      
 420 
     | 
    
         
            +
                    return True
         
     | 
| 
      
 421 
     | 
    
         
            +
             
     | 
| 
       368 
422 
     | 
    
         
             
                @staticmethod
         
     | 
| 
       369 
423 
     | 
    
         
             
                def _build_create_payload(config, location, subscription_id):
         
     | 
| 
       370 
424 
     | 
    
         
             
                    """Construct the payload needed to create an ComputeInstance.
         
     | 
| 
         @@ -29,7 +29,7 @@ PIP = 'pip' 
     | 
|
| 
       29 
29 
     | 
    
         
             
            PYTHON_PREFIX = 'python'
         
     | 
| 
       30 
30 
     | 
    
         
             
            VERSION_REGEX = re.compile(r'(\d+)\.(\d+)(\.(\d+))?([ab](\d+))?$')
         
     | 
| 
       31 
31 
     | 
    
         
             
            CNTK_DEFAULT_VERSION = '2.7'
         
     | 
| 
       32 
     | 
    
         
            -
            PYTHON_DEFAULT_VERSION = '3. 
     | 
| 
      
 32 
     | 
    
         
            +
            PYTHON_DEFAULT_VERSION = '3.9.12'
         
     | 
| 
       33 
33 
     | 
    
         
             
            LINUX_PLATFORM = 'linux'
         
     | 
| 
       34 
34 
     | 
    
         
             
            WINDOWS_PLATFORM = 'win32'
         
     | 
| 
       35 
35 
     | 
    
         
             
            TENSORFLOW_DEFAULT_VERSION = '2.2.0'
         
     | 
    
        azureml/core/datastore.py
    CHANGED
    
    | 
         @@ -54,29 +54,29 @@ class Datastore(object): 
     | 
|
| 
       54 
54 
     | 
    
         | 
| 
       55 
55 
     | 
    
         
             
                    .. code-block:: python
         
     | 
| 
       56 
56 
     | 
    
         | 
| 
       57 
     | 
    
         
            -
                        from azureml.exceptions import UserErrorException
         
     | 
| 
       58 
     | 
    
         
            -
             
     | 
| 
       59 
     | 
    
         
            -
                        blob_datastore_name='MyBlobDatastore'
         
     | 
| 
       60 
     | 
    
         
            -
                        account_name=os.getenv("BLOB_ACCOUNTNAME_62", "<my-account-name>") # Storage account name
         
     | 
| 
       61 
     | 
    
         
            -
                        container_name=os.getenv("BLOB_CONTAINER_62", "<my-container-name>") # Name of Azure blob container
         
     | 
| 
       62 
     | 
    
         
            -
                        account_key=os.getenv("BLOB_ACCOUNT_KEY_62", "<my-account-key>") # Storage account key
         
     | 
| 
       63 
     | 
    
         
            -
             
     | 
| 
       64 
     | 
    
         
            -
                        try:
         
     | 
| 
       65 
     | 
    
         
            -
             
     | 
| 
       66 
     | 
    
         
            -
             
     | 
| 
       67 
     | 
    
         
            -
                        except UserErrorException:
         
     | 
| 
       68 
     | 
    
         
            -
             
     | 
| 
       69 
     | 
    
         
            -
             
     | 
| 
       70 
     | 
    
         
            -
             
     | 
| 
       71 
     | 
    
         
            -
             
     | 
| 
       72 
     | 
    
         
            -
             
     | 
| 
       73 
     | 
    
         
            -
             
     | 
| 
       74 
     | 
    
         
            -
             
     | 
| 
       75 
     | 
    
         
            -
             
     | 
| 
       76 
     | 
    
         
            -
                        blob_data_ref = DataReference(
         
     | 
| 
       77 
     | 
    
         
            -
             
     | 
| 
       78 
     | 
    
         
            -
             
     | 
| 
       79 
     | 
    
         
            -
             
     | 
| 
      
 57 
     | 
    
         
            +
                        # from azureml.exceptions import UserErrorException
         
     | 
| 
      
 58 
     | 
    
         
            +
                        #
         
     | 
| 
      
 59 
     | 
    
         
            +
                        # blob_datastore_name='MyBlobDatastore'
         
     | 
| 
      
 60 
     | 
    
         
            +
                        # account_name=os.getenv("BLOB_ACCOUNTNAME_62", "<my-account-name>") # Storage account name
         
     | 
| 
      
 61 
     | 
    
         
            +
                        # container_name=os.getenv("BLOB_CONTAINER_62", "<my-container-name>") # Name of Azure blob container
         
     | 
| 
      
 62 
     | 
    
         
            +
                        # account_key=os.getenv("BLOB_ACCOUNT_KEY_62", "<my-account-key>") # Storage account key
         
     | 
| 
      
 63 
     | 
    
         
            +
                        #
         
     | 
| 
      
 64 
     | 
    
         
            +
                        # try:
         
     | 
| 
      
 65 
     | 
    
         
            +
                        #     blob_datastore = Datastore.get(ws, blob_datastore_name)
         
     | 
| 
      
 66 
     | 
    
         
            +
                        #     print("Found Blob Datastore with name: %s" % blob_datastore_name)
         
     | 
| 
      
 67 
     | 
    
         
            +
                        # except UserErrorException:
         
     | 
| 
      
 68 
     | 
    
         
            +
                        #     blob_datastore = Datastore.register_azure_blob_container(
         
     | 
| 
      
 69 
     | 
    
         
            +
                        #         workspace=ws,
         
     | 
| 
      
 70 
     | 
    
         
            +
                        #         datastore_name=blob_datastore_name,
         
     | 
| 
      
 71 
     | 
    
         
            +
                        #         account_name=account_name, # Storage account name
         
     | 
| 
      
 72 
     | 
    
         
            +
                        #         container_name=container_name, # Name of Azure blob container
         
     | 
| 
      
 73 
     | 
    
         
            +
                        #         account_key=account_key) # Storage account key
         
     | 
| 
      
 74 
     | 
    
         
            +
                        #     print("Registered blob datastore with name: %s" % blob_datastore_name)
         
     | 
| 
      
 75 
     | 
    
         
            +
                        #
         
     | 
| 
      
 76 
     | 
    
         
            +
                        # blob_data_ref = DataReference(
         
     | 
| 
      
 77 
     | 
    
         
            +
                        #     datastore=blob_datastore,
         
     | 
| 
      
 78 
     | 
    
         
            +
                        #     data_reference_name="blob_test_data",
         
     | 
| 
      
 79 
     | 
    
         
            +
                        #     path_on_datastore="testdata")
         
     | 
| 
       80 
80 
     | 
    
         | 
| 
       81 
81 
     | 
    
         
             
                    Full sample is available from
         
     | 
| 
       82 
82 
     | 
    
         
             
                    https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-data-transfer.ipynb
         
     | 
    
        azureml/core/model.py
    CHANGED
    
    | 
         @@ -150,10 +150,6 @@ class Model(object): 
     | 
|
| 
       150 
150 
     | 
    
         
             
                                               description="Ridge regression model to predict diabetes",
         
     | 
| 
       151 
151 
     | 
    
         
             
                                               workspace=ws)
         
     | 
| 
       152 
152 
     | 
    
         | 
| 
       153 
     | 
    
         
            -
                    Full sample is available from
         
     | 
| 
       154 
     | 
    
         
            -
                    https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/deploy-to-local/register-model-deploy-local-advanced.ipynb
         
     | 
| 
       155 
     | 
    
         
            -
             
     | 
| 
       156 
     | 
    
         
            -
             
     | 
| 
       157 
153 
     | 
    
         
             
                    The following sample shows how to register a model specifying framework, input and output
         
     | 
| 
       158 
154 
     | 
    
         
             
                    datasets, and resource configuration.
         
     | 
| 
       159 
155 
     | 
    
         | 
| 
         @@ -526,10 +522,6 @@ class Model(object): 
     | 
|
| 
       526 
522 
     | 
    
         
             
                                                   description="Ridge regression model to predict diabetes",
         
     | 
| 
       527 
523 
     | 
    
         
             
                                                   workspace=ws)
         
     | 
| 
       528 
524 
     | 
    
         | 
| 
       529 
     | 
    
         
            -
                        Full sample is available from
         
     | 
| 
       530 
     | 
    
         
            -
                        https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/deploy-to-local/register-model-deploy-local-advanced.ipynb
         
     | 
| 
       531 
     | 
    
         
            -
             
     | 
| 
       532 
     | 
    
         
            -
             
     | 
| 
       533 
525 
     | 
    
         
             
                        If you have a model that was produced as a result of an experiment run, you can register it
         
     | 
| 
       534 
526 
     | 
    
         
             
                        from a run object directly without downloading it to a local file first. In order to do that use
         
     | 
| 
       535 
527 
     | 
    
         
             
                        the :func:`azureml.core.run.Run.register_model` method as documented in the :class:`azureml.core.run.Run`
         
     | 
    
        azureml/core/runconfig.py
    CHANGED
    
    | 
         @@ -1445,7 +1445,6 @@ class RunConfiguration(_AbstractRunConfigElement): 
     | 
|
| 
       1445 
1445 
     | 
    
         | 
| 
       1446 
1446 
     | 
    
         
             
                    # True if the specified path is a project directory. False if the path specified is a file.
         
     | 
| 
       1447 
1447 
     | 
    
         
             
                    project_dir_case = True
         
     | 
| 
       1448 
     | 
    
         
            -
                    path = os.path.normpath(path)
         
     | 
| 
       1449 
1448 
     | 
    
         
             
                    if os.path.exists(path) and os.path.isdir(path):
         
     | 
| 
       1450 
1449 
     | 
    
         
             
                        # This should be the project directory
         
     | 
| 
       1451 
1450 
     | 
    
         
             
                        if name is None and self._name is None:
         
     | 
| 
         @@ -1456,8 +1455,7 @@ class RunConfiguration(_AbstractRunConfigElement): 
     | 
|
| 
       1456 
1455 
     | 
    
         
             
                            raise UserErrorException("Name is required to save the runconfig")
         
     | 
| 
       1457 
1456 
     | 
    
         
             
                    else:
         
     | 
| 
       1458 
1457 
     | 
    
         
             
                        # A user might have specified the file location to save.
         
     | 
| 
       1459 
     | 
    
         
            -
                        parent_dir = os.path.dirname(path)
         
     | 
| 
       1460 
     | 
    
         
            -
                        path = os.path.normpath(path)
         
     | 
| 
      
 1458 
     | 
    
         
            +
                        parent_dir = os.path.dirname(path)            
         
     | 
| 
       1461 
1459 
     | 
    
         
             
                        if os.path.exists(parent_dir) and os.path.isdir(parent_dir):
         
     | 
| 
       1462 
1460 
     | 
    
         
             
                            project_dir_case = False
         
     | 
| 
       1463 
1461 
     | 
    
         
             
                        else:
         
     | 
| 
         @@ -1590,8 +1588,8 @@ class RunConfiguration(_AbstractRunConfigElement): 
     | 
|
| 
       1590 
1588 
     | 
    
         
             
                    :raises: UserErrorException
         
     | 
| 
       1591 
1589 
     | 
    
         
             
                    """
         
     | 
| 
       1592 
1590 
     | 
    
         
             
                    file_found = False
         
     | 
| 
       1593 
     | 
    
         
            -
                    legacy_full_file_path = os.path.normpath(legacy_full_file_path)
         
     | 
| 
       1594 
1591 
     | 
    
         
             
                    legacy_full_file_path = os.path.join(path, AML_CONFIG_DIR, name + RUNCONFIGURATION_EXTENSION)
         
     | 
| 
      
 1592 
     | 
    
         
            +
                    legacy_full_file_path = os.path.normpath(legacy_full_file_path)
         
     | 
| 
       1595 
1593 
     | 
    
         
             
                    full_file_path = os.path.join(path, AZUREML_DIR, name + RUNCONFIGURATION_EXTENSION)
         
     | 
| 
       1596 
1594 
     | 
    
         
             
                    if os.path.isfile(legacy_full_file_path):
         
     | 
| 
       1597 
1595 
     | 
    
         
             
                        file_found = True
         
     | 
| 
         @@ -1765,11 +1763,11 @@ class RunConfiguration(_AbstractRunConfigElement): 
     | 
|
| 
       1765 
1763 
     | 
    
         
             
                    :return:
         
     | 
| 
       1766 
1764 
     | 
    
         
             
                    :rtype: None
         
     | 
| 
       1767 
1765 
     | 
    
         
             
                    """
         
     | 
| 
       1768 
     | 
    
         
            -
                    spark_dependencies_path = os.path.normpath(spark_dependencies_path)
         
     | 
| 
       1769 
1766 
     | 
    
         
             
                    if spark_dependencies_file:
         
     | 
| 
       1770 
1767 
     | 
    
         
             
                        # Reading spark dependencies file.
         
     | 
| 
       1771 
1768 
     | 
    
         
             
                        spark_dependencies_path = os.path.join(
         
     | 
| 
       1772 
1769 
     | 
    
         
             
                            path, spark_dependencies_file)
         
     | 
| 
      
 1770 
     | 
    
         
            +
                        spark_dependencies_path = os.path.normpath(spark_dependencies_path)
         
     | 
| 
       1773 
1771 
     | 
    
         | 
| 
       1774 
1772 
     | 
    
         
             
                        if not os.path.isfile(spark_dependencies_path):
         
     | 
| 
       1775 
1773 
     | 
    
         
             
                            raise UserErrorException("Spark dependencies file = {} doesn't exist at {}".format(
         
     | 
| 
         @@ -2014,9 +2012,9 @@ class RunConfiguration(_AbstractRunConfigElement): 
     | 
|
| 
       2014 
2012 
     | 
    
         
             
                        # Check if environment is specified as a dict or a file reference.
         
     | 
| 
       2015 
2013 
     | 
    
         
             
                        if "environment" in commented_map_or_dict and type(commented_map_or_dict["environment"]) == str:
         
     | 
| 
       2016 
2014 
     | 
    
         
             
                            # environment is specified as a file reference.
         
     | 
| 
       2017 
     | 
    
         
            -
                            environment_path = os.path.normpath(environment_path)
         
     | 
| 
       2018 
2015 
     | 
    
         
             
                            environment_path = os.path.join(dir_to_load,
         
     | 
| 
       2019 
2016 
     | 
    
         
             
                                                            commented_map_or_dict["environment"])
         
     | 
| 
      
 2017 
     | 
    
         
            +
                            environment_path = os.path.normpath(environment_path)
         
     | 
| 
       2020 
2018 
     | 
    
         
             
                            with open(environment_path, "r") as environment_config:
         
     | 
| 
       2021 
2019 
     | 
    
         
             
                                # Replacing string path with the actual environment serialized dictionary.
         
     | 
| 
       2022 
2020 
     | 
    
         
             
                                commented_map_or_dict["environment"] = ruamelyaml.round_trip_load(environment_config)
         
     | 
    
        azureml/core/webservice/aks.py
    CHANGED
    
    | 
         @@ -70,10 +70,6 @@ class AksWebservice(Webservice): 
     | 
|
| 
       70 
70 
     | 
    
         
             
                        # # Enable token auth and disable (key) auth on the webservice
         
     | 
| 
       71 
71 
     | 
    
         
             
                        # aks_config = AksWebservice.deploy_configuration(token_auth_enabled=True, auth_enabled=False)
         
     | 
| 
       72 
72 
     | 
    
         | 
| 
       73 
     | 
    
         
            -
                    Full sample is available from
         
     | 
| 
       74 
     | 
    
         
            -
                    https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb
         
     | 
| 
       75 
     | 
    
         
            -
             
     | 
| 
       76 
     | 
    
         
            -
             
     | 
| 
       77 
73 
     | 
    
         
             
                    There are a number of ways to deploy a model as a webservice, including with the:
         
     | 
| 
       78 
74 
     | 
    
         | 
| 
       79 
75 
     | 
    
         
             
                    * ``deploy`` method of the :class:`azureml.core.model.Model` for models already registered in the workspace.
         
     | 
    
        azureml/core/webservice/local.py
    CHANGED
    
    | 
         @@ -95,10 +95,6 @@ class LocalWebservice(Webservice): 
     | 
|
| 
       95 
95 
     | 
    
         | 
| 
       96 
96 
     | 
    
         
             
                        local_service.wait_for_deployment()
         
     | 
| 
       97 
97 
     | 
    
         | 
| 
       98 
     | 
    
         
            -
                    Full sample is available from
         
     | 
| 
       99 
     | 
    
         
            -
                    https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/deploy-to-local/register-model-deploy-local.ipynb
         
     | 
| 
       100 
     | 
    
         
            -
             
     | 
| 
       101 
     | 
    
         
            -
             
     | 
| 
       102 
98 
     | 
    
         
             
                :param workspace: The workspace object containing any Model objects that will be retrieved.
         
     | 
| 
       103 
99 
     | 
    
         
             
                :type workspace: azureml.core.Workspace
         
     | 
| 
       104 
100 
     | 
    
         
             
                :param name: The name of the Webservice object to retrieve.
         
     | 
| 
         @@ -84,10 +84,6 @@ class Webservice(ABC): 
     | 
|
| 
       84 
84 
     | 
    
         
             
                        # # Enable token auth and disable (key) auth on the webservice
         
     | 
| 
       85 
85 
     | 
    
         
             
                        # aks_config = AksWebservice.deploy_configuration(token_auth_enabled=True, auth_enabled=False)
         
     | 
| 
       86 
86 
     | 
    
         | 
| 
       87 
     | 
    
         
            -
                    Full sample is available from
         
     | 
| 
       88 
     | 
    
         
            -
                    https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb
         
     | 
| 
       89 
     | 
    
         
            -
             
     | 
| 
       90 
     | 
    
         
            -
             
     | 
| 
       91 
87 
     | 
    
         
             
                    The following sample shows how to find an existing :class:`azureml.core.webservice.AciWebservice` in a
         
     | 
| 
       92 
88 
     | 
    
         
             
                    workspace and delete it if it exists so the name can be reused.
         
     | 
| 
       93 
89 
     | 
    
         | 
    
        azureml/data/context_managers.py
    CHANGED
    
    | 
         @@ -1003,7 +1003,7 @@ class DatasetContextManager(_CommonContextManager): 
     | 
|
| 
       1003 
1003 
     | 
    
         
             
                    import hashlib
         
     | 
| 
       1004 
1004 
     | 
    
         | 
| 
       1005 
1005 
     | 
    
         
             
                    path_elems = os.path.normpath(path).split(os.path.sep)
         
     | 
| 
       1006 
     | 
    
         
            -
                    hashed_path_elems = list(map(lambda p: hashlib. 
     | 
| 
      
 1006 
     | 
    
         
            +
                    hashed_path_elems = list(map(lambda p: hashlib.sha256(bytes(p, encoding='utf-8')).hexdigest(), path_elems))
         
     | 
| 
       1007 
1007 
     | 
    
         
             
                    return os.path.join(*hashed_path_elems)
         
     | 
| 
       1008 
1008 
     | 
    
         | 
| 
       1009 
1009 
     | 
    
         | 
| 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            Metadata-Version: 2.1
         
     | 
| 
       2 
2 
     | 
    
         
             
            Name: azureml-core
         
     | 
| 
       3 
     | 
    
         
            -
            Version: 1. 
     | 
| 
      
 3 
     | 
    
         
            +
            Version: 1.57.0.post1
         
     | 
| 
       4 
4 
     | 
    
         
             
            Summary: Azure Machine Learning core packages, modules, and classes
         
     | 
| 
       5 
5 
     | 
    
         
             
            Home-page: https://docs.microsoft.com/python/api/overview/azure/ml/?view=azure-ml-py
         
     | 
| 
       6 
6 
     | 
    
         
             
            Author: Microsoft Corp
         
     | 
| 
         @@ -18,38 +18,38 @@ Description-Content-Type: text/x-rst 
     | 
|
| 
       18 
18 
     | 
    
         
             
            License-File: LICENSE.txt
         
     | 
| 
       19 
19 
     | 
    
         
             
            Requires-Dist: pytz
         
     | 
| 
       20 
20 
     | 
    
         
             
            Requires-Dist: backports.tempfile
         
     | 
| 
       21 
     | 
    
         
            -
            Requires-Dist: pathspec 
     | 
| 
       22 
     | 
    
         
            -
            Requires-Dist: requests[socks] 
     | 
| 
       23 
     | 
    
         
            -
            Requires-Dist: msal 
     | 
| 
       24 
     | 
    
         
            -
            Requires-Dist: msal-extensions 
     | 
| 
       25 
     | 
    
         
            -
            Requires-Dist: knack 
     | 
| 
       26 
     | 
    
         
            -
            Requires-Dist: azure-core 
     | 
| 
      
 21 
     | 
    
         
            +
            Requires-Dist: pathspec<1.0.0
         
     | 
| 
      
 22 
     | 
    
         
            +
            Requires-Dist: requests[socks]<3.0.0,>=2.19.1
         
     | 
| 
      
 23 
     | 
    
         
            +
            Requires-Dist: msal<2.0.0,>=1.15.0
         
     | 
| 
      
 24 
     | 
    
         
            +
            Requires-Dist: msal-extensions<=2.0.0,>=0.3.0
         
     | 
| 
      
 25 
     | 
    
         
            +
            Requires-Dist: knack<0.12.0
         
     | 
| 
      
 26 
     | 
    
         
            +
            Requires-Dist: azure-core<2.0.0
         
     | 
| 
       27 
27 
     | 
    
         
             
            Requires-Dist: pkginfo
         
     | 
| 
       28 
     | 
    
         
            -
            Requires-Dist: argcomplete 
     | 
| 
       29 
     | 
    
         
            -
            Requires-Dist: humanfriendly 
     | 
| 
       30 
     | 
    
         
            -
            Requires-Dist: paramiko 
     | 
| 
       31 
     | 
    
         
            -
            Requires-Dist: azure-mgmt-resource 
     | 
| 
       32 
     | 
    
         
            -
            Requires-Dist: azure-mgmt-containerregistry 
     | 
| 
       33 
     | 
    
         
            -
            Requires-Dist: azure-mgmt-storage 
     | 
| 
       34 
     | 
    
         
            -
            Requires-Dist: azure-mgmt-keyvault 
     | 
| 
       35 
     | 
    
         
            -
            Requires-Dist: azure-mgmt-authorization 
     | 
| 
       36 
     | 
    
         
            -
            Requires-Dist: azure-mgmt-network 
     | 
| 
       37 
     | 
    
         
            -
            Requires-Dist: azure-graphrbac 
     | 
| 
       38 
     | 
    
         
            -
            Requires-Dist: azure-common 
     | 
| 
       39 
     | 
    
         
            -
            Requires-Dist: msrest 
     | 
| 
       40 
     | 
    
         
            -
            Requires-Dist: msrestazure 
     | 
| 
       41 
     | 
    
         
            -
            Requires-Dist: urllib3 
     | 
| 
       42 
     | 
    
         
            -
            Requires-Dist: packaging 
     | 
| 
       43 
     | 
    
         
            -
            Requires-Dist: python-dateutil 
     | 
| 
       44 
     | 
    
         
            -
            Requires-Dist: ndg-httpsclient 
     | 
| 
       45 
     | 
    
         
            -
            Requires-Dist: SecretStorage 
     | 
| 
       46 
     | 
    
         
            -
            Requires-Dist: jsonpickle 
     | 
| 
       47 
     | 
    
         
            -
            Requires-Dist: contextlib2 
     | 
| 
       48 
     | 
    
         
            -
            Requires-Dist: docker 
     | 
| 
       49 
     | 
    
         
            -
            Requires-Dist: PyJWT 
     | 
| 
       50 
     | 
    
         
            -
            Requires-Dist: adal 
     | 
| 
       51 
     | 
    
         
            -
            Requires-Dist: pyopenssl 
     | 
| 
       52 
     | 
    
         
            -
            Requires-Dist: jmespath 
     | 
| 
      
 28 
     | 
    
         
            +
            Requires-Dist: argcomplete<4
         
     | 
| 
      
 29 
     | 
    
         
            +
            Requires-Dist: humanfriendly<11.0,>=4.7
         
     | 
| 
      
 30 
     | 
    
         
            +
            Requires-Dist: paramiko<4.0.0,>=2.0.8
         
     | 
| 
      
 31 
     | 
    
         
            +
            Requires-Dist: azure-mgmt-resource<=24.0.0,>=15.0.0
         
     | 
| 
      
 32 
     | 
    
         
            +
            Requires-Dist: azure-mgmt-containerregistry<11,>=8.2.0
         
     | 
| 
      
 33 
     | 
    
         
            +
            Requires-Dist: azure-mgmt-storage<=22.0.0,>=16.0.0
         
     | 
| 
      
 34 
     | 
    
         
            +
            Requires-Dist: azure-mgmt-keyvault<11.0.0,>=0.40.0
         
     | 
| 
      
 35 
     | 
    
         
            +
            Requires-Dist: azure-mgmt-authorization<5,>=0.40.0
         
     | 
| 
      
 36 
     | 
    
         
            +
            Requires-Dist: azure-mgmt-network<=26.0.0
         
     | 
| 
      
 37 
     | 
    
         
            +
            Requires-Dist: azure-graphrbac<1.0.0,>=0.40.0
         
     | 
| 
      
 38 
     | 
    
         
            +
            Requires-Dist: azure-common<2.0.0,>=1.1.12
         
     | 
| 
      
 39 
     | 
    
         
            +
            Requires-Dist: msrest<=0.7.1,>=0.5.1
         
     | 
| 
      
 40 
     | 
    
         
            +
            Requires-Dist: msrestazure<=0.7,>=0.4.33
         
     | 
| 
      
 41 
     | 
    
         
            +
            Requires-Dist: urllib3<3.0.0,>1.26.17
         
     | 
| 
      
 42 
     | 
    
         
            +
            Requires-Dist: packaging<=25.0,>=20.0
         
     | 
| 
      
 43 
     | 
    
         
            +
            Requires-Dist: python-dateutil<3.0.0,>=2.7.3
         
     | 
| 
      
 44 
     | 
    
         
            +
            Requires-Dist: ndg-httpsclient<=0.5.1
         
     | 
| 
      
 45 
     | 
    
         
            +
            Requires-Dist: SecretStorage<4.0.0
         
     | 
| 
      
 46 
     | 
    
         
            +
            Requires-Dist: jsonpickle<4.0.0
         
     | 
| 
      
 47 
     | 
    
         
            +
            Requires-Dist: contextlib2<22.0.0
         
     | 
| 
      
 48 
     | 
    
         
            +
            Requires-Dist: docker<8.0.0
         
     | 
| 
      
 49 
     | 
    
         
            +
            Requires-Dist: PyJWT<3.0.0
         
     | 
| 
      
 50 
     | 
    
         
            +
            Requires-Dist: adal<=1.2.7,>=1.2.0
         
     | 
| 
      
 51 
     | 
    
         
            +
            Requires-Dist: pyopenssl<25.0.0
         
     | 
| 
      
 52 
     | 
    
         
            +
            Requires-Dist: jmespath<2.0.0
         
     | 
| 
       53 
53 
     | 
    
         | 
| 
       54 
54 
     | 
    
         | 
| 
       55 
55 
     | 
    
         
             
            The azureml-core provides core packages, modules, and classes for Azure Machine Learning and includes the following:
         
     | 
| 
         @@ -8,7 +8,7 @@ azureml/_async/worker_pool.py,sha256=L0wPG7JskcjmgCfcIruIyk71pRkL0HbcTritBdcC2rk 
     | 
|
| 
       8 
8 
     | 
    
         
             
            azureml/_base_sdk_common/__init__.py,sha256=E04eAB1KyV8xIhdRtGDe2IaYMteRQ194h7Pem5ic8Kg,356
         
     | 
| 
       9 
9 
     | 
    
         
             
            azureml/_base_sdk_common/_arcadia_token_wrapper.py,sha256=4dMGzRM6pdQiz7BI6PvcW2_pjs3t7lsZck39AiOvmbw,2112
         
     | 
| 
       10 
10 
     | 
    
         
             
            azureml/_base_sdk_common/_docstring_wrapper.py,sha256=haPzBtUqTgx4gipecCMggR_pHBaMiUmlkZj-fUHo1do,3390
         
     | 
| 
       11 
     | 
    
         
            -
            azureml/_base_sdk_common/_version.py,sha256= 
     | 
| 
      
 11 
     | 
    
         
            +
            azureml/_base_sdk_common/_version.py,sha256=pKRE-b8ZodY91QrUmiROejrMae5bLeP3jTZtGWQsdpE,16
         
     | 
| 
       12 
12 
     | 
    
         
             
            azureml/_base_sdk_common/abstract_run_config_element.py,sha256=TTTVNWr17ss1AuWkKPFXgVzcGQt11QlEJ2weIsIZ5qc,1190
         
     | 
| 
       13 
13 
     | 
    
         
             
            azureml/_base_sdk_common/auth_utils.py,sha256=c7jiAw_u70xU7HymEgtiGvqch8OqfoGzLW6Mdjuo9Lo,2512
         
     | 
| 
       14 
14 
     | 
    
         
             
            azureml/_base_sdk_common/common.py,sha256=b26CXL0LDUV5JGPYGDMtRk1xrPCc3G8cQJyR3jbKLW8,27590
         
     | 
| 
         @@ -205,7 +205,7 @@ azureml/_compute/data/synapse_compute_template.json,sha256=IBWiGWT7Mmp-Z_Pw-zYx4 
     | 
|
| 
       205 
205 
     | 
    
         
             
            azureml/_execution/__init__.py,sha256=2XIGQap-7lSF-4gfhUFtGzpx9FB7-iUVpW_2omvxiII,269
         
     | 
| 
       206 
206 
     | 
    
         
             
            azureml/_execution/_commands.py,sha256=ejWcDHBwSqDBa1zcW33F2PdpnfLJs4p-6qnyC9ikgrE,36803
         
     | 
| 
       207 
207 
     | 
    
         
             
            azureml/_file_utils/__init__.py,sha256=eyb8nF-WJiQdBlbj7M8WIFxvSPl2Y4qny2f4OQDGcwk,625
         
     | 
| 
       208 
     | 
    
         
            -
            azureml/_file_utils/file_utils.py,sha256= 
     | 
| 
      
 208 
     | 
    
         
            +
            azureml/_file_utils/file_utils.py,sha256=FYDomlqLO7Z5iIGREm0xp2G14FGSPO6HhlAC5HoNkuM,20535
         
     | 
| 
       209 
209 
     | 
    
         
             
            azureml/_file_utils/upload.py,sha256=W-IcpakJ1-TWtpnaeGpXXhijixmT9coHr4aaKFgTfnk,3626
         
     | 
| 
       210 
210 
     | 
    
         
             
            azureml/_history/__init__.py,sha256=2XIGQap-7lSF-4gfhUFtGzpx9FB7-iUVpW_2omvxiII,269
         
     | 
| 
       211 
211 
     | 
    
         
             
            azureml/_history/utils/__init__.py,sha256=JlCCObuOLZyNhIZlsoL51KtFxiY4xKIIzIRDBcdeu6Y,183
         
     | 
| 
         @@ -247,8 +247,8 @@ azureml/_model_management/data/mms_workspace_image_payload_template.json,sha256= 
     | 
|
| 
       247 
247 
     | 
    
         
             
            azureml/_project/__init__.py,sha256=fXk56x7HrgsyVMGN5yuE08JN9x0JszBhsBNBX5NOneY,412
         
     | 
| 
       248 
248 
     | 
    
         
             
            azureml/_project/_commands.py,sha256=gUNeO7UoxFDplcm5dT68t2pAL_rTKRY8_0oZIS0O_ec,39864
         
     | 
| 
       249 
249 
     | 
    
         
             
            azureml/_project/_compute_target_commands.py,sha256=nsL0-XPsxLaANF_ZZ73pFDqgTxEe7l2c2c7B7qouPfk,12504
         
     | 
| 
       250 
     | 
    
         
            -
            azureml/_project/azureml_base_images.json,sha256 
     | 
| 
       251 
     | 
    
         
            -
            azureml/_project/azureml_sdk_scope.txt,sha256= 
     | 
| 
      
 250 
     | 
    
         
            +
            azureml/_project/azureml_base_images.json,sha256=g5Ue7rNC_nFYeHmb-KmnHj0kJz1SwcDUicKY4ltv8mo,601
         
     | 
| 
      
 251 
     | 
    
         
            +
            azureml/_project/azureml_sdk_scope.txt,sha256=5YqX2w4p-GU-a9jvGMr40N5SMLE6ewyJ_plbUmdjxxE,36
         
     | 
| 
       252 
252 
     | 
    
         
             
            azureml/_project/file_utilities.py,sha256=nrWTVp1QB_6jhZQ2fJOXDx49UXafRRmd5VzAs9ceBNo,2597
         
     | 
| 
       253 
253 
     | 
    
         
             
            azureml/_project/ignore_file.py,sha256=LV_-DZ0qGV95a6UhMZcSeqV_bl0DwKnaHh7iO6Dwu_M,3219
         
     | 
| 
       254 
254 
     | 
    
         
             
            azureml/_project/index_location.txt,sha256=y0QQZ0ezioStHt6IkKGm3Z5FCjS7oBAtBH4QkxQOHsQ,32
         
     | 
| 
         @@ -991,7 +991,7 @@ azureml/_vendor/azure_storage/blob/_blob_service_client.py,sha256=Gf0NcVe8gYb7tR 
     | 
|
| 
       991 
991 
     | 
    
         
             
            azureml/_vendor/azure_storage/blob/_container_client.py,sha256=cFMkWy_9P9TKqiBaDpWKqpu6uhZKaBOLlOIC7kNvJtI,83005
         
     | 
| 
       992 
992 
     | 
    
         
             
            azureml/_vendor/azure_storage/blob/_deserialize.py,sha256=RHJNhg33YmXeREeo6qSnKvCLgADsaeRP06PeVfcL-Jg,8234
         
     | 
| 
       993 
993 
     | 
    
         
             
            azureml/_vendor/azure_storage/blob/_download.py,sha256=cLQWcrpzuAV0Fj91LSX-3Hg_-l9AeRPAO9STC0ku7kE,28172
         
     | 
| 
       994 
     | 
    
         
            -
            azureml/_vendor/azure_storage/blob/_encryption.py,sha256= 
     | 
| 
      
 994 
     | 
    
         
            +
            azureml/_vendor/azure_storage/blob/_encryption.py,sha256=_L0xgUmaXmb4rEAveX-qJcrVcd4QvD77KlWWk0j2sTA,41963
         
     | 
| 
       995 
995 
     | 
    
         
             
            azureml/_vendor/azure_storage/blob/_lease.py,sha256=qt1KPJWoJHMSaWctZtDz4Zw9OBGMk3WcVrqQLE8bmmQ,16970
         
     | 
| 
       996 
996 
     | 
    
         
             
            azureml/_vendor/azure_storage/blob/_list_blobs_helper.py,sha256=UlgLkI5qLpgAWUnDLdqo_tv5nv6bzSGCzWID3NRfAyY,11320
         
     | 
| 
       997 
997 
     | 
    
         
             
            azureml/_vendor/azure_storage/blob/_models.py,sha256=uj-AQV34CiWwFqWirwqwsygijrKrWVn35xsRnfI07Fs,58622
         
     | 
| 
         @@ -1039,7 +1039,7 @@ azureml/_vendor/azure_storage/blob/_shared/base_client_async.py,sha256=PNsYgfTr8 
     | 
|
| 
       1039 
1039 
     | 
    
         
             
            azureml/_vendor/azure_storage/blob/_shared/constants.py,sha256=n0xb0FqKqE-XGSq5CrdWBelqMUW_z1JQ1WibTyEW9KA,723
         
     | 
| 
       1040 
1040 
     | 
    
         
             
            azureml/_vendor/azure_storage/blob/_shared/models.py,sha256=5KDJgjuYdYrEF3Cm73dFJJ0x1zsFliyS5NVXxeGXDkA,21156
         
     | 
| 
       1041 
1041 
     | 
    
         
             
            azureml/_vendor/azure_storage/blob/_shared/parser.py,sha256=wP82M2ANty3AngJfSQu_dTgmYHxWeQGufLZ-thDv0vc,637
         
     | 
| 
       1042 
     | 
    
         
            -
            azureml/_vendor/azure_storage/blob/_shared/policies.py,sha256= 
     | 
| 
      
 1042 
     | 
    
         
            +
            azureml/_vendor/azure_storage/blob/_shared/policies.py,sha256=ttrOPwROJl01W2Tv_4ILDg5RXEF7unXtYM3WevYyQz4,29739
         
     | 
| 
       1043 
1043 
     | 
    
         
             
            azureml/_vendor/azure_storage/blob/_shared/policies_async.py,sha256=4Dwl_3gQXBuD97MR8a_K3ebhE-hGSWVb2RDvoaX_ULc,11783
         
     | 
| 
       1044 
1044 
     | 
    
         
             
            azureml/_vendor/azure_storage/blob/_shared/request_handlers.py,sha256=FWtqRnBW5WWhzY8uvvCY8UPLU0SXycYJJMIMQwp3WKs,10292
         
     | 
| 
       1045 
1045 
     | 
    
         
             
            azureml/_vendor/azure_storage/blob/_shared/response_handlers.py,sha256=VEbx4XKAU16X8_e9CphY5dmiLDSr-hCSpI2zHzTFjb8,8835
         
     | 
| 
         @@ -1105,7 +1105,7 @@ azureml/_vendor/azure_storage/fileshare/_shared/base_client_async.py,sha256=Cj7f 
     | 
|
| 
       1105 
1105 
     | 
    
         
             
            azureml/_vendor/azure_storage/fileshare/_shared/constants.py,sha256=XO5yJq0E_YWSaOOXq5Cvq8VsewS1Efag-4k4DUfyPKY,686
         
     | 
| 
       1106 
1106 
     | 
    
         
             
            azureml/_vendor/azure_storage/fileshare/_shared/models.py,sha256=cP8tpsaMeieCwLREgrRZb8zcDZJ3O48XQa_ZSUCBcwo,21171
         
     | 
| 
       1107 
1107 
     | 
    
         
             
            azureml/_vendor/azure_storage/fileshare/_shared/parser.py,sha256=wP82M2ANty3AngJfSQu_dTgmYHxWeQGufLZ-thDv0vc,637
         
     | 
| 
       1108 
     | 
    
         
            -
            azureml/_vendor/azure_storage/fileshare/_shared/policies.py,sha256= 
     | 
| 
      
 1108 
     | 
    
         
            +
            azureml/_vendor/azure_storage/fileshare/_shared/policies.py,sha256=c5M4VfJatg6fDqFpsIDrGQhdbBf6dnU7X8UYzaR_PUA,28209
         
     | 
| 
       1109 
1109 
     | 
    
         
             
            azureml/_vendor/azure_storage/fileshare/_shared/policies_async.py,sha256=FwBNdLu8PeGtOJNT8TWsNN_ONGUFr3H1v_uRkJTlER4,10213
         
     | 
| 
       1110 
1110 
     | 
    
         
             
            azureml/_vendor/azure_storage/fileshare/_shared/request_handlers.py,sha256=tSwTBOgBhTSRvlQRaPuHYs4dW408B8YhP-IJ6TvB7wU,10010
         
     | 
| 
       1111 
1111 
     | 
    
         
             
            azureml/_vendor/azure_storage/fileshare/_shared/response_handlers.py,sha256=RF4gsAzVIE9_2G7jZE6xHPIXwIrJSj4nIVEgyZPI9Qo,8837
         
     | 
| 
         @@ -1153,7 +1153,7 @@ azureml/_vendor/ruamel/yaml/util.py,sha256=OuYsMZEqNNE8Suzc_6GwJALdQCPLy8VhPe3Qx 
     | 
|
| 
       1153 
1153 
     | 
    
         
             
            azureml/_workspace/__init__.py,sha256=2XIGQap-7lSF-4gfhUFtGzpx9FB7-iUVpW_2omvxiII,269
         
     | 
| 
       1154 
1154 
     | 
    
         
             
            azureml/_workspace/_arm_deployment_orchestrator.py,sha256=SnaR44naFsUkRQKvVElA95lqJr7jH79pUBLWrHkNTQ8,6585
         
     | 
| 
       1155 
1155 
     | 
    
         
             
            azureml/_workspace/_private_endpoint_deployment_orchestrator.py,sha256=xwAZPEAwSN-oCwx2dfdgVHBJ3yAC8vTvTP06G7KERwI,7410
         
     | 
| 
       1156 
     | 
    
         
            -
            azureml/_workspace/_utils.py,sha256= 
     | 
| 
      
 1156 
     | 
    
         
            +
            azureml/_workspace/_utils.py,sha256=ucOqYmaHoorLcSjvIRhkWX6dma6WX3DqPRyQbCmmXcI,24398
         
     | 
| 
       1157 
1157 
     | 
    
         
             
            azureml/_workspace/arm_template_builder.py,sha256=9EvORjIo0buprK7I9cFunFw1ENLPVZLP_-NZFJYKebk,20398
         
     | 
| 
       1158 
1158 
     | 
    
         
             
            azureml/_workspace/custom.py,sha256=hWqmadHcUCAwvTyf5-iEfUp99YMt87H4J_tFrwkxMww,19391
         
     | 
| 
       1159 
1159 
     | 
    
         
             
            azureml/_workspace/mlservicesworkspacetemplate.json,sha256=qfBAmfALbkvJxNK10SimckoCrsblGlkdMEa5FTc4NNE,4094
         
     | 
| 
         @@ -1174,23 +1174,23 @@ azureml/core/_experiment_method.py,sha256=qaQutRXOxlSzTUikJiT2d129Q9d1OXsKml3fAc 
     | 
|
| 
       1174 
1174 
     | 
    
         
             
            azureml/core/_metrics.py,sha256=8qlcdMFgtqiX7diKxmmb8BofDB3ybBr8vzW6whbwqaE,38757
         
     | 
| 
       1175 
1175 
     | 
    
         
             
            azureml/core/_portal.py,sha256=MvzYl-0m1M9nmorgWl7gbpHtQhkf5bL92Ul9H0pB2ds,5987
         
     | 
| 
       1176 
1176 
     | 
    
         
             
            azureml/core/_serialization_utils.py,sha256=MnNB6Q62Wv1T1F_obbyVczkGmw1_TqgpruaSf80CWK4,12059
         
     | 
| 
       1177 
     | 
    
         
            -
            azureml/core/authentication.py,sha256= 
     | 
| 
      
 1177 
     | 
    
         
            +
            azureml/core/authentication.py,sha256=HhqjBJoTYEzaTwe9ijjHaouShy-kQBlKIH2991uqYTw,107477
         
     | 
| 
       1178 
1178 
     | 
    
         
             
            azureml/core/compute_target.py,sha256=Fy_fGutRdrwlTnp9owKd9YCniEqsCfhKxqTJudoBnXQ,17547
         
     | 
| 
       1179 
     | 
    
         
            -
            azureml/core/conda_dependencies.py,sha256= 
     | 
| 
      
 1179 
     | 
    
         
            +
            azureml/core/conda_dependencies.py,sha256=bAaglFFFdib3hAgt0zFkyUn3s1D6LAYHQOtTPJArEJ4,41264
         
     | 
| 
       1180 
1180 
     | 
    
         
             
            azureml/core/container_registry.py,sha256=PGwGMaZ0pEolaKv1s_wpAJjJoqB5krEfjbDmbkrvv5Q,2422
         
     | 
| 
       1181 
1181 
     | 
    
         
             
            azureml/core/databricks.py,sha256=cbJT89_kc80Rfb5RoCHVttqVHI8_0HeXwSxC4fHXNQo,20593
         
     | 
| 
       1182 
1182 
     | 
    
         
             
            azureml/core/dataset.py,sha256=lWnN4kpkEStugePes-qhTqbkKl5y3W_HjMZNWk6FRL0,65849
         
     | 
| 
       1183 
     | 
    
         
            -
            azureml/core/datastore.py,sha256= 
     | 
| 
      
 1183 
     | 
    
         
            +
            azureml/core/datastore.py,sha256=EMbZCkIJcYhi5cugUXS4c8dQxuEwO-Cx6BgznLYP_m0,44333
         
     | 
| 
       1184 
1184 
     | 
    
         
             
            azureml/core/environment.py,sha256=YF8TWgsKRdzRUNISKx383SVQQNcdmPzgpZpDoePPk9w,79070
         
     | 
| 
       1185 
1185 
     | 
    
         
             
            azureml/core/experiment.py,sha256=yC3lVr97RoFXFZGNb1tQUdKJTlK_88jLBjKZXeLun3Q,24537
         
     | 
| 
       1186 
1186 
     | 
    
         
             
            azureml/core/keyvault.py,sha256=QchGc35DAimaWzdeEH-1wVatFgFFSWUgMNvtH5othIM,6602
         
     | 
| 
       1187 
1187 
     | 
    
         
             
            azureml/core/linked_service.py,sha256=zZEu28ooMIb9fUmuKtqfmNU25GwEvqKciGpDmVoqM5Y,9547
         
     | 
| 
       1188 
     | 
    
         
            -
            azureml/core/model.py,sha256= 
     | 
| 
      
 1188 
     | 
    
         
            +
            azureml/core/model.py,sha256=mvCdvSdTbOM7mUA5hPVZ27rcDgDQBibiG9EZ6lpPRgA,142645
         
     | 
| 
       1189 
1189 
     | 
    
         
             
            azureml/core/private_endpoint.py,sha256=rywS6SyNxOFz8EMXC7j3vEyN6jVSf4uTy-DPthA0D0U,6354
         
     | 
| 
       1190 
1190 
     | 
    
         
             
            azureml/core/profile.py,sha256=YqmxLsKONfrLMwmkat7fDYYKtMA3F5N1ndnr9jIWTSc,18627
         
     | 
| 
       1191 
1191 
     | 
    
         
             
            azureml/core/resource_configuration.py,sha256=BtHJWVf_RqeNRJddVfembTOyXrSF2Tt8EwB7DLK7ZHQ,6001
         
     | 
| 
       1192 
1192 
     | 
    
         
             
            azureml/core/run.py,sha256=evL5bH2uCwayelN-xCCG7SR3hch3Cd8UK8uVIDiOZGM,115120
         
     | 
| 
       1193 
     | 
    
         
            -
            azureml/core/runconfig.py,sha256= 
     | 
| 
      
 1193 
     | 
    
         
            +
            azureml/core/runconfig.py,sha256=LEKwc13VV-Hz01KqCmIKDB4azkpSRePVO4xiSewDr3w,100007
         
     | 
| 
       1194 
1194 
     | 
    
         
             
            azureml/core/script_run.py,sha256=S8-fvK2UkuSReoWDYZKpf4TtD4JV7MD1yPuufzOMBGI,12412
         
     | 
| 
       1195 
1195 
     | 
    
         
             
            azureml/core/script_run_config.py,sha256=wlbVeXEsliyZ2YTbxvPFwS2W0qiVRApQrv89T5cPDZE,27688
         
     | 
| 
       1196 
1196 
     | 
    
         
             
            azureml/core/util.py,sha256=G8Olw1seYwpkIHnaMgnh-Nb9rfXqWWhsKRUAIjnflX0,1487
         
     | 
| 
         @@ -1201,7 +1201,7 @@ azureml/core/compute/aks.py,sha256=qNkNsbjRpb7fi6yKt9doDoWOB07HTEiejgFAJPVAWAg,7 
     | 
|
| 
       1201 
1201 
     | 
    
         
             
            azureml/core/compute/amlcompute.py,sha256=MUFnV4Zo7ZoertnC6qBdCsqRrv87H5YOVuDKq7JvNbQ,86369
         
     | 
| 
       1202 
1202 
     | 
    
         
             
            azureml/core/compute/batch.py,sha256=F5KfltJqSjh7vLGPV8gnIdHDmfAyZgHY4JSOjgi12hc,16355
         
     | 
| 
       1203 
1203 
     | 
    
         
             
            azureml/core/compute/compute.py,sha256=xnlIz6jidaXICP4scsNrpYWdUG1gK5g6aQumABngadM,41710
         
     | 
| 
       1204 
     | 
    
         
            -
            azureml/core/compute/computeinstance.py,sha256= 
     | 
| 
      
 1204 
     | 
    
         
            +
            azureml/core/compute/computeinstance.py,sha256=zgt2FhKoaZtuz5YH2M_lmsJDJgcCbtg-ct4tSNoxJ8g,62230
         
     | 
| 
       1205 
1205 
     | 
    
         
             
            azureml/core/compute/databricks.py,sha256=6J770r3dgqY3WY1FMUA_9RI7poTvUqjMEfr348J_FFg,20711
         
     | 
| 
       1206 
1206 
     | 
    
         
             
            azureml/core/compute/datafactory.py,sha256=EPBs_-cv2DfxgYALC3vDq4p0BbqmLz2w1oumd7z_paY,20424
         
     | 
| 
       1207 
1207 
     | 
    
         
             
            azureml/core/compute/dsvm.py,sha256=RoIg5K_TvOQs5mEblm6poxzHPDm1ZGXKexclBBEwJms,15915
         
     | 
| 
         @@ -1216,11 +1216,11 @@ azureml/core/image/image.py,sha256=xQBrQ1-ARfyRPlET_L4mdGKT0uUKi0OkXIBP-dhQFjM,4 
     | 
|
| 
       1216 
1216 
     | 
    
         
             
            azureml/core/image/unknown_image.py,sha256=2dRt-Ot5VduwM8ZP7L4b_blydXmTIsn2ftsVgBZxzp4,2260
         
     | 
| 
       1217 
1217 
     | 
    
         
             
            azureml/core/webservice/__init__.py,sha256=v-aNCm2tpyjqSC_UF3fLNgzt8xXxO9cOwTOMq7maWfE,1493
         
     | 
| 
       1218 
1218 
     | 
    
         
             
            azureml/core/webservice/aci.py,sha256=ZUGqKZ9ulE2bVZF7p69XB_lUzibr4ynipS9LDklYbSY,58731
         
     | 
| 
       1219 
     | 
    
         
            -
            azureml/core/webservice/aks.py,sha256= 
     | 
| 
      
 1219 
     | 
    
         
            +
            azureml/core/webservice/aks.py,sha256=2nwIHuYay93FD95NXERgqk2-5VIbfT6k8YE9TiNZ9nI,187984
         
     | 
| 
       1220 
1220 
     | 
    
         
             
            azureml/core/webservice/container_resource_requirements.py,sha256=oy-pOTFh0hmuLinuD2Jm-145Y_apIZ8S4CERU9T6xXM,4119
         
     | 
| 
       1221 
     | 
    
         
            -
            azureml/core/webservice/local.py,sha256= 
     | 
| 
      
 1221 
     | 
    
         
            +
            azureml/core/webservice/local.py,sha256=4Auhpzz6Q6PP8N4qklZQQyqptAxCptroE7L05oscvXw,48828
         
     | 
| 
       1222 
1222 
     | 
    
         
             
            azureml/core/webservice/unknown_webservice.py,sha256=kpip4kGL1ANiPd735ajca-JGa2_-vmRdxR9lgZviE0g,4055
         
     | 
| 
       1223 
     | 
    
         
            -
            azureml/core/webservice/webservice.py,sha256= 
     | 
| 
      
 1223 
     | 
    
         
            +
            azureml/core/webservice/webservice.py,sha256=DB738dJdZCz6-_4wSdVZd5xU077PRPohFU46RCaw2as,100407
         
     | 
| 
       1224 
1224 
     | 
    
         
             
            azureml/data/__init__.py,sha256=C_Ugy2GV94hzZMxoxi6ya24Fgb6yJXkclyerVvGNffE,2541
         
     | 
| 
       1225 
1225 
     | 
    
         
             
            azureml/data/_asset_helper.py,sha256=mlWJzwgvL_5Px4UDPV4JAsI2b9VT2vxsPqXzITyxMcc,1439
         
     | 
| 
       1226 
1226 
     | 
    
         
             
            azureml/data/_config_helper.py,sha256=j1ECaOQJlBzg11c-YMFvZe9OJBEb9y_ULPTRBe03ZWs,1202
         
     | 
| 
         @@ -1248,7 +1248,7 @@ azureml/data/azure_postgre_sql_datastore.py,sha256=UrysYXFxZYl5z0H7AiVlJTr1tIDbQ 
     | 
|
| 
       1248 
1248 
     | 
    
         
             
            azureml/data/azure_sql_database_datastore.py,sha256=1nvw8VIfwcZVoDDWPxLTMpyypiNTHiKuukIkchKmX78,5870
         
     | 
| 
       1249 
1249 
     | 
    
         
             
            azureml/data/azure_storage_datastore.py,sha256=-GWdNmei1PaG5B-euJ9IySe8iXx7dKM0D6rFU6QusVU,49182
         
     | 
| 
       1250 
1250 
     | 
    
         
             
            azureml/data/constants.py,sha256=7n3HmgM42rQFFctsxoiMFlSbTG68Y1wpNb0ufrOz0zQ,3829
         
     | 
| 
       1251 
     | 
    
         
            -
            azureml/data/context_managers.py,sha256= 
     | 
| 
      
 1251 
     | 
    
         
            +
            azureml/data/context_managers.py,sha256=EcTGngCIxreht52CliCJtnQsRmLqz57ljjW1uiIc-Fg,58984
         
     | 
| 
       1252 
1252 
     | 
    
         
             
            azureml/data/data_reference.py,sha256=F6Xwa6CP-XuhTQXdqPDRt6Og-pGOTaZq9F-iXik-P2o,12480
         
     | 
| 
       1253 
1253 
     | 
    
         
             
            azureml/data/datacache.py,sha256=jRuerpG78U02lZbT26l3ou9HRwvD4Cd14Buox7aUaFY,27846
         
     | 
| 
       1254 
1254 
     | 
    
         
             
            azureml/data/datacache_client.py,sha256=fvGSHKS_35lTNcdl8UO3xRPJ_YxlbM-QuHQf_YmIRQk,29532
         
     | 
| 
         @@ -1322,9 +1322,9 @@ azureml/exceptions/__init__.py,sha256=wAB_C_TNpL8FK6GXeygupED6mG5IfSrLx_moV7NHIp 
     | 
|
| 
       1322 
1322 
     | 
    
         
             
            azureml/exceptions/_azureml_exception.py,sha256=XxvMTrADJiTIHSn8DHj2fmyDUhYyBuVUqxYR3cuibz4,18989
         
     | 
| 
       1323 
1323 
     | 
    
         
             
            azureml/history/__init__.py,sha256=8U_yD6fMdk8Ok3Z-GO_ibddTgQEB-aY6BTT8t9aYGZw,274
         
     | 
| 
       1324 
1324 
     | 
    
         
             
            azureml/history/_tracking.py,sha256=IcZoVbHsOA01eQ3Ealnxe1YbNNnQi4LA5ccINB1cTrU,18541
         
     | 
| 
       1325 
     | 
    
         
            -
            azureml_core-1. 
     | 
| 
       1326 
     | 
    
         
            -
            azureml_core-1. 
     | 
| 
       1327 
     | 
    
         
            -
            azureml_core-1. 
     | 
| 
       1328 
     | 
    
         
            -
            azureml_core-1. 
     | 
| 
       1329 
     | 
    
         
            -
            azureml_core-1. 
     | 
| 
       1330 
     | 
    
         
            -
            azureml_core-1. 
     | 
| 
      
 1325 
     | 
    
         
            +
            azureml_core-1.57.0.post1.dist-info/LICENSE.txt,sha256=GBoIyZ-6vJ4xjRc8U3wTw4EfkuaEdVTm_gbr1Nm8uDI,859
         
     | 
| 
      
 1326 
     | 
    
         
            +
            azureml_core-1.57.0.post1.dist-info/METADATA,sha256=HfPbhFMkDjuXBwOlX1VQtByyl1fVUerpBScVRd1tdeE,3119
         
     | 
| 
      
 1327 
     | 
    
         
            +
            azureml_core-1.57.0.post1.dist-info/WHEEL,sha256=cVxcB9AmuTcXqmwrtPhNK88dr7IR_b6qagTj0UvIEbY,91
         
     | 
| 
      
 1328 
     | 
    
         
            +
            azureml_core-1.57.0.post1.dist-info/entry_points.txt,sha256=EKn4UdjSeleaw9lk1z12dZ7YK6tX4Ig6FYqaC2Uk8b8,154
         
     | 
| 
      
 1329 
     | 
    
         
            +
            azureml_core-1.57.0.post1.dist-info/top_level.txt,sha256=ZOeEa0TAXo6i5wOjwBoqfIGEuxOcKuscGgNSpizqREY,8
         
     | 
| 
      
 1330 
     | 
    
         
            +
            azureml_core-1.57.0.post1.dist-info/RECORD,,
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     |