azure-storage-blob 12.21.0b1__tar.gz → 12.23.0__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.
Files changed (203) hide show
  1. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/CHANGELOG.md +29 -0
  2. {azure-storage-blob-12.21.0b1/azure_storage_blob.egg-info → azure_storage_blob-12.23.0}/PKG-INFO +8 -3
  3. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/__init__.py +1 -1
  4. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/__init__.py +1 -1
  5. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/__init__.py +19 -18
  6. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_blob_client.py +470 -1555
  7. azure_storage_blob-12.23.0/azure/storage/blob/_blob_client_helpers.py +1242 -0
  8. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_blob_service_client.py +93 -112
  9. azure_storage_blob-12.23.0/azure/storage/blob/_blob_service_client_helpers.py +27 -0
  10. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_container_client.py +176 -377
  11. azure_storage_blob-12.23.0/azure/storage/blob/_container_client_helpers.py +266 -0
  12. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_deserialize.py +68 -44
  13. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_download.py +375 -241
  14. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_encryption.py +14 -7
  15. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/_azure_blob_storage.py +2 -1
  16. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/_serialization.py +2 -0
  17. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/aio/_azure_blob_storage.py +2 -1
  18. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/aio/operations/_append_blob_operations.py +1 -7
  19. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/aio/operations/_blob_operations.py +21 -47
  20. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/aio/operations/_block_blob_operations.py +2 -10
  21. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/aio/operations/_container_operations.py +13 -26
  22. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/aio/operations/_page_blob_operations.py +3 -14
  23. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/aio/operations/_service_operations.py +14 -17
  24. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/operations/_append_blob_operations.py +1 -7
  25. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/operations/_blob_operations.py +21 -47
  26. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/operations/_block_blob_operations.py +2 -10
  27. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/operations/_container_operations.py +13 -26
  28. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/operations/_page_blob_operations.py +3 -14
  29. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/operations/_service_operations.py +14 -17
  30. azure_storage_blob-12.23.0/azure/storage/blob/_generated/py.typed +1 -0
  31. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_lease.py +52 -63
  32. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_list_blobs_helper.py +129 -135
  33. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_models.py +480 -277
  34. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_quick_query_helper.py +30 -31
  35. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_serialize.py +39 -56
  36. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/avro/datafile.py +1 -1
  37. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/avro/datafile_async.py +1 -1
  38. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/base_client.py +3 -1
  39. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/base_client_async.py +1 -1
  40. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/policies.py +16 -15
  41. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/policies_async.py +21 -6
  42. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/response_handlers.py +6 -2
  43. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/shared_access_signature.py +21 -3
  44. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/uploads.py +1 -1
  45. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/uploads_async.py +1 -1
  46. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared_access_signature.py +110 -52
  47. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_upload_helpers.py +75 -68
  48. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_version.py +1 -1
  49. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/aio/__init__.py +19 -11
  50. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/aio/_blob_client_async.py +554 -301
  51. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/aio/_blob_service_client_async.py +148 -97
  52. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/aio/_container_client_async.py +289 -140
  53. azure_storage_blob-12.23.0/azure/storage/blob/aio/_download_async.py +872 -0
  54. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/aio/_lease_async.py +61 -60
  55. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/aio/_list_blobs_helper.py +94 -96
  56. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/aio/_models.py +60 -38
  57. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/aio/_upload_helpers.py +75 -66
  58. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0/azure_storage_blob.egg-info}/PKG-INFO +8 -3
  59. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure_storage_blob.egg-info/SOURCES.txt +4 -1
  60. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure_storage_blob.egg-info/requires.txt +2 -2
  61. azure_storage_blob-12.23.0/pyproject.toml +6 -0
  62. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_authentication.py +15 -27
  63. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_authentication_async.py +15 -24
  64. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_batch_delete_blobs.py +7 -1
  65. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_client_side_encryption_keyvault.py +2 -8
  66. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_common.py +25 -1
  67. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_common_async.py +27 -3
  68. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_container_access_policy.py +4 -4
  69. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_container_access_policy_async.py +4 -4
  70. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_containers.py +31 -2
  71. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_containers_async.py +32 -3
  72. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_copy_blob.py +9 -2
  73. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_copy_blob_async.py +10 -3
  74. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_hello_world.py +21 -0
  75. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_hello_world_async.py +29 -4
  76. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_service.py +26 -0
  77. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_service_async.py +25 -0
  78. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/setup.py +3 -3
  79. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/settings/settings_fake.py +0 -4
  80. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/settings/testcase.py +0 -4
  81. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_append_blob.py +2 -2
  82. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_append_blob_async.py +2 -2
  83. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_client.py +2 -2
  84. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_client_async.py +3 -2
  85. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_encryption.py +2 -3
  86. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_encryption_async.py +6 -3
  87. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_encryption_v2.py +35 -0
  88. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_encryption_v2_async.py +35 -0
  89. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_block_blob.py +2 -2
  90. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_block_blob_async.py +2 -2
  91. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_block_blob_sync_copy.py +1 -1
  92. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_block_blob_sync_copy_async.py +1 -1
  93. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_common_blob.py +21 -87
  94. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_common_blob_async.py +17 -84
  95. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_container.py +7 -3
  96. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_container_async.py +6 -2
  97. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_cpk_n.py +1 -1
  98. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_cpk_n_async.py +1 -1
  99. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_get_blob.py +185 -32
  100. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_get_blob_async.py +205 -34
  101. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_helpers.py +1 -1
  102. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_helpers_async.py +1 -1
  103. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_page_blob.py +2 -2
  104. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_page_blob_async.py +2 -2
  105. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_retry.py +28 -0
  106. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_retry_async.py +32 -4
  107. azure-storage-blob-12.21.0b1/azure/storage/blob/_generated/_vendor.py +0 -16
  108. azure-storage-blob-12.21.0b1/azure/storage/blob/aio/_download_async.py +0 -724
  109. azure-storage-blob-12.21.0b1/pyproject.toml +0 -5
  110. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/LICENSE +0 -0
  111. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/MANIFEST.in +0 -0
  112. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/README.md +0 -0
  113. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/__init__.py +0 -0
  114. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/_configuration.py +0 -0
  115. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/_patch.py +0 -0
  116. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/aio/__init__.py +0 -0
  117. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/aio/_configuration.py +0 -0
  118. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/aio/_patch.py +0 -0
  119. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/aio/operations/__init__.py +0 -0
  120. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/aio/operations/_patch.py +0 -0
  121. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/models/__init__.py +0 -0
  122. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/models/_azure_blob_storage_enums.py +0 -0
  123. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/models/_models_py3.py +0 -0
  124. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/models/_patch.py +0 -0
  125. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/operations/__init__.py +0 -0
  126. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_generated/operations/_patch.py +0 -0
  127. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/__init__.py +0 -0
  128. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/authentication.py +0 -0
  129. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/avro/__init__.py +0 -0
  130. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/avro/avro_io.py +0 -0
  131. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/avro/avro_io_async.py +0 -0
  132. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/avro/schema.py +0 -0
  133. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/constants.py +0 -0
  134. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/models.py +0 -0
  135. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/parser.py +0 -0
  136. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/_shared/request_handlers.py +0 -0
  137. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/aio/_encryption_async.py +0 -0
  138. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure/storage/blob/py.typed +0 -0
  139. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure_storage_blob.egg-info/dependency_links.txt +0 -0
  140. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure_storage_blob.egg-info/not-zip-safe +0 -0
  141. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/azure_storage_blob.egg-info/top_level.txt +0 -0
  142. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/migration_guide.md +0 -0
  143. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/README.md +0 -0
  144. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_client_side_encryption.py +0 -0
  145. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_directory_interface.py +0 -0
  146. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_directory_interface_mimetype.py +0 -0
  147. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_enumerate_blobs.py +0 -0
  148. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_enumerate_blobs_async.py +0 -0
  149. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_network_activity_logging.py +0 -0
  150. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_proxy_configuration.py +0 -0
  151. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_query.py +0 -0
  152. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_walk_blob_hierarchy.py +0 -0
  153. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/samples/blob_samples_walk_blob_hierarchy_async.py +0 -0
  154. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/setup.cfg +0 -0
  155. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/avro/__init__.py +0 -0
  156. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/avro/test_avro.py +0 -0
  157. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/avro/test_avro_async.py +0 -0
  158. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/conftest.py +0 -0
  159. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/encryption_test_helper.py +0 -0
  160. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/fake_credentials.py +0 -0
  161. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/T1_legacy_tests/__init__.py +0 -0
  162. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/T1_legacy_tests/_test_base_legacy.py +0 -0
  163. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/T1_legacy_tests/download.py +0 -0
  164. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/T1_legacy_tests/list_blobs.py +0 -0
  165. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/T1_legacy_tests/upload.py +0 -0
  166. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/T1_legacy_tests/upload_block.py +0 -0
  167. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/T1_legacy_tests/upload_from_file.py +0 -0
  168. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/__init__.py +0 -0
  169. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/_test_base.py +0 -0
  170. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/download.py +0 -0
  171. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/key_wrapper.py +0 -0
  172. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/list_blobs.py +0 -0
  173. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/upload.py +0 -0
  174. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/upload_block.py +0 -0
  175. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/perfstress_tests/upload_from_file.py +0 -0
  176. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/settings/__init__.py +0 -0
  177. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_access_conditions.py +0 -0
  178. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_access_conditions_async.py +0 -0
  179. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_api_version.py +0 -0
  180. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_api_version_async.py +0 -0
  181. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_retry.py +0 -0
  182. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_retry_async.py +0 -0
  183. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_service_properties.py +0 -0
  184. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_service_properties_async.py +0 -0
  185. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_service_stats.py +0 -0
  186. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_service_stats_async.py +0 -0
  187. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_storage_account.py +0 -0
  188. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_storage_account_async.py +0 -0
  189. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_tags.py +0 -0
  190. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_blob_tags_async.py +0 -0
  191. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_cpk.py +0 -0
  192. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_cpk_async.py +0 -0
  193. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_dictmixin.py +0 -0
  194. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_large_block_blob.py +0 -0
  195. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_large_block_blob_async.py +0 -0
  196. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_largest_block_blob.py +0 -0
  197. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_largest_block_blob_async.py +0 -0
  198. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_logging.py +0 -0
  199. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_logging_async.py +0 -0
  200. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_ors.py +0 -0
  201. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_ors_async.py +0 -0
  202. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_quick_query.py +0 -0
  203. {azure-storage-blob-12.21.0b1 → azure_storage_blob-12.23.0}/tests/test_upload_chunking.py +0 -0
@@ -1,5 +1,34 @@
1
1
  # Release History
2
2
 
3
+ ## 12.23.0 (2024-09-17)
4
+
5
+ ### Features Added
6
+ - Stable release of features from 12.23.0b1
7
+
8
+ ### Bugs Fixed
9
+ - Fixed an issue with batch APIs when using Azurite.
10
+
11
+ ## 12.23.0b1 (2024-08-07)
12
+
13
+ ### Features Added
14
+ - Added support for service version 2024-11-04.
15
+
16
+ ### Other Changes
17
+ - Bumped minimum `azure-core` dependency to 1.30.0.
18
+
19
+ ## 12.22.0 (2024-08-06)
20
+
21
+ ### Other Changes
22
+ - Updated type hints across the entire package and enabled MyPy to run during CI. Some public types may have been adjusted if they were previously erroneous or incomplete.
23
+
24
+ ## 12.21.0 (2024-07-18)
25
+
26
+ ### Features Added
27
+ - Stable release of features from 12.21.0b1
28
+ - Added new `chars` keyword to the `StorageStreamDownloader.read` method to support reading an arbitrary number of
29
+ characters from the stream rather than bytes. This can only be used when `encoding` is specified on `download_blob`
30
+ but can help prevent decoding errors in certain scenarios.
31
+
3
32
  ## 12.21.0b1 (2024-06-11)
4
33
 
5
34
  ### Features Added
@@ -1,13 +1,13 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: azure-storage-blob
3
- Version: 12.21.0b1
3
+ Version: 12.23.0
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 :: 4 - Beta
10
+ Classifier: Development Status :: 5 - Production/Stable
11
11
  Classifier: Programming Language :: Python
12
12
  Classifier: Programming Language :: Python :: 3 :: Only
13
13
  Classifier: Programming Language :: Python :: 3
@@ -19,8 +19,13 @@ Classifier: Programming Language :: Python :: 3.12
19
19
  Classifier: License :: OSI Approved :: MIT License
20
20
  Requires-Python: >=3.8
21
21
  Description-Content-Type: text/markdown
22
- Provides-Extra: aio
23
22
  License-File: LICENSE
23
+ Requires-Dist: azure-core>=1.30.0
24
+ Requires-Dist: cryptography>=2.1.4
25
+ Requires-Dist: typing-extensions>=4.6.0
26
+ Requires-Dist: isodate>=0.6.1
27
+ Provides-Extra: aio
28
+ Requires-Dist: azure-core[aio]>=1.30.0; extra == "aio"
24
29
 
25
30
  # Azure Storage Blobs client library for Python
26
31
  Azure Blob storage is Microsoft's object storage solution for the cloud. Blob storage is optimized for storing massive amounts of unstructured data, such as text or binary data.
@@ -1 +1 @@
1
- __path__ = __import__('pkgutil').extend_path(__path__, __name__) # type: str
1
+ __path__ = __import__('pkgutil').extend_path(__path__, __name__) # type: ignore
@@ -1 +1 @@
1
- __path__ = __import__('pkgutil').extend_path(__path__, __name__) # type: str
1
+ __path__ = __import__('pkgutil').extend_path(__path__, __name__) # type: ignore
@@ -7,7 +7,7 @@
7
7
 
8
8
  import os
9
9
 
10
- from typing import Union, Iterable, AnyStr, IO, Any, Dict # pylint: disable=unused-import
10
+ from typing import Any, AnyStr, cast, Dict, IO, Iterable, Optional, Union, TYPE_CHECKING
11
11
  from ._version import VERSION
12
12
  from ._blob_client import BlobClient
13
13
  from ._container_client import ContainerClient
@@ -18,7 +18,7 @@ from ._quick_query_helper import BlobQueryReader
18
18
  from ._shared_access_signature import generate_account_sas, generate_container_sas, generate_blob_sas
19
19
  from ._shared.policies import ExponentialRetry, LinearRetry
20
20
  from ._shared.response_handlers import PartialBatchErrorException
21
- from ._shared.models import(
21
+ from ._shared.models import (
22
22
  LocationMode,
23
23
  ResourceTypes,
24
24
  AccountSasPermissions,
@@ -26,9 +26,7 @@ from ._shared.models import(
26
26
  UserDelegationKey,
27
27
  Services
28
28
  )
29
- from ._generated.models import (
30
- RehydratePriority,
31
- )
29
+ from ._generated.models import RehydratePriority
32
30
  from ._models import (
33
31
  BlobType,
34
32
  BlockState,
@@ -67,15 +65,18 @@ from ._models import (
67
65
  )
68
66
  from ._list_blobs_helper import BlobPrefix
69
67
 
68
+ if TYPE_CHECKING:
69
+ from azure.core.credentials import AzureNamedKeyCredential, AzureSasCredential, TokenCredential
70
+
70
71
  __version__ = VERSION
71
72
 
72
73
 
73
74
  def upload_blob_to_url(
74
- blob_url, # type: str
75
- data, # type: Union[Iterable[AnyStr], IO[AnyStr]]
76
- credential=None, # type: Optional[Union[str, Dict[str, str], AzureNamedKeyCredential, AzureSasCredential, "TokenCredential"]] # pylint: disable=line-too-long
77
- **kwargs):
78
- # type: (...) -> Dict[str, Any]
75
+ blob_url: str,
76
+ data: Union[Iterable[AnyStr], IO[AnyStr]],
77
+ credential: Optional[Union[str, Dict[str, str], "AzureNamedKeyCredential", "AzureSasCredential", "TokenCredential"]] = None, # pylint: disable=line-too-long
78
+ **kwargs: Any
79
+ ) -> Dict[str, Any]:
79
80
  """Upload data to a given URL
80
81
 
81
82
  The data will be uploaded as a block blob.
@@ -125,10 +126,10 @@ def upload_blob_to_url(
125
126
  :rtype: dict(str, Any)
126
127
  """
127
128
  with BlobClient.from_blob_url(blob_url, credential=credential) as client:
128
- return client.upload_blob(data=data, blob_type=BlobType.BlockBlob, **kwargs)
129
+ return cast(BlobClient, client).upload_blob(data=data, blob_type=BlobType.BLOCKBLOB, **kwargs)
129
130
 
130
131
 
131
- def _download_to_stream(client, handle, **kwargs):
132
+ def _download_to_stream(client: BlobClient, handle: IO[bytes], **kwargs: Any) -> None:
132
133
  """
133
134
  Download data to specified open file-handle.
134
135
 
@@ -140,11 +141,11 @@ def _download_to_stream(client, handle, **kwargs):
140
141
 
141
142
 
142
143
  def download_blob_from_url(
143
- blob_url, # type: str
144
- output, # type: str
145
- credential=None, # type: Optional[Union[str, Dict[str, str], AzureNamedKeyCredential, AzureSasCredential, "TokenCredential"]] # pylint: disable=line-too-long
146
- **kwargs):
147
- # type: (...) -> None
144
+ blob_url: str,
145
+ output: Union[str, IO[bytes]],
146
+ credential: Optional[Union[str, Dict[str, str], "AzureNamedKeyCredential", "AzureSasCredential", "TokenCredential"]] = None, # pylint: disable=line-too-long
147
+ **kwargs: Any
148
+ ) -> None:
148
149
  """Download the contents of a blob to a local file or stream.
149
150
 
150
151
  :param str blob_url:
@@ -194,7 +195,7 @@ def download_blob_from_url(
194
195
  overwrite = kwargs.pop('overwrite', False)
195
196
  with BlobClient.from_blob_url(blob_url, credential=credential) as client:
196
197
  if hasattr(output, 'write'):
197
- _download_to_stream(client, output, **kwargs)
198
+ _download_to_stream(client, cast(IO[bytes], output), **kwargs)
198
199
  else:
199
200
  if not overwrite and os.path.isfile(output):
200
201
  raise ValueError(f"The file '{output}' already exists.")