azure-core_1.0.0-beta.4
Pre-release
Pre-release
1.0.0-beta.4 (2021-01-13)
New Features
- Added a WinHTTP-based
HttpTransport
calledWinHttpTransport
and use that as the defaultTransportPolicyOptions.Transport
on Windows when sending and receiving requests and responses over the wire. - Added
Range
type toAzure::Core::Http
namespace. - Added support for long-running operations with
Operation<T>
. - Added support for setting a custom transport adapter by implementing the method
std::shared_ptr<HttpTransport> ::AzureSdkGetCustomHttpTransport()
. - Added interoperability between
std::chrono::system_clock
types andDateTime
. - Added default constructor to
DateTime
and support for dates since 0001. - Added Base64 encoding and decoding utility APIs to the
Azure::Core
namespace available fromazure/core/base64.hpp
. - Added
Http::Response<void>
template specialization. - Added
GetHeadersAsString()
on theAzure::Core::Http::Request
class. - Added a
platform.hpp
header file for defining commonly used OS-specific#define
constants. - Added
IsCancelled()
on theAzure::Core::Context
class.
Breaking Changes
- Removed
DateTime::operator Duration()
,DateTime::Duration
typedef andDateTime::Now()
. - Moved
Azure::Core::BearerTokenAuthenticationPolicy
, defined inazure/core/credentials.hpp
toAzure::Core::Http
namespace inazure/core/http/policy.hpp
header. - Changed type of
Token::ExpiresOn
toDateTime
. - Renamed exception
OperationCanceledException
toOperationCancelledException
andThrowIfCanceled()
toThrowIfCancelled()
on theContext
class. - Moved
Azure::Core::Version
, defined inazure/core/version.hpp
to theAzure::Core::Details
namespace. - Changed
Azure::Core::AuthenticationException
to derive fromstd::exception
instead ofstd::runtime_error
. - Changed the
BodyStream::Read
API from being a pure virtual function to non-virtual. - Removed
CurlConnection
,CurlConnectionPool
,CurlSession
, andCurlNetworkConnection
by making headers meant as implementation, private. - Removed option
AllowBeast
fromCurlTransportSSLOptions
inCurlTransportOptions
. - Changed default option
NoRevoke
fromCurlTransportSSLOptions
for theCurlTransportOptions
totrue
. This disables the revocation list checking by default.
Bug Fixes
- Fixed the Curl transport adapter connection pooling when setting options.
- Fixed setting up the default transport adapter.
- Fixed linker error of missing pthread on Linux.
- Initialize class data members to avoid MSVC warning.
- Throw
Azure::Core::Http::TransportException
ifcurl_easy_init()
returns a null handle.
Other changes and Improvements
- Added support for distributing the C++ SDK as a source package via vcpkg.