azure-storage-blob 12.21.0b1__py3-none-any.whl → 12.22.0__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.
- azure/storage/blob/__init__.py +19 -18
- azure/storage/blob/_blob_client.py +470 -1555
- azure/storage/blob/_blob_client_helpers.py +1242 -0
- azure/storage/blob/_blob_service_client.py +93 -112
- azure/storage/blob/_blob_service_client_helpers.py +27 -0
- azure/storage/blob/_container_client.py +169 -376
- azure/storage/blob/_container_client_helpers.py +261 -0
- azure/storage/blob/_deserialize.py +68 -44
- azure/storage/blob/_download.py +375 -241
- azure/storage/blob/_encryption.py +14 -7
- azure/storage/blob/_generated/py.typed +1 -0
- azure/storage/blob/_lease.py +52 -63
- azure/storage/blob/_list_blobs_helper.py +129 -135
- azure/storage/blob/_models.py +480 -277
- azure/storage/blob/_quick_query_helper.py +30 -31
- azure/storage/blob/_serialize.py +38 -56
- azure/storage/blob/_shared/avro/datafile.py +1 -1
- azure/storage/blob/_shared/avro/datafile_async.py +1 -1
- azure/storage/blob/_shared/base_client.py +1 -1
- azure/storage/blob/_shared/base_client_async.py +1 -1
- azure/storage/blob/_shared/policies.py +8 -6
- azure/storage/blob/_shared/policies_async.py +3 -1
- azure/storage/blob/_shared/response_handlers.py +6 -2
- azure/storage/blob/_shared/shared_access_signature.py +2 -2
- azure/storage/blob/_shared/uploads.py +1 -1
- azure/storage/blob/_shared/uploads_async.py +1 -1
- azure/storage/blob/_shared_access_signature.py +70 -53
- azure/storage/blob/_upload_helpers.py +75 -68
- azure/storage/blob/_version.py +1 -1
- azure/storage/blob/aio/__init__.py +19 -11
- azure/storage/blob/aio/_blob_client_async.py +554 -301
- azure/storage/blob/aio/_blob_service_client_async.py +148 -97
- azure/storage/blob/aio/_container_client_async.py +282 -139
- azure/storage/blob/aio/_download_async.py +408 -283
- azure/storage/blob/aio/_lease_async.py +61 -60
- azure/storage/blob/aio/_list_blobs_helper.py +94 -96
- azure/storage/blob/aio/_models.py +60 -38
- azure/storage/blob/aio/_upload_helpers.py +75 -66
- {azure_storage_blob-12.21.0b1.dist-info → azure_storage_blob-12.22.0.dist-info}/METADATA +7 -7
- {azure_storage_blob-12.21.0b1.dist-info → azure_storage_blob-12.22.0.dist-info}/RECORD +43 -39
- {azure_storage_blob-12.21.0b1.dist-info → azure_storage_blob-12.22.0.dist-info}/WHEEL +1 -1
- {azure_storage_blob-12.21.0b1.dist-info → azure_storage_blob-12.22.0.dist-info}/LICENSE +0 -0
- {azure_storage_blob-12.21.0b1.dist-info → azure_storage_blob-12.22.0.dist-info}/top_level.txt +0 -0
@@ -6,23 +6,10 @@
|
|
6
6
|
|
7
7
|
import inspect
|
8
8
|
from io import SEEK_SET, UnsupportedOperation
|
9
|
-
from typing import TypeVar, TYPE_CHECKING
|
9
|
+
from typing import Any, cast, Dict, IO, Optional, TypeVar, TYPE_CHECKING
|
10
10
|
|
11
|
-
from azure.core.exceptions import
|
11
|
+
from azure.core.exceptions import HttpResponseError, ResourceModifiedError
|
12
12
|
|
13
|
-
from .._shared.response_handlers import process_storage_error, return_response_headers
|
14
|
-
from .._shared.uploads_async import (
|
15
|
-
upload_data_chunks,
|
16
|
-
upload_substream_blocks,
|
17
|
-
BlockBlobChunkUploader,
|
18
|
-
PageBlobChunkUploader,
|
19
|
-
AppendBlobChunkUploader
|
20
|
-
)
|
21
|
-
from .._generated.models import (
|
22
|
-
BlockLookupList,
|
23
|
-
AppendPositionAccessConditions,
|
24
|
-
ModifiedAccessConditions,
|
25
|
-
)
|
26
13
|
from ._encryption_async import GCMBlobEncryptionStream
|
27
14
|
from .._encryption import (
|
28
15
|
encrypt_blob,
|
@@ -32,23 +19,39 @@ from .._encryption import (
|
|
32
19
|
_ENCRYPTION_PROTOCOL_V1,
|
33
20
|
_ENCRYPTION_PROTOCOL_V2
|
34
21
|
)
|
35
|
-
from ..
|
22
|
+
from .._generated.models import (
|
23
|
+
AppendPositionAccessConditions,
|
24
|
+
BlockLookupList,
|
25
|
+
ModifiedAccessConditions
|
26
|
+
)
|
27
|
+
from .._shared.response_handlers import process_storage_error, return_response_headers
|
28
|
+
from .._shared.uploads_async import (
|
29
|
+
AppendBlobChunkUploader,
|
30
|
+
BlockBlobChunkUploader,
|
31
|
+
PageBlobChunkUploader,
|
32
|
+
upload_data_chunks,
|
33
|
+
upload_substream_blocks
|
34
|
+
)
|
35
|
+
from .._upload_helpers import _any_conditions, _convert_mod_error
|
36
36
|
|
37
37
|
if TYPE_CHECKING:
|
38
|
+
from .._generated.aio.operations import AppendBlobOperations, BlockBlobOperations, PageBlobOperations
|
39
|
+
from .._shared.models import StorageConfiguration
|
38
40
|
BlobLeaseClient = TypeVar("BlobLeaseClient")
|
39
41
|
|
40
42
|
|
41
43
|
async def upload_block_blob( # pylint: disable=too-many-locals, too-many-statements
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
44
|
+
client: "BlockBlobOperations",
|
45
|
+
stream: IO,
|
46
|
+
overwrite: bool,
|
47
|
+
encryption_options: Dict[str, Any],
|
48
|
+
blob_settings: "StorageConfiguration",
|
49
|
+
headers: Dict[str, Any],
|
50
|
+
validate_content: bool,
|
51
|
+
max_concurrency: Optional[int],
|
52
|
+
length: Optional[int] = None,
|
53
|
+
**kwargs: Any
|
54
|
+
) -> Dict[str, Any]:
|
52
55
|
try:
|
53
56
|
if not overwrite and not _any_conditions(**kwargs):
|
54
57
|
kwargs['modified_access_conditions'].if_none_match = '*'
|
@@ -67,18 +70,20 @@ async def upload_block_blob( # pylint: disable=too-many-locals, too-many-statem
|
|
67
70
|
|
68
71
|
# Do single put if the size is smaller than config.max_single_put_size
|
69
72
|
if adjusted_count is not None and (adjusted_count <= blob_settings.max_single_put_size):
|
70
|
-
data = stream.read(length)
|
73
|
+
data = stream.read(length or -1)
|
71
74
|
if inspect.isawaitable(data):
|
72
75
|
data = await data
|
73
76
|
if not isinstance(data, bytes):
|
74
77
|
raise TypeError('Blob data should be of type bytes.')
|
75
78
|
|
76
79
|
if encryption_options.get('key'):
|
80
|
+
if not isinstance(data, bytes):
|
81
|
+
raise TypeError('Blob data should be of type bytes.')
|
77
82
|
encryption_data, data = encrypt_blob(data, encryption_options['key'], encryption_options['version'])
|
78
83
|
headers['x-ms-meta-encryptiondata'] = encryption_data
|
79
84
|
|
80
|
-
response = await client.upload(
|
81
|
-
body=data,
|
85
|
+
response = cast(Dict[str, Any], await client.upload(
|
86
|
+
body=data, # type: ignore [arg-type]
|
82
87
|
content_length=adjusted_count,
|
83
88
|
blob_http_headers=blob_headers,
|
84
89
|
headers=headers,
|
@@ -91,7 +96,7 @@ async def upload_block_blob( # pylint: disable=too-many-locals, too-many-statem
|
|
91
96
|
immutability_policy_expiry=immutability_policy_expiry,
|
92
97
|
immutability_policy_mode=immutability_policy_mode,
|
93
98
|
legal_hold=legal_hold,
|
94
|
-
**kwargs)
|
99
|
+
**kwargs))
|
95
100
|
|
96
101
|
if progress_hook:
|
97
102
|
await progress_hook(adjusted_count, adjusted_count)
|
@@ -108,10 +113,10 @@ async def upload_block_blob( # pylint: disable=too-many-locals, too-many-statem
|
|
108
113
|
total_size = length
|
109
114
|
encryptor, padder = None, None
|
110
115
|
if encryption_options and encryption_options.get('key'):
|
111
|
-
cek, iv,
|
116
|
+
cek, iv, encryption_metadata = generate_blob_encryption_data(
|
112
117
|
encryption_options['key'],
|
113
118
|
encryption_options['version'])
|
114
|
-
headers['x-ms-meta-encryptiondata'] =
|
119
|
+
headers['x-ms-meta-encryptiondata'] = encryption_metadata
|
115
120
|
|
116
121
|
if encryption_options['version'] == _ENCRYPTION_PROTOCOL_V1:
|
117
122
|
encryptor, padder = get_blob_encryptor_and_padder(cek, iv, True)
|
@@ -121,7 +126,9 @@ async def upload_block_blob( # pylint: disable=too-many-locals, too-many-statem
|
|
121
126
|
# Adjust total_size for encryption V2
|
122
127
|
total_size = adjusted_count
|
123
128
|
# V2 wraps the data stream with an encryption stream
|
124
|
-
|
129
|
+
if cek is None:
|
130
|
+
raise ValueError("Generate encryption metadata failed. 'cek' is None.")
|
131
|
+
stream = GCMBlobEncryptionStream(cek, stream) # type: ignore [assignment]
|
125
132
|
|
126
133
|
block_ids = await upload_data_chunks(
|
127
134
|
service=client,
|
@@ -153,7 +160,7 @@ async def upload_block_blob( # pylint: disable=too-many-locals, too-many-statem
|
|
153
160
|
|
154
161
|
block_lookup = BlockLookupList(committed=[], uncommitted=[], latest=[])
|
155
162
|
block_lookup.latest = block_ids
|
156
|
-
return await client.commit_block_list(
|
163
|
+
return cast(Dict[str, Any], await client.commit_block_list(
|
157
164
|
block_lookup,
|
158
165
|
blob_http_headers=blob_headers,
|
159
166
|
cls=return_response_headers,
|
@@ -164,7 +171,7 @@ async def upload_block_blob( # pylint: disable=too-many-locals, too-many-statem
|
|
164
171
|
immutability_policy_expiry=immutability_policy_expiry,
|
165
172
|
immutability_policy_mode=immutability_policy_mode,
|
166
173
|
legal_hold=legal_hold,
|
167
|
-
**kwargs)
|
174
|
+
**kwargs))
|
168
175
|
except HttpResponseError as error:
|
169
176
|
try:
|
170
177
|
process_storage_error(error)
|
@@ -175,16 +182,17 @@ async def upload_block_blob( # pylint: disable=too-many-locals, too-many-statem
|
|
175
182
|
|
176
183
|
|
177
184
|
async def upload_page_blob(
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
185
|
+
client: "PageBlobOperations",
|
186
|
+
overwrite: bool,
|
187
|
+
encryption_options: Dict[str, Any],
|
188
|
+
blob_settings: "StorageConfiguration",
|
189
|
+
headers: Dict[str, Any],
|
190
|
+
stream: IO,
|
191
|
+
length: Optional[int] = None,
|
192
|
+
validate_content: Optional[bool] = None,
|
193
|
+
max_concurrency: Optional[int] = None,
|
194
|
+
**kwargs: Any
|
195
|
+
) -> Dict[str, Any]:
|
188
196
|
try:
|
189
197
|
if not overwrite and not _any_conditions(**kwargs):
|
190
198
|
kwargs['modified_access_conditions'].if_none_match = '*'
|
@@ -210,18 +218,18 @@ async def upload_page_blob(
|
|
210
218
|
blob_tags_string = kwargs.pop('blob_tags_string', None)
|
211
219
|
progress_hook = kwargs.pop('progress_hook', None)
|
212
220
|
|
213
|
-
response = await client.create(
|
221
|
+
response = cast(Dict[str, Any], await client.create(
|
214
222
|
content_length=0,
|
215
223
|
blob_content_length=length,
|
216
|
-
blob_sequence_number=None,
|
224
|
+
blob_sequence_number=None, # type: ignore [arg-type]
|
217
225
|
blob_http_headers=kwargs.pop('blob_headers', None),
|
218
226
|
blob_tags_string=blob_tags_string,
|
219
227
|
tier=tier,
|
220
228
|
cls=return_response_headers,
|
221
229
|
headers=headers,
|
222
|
-
**kwargs)
|
230
|
+
**kwargs))
|
223
231
|
if length == 0:
|
224
|
-
return response
|
232
|
+
return cast(Dict[str, Any], response)
|
225
233
|
|
226
234
|
if encryption_options and encryption_options.get('key'):
|
227
235
|
if encryption_options['version'] == _ENCRYPTION_PROTOCOL_V1:
|
@@ -230,7 +238,7 @@ async def upload_page_blob(
|
|
230
238
|
kwargs['padder'] = padder
|
231
239
|
|
232
240
|
kwargs['modified_access_conditions'] = ModifiedAccessConditions(if_match=response['etag'])
|
233
|
-
return await upload_data_chunks(
|
241
|
+
return cast(Dict[str, Any], await upload_data_chunks(
|
234
242
|
service=client,
|
235
243
|
uploader_class=PageBlobChunkUploader,
|
236
244
|
total_size=length,
|
@@ -240,7 +248,7 @@ async def upload_page_blob(
|
|
240
248
|
validate_content=validate_content,
|
241
249
|
progress_hook=progress_hook,
|
242
250
|
headers=headers,
|
243
|
-
**kwargs)
|
251
|
+
**kwargs))
|
244
252
|
|
245
253
|
except HttpResponseError as error:
|
246
254
|
try:
|
@@ -252,16 +260,17 @@ async def upload_page_blob(
|
|
252
260
|
|
253
261
|
|
254
262
|
async def upload_append_blob( # pylint: disable=unused-argument
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
263
|
+
client: "AppendBlobOperations",
|
264
|
+
overwrite: bool,
|
265
|
+
encryption_options: Dict[str, Any],
|
266
|
+
blob_settings: "StorageConfiguration",
|
267
|
+
headers: Dict[str, Any],
|
268
|
+
stream: IO,
|
269
|
+
length: Optional[int] = None,
|
270
|
+
validate_content: Optional[bool] = None,
|
271
|
+
max_concurrency: Optional[int] = None,
|
272
|
+
**kwargs: Any
|
273
|
+
) -> Dict[str, Any]:
|
265
274
|
try:
|
266
275
|
if length == 0:
|
267
276
|
return {}
|
@@ -280,7 +289,7 @@ async def upload_append_blob( # pylint: disable=unused-argument
|
|
280
289
|
headers=headers,
|
281
290
|
blob_tags_string=blob_tags_string,
|
282
291
|
**kwargs)
|
283
|
-
return await upload_data_chunks(
|
292
|
+
return cast(Dict[str, Any], await upload_data_chunks(
|
284
293
|
service=client,
|
285
294
|
uploader_class=AppendBlobChunkUploader,
|
286
295
|
total_size=length,
|
@@ -291,9 +300,9 @@ async def upload_append_blob( # pylint: disable=unused-argument
|
|
291
300
|
append_position_access_conditions=append_conditions,
|
292
301
|
progress_hook=progress_hook,
|
293
302
|
headers=headers,
|
294
|
-
**kwargs)
|
303
|
+
**kwargs))
|
295
304
|
except HttpResponseError as error:
|
296
|
-
if error.response.status_code != 404:
|
305
|
+
if error.response.status_code != 404: # type: ignore [union-attr]
|
297
306
|
raise
|
298
307
|
# rewind the request body if it is a stream
|
299
308
|
if hasattr(stream, 'read'):
|
@@ -309,7 +318,7 @@ async def upload_append_blob( # pylint: disable=unused-argument
|
|
309
318
|
headers=headers,
|
310
319
|
blob_tags_string=blob_tags_string,
|
311
320
|
**kwargs)
|
312
|
-
return await upload_data_chunks(
|
321
|
+
return cast(Dict[str, Any], await upload_data_chunks(
|
313
322
|
service=client,
|
314
323
|
uploader_class=AppendBlobChunkUploader,
|
315
324
|
total_size=length,
|
@@ -320,6 +329,6 @@ async def upload_append_blob( # pylint: disable=unused-argument
|
|
320
329
|
append_position_access_conditions=append_conditions,
|
321
330
|
progress_hook=progress_hook,
|
322
331
|
headers=headers,
|
323
|
-
**kwargs)
|
332
|
+
**kwargs))
|
324
333
|
except HttpResponseError as error:
|
325
334
|
process_storage_error(error)
|
@@ -1,13 +1,13 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: azure-storage-blob
|
3
|
-
Version: 12.
|
3
|
+
Version: 12.22.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 ::
|
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
|
@@ -20,12 +20,12 @@ Classifier: License :: OSI Approved :: MIT License
|
|
20
20
|
Requires-Python: >=3.8
|
21
21
|
Description-Content-Type: text/markdown
|
22
22
|
License-File: LICENSE
|
23
|
-
Requires-Dist: azure-core
|
24
|
-
Requires-Dist: cryptography
|
25
|
-
Requires-Dist: typing-extensions
|
26
|
-
Requires-Dist: isodate
|
23
|
+
Requires-Dist: azure-core >=1.28.0
|
24
|
+
Requires-Dist: cryptography >=2.1.4
|
25
|
+
Requires-Dist: typing-extensions >=4.6.0
|
26
|
+
Requires-Dist: isodate >=0.6.1
|
27
27
|
Provides-Extra: aio
|
28
|
-
Requires-Dist: azure-core[aio]
|
28
|
+
Requires-Dist: azure-core[aio] >=1.28.0 ; extra == 'aio'
|
29
29
|
|
30
30
|
# Azure Storage Blobs client library for Python
|
31
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,18 +1,21 @@
|
|
1
|
-
azure/storage/blob/__init__.py,sha256=
|
2
|
-
azure/storage/blob/_blob_client.py,sha256=
|
3
|
-
azure/storage/blob/
|
4
|
-
azure/storage/blob/
|
5
|
-
azure/storage/blob/
|
6
|
-
azure/storage/blob/
|
7
|
-
azure/storage/blob/
|
8
|
-
azure/storage/blob/
|
9
|
-
azure/storage/blob/
|
10
|
-
azure/storage/blob/
|
11
|
-
azure/storage/blob/
|
12
|
-
azure/storage/blob/
|
13
|
-
azure/storage/blob/
|
14
|
-
azure/storage/blob/
|
15
|
-
azure/storage/blob/
|
1
|
+
azure/storage/blob/__init__.py,sha256=2i-4BEmEBQ_qSjF2BfwSyrZXr2s75WgoZlQ6BY8loxI,10694
|
2
|
+
azure/storage/blob/_blob_client.py,sha256=VFLd4oyTWawbxD1H7DBMfJHJcJNAUSXR-nzVxt1CAgw,185513
|
3
|
+
azure/storage/blob/_blob_client_helpers.py,sha256=7tfQzgpV-cnwYc4i-lZEr4YibDDkyl5RCPybQtJZ-i0,51905
|
4
|
+
azure/storage/blob/_blob_service_client.py,sha256=AKoFLHYt4pMREIeQQ3k892xs0XRfS6VV73365KLck-I,40366
|
5
|
+
azure/storage/blob/_blob_service_client_helpers.py,sha256=8jNCrF5rsgdJyAJQTdRR_mcOYuDCw4Nt9AirZk2RYUY,997
|
6
|
+
azure/storage/blob/_container_client.py,sha256=GKT43Z3PONwHZNTY026Cy4ddl1icYHLkh_QB9sPKK9g,84467
|
7
|
+
azure/storage/blob/_container_client_helpers.py,sha256=Kp77eGkKgTMrFlwdOn_cQs3_jM-qipoQwqdhHRaUdJU,12359
|
8
|
+
azure/storage/blob/_deserialize.py,sha256=VisgOi6WtpfkeOZ9lMcEAiZyg3A6AqR7oZO52WUXaWU,9937
|
9
|
+
azure/storage/blob/_download.py,sha256=nvj_IBZuSQWV1fO2iB0n_LAndv95SRhbscuGmxu9hHE,40069
|
10
|
+
azure/storage/blob/_encryption.py,sha256=yw1T7bw7WWSxi4utqCvbpcDTwiMBdsjw0-Eqvud_Ulc,47238
|
11
|
+
azure/storage/blob/_lease.py,sha256=ReF0nVfZE8p_clUGpebZPprBdXJ7lOGEqXmJUhvsX5U,18336
|
12
|
+
azure/storage/blob/_list_blobs_helper.py,sha256=smnTcpGSVkk93G0RI7YczhkIM0s0gx4bSGWj_DB8t_s,13160
|
13
|
+
azure/storage/blob/_models.py,sha256=c01JsL1fCAWecXfUUD6Dn50qpjV9r5ZiViXXCwNZVN4,66018
|
14
|
+
azure/storage/blob/_quick_query_helper.py,sha256=HO6ufvSEWQSaFJ4CanujE4IN7FYB6y1f8PU0-dItMsk,6663
|
15
|
+
azure/storage/blob/_serialize.py,sha256=9qby1s2BMVCs_sFOj7h4iQZNkm_jnA31BqzqhxTtI40,8128
|
16
|
+
azure/storage/blob/_shared_access_signature.py,sha256=P_JnrsTIWW9oK9AHToTrqcrdBS_uRXsP1INJ5HYI6Ow,33665
|
17
|
+
azure/storage/blob/_upload_helpers.py,sha256=-ZpqzST-wFdWqCm_I4oWGLTMQ5N0aYb3RHxaMvmf9Q4,14688
|
18
|
+
azure/storage/blob/_version.py,sha256=d6XznPdlKnX2yOS4WBXhYL6yi19aRxmSW-TneLePeV4,331
|
16
19
|
azure/storage/blob/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
17
20
|
azure/storage/blob/_generated/__init__.py,sha256=J2H2yiFhRSsMCNKUI7gaYFIQ4_AAbWjPtzXdOsHFQFI,835
|
18
21
|
azure/storage/blob/_generated/_azure_blob_storage.py,sha256=Xpt7ZrX5n2nN0l5x8EU9tX8H1ZPaK0vOV0GEFNxhYxs,5716
|
@@ -20,6 +23,7 @@ azure/storage/blob/_generated/_configuration.py,sha256=PV4kKjbnHhg6nD30e_acUENns
|
|
20
23
|
azure/storage/blob/_generated/_patch.py,sha256=MdyWs5y2w9_vYRWulELR-RV2uRYkjYpdB7nTVz2tVY4,1532
|
21
24
|
azure/storage/blob/_generated/_serialization.py,sha256=UL45pN1JUtWi96uVT5L9kbXGDtWUBHW0r4e2MeHpsKY,78893
|
22
25
|
azure/storage/blob/_generated/_vendor.py,sha256=e3w-rd6okoiCIB8rNMtF0fehAYFWNlshwiwTsIRkEH4,778
|
26
|
+
azure/storage/blob/_generated/py.typed,sha256=dcrsqJrcYfTX-ckLFJMTaj6mD8aDe2u0tkQG-ZYxnEg,26
|
23
27
|
azure/storage/blob/_generated/aio/__init__.py,sha256=J2H2yiFhRSsMCNKUI7gaYFIQ4_AAbWjPtzXdOsHFQFI,835
|
24
28
|
azure/storage/blob/_generated/aio/_azure_blob_storage.py,sha256=79r9sIDwid96ZMyrO3u0S4UnfmR3O3g-M8JDmsTULXU,5859
|
25
29
|
azure/storage/blob/_generated/aio/_configuration.py,sha256=Q4jfjKwpMOvSe2gS9lOdvwwsHvVtsJZN37AYrf4ySgg,2576
|
@@ -46,36 +50,36 @@ azure/storage/blob/_generated/operations/_patch.py,sha256=pYl0jxVFr3Yu0RHRFIgN3N
|
|
46
50
|
azure/storage/blob/_generated/operations/_service_operations.py,sha256=CSR4vFYxQ5AmLlH8KcC8pJplcFDYWDwjtFQt-5MzPvc,49892
|
47
51
|
azure/storage/blob/_shared/__init__.py,sha256=Ohb4NSCuB9VXGEqjU2o9VZ5L98-a7c8KWZvrujnSFk8,1477
|
48
52
|
azure/storage/blob/_shared/authentication.py,sha256=KfUKWkjItNJxUTWNcCNusYfnENy-XbVelHlZM8fWc0Y,9450
|
49
|
-
azure/storage/blob/_shared/base_client.py,sha256=
|
50
|
-
azure/storage/blob/_shared/base_client_async.py,sha256=
|
53
|
+
azure/storage/blob/_shared/base_client.py,sha256=m8APWNQ2cbvMFWdR6y8a1iA4h9BxSA-nQ0ovQr2tuwA,18555
|
54
|
+
azure/storage/blob/_shared/base_client_async.py,sha256=z1dyRk2XSurRn69CwKA_lQYC7kRFOMkwhIr-InPP5t8,11918
|
51
55
|
azure/storage/blob/_shared/constants.py,sha256=0TnhBNEaZpVq0vECmLoXWSzCajtn9WOlfOfzbMApRb4,620
|
52
56
|
azure/storage/blob/_shared/models.py,sha256=aDydzgBj2_-WfnlT1-nOhJt-FHxOU8BG0T0K68BejNk,24907
|
53
57
|
azure/storage/blob/_shared/parser.py,sha256=ACpdtwf6lhzmA0ukT3PmxpGVpimVXTy_mMSdixC55R8,1955
|
54
|
-
azure/storage/blob/_shared/policies.py,sha256=
|
55
|
-
azure/storage/blob/_shared/policies_async.py,sha256=
|
58
|
+
azure/storage/blob/_shared/policies.py,sha256=XuoVxFgyXd2-6h-rniGlvUU4-y0SpsjMdwTdVTRSBjw,30899
|
59
|
+
azure/storage/blob/_shared/policies_async.py,sha256=aVLOV8mugAI7K2rWaaBbUkXd_UCfsw9DH08gZtfLp2A,12713
|
56
60
|
azure/storage/blob/_shared/request_handlers.py,sha256=0G9eyzMY_8BlLfHA6jbJF75ENcu3xqZ33bHfSRi9HTM,9755
|
57
|
-
azure/storage/blob/_shared/response_handlers.py,sha256=
|
58
|
-
azure/storage/blob/_shared/shared_access_signature.py,sha256=
|
59
|
-
azure/storage/blob/_shared/uploads.py,sha256=
|
60
|
-
azure/storage/blob/_shared/uploads_async.py,sha256=
|
61
|
+
azure/storage/blob/_shared/response_handlers.py,sha256=wqZ1hGRDTwh3GkRB0gPSjgm_7TP2quZc_ex4pYThW-8,9190
|
62
|
+
azure/storage/blob/_shared/shared_access_signature.py,sha256=bCtbl-TVqEMBPeqYcJB1va4mjd1rVZRuWf428zjGoss,10684
|
63
|
+
azure/storage/blob/_shared/uploads.py,sha256=O7V-gxxnBozcNscQFzH_V9ZJv6i3Y_QXJePL0g9X3Io,22157
|
64
|
+
azure/storage/blob/_shared/uploads_async.py,sha256=ZFlwMgZIY2cYDzuhgVt0XCQV4ZtRI3PLi_A5cKTd0rw,16782
|
61
65
|
azure/storage/blob/_shared/avro/__init__.py,sha256=Ch-mWS2_vgonM9LjVaETdaW51OL6LfG23X-0tH2AFjw,310
|
62
66
|
azure/storage/blob/_shared/avro/avro_io.py,sha256=no2kWFVYxClP11e5fUypgDBW0YQcF9RgyuEy6rfgD6M,16054
|
63
67
|
azure/storage/blob/_shared/avro/avro_io_async.py,sha256=ui6Fw9wGVC6UjpvCj7r4wlp9i7XncNrukUN6TcZ_c5o,16195
|
64
|
-
azure/storage/blob/_shared/avro/datafile.py,sha256=
|
65
|
-
azure/storage/blob/_shared/avro/datafile_async.py,sha256=
|
68
|
+
azure/storage/blob/_shared/avro/datafile.py,sha256=L0xC3Na0Zyg-I6lZjW8Qp6R4wvEnGms35CAmNjh9oPU,8461
|
69
|
+
azure/storage/blob/_shared/avro/datafile_async.py,sha256=0fSi427XEDPXbFQNrVQq70EAhpy2-jo1Ay-k4fDHO3Q,7294
|
66
70
|
azure/storage/blob/_shared/avro/schema.py,sha256=Z9qcHIEBDbXxkBBs_HYbEWHlZtAbvT302mfWCYDpADI,36201
|
67
|
-
azure/storage/blob/aio/__init__.py,sha256=
|
68
|
-
azure/storage/blob/aio/_blob_client_async.py,sha256=
|
69
|
-
azure/storage/blob/aio/_blob_service_client_async.py,sha256=
|
70
|
-
azure/storage/blob/aio/_container_client_async.py,sha256=
|
71
|
-
azure/storage/blob/aio/_download_async.py,sha256=
|
71
|
+
azure/storage/blob/aio/__init__.py,sha256=tVgeGWdfxG32uyJxAE32waysCOGt93S_EeuQLJz7vEM,8344
|
72
|
+
azure/storage/blob/aio/_blob_client_async.py,sha256=wx76W_LrUDQ2vqBbgvS3RzKLtrnXbAe2INRtLXjtu2g,180606
|
73
|
+
azure/storage/blob/aio/_blob_service_client_async.py,sha256=3rOewtzrDmjUoYKwM0EBUwYLizqp3KHx71lEHDcN_Yw,41260
|
74
|
+
azure/storage/blob/aio/_container_client_async.py,sha256=uYmMm_jWvui5EXDXeRSkbhYnVLcukiOpt_657w2cwzc,85147
|
75
|
+
azure/storage/blob/aio/_download_async.py,sha256=QnOf6nZRAcYDvziAOXKSmZ9qAIs106mPTWqMks-RefA,36848
|
72
76
|
azure/storage/blob/aio/_encryption_async.py,sha256=spbWeycNMj38H5ynZ03FRtRu0L0tnl1lQn5UJT6HMAY,2518
|
73
|
-
azure/storage/blob/aio/_lease_async.py,sha256=
|
74
|
-
azure/storage/blob/aio/_list_blobs_helper.py,sha256=
|
75
|
-
azure/storage/blob/aio/_models.py,sha256=
|
76
|
-
azure/storage/blob/aio/_upload_helpers.py,sha256=
|
77
|
-
azure_storage_blob-12.
|
78
|
-
azure_storage_blob-12.
|
79
|
-
azure_storage_blob-12.
|
80
|
-
azure_storage_blob-12.
|
81
|
-
azure_storage_blob-12.
|
77
|
+
azure/storage/blob/aio/_lease_async.py,sha256=dy4_KZYuIhlxEvYO4GLTKdZz4UzFkpxcm7zfino6geE,18638
|
78
|
+
azure/storage/blob/aio/_list_blobs_helper.py,sha256=cbrJcaGVfOvVCcLYd5dGx-jV3JjSvKfDIi2AQjf79qs,9920
|
79
|
+
azure/storage/blob/aio/_models.py,sha256=fdv7OQc6utrGBIS8FSNuBhYK5Q65o1TbKvdeeQaeUOc,8143
|
80
|
+
azure/storage/blob/aio/_upload_helpers.py,sha256=zROsVN6PK2Cn59Ysq08Ide5T1IGG2yH7oK9ZCn5uQXs,14038
|
81
|
+
azure_storage_blob-12.22.0.dist-info/LICENSE,sha256=_VMkgdgo4ToLE8y1mOAjOKNhd0BnWoYu5r3BVBto6T0,1073
|
82
|
+
azure_storage_blob-12.22.0.dist-info/METADATA,sha256=k00sD6WvZaLCJXQgG1H1F-EjWTrO910zIpM6YNeWP_w,26252
|
83
|
+
azure_storage_blob-12.22.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
84
|
+
azure_storage_blob-12.22.0.dist-info/top_level.txt,sha256=S7DhWV9m80TBzAhOFjxDUiNbKszzoThbnrSz5MpbHSQ,6
|
85
|
+
azure_storage_blob-12.22.0.dist-info/RECORD,,
|
File without changes
|
{azure_storage_blob-12.21.0b1.dist-info → azure_storage_blob-12.22.0.dist-info}/top_level.txt
RENAMED
File without changes
|