87ccf4242509a02d0fac3bb5fca97aa5220c58ce
[federation.git] / docs / release-notes.rst
1 .. ===============LICENSE_START=======================================================
2 .. Acumos CC-BY-4.0
3 .. ===================================================================================
4 .. Copyright (C) 2017-2019 AT&T Intellectual Property & Tech Mahindra. All rights reserved.
5 .. ===================================================================================
6 .. This Acumos documentation file is distributed by AT&T and Tech Mahindra
7 .. under the Creative Commons Attribution 4.0 International License (the "License");
8 .. you may not use this file except in compliance with the License.
9 .. You may obtain a copy of the License at
10 ..
11 .. http://creativecommons.org/licenses/by/4.0
12 ..
13 .. This file is distributed on an "AS IS" BASIS,
14 .. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 .. See the License for the specific language governing permissions and
16 .. limitations under the License.
17 .. ===============LICENSE_END=========================================================
18
19 ================================
20 Federation Gateway Release Notes
21 ================================
22
23 This server is available as a Docker image in a Docker registry at the Linux Foundation.
24 The image name is "federation-gateway" and the tag is a version string as shown below.
25
26 Version 3.1.0, 2019-12-16
27 -------------------------
28 * Update dependency version for the common data service client to 3.1.0 (`ACUMOS-3845 <https://jira.acumos.org/browse/ACUMOS-3845>`_)
29
30 Version 3.0.2, 2019-11-04
31 -------------------------
32 * Don't re-tag imported docker images unless the tag is different (`ACUMOS-3670 <https://jira.acumos.org/browse/ACUMOS-3670>`_)
33 * Update dependency versions for the security and license profile validation clients (`ACUMOS-3669 <https://jira.acumos.org/browse/ACUMOS-3669>`_)
34
35 Version 3.0.1, 2019-09-26
36 -------------------------
37 * When a model has been federated, register it with the license manager (`ACUMOS-3484 <https://jira.acumos.org/browse/ACUMOS-3484>`_)
38   * This adds a new required configuration value, "license-manager.url" for the
39     license management service.
40
41 Version 3.0.0, 2019-09-13
42 -------------------------
43 * Upgrade server to Java 11.  Compile client for Java 8 (`ACUMOS-3334 <https://jira.acumos.org/browse/ACUMOS-3334>`_)
44   * Compile and run with Java 11, but keep client library compliance level at Java 8.
45
46 * Add "acumos/" prefix to container image name
47
48 * Update to CDS 3.0.0
49
50 Version 2.3.0, 2019-09-06
51 -------------------------
52 * Portal to show details of federation actions (`ACUMOS-1778 <https://jira.acumos.org/browse/ACUMOS-1778>`_)
53
54 * Run SV license scan when a model has been federated (`ACUMOS-3396 <https://jira.acumos.org/browse/ACUMOS-3396>`_)
55   * This adds a new required configuration value, "verification.url" for the
56     security verification service.
57
58 * Java code upgrade to Java 11 (`ACUMOS-3334 <https://jira.acumos.org/browse/ACUMOS-3334>`_)
59
60 * Update to CDS 2.2.6
61
62 * Fix DI artifact create fail due to Federation use of a stale TCP stream (`ACUMOS-3193 <https://jira.acumos.org/browse/ACUMOS-3193>`_)
63
64 * Federated model DI name to include model name - same as source peer DI name (`ACUMOS-3195 <https://jira.acumos.org/browse/ACUMOS-3195>`_)
65
66 * Publish E5 Federation client library (`ACUMOS-2760 <https://jira.acumos.org/browse/ACUMOS-2760>`_)
67
68   3 new sub-projects are introduced, in addition to the existing "gateway" sub-project.
69   * "acumos-fgw-client-config" contains bean classes used to specify properties
70     of a client's connection to its server, including basic authentication and
71     TLS (SSL) related properties.
72
73   * "acumos-fgw-client-test" contains classes for providing mock responses to
74     a client for testing applications that make calls to a server, as well as
75     dummy key store and trust store files to enable a client to be used to
76     test a server.
77
78   * "acumos-fgw-client" contains implementations of clients for both the
79     external "E5" and private interfaces to the Acumos Federation Gateway
80     as well as bean classes for the JSON wire formats used by those interfaces.
81
82   The existing "gateway" project is modified to use the client subproject when
83   making requests to a peer Acumos instance, when sending or receiving
84   artifacts from the Nexus server, and for creating the rest template used
85   to communicate with CDS.
86
87 * Access to the Swagger API is fixed and now gives responses appropriate to
88   the interface being queried (external "E5" or private).
89
90 * Some configuration is simplified.
91   * The federation.ssl.client-auth configuration parameter is now named
92     federation.client-auth and defaults to WANT, enabling access to the
93     Swagger specification on the external "E5" interface without requiring
94     a client certificate.  Attempts to access the REST API endpoints without
95     providing a client certificate will return a 403 Forbidden error.
96   * The local.ssl.client-auth configuration parameter is now named
97     local.client-auth and defaults to WANT, enabling access to the
98     Swagger specification on the private interface without requiring
99     a client certificate.  Attempts to access the REST API endpoints without
100     providing a client certificate will return a 403 Forbidden error.
101   * The federation.registration.enabled configuration parameter is now named
102     federation.registration-enabled.  It still defaults to False.
103   * The federation.instance configuration parameter no longer needs to be set to
104     "gateway" and no longer has any effect.
105   * The value "local" in the spring.profiles.active configuration parameter no
106     longer has any effect.
107   * The catalog.catalogs-selector configuration parameter no longer has any effect.
108   * The various task.* configuration parameters no longer have any effect.
109   * The cdms.client.page-size configuration parameter no longer has any effect.
110   * The catalog-local.source, catalog-local.catalogs, codes-local.source,
111     peers-local.source, and peer-local.interval configuration parameters no
112     longer have any effect.
113
114 * Documentation is updated to reflect these changes.
115
116 Version 2.2.1, 2019-07-18
117 -------------------------
118 * Fix Boreas branch Jenkins build not working (`ACUMOS-3244 <https://jira.acumos.org/browse/ACUMOS-3244>`_)
119
120 * Fix DI artifact create fail due to Federation use of a stale TCP stream (`ACUMOS-3193 <https://jira.acumos.org/browse/ACUMOS-3193>`_)
121
122 * Federated model DI name to include model name - same as source peer DI name (`ACUMOS-3195 <https://jira.acumos.org/browse/ACUMOS-3195>`_)
123
124 Version 2.2.0, 2019-04-16
125 -------------------------
126 * Increase Spring async task timeout value (spring.mvc.async.request-timeout)
127   to 10 minutes (`ACUMOS-2749 <https://jira.acumos.org/browse/ACUMOS-2749>`_)
128
129   This prevents timeouts during retrieval of large docker image artifacts.
130
131 * Update to CDS 2.2.x with subscription by catalogs (`ACUMOS-2732 <https://jira.acumos.org/browse/ACUMOS-2732>`_)
132
133   This makes changes to the REST api for accessing Federation on both the
134   public and private interfaces:
135
136   * When listing solutions, the optional selector query parameter is replaced
137     by a required catalogId query parameter
138
139   * When getting revision details an optional catalogId query parameter is
140     added, used to retrieve descriptions and documents, from that catalog, for
141     the revision.  If not specified, no descriptions or documents are returned.
142
143   * When getting artifact and document content, the form of the URI is changed
144     to eliminate the unused solution and revision IDs.
145
146   * When getting documents for a revision, the form of the URI is changed
147     to eliminate the unused solution ID and a required catalogID query parameter
148     is added.
149
150   Solution revisions in CDS no longer have access type codes, so the (optional)
151   catalog.default-access-type-code configuration parameter has been removed.
152
153 * Eliminate vulnerabilities and many "code smells" identified by SONAR.
154
155 Version 2.1.2, 2019-03-27
156 -------------------------
157 * Add JUnit test cases to reach 50% or better code coverage (`ACUMOS-2584 <https://jira.acumos.org/browse/ACUMOS-2584>`_)
158 * Add API to list remote catalogs to support subscribing (`ACUMOS-2575 <https://jira.acumos.org/browse/ACUMOS-2575>`_)
159   API to list catalogs is /catalogs
160 * Refactor code to avoid duplication related to implementing listing remote catalogs.
161 * Documentation configuration parameters (`ACUMOS-2661 <https://jira.acumos.org/browse/ACUMOS-2661>`_)
162
163 Version 2.1.1, 2019-03-07
164 -------------------------
165 * Solution picture should be copied (`ACUMOS-2570 <https://jira.acumos.org/browse/ACUMOS-2570>`_)
166
167 Version 2.1.0, 2019-03-05
168 -------------------------
169 * Update to CDS 2.1.2
170
171 Version 2.0.1, 2019-02-26
172 -------------------------
173
174 * Add catalogId field in solution search selector (`ACUMOS-2285 <https://jira.acumos.org/browse/ACUMOS-2285>`_)
175 * Normalize configured Nexus URL to have exactly one trailing slash (`ACUMOS-2554 <https://jira.acumos.org/browse/ACUMOS-2554>`_)
176 * Allow server to run as unprivileged user (`ACUMOS-2551 <https://jira.acumos.org/browse/ACUMOS-2551>`_)
177 * Various problems found with version 2.0.0 (`ACUMOS-2570 <https://jira.acumos.org/browse/ACUMOS-2570>`_)
178   - List dependency on jersey-hk2 for spring-boot
179   - Instant rendered as JSON object rather than seconds since epoch
180   - Seconds since epoch may parse as Integer instead of Long
181
182 Version 2.0.0, 2019-02-20
183 -------------------------
184
185 * Use Boreas log pattern; remove EELF (`ACUMOS-2329 <https://jira.acumos.org/browse/ACUMOS-2329>`_)
186 * Fix repeated update of metadata (`ACUMOS-2399 <https://jira.acumos.org/browse/ACUMOS-2399>`_)
187 * Update to CDS 2.0.7
188
189 Version 1.18.7, 2018-10-30
190 --------------------------
191
192 * Fix the subscription task early cancellation (`ACUMOS-1937 <https://jira.acumos.org/browse/ACUMOS-1937>`_)
193 * Fix the preemptive authentication (`ACUMOS-1952 <https://jira.acumos.org/browse/ACUMOS-1952>`_)
194
195 Version 1.18.6, 2018-10-08
196 --------------------------
197
198 * Fix for the handling of mis-represented content uris (`ACUMOS-1780 <https://jira.acumos.org/browse/ACUMOS-1780>`_)
199 * Adds subscription option directing the handling of error in content retrieval with respect to catalog updates
200
201 Version 1.18.5, 2018-10-02
202 --------------------------
203
204 * Fix for loss of file name prefix/suffix (`ACUMOS-1780 <https://jira.acumos.org/browse/ACUMOS-1780>`_)
205 * Fix for processing of docker artifacts, push to the local registry (`ACUMOS-1781 <https://jira.acumos.org/browse/ACUMOS-1781>`_)
206 * Add peer 'isActive' as controller calls pre-authorization check
207 * Fix the artifact content processing condition in the gateway
208
209 Version 1.18.4, 2018-09-21
210 --------------------------
211
212 * Fix download of large artifacts
213 * Upgrade Spring-Boot to 1.5.16.RELEASE (`ACUMOS-1754 <https://jira.acumos.org/browse/ACUMOS-1754>`_)
214
215 Version 1.18.3, 2018-09-14
216 --------------------------
217
218 * Increase max heap size
219 * configuration changes:
220   new top level docker configuration block::
221
222     "docker": {
223         "host": "tcp://your_host:port",
224         "registryUrl": "your_registry:port",
225         "registryUsername": "docker_username",
226         "registryPassword": "docker_password",
227         "registryEmail": ""
228     }
229
230 Version 1.18.2, 2018-09-13
231 --------------------------
232
233 * Rely on solution detail API for mapping (`ACUMOS-1690 <https://jira.acumos.org/browse/ACUMOS-1690>`_)
234 * Add binary stream to resource http content mapper (`ACUMOS-1690 <https://jira.acumos.org/browse/ACUMOS-1690>`_)
235 * Allow configuration of underlying executor and scheduler
236 * Do not overwrite user during mapping for local solutions
237
238 Version 1.18.1, 2018-09-05
239 --------------------------
240
241 * Simplified catalog solutions lookup
242 * Fix 'self' peer not found (`ACUMOS-1694 <https://jira.acumos.org/browse/ACUMOS-1694>`_)
243 * Fix task scheduler initialization (`ACUMOS-1690 <https://jira.acumos.org/browse/ACUMOS-1690>`_)
244 * Fix solution tag handling
245 * Move solution and revision updates to service interface
246
247 Version 1.18.0, 2018-09-05
248 --------------------------
249
250 * Align with data model changes from CDS 1.18.x
251 * Fix subscription update processing (`ACUMOS-1693 <https://jira.acumos.org/browse/ACUMOS-1693>`_)
252
253 Version 1.17.1, 2018-09-04
254 --------------------------
255
256 * Spread the use of configuration beans (`ACUMOS-1692 <https://jira.acumos.org/browse/ACUMOS-1692>`_)
257
258 Version 1.17.0, 2018-08-14
259 --------------------------
260
261 * Align with data model changes from CDS 1.17.x
262 * Add revision document federation (`ACUMOS-1606 <https://jira.acumos.org/browse/ACUMOS-1606>`_)
263 * Add tag federation (`ACUMOS-1544 <https://jira.acumos.org/browse/ACUMOS-1544>`_)
264 * Fix authorship federation (`ACUMOS-626 <https://jira.acumos.org/browse/ACUMOS-626>`_)
265 * The federation API for access to artifact and document content access have changed
266   to /solutions/{solutionId}/revisions/{revisionId}/artifacts/{artifactId}/content
267   and /solutions/{solutionId}/revisions/{revisionId}/documents/{documentId}/content
268
269 Version 1.16.1, 2018-08-08
270 --------------------------
271
272 * Temporary patch for tag handling during federation procedures
273
274 Version 1.16.0, 2018-08-01
275 --------------------------
276
277 * Aligns with the data model changes from CDS 1.16.x
278 * Minor fixes in order to adhere to project coding standards.
279
280 Version 1.15.1, 2018-07-31
281 --------------------------
282
283 * Fixes catalog solution lookup strategy due to used criteria moving to other entities (solution -> revision)
284 * Fixes some Sonar complaints
285 * Adds more unit tests for CDS based service implementations
286 * Align version numbers with CDS
287
288 Version 1.1.5, 2018-07-12
289 -------------------------
290
291 * Aligns with the data model changes from CDS 1.15 (`ACUMOS-1330 <https://jira.acumos.org/browse/ACUMOS-1330>`_)
292
293 Version 1.1.4.1, 2018-07-11
294 ---------------------------
295
296 * Fix handling of docker images with no tags (`ACUMOS-1015 <https://jira.acumos.org/browse/ACUMOS-1015>`_)
297
298 Version 1.1.4, 2018-06-20
299 -------------------------
300
301 * Fix result size test when retrieving 'self' peer
302 * Fix handling of null solutions filter in the service. Fix the handling of no such item errors in catalog controller.
303
304 Version 1.1.3, 2018-05-10
305 -------------------------
306
307 * Upgrade to CDS 1.14.4
308
309 Version 1.1.2, 2018-04-19
310 -------------------------
311
312 * Revise code for Sonar warnings (`ACUMOS-672 <https://jira.acumos.org/browse/ACUMOS-672>`_)
313
314 Version 1.1.1, 2018-04-13
315 -------------------------
316
317 * Unit tests for local interface
318 * Separate federation and local service interfaces (`ACUMOS-276 <https://jira.acumos.org/browse/ACUMOS-276>`_)
319
320 Version 1.1.0, 2018-03-09
321 -------------------------
322
323 * Separate between federation and local interface with respect to network configuration, authorization and available REST API.
324 * Upgrade to CDS 1.14.0
325
326 Version 1.0.0, 2018-02-12
327 -------------------------
328
329 * Use release (not snapshot) versions of acumos-nexus-client and common-dataservice libraries
330 * Limit JVM memory use via Docker start command
331 * Revise docker projects to deploy images to nexus3.acumos.org
332 * Make aspectjweaver part of runtime
333 * Add dependency copy plugin
334
335 Version 0.2.0, 2017-11-28
336 -------------------------
337
338 * Support to CDS 1.9.0
339 * 2-Way SSL Support
340 * X509 Subject Principal Authentication