[DCAEGEN2] Release SDK libraries version 1.9.5
[dcaegen2/services/sdk.git] / Changelog.md
1 # Change Log
2 All notable changes to this project will be documented in this file.
3
4 The format is based on [Keep a Changelog](http://keepachangelog.com/)
5 and this project adheres to [Semantic Versioning](http://semver.org/).
6
7 ## [1.9.5] - 2024/05/16
8 #### Added
9       - [DCAEGEN2-3411] - Validation of OpenAPI files in externalrepo fails
10
11 ## [1.9.4] - 2023/02/23
12 #### Added
13       - [DCAEGEN2-3364] - To use kafka API instead of DMAAP API in dmaap-client
14
15 ## [1.9.3] - 2023/02/23
16 #### Added
17       - [DCAEGEN2-3344] - Upgrade dependencies for dcaegen2-services-sdk
18
19
20 ## [1.9.2] - 2023/02/17
21 #### Added
22       - [DCAEGEN2-3352] - Enhance services-sdk's security module JUnits to have OS agnostic path
23
24 ## [1.9.1] - 2022/09/07
25 ### Added
26     - [DCAEGEN2-3165] (https://jira.onap.org/browse/DCAEGEN2-3165) - Fix calculation of code coverage
27     - [DCAEGEN2-3165] (https://jira.onap.org/browse/DCAEGEN2-3165) - increase code coverage 
28
29 ## [1.9.0] - 2022/09/07
30 ### Added
31     - [DCAEGEN2-3098] (https://jira.onap.org/browse/DCAEGEN2-3098) - Remove Consul and CBS property dependencies from CBS-client SDK
32
33 ## [1.8.10] - 2022/07/29
34 ### Added
35     - [DCAEGEN2-3220] (https://jira.onap.org/browse/DCAEGEN2-3220) - Fix SDK Vulnerability. Top up Spring-Boot version to 2.7.2
36
37 ## [1.8.9] - 2022/07/15
38 ### Added
39     - [DCAEGEN2-3223] (https://jira.onap.org/browse/DCAEGEN2-3223) - Fix CBS client environment variable substitution fails for complex cases
40
41 ## [1.8.8] - 2022/02/07
42 ### Added
43     - [DCAEGEN2-3051] (https://jira.onap.org/browse/DCAEGEN2-3051) - Fix SDK Vulnerability. Top up Spring-Boot version to 2.5.9
44
45 ## [1.8.7] - 2021/08/02
46 ### Added
47     - [DCAEGEN2-2692] (https://jira.onap.org/browse/DCAEGEN2-2692) - Make CBS-Client config and policy file paths configurable by environment variables
48
49 ## [1.8.6] - 2021/06/07
50 ### Added
51     - [DCAEGEN2-2827] (https://jira.onap.org/browse/DCAEGEN2-2827) - Handle 429 error Too Many Requests
52
53 ## [1.8.5] - 2021/06/02
54 ### Added
55     - [DCAEGEN2-2752] (https://jira.onap.org/browse/DCAEGEN2-2752) - Update CBS-Client to read policy configuration from a file exposed by policy-sidecar container
56
57 ## [1.8.4] - 2021/05/14
58 ### Added
59     - [DCAEGEN2-2716] (https://jira.onap.org/browse/DCAEGEN2-2716) - Add to Java CBS-Client ability to resolve evns in app-config.yaml loaded from ConfigMap
60
61 ## [1.8.3] - 2021/04/29
62 ### Added
63     - [DCAEGEN2-2716] (https://jira.onap.org/browse/DCAEGEN2-2716) - Adapt CBS-CLient to read configuration from a file exposed in a cfgMap
64
65 ## [1.8.2] - 2021/03/30
66 ### Added
67     - [DCAEGEN2-2701] (https://jira.onap.org/browse/DCAEGEN2-2701) - Add stndDefinedNamespace field to CommonEventHeader
68
69 ## [1.8.1] - 2021/03/25
70 ### Fixed
71     - [DCAEGEN2-2670] (https://jira.onap.org/browse/DCAEGEN2-2670) - Support authorized topics in DMaaP-Client
72         - Remove test dependencies usage from runtime code
73
74 ## [1.8.0] - 2021/03/10
75 ### Added
76     - [DCAEGEN2-2670] (https://jira.onap.org/browse/DCAEGEN2-2670) - Support authorized topics in DMaaP-Client
77
78 ## [1.7.0] - 2021/02/25
79 ### Added
80     - [DCAEGEN2-1483] (https://jira.onap.org/browse/DCAEGEN2-1483) - VESCollector Event ordering
81         - Add possibility to modify the configuration for persistent connection
82         - Support retry-after header in DCAE-SDK DMaaP-Client
83
84 ## [1.6.0] - 2021/02/03
85     - Add configurable timeout in dmaap-client
86     - Add configurable retry mechanism in dmaap-client
87
88 ## [1.5.0] - 2020/11/26
89     - Update spring boot to version: 2.4.0
90     - Update reactor to version: 2020.0.1
91     - Update testcontainers to version: 1.15.0
92  
93 ## [1.4.4] - 2020/11/19
94     - Fix CbsClientFactory to allow retry on Mono from createCbsClient
95
96 ## [1.4.3] - 2020/08/31
97     - Change parameters of external-schema-manager to JSON notation
98
99 ## [1.4.2] - 2020/08/18
100     - Update spring boot to version: 2.3.3.RELEASE
101
102 ## [1.4.1] - 2020/07/27
103     - Update spring boot to version: 2.2.9.RELEASE
104     - Update testcontainers version:  1.14.3
105     - Fix deprecation warnings
106
107 ## [1.4.0] - 2020/07/27
108     - Add new component external-schema-manager for json validation with schema stored in local cache
109
110 ## [1.3.6] - 2020/03/13
111     - snapshot version changed to 1.3.6
112
113 ## [1.3.5] - 2020/03/09
114     - Create jar without dependencies for crypt-password module
115
116 ## [1.3.4] - 2019/12/10
117     - Usage of Java 11
118
119 ## [1.3.3] - 2019/11/13
120     - Upgrade CBS to support SSL
121     - Fix static code vulnerabilities
122     - Exclude IT from tests
123     - Remove AAI client from SDK
124
125 ## [1.3.2] - 2019/10/02
126     - Restructure AAI client
127     - Get rid of common-dependency module
128     - Rearrange files in packages inside rest-services
129
130 ## [1.3.1] - 2019/09/26
131     - Bugfix release: AAI client
132         - Make AaiGetServiceInstanceClient build correct path to the service resource in AAI
133
134 ## [1.3.0] - 2019/06/14
135     - (ElAlto - under development) ##
136     - All El-Alto work noted under 1.2.0-SNAPSHOT will roll into this version
137     - Version update was done for tracking global-jjb migration work and corresponding submission - https://gerrit.onap.org/r/#/c/dcaegen2/services/sdk/+/89902/
138
139 ## [1.2.0] - 2019/05/27
140     - (replaced by 1.3.0) ##
141     - WARNING: This is a work in progress. Do not use unless you know what you are doing!
142
143     - DMaaP client
144         - Change the factory so it's more configurable
145         - Old DMaaP client is now deprecated
146         - Integration tests are now using TestContainers with an actual DMaaP in order to confirm compatibility with a particular DMaaP version.
147         - Breaking change: MessageRouterSubscribeResponse now contains list of JsonElement instead of JsonArray
148     - CBS client
149         - Use new, simplified CBS lookup method
150         - Breaking change: CbsClientConfiguration replaces old EnvProperties. This way the class reflects overall SDK naming convention.
151     - Crypt Password
152         - Additional command line usage options (read password from stdin)
153         - Enhanced test coverage
154     - Internals/others
155         - Remove CloudHttpClient and use RxHttpClient instead which should unify REST API consumption across client libraries
156     - Moher (MOnitoring and HEalthcheck Rest API)
157         - This API is in incubation stage. Do not use it yet.
158         - Initial PoC for new module which should help when implementing these features in a DCAE service
159         - Expose Prometheus-compliant monitoring endpoint
160
161 ## [1.1.6] - 2019/05/07
162     - Bugfix release: (Old) DMaaP client:
163         - Security keys was always loaded from JAR instead of given file system path. Only code using SecurityKeysUtil class had been affected. If you do not use SecurityKeysUtil class or you are using the new DMaaP MR client API (org.onap.dcaegen2.services.sdk.rest.services.dmaap.client.{api, model} packages) then you are safe and the update is not required.
164
165 ## [1.1.5] 2019/05/07
166     - DMaaP client
167         - Force non-chunked transfer encoding, because DMaaP MR does not support chunks.
168         - DMaaP MR client API should be used in new code. Some minor incompatible changes can occur but it's more or less done.
169
170 ## [1.1.4] - 2019/03/06
171     - Config Binding Service client
172         - predefined parsers for input and output streams
173             - remove the need for a DCAE application to manually interpret streams_publishes (Sinks) and streams_subscribes (Sources) parts of the configuration
174             - available parsers for DMaaP Message Router and DMaaP Data Router streams
175             - experimental support for Kafka streams
176         - support for other CBS endpoints besides get-configuration: get-by-key, get-all (introduces minor but breaking changes)
177     - DMaaP client
178         - New, experimental DMaaP client. It's not ready for use yet (not integration tested with DMaaP instance). However, you can use this API if you target El Alto release (note that some minor interface changes might be introduced).
179     - Internals:
180         - Improved http client: RxHttpClient
181         - RxHttpClient uses chunked transfer-encoding only when content-length is NOT specified.
182
183 Migration guide
184
185 All CbsClient methods gets CbsRequest as a first parameter instead of RequestDiagnosticContext. The CbsRequest may be created by calling CbsRequests factory methods. For existing code to work you will need to do the following change:
186
187 .. code-block:: java
188
189     // From this:
190     CbsClientFactory.createCbsClient(env)
191         .flatMap(cbsClient -> cbsClient.get(diagnosticContext))
192         ...
193
194     // To this:
195     final CbsRequest request = CbsRequests.getConfiguration(diagnosticContext);
196     CbsClientFactory.createCbsClient(env)
197         .flatMap(cbsClient -> cbsClient.get(request))
198         ...
199
200 The similar changes will be required for other CbsClient methods (periodic get and periodic updates).
201
202 ## [1.1.3] - 2019/03/01
203     - initial release
204     - Config Binding Service client
205         - basic functionality
206         - CBS service discovery
207         - get application configuration as JsonObject
208         - periodic query + periodic updates query
209     - BCrypt password utility