Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
182 commits
Select commit Hold shift + click to select a range
bfe654e
Merge pull request #110 from JasonYang-MSFT/master
vinjiang Dec 27, 2016
455e349
initial commit for large block blob support
hanzhumsft Dec 20, 2016
bdbbcfc
1.The public access level of a container is now returned from the Lis…
Feb 8, 2017
4bc2044
Support prefix in list directory and files API
Feb 10, 2017
32b2450
Fix various issues in retry logic and basic_hash_wrapper_streambuf.
Feb 15, 2017
7567562
Validate using If-None-Match: * will now fail when reading a blob.
Feb 15, 2017
a80bba6
Support stored content md5 property when requesting a range of a blob…
Feb 16, 2017
37c3ec1
Implement the Incremental Copy Page Blob API.
Feb 20, 2017
d7bf2a9
Fixed the bug that _MSC_VER in user agent
JasonYang-MSFT Jan 4, 2017
f5cd2b4
Changed constant strings' type from * to [].
JasonYang-MSFT Jan 4, 2017
02cae29
remove extra space
JasonYang-MSFT Jan 5, 2017
243e4bc
replace "" with <> in sample code
JasonYang-MSFT Feb 21, 2017
d873b41
Fixed the build issue for MFC/ATL projects caused by macro "max"
JasonYang-MSFT Feb 22, 2017
b75666e
Fixed the issuse that does not work with v141 toolset
JasonYang-MSFT Feb 24, 2017
ba1c54a
Bump up version to 3.0
Feb 28, 2017
5414542
Merge pull request #117 from achie-liang/master
vinjiang Mar 7, 2017
b396a65
Fixed the bug that client will overwrite default retry poilcy.
JasonYang-MSFT Apr 18, 2017
2e3412b
Fixed the bug in parallel download when offset not zero.
JasonYang-MSFT Apr 18, 2017
4fa748c
Fix error in get blob properties when value in x-ms-copy-source is no…
Oct 31, 2017
1eac295
Upgrade version to 3.0.1
JasonYang-MSFT Nov 15, 2017
f3f31dd
Fixed #132 build issue caused by macro min
JasonYang-MSFT Nov 17, 2017
f61c254
Throw exception to warn on the conflict between primary_only and down…
JasonYang-MSFT Nov 17, 2017
76a32c8
Upgrade to 3.1.0 and fixed a script.
JasonYang-MSFT Nov 17, 2017
67574af
Updated Readme and changelog
JasonYang-MSFT Nov 17, 2017
ee6b95c
Fixed two bugs that file share ETag not updated after quota resize an…
JasonYang-MSFT Nov 27, 2017
f5f483c
Added a script ot inject build number.
JasonYang-MSFT Nov 27, 2017
f465f7a
Added build script
JasonYang-MSFT Nov 27, 2017
2f825bd
Fixed the bug that file LMT not updated after set metadata.
JasonYang-MSFT Nov 28, 2017
bfb7387
Updated change log for bug fixs.
JasonYang-MSFT Dec 4, 2017
edee348
Fixed a test issue that server_encrypted property is checked on uploa…
JasonYang-MSFT Dec 5, 2017
9d39de1
Updated Doxyfile to 3.1.0
JasonYang-MSFT Dec 8, 2017
eae40c9
Export methods to set/get the ambient pplx scheduler (#148)
chakrab-msft Feb 7, 2018
7e9cd85
Fixed #144 and #145 parallel range download may write passed the end …
JasonYang-MSFT Dec 19, 2017
0d0db5c
Added support for Azure Storage Archive feature and updated service v…
katmsft Feb 1, 2018
d0c91b6
Changed version from 3.1.0 to 3.1.1
katmsft Feb 7, 2018
e35538f
Resolved an issue where build fails in VS2013
katmsft Feb 7, 2018
754bfac
Added server_encrypted for cloud_file_properties and cloud_directory_…
katmsft Feb 9, 2018
18c2993
Update version number from 3.1.1 to 3.2.0 for official release.
katmsft Feb 28, 2018
d78346b
Resolved an issue where file resize with 0 fails due to code logic.
katmsft Feb 28, 2018
98fca4a
Resolved some issues when reviewed on Github.
katmsft Mar 5, 2018
288d130
Upgrade version to 3.2.1 and resolve nuget not comply issue
katmsft Mar 9, 2018
b484083
Resolved a issue when building nuget package with .nuspec file
katmsft Mar 16, 2018
9ff4abb
Modified changelog for 3.2.1 release
katmsft Mar 19, 2018
860905b
Add more compiler setting to unblock ApiScanning
mildwolf Apr 12, 2018
3f99d73
Fixed an issue where blob names that only contains space cannot be li…
katmsft Mar 22, 2018
6122e02
Added a new nuget set that will release Microsoft.Azure.Storage.CPP a…
katmsft Mar 22, 2018
f362a5a
Resolved an issue where 3rd attempt of retry of downloading will writ…
katmsft Mar 29, 2018
224c4d6
Remove libxml++ dependency for linux
katmsft May 1, 2018
a1ec8db
Version and documentation changes.
katmsft Apr 27, 2018
41b1bdf
Resolved an issue where newly created 'cloud_file_properties' will al…
katmsft May 4, 2018
60351e3
Changelog update and version change for release 4.0.0
katmsft May 5, 2018
8dbedf6
Merge pull request #178 from katmsft/dev
vinjiang May 6, 2018
7d15745
Resolved an issue where retry for Table's batch operation always retu…
katmsft Jun 5, 2018
dda98b8
Resolved some test case issues.
katmsft Jun 5, 2018
66b3651
Resolved an issue where partial xml body will not throw exception whe…
katmsft Jun 7, 2018
0479c27
Added check for metadata name that is empty or contains whitespaces t…
katmsft Jun 8, 2018
d621451
Enabled CMake on Windows
katmsft Jun 14, 2018
c33f634
Resolved some build issue on Linux
katmsft Jun 14, 2018
7796d04
Added support for specifying installation dir when compiling with cma…
katmsft Jun 14, 2018
76cb553
Version change to 5.0.0, and dropped Nuget package with name 'wastorage'
katmsft Jun 19, 2018
ed97be2
Added ABI Compatibility for OpenSSL (#151)
BlauBaron Aug 15, 2018
2d753b5
Bug fix for issue #193 (#194)
smlu Aug 15, 2018
6ac916c
Resolved some issue in pr #151
katmsft Jul 5, 2018
90a9ecd
Upgraded service version to 2017-07-29 and supported messagettl = -1
katmsft Aug 3, 2018
707d8b9
Resolved some build warning raised by CPPRest version > 2.10.0
katmsft Aug 3, 2018
78674c1
Version change and Changelog document for 5.1.0
katmsft Aug 7, 2018
21325df
Resolved some Linux compile issue when upgrading to CPPRest 2.10.3
katmsft Aug 8, 2018
fb77ed1
Fixed cmake issue when cmake version < 3.0.2
katmsft Sep 12, 2018
31eb902
Exposed cpprestsdk's API to customize cert location
katmsft Sep 7, 2018
ef398b9
Changelog and version update for 5.1.1
katmsft Sep 14, 2018
ce33127
Refined Readme and added chart for depended Casablanca version
katmsft Sep 17, 2018
b5154e2
Refine makefile for build on SLES12
Sep 29, 2018
ae8f55f
Added tests to verify lease support in set blob tier
katmsft Sep 27, 2018
8b0a1f7
Resolved failed test cases
katmsft Oct 9, 2018
d1d8b94
Version and document change for 5.2.0
katmsft Oct 10, 2018
e33d77c
Added build script for MSbuild
katmsft Oct 16, 2018
9366fae
Add support for RHEL 7 and RHEL 6
EmmaZhu Oct 12, 2018
59a4727
Added option to build this project with /MT
katmsft Nov 14, 2018
a3cd35b
Moved the main logic of executor_impl::execute_asyn from .h to .cpp.
katmsft Nov 14, 2018
0bd6663
Added support for cancellation token and timeout for blob service.
katmsft Nov 14, 2018
e98c41e
Resolved an issue where Get Blob/File Range's MD5 would honor range M…
katmsft Jan 21, 2019
d817308
6.0.0 Documenation change, sample change and vcproj change
katmsft Jan 17, 2019
81c6d45
Resolved an memory leak issue.
katmsft Jan 25, 2019
c90e2a4
Fixed some build issue on VS2013 and modified the build script for Je…
katmsft Jan 29, 2019
36dc4c9
Updated documentation for cpprestsdk 2.10.10 build step on Linux
katmsft Feb 1, 2019
b00cc67
Updated documentation to resolve PR comments
katmsft Feb 1, 2019
8add717
Fix an issue of invalid block list when uploading a block blob
EmmaZhu Dec 26, 2018
e9eb9ff
Resolve a reviewing comment.
EmmaZhu Jan 31, 2019
0c30f4a
Resolve a reviewing comment.
EmmaZhu Jan 31, 2019
e6201c7
Implementation of getting account information.
EmmaZhu Mar 6, 2019
88108a5
Add support to build with VS 2017
EmmaZhu Feb 22, 2019
deff6b3
Change to report a meaningful error message when the source stream le…
EmmaZhu Mar 21, 2019
c5d94f0
Fixed another memory leak issue.
katmsft Mar 29, 2019
1c800b9
Update Microsoft Azure Storage Client Library for C++ 2.0.0.md
johnBuffer Mar 20, 2019
fd96ccd
Fix issue of cannot upload from non-seekable stream to block blob or …
EmmaZhu Apr 11, 2019
a2f14c5
Deprecate supporting for VS2013
EmmaZhu Apr 15, 2019
45e6eb7
Update version to 6.1.0
EmmaZhu May 7, 2019
91878b1
Refine initialization.
EmmaZhu May 6, 2019
96bacad
Resolved an issue where proxy cannot be disabled in HTTP client.
katmsft Jul 10, 2019
81eb85c
Changed the sequence of include to prevent building failure.
katmsft Jul 13, 2019
5a7129f
Resolved a timer issue where setting timeout to 1 millisecond would s…
katmsft Aug 16, 2019
d10c94c
Build: allow building against macOS' system uuid.h
tschoonj May 12, 2019
06688e8
fixed cmake find module error if building as subdirectory
Wlad-Fox Aug 28, 2019
a3424bc
Added support for GetShareStats with byte precision
Jinming-Hu Jun 28, 2019
4b81543
[Breaking] Added support for blob snapshot SAS
Jinming-Hu Jul 3, 2019
0b7ad0a
Added support for OAuth 2.0 access token
Jinming-Hu Jul 16, 2019
6553341
Raise minimum required GCC version from 4.8 to 5.1
Jinming-Hu Aug 21, 2019
df15cb2
Add CRC64 support for blob service
Jinming-Hu Aug 14, 2019
49b8f3f
Add SMB properties support for file upload/download
Jinming-Hu Aug 30, 2019
eddd141
Fix a typo in API name download_share_usage_async
Jinming-Hu Sep 9, 2019
d79158c
Use newest UnitTest++ library on Windows.
Jinming-Hu Sep 9, 2019
5172d87
Set up CI with Azure Pipelines
Jinming-Hu Sep 11, 2019
e097b31
Fix a typo in API name cloud_queue_message::next_visible_time
Jinming-Hu Sep 17, 2019
132989c
Remove conditional compilation for get_wastorage_ambient_scheduler()
Jinming-Hu Sep 17, 2019
289d9f4
Update version to 7.0.0
Jinming-Hu Sep 17, 2019
60c5b9b
Fix some warnings
Jinming-Hu Aug 21, 2019
ee3a3f7
Fix some infrequent test case failures.
Jinming-Hu Sep 4, 2019
658b418
Resolved a bug where user setting file size larger than maximum quota…
katmsft Nov 5, 2019
246dc84
Fix a bug in xml parser, where invalid xml message may cause hang for…
Jinming-Hu Oct 29, 2019
3fe4f06
Fix timer_handler memory leak
Jinming-Hu Oct 11, 2019
f5c0345
Speed up fill_buffer(), this by some chance fixes Blob:page_blob_conc…
Jinming-Hu Oct 12, 2019
8e3ca89
Fix occasionally failed test cases.
Jinming-Hu Oct 15, 2019
676da73
Fix a bug where timeout for single-thread download doesn't work
Jinming-Hu Oct 16, 2019
309decc
Fix a bug where start_copy() function doesn't copy source's metadata.
Jinming-Hu Oct 17, 2019
fa7d0d3
Explicitly specify launch policy, instead of up to implementation
Jinming-Hu Oct 24, 2019
4bb5ec2
Fix bug: MD5 missing exception is not retryable
Jinming-Hu Oct 25, 2019
9758249
Reorganise .sln .vcxproj file, refactor samples
Jinming-Hu Oct 31, 2019
3c02188
Add Files Properties sample
Jinming-Hu Oct 31, 2019
6ea9817
Update README
Jinming-Hu Nov 19, 2019
770097d
Add the exception_ptr of the unhandled exception to retry_context
rahuldutta90 Nov 12, 2019
c73fde9
Add documentation
rahuldutta90 Nov 12, 2019
5df692b
Fix the documentation and the variable name
rahuldutta90 Nov 13, 2019
e81790c
Fix the variable name
rahuldutta90 Nov 13, 2019
24aa03a
Fix comment
rahuldutta90 Nov 13, 2019
154065f
Fix problem with sanitize options on modern versions of gcc
ghalliday Dec 9, 2019
58b2061
Fix possible unobserved exception
ShippyMSFT Dec 10, 2019
a86cce3
Allow to skip HTTPS certificates validation
Nov 18, 2019
5abda06
Add support for user delegation SAS
Jinming-Hu Dec 5, 2019
0b77e7a
Fix bug: snapshot SAS shouldn't contain snapshot time query parameter
Jinming-Hu Dec 5, 2019
0e23ebd
Update azure pipelines config, we don't use windows containers any mo…
Jinming-Hu Dec 6, 2019
53a14fc
shorten sleep time to avoid ut failures in fast network environment
Jinming-Hu Dec 9, 2019
7de3384
Control parallelism on Core:account_sas_permission
Jinming-Hu Dec 10, 2019
73356c7
Catch unobserved exception
Jinming-Hu Dec 16, 2019
144cc73
Fix some failed test cases in fast network and small cpu number
Jinming-Hu Dec 18, 2019
c2d4b0b
Fix Blob:append_blob_open_read_write_timeout ut failure
Jinming-Hu Dec 20, 2019
98ccd37
Add performance test
Jinming-Hu Dec 24, 2019
307aee0
Remove some comment
Jinming-Hu Dec 25, 2019
e39222e
Add interface with which users can custom settings for HTTP connections
Jinming-Hu Jan 8, 2020
ba05f42
Remove compile options -fprofile-arcs -ftest-coverage
Jinming-Hu Jan 8, 2020
ebe0945
Release 7.1.0
Jinming-Hu Jan 8, 2020
0a0c96b
Merge pull request #310 from JinmingHu-MSFT/dev
vinjiang Jan 10, 2020
fcd2456
Updated service version to 2019-07-07 and supported previous snapshot…
katmsft May 16, 2019
9cb1c0d
Version/Doc change for 7.2.0 release
katmsft Feb 17, 2020
22ba811
Changelog update for 7.2.0
katmsft Feb 18, 2020
bef3af8
Add support for CPK-V
Jinming-Hu Feb 18, 2020
3c895d6
Add support for file lease
Jinming-Hu Feb 25, 2020
438e8a8
Release 7.3.0
Jinming-Hu Mar 3, 2020
d669f5d
Resolved an issue where listing directories and files does not return…
katmsft Apr 9, 2020
c1fdf3a
Fix bug: 416 RangeNotSatisfiable exception is swallowed unintentionally
Jinming-Hu Apr 26, 2020
bf0add5
Release 7.3.1
Jinming-Hu Apr 28, 2020
82ea080
Premium file share properties
Jinming-Hu Apr 28, 2020
65a4ec2
fix broken link
Jinming-Hu Apr 30, 2020
054149a
Fix crash bug in execute_batch
Jinming-Hu May 8, 2020
100c4d8
Release 7.4.0
Jinming-Hu May 18, 2020
cf0d4c7
vcpkg changed its variable name, ref https://github.com/microsoft/vcp…
Jinming-Hu Jun 14, 2020
818813e
Add thread safe storage credential update
will-tong Jun 1, 2020
cc64d9d
Revert "Add thread safe storage credential update"
will-tong Jun 9, 2020
c661e00
Allow setting of storage account key using shared pointer
will-tong Jun 11, 2020
18ddc57
Resolve PR comments
will-tong Jun 15, 2020
9b09483
Fix failing storage account test
will-tong Jun 15, 2020
efbf424
fix invalid account key access in test
will-tong Jun 23, 2020
34ec9f8
Blob versioning
Jinming-Hu Apr 3, 2020
8bc3eed
Support Jumbo block phase-1
Jinming-Hu Mar 6, 2020
4ac84e8
Jumbo blob
Jinming-Hu Jun 13, 2020
236ceb6
fix ut
Jinming-Hu Jul 3, 2020
5b1c159
Release 7.5.0
Jinming-Hu Jul 8, 2020
dbdd3fa
upgrade recommended cpprest version to 2.10.18 (#380)
Jinming-Hu Feb 23, 2021
a092a2d
Update README.md (#390)
Jinming-Hu Jun 16, 2021
7afc71a
Microsoft mandatory file
microsoft-github-policy-service[bot] Jan 24, 2023
a94f027
Auto merge mandatory file pr
microsoft-github-policy-service[bot] Mar 28, 2023
b319b18
Add deprecation notice
derdanu Mar 19, 2024
00bb370
Merge pull request #423 from derdanu/patch-1
seanmcc-msft Apr 2, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions BreakingChanges.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,30 @@
Azure Storage Client Library for C++
History of Breaking Changes

Breaking Changes in v7.0:
- Default Rest API version is 2019-02-02.
- Upgraded Casablanca dependency to 2.10.14.
- Raised minumim required GCC version to 5.1.
- SAS returned by calling `azure::storage::cloud_blob::get_shared_access_signature` on a snapshot object only has access to the snapshot, not the entire blob including every snapshots as before.
- Fix a typo in API `azure::storage::cloud_file_share::download_share_usage_async`.
- Fix a typo in API `azure::storage::cloud_queue_message::next_visible_time`.
- `azure::storage::get_wastorage_ambient_scheduler` always returns by value.

Breaking Changes in v6.0:
- `azure::storage::blob_request_options` now accept max_execution_time as `std::chrono::milliseconds`. However, previous `std::chrono::seconds` can automatically converted to `std::chrono::milliseconds`. There can be behavioral change since the precision has changed.
- Resolved an issue where the first forward slash in the front of the blob name will always be trimmed. This would cause blobs with name trimmed prior to this release no longer reachable with the same input.

Breaking Changes in v5.0:
- Dropped Nuget package with name 'wastorage'.

Breaking Changes in v4.0:
- `azure::storage::file::upload_properties` and `azure::storage::file::upload_properties_async` will no longer resize a file, even when properties contains length that is being set to 0 or other values.

Breaking Changes in v3.0:
- Default Rest API version is 2016-05-31.
- Using If-None-Match: * will now fail when reading a blob.
- Rename TargetName for Debug configuration from wastorage to wastoraged.

Breaking Changes in v2.5:
- Upgraded Casablanca dependency to 2.9.1

Expand Down
8 changes: 4 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,15 +83,15 @@ sudo apt-get install libxml++2.6-dev libxml++2.6-doc uuid-dev
cd azure-storage-cpp/Microsoft.WIndowsAzure.Storage
mkdir build.release
cd build.release
CASABLANCA_DIR=<path to Casablanca> CXX=g++-4.8 cmake .. -DCMAKE_BUILD_TYPE=Release
CASABLANCA_DIR=<path to Casablanca> CXX=g++-5.1 cmake .. -DCMAKE_BUILD_TYPE=Release
make
```
In the above command, replace `<path to Casablanca>` to point to your local
installation of Casablanca. For example, if the file `libcpprest.so` exists at
location `~/Github/Casablanca/cpprestsdk/Release/build.release/Binaries/libcpprest.so`,
then your `cmake` command should be:
```bash
CASABLANCA_DIR=~/Github/Casablanca/cpprestsdk CXX=g++-4.8 cmake .. -DCMAKE_BUILD_TYPE=Release
CASABLANCA_DIR=~/Github/Casablanca/cpprestsdk CXX=g++-5.1 cmake .. -DCMAKE_BUILD_TYPE=Release
```
The library is generated under
`azure-storage-cpp/Microsoft.WindowsAzure.Storage/build.release/Binaries/`.
Expand All @@ -105,7 +105,7 @@ sudo apt-get install libunittest++-dev

#### Build the Test Code
```bash
CASABLANCA_DIR=<path to Casablanca> CXX=g++-4.8 cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=ON
CASABLANCA_DIR=<path to Casablanca> CXX=g++-5.1 cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=ON
make
```
The test binary `azurestoragetest` and `test_configuration.json` are generated under
Expand All @@ -126,7 +126,7 @@ cd Binaries

### Samples
```bash
CASABLANCA_DIR=<path to Casablanca> CXX=g++-4.8 cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_SAMPLES=ON
CASABLANCA_DIR=<path to Casablanca> CXX=g++-5.1 cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_SAMPLES=ON
make
```

Expand Down
150 changes: 150 additions & 0 deletions Changelog.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,156 @@
Azure Storage Client Library for C++
History of Changes

Changes in v7.5.0
- New feature: Blob Versioning.
- New feature: Jumbo Put Block.
- New feature: Jumbo Put Blob.
- Service version upgraded to 2019-12-12.

Changes in v7.4.0
- New feature: Premium File Share Properties.
- Fixed a bug: crash in table batch operation.
- Upgraded CPPRest to latest version 2.10.16.

Changes in v7.3.1
- Fixed a bug: RangeNotSatisfiable exception is mistakenly swallowed.
- Fixed a bug: File length is not returned when listing files.

Changes in v7.3.0
- New feature: Customer provided key (CPK-V)
- New feature: File lease
- Upgraded CPPRest to latest version 2.10.15.

Changes in v7.2.0
- New feature: Previous snapshot with URL.
- Service version upgraded to 2019-07-07.

Changes in v7.1.0
- New feature: User delegation SAS.
- Fixed a bug in snapshot SAS.
- Fixed some unittest failures.
- Fixed some crash issues.
- Added an API with which user can custom HTTP connection settings.

Changes in v7.0.0
- Default REST API version is 2019-02-02.
- Upgraded CPPRest to latest version 2.10.14.
- Raised minimum required GCC version to 5.1.
- Added new API `azure::storage::cloud_file_share::download_share_usage_in_bytes`.
- SAS returned by calling `azure::storage::cloud_blob::get_shared_access_signature` on a snapshot object only has access to the snapshot, not the entire blob including every snapshots as before.
- Added support for AAD based OAuth bearer token authentication.
- Added support for CRCC64 transactional data integrity machanism as an alternative to MD5.
- Added new API `azure::storage::cloud_file_share::upload_file_permission`, `azure::storage::cloud_file_share::download_file_permission` to support to create/retrieve a security descriptor at the Azure File share level,
- Added support for a set of new headers on Azure File APIs.

Changes in v6.1.0
- Default REST API version is 2018-03-28.
- Upgraded CPPRest to latest version: 2.10.13.
- Added following new API for `cloud_blob_client`, `cloud_blob_container` and `cloud_blob` to support to get Azure Storage Account properties.
- `pplx::task<account_properties> download_account_properties_async(const blob_request_options& options, operation_context context, const pplx::cancellation_token& cancellation_token)`.
- Resolved a memory leak issue on Linux platform in xml_wrapper.cpp.
- Added support to build with Visual Studio 2017.
- Resolved an issue where it has chance to report an error when trying to upload to block blob with `cloud_block_blob::open_write`.
- Resolved an issue on unexpected behavior when trying to upload from a local file whose length is longer than value of maximum int32 to block blob, append blob, page blob or Azure Storage file.

Changes in v6.0.0
- Upgraded CPPRest to latest version: 2.10.10.
- Resolved a memory leak issue on Linux platform in xml_wrapper.cpp.
- Resolved an issue where `download_range_to_stream` for `azure::storage::blob` or `azure::storage::file` would update the blob/file MD5 unexpectedly.
- Added an option `ENABLE_MT` in CMake to build azure-storage-cpp using /MT
- Resolved an issue where the first forward slash in the front of the blob name will always be trimmed.
- Supported cancellation token in asynchronous operations.
- Supported millisecond level timeout.

Changes in v5.2.0
- Resolved an issue where listing blobs for blob tier returning faulty result when built with VS2013.
- Resolved an issue where listing files or directories returning faulty server encryption status when built with VS2013.
- Added support to set blob tier with lease conditions.
- Added detailed guideline on how to build on SLES12 SP3, and fixed CMake build script accordingly.
- Fixed randomly failed test cases.

Changes in v5.1.1
- Added an API: `azure::storage::operation_context::set_ssl_context_callback`. User can use this API to customize SSL callback in order to change the location of the SSL cert, etc. This is a Linux only API.

Changes in v5.0.1
- Resolved an issue where default CMake version 2.8 on Ubuntu 14.04 cannot build this client library.

Changes in v5.1.0
- Stopped releasing public Nuget package starting from this version.
- Default REST API version is 2017-07-29.
- Added support to put messages with messagettl = -1, and lifted the cap for message time-to-live value.
- Now compatible with Openssl 1.1.0.
- Upgraded the version of dependency Casablanca to 2.10.3.

Changes in v5.0.0
- Dropped the support for Nuget package with name 'wastorage', now this client library only release with Nuget name 'Microsoft.Azure.Storage.CPP'.
- Added support for specifying installation destination when compiling with cmake to resolve feature request #183.
- Enabled CMake on Windows.
- Added check for metadata name that is empty or contains whitespaces to fail fast, and trimmed beginning/trailing whitespaces for metadata value.
- Resolved an issue where partial xml body will not throw exception when being parsed.
- Resolved an issue where retry for Table's batch operation always returns the first response.

Changes in v4.0.0:
- Fixed an issue where blob names that only contains space cannot be listed properly.
- Added more compiler setting to unblock ApiScanning.
- Added a new `nuspec` set that will release `Microsoft.Azure.Storage.CPP` and modified the `wastorage`'s nuspec to depend on Microsoft.Azure.Storage.CPP. Note that 4.0.0 will be the last version of `wastorage`. We strongly advice our user to use Nuget package `Microsoft.Azure.Storage.CPP` start from 4.0.0
- Resolved an issue where 3rd attempt of retry to download a blob or file will write more data than expected to destination stream.
- Removed dependency on `libxml++` for Linux platforms. But now this SDK depends on `libxml2`, which is available for most Linux distributions.
- `azure::storage::file::upload_properties` and `azure::storage::file::upload_properties_async` will no longer resize a file, even when properties contains length that is being set to 0 or other values.

Changes in v3.2.1:
- Added tag `<requireLicenseAcceptance>true</requireLicenseAcceptance>` in .nuspec files and modified the author to `Microsoft` to comply to the new Microsoft Nuget package rule set. Note that this will require the Nuget package user to accept the license manually when newly installing or upgrading 3.2.1 version (and on) of this client library.

Changes in v3.2:
- Default REST API version is 2017-04-17.
- Added support for blob archive feature, which includes following changes:
- Added two new APIs for `cloud_blob` to support copying a blob to a new destination setting premium access tier, note that currently, only premium page blobs are supported so these two APIs should only be used for page blobs.
- `utility::string_t start_copy(const web::http::uri& source, const azure::storage::premium_blob_tier tier, const access_condition& source_condition, const access_condition& destination_condition, const blob_request_options& options, operation_context context)`.
- `pplx::task<utility::string_t> start_copy_async(const web::http::uri& source, const premium_blob_tier tier, const access_condition& source_condition, const access_condition& destination_condition, const blob_request_options& options, operation_context context)`.
- Added two new APIs for block blob to support setting the standard blob tier.
- `void set_standard_blob_tier(const standard_blob_tier tier, const access_condition & condition, const blob_request_options & options, operation_context context)`
- `pplx::task<void> set_standard_blob_tier_async(const standard_blob_tier tier, const access_condition & condition, const blob_request_options & options, operation_context context)`
- Added two new APIs for page blob to support setting the premium blob tier.
- `void set_premium_blob_tier(const premium_blob_tier tier, const access_condition & condition, const blob_request_options & options, operation_context context)`
- `pplx::task<void> set_premium_blob_tier_async(const premium_blob_tier tier, const access_condition & condition, const blob_request_options & options, operation_context context)`
- `cloud_blob_properties` now contains 4 more attributes: ` standard_blob_tier`, `premium_blob_tier`, `archive_status`, `access_tier_inferred`. They will be updated using `download_attributes`, and will be set to server returned value when calling `list_blobs`.
- Added two new APIs to support creating page blob with premium access tier.
- `pplx::task<void> create_async(utility::size64_t size, const premium_blob_tier tier, int64_t sequence_number, const access_condition& condition, const blob_request_options& options, operation_context context)`
- `void create(utility::size64_t size, const premium_blob_tier tier, int64_t sequence_number, const access_condition& condition, const blob_request_options& options, operation_context context)`

Changes in v3.1:
- #136 Fixed error in get blob properties when value in x-ms-copy-source is not encoded correctly.
- #124 Fixed the bug in parallel download when offset not zero.
- #123 Fixed the bug that client will overwrite default retry poilcy.
- Fixed #132 build issue caused by macro min
- Throwed exception to warn on the conflict between primary_only and download_services_stats
- Fixed the bug that file share's ETag not updated after quota resize.
- Fixed the bug that file directory's LMT not updated after upload metadata.
- Fixed the bug that file's LMT not updated after upload metadata.

Changes in v3.0:
- Default Rest API version is 2016-05-31.
- Supported large block size to 100MB, single blob upload threshold to 256MB.
- Add cloud_blob_container_properties::public_access for public access level of container. The value will be populated in:
- cloud_blob_client::list_containers
- cloud_blob_container::create
- cloud_blob_container::download_attributes
- cloud_blob_container::download_permissions
- Message information including the pop receipt will now be populated to the pass-in message in cloud_queue::add_message.
- API cloud_file_directory::list_files_and_directories now accepts a new parameter that limits the listing to a specified prefix.
- All table APIs now accept and enforce the timeout query parameter.
- Value of cloud_blob_properties::content_md5 for stored Content-MD5 property will also be populated in cloud_blob::download_range_to_stream.
- Add cloud_page_blob::start_incremental_copy to support incremental copying a snapshot of the source page blob to a destination page blob.
- Using If-None-Match: * will now fail when reading a blob.
- Include empty headers when signing request.
- Fixed the bug that might cause "invalid handle" exception during retry for download to stream APIs.
- Fixed the issuse that does not work with v141 toolset.
- Fixed the build issue for MFC/ATL projects caused by macro "max".
- Changed constant strings' type from * to [].
- Fixed compile error when _MSC_VER=1810.
- Use <> instead of "" to include package headers.
- Rename TargetName for Debug configuration from wastorage to wastoraged.

Changes in v2.6:
- Supported parallel download for blobs and files
- Supported installation from Vcpkg
Expand Down
2 changes: 1 addition & 1 deletion Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ PROJECT_NAME = "Microsoft Azure Storage Client Library for C++"
# could be handy for archiving the generated documentation or if some version
# control system is used.

PROJECT_NUMBER = 2.6.0
PROJECT_NUMBER = 7.5.0

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
Expand Down
28 changes: 0 additions & 28 deletions Microsoft.WindowsAzure.Storage.v120.sln

This file was deleted.

32 changes: 32 additions & 0 deletions Microsoft.WindowsAzure.Storage.v141.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.28307.421
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Microsoft.WindowsAzure.Storage.v141", "Microsoft.WindowsAzure.Storage\Microsoft.WindowsAzure.Storage.v141.vcxproj", "{25D342C3-6CDA-44DD-A16A-32A19B692785}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{25D342C3-6CDA-44DD-A16A-32A19B692785}.Debug|x64.ActiveCfg = Debug|x64
{25D342C3-6CDA-44DD-A16A-32A19B692785}.Debug|x64.Build.0 = Debug|x64
{25D342C3-6CDA-44DD-A16A-32A19B692785}.Debug|x86.ActiveCfg = Debug|Win32
{25D342C3-6CDA-44DD-A16A-32A19B692785}.Debug|x86.Build.0 = Debug|Win32
{25D342C3-6CDA-44DD-A16A-32A19B692785}.Release|x64.ActiveCfg = Release|x64
{25D342C3-6CDA-44DD-A16A-32A19B692785}.Release|x64.Build.0 = Release|x64
{25D342C3-6CDA-44DD-A16A-32A19B692785}.Release|x86.ActiveCfg = Release|Win32
{25D342C3-6CDA-44DD-A16A-32A19B692785}.Release|x86.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {EFC9951D-9CFA-4AF9-8EA2-0DE2E2A03DF5}
SolutionGuid = {657A09C9-C87D-40F4-B9C2-A41DE55BB7A2}
EndGlobalSection
EndGlobal
Loading