|
| 1 | +## v1.2.0 (04/02/2020) |
| 2 | + |
| 3 | +**Common** |
| 4 | + |
| 5 | +* Added a protected read-only cache. For details, see `olp::cache::CacheSettings`. |
| 6 | +* Added a protected read-only cache [usage example](https://github.com/heremaps/here-olp-sdk-cpp/blob/c30c4051ec012eaca09b7aa7ba4c7e8f6cd7a576/docs/dataservice-cache-example.md). |
| 7 | +* Added ARM platform support for Embedded Linux with GCC 5.4 (32/64 bit). |
| 8 | +* Added the `ErrorCodeToString` function to olp/core/http/NetworkTypes.h. |
| 9 | +* Improved the `olp::http::NetworkCurl` logging. |
| 10 | +* Changed the `IsNull` function in the `olp::client::HRN` class to handle realms according to platform changes. |
| 11 | +* 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. |
| 12 | +* Fixed a possible data race in the `olp::client::Condition` class. |
| 13 | +* Added the `MoveResult` method to the `olp::client::ApiResponse` class. The method returns an rvalue reference to the result. |
| 14 | +* CMake now requires RapidJSON v1.1.0. |
| 15 | +* Various CMake cleanups. |
| 16 | +* Improved error handling in Android `HttpClient`. |
| 17 | +* Fixed the linking error when SDK was statically linked inside a shared library with `CMAKE_POSITION_INDEPENDENT_CODE=ON`. |
| 18 | +* The retry policy now handles server errors automatically. |
| 19 | + |
| 20 | +**olp-cpp-sdk-authentication** |
| 21 | + |
| 22 | +* 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. |
| 23 | +* Deprecated the `olp::authentication::TokenEndpoint` class. It will be removed by 04.2020. |
| 24 | +* Deprecated the `olp::authentication::TokenRequest` class. It will be removed by 04.2020. |
| 25 | +* Deprecated various methods in `olp::authentication::AuthenticationClient`. |
| 26 | +* 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. |
| 27 | + |
| 28 | +**olp-cpp-sdk-dataservice-read** |
| 29 | + |
| 30 | +* 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`. |
| 31 | +* 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. |
| 32 | +* **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. |
| 33 | + |
| 34 | +**olp-cpp-sdk-dataservice-write** |
| 35 | + |
| 36 | +* Enhanced `olp::dataservice::write::StreamLayerClient` to use `olp::thread::TaskScheduler` for asynchronous operations instead of network threads. |
| 37 | +* Removed the unused `olp::dataservice::write::ThreadSafeQueue` class. |
| 38 | +* Deprecated the `CancelAll` methods in all layers. Use the `CancelPendingRequests` methods instead. |
| 39 | + |
1 | 40 | ## v1.1.0 (11/12/2019) |
2 | 41 |
|
3 | 42 | **Common** |
| 43 | + |
4 | 44 | * The deprecated `olp::client::CancellationToken::cancel()` method was removed. Use `olp::client::CancellationToken::Cancel()` instead. |
5 | 45 | * The `curl` network implementation was fixed and can now compile on 32 bits architecture. |
6 | 46 | * The `disk_path` field in `olp::cache::CacheSettings` is deprecated. Use the `disk_path_mutable` field instead. |
7 | 47 | * A new synchronous `CallApi` method was added to `olp::client::OlpClient`. |
8 | 48 | * `pipe` and `pipe2` symbols detection are enhanced in curl.cmake. |
9 | 49 |
|
10 | 50 | **olp-cpp-sdk-authentication** |
| 51 | + |
11 | 52 | * The `SignInClient` method in `olp::authentication::AuthenticationClient` is deprecated in favor of the newly introduced `SignInClient` method with a different signature. |
12 | 53 | * 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. |
13 | 54 | * The `error_id` field was added to the `ErrorResponse` structure. You can use it to get the `errorId` string from the authentication error response. |
14 | 55 |
|
15 | 56 | **olp-cpp-sdk-dataservice-read** |
| 57 | + |
16 | 58 | * The deprecated `GetCatalogMetadataVersion` method was removed from the `olp::dataservice::read::CatalogClient`. |
17 | 59 |
|
18 | 60 | **olp-cpp-sdk-dataservice-write** |
| 61 | + |
19 | 62 | * Legacy and unused code were removed. |
20 | 63 |
|
21 | 64 | ## v1.0.0 (03/12/2019) |
|
0 commit comments