<commit_before><<<<<<< HEAD
Changes in 9.x.x:
- Tables: Removed dependencies on OData libraries.  Added full async parsing to table API's.
=======
Changes in 8.7.0:
- Blobs: Parsing the snapshot parameter when creating a CloudBlockBlob from a URI is now case insensitive
- Blobs (Desktop): Added a new API supporting downloading a blob to a file by making concurrent service requests.
- Blobs (Desktop): Fixed a race-condition where cancelling a blob upload could result in deadlock.
- Blobs: Fixed StorageException when storing encrypted blobs with Formatting.Indented set in default JsonSerializerSettings.
- Blobs/Files: Added support for progress notification in async upload and download APIs.

Changes in 8.6.0 :
- Tables : Added support for Byte type property in TableEntity Flatten/ConvertBack methods.
- Blobs : Added support for the last time blobTier was modified.

Changes in 8.5.0 :
- Files: Added support for creating the snapshot of a share. See the service documentation for more information on how to use this API.
>>>>>>> cd8d5e200c8dda2a20c71acbd0b0a21eae85b739

Changes in 8.4.0 :
- BlockBlobs: For Blob Storage Accounts, added support for getting and setting the tier on a block blob.
- All: Added a property called CustomUserAgent to the OperationContext class to provide the option for users to prepend a customized value to the existing UserAgent header value.

Changes in 8.3.0 :
- All(Netstandard): Updated the hashing algorithm to IncrementalHash instead of the original method which required buffering the data for MD5 calculations.
- All: Fixed a race condition in the resume-download logic where a failure during downloads could lead to corrupted data.
- Tables: Removed dependencies on OData libraries.  Added full async parsing to table API's.

Changes in 8.2.1 :
- All: Fixed a bug where empty metadata headers would lead to an infinite loop when trying to list blobs on a container.

Changes in 8.2.0 :
- All: Support for 2017-04-17 REST version. Please see our REST API documentation and blogs for information about the related added features. If you are using the Storage Emulator, please update to Emulator version 5.2.
- Files: Added support for server side encryption.
- PageBlobs: For Premium Accounts only, added support for getting and setting the tier on a page blob. The tier can also be set when creating or copying from an existing page blob.
- Tables (NetCore): Fixed a bug where the empty etag added to the table delete operation would throw an exception on Xamarin/Mono. 
- All: Fixed a bug where calling OpenWrite with an IfNotExists access condition on an existing block blob only fails when the blob is committed. Now it fails with error 409 as soon as OpenWrite is called.
- Files (WinRT/NetCore): Calling CreateIfNotExistsAsync on a root directory no longer throws the error 405. It returns false if the share exists, or throws 404 if not.
- All: Connection string support expanded to allow AccountName to be specified with SharedAccessSignature and DefaultEndpointsProtocol.  In this case, SharedAccessSignature is used for credentials, while having both DefaultEndpointsProtocol and AccountName allows the library to infer a set of default endpoints.  Additionally, we have added support for BlobSecondaryEndpoint, QueueSecondaryEndpoint, TableSecondaryEndpoint, and FileSecondaryEndpoint.  Specifying a secondary endpoint requires the specification of the corresponding primary.
- All: The use of DefaultEndpointsProtocol in a connection string is now optional in the case where endpoints would be automatically generated; if missing, a value of https will be inferred.  When the parsed account settings in such a case are used to generate a connection string, the value of DefaultEndpointsProtocol will be explicitly included.
- Tables: Added TableEntityAdapter<T> class to allow writing and reading simple or complex objects to Azure Table Storage without the need to implement ITableEntity interface or inherit from TableEntity class.

Changes in 8.1.4 :
- All (Desktop): Fixed a regression in the executor caused by disposing the SendStream during parallel operations.<commit_msg>[split] Remove merge markers from common changelog<commit_after>Changes in 8.7.0:
- Blobs: Parsing the snapshot parameter when creating a CloudBlockBlob from a URI is now case insensitive
- Blobs (Desktop): Added a new API supporting downloading a blob to a file by making concurrent service requests.
- Blobs (Desktop): Fixed a race-condition where cancelling a blob upload could result in deadlock.
- Blobs: Fixed StorageException when storing encrypted blobs with Formatting.Indented set in default JsonSerializerSettings.
- Blobs/Files: Added support for progress notification in async upload and download APIs.

Changes in 8.6.0 :
- Tables : Added support for Byte type property in TableEntity Flatten/ConvertBack methods.
- Blobs : Added support for the last time blobTier was modified.

Changes in 8.5.0 :
- Files: Added support for creating the snapshot of a share. See the service documentation for more information on how to use this API.


Changes in 8.4.0 :
- BlockBlobs: For Blob Storage Accounts, added support for getting and setting the tier on a block blob.
- All: Added a property called CustomUserAgent to the OperationContext class to provide the option for users to prepend a customized value to the existing UserAgent header value.

Changes in 8.3.0 :
- All(Netstandard): Updated the hashing algorithm to IncrementalHash instead of the original method which required buffering the data for MD5 calculations.
- All: Fixed a race condition in the resume-download logic where a failure during downloads could lead to corrupted data.
- Tables: Removed dependencies on OData libraries.  Added full async parsing to table API's.

Changes in 8.2.1 :
- All: Fixed a bug where empty metadata headers would lead to an infinite loop when trying to list blobs on a container.

Changes in 8.2.0 :
- All: Support for 2017-04-17 REST version. Please see our REST API documentation and blogs for information about the related added features. If you are using the Storage Emulator, please update to Emulator version 5.2.
- Files: Added support for server side encryption.
- PageBlobs: For Premium Accounts only, added support for getting and setting the tier on a page blob. The tier can also be set when creating or copying from an existing page blob.
- Tables (NetCore): Fixed a bug where the empty etag added to the table delete operation would throw an exception on Xamarin/Mono. 
- All: Fixed a bug where calling OpenWrite with an IfNotExists access condition on an existing block blob only fails when the blob is committed. Now it fails with error 409 as soon as OpenWrite is called.
- Files (WinRT/NetCore): Calling CreateIfNotExistsAsync on a root directory no longer throws the error 405. It returns false if the share exists, or throws 404 if not.
- All: Connection string support expanded to allow AccountName to be specified with SharedAccessSignature and DefaultEndpointsProtocol.  In this case, SharedAccessSignature is used for credentials, while having both DefaultEndpointsProtocol and AccountName allows the library to infer a set of default endpoints.  Additionally, we have added support for BlobSecondaryEndpoint, QueueSecondaryEndpoint, TableSecondaryEndpoint, and FileSecondaryEndpoint.  Specifying a secondary endpoint requires the specification of the corresponding primary.
- All: The use of DefaultEndpointsProtocol in a connection string is now optional in the case where endpoints would be automatically generated; if missing, a value of https will be inferred.  When the parsed account settings in such a case are used to generate a connection string, the value of DefaultEndpointsProtocol will be explicitly included.
- Tables: Added TableEntityAdapter<T> class to allow writing and reading simple or complex objects to Azure Table Storage without the need to implement ITableEntity interface or inherit from TableEntity class.

Changes in 8.1.4 :
- All (Desktop): Fixed a regression in the executor caused by disposing the SendStream during parallel operations.
{'fraction_non_alphanumeric': 0.03993119547856002, 'fraction_numerical': 0.013392308637424745, 'mean_word_length': 4.637119113573407, 'pattern_counts': {'":': 0, '<': 12, '<?xml version=': 0, '>': 12, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1983173', 'n_tokens_mistral': 2025, 'n_tokens_neox': 1861, 'n_words': 1174}