azure-storage-blob 12.23.1__tar.gz → 12.24.0b1__tar.gz
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.
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/CHANGELOG.md +7 -0
- {azure_storage_blob-12.23.1/azure_storage_blob.egg-info → azure_storage_blob-12.24.0b1}/PKG-INFO +10 -10
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/README.md +8 -8
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_blob_client.py +28 -7
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_blob_client_helpers.py +7 -3
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_blob_service_client.py +1 -1
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_container_client.py +2 -2
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_container_client_helpers.py +4 -4
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_deserialize.py +2 -2
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_encryption.py +2 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/_azure_blob_storage.py +1 -1
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/_configuration.py +2 -2
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/_serialization.py +265 -150
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/aio/_azure_blob_storage.py +1 -1
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/aio/_configuration.py +2 -2
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/aio/operations/_append_blob_operations.py +22 -4
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/aio/operations/_blob_operations.py +116 -26
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/aio/operations/_block_blob_operations.py +40 -6
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/aio/operations/_container_operations.py +36 -18
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/aio/operations/_page_blob_operations.py +32 -9
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/aio/operations/_service_operations.py +16 -8
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/models/_azure_blob_storage_enums.py +1 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/operations/_append_blob_operations.py +34 -8
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/operations/_blob_operations.py +166 -51
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/operations/_block_blob_operations.py +62 -12
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/operations/_container_operations.py +54 -36
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/operations/_page_blob_operations.py +49 -18
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/operations/_service_operations.py +24 -16
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_list_blobs_helper.py +1 -1
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_models.py +4 -3
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_serialize.py +1 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/avro/schema.py +1 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/base_client.py +8 -8
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/base_client_async.py +5 -5
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/models.py +5 -2
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/policies.py +6 -7
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/policies_async.py +1 -1
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/uploads.py +4 -4
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/uploads_async.py +4 -4
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared_access_signature.py +0 -1
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_version.py +1 -1
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/aio/_blob_client_async.py +30 -10
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/aio/_blob_service_client_async.py +7 -3
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/aio/_container_client_async.py +4 -4
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/aio/_lease_async.py +1 -1
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/aio/_list_blobs_helper.py +1 -2
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/aio/_models.py +1 -2
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1/azure_storage_blob.egg-info}/PKG-INFO +10 -10
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/setup.py +1 -1
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/encryption_test_helper.py +3 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_encryption.py +1 -2
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_encryption_async.py +1 -2
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_block_blob.py +32 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_block_blob_async.py +32 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_common_blob.py +103 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_common_blob_async.py +105 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/LICENSE +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/MANIFEST.in +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_blob_service_client_helpers.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_download.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/_patch.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/aio/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/aio/_patch.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/aio/operations/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/aio/operations/_patch.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/models/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/models/_models_py3.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/models/_patch.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/operations/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/operations/_patch.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_generated/py.typed +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_lease.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_quick_query_helper.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/authentication.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/avro/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/avro/avro_io.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/avro/avro_io_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/avro/datafile.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/avro/datafile_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/constants.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/parser.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/request_handlers.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/response_handlers.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_shared/shared_access_signature.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_upload_helpers.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/aio/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/aio/_download_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/aio/_encryption_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/aio/_upload_helpers.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/py.typed +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure_storage_blob.egg-info/SOURCES.txt +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure_storage_blob.egg-info/dependency_links.txt +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure_storage_blob.egg-info/not-zip-safe +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure_storage_blob.egg-info/requires.txt +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure_storage_blob.egg-info/top_level.txt +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/migration_guide.md +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/pyproject.toml +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/README.md +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_authentication.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_authentication_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_batch_delete_blobs.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_client_side_encryption.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_client_side_encryption_keyvault.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_common.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_common_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_container_access_policy.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_container_access_policy_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_containers.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_containers_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_copy_blob.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_copy_blob_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_directory_interface.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_directory_interface_mimetype.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_enumerate_blobs.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_enumerate_blobs_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_hello_world.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_hello_world_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_network_activity_logging.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_proxy_configuration.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_query.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_service.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_service_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_walk_blob_hierarchy.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/samples/blob_samples_walk_blob_hierarchy_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/setup.cfg +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/avro/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/avro/test_avro.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/avro/test_avro_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/conftest.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/fake_credentials.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/T1_legacy_tests/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/T1_legacy_tests/_test_base_legacy.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/T1_legacy_tests/download.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/T1_legacy_tests/list_blobs.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/T1_legacy_tests/upload.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/T1_legacy_tests/upload_block.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/T1_legacy_tests/upload_from_file.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/_test_base.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/download.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/key_wrapper.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/list_blobs.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/upload.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/upload_block.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/perfstress_tests/upload_from_file.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/settings/__init__.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/settings/settings_fake.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/settings/testcase.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_append_blob.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_append_blob_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_access_conditions.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_access_conditions_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_api_version.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_api_version_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_client.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_client_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_encryption_v2.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_encryption_v2_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_retry.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_retry_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_service_properties.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_service_properties_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_service_stats.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_service_stats_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_storage_account.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_storage_account_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_tags.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_blob_tags_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_block_blob_sync_copy.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_block_blob_sync_copy_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_container.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_container_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_cpk.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_cpk_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_cpk_n.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_cpk_n_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_dictmixin.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_get_blob.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_get_blob_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_helpers.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_helpers_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_large_block_blob.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_large_block_blob_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_largest_block_blob.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_largest_block_blob_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_logging.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_logging_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_ors.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_ors_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_page_blob.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_page_blob_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_quick_query.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_retry.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_retry_async.py +0 -0
- {azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/tests/test_upload_chunking.py +0 -0
@@ -1,5 +1,12 @@
|
|
1
1
|
# Release History
|
2
2
|
|
3
|
+
## 12.24.0b1 (2024-10-10)
|
4
|
+
|
5
|
+
### Features Added
|
6
|
+
- Added support for service version 2025-01-05.
|
7
|
+
- Added support for passing metadata to `upload_blob_from_url` via the new `metadata` keyword.
|
8
|
+
- Added support for `set_immutability_policy`, `delete_immutability_policy` and `set_legal_hold` for Blob snapshots and versions.
|
9
|
+
|
3
10
|
## 12.23.1 (2024-09-25)
|
4
11
|
|
5
12
|
### Features Added
|
{azure_storage_blob-12.23.1/azure_storage_blob.egg-info → azure_storage_blob-12.24.0b1}/PKG-INFO
RENAMED
@@ -1,13 +1,13 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: azure-storage-blob
|
3
|
-
Version: 12.
|
3
|
+
Version: 12.24.0b1
|
4
4
|
Summary: Microsoft Azure Blob Storage Client Library for Python
|
5
5
|
Home-page: https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/storage/azure-storage-blob
|
6
6
|
Author: Microsoft Corporation
|
7
7
|
Author-email: ascl@microsoft.com
|
8
8
|
License: MIT License
|
9
9
|
Keywords: azure,azure sdk
|
10
|
-
Classifier: Development Status ::
|
10
|
+
Classifier: Development Status :: 4 - Beta
|
11
11
|
Classifier: Programming Language :: Python
|
12
12
|
Classifier: Programming Language :: Python :: 3 :: Only
|
13
13
|
Classifier: Programming Language :: Python :: 3
|
@@ -116,14 +116,14 @@ The `credential` parameter may be provided in a number of different forms, depen
|
|
116
116
|
|
117
117
|
Use the returned token credential to authenticate the client:
|
118
118
|
```python
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
119
|
+
from azure.identity import DefaultAzureCredential
|
120
|
+
from azure.storage.blob import BlobServiceClient
|
121
|
+
token_credential = DefaultAzureCredential()
|
122
|
+
|
123
|
+
blob_service_client = BlobServiceClient(
|
124
|
+
account_url="https://<my_account_name>.blob.core.windows.net",
|
125
|
+
credential=token_credential
|
126
|
+
)
|
127
127
|
```
|
128
128
|
|
129
129
|
2. To use a [shared access signature (SAS) token](https://docs.microsoft.com/azure/storage/common/storage-sas-overview),
|
@@ -87,14 +87,14 @@ The `credential` parameter may be provided in a number of different forms, depen
|
|
87
87
|
|
88
88
|
Use the returned token credential to authenticate the client:
|
89
89
|
```python
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
90
|
+
from azure.identity import DefaultAzureCredential
|
91
|
+
from azure.storage.blob import BlobServiceClient
|
92
|
+
token_credential = DefaultAzureCredential()
|
93
|
+
|
94
|
+
blob_service_client = BlobServiceClient(
|
95
|
+
account_url="https://<my_account_name>.blob.core.windows.net",
|
96
|
+
credential=token_credential
|
97
|
+
)
|
98
98
|
```
|
99
99
|
|
100
100
|
2. To use a [shared access signature (SAS) token](https://docs.microsoft.com/azure/storage/common/storage-sas-overview),
|
{azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_blob_client.py
RENAMED
@@ -187,7 +187,7 @@ class BlobClient(StorageAccountHostsMixin, StorageEncryptionMixin): # pylint: d
|
|
187
187
|
self._query_str, credential = self._format_query_string(sas_token, credential, snapshot=self.snapshot)
|
188
188
|
super(BlobClient, self).__init__(parsed_url, service='blob', credential=credential, **kwargs)
|
189
189
|
self._client = AzureBlobStorage(self.url, base_url=self.url, pipeline=self._pipeline)
|
190
|
-
self._client._config.version = get_api_version(kwargs) # type: ignore [assignment]
|
190
|
+
self._client._config.version = get_api_version(kwargs) # type: ignore [assignment]
|
191
191
|
self._configure_encryption(kwargs)
|
192
192
|
|
193
193
|
def _format_url(self, hostname: str) -> str:
|
@@ -320,7 +320,12 @@ class BlobClient(StorageAccountHostsMixin, StorageEncryptionMixin): # pylint: d
|
|
320
320
|
process_storage_error(error)
|
321
321
|
|
322
322
|
@distributed_trace
|
323
|
-
def upload_blob_from_url(
|
323
|
+
def upload_blob_from_url(
|
324
|
+
self, source_url: str,
|
325
|
+
*,
|
326
|
+
metadata: Optional[Dict[str, str]] = None,
|
327
|
+
**kwargs: Any
|
328
|
+
) -> Dict[str, Any]:
|
324
329
|
"""
|
325
330
|
Creates a new Block Blob where the content of the blob is read from a given URL.
|
326
331
|
The content of an existing blob is overwritten with the new blob.
|
@@ -337,6 +342,8 @@ class BlobClient(StorageAccountHostsMixin, StorageEncryptionMixin): # pylint: d
|
|
337
342
|
https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=<DateTime>
|
338
343
|
|
339
344
|
https://otheraccount.blob.core.windows.net/mycontainer/myblob?sastoken
|
345
|
+
:keyword dict(str, str) metadata:
|
346
|
+
Name-value pairs associated with the blob as metadata.
|
340
347
|
:keyword bool overwrite: Whether the blob to be uploaded should overwrite the current data.
|
341
348
|
If True, upload_blob will overwrite the existing data. If set to False, the
|
342
349
|
operation will fail with ResourceExistsError.
|
@@ -422,6 +429,7 @@ class BlobClient(StorageAccountHostsMixin, StorageEncryptionMixin): # pylint: d
|
|
422
429
|
raise ValueError("Customer provided encryption key must be used over HTTPS.")
|
423
430
|
options = _upload_blob_from_url_options(
|
424
431
|
source_url=source_url,
|
432
|
+
metadata=metadata,
|
425
433
|
**kwargs)
|
426
434
|
try:
|
427
435
|
return cast(Dict[str, Any], self._client.block_blob.put_blob_from_url(**options))
|
@@ -1220,6 +1228,9 @@ class BlobClient(StorageAccountHostsMixin, StorageEncryptionMixin): # pylint: d
|
|
1220
1228
|
.. versionadded:: 12.10.0
|
1221
1229
|
This was introduced in API version '2020-10-02'.
|
1222
1230
|
|
1231
|
+
:keyword str version_id:
|
1232
|
+
The version id parameter is an opaque DateTime
|
1233
|
+
value that, when present, specifies the version of the blob to check if it exists.
|
1223
1234
|
:keyword int timeout:
|
1224
1235
|
Sets the server-side timeout for the operation in seconds. For more details see
|
1225
1236
|
https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations.
|
@@ -1230,9 +1241,11 @@ class BlobClient(StorageAccountHostsMixin, StorageEncryptionMixin): # pylint: d
|
|
1230
1241
|
:rtype: Dict[str, str]
|
1231
1242
|
"""
|
1232
1243
|
|
1244
|
+
version_id = get_version_id(self.version_id, kwargs)
|
1233
1245
|
kwargs['immutability_policy_expiry'] = immutability_policy.expiry_time
|
1234
1246
|
kwargs['immutability_policy_mode'] = immutability_policy.policy_mode
|
1235
|
-
return cast(Dict[str, str], self._client.blob.set_immutability_policy(
|
1247
|
+
return cast(Dict[str, str], self._client.blob.set_immutability_policy(
|
1248
|
+
cls=return_response_headers, version_id=version_id, **kwargs))
|
1236
1249
|
|
1237
1250
|
@distributed_trace
|
1238
1251
|
def delete_immutability_policy(self, **kwargs: Any) -> None:
|
@@ -1241,6 +1254,9 @@ class BlobClient(StorageAccountHostsMixin, StorageEncryptionMixin): # pylint: d
|
|
1241
1254
|
.. versionadded:: 12.10.0
|
1242
1255
|
This operation was introduced in API version '2020-10-02'.
|
1243
1256
|
|
1257
|
+
:keyword str version_id:
|
1258
|
+
The version id parameter is an opaque DateTime
|
1259
|
+
value that, when present, specifies the version of the blob to check if it exists.
|
1244
1260
|
:keyword int timeout:
|
1245
1261
|
Sets the server-side timeout for the operation in seconds. For more details see
|
1246
1262
|
https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations.
|
@@ -1251,7 +1267,8 @@ class BlobClient(StorageAccountHostsMixin, StorageEncryptionMixin): # pylint: d
|
|
1251
1267
|
:rtype: Dict[str, str]
|
1252
1268
|
"""
|
1253
1269
|
|
1254
|
-
self.
|
1270
|
+
version_id = get_version_id(self.version_id, kwargs)
|
1271
|
+
self._client.blob.delete_immutability_policy(version_id=version_id, **kwargs)
|
1255
1272
|
|
1256
1273
|
@distributed_trace
|
1257
1274
|
def set_legal_hold(self, legal_hold: bool, **kwargs: Any) -> Dict[str, Union[str, datetime, bool]]:
|
@@ -1262,6 +1279,9 @@ class BlobClient(StorageAccountHostsMixin, StorageEncryptionMixin): # pylint: d
|
|
1262
1279
|
|
1263
1280
|
:param bool legal_hold:
|
1264
1281
|
Specified if a legal hold should be set on the blob.
|
1282
|
+
:keyword str version_id:
|
1283
|
+
The version id parameter is an opaque DateTime
|
1284
|
+
value that, when present, specifies the version of the blob to check if it exists.
|
1265
1285
|
:keyword int timeout:
|
1266
1286
|
Sets the server-side timeout for the operation in seconds. For more details see
|
1267
1287
|
https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations.
|
@@ -1272,8 +1292,9 @@ class BlobClient(StorageAccountHostsMixin, StorageEncryptionMixin): # pylint: d
|
|
1272
1292
|
:rtype: Dict[str, Union[str, datetime, bool]]
|
1273
1293
|
"""
|
1274
1294
|
|
1275
|
-
|
1276
|
-
|
1295
|
+
version_id = get_version_id(self.version_id, kwargs)
|
1296
|
+
return cast(Dict[str, Union[str, datetime, bool]], self._client.blob.set_legal_hold(
|
1297
|
+
legal_hold, version_id=version_id, cls=return_response_headers, **kwargs))
|
1277
1298
|
|
1278
1299
|
@distributed_trace
|
1279
1300
|
def create_page_blob(
|
@@ -3281,7 +3302,7 @@ class BlobClient(StorageAccountHostsMixin, StorageEncryptionMixin): # pylint: d
|
|
3281
3302
|
policies=self._pipeline._impl_policies # pylint: disable = protected-access
|
3282
3303
|
)
|
3283
3304
|
else:
|
3284
|
-
_pipeline = self._pipeline
|
3305
|
+
_pipeline = self._pipeline
|
3285
3306
|
return ContainerClient(
|
3286
3307
|
f"{self.scheme}://{self.primary_hostname}", container_name=self.container_name,
|
3287
3308
|
credential=self._raw_credential, api_version=self.api_version, _configuration=self._config,
|
@@ -188,7 +188,10 @@ def _upload_blob_options( # pylint:disable=too-many-statements
|
|
188
188
|
raise ValueError(f"Unsupported BlobType: {blob_type}")
|
189
189
|
return kwargs
|
190
190
|
|
191
|
-
def _upload_blob_from_url_options(source_url: str, **kwargs: Any
|
191
|
+
def _upload_blob_from_url_options(source_url: str, **kwargs: Any) -> Dict[str, Any]:
|
192
|
+
metadata = kwargs.pop('metadata', None)
|
193
|
+
headers = kwargs.pop('headers', {})
|
194
|
+
headers.update(add_metadata_headers(metadata))
|
192
195
|
source_url = _encode_source_url(source_url=source_url)
|
193
196
|
tier = kwargs.pop('standard_blob_tier', None)
|
194
197
|
overwrite = kwargs.pop('overwrite', False)
|
@@ -222,10 +225,11 @@ def _upload_blob_from_url_options(source_url: str, **kwargs: Any ) -> Dict[str,
|
|
222
225
|
'tier': tier.value if tier else None,
|
223
226
|
'source_modified_access_conditions': get_source_conditions(kwargs),
|
224
227
|
'cpk_info': cpk_info,
|
225
|
-
'cpk_scope_info': get_cpk_scope_info(kwargs)
|
228
|
+
'cpk_scope_info': get_cpk_scope_info(kwargs),
|
229
|
+
'headers': headers,
|
226
230
|
}
|
227
231
|
options.update(kwargs)
|
228
|
-
if not overwrite and not _any_conditions(**options):
|
232
|
+
if not overwrite and not _any_conditions(**options):
|
229
233
|
options['modified_access_conditions'].if_none_match = '*'
|
230
234
|
return options
|
231
235
|
|
@@ -128,7 +128,7 @@ class BlobServiceClient(StorageAccountHostsMixin, StorageEncryptionMixin):
|
|
128
128
|
self._query_str, credential = self._format_query_string(sas_token, credential)
|
129
129
|
super(BlobServiceClient, self).__init__(parsed_url, service='blob', credential=credential, **kwargs)
|
130
130
|
self._client = AzureBlobStorage(self.url, base_url=self.url, pipeline=self._pipeline)
|
131
|
-
self._client._config.version = get_api_version(kwargs) # type: ignore [assignment]
|
131
|
+
self._client._config.version = get_api_version(kwargs) # type: ignore [assignment]
|
132
132
|
self._configure_encryption(kwargs)
|
133
133
|
|
134
134
|
def _format_url(self, hostname):
|
{azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_container_client.py
RENAMED
@@ -624,7 +624,7 @@ class ContainerClient(StorageAccountHostsMixin, StorageEncryptionMixin): # py
|
|
624
624
|
process_storage_error(error)
|
625
625
|
|
626
626
|
@distributed_trace
|
627
|
-
def _get_blob_service_client(self) -> "BlobServiceClient":
|
627
|
+
def _get_blob_service_client(self) -> "BlobServiceClient":
|
628
628
|
"""Get a client to interact with the container's parent service account.
|
629
629
|
|
630
630
|
Defaults to current container's credentials.
|
@@ -648,7 +648,7 @@ class ContainerClient(StorageAccountHostsMixin, StorageEncryptionMixin): # py
|
|
648
648
|
policies=self._pipeline._impl_policies # pylint: disable = protected-access
|
649
649
|
)
|
650
650
|
else:
|
651
|
-
_pipeline = self._pipeline
|
651
|
+
_pipeline = self._pipeline
|
652
652
|
return BlobServiceClient(
|
653
653
|
f"{self.scheme}://{self.primary_hostname}",
|
654
654
|
credential=self._raw_credential, api_version=self.api_version, _configuration=self._config,
|
@@ -132,7 +132,7 @@ def _generate_delete_blobs_options(
|
|
132
132
|
for blob in blobs:
|
133
133
|
if not isinstance(blob, str):
|
134
134
|
blob_name = blob.get('name')
|
135
|
-
options = _generic_delete_blob_options(
|
135
|
+
options = _generic_delete_blob_options(
|
136
136
|
snapshot=blob.get('snapshot'),
|
137
137
|
version_id=blob.get('version_id'),
|
138
138
|
delete_snapshots=delete_snapshots or blob.get('delete_snapshots'),
|
@@ -147,7 +147,7 @@ def _generate_delete_blobs_options(
|
|
147
147
|
)
|
148
148
|
else:
|
149
149
|
blob_name = blob
|
150
|
-
options = _generic_delete_blob_options(
|
150
|
+
options = _generic_delete_blob_options(
|
151
151
|
delete_snapshots=delete_snapshots,
|
152
152
|
if_modified_since=if_modified_since,
|
153
153
|
if_unmodified_since=if_unmodified_since,
|
@@ -199,11 +199,11 @@ def _generate_set_tiers_subrequest_options(
|
|
199
199
|
query_parameters['versionid'] = client._serialize.query("version_id", version_id, 'str') # pylint: disable=protected-access
|
200
200
|
if timeout is not None:
|
201
201
|
query_parameters['timeout'] = client._serialize.query("timeout", timeout, 'int', minimum=0) # pylint: disable=protected-access
|
202
|
-
query_parameters['comp'] = client._serialize.query("comp", comp, 'str') # pylint: disable=protected-access
|
202
|
+
query_parameters['comp'] = client._serialize.query("comp", comp, 'str') # pylint: disable=protected-access
|
203
203
|
|
204
204
|
# Construct headers
|
205
205
|
header_parameters = {}
|
206
|
-
header_parameters['x-ms-access-tier'] = client._serialize.header("tier", tier, 'str') # pylint: disable=protected-access
|
206
|
+
header_parameters['x-ms-access-tier'] = client._serialize.header("tier", tier, 'str') # pylint: disable=protected-access
|
207
207
|
if rehydrate_priority is not None:
|
208
208
|
header_parameters['x-ms-rehydrate-priority'] = client._serialize.header( # pylint: disable=protected-access
|
209
209
|
"rehydrate_priority", rehydrate_priority, 'str')
|
{azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_deserialize.py
RENAMED
@@ -142,7 +142,7 @@ def service_properties_deserialize(generated: "StorageServiceProperties") -> Dic
|
|
142
142
|
'hour_metrics': Metrics._from_generated(generated.hour_metrics), # pylint: disable=protected-access
|
143
143
|
'minute_metrics': Metrics._from_generated(generated.minute_metrics), # pylint: disable=protected-access
|
144
144
|
'cors': cors_list,
|
145
|
-
'target_version': generated.default_service_version,
|
145
|
+
'target_version': generated.default_service_version,
|
146
146
|
'delete_retention_policy': RetentionPolicy._from_generated(generated.delete_retention_policy), # pylint: disable=protected-access
|
147
147
|
'static_website': StaticWebsite._from_generated(generated.static_website), # pylint: disable=protected-access
|
148
148
|
}
|
@@ -181,7 +181,7 @@ def get_blob_properties_from_generated_code(generated: "BlobItemInternal") -> Bl
|
|
181
181
|
blob.version_id = generated.version_id
|
182
182
|
blob.is_current_version = generated.is_current_version
|
183
183
|
blob.tag_count = generated.properties.tag_count
|
184
|
-
blob.tags = parse_tags(generated.blob_tags)
|
184
|
+
blob.tags = parse_tags(generated.blob_tags)
|
185
185
|
blob.object_replication_source_properties = deserialize_ors_policies(generated.object_replication_metadata)
|
186
186
|
blob.last_accessed_on = generated.properties.last_accessed_on
|
187
187
|
blob.immutability_policy = ImmutabilityPolicy._from_generated(generated) # pylint: disable=protected-access
|
{azure_storage_blob-12.23.1 → azure_storage_blob-12.24.0b1}/azure/storage/blob/_encryption.py
RENAMED
@@ -508,6 +508,8 @@ def _generate_encryption_data_dict(
|
|
508
508
|
# We must pad the version to 8 bytes for AES Keywrap algorithms
|
509
509
|
to_wrap = _ENCRYPTION_PROTOCOL_V2.encode().ljust(8, b'\0') + cek
|
510
510
|
wrapped_cek = kek.wrap_key(to_wrap)
|
511
|
+
else:
|
512
|
+
raise ValueError("Invalid encryption version specified.")
|
511
513
|
|
512
514
|
# Build the encryption_data dict.
|
513
515
|
# Use OrderedDict to comply with Java's ordering requirement.
|
@@ -48,7 +48,7 @@ class AzureBlobStorage: # pylint: disable=client-accepts-api-version-keyword
|
|
48
48
|
:param base_url: Service URL. Required. Default value is "".
|
49
49
|
:type base_url: str
|
50
50
|
:keyword version: Specifies the version of the operation to use for this request. Default value
|
51
|
-
is "
|
51
|
+
is "2025-01-05". Note that overriding this default value may result in unsupported behavior.
|
52
52
|
:paramtype version: str
|
53
53
|
"""
|
54
54
|
|
@@ -23,12 +23,12 @@ class AzureBlobStorageConfiguration: # pylint: disable=too-many-instance-attrib
|
|
23
23
|
desired operation. Required.
|
24
24
|
:type url: str
|
25
25
|
:keyword version: Specifies the version of the operation to use for this request. Default value
|
26
|
-
is "
|
26
|
+
is "2025-01-05". Note that overriding this default value may result in unsupported behavior.
|
27
27
|
:paramtype version: str
|
28
28
|
"""
|
29
29
|
|
30
30
|
def __init__(self, url: str, **kwargs: Any) -> None:
|
31
|
-
version: Literal["
|
31
|
+
version: Literal["2025-01-05"] = kwargs.pop("version", "2025-01-05")
|
32
32
|
|
33
33
|
if url is None:
|
34
34
|
raise ValueError("Parameter 'url' must not be None.")
|