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