12.13.0-beta.1
are now generally available.Thank you to our developer community members who helped to make Azure Storage Blobs better with their contributions to this release:
12.12.0-beta.1
are now generally available.2024-08-04
.BlobContainerClient::GetAccountInfo()
and BlobClient::GetAccountInfo
APIs.12.11.0-beta.1
are now generally available.2023-11-03
.12.10.0-beta.1
are now generally available.BlobAudience
Audience
in BlobClientOptions
12.9.0-beta.1
and 12.9.0-beta.2
are now generally available.BlobClientOptions
called EnableTenantDiscovery
. If set to true
, the client will attempt an initial unauthorized request to the service to prompt a challenge containing the tenantId hint.SourceAuthorization
in options for copy operations, which can be used to specify authorization for copy source.RehydratePendingToCold
value to ArchiveStatus
enum.PageBlobClient::GetPageRangesDiff
and PageBlobClient::GetManagedDiskPageRangesDiff
crash when getting the second page.12.8.0-beta.1
are now generally available.2022-11-02
.AppendBlobClient::AppendBlock()
and AppendBlobClient::AppendBlockFromUri()
was raised from 4 MiB to 100 MiB.12.7.0.beta.1
are now generally available.2021-12-02
.Cold
.12.6.0.beta.1
are now generally available.2021-04-10
.ses
query parameter in SAS token).BlobClient::CopyFromUri()
.12.5.0.beta1
and 12.5.0.beta2
are now generally available.2020-10-02
.BlockBlobClient::Query()
.ContinuationToken
and PageSizeHint
in GetPageRangesOptions
.2020-08-04
.2020-08-04
.BlobClient::CopyFromUri()
, BlobClient::SetImmutabilityPolicy()
, BlobClient::DeleteImmutabilityPolicy()
, BlobClient::SetLegalHold()
, BlockBlobClient::UploadFromUri()
and BlobServiceClient::RenameBlobContainer()
.BlobClient::SetTags()
and BlobClient::GetTags()
.VersionId
in SetBlobMetadataResult
.DefaultEncryptionScope
and PreventEncryptionScopeOverride
in BlobContainerProperties
were changed to optional.StartsOn
and ExpiresOn
in SignedIdentifier
were changed to nullable.&
when listing blobs.BlobClient::SetAccessTier()
.PageBlobClient::UploadPagesFromUri()
.IsServerEncrypted
, EncryptionKeySha256
and EncryptionScope
into SetBlobMetadataResult
.AccessTierChangedOn
, ArchiveStatus
, RehydratePriority
, CopyId
, CopySource
, CopyStatus
, CopyStatusDescription
, IsIncrementalCopy
, IncrementalCopyDestinationSnapshot
, CopyProgress
, CopyCompletedOn
, Tags
, DeletedOn
and RemainingRetentionDays
into BlobItemDetails
.BlobContainerClient::GetAccessPolicy()
.BlobItemDetails::EncryptionKeySha256
was always null because it wasn't correctly parsed from xml.BlockBlobClient::GetBlockList
threw exception if the blob is not committed.final
specifier to classes and structures that are are not expected to be inheritable at the moment.HasMorePages()
in paged response to HasPage()
.BlobLeaseClient::Change()
updates internal lease id.ContentType
from GetBlockListResult
.GetPageRangesResult
to detail namespace.BlobServiceClient::UndeleteBlobContainer
doesn't support restoring a deleted container under a different name anymore.int32_t
.Azure::Storage::Blobs::PackageVersion
.GetUserDelegationKeyOptions::startsOn
to StartsOn
.PagedResponse<T>
-derived type. The options are also renamed accordingly.BlobServiceClient::ListBlobContainers()
.BlobServiceClient::FindBlobsByTags()
.BlobContainerClient::ListBlobs()
.BlobContainerClient::ListBlobsByHierarchy()
.PageBlobClient::GetPageRanges()
.PageBlobClient::GetPageRangesDiff()
.PageBlobClient::GetManagedDiskPageRangesDiff()
.FilterBlobItem
to TaggedBlobItem
.FindBlobsByTags()
now returns FindBlobsByTagsPagedResponse
and the field FindBlobsByTagsSinglePageResult::Items
was renamed to FindBlobsByTagsPagedResponse::TaggedBlobs
.Azure::Storage::Blobs::PackageVersion
.ShareFileClient::GetRangeListDiff
.StartCopyFromUri
and StartCopyIncremental
API from a Response<T>
to the particular Operation<T>
type called StartBlobCopyOperation
directly.Get()
to ToString()
.SecondaryHostForRetryReads
out of retry options, now it's under BlobClientOptions
.BlobServiceClient::DeleteBlobContainer
now returns DeleteBlobContainerResult
.BlobServiceClient::GetUserDelegationKey
now returns UserDelegationKey
.BlobServiceClient::GetProperties
now returns BlobServiceProperties
.BlobServiceClient::GetAccountInfo
now returns AccountInfo
.BlobServiceClient::GetStatistics
now returns ServiceStatistics
.BlobContainerClient::DeleteBlob
now returns DeleteBlobResult
.BlobContainerClient::GetProperties
now returns BlobContainerProperties
.BlobContainerClient::GetAccessPolicy
now returns BlobContainerAccessPolicy
.BlobClient::GetProperties
now returns BlobProperties
.BlobClinet::GetTags
now returns std::map<std::string, std::string>
.BlobClient::AbortCopyFromUri
now returns AbortBlobCopyFromUriResult
.PageBlobClient::UploadPages
now returns UploadPagesResult
.PageBlobClient::UploadPagesFromUri
now returns UploadPagesFromUriResult
.PageBlobClient::ClearPages
now returns ClearPagesResult
.PageBlobClient::GetPageRanges
, PageBlobClient::GetPageRangesDiff
and PageBlobClient::GetManagedDiskPageRangesDiff
now return GetPageRangesResult
.UploadPageBlobPagesOptions
to UploadPagesOptions
.UploadPageBlobPagesFromUriOptions
to UploadPagesFromUriOptions
.ClearPageBlobPagesOptions
to ClearPagesOptions
.GetPageBlobPageRangesOptions
to GetPageRangesOptions
.StartCopyBlobFromUriOptions
to StartBlobCopyFromUriOptions
.StartCopyPageBlobIncrementalOptions
to StartBlobCopyIncrementalOptions
.Blob
from the name of lease options and return types, like AcquireBlobLeaseOptions
was renamed to AcquireLeaseOptions
.Blob
prefix from the name of structs BlobGeoReplication
, BlobLeaseStatus
, BlobLeaseState
, BlobLeaseDurationType
, BlobAnalyticsLogging
, BlobMetrics
, BlobCorsRule
, BlobRetentionPolicy
, BlobStaticWebsite
, BlobArchiveStatus
and BlobGeoReplicationStatus
.RequestId
from return types.BodyStream
parameter of UploadBlob
, Upload
, UploadPages
and AppendBlock
functions from pointer to reference.Tier
to AccessTier
.BlockListTypeOption
to BlockListType
.BreakBlobLeaseResult::Leasetime
.Azure::Core::Context
out of options bag of each API, and make it the last optional parameter.RequestId
in API return types.GetBlobPropertiesResult
, DownloadBlobResult
and DownloadBlobToResult
.RangeHashAlgorithm
in DownloadBlobOptions
.UploadBlob
in BlobContainerClient
.UserDelegationKey
was changed to a member of GetUserDelegationKeyResult
rather than a typedef like before.AccessType
in CreateBlobContainerOptions
was changed to non-nullable.ListType
in GetBlockListOptions
was changed to non-nullable.BlobLeaseClient
, all lease related APIs are moved to BlobLeaseClient
.std::chrono::seconds
, in response was changed to enum.PublicAccessType::Private
was renamed to PublicAccessType::None
.startsOn
parameter for GetUserDelegationKey
was changed to optional.IfUnmodifiedSince
from SetBlobContainerMetadataOptions
.BlobClient::StartCopyFromUri
and PageBlobClient::StartCopyIncremental
were changed to StartCopyBlobResult
, supporting poll operations.Expiries
in model types.PreviousContinuationToken
from ListBlobContainersSinglePageResult
, ListBlobsByHierarchySinglePageResult
and ListBlobsSinglePageResult
.ListBlobContainersIncludeItem
was renamed to ListBlobContainersIncludeFlags
.ListBlobsIncludeItem
was renamed to ListBlobsIncludeFlags
.Concurrency
, ChunkSize
and InitialChunkSize
were moved into DownloadBlobToOptions::TansferOptions
.Concurrency
, ChunkSize
and SingleUploadThreshold
were moved into UploadBlockBlobFromOptions::TransferOptions
.TagValue
from FilterBlobItem
, removed Where
from FindBlobsByTagsSinglePageResult
.Azure::Core::ETag
.BlobPrefix
struct, use std::string
instead.BlobContainerItem
, BlobItem
, DownloadBlobResult
and DownloadBlobToResult
.CreateIfNotExists
and DeleteIfExists
for blob containers and blobs.IsHierarchicalNamespaceEnabled
in GetAccountInfoResult
.PageBlobClient::GetPageRangesDiff
and PageBlobClient::GetManagedDiskPageRangesDiff
.CreateBlobContainer
, DeleteBlobContainer
, UndeleteBlobContainer
into BlobServiceClient
.DeleteBlob
to BlobContainerClient
.AppendBlobAccessConditions::MaxSize
to IfMaxSizeLessThanOrEqual
.AppendBlobAccessConditions::AppendPosition
to IfAppendPositionEqual
.BlobServiceProperties.DefaultServiceVersion
is now nullable.DeleteBlobSubRequest::containerName
to blobContainerName
.SetBlobAccessTierSubRequest::containerName
to blobContainerName
.BlobSasBuilder::ContainerName
to BlobContainerName
.BlobSasResource::Container
to BlobContainer
.AccountSasResource::Container
to BlobContainer
CreateContainerResult
to CreateBlobContainerOptions
CreateContainerOptions
to CreateBlobContainerOptions
DeleteContainerResult
to DeleteBlobContainerResult
DeleteContainerOptions
to DeleteBlobContainerOptions
GetContainerPropertiesResult
to GetBlobContainerPropertiesResult
GetContainerPropertiesOptions
to GetBlobContainerPropertiesOptions
SetContainerMetadataResult
to SetBlobContainerMetadataResult
SetContainerMetadataOptions
to SetBlobContainerMetadataOptions
GetContainerAccessPolicyResult
to GetBlobContainerAccessPolicyResult
GetContainerAccessPolicyOptions
to GetBlobContainerAccessPolicyOptions
SetContainerAccessPolicyResult
to SetBlobContainerAccessPolicyResult
SetContainerAccessPolicyOptions
to SetBlobContainerAccessPolicyOptions
AcquireContainerLeaseResult
to AcquireBlobContainerLeaseResult
AcquireContainerLeaseOptions
to AcquireBlobContainerLeaseOptions
RenewContainerLeaseResult
to RenewBlobContainerLeaseResult
RenewContainerLeaseOptions
to RenewBlobContainerLeaseOptions
ReleaseContainerLeaseResult
to ReleaseBlobContainerLeaseResult
ReleaseContainerLeaseOptions
to ReleaseBlobContainerLeaseOptions
ChangeContainerLeaseResult
to ChangeBlobContainerLeaseResult
ChangeContainerLeaseOptions
to ChangeBlobContainerLeaseOptions
BreakContainerLeaseResult
to BreakBlobContainerLeaseResult
BreakContainerLeaseOptions
to BreakBlobContainerLeaseOptions
ContainerAccessConditions
to BlobContainerAccessConditions
ListContainersSegmentResult
to ListBlobContainersSegmentResult
ListContainersSegmentOptions
to ListBlobContainersSegmentOptions
CommitBlockList
has changed. BlockType
doesn't need to be specified anymore.PageBlobClient::GetPageRanges
doesn't support getting difference between current blob and a snapshot anymore. Use PageBlobClient::GetPageRangesDiff
instead.Azure::Storage::Sas
namespace.ContentHash
struct.EncryptionKeySha256
is changed to binary (std::vector<uint8_t>
).ContentMd5
HTTP header is renamed to ContentHash
, the type is also changed to ContentHash
.ServerEncrypted
fields are renamed to IsServerEncrypted
, and changed to non-nullable type.Is
prefix to bool variable names. Like IsAccessTierInferred
, IsDeleted
.IsServerEncrypted
, EncryptionKeySha256
and EncryptionScope
are removed from ClearPageBlobPagesResult
, since they are never returned from storage server.ListBlobsFlatSegment
is renamed to ListBlobsSinglePage
.ListBlobsByHierarchySegment
is renamed to ListBlobsByHierarchySinglePage
.ListBlobContainersSegment
is renamed to ListBlobContainersSinglePage
.FindBlobsByTags
is renamed to FindBlobsByTagsSinglePage
.MaxResults
in list APIs are renamed to PageSizeHint
.Azure::Core::DateTime
type.std::pair<int64_t, int64_t>
with Azure::Core::Http::Range
to denote blob ranges.Details
namespace.Models::DeleteSnapshotsOption::Only
to OnlySnapshots
.SourceConditions
in API options to SourceAccessConditions
.DownloadBlobResult::Content-Range
is changed to an Azure::Core::Http::Range
, an extra field BlobSize
is added.Undelete
from BlobContainerClient
.BlobRetentionPolicy::Enabled
is renamed to BlobRetentionPolicy::IsEnabled
, BlobStaticWebsite::Enabled
is renamed to BlobStaticWebsite::IsEnabled
.std::map
.Azure::Identity::ClientSecretCredential
to Azure::Core::TokenCredential
.GetUri
of client types to GetUrl
.BlobClient::GetBlockBlobClient
, BlobClient::GetAppendBlobClient
and BlobClient::GetPageBlobClient
are renamed to BlobClient::AsBlockBlobClient
, BlobClient::AsAppendBlobClient
and BlobClient::AsPageBlobClient
respectively.version.hpp
.azure/storage/blobs/blob.hpp
to azure/storage/blobs.hpp
.Result
are moved to the Models
sub-namespaces and everything else from the protocol layer is made private by moving to the Details
namespace.Details
namespace.BlockBlobClientOptions
, AppendBlobClientOptions
and PageBlobClientOptions
, use BlobClientOptions
instead.BlobSasBuilder::ToSasQueryParameters
to BlobSasBuilder::GenerateSasToken
.Marker
is renamed to ContinuationToken
for ListContainersSegmentOptions
, FindBlobsByTagsOptions
and ListBlobsSegmentOptions
.Marker
is renamed to PreviousContinuationToken
, NextMarker
is renamed to ContinuationToken
for FilterBlobsSegmentResult
, ListContainersSegmentResult
, ListBlobsByHierarchySegmentResult
and ListBlobsFlatSegmentResult
.