Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
176d6f8
reverted share lease
tasherif-msft Mar 17, 2021
c707efd
Added share lease docstrings
tasherif-msft Mar 17, 2021
07ef48e
[Datalake] HNS Soft Delete (#17614)
tasherif-msft Apr 6, 2021
f63acf7
reran tests
tasherif-msft Apr 9, 2021
212251d
reran tests
tasherif-msft Apr 9, 2021
b819964
Rerecord tests (#17934)
tasherif-msft Apr 9, 2021
ca072fa
Merge remote-tracking branch 'upstream/feature/storage-stg77' into fe…
tasherif-msft Apr 9, 2021
0879f8c
changed version for datalake
tasherif-msft Apr 9, 2021
2764cec
Merge branch 'master' into feature/storage-stg77
tasherif-msft Apr 9, 2021
a361d92
Fix service properties Metrics class (#17992)
tasherif-msft Apr 13, 2021
4e3282a
[Blob] Added QQ Parquet Format (#17855)
tasherif-msft Apr 28, 2021
58fbb68
merged master
tasherif-msft Apr 28, 2021
1140458
migrated remaining tests
tasherif-msft Apr 28, 2021
75a81cc
parquet file fix
tasherif-msft Apr 28, 2021
f833237
parquet file fix
tasherif-msft Apr 28, 2021
c390f91
path
tasherif-msft Apr 29, 2021
c6dd7a4
path
tasherif-msft Apr 29, 2021
1e79684
fixed recordings for the recursive bug
tasherif-msft Apr 29, 2021
8d8c11c
Stg77 Cleanup (#18376)
tasherif-msft May 3, 2021
e3455b0
removed parquet dialect from serialize and droped the blob dep version
tasherif-msft May 3, 2021
a5264f0
removed parquet dialect from serialize and droped the blob dep version
tasherif-msft May 3, 2021
2a79580
lint
tasherif-msft May 3, 2021
d2442fb
Merge branch 'master' into feature/storage-stg77
tasherif-msft May 7, 2021
8d3eabd
resolved feedback comments
tasherif-msft May 9, 2021
4b20a47
Merge branch 'feature/storage-stg77' of github.com:Azure/azure-sdk-fo…
tasherif-msft May 9, 2021
b32f967
fixed return type
tasherif-msft May 9, 2021
d9b46db
skipped list deleted paths tests
tasherif-msft May 10, 2021
73aa7e0
Merge branch 'master' into feature/storage-stg77
tasherif-msft May 10, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion sdk/storage/azure-storage-blob/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Release History

## 12.9.0b1 (Unreleased)

## 12.8.1 (2021-04-20)
**Fixes**
- Fixed retry on large block upload
Expand All @@ -13,7 +15,6 @@
- Added retry for blob download (#17974, #10572)
- Fixed encryption algorithm hardcoded setting (#17835)


## 12.8.0 (2021-03-01)
**Stable release of preview features**
- Added `ContainerClient.exists()` method
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@
# pylint: disable=unused-import,ungrouped-imports
from typing import Any

from azure.core.pipeline.transport import HttpRequest, HttpResponse

from ._configuration import AzureBlobStorageConfiguration
from .operations import ServiceOperations
from .operations import ContainerOperations
Expand Down Expand Up @@ -77,6 +79,24 @@ def __init__(
self.block_blob = BlockBlobOperations(
self._client, self._config, self._serialize, self._deserialize)

def _send_request(self, http_request, **kwargs):
# type: (HttpRequest, Any) -> HttpResponse
"""Runs the network request through the client's chained policies.

:param http_request: The network request you want to make. Required.
:type http_request: ~azure.core.pipeline.transport.HttpRequest
:keyword bool stream: Whether the response payload will be streamed. Defaults to True.
:return: The response of your network call. Does not do error handling on your response.
:rtype: ~azure.core.pipeline.transport.HttpResponse
"""
path_format_arguments = {
'url': self._serialize.url("self._config.url", self._config.url, 'str', skip_quote=True),
}
http_request.url = self._client.format_url(http_request.url, **path_format_arguments)
stream = kwargs.pop("stream", True)
pipeline_response = self._client._pipeline.run(http_request, stream=stream, **kwargs)
return pipeline_response.http_response

def close(self):
# type: () -> None
self._client.close()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ def __init__(
super(AzureBlobStorageConfiguration, self).__init__(**kwargs)

self.url = url
self.version = "2020-06-12"
self.version = "2020-08-04"
kwargs.setdefault('sdk_moniker', 'azureblobstorage/{}'.format(VERSION))
self._configure(**kwargs)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
from typing import Any

from azure.core import AsyncPipelineClient
from azure.core.pipeline.transport import AsyncHttpResponse, HttpRequest
from msrest import Deserializer, Serializer

from ._configuration import AzureBlobStorageConfiguration
Expand Down Expand Up @@ -72,6 +73,23 @@ def __init__(
self.block_blob = BlockBlobOperations(
self._client, self._config, self._serialize, self._deserialize)

async def _send_request(self, http_request: HttpRequest, **kwargs: Any) -> AsyncHttpResponse:
"""Runs the network request through the client's chained policies.

:param http_request: The network request you want to make. Required.
:type http_request: ~azure.core.pipeline.transport.HttpRequest
:keyword bool stream: Whether the response payload will be streamed. Defaults to True.
:return: The response of your network call. Does not do error handling on your response.
:rtype: ~azure.core.pipeline.transport.AsyncHttpResponse
"""
path_format_arguments = {
'url': self._serialize.url("self._config.url", self._config.url, 'str', skip_quote=True),
}
http_request.url = self._client.format_url(http_request.url, **path_format_arguments)
stream = kwargs.pop("stream", True)
pipeline_response = await self._client._pipeline.run(http_request, stream=stream, **kwargs)
return pipeline_response.http_response

async def close(self) -> None:
await self._client.close()

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ def __init__(
super(AzureBlobStorageConfiguration, self).__init__(**kwargs)

self.url = url
self.version = "2020-06-12"
self.version = "2020-08-04"
kwargs.setdefault('sdk_moniker', 'azureblobstorage/{}'.format(VERSION))
self._configure(**kwargs)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
import datetime
from typing import Any, Callable, Dict, Generic, IO, Optional, TypeVar
from typing import Any, Callable, Dict, Generic, IO, Optional, TypeVar, Union
import warnings

from azure.core.exceptions import ClientAuthenticationError, HttpResponseError, ResourceExistsError, ResourceNotFoundError, map_error
Expand Down Expand Up @@ -47,6 +47,9 @@ async def create(
metadata: Optional[str] = None,
request_id_parameter: Optional[str] = None,
blob_tags_string: Optional[str] = None,
immutability_policy_expiry: Optional[datetime.datetime] = None,
immutability_policy_mode: Optional[Union[str, "_models.BlobImmutabilityPolicyMode"]] = None,
legal_hold: Optional[bool] = None,
blob_http_headers: Optional["_models.BlobHTTPHeaders"] = None,
lease_access_conditions: Optional["_models.LeaseAccessConditions"] = None,
cpk_info: Optional["_models.CpkInfo"] = None,
Expand Down Expand Up @@ -75,6 +78,13 @@ async def create(
:type request_id_parameter: str
:param blob_tags_string: Optional. Used to set blob tags in various blob operations.
:type blob_tags_string: str
:param immutability_policy_expiry: Specifies the date time when the blobs immutability policy
is set to expire.
:type immutability_policy_expiry: ~datetime.datetime
:param immutability_policy_mode: Specifies the immutability policy mode to set on the blob.
:type immutability_policy_mode: str or ~azure.storage.blob.models.BlobImmutabilityPolicyMode
:param legal_hold: Specified if a legal hold should be set on the blob.
:type legal_hold: bool
:param blob_http_headers: Parameter group.
:type blob_http_headers: ~azure.storage.blob.models.BlobHTTPHeaders
:param lease_access_conditions: Parameter group.
Expand Down Expand Up @@ -191,6 +201,12 @@ async def create(
header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id_parameter", request_id_parameter, 'str')
if blob_tags_string is not None:
header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str')
if immutability_policy_expiry is not None:
header_parameters['x-ms-immutability-policy-until-date'] = self._serialize.header("immutability_policy_expiry", immutability_policy_expiry, 'rfc-1123')
if immutability_policy_mode is not None:
header_parameters['x-ms-immutability-policy-mode'] = self._serialize.header("immutability_policy_mode", immutability_policy_mode, 'str')
if legal_hold is not None:
header_parameters['x-ms-legal-hold'] = self._serialize.header("legal_hold", legal_hold, 'bool')
header_parameters['Accept'] = self._serialize.header("accept", accept, 'str')

request = self._client.put(url, query_parameters, header_parameters)
Expand All @@ -199,7 +215,7 @@ async def create(

if response.status_code not in [201]:
map_error(status_code=response.status_code, response=response, error_map=error_map)
error = self._deserialize(_models.StorageError, response)
error = self._deserialize.failsafe_deserialize(_models.StorageError, response)
raise HttpResponseError(response=response, model=error)

response_headers = {}
Expand Down Expand Up @@ -368,7 +384,7 @@ async def append_block(

if response.status_code not in [201]:
map_error(status_code=response.status_code, response=response, error_map=error_map)
error = self._deserialize(_models.StorageError, response)
error = self._deserialize.failsafe_deserialize(_models.StorageError, response)
raise HttpResponseError(response=response, model=error)

response_headers = {}
Expand Down Expand Up @@ -568,7 +584,7 @@ async def append_block_from_url(

if response.status_code not in [201]:
map_error(status_code=response.status_code, response=response, error_map=error_map)
error = self._deserialize(_models.StorageError, response)
error = self._deserialize.failsafe_deserialize(_models.StorageError, response)
raise HttpResponseError(response=response, model=error)

response_headers = {}
Expand Down Expand Up @@ -682,7 +698,7 @@ async def seal(

if response.status_code not in [200]:
map_error(status_code=response.status_code, response=response, error_map=error_map)
error = self._deserialize(_models.StorageError, response)
error = self._deserialize.failsafe_deserialize(_models.StorageError, response)
raise HttpResponseError(response=response, model=error)

response_headers = {}
Expand Down
Loading