|
|
azure-storage-blobs
|
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.BlobAudienceAudience in BlobClientOptions12.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 AppendBlockfunctions 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 BlobContainerCreateContainerResult to CreateBlobContainerOptionsCreateContainerOptions to CreateBlobContainerOptionsDeleteContainerResult to DeleteBlobContainerResultDeleteContainerOptions to DeleteBlobContainerOptionsGetContainerPropertiesResult to GetBlobContainerPropertiesResultGetContainerPropertiesOptions to GetBlobContainerPropertiesOptionsSetContainerMetadataResult to SetBlobContainerMetadataResultSetContainerMetadataOptions to SetBlobContainerMetadataOptionsGetContainerAccessPolicyResult to GetBlobContainerAccessPolicyResultGetContainerAccessPolicyOptions to GetBlobContainerAccessPolicyOptionsSetContainerAccessPolicyResult to SetBlobContainerAccessPolicyResultSetContainerAccessPolicyOptions to SetBlobContainerAccessPolicyOptionsAcquireContainerLeaseResult to AcquireBlobContainerLeaseResultAcquireContainerLeaseOptions to AcquireBlobContainerLeaseOptionsRenewContainerLeaseResult to RenewBlobContainerLeaseResultRenewContainerLeaseOptions to RenewBlobContainerLeaseOptionsReleaseContainerLeaseResult to ReleaseBlobContainerLeaseResultReleaseContainerLeaseOptions to ReleaseBlobContainerLeaseOptionsChangeContainerLeaseResult to ChangeBlobContainerLeaseResultChangeContainerLeaseOptions to ChangeBlobContainerLeaseOptionsBreakContainerLeaseResult to BreakBlobContainerLeaseResultBreakContainerLeaseOptions to BreakBlobContainerLeaseOptionsContainerAccessConditions to BlobContainerAccessConditionsListContainersSegmentResult to ListBlobContainersSegmentResultListContainersSegmentOptions to ListBlobContainersSegmentOptionsCommitBlockList 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.