Skip to content

Storage Client Library 4.0.0

Compare
Choose a tag to compare
released this 12 May 22:44
· 741 commits to master since this release

Changes in 4.0.0 :

  • Files: Added support for File service.
  • All: RequestResult tracks Ingress and Egress Bytes for all requests.
  • All: Get{BlockBlob|PageBlob|Directory|Container|Queue|Table}Reference always treat the string parameter as a relative address.
  • All: ServerTimeout is set to null by default. Therefore, "timeout" query parameter will not be sent to the server if ServerTimeout is not set by the user.
  • All: Renamed DoesServiceRequest to DoesServiceRequestAttribute.
  • All: Added DefaultRequestOptions to the Service Clients.
  • All: Deprecated all service client request options properties (RetryPolicy, LocationMode, ServerTimeout, MaximumExecutionTime, SingleBlobUploadThresholdInBytes, ParallelOperationThreadCount, and TablePayloadFormat) via the Obsolete attribute.
  • All: No longer shipping the WindowsAzure.Storage.Table-Preview package or the WindowsAzure.Storage-Preview package; everything is included in the WindowsAzure.Storage RTM package.
  • All: Introduced AnalyticsClient and related entity types to simplify downloading logging and metrics data.
  • All: MultiBufferMemoryStream, the BufferManager-aware high performance memory stream, is public.
  • All: Shared Access Signature requests use the api-version query parameter instead of the x-ms-version header.
  • All: Validated that the maxResults parameter passed into any List operation (eg ListBlobs, ListQueues, etc) is either null or has a positive value.
  • All (RT): The RT libraries have been merged into a single dll. The winmd is no longer created. Code has been moved from //Lib/WindowsRuntimeTable to //Lib/WindowsRuntime/Table.
  • All: Deprecated SharedKeyLiteAuthenticationHandler, use SharedKeyAuthenticationHandler instead.
  • All: SharedKeyAuthenticationHandler.SignRequest does not add x-ms-date header if already present.
  • Blobs: Update blob length only in APIs where the server includes the x-ms-blob-content-length or Content-Length header in the response.
  • Blobs: Renamed CloudBlobDirectory.GetSubdirectoryReference to CloudBlobDirectory.GetDirectoryReference.
  • Blobs: Changed the deprecated ParallelOperationThreadCount, SingleBlobUploadThresholdInBytes, and LocationMode on the BlobClient to nullables.
  • Blobs: Fixed an issue that allowed whitespace metadata values to be set.
  • Blobs: Changed the type of exception thrown to ArgumentNullException when a null prefix is passed to the ListBlobs method.
  • Queues: Changed the deprecated LocationMode on the QueueClient to a nullable.
  • Queues: Changed the visibility of QueueRequest.WriteMessageContent method to public.
  • Queues: Removed the CloudQueueClient(Uri) constructor because queues don't support anonymous access. The correct usage is to use the CloudQueueClient(Uri, StorageCredentials) constructor instead.
  • Tables: Changed the deprecated PayloadFormat and LocationMode on the TableClient to nullables.
  • Tables: Deprecated the DataServices namespace via the Obsolete attribute.
  • Tables: TableEntity is serializable via the ISerializable interface.
  • Tables: Made the DateTime public in the EntityProperty class.
  • Tables: Removed the CloudTableClient(Uri) constructor because tables don't support anonymous access. The correct usage is to use the CloudTableClient(Uri, StorageCredentials) constructor instead.
  • Tables: CloudTable(Uri) correctly parses partition key and row key limit values from passed in URLs with SAS tokens.
  • Tables (RT): Windows RT class "TableBatchOperationExtensions" no longer exists; functionality has been moved to methods in the TableBatchOperation class.
  • Tables (RT): Windows RT class "CloudTableExtensions" no longer exists; functionality has been moved to methods in the CloudTable class.
  • Tables (RT): Windows RT class "TableQueryExtensions" no longer exists; functionality has been moved to methods in the TableQuery class.
  • Tables (RT): Windows RT class "TableOperationFactory" no longer exists; functionality has been moved to methods in the TableOperation class.