* Increment package version after release of azure-storage-common * Increment package version after release of azure-storage-blobs * Increment package version after release of azure-storage-files-datalake * Increment package version after release of azure-storage-files-shares * Increment package version after release of azure-storage-queues
19 KiB
19 KiB
Release History
12.14.0-beta.2 (Unreleased)
Features Added
Breaking Changes
Bugs Fixed
Other Changes
12.14.0-beta.1 (2025-11-27)
Features Added
- Bumped up API version to
2026-02-06. - Added new field
StartFromparameter inListPathsOptions. - Added support for Principal-Bound Identity User Delegation SAS.
- Added new Sas parameter
DelegatedUserObjectIdinDataLakeSasBuilderwhich means the object id of the user in Azure AD to which the SAS is delegated.
- Added new Sas parameter
12.13.0 (2025-10-15)
Features Added
- Features in
12.13.0-beta.1are now generally available.
12.13.0-beta.1 (2025-06-24)
Features Added
- Added more useful error message when the SDK encounters an x-ms-version mis-match issue.
12.12.0 (2024-09-17)
Features Added
- Features in
12.12.0-beta.1are now generally available.
12.12.0-beta.1 (2024-08-07)
Features Added
- Added ability to retrieve SAS string to sign for debugging purposes.
12.11.0 (2024-07-16)
Features Added
- Features in
12.11.0-beta.1are now generally available.
12.11.0-beta.1 (2024-06-11)
Features Added
- Bumped up API version to
2024-08-04. - Added more detailed messaging for authorization failure cases.
12.10.0 (2024-05-07)
Features Added
- Features in
12.10.0-beta.1are now generally available.
Bugs Fixed
- Fixed a bug where
PathItem::EncryptionContextreturned byDataLakeDirectoryClient::ListPathswas always null.
12.10.0-beta.1 (2024-04-17)
Features Added
- Bumped up API version to
2023-11-03. - Added new field
IncludeUserPrincipalNameinGetPathAccessControlListOptions,GetPathPropertiesOptionsandDownloadFileOptions. - Added new field
AclsinPathPropertiesandDownloadFileDetails.
12.9.0 (2023-11-07)
Features Added
- Features in
12.9.0-beta.1are now generally available.
12.9.0-beta.1 (2023-10-17)
Features Added
- Added new extendable enum
DataLakeAudience - Added new field
AudienceinDataLakeClientOptions
12.8.0 (2023-09-12)
Features Added
- Features in
12.8.0-beta.1and12.8.0-beta.2are now generally available.
12.8.0-beta.2 (2023-08-12)
Features Added
- TenantId can now be discovered through the service challenge response, when using a TokenCredential for authorization.
- A new property is now available on
DataLakeClientOptionscalledEnableTenantDiscovery. If set totrue, the client will attempt an initial unauthorized request to the service to prompt a challenge containing the tenantId hint.
- A new property is now available on
12.8.0-beta.1 (2023-08-08)
Features Added
- Bumped up API version to
2023-08-03. - Added support for paginated directory delete when using AAD authentication.
Bugs Fixed
- Fixed a bug where
DataLakeDirectoryClient::ListPathsandDataLakeFileSystemClient::ListPathscannot list the second page and always fail withstd::bad_function_call. - Fixed a bug where
DataLakePathClient::SetAccessControlListRecursivecrashes when operating on the second page.
12.7.0 (2023-07-11)
Features Added
- New features in
12.7.0-beta.1are now generally available.
12.7.0-beta.1 (2023-05-31)
Features Added
- Added new fields
Owner,GroupandPermissionsinPathPropertiesandDownloadFileDetails.
12.6.0 (2023-05-09)
Features Added
- New features in
12.6.0-beta.1are now generally available.
12.6.0-beta.1 (2023-04-11)
Features Added
- Added support for encryption context:
- new field
EncryptionContextinCreatePathOptions,PathItem,PathProperties,DownloadFileDetails.
- new field
12.5.0 (2023-01-10)
Features Added
- New features in
12.5.0-beta.1are now generally available.
12.5.0-beta.1 (2022-11-08)
Features Added
- Added support for encryption scope:
- Added new fields
DefaultEncryptionScopeandPreventEncryptionScopeOverrideinFileSystemItemDetails,FileSystemPropertiesandCreateFileSystemOptions. - Added new field
EncryptionScopeinPathProperties.
- Added new fields
12.4.0 (2022-11-08)
Features Added
- New features in
12.4.0-beta.1are now generally available.
12.4.0-beta.1 (2022-10-11)
Features Added
- Added support for encryption scope in SAS builder.
- Added support for customer-provided key.
- Added support for flushing when appending data to a file.
- Added some new fields in
CreatePathOptions. - New APIs:
- DataLakeServiceClient::SetProperties
- DataLakeServiceClient::GetProperties
- DataLakeFileSystemClient::ListDeletedPaths
- DataLakeFileSystemClient::UndeletePath
- DataLakeFileClient::Query
Bugs Fixed
- Fixed a bug where file/directory renaming cannot be authenticated with SAS.
- Empty file or existing file won't be created/overwritten if the file to be downloaded doesn't exist.
12.3.1 (2022-03-09)
Other Changes
- No public changes in this release.
12.3.0 (2022-02-14)
Other Changes
- Deprecated enum
LeaseDuration, useLeaseDurationTypeinstead.
12.2.0 (2021-09-08)
Breaking Changes
StartsOnandExpiresOninSignedIdentifierwere changed to nullable.
Bugs Fixed
- Fixed a bug where prefix cannot contain
&when listing files.
Other Changes
- Create less threads if there isn't too much data to transfer.
12.1.0 (2021-08-10)
Features Added
- Added
ETagandLastModifiedintoScheduleFileDeletionResult.
12.0.1 (2021-07-07)
Bug Fixes
- Fixed a bug where transactional MD5 hash was treated as blob MD5 hash when downloading partial blob.
12.0.0 (2021-06-08)
Breaking Changes
- Renamed
ContentLengthinFlushFileResulttoFileSize.
Other Changes and Improvements
- Removed
IfUnmodifiedSincefrom access conditions of setting filesystem metadata operation. - Updated some samples.
- Fixed a read consistency issue.
12.0.0-beta.11 (2021-05-19)
New Features
- Added
DataLakePathClient::SetAccessControlListRecursive(),UpdateAccessControlListRecursive()andRemoveAccessControlListRecursive().
Breaking Changes
- Added
finalspecifier to classes and structures that are are not expected to be inheritable at the moment. - Renamed
HasMorePages()in paged response toHasPage(). - Default chunk size for concurrent upload was changed to nullable.
DataLakeLeaseClient::Change()updates internal lease id.
12.0.0-beta.10 (2021-04-16)
Breaking Changes
- Removed
Azure::Storage::Files::DataLake::PackageVersion. - Renamed
GetUserDelegationKeyOptions::startsOntoStartsOn. - Replaced all paginated collection functions that have the SinglePage suffix with pageable functions returning a
PagedResponse<T>-derived type. The options are also renamed accordingly.DataLakeServiceClient::ListFileSystems().DataLakeFileSystemClient::ListPaths().DataLakeDirectoryClient::ListPaths().
- Removed
DataLakePathClient::SetAccessControlListRecursiveSinglePage(),UpdateAccessControlListRecursiveSinglePage()andRemoveAccessControlListRecursiveSinglePage().
Bug Fixes
- Rename functions always fail because
/was left out in the renamed source path.
12.0.0-beta.9 (2021-03-23)
New Features
- Added support for telemetry options.
- Added
Azure::Storage::Files::DataLake::PackageVersion.
Breaking Changes
- DataLake client constructors won't automatically convert blob url to dfs url anymore.
- String conversion functions of extensible enums were renamed from
Get()toToString(). - Moved
SecondaryHostForRetryReadsout of retry options, now it's underDataLakeClientOptions. - Changed the return types of the following APIs:
DataLakeServiceClient::GetUserDelegationKeynow returnsUserDelegationKey.DataLakeFileSystemClient::GetPropertiesnow returnsFileSystemProperties.DataLakeFileSystemClient::GetAccessPolicynow returnsFileSystemAccessPolicy.DataLakePathClient::GetPropertiesnow returnsPathProperties.DataLakePathClient::GetAccessControlListnow returnsPathAccessControlList.
- Removed
GetUserDelegationKeyResult. - Removed
DataLakefrom the names of return types and option types. - Removed
RequestIdfrom the return types. - Changed
BodyStreamparameter ofAppendfunction from pointer to reference. - Removed
PathRenameMode,PathGetPropertiesAction,PathSetAccessControlRecursiveMode,FileSystemResourceType,PathExpiryOptionsandFileSystemResourceType. - Removed
IsAccessTierInferredandAccessTierChangedOnfromPathProperties. - Renamed
LeaseDurationTypetoLeaseDuration,LeaseStateTypetoLeaseStateandLeaseStatusTypetoLeaseStatus.
12.0.0-beta.8 (2021-02-12)
Breaking Changes
- Removed
DataLakeFileSystemClient::GetPathClient. - Renamed
SetDataLakePathAccessControlRecursiveListSinglePageOptions::MaxEntriestoPageSizeHint. GetDataLakePathPropertiesResult::ServerEncryptedwas renamed toIsServerEncrypted.GetDataLakePathPropertiesResult::AccessTierInferredwas renamed toIsAccessTierInferred.HttpHeadersofDownloadDataLakeFileResultandDownloadDataLakeFileToResultwas moved intoDetails, to align with Blob service.- Removed
BreakDataLakeLeaseResult::LeaseTime. - Renamed APIs for modifying access list recursively. Used to be with pattern
AccessControlRecursiveList, now is with patternAccessControlListRecursive. - Refined options for
ScheduleDeletion, to be consistent with other APIs. - Renamed
ContentLengthinPathItemtoFileSize. - In
PathSetAccessControlRecursiveResult,DirectoriesSuccessfulis renamed toNumberOfSuccessfulDirectories,FilesSuccessfulis renamed toNumberOfSuccessfulFiles,FailureCountis renamed toNumberOfFailures. - Moved
Azure::Core::Contextout of options bag of each API, and make it the last optional parameter.
12.0.0-beta.7 (2021-02-03)
New Features
- Added
Owner,Permissions, andGrouptoGetDataLakePathAccessControlResult. DownloadDataLakeFileResultnow has a new fieldFileSize.- Added support for
GetAccessPolicyandSetAccessPolicyinDataLakeFileSystemClient. - Moved all protocol layer generated result types to
Detailsnamespace. - Renamed
FileSystemtype returned fromListDataLakeFileSystemsto beFileSystemItem. Member object nameFileSystemsis renamed toItems. - Renamed
Pathtype returned fromListDataLakePathsto bePathItem. Member object namePathsis renamed toItems. - Added support for specifying public access type when creating a file system.
- Added
DataLakeDirectoryClient::ListPathsSinglePageAPI to list DataLake paths under certain directory. - Added
Metadata,AccessType,HasImmutabilityPolicy,HasLegalHold,LeaseDuration,LeaseStateandLeaseStatustoFileSystemItem. - Added new type
LeaseDurationTypeto indicate if a lease duration is fixed or infinite. - Added
RequestIdin each return type for REST API calls, except for concurrent APIs. - Added
UpdateAccessControlListRecursiveSinglePageto update the access control recursively for a datalake path. - Added
RemoveAccessControlListRecursiveSinglePageto remove the access control recursively for a datalake path.
Breaking Changes
- Removed
GetDfsUriin all clients since they are currently implementation details. - Removed
Datasuffix forFlushDataandAppendDataand modified all related structs to align the change. DataLakePathClientcan no longer set permissions withSetAccessControl, instead, a new APISetPermissionsis created for such functionality. Renamed the original API toSetAccessControlListto be more precise.ContentRangeinDownloadDataLakeFileResultis nowAzure::Core::Http::Range.- Removed
ContentRangeinPathGetPropertiesResult. - Renamed
ContentLengthinGetDataLakePathPropertiesResultandCreateDataLakePathResulttoFileSizeto be more accurate. - Renamed
GetUritoGetUrl. - Added
DataLakeLeaseClient, all lease related APIs are moved toDataLakeLeaseClient. - Changed lease duration to be
std::chrono::seconds. - Removed
DirectoryinListPathsSinglePageOptions. - Removed unused type
AccountResourceTypeandPathLeaseAction. - Changed all previous
LeaseDurationmembers to a new type namedLeaseDurationType. startsOnparameter forGetUserDelegationKeywas changed to optional.- Removed
PreviousContinuationTokenfromListFileSystemsSinglePageResult. Concurrency,ChunkSizeandInitialChunkSizewere moved intoDownloadDataLakeFileToOptions::TansferOptions.Concurrency,ChunkSizeandSingleUploadThresholdwere moved intoUploadDataLakeFileFromOptions::TransferOptions.- Removed
RenamefromDataLakeDirectoryClientandDataLakeFileClient. Instead, addedRenameFileandRenameSubdirectorytoDataLakeDirectoryClientand addedRenameFileandRenameDirectorytoDataLakeFileSystemClient. - Rename APIs now return the client of the resource it is renaming to.
- Removed
Modefor rename operations' options, that originally controls the rename mode. Now it is fixed to legacy mode. - Changed
SetAccessControlRecursivetoSetAccessControlRecursiveListSinglePage, to mark that it is a single page operation, and removed themodeparameter, separated the modify/delete functionality to two new APIs. - Moved
SetAccessControlRecursiveListSinglePagetoDataLakePathClient. - Changed
MaxRecordtoMaxEntries,ForceFlagtoContinueOnFailureto be more accurate names. - Type for ETag was changed to
Azure::Core::ETag. - Type for
IfMatchandIfNoneMatchwas changed toAzure::Core::ETag. - Renamed
ListDataLakeFileSystemsIncludeItemtoListDataLakeFileSystemsIncludeFlags. - Removed
DataLakeDirectoryClient::DeleteandDataLakeDirectoryClient::DeleteIfExists. AddedDataLakeDirectoryClient::DeleteEmpty,DataLakeDirectoryClient::DeleteEmptyIfExists,DataLakeDirectoryClient::DeleteRecursiveandDataLakeDirectoryClient::DeleteRecursiveIfExistsinstead. - Removed
ContinuationTokeninDeleteDataLakePathResultandDeleteDataLakeDirectoryResult, as they will never be returned for HNS enabled accounts. - Renamed
DataLakeFileClient::ReadtoDataLakeFileClient::Download. Also changed the memberAzure::Core::Nullable<bool> RangeGetContentMd5in the option to beAzure::Core::Nullable<HashAlgorithm> RangeHashAlgorithminstead. - Moved some less commonly used properties into a details data structure for
Download,DownloadToandListFileSystemsSinglePageAPI, and enriched the content of the mentioned details data structure.
Other Changes and Improvements
- Changed
DataLakeFileClient::Flush'sendingOffsetparameter's name toposition. - Renamed
DataLakePathClient::GetAccessControlstoDataLakePathClient::GetAccessControlList. - Removed unused parameters, options, results and functions in protocol layer.
12.0.0-beta.6 (2021-01-14)
New Features
- Support setting DataLake SAS permission with a raw string.
- Added support for
CreateIfNotExistsandDeleteIfExistsfor FileSystem, Path, Directory and File clients.
Breaking Changes
- Moved DataLake SAS into
Azure::Storage::Sasnamespace. EncrytionKeySha256are changed to binary (std::vector<uint8_t>).- Replaced all transactional content MD5/CRC64 with the
ContentHashstruct. DataLakeHttpHeadersis renamed toPathHttpHeaders, and now containsContentHashfor the resource.- All date time related strings are now changed to
Azure::Core::DateTimetype. CreationTimeis renamed toCreatedOn.AccessTierChangeTimeis renamed toAccessTierChangedOn.CopyCompletionTimeis renamed toCopyCompletedOn.ExpiryTimeis renamed toExpiresOn.LastAccessTimeis renamed toLastAccessedOn.- Made version strings private by moving them into the
Detailsnamespace. - Renamed all functions and structures that could retrieve partial query results from the server to have
SinglePagesuffix instead ofSegmentsuffix. ReadFileResultnow haveContentRangeas string.ReadFileOptionsnow haveAzure::Core::Http::Rangeinstead ofContent-LengthandOffset.- Replaced scoped enums that don't support bitwise operations with extensible enum.
ListPathsis renamed toListPathsSinglePageand its related return type and options are also renamed accordingly.- Added
DataLakeprefix toFileSystemClient,PathClient,DirectoryClient, andFileClienttypes. - FileSystems, Path, Directory and File related result types and options types now have a
DataLakeprefix. For example,GetFileSystemPropertiesResultis changed toGetDataLakeFileSystemPropertiesResult. - Renamed
GetSubDirectoryClienttoGetSubdirectoryClient. - Removed
NamespaceEnabledfield inCreateDataLakeFileSystemResult.
12.0.0-beta.5 (2020-11-13)
Breaking Changes
- Moved header
azure/storage/files/datalake/datalake.hpptoazure/storage/files/datalake.hpp. - Moved returning model types and related functions in
Azure::Storage::Files::DataLaketoAzure::Storage::Files::DataLake::Models, and made other code private by moving it intoAzure::Storage::Files::DataLake::Details. - Renamed
Azure::Storage::Files::DataLake::ServiceClienttoAzure::Storage::Files::DataLake::DataLakeServiceClient.
1.0.0-beta.4 (2020-10-16)
New Features
- Service version is now 2020-02-10.
- Added support for SAS generation in DataLake service.
- Added support for
FileClient::ScheduleDeletion. - Added support for
DirectoryClient::SetAccessControlRecursive. PathAppendDataResultnow returnsContentMD5,ContentCrc64andIsServerEncrypted.
Breaking Changes
CreateFromConnectionStringnow accepts unencoded file, path and directory name.ETagandLastModifiedis nowstd::stringinstead ofAzure::Core::Nullable<std::string>inCreateDirectoryResult,CreateFileResultandCreatePathResult.Continuationis renamed toContinuationTokenin options and returned result objects.
Bug Fixes
- Unencoded FileSystem/File/Path/Directory name is now encoded.
1.0.0-beta.2 (2020-09-09)
New Features
- Release based on azure-core_1.0.0-beta.1.
1.0.0-beta.1 (2020-08-28)
New Features
- Added support for DataLake features:
- ServiceClient::ListFileSystems
- ServiceClient::GetUserDelegationKey
- FileSystemClient::Create
- FileSystemClient::Delete
- FileSystemClient::SetMetadata
- FileSystemClient::GetProperties
- FileSystemClient::ListPaths
- PathClient::Create
- PathClient::Delete
- PathClient::SetAccessControl
- PathClient::SetHttpHeaders
- PathClient::GetProperties
- PathClient::GetAccessControls
- PathClient::SetMetadata
- FileClient::AppendData
- FileClient::FlushData
- FileClient::Create
- FileClient::Rename
- FileClient::Delete
- FileClient::Read
- FileClient::UploadFromBuffer
- FileClient::UploadFromFile
- FileClient::DownloadToBuffer
- FileClient::DownloadToFile
- DirectoryClient::GetFileClient
- DirectoryClient::Create
- DirectoryClient::Rename
- DirectoryClient::Delete
- Support for Lease related operations.