From 265a5f810e1724f9a5ee34ff5e45e9d84bee558a Mon Sep 17 00:00:00 2001 From: Mykhailo Kuchma <37704253+mykhailo-kuchma@users.noreply.github.com> Date: Tue, 4 Feb 2020 14:26:27 +0200 Subject: [PATCH] Add changelog for 1.2.0 release, update version in CMake (#629) Resolves: OLPEDGE-1400 Signed-off-by: Mykhailo Kuchma --- CHANGELOG.md | 43 ++++++++++++++++++++ CMakeLists.txt | 2 +- examples/CMakeLists.txt | 2 +- examples/android/app/CMakeLists.txt.in | 2 +- examples/ios/CMakeLists.txt.in | 2 +- olp-cpp-sdk-authentication/CMakeLists.txt | 2 +- olp-cpp-sdk-core/CMakeLists.txt | 2 +- olp-cpp-sdk-dataservice-read/CMakeLists.txt | 2 +- olp-cpp-sdk-dataservice-write/CMakeLists.txt | 2 +- 9 files changed, 51 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 12f6b63af..f2113923a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,46 @@ +## v1.2.0 (04/02/2020) + +**Common** + +* Added a protected read-only cache. For details, see `olp::cache::CacheSettings`. +* Added a protected read-only cache [usage example](https://github.com/heremaps/here-olp-sdk-cpp/blob/c30c4051ec012eaca09b7aa7ba4c7e8f6cd7a576/docs/dataservice-cache-example.md). +* Added ARM platform support for Embedded Linux with GCC 5.4 (32/64 bit). +* Added the `ErrorCodeToString` function to olp/core/http/NetworkTypes.h. +* Improved the `olp::http::NetworkCurl` logging. +* Changed the `IsNull` function in the `olp::client::HRN` class to handle realms according to platform changes. +* Added the bool operator to the `olp::client::HRN` class. You can now use the operator to check whether all the service type fields in the `olp::client::HRN` class are not empty. +* Fixed a possible data race in the `olp::client::Condition` class. +* Added the `MoveResult` method to the `olp::client::ApiResponse` class. The method returns an rvalue reference to the result. +* CMake now requires RapidJSON v1.1.0. +* Various CMake cleanups. +* Improved error handling in Android `HttpClient`. +* Fixed the linking error when SDK was statically linked inside a shared library with `CMAKE_POSITION_INDEPENDENT_CODE=ON`. +* The retry policy now handles server errors automatically. + +**olp-cpp-sdk-authentication** + +* Added a possibility to parse credentials from a file or stream in `olp::authentication::AuthenticationCredentials`. Now, to get credentials for the `AuthenticationCredentials` class, you can use the **credentials.properties** file that is provided by the platform. +* Deprecated the `olp::authentication::TokenEndpoint` class. It will be removed by 04.2020. +* Deprecated the `olp::authentication::TokenRequest` class. It will be removed by 04.2020. +* Deprecated various methods in `olp::authentication::AuthenticationClient`. +* Authentication now gets the current timestamp from the platform and uses it to request the OAuth2 token that prevents replay attacks. As a fallback, the system time is used. + +**olp-cpp-sdk-dataservice-read** + +* The `olp::dataservice::read::QueryApi`, `olp::dataservice::read::MetadataApi`, `olp::dataservice::read::LookupApi`, and `olp::dataservice::read::BlobApi` classes are now blocking and use the new synchronous `CallApi` method in `OlpClient`. +* The `GetData` method of the versioned and volatile layer now triggers the `olp::client::ErrorCode::PreconditionFailed` error if both a partition ID and data handle are passed in the data request. +* **Work-in-progress**: Added reading support for streamed data using the new `olp::dataservice::read::StreamLayerClient`. Currently, you can only subscribe, unsubscribe, and get data from a stream layer message. + +**olp-cpp-sdk-dataservice-write** + +* Enhanced `olp::dataservice::write::StreamLayerClient` to use `olp::thread::TaskScheduler` for asynchronous operations instead of network threads. +* Removed the unused `olp::dataservice::write::ThreadSafeQueue` class. +* Deprecated the `CancelAll` methods in all layers. Use the `CancelPendingRequests` methods instead. + ## v1.1.0 (11/12/2019) **Common** + * The deprecated `olp::client::CancellationToken::cancel()` method was removed. Use `olp::client::CancellationToken::Cancel()` instead. * The `curl` network implementation was fixed and can now compile on 32 bits architecture. * The `disk_path` field in `olp::cache::CacheSettings` is deprecated. Use the `disk_path_mutable` field instead. @@ -8,14 +48,17 @@ * `pipe` and `pipe2` symbols detection are enhanced in curl.cmake. **olp-cpp-sdk-authentication** + * The `SignInClient` method in `olp::authentication::AuthenticationClient` is deprecated in favor of the newly introduced `SignInClient` method with a different signature. * The `scope` support was added to OAuth2 through `olp::authentication::SignInProperties`. You can now access the project bound resources using the `olp::authentication::SignInProperties::scope` field. * The `error_id` field was added to the `ErrorResponse` structure. You can use it to get the `errorId` string from the authentication error response. **olp-cpp-sdk-dataservice-read** + * The deprecated `GetCatalogMetadataVersion` method was removed from the `olp::dataservice::read::CatalogClient`. **olp-cpp-sdk-dataservice-write** + * Legacy and unused code were removed. ## v1.0.0 (03/12/2019) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6e3de3c2a..a23d227ab 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,7 +18,7 @@ cmake_minimum_required(VERSION 3.9) # Build the sdk targets -project(olp-cpp-sdk VERSION 1.1.0) +project(olp-cpp-sdk VERSION 1.2.0) # Add preprocessor definitions for the SDK version and platform name add_definitions(-DOLP_SDK_VERSION_STRING=\"${olp-cpp-sdk_VERSION}\") diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index 34c16d8a8..851fa393b 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -41,7 +41,7 @@ elseif(ANDROID) ${OLP_SDK_EXAMPLE_FAILURE_STRING}) else() - project(${OLP_SDK_DATASERVICE_EXAMPLE_TARGET} VERSION 1.1.0) + project(${OLP_SDK_DATASERVICE_EXAMPLE_TARGET} VERSION 1.2.0) add_library(${OLP_SDK_DATASERVICE_READ_EXAMPLE_TARGET} ${CMAKE_CURRENT_SOURCE_DIR}/ReadExample.cpp diff --git a/examples/android/app/CMakeLists.txt.in b/examples/android/app/CMakeLists.txt.in index 83920ba61..672de9269 100644 --- a/examples/android/app/CMakeLists.txt.in +++ b/examples/android/app/CMakeLists.txt.in @@ -17,7 +17,7 @@ cmake_minimum_required(VERSION 3.5) -project(@OLP_SDK_EXAMPLE_TARGET_NAME@ VERSION 1.1.0) +project(@OLP_SDK_EXAMPLE_TARGET_NAME@ VERSION 1.2.0) if (DEFINED OLP_SDK_HTTP_CLIENT_JAR) get_filename_component(OLP_SDK_HTTP_CLIENT_JAR_FULL_PATH "${OLP_SDK_HTTP_CLIENT_JAR}" ABSOLUTE) diff --git a/examples/ios/CMakeLists.txt.in b/examples/ios/CMakeLists.txt.in index 071674ad9..a2ca26cee 100644 --- a/examples/ios/CMakeLists.txt.in +++ b/examples/ios/CMakeLists.txt.in @@ -21,7 +21,7 @@ if (NOT IOS) message(FATAL_ERROR "Unsupported platform!") endif() -project(@OLP_SDK_EXAMPLE_TARGET_NAME@ VERSION 1.1.0) +project(@OLP_SDK_EXAMPLE_TARGET_NAME@ VERSION 1.2.0) add_executable(@OLP_SDK_EXAMPLE_TARGET_NAME@ ${CMAKE_CURRENT_SOURCE_DIR}/ReadExample.h diff --git a/olp-cpp-sdk-authentication/CMakeLists.txt b/olp-cpp-sdk-authentication/CMakeLists.txt index 63e8c5cf6..de0f01d63 100644 --- a/olp-cpp-sdk-authentication/CMakeLists.txt +++ b/olp-cpp-sdk-authentication/CMakeLists.txt @@ -15,7 +15,7 @@ # SPDX-License-Identifier: Apache-2.0 # License-Filename: LICENSE -project(olp-cpp-sdk-authentication VERSION 1.1.0) +project(olp-cpp-sdk-authentication VERSION 1.2.0) set(DESCRIPTION "C++ API library for accesing HERE Account authentication service") file(GLOB_RECURSE AUTHENTICATION_INC "include/*.h*") diff --git a/olp-cpp-sdk-core/CMakeLists.txt b/olp-cpp-sdk-core/CMakeLists.txt index 12ad8a35a..c21dbec93 100644 --- a/olp-cpp-sdk-core/CMakeLists.txt +++ b/olp-cpp-sdk-core/CMakeLists.txt @@ -16,7 +16,7 @@ # License-Filename: LICENSE -project(olp-cpp-sdk-core VERSION 1.1.0) +project(olp-cpp-sdk-core VERSION 1.2.0) set(DESCRIPTION "Core network and utility library for the HERE OLP SDK C++") find_package(RapidJSON 1.1.0 REQUIRED CMAKE_FIND_ROOT_PATH_BOTH) diff --git a/olp-cpp-sdk-dataservice-read/CMakeLists.txt b/olp-cpp-sdk-dataservice-read/CMakeLists.txt index 8d74fe663..b69ae2a5b 100644 --- a/olp-cpp-sdk-dataservice-read/CMakeLists.txt +++ b/olp-cpp-sdk-dataservice-read/CMakeLists.txt @@ -15,7 +15,7 @@ # SPDX-License-Identifier: Apache-2.0 # License-Filename: LICENSE -project(olp-cpp-sdk-dataservice-read VERSION 1.1.0) +project(olp-cpp-sdk-dataservice-read VERSION 1.2.0) set(DESCRIPTION "C++ API library for reading OLP data") file(GLOB_RECURSE INC "include/*.h*") diff --git a/olp-cpp-sdk-dataservice-write/CMakeLists.txt b/olp-cpp-sdk-dataservice-write/CMakeLists.txt index f140a239e..779d30862 100644 --- a/olp-cpp-sdk-dataservice-write/CMakeLists.txt +++ b/olp-cpp-sdk-dataservice-write/CMakeLists.txt @@ -15,7 +15,7 @@ # SPDX-License-Identifier: Apache-2.0 # License-Filename: LICENSE -project(olp-cpp-sdk-dataservice-write VERSION 1.1.0) +project(olp-cpp-sdk-dataservice-write VERSION 1.2.0) set(DESCRIPTION "C++ API library for writing data to OLP") set(OLP_SDK_DATASERVICE_WRITE_API_HEADERS