From 586d0ec7bf4dfa7b623542d4b5a23135d5f93adf Mon Sep 17 00:00:00 2001 From: Harsha Nalluru Date: Tue, 22 Oct 2019 15:22:46 -0700 Subject: [PATCH] [Storage] Copy breaking changes from changelog (#5729) * copy breakingchanges from changelog * polyfill breaking change --- sdk/storage/storage-blob/BreakingChanges.md | 54 ++++++++++++++++++-- sdk/storage/storage-blob/ChangeLog.md | 2 +- sdk/storage/storage-file/BreakingChanges.md | 23 ++++++++- sdk/storage/storage-file/ChangeLog.md | 2 +- sdk/storage/storage-queue/BreakingChanges.md | 27 ++++++++-- sdk/storage/storage-queue/ChangeLog.md | 2 +- 6 files changed, 95 insertions(+), 15 deletions(-) diff --git a/sdk/storage/storage-blob/BreakingChanges.md b/sdk/storage/storage-blob/BreakingChanges.md index 515a30e183bc..f9c493abd1c3 100644 --- a/sdk/storage/storage-blob/BreakingChanges.md +++ b/sdk/storage/storage-blob/BreakingChanges.md @@ -1,10 +1,54 @@ # Breaking Changes -### 2019.11 12.0.0-preview.5 - -- `IPRange` is renamed to `SasIPRange`. - -- `Models` is no longer exported in public API surface. Instead generated model types required by the public API are explicitly re-exported. In the case where convenience layer already defined a type with conflicting name, the model type is aliased with `Model` suffix. +## 2019.11 12.0.0-preview.5 + +- [Breaking] `IPRange` is renamed to `SasIPRange`. [PR #5551](https://github.com/Azure/azure-sdk-for-js/pull/5551) +- [Breaking] `Models` is no longer exported in public API surface. Instead generated model types required by the public API are explicitly re-exported. In the case where convenience layer already defined a type with conflicting name, the model type is aliased with `Model` suffix. [PR #5567](https://github.com/Azure/azure-sdk-for-js/pull/5567) +- [Breaking] Cancelling an operation now throws a standardized error with the name `AbortError`. [PR #5633](https://github.com/Azure/azure-sdk-for-js/pull/5663) +- [Breaking] `blobName` on `AppendBlobClient`, `BlobClient`, `BlockBlobClient` and `PageBlobClient` is renamed to `name`. [PR #5613](https://github.com/Azure/azure-sdk-for-js/pull/5613) +- [Breaking] New `BlobBatchClient` allowing batched requests to the Azure Storage Blob service. [PR #5634](https://github.com/Azure/azure-sdk-for-js/pull/5634) + - Renamed `BatchRequest` to `BlobBatch`, flattened `BatchDeleteRequest` and `BatchSetTierRequest` into `BlobBatch` + - Moved `submitBatch` code from `BlobServiceClient` into new `BlobBatchClient`, created new `deleteBlobs` and `setBlobsAccessTier` helpers on `BlobBatchClient` + `BlobBatchClient` contains `setBlobsAccessTier`, `submitBatch` and `deleteBlobs` helper methods. `BlobBatch` represents an aggregated set of operations on blobs, `delete` and `setAccessTier` functionalities are supported currently. +- [Breaking] Flattened the conditions type `BlobRequestConditions` instead of current nested one. It replaces `ContainerAccessConditions` and `BlobAccessConditions`. + In addition, various conditions fields are renamed into simply `conditions` except `sourceModifiedAccessConditions` which is renamed to `sourceConditions`. + This makes it more convenient to pass in conditional request options. [PR #5672](https://github.com/Azure/azure-sdk-for-js/pull/5672). + + An example: + + ```js + { + blobAccessConditions: { + modifiedAccessConditions: { + ifMatch: uploadResponse.eTag + } + } + ``` + + turns into + + ```js + { + conditions: { + ifMatch: uploadResponse.eTag + } + ``` + +- [Breaking] `eTag` attribute is renamed to `etag`. [PR #5674](https://github.com/Azure/azure-sdk-for-js/pull/5674) +- [Breaking] `body` field from `RestError` Object in core-http Library is removed, the `response` property on the error will now have the `parsedBody` & `headers` along with raw body & headers that are already present. PRs [#5670](https://github.com/Azure/azure-sdk-for-js/pull/5670), [#5437](https://github.com/Azure/azure-sdk-for-js/pull/5437) + - Errors from the storage service can be seen in an extra field `details` with the expected error code. [#5688](https://github.com/Azure/azure-sdk-for-js/pull/5688) +- [Breaking] `progress` callback in the option bags of all the helper methods is renamed to `onProgress`. [PR #5676](https://github.com/Azure/azure-sdk-for-js/pull/5676) +- [Breaking] Consolidated `PageRange` and `ClearRange` types. They now have `offset` and `count` attributes as opposed to the older `start` and `end` attributes. + [PR #5632](https://github.com/Azure/azure-sdk-for-js/pull/5632) +- [Breaking] Type of the `permissions` attribute in the options bag `BlobSASSignatureValues` to be passed into `generateBlobSASQueryParameters` is changed to `BlobSASPermissions` from type `string`. [PR #5626](https://github.com/Azure/azure-sdk-for-js/pull/5626) + - Similarly, `AccountSASPermissions` for `generateAccountSASQueryParameters` instead of type `string`. + - Example - permissions attribute in `generateBlobSASQueryParameters` + - `permissions: BlobSASPermissions.parse("racwd").toString()` changes to `BlobSASPermissions.parse("racwd")` +- [Breaking] Appropriate attribute renames in all the interfaces. PRs [#5580](https://github.com/Azure/azure-sdk-for-js/pull/5580),[#5630](https://github.com/Azure/azure-sdk-for-js/pull/5630) + - Example - `nextMarker` -> `continuationToken`, `HTTPClient` -> `HttpClient`, `permission` -> `permissions`, `parallelism` -> `concurrency` +- [Breaking] `encrypted` attribute is removed from `BlobMetadata` interface. [PR #5612](https://github.com/Azure/azure-sdk-for-js/pull/5612) +- [Breaking] Return type of `downloadToBuffer` helper method on `BlobClient` is changed to `Promise` from `Promise` [PR #5624](https://github.com/Azure/azure-sdk-for-js/pull/5624) +- [Breaking] IE11 needs `Object.assign` polyfill loaded. [PR #5727](https://github.com/Azure/azure-sdk-for-js/pull/5727) ### 2019.10 Version 12.0.0-preview.4 diff --git a/sdk/storage/storage-blob/ChangeLog.md b/sdk/storage/storage-blob/ChangeLog.md index bf7407c23692..bc1b33f13654 100644 --- a/sdk/storage/storage-blob/ChangeLog.md +++ b/sdk/storage/storage-blob/ChangeLog.md @@ -58,7 +58,7 @@ - (with proxyURI) `UseDevelopmentStorage=true;DevelopmentStorageProxyUri=proxyURI` - [Breaking] `encrypted` attribute is removed from `BlobMetadata` interface. [PR #5612](https://github.com/Azure/azure-sdk-for-js/pull/5612) - [Breaking] Return type of `downloadToBuffer` helper method on `BlobClient` is changed to `Promise` from `Promise` [PR #5624](https://github.com/Azure/azure-sdk-for-js/pull/5624) -- [Breaking] IE11 needs `Object.assign` polyfill loaded. +- [Breaking] IE11 needs `Object.assign` polyfill loaded. [PR #5727](https://github.com/Azure/azure-sdk-for-js/pull/5727) ## 2019.10 12.0.0-preview.4 diff --git a/sdk/storage/storage-file/BreakingChanges.md b/sdk/storage/storage-file/BreakingChanges.md index 296aed51ef98..927259c2db2b 100644 --- a/sdk/storage/storage-file/BreakingChanges.md +++ b/sdk/storage/storage-file/BreakingChanges.md @@ -1,8 +1,27 @@ # Breaking Changes -### 2019.10 12.0.0-preview.5 +## 2019.10 12.0.0-preview.5 -- `IPRange` is renamed to `SasIPRange`. +- [Breaking] `IPRange` is renamed to `SasIPRange`. [PR #5551](https://github.com/Azure/azure-sdk-for-js/pull/5551) +- [Breaking] `Models` is no longer exported in public API surface. Instead generated model types required by the public API are explicitly re-exported. [PR #5532](https://github.com/Azure/azure-sdk-for-js/pull/5532) +- [Breaking] Cancelling an operation now throws a standardized error with the name `AbortError`. [PR #5633](https://github.com/Azure/azure-sdk-for-js/pull/5663) +- [Breaking] `filePath` is on `FileClient` is renamed to `path`. `dirPath` is added to `DirectoryClient` is renamed to `path`. [PR #5613](https://github.com/Azure/azure-sdk-for-js/pull/5613) +- [Breaking] `body` field from `RestError` Object in core-http Library is removed, the `response` property on the error will now have the `parsedBody` & `headers` along with raw body & headers that are already present. PRs [#5670](https://github.com/Azure/azure-sdk-for-js/pull/5670), [#5437](https://github.com/Azure/azure-sdk-for-js/pull/5437) + - Errors from the storage service can be seen in an extra field `details` with the expected error code. [#5688](https://github.com/Azure/azure-sdk-for-js/pull/5688) +- [Breaking] `progress` callback in the option bags of all the helper methods is renamed to `onProgress`. [PR #5676](https://github.com/Azure/azure-sdk-for-js/pull/5676) +- [Breaking] Type of the `permissions` attribute in the options bag `FileSASSignatureValues` to be passed into `generateFileSASQueryParameters` is changed to `FileSASPermissions` from type `string`. [PR #5626](https://github.com/Azure/azure-sdk-for-js/pull/5626) + - Similarly, `AccountSASPermissions` for `generateAccountSASQueryParameters` instead of type `string`. + - Example - permissions attribute in `generateFileSASQueryParameters` + - `permissions: FileSASPermissions.parse("racwd").toString()` changes to `FileSASPermissions.parse("racwd")` +- [Breaking] `sourceModifiedAccessConditions` attribute in `FileUploadRangeFromURLOptions` is renamed to `sourceConditions`. [PR #5682](https://github.com/Azure/azure-sdk-for-js/pull/5682) +- Renames for following Options interfaces. [PR #5650](https://github.com/Azure/azure-sdk-for-js/pull/5650) + - `UploadStreamToAzureFileOptions` -> `FileUploadStreamOptions`, + - `UploadToAzureFileOptions` -> `FileParallelUploadOptions`, + - `DownloadFromAzureFileOptions` -> `FileDownloadToBufferOptions` +- [Breaking] Appropriate attribute renames in all the interfaces [PR #5610](https://github.com/Azure/azure-sdk-for-js/pull/5610) + - Example - `nextMarker` -> `continuationToken`, `HTTPClient` -> `HttpClient`, `permission` -> `permissions`, `parallelism` -> `concurrency` +- [Breaking] `forceCloseHandlesSegment` is not exposed from the library in favour of the new method `forceCloseAllHandles` on `FileClient` and `DirectoryClient`. [PR #5620](https://github.com/Azure/azure-sdk-for-js/pull/5620) +- [Breaking] IE11 needs `Object.assign` polyfill loaded. [PR #5727](https://github.com/Azure/azure-sdk-for-js/pull/5727) ### 2019.10 12.0.0-preview.4 diff --git a/sdk/storage/storage-file/ChangeLog.md b/sdk/storage/storage-file/ChangeLog.md index be33bf79521b..1c39649deeff 100644 --- a/sdk/storage/storage-file/ChangeLog.md +++ b/sdk/storage/storage-file/ChangeLog.md @@ -24,7 +24,7 @@ - [Breaking] Appropriate attribute renames in all the interfaces [PR #5610](https://github.com/Azure/azure-sdk-for-js/pull/5610) - Example - `nextMarker` -> `continuationToken`, `HTTPClient` -> `HttpClient`, `permission` -> `permissions`, `parallelism` -> `concurrency` - [Breaking] `forceCloseHandlesSegment` is not exposed from the library in favour of the new method `forceCloseAllHandles` on `FileClient` and `DirectoryClient`. [PR #5620](https://github.com/Azure/azure-sdk-for-js/pull/5620) -- [Breaking] IE11 needs `Object.assign` polyfill loaded. +- [Breaking] IE11 needs `Object.assign` polyfill loaded. [PR #5727](https://github.com/Azure/azure-sdk-for-js/pull/5727) ## 2019.10 12.0.0-preview.4 diff --git a/sdk/storage/storage-queue/BreakingChanges.md b/sdk/storage/storage-queue/BreakingChanges.md index 92c8ddecc723..5dd3ee4ec172 100644 --- a/sdk/storage/storage-queue/BreakingChanges.md +++ b/sdk/storage/storage-queue/BreakingChanges.md @@ -1,11 +1,28 @@ # Breaking Changes -### 2019.11 12.0.0-preview.5 +## 2019.11 12.0.0-preview.5 -- `IPRange` is renamed to `SasIPRange`. - -- `Models` is no longer exported in public API surface. Instead generated model types required by the public API are explicitly re-exported. - For example, after this change, `Models.QueueItem` becomes `QueueItem`. +- [Breaking] Major API changes for the `@azure/storage-queue` package. + - Flattened Client Hierarchy - `QueueClient` is flattened into `QueueServiceClient`, `MesagesClient` is renamed to `QueueClient`, `MessageIdClient` is flattened into the new `QueueClient`. [PR #5579](https://github.com/Azure/azure-sdk-for-js/pull/5579) + - `enqueueMessage` is renamed as `sendMessage`, `dequeueMessages` is renamed to `receiveMessages` + - The new `QueueServiceClient` has `createQueue` and `deleteQueue` helper methods. + - Names of `Options` and `Responses` as per the new hierarchy of clients. [PR #5617](https://github.com/Azure/azure-sdk-for-js/pull/5617) + - Example - `MessagesClearOptions` is renamed to `QueueClearMessagesOptions`, `MessagesEnqueueResponse` is renamed to `QueueSendMessageResponse`. + - `DequeuedMessageItem` is renamed to `ReceivedMessageItem` [PR #5661](https://github.com/Azure/azure-sdk-for-js/pull/5661) +- [Breaking] `IPRange` is renamed to `SasIPRange`. [PR #5551](https://github.com/Azure/azure-sdk-for-js/pull/5551) +- [Breaking] `Models` is no longer exported in public API surface. Instead generated model types required by the public API are explicitly re-exported and aliased with `Model` suffix. + For example, after this change, `Models.QueueItem` becomes `QueueItemModel`. [PR #5534](https://github.com/Azure/azure-sdk-for-js/pull/5534) +- [Breaking] Cancelling an operation now throws a standardized error with the name `AbortError`. [PR #5633](https://github.com/Azure/azure-sdk-for-js/pull/5663) +- [Breaking] `queueName` on `QueueClient` is renamed to `name`. [PR #5613](https://github.com/Azure/azure-sdk-for-js/pull/5613) +- [Breaking] `body` field from `RestError` Object in core-http Library is removed, the `response` property on the error will now have the `parsedBody` & `headers` along with raw body & headers that are already present. PRs [#5670](https://github.com/Azure/azure-sdk-for-js/pull/5670), [#5437](https://github.com/Azure/azure-sdk-for-js/pull/5437) + - Errors from the storage service can be seen in an extra field `details` with the expected error code. [#5688](https://github.com/Azure/azure-sdk-for-js/pull/5688) +- [Breaking] Type of the `permissions` attribute in the options bag `FileSASSignatureValues` to be passed into `generateQueueSASQueryParameters` is changed to `QueueSASPermissions` from type `string`. [PR #5626](https://github.com/Azure/azure-sdk-for-js/pull/5626) + - Similarly, `AccountSASPermissions` for `generateAccountSASQueryParameters` instead of type `string`. + - Example - permissions attribute in `generateQueueSASQueryParameters` + - `permissions: QueueSASPermissions.parse("racwd").toString()` changes to `QueueSASPermissions.parse("racwd")` +- [Breaking] Appropriate attribute renames in all the interfaces [PR #5629](https://github.com/Azure/azure-sdk-for-js/pull/5629) + - Example - `nextMarker` -> `continuationToken`, `HTTPClient` -> `HttpClient`, `permission` -> `permissions` +- [Breaking] IE11 needs `Object.assign` polyfill loaded. [PR #5727](https://github.com/Azure/azure-sdk-for-js/pull/5727) ### 2019.10 Version 12.0.0-preview.3 diff --git a/sdk/storage/storage-queue/ChangeLog.md b/sdk/storage/storage-queue/ChangeLog.md index 26862d4c0a2c..34a6ac0fc4e7 100644 --- a/sdk/storage/storage-queue/ChangeLog.md +++ b/sdk/storage/storage-queue/ChangeLog.md @@ -28,7 +28,7 @@ - emulator connection string shorthands are supported - `UseDevelopmentStorage=true` - (with proxyURI) `UseDevelopmentStorage=true;DevelopmentStorageProxyUri=proxyURI` -- [Breaking] IE11 needs `Object.assign` polyfill loaded. +- [Breaking] IE11 needs `Object.assign` polyfill loaded. [PR #5727](https://github.com/Azure/azure-sdk-for-js/pull/5727) ## 2019.10 12.0.0-preview.4