Update NEWS for 9.0.2
[odlparent.git] / docs / NEWS.rst
1 ========================
2 ODL Parent release notes
3 ========================
4
5 Version 9.0.2
6 -------------
7 This is a minor upgrade from version 9.0.1.
8
9 Bug fixes
10 ~~~~~~~~~
11 * The upgrade to Karaf 4.3.0 caused a slight misalignment of ``org.apache.felix.metatype``
12   and ``org.osgi.service.event`` versions, leading to an unnecessary rewiring of the container
13   most notably during Single Feature Test. This has now been corrected.
14   See `ODLPARENT-253 <https://jira.opendaylight.org/browse/ODLPARENT-253>`__ for more information.
15
16 * ``stax-utils`` component has a default dependency on ``com.bea.xml:jsr174-ri``, which is not
17   resolvable from Maven Central. This artifact is not needed with modern JRE versions, hence add
18   an explicit exclusion.
19
20 Third-party dependencies
21 ~~~~~~~~~~~~~~~~~~~~~~~~
22 * Jetty 9.4.38.v20210224 → 9.4.40.v20210413, release notes:
23   * `9.4.39.v20210325 <https://github.com/eclipse/jetty.project/releases/tag/jetty-9.4.39.v20210325>`__
24   * `9.4.40.v20210413 <https://github.com/eclipse/jetty.project/releases/tag/jetty-9.4.40.v20210413>`__
25
26 * Karaf `4.3.1 → 4.3.2 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12349968>`__
27
28 * Netty `4.1.63 → 4.1.65 <https://netty.io/news/2021/05/19/4-1-65-Final.html>`__
29
30 Version 9.0.1
31 -------------
32 This is a minor upgrade from version 9.0.0.
33
34 Bug fixes
35 ~~~~~~~~~
36 The upgrade of ``duplicate-finder-maven-plugin`` ended up triggering build failures on ``.api_description``
37 files packaged in artifacts. This regression has now been fixed.
38
39 Third-party dependencies
40 ~~~~~~~~~~~~~~~~~~~~~~~~
41 * Checkstyle `8.41 → 8.42 <https://checkstyle.org/releasenotes.html#Release_8.42>`__.
42
43 * Dropwizard Metrics 4.1.19 → 4.1.21, release notes:
44   * `4.1.20 <https://github.com/dropwizard/metrics/releases/tag/v4.1.20>`__
45   * `4.1.21 <https://github.com/dropwizard/metrics/releases/tag/v4.1.21>`__
46
47 * LMAX Disruptor 3.4.2 → 3.4.4, release notes:
48   * `3.4.3 <https://github.com/LMAX-Exchange/disruptor/releases/tag/3.4.3>`__
49   * `3.4.3 <https://github.com/LMAX-Exchange/disruptor/releases/tag/3.4.4>`__
50
51 * Woodstox `6.2.5 → 6.2.6 <https://github.com/FasterXML/woodstox/milestone/23?closed=1>`__
52
53 * XBean finder `4.18 → 4.19 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310312&version=12348824>`__
54
55 Plugin upgrades
56 ~~~~~~~~~~~~~~~
57 * maven-bundle-plugin 4.2.1 → 5.1.2, release notes:
58   * `5.1.1 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310100&version=12346016>`__
59   * `5.1.2 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310100&version=12350026>`__
60
61 Version 9.0.0
62 -------------
63 This is a major upgrade from version 8, with breaking changes; downstream projects may need to make changes to upgrade
64 to this version.
65
66 Upstream version removals
67 ~~~~~~~~~~~~~~~~~~~~~~~~~
68 The following upstream dependencies have been removed from dependency management:
69
70 * ``javax.inject:javax.inject``. This dependency should be provided by target runtime. Furthermore we provide the same
71   functionality via ``com.guicedee.services:javax.inject``, which is properly declared and is a JPMS module. See
72   `ODLPARENT-246 <https://jira.opendaylight.org/browse/ODLPARENT-246>`__ for more information.
73
74 Improvements
75 ~~~~~~~~~~~~
76 * The configuration of ``maven-compiler-plugin`` has been updated to expand ``javac`` warning options to include almost
77   all of them.
78 * The default description in parent ``pom.xml`` has been updated to only include ``${project.artifactId}``, not a generic
79   blurb. See `ODLPARENT-244 <https://jira.opendaylight.org/browse/ODLPARENT-244>`__ for more information.
80 * The ``single-feature-test`` substrate has been updated to allow Java Flight Recorder to be enabled during testing runs.
81   This feature has falled into disrepair as the JFR facility has been productized.
82 * Configuration of various components has been updated to be deactivated when executing with JDK versions newer than 11,
83   so that odlparent infrastructure works out of the box with JDK 16, albeit sacrificing some validation. Most notably
84   ``SpotBugs`` and ``Single Feature Test`` are disabled, with corresponding notices displayed.
85 * We now expose the ability to check dependency declaration consistency via ``maven-dependency-plugin``'s ``analyze-only``
86   goal. This functionality is enabled by default, but does not cause the build to fail when inconsistencies are found. It
87   can be disabled by on a per-artifact basis by definining ``odlparent.dependency.skip`` property to ``true``. It can also
88   be configured to fail the build on a per-artifact basis by defining ``odlparent.dependency.enforce`` property to ``true``.
89
90 Third-party dependencies
91 ~~~~~~~~~~~~~~~~~~~~~~~~
92 * Antlr 4.8-1 → 4.9.2, release notes:
93   * `4.9 <https://github.com/antlr/antlr4/releases/tag/4.9>`__
94   * `4.9.1 <https://github.com/antlr/antlr4/releases/tag/4.9.1>`__
95   * `4.9.2 <https://github.com/antlr/antlr4/releases/tag/4.9.2>`__
96
97 * Checkstyle 8.39.0 → 8.41.1, release notes:
98   * `8.40.0 <https://checkstyle.org/releasenotes.html#Release_8.40.0>`__
99   * `8.41.0 <https://checkstyle.org/releasenotes.html#Release_8.41.0>`__
100   * `8.41.1 <https://checkstyle.org/releasenotes.html#Release_8.41.1>`__
101
102 * commons-lang3 `3.11 → 3.12 <https://commons.apache.org/proper/commons-lang/changes-report.html#a3.12>`__
103
104 * Dropwizard Metrics 4.1.12.1 → 4.1.19, release notes:
105   * `4.1.13 <https://github.com/dropwizard/metrics/releases/tag/v4.1.13>`__
106   * `4.1.14 <https://github.com/dropwizard/metrics/releases/tag/v4.1.14>`__
107   * `4.1.15 <https://github.com/dropwizard/metrics/releases/tag/v4.1.15>`__
108   * `4.1.16 <https://github.com/dropwizard/metrics/releases/tag/v4.1.16>`__
109   * `4.1.17 <https://github.com/dropwizard/metrics/releases/tag/v4.1.17>`__
110   * `4.1.18 <https://github.com/dropwizard/metrics/releases/tag/v4.1.18>`__
111   * `4.1.19 <https://github.com/dropwizard/metrics/releases/tag/v4.1.19>`__
112
113 * Enunciate `2.13.2 → 2.13.3 <https://github.com/stoicflame/enunciate/releases/tag/v2.13.3>`__
114
115 * Google Truth 1.1 → 1.1.2, release notes:
116   * `1.1.1 <https://github.com/google/truth/releases/tag/release_1_1_1>`__
117   * `1.1.2 <https://github.com/google/truth/releases/tag/release_1_1_2>`__
118
119 * Guava 29.0 → 30.1.1, release notes:
120   * `30.0 <https://github.com/google/guava/releases/tag/v30.0>`__
121   * `30.1 <https://github.com/google/guava/releases/tag/v30.1>`__
122   * `30.1.1 <https://github.com/google/guava/releases/tag/v30.1.1>`__
123
124 * JUnit `4.13.1 → 4.13.2 <https://github.com/junit-team/junit4/blob/HEAD/doc/ReleaseNotes4.13.2.md>`__
125
126 * Karaf `4.3.0 → 4.3.1 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12348818>`__
127
128 * Log4J 2.13.3 → 2.14.1, release notes:
129   * `2.14.0 <https://logging.apache.org/log4j/2.x/changes-report.html#a2.14.0>`__
130   * `2.14.1 <https://logging.apache.org/log4j/2.x/changes-report.html#a2.14.1>`__
131
132 * Netty 4.1.59 → 4.1.63, release notes:
133   * `4.1.60 <https://netty.io/news/2021/03/09/4-1-60-Final.html>`__
134   * `4.1.61 <https://netty.io/news/2021/03/30/4-1-61-Final.html>`__
135   * `4.1.62 <https://netty.io/news/2021/03/31/4-1-62-Final.html>`__
136   * `4.1.63 <https://netty.io/news/2021/04/01/4-1-63-Final.html>`__
137
138 * Sevntu `1.38.0 → 1.39.0 <https://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.39.0>`__
139
140 * ThreeTen `1.5.0 → 1.6.0 <https://www.threeten.org/threeten-extra/changes-report.html#a1.6.0>`__
141
142 * Woodstox `6.2.4 → 6.2.5 <https://github.com/FasterXML/woodstox/milestone/22?closed=1>`__
143
144 * Xtend `2.24.0 → 2.25.0 <https://www.eclipse.org/xtend/releasenotes.html#/releasenotes/2021/03/02/version-2-25-0>`__
145
146 Plugin upgrades
147 ~~~~~~~~~~~~~~~
148 * Asciidoctor 1.5.7.1 → 2.1.0 (with related AsciidoctorJ upgrades)
149   * `2.0.0 <https://github.com/asciidoctor/asciidoctor-maven-plugin/releases/tag/asciidoctor-maven-plugin-2.0.0>`__
150   * `2.1.0 <https://github.com/asciidoctor/asciidoctor-maven-plugin/releases/tag/asciidoctor-maven-plugin-2.1.0>`__
151
152 * git-commit-id-plugin 3.0.1 → 4.0.4, release notes:
153   * `4.0.0 <https://github.com/git-commit-id/git-commit-id-maven-plugin/releases/tag/v4.0.0>`__
154   * `4.0.1 <https://github.com/git-commit-id/git-commit-id-maven-plugin/releases/tag/v4.0.1>`__
155   * `4.0.2 <https://github.com/git-commit-id/git-commit-id-maven-plugin/releases/tag/v4.0.2>`__
156   * `4.0.3 <https://github.com/git-commit-id/git-commit-id-maven-plugin/releases/tag/v4.0.3>`__
157   * `4.0.4 <https://github.com/git-commit-id/git-commit-id-maven-plugin/releases/tag/v4.0.4>`__
158
159 * modernizer-maven-plugin `2.1.0 → 2.2.0 <https://github.com/gaul/modernizer-maven-plugin/releases/tag/modernizer-maven-plugin-2.2.0>`__
160
161 Version 8.1.1
162 -------------
163 This is a minor upgrade from version 8.1.0.
164
165 Improvements
166 ~~~~~~~~~~~~
167 * Support for building a `static Karaf distribution <https://karaf.apache.org/manual/latest/#_instances_and_distributions_goals>`__
168   has been added. It is driven by a new parent pom.xml, ``karaf-dist-static``. For more information
169   see Karaf documentation and `ODLPARENT-251 <https://jira.opendaylight.org/browse/ODLPARENT-251>`__.
170 * Support for `improved documentation tags <https://bugs.openjdk.java.net/browse/JDK-8068562>`__ has
171   been added to default ``maven-javadoc-plugin`` configuration. See
172   `ODLPARENT-252 <https://jira.opendaylight.org/browse/ODLPARENT-252>`__ for more information.
173 * Version declaration for ``osgi.annotation`` has been added.
174
175 Third-party dependencies
176 ~~~~~~~~~~~~~~~~~~~~~~~~
177 * commons-net `3.7.2 → 3.8.0 <https://commons.apache.org/proper/commons-net/changes-report.html#a3.8.0>`__
178
179 * Netty `4.1.58 → 4.1.59 <https://netty.io/news/2021/02/08/4-1-59-Final.html>`__
180
181 * Woodstox `6.2.3 → 6.2.4 <https://github.com/FasterXML/woodstox/milestone/21?closed=1>`__
182
183 Plugin upgrades
184 ~~~~~~~~~~~~~~~
185 * maven-checkstyle-plugin `3.1.1 → 3.1.2 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317223&version=12347024>`__
186
187 * maven-invoker-plugin `3.2.1 → 3.2.2 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317525&version=12346157>`__
188
189 Version 8.1.0
190 -------------
191 This is a minor upgrade from version 8.0.1, with some potentially-breaking
192 changes.
193
194 The most prominent is the upgrade to Karaf 4.3.0, which brings in a host of
195 updates to related components -- including OSGi Release 7 and Jackson 2.11.x.
196
197 Feature updates
198 ~~~~~~~~~~~~~~~
199 * The ``odl-jackson-2.10`` feature and artifact were renamed to ``odl-jackson-2.11``
200   to reflect the bump in Jackson version.
201
202 Third-party dependencies
203 ~~~~~~~~~~~~~~~~~~~~~~~~
204 * Bouncy Castle `1.66 → 1.68 <https://www.bouncycastle.org/releasenotes.html>`__
205
206 * Checkstyle 8.36.1 → 8.39.0, release notes:
207   * `8.36.2 <https://checkstyle.org/releasenotes.html#Release_8.36.2>`__
208   * `8.37.0 <https://checkstyle.org/releasenotes.html#Release_8.37.0>`__
209   * `8.38.0 <https://checkstyle.org/releasenotes.html#Release_8.38.0>`__
210   * `8.39.0 <https://checkstyle.org/releasenotes.html#Release_8.39.0>`__
211
212 * commons-net 3.7 → 3.7.2, release notes:
213   * `3.7.1 <https://commons.apache.org/proper/commons-net/changes-report.html#a3.7.1>`__
214   * `3.7.2 <https://commons.apache.org/proper/commons-net/changes-report.html#a3.7.2>`__
215
216 * enunciate `2.13.1 → 2.13.2 <https://github.com/stoicflame/enunciate/releases/tag/v2.13.2>`__
217
218 * Jackson 2.10.5 → 2.11.4, release notes:
219   * `2.11.0 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.11>`__
220   * `2.11.1 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.11.1>`__
221   * `2.11.2 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.11.2>`__
222   * `2.11.3 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.11.3>`__
223   * `2.11.4 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.11.4>`__
224
225 * Karaf `4.2.10 → 4.3.0 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12343304>`__
226
227 * Netty 4.1.53 → 4.1.58, release notes:
228   * `4.1.54 <https://netty.io/news/2020/11/11/4-1-54-Final.html>`__
229   * `4.1.55 <https://netty.io/news/2020/12/08/4-1-55-Final.html>`__
230   * `4.1.56 <https://netty.io/news/2020/12/17/4-1-56-Final.html>`__
231   * `4.1.57 <https://netty.io/news/2021/01/12/4-1-57-Final.html>`__
232   * `4.1.58 <https://netty.io/news/2021/01/13/4-1-58-Final.html>`__
233
234 * Google Truth `1.0.1 → 1.1 <https://github.com/google/truth/releases/tag/release_1_1>`__
235
236 * Powermock 2.0.7 → 2.0.9, release notes:
237   * `2.0.8 <https://github.com/powermock/powermock/blob/release/2.x/docs/release-notes/official.md#208>`__
238   * `2.0.9 <https://github.com/powermock/powermock/blob/release/2.x/docs/release-notes/official.md#209>`__
239
240 * Sevntu `1.37.1 → 1.38.0 <https://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.38.0>`__
241
242 * XBean finder `4.17 → 4.18 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310312&version=12348171>`__
243
244 * xmlunit 2.7.0 → 2.8.2, release notes:
245   * `2.8.0 <https://github.com/xmlunit/xmlunit/releases/tag/v2.8.0>`__
246   * `2.8.1 <https://github.com/xmlunit/xmlunit/releases/tag/v2.8.1>`__
247   * `2.8.2 <https://github.com/xmlunit/xmlunit/releases/tag/v2.8.2>`__
248
249 * Xtend `2.23.0 → 2.24.0 <https://www.eclipse.org/xtend/releasenotes.html#/releasenotes/2020/12/01/version-2-24-0>`__
250
251 Plugin upgrades
252 ~~~~~~~~~~~~~~~
253 * build-helper-maven-plugin `3.1.0 → 3.2.0 <https://github.com/mojohaus/build-helper-maven-plugin/issues?q=is%3Aissue+milestone%3A3.1.0+is%3Aclosed>`__
254
255 * duplicate-finder-maven-plugin `1.4.0 → 1.5.0 <https://github.com/basepom/duplicate-finder-maven-plugin/releases/tag/duplicate-finder-maven-plugin-1.5.0>`__
256
257 * exec-maven-plugin `1.6.0 → 3.0.0 <https://github.com/mojohaus/exec-maven-plugin/releases/tag/exec-maven-plugin-3.0.0>`__
258
259 * maven-pmd-plugin `3.13.0 → 3.14.0 <https://www.mail-archive.com/announce@maven.apache.org/msg00978.html>`__
260
261 * maven-resource-plugin `3.9.0 → 3.9.1 <https://www.mail-archive.com/announce@maven.apache.org/msg00972.html>`__
262
263 * maven-site-plugin `3.9.0 → 3.9.1 <https://www.mail-archive.com/announce@maven.apache.org/msg00966.html>`__
264
265 * versions-maven-plugin `2.7 → 2.8.1 <https://github.com/mojohaus/versions-maven-plugin/releases/tag/versions-maven-plugin-2.8.1>`__
266
267
268 Version 8.0.1
269 -------------
270 This is a minor big-fix/enhancement update from verision 8.0.0.
271
272 Improvements
273 ~~~~~~~~~~~~
274 * ``javax.inject`` is now provided by the artifact from `GuicedEE <https://guicedee.com/>`__.
275   This improves things a lot, as it is a proper jar (not MANIFEST.MF warning), it also is
276   a JPMS module, hence can be used for linkage. This dependency is properly ``scope=provided``,
277   so it should not leak into runtimes where it should not be.
278   See `ODLPARENT-247 <https://jira.opendaylight.org/browse/ODLPARENT-247>`__ for details.
279
280 * Transitive dependencies of Guava are now mostly filtered from runtime, so that we do not
281   require ``wrap`` for them. We still retain checker-qual, as we are actively using those
282   and it is a proper bundle.
283   See `ODLPARENT-248 <https://jira.opendaylight.org/browse/ODLPARENT-248>`__ for details.
284
285 Third-party dependencies
286 ~~~~~~~~~~~~~~~~~~~~~~~~
287 * Jackson `2.10.4 → 2.10.5 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.10.5>`__
288
289 * JaCoCo `0.8.5 → 0.8.6 <https://github.com/jacoco/jacoco/releases/tag/v0.8.6>`__
290
291 * JUnit `4.13.0 → 4.13.1 <https://github.com/junit-team/junit4/blob/HEAD/doc/ReleaseNotes4.13.1.md>`__
292
293 * Karaf `4.2.9 → 4.2.10 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12348288>`__
294
295 * Netty `4.1.52 → 4.1.53 <https://netty.io/news/2020/10/13/4-1-53-Final.html>`__
296
297 * Pax-Exam `4.13.3 → 4.13.4 <https://ops4j1.jira.com/secure/ReleaseNote.jspa?projectId=10170&version=24393>`__
298
299 * Woodstox 6.2.1 → 6.2.3, fixed issues:
300   * `6.2.2 <https://github.com/FasterXML/woodstox/issues/112>`__
301   * `6.2.3 <https://github.com/FasterXML/woodstox/issues/117>`__
302
303
304 Version 8.0.0
305 -------------
306 This is a major upgrade from version 7, with breaking changes; downstream projects may need to make changes to upgrade
307 to this version.
308
309 Improvements
310 ~~~~~~~~~~~~
311 * ``modernizer-maven-plugin`` configuration has been updated to issue warnings for constructs
312   improved in all Java versions up to and including Java 11.
313
314 * ``modernizer-maven-plugin`` is configured by default to fail the build when it issues any
315   warnings. This behavior can be opted-out of on a per-artifact basis by defining
316   ``odlparent.modernizer.enforce`` property to ``false``.
317
318 Upstream version removals
319 ~~~~~~~~~~~~~~~~~~~~~~~~~
320 The following upstream dependencies have been removed from dependency management:
321
322 * ``javax.json``. This dependency is used only in Neutron project, hence this version is best
323   maintained there. See `ODLPARENT-238 <https://jira.opendaylight.org/browse/ODLPARENT-238>`__
324   for details.
325
326 * All ``org.eclipse.persistence`` artifacts. These dependencies are only used in Neutron,
327   which actually duplicates the declarations, hence they are best maintained there.
328   See `ODLPARENT-237 <https://jira.opendaylight.org/browse/ODLPARENT-237>`__ for details.
329
330 * All ``org.apache.sshd`` and ``net.i2p.crypto`` artifacts. Overriding versions does not play
331   nice with Karaf's versions during ``feature:install``, causing issues when the installing
332   over an SSH connection. NETCONF project is providing a repackaged version in OpenDaylight
333   namespace. See `ODLPARENT-233 <https://jira.opendaylight.org/browse/ODLPARENT-233>`__ for
334   details.
335
336 * ``jettison``. This dependency is used only in LISP Flow Mapping project for integration
337   tests, hence this version is best maintained there.
338   See `ODLPARENT-239 <https://jira.opendaylight.org/browse/ODLPARENT-239>`__ for details.
339
340 * All ``com.typesafe``, ``io.aeron``, ``org.agrona``, ``org.scala-lang`` declarations. Akka is
341   removing their support for OSGi, with no working releases in their current ``2.6.x.`` branch.
342   Since dealing with these requires quite a bit of dance, which needs to sit outside of odlparent POM,
343   the controller project will package Akka to the extent it needs.
344   See `ODLPARENT-243 <https://jira.opendaylight.org/browse/ODLPARENT-243>`__ for details.
345
346 * ``org.apache.felix.dependencymanager`` and ``org.apache.felix.dependencymanager.shell``. These
347   components are ancient, having been replaced by either Blueprint or Declarative Services. The only
348   project using these is AAA, hence it is best to maintain these declarations there.
349
350 Feature removals
351 ~~~~~~~~~~~~~~~~
352 * ``odl-apache-sshd`` feature has been removed, mirroring the removal of related dependency
353   declarations. See `ODLPARENT-233 <https://jira.opendaylight.org/browse/ODLPARENT-233>`__ for details.
354
355 * ``odl-akka-all``, ``odl-akka-scala-2.13``, ``odl-akka-system-2.5``, ``odl-akka-clustering-2.5``
356   and ``odl-akka-persistence-2.5`` features. mirroring the removal of related dependency declarations.
357   See `ODLPARENT-243 <https://jira.opendaylight.org/browse/ODLPARENT-243>`__ for details.
358
359 Third-party dependencies
360 ~~~~~~~~~~~~~~~~~~~~~~~~
361 * awaitility `3.0.0 → 4.0.3 <https://github.com/awaitility/awaitility/wiki/ReleaseNotes40>`__
362
363 * checkstyle 8.34 → 8.36.1, release notes:
364   * `8.35 <https://checkstyle.org/releasenotes.html#Release_8.35>`__
365   * `8.36 <https://checkstyle.org/releasenotes.html#Release_8.36>`__
366   * `8.36.1 <https://checkstyle.org/releasenotes.html#Release_8.36.1>`__
367
368 * commons-codec `1.14 → 1.15 <https://commons.apache.org/proper/commons-codec/changes-report.html#a1.15>`__
369
370 * commons-io `2.7 → 2.8.0 <https://commons.apache.org/proper/commons-io/changes-report.html#a2.8.0>`__
371
372 * commons-net `3.6 → 3.7 <https://commons.apache.org/proper/commons-net/changes-report.html#a3.7>`__
373
374 * dropwizard-metrics 4.1.9 → 4.1.12.1, release notes:
375   * `4.1.10 <https://github.com/dropwizard/metrics/releases/tag/v4.1.10>`__
376   * `4.1.10.1 <https://github.com/dropwizard/metrics/releases/tag/v4.1.10.1>`__
377   * `4.1.11 <https://github.com/dropwizard/metrics/releases/tag/v4.1.11>`__
378   * `4.1.12 <https://github.com/dropwizard/metrics/releases/tag/v4.1.12>`__
379   * `4.1.12.1 <https://github.com/dropwizard/metrics/releases/tag/v4.1.12.1>`__
380
381 * Guava `28.2 → 29.0 <https://github.com/google/guava/releases/tag/v29.0>`__
382
383 * immutables.org → 2.8.8, release notes:
384   * `2.8.0 <https://github.com/immutables/immutables/releases/tag/2.8.0>`__
385   * `2.8.1 <https://github.com/immutables/immutables/releases/tag/2.8.1>`__
386   * `2.8.2 <https://github.com/immutables/immutables/releases/tag/2.8.2>`__
387   * `2.8.3 <https://github.com/immutables/immutables/releases/tag/2.8.3>`__
388   * `2.8.4 <https://github.com/immutables/immutables/releases/tag/2.8.4>`__
389   * `2.8.8 <https://github.com/immutables/immutables/releases/tag/2.8.8>`__
390
391 * mockito `3.3.3 → 3.5.11 <https://github.com/mockito/mockito/blob/release/3.x/doc/release-notes/official.md>`__
392
393 * Netty `4.1.51 → 4.1.52 <https://netty.io/news/2020/09/08/4-1-52-Final.html>`__
394
395 * Xtend `2.22.0 → 2.23.0 <https://www.eclipse.org/xtend/releasenotes.html#/releasenotes/2020/09/01/version-2-23-0>`__
396
397 Plugin upgrades
398 ~~~~~~~~~~~~~~~
399 * maven-archetype-plugin `3.1.2 → 3.2.0 <https://blogs.apache.org/maven/entry/apache-maven-archetype-plugin-version1>`__
400
401 * project-info-reports-plugin `3.1.0 → 3.1.1 <https://blogs.apache.org/maven/entry/apache-maven-project-info-reports1>`__
402
403 Version 7.0.5
404 -------------
405 This is a bug-fix upgrade from version 7.0.4.
406
407 Bug fixes
408 ~~~~~~~~~
409 * ``odl-netty-4`` feature definition specified both ``x86_64`` and ``aarch64`` artifacts
410   for ``netty-native-epoll``. This actually results only in ``aarch64`` package being
411   installed, rendering epoll unavailable on ``x86_64`` architecture. This has been corrected
412   by removing the ``aarch64`` package.
413   See `ODLPARENT-240 <https://jira.opendaylight.org/browse/ODLPARENT-240>`__ for details.
414
415 Version 7.0.4
416 -------------
417 This is a security/bug-fix upgrade from version 7.0.3.
418
419 Bug fixes
420 ~~~~~~~~~
421 * ``Single Feature Test`` setup of the JVM for Karaf container ended up using
422   wrong versions of Karaf components, leading to a failure to initialize
423   OSGiLocator and subsequent warnings with stack traces. This has now been
424   corrected.
425   See `ODLPARENT-228 <https://jira.opendaylight.org/browse/ODLPARENT-228>`__ for details.
426 * Pax-Exam setup interacts badly with pipes used by maven-surefire plugin,
427   leading to pauses lasting around 30 seconds after SFT test success.
428   This has now been worked around by using maven-surefire-plugin version 3.0.0-M5,
429   with TCP sockets used for communication.
430   See `ODLPARENT-179 <https://jira.opendaylight.org/browse/ODLPARENT-179>`__ for details.
431 * Our Jersey dependency was held back on version 2.25.1 during Neon upgrade cycle, mostly
432   due to large-scale incompatibilities around JAX-RS version. We have upgraded to Karaf-4.2.8+,
433   which pulls in JAX-RS 2.1, hence re-aligning to a more modern version, 2.27, is now
434   feasible.
435   See `ODLPARENT-208 <https://jira.opendaylight.org/browse/ODLPARENT-208>`__ for details.
436
437 Third-party dependencies
438 ~~~~~~~~~~~~~~~~~~~~~~~~
439 * Bouncy Castle `1.65 → 1.66 <https://www.bouncycastle.org/releasenotes.html>`__
440
441 * Checkstyle 8.32 → 8.34, release notes:
442   * `8.33 <https://checkstyle.org/releasenotes.html#Release_8.33>`__
443   * `8.34 <https://checkstyle.org/releasenotes.html#Release_8.34>`__
444
445 * commons-io `2.6 → 2.7 <https://commons.apache.org/proper/commons-io/changes-report.html#a2.7>`__
446
447 * Jersey 2.25.1 → 2.27, release notes:
448   * `2.26 <https://eclipse-ee4j.github.io/jersey.github.io/release-notes/2.26.html>`__
449   * `2.27 <https://eclipse-ee4j.github.io/jersey.github.io/release-notes/2.27.html>`__
450
451 * Karaf `4.2.8 → 4.2.9, with related upgrades <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12345539>`__
452
453 * Netty 4.1.49 → 4.1.51, release notes:
454   * `4.1.50 <https://netty.io/news/2020/05/13/4-1-50-Final.html>`__
455   * `4.1.51 <https://netty.io/news/2020/07/09/4-1-51-Final.html>`__
456
457 * Scala `2.13.2 → 2.13.3 <https://github.com/scala/scala/releases/tag/v2.13.3>`__
458
459 * TrieMap `1.1.0 → 1.2.0 <https://github.com/PANTHEONtech/triemap/releases/tag/triemap-1.2.0>`__
460
461 * XBean finder 4.14 → 4.17, release notes:
462   * `4.15 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310312&version=12345583>`__
463   * `4.16 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310312&version=12345584>`__
464   * `4.17 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310312&version=12346905>`__
465
466 Plugin upgrades
467 ~~~~~~~~~~~~~~~
468 * maven-project-info-reports-plugin `3.0.0 → 3.1.0 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317821&version=12346620>`__.
469
470 * maven-shade-plugin `3.2.3 → 3.2.4 <https://blogs.apache.org/maven/entry/apache-maven-shade-plugin-version5>`__
471
472 Version 7.0.3
473 -------------
474 This is a security/bug-fix upgrade from version 7.0.2. Changes in this release
475 pertain strictly to Karaf packaging and do not affect other runtimes.
476
477 Bug fixes
478 ~~~~~~~~~
479 * Felix SCR 2.1.16, as shipping before Karaf-4.2.9, contains a bug, which could
480   lead to NullPointerException being thrown when components were examined. This
481   has been rectified via upgrade to Felix SCR 2.1.20.
482   See `ODLPARENT-236 <https://jira.opendaylight.org/browse/ODLPARENT-236>`__ for details.
483 * Karaf-4.2.8 changed packaged log4j2 version, rendering the configuration supplied
484   with ``ODLPARENT-231`` inconsistent. This has led to a warning being printed in the
485   Karaf console on each startup. This has now been corrected.
486 * Karaf-4.2.8 is packaging pax-logging-1.11.4, which embeds a a vulnerable version
487   of log4j2 (2.3.0). This would render the upgrades delivered in version 7.0.2
488   ineffective at runtime, potentially leading to exposure. This has been corrected
489   with upgrade of pax-logging to 1.11.6, which is packaging log4j2-2.3.2.
490
491 Version 7.0.2
492 -------------
493 This is a security/bug-fix upgrade from version 7.0.1.
494
495 Improvements
496 ~~~~~~~~~~~~
497 * Infrastructure for identifying confidential log messages was added, along with
498   Karaf configuration update to routing such messages into a separate log file.
499   See `ODLPARENT-231 <https://jira.opendaylight.org/browse/ODLPARENT-231>`__ for details.
500
501 * Netty has been disconnected from Javassist way back in its 4.1.9 release, but
502   we failed to notice. This has now been rectified by ``odl-netty-4`` not depending
503   on ``odl-javassist-3``.
504
505 Third-party dependencies
506 ~~~~~~~~~~~~~~~~~~~~~~~~
507 * Checkstyle `8.31 → 8.32 <https://checkstyle.org/releasenotes.html#Release_8.32>`__
508
509 * Dropwizard Metrics 4.1.5 → 4.1.9, release notes:
510   * `4.1.6 <https://github.com/dropwizard/metrics/releases/tag/v4.1.6>`__
511   * `4.1.7 <https://github.com/dropwizard/metrics/releases/tag/v4.1.7>`__
512   * `4.1.8 <https://github.com/dropwizard/metrics/releases/tag/v4.1.8>`__
513   * `4.1.9 <https://github.com/dropwizard/metrics/releases/tag/v4.1.9>`__
514
515 * Enunciate 2.12.1 → 2.13.1, release notes:
516   * `2.13.0 <https://github.com/stoicflame/enunciate/releases/tag/v2.13.0>`__
517   * `2.13.1 <https://github.com/stoicflame/enunciate/releases/tag/v2.13.1>`__
518
519 * Jackson 2.10.2 → 2.10.4, release notes:
520   * `2.10.3 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.10.3>`__
521   * `2.10.4 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.10.4>`__
522
523 * log4j2 2.13.1 → 2.13.3, release notes:
524   * `2.13.2 <https://logging.apache.org/log4j/2.x/changes-report.html#a2.13.2>`__
525   * `2.13.3 <https://logging.apache.org/log4j/2.x/changes-report.html#a2.13.3>`__
526
527 * Netty `4.1.48 → 4.1.49 <https://netty.io/news/2020/02/28/4-1-46-Final.html>`__
528
529 * Powermock `2.0.6 → 2.0.7 <https://github.com/powermock/powermock/blob/release/2.x/docs/release-notes/official.md#207>`__
530
531 * Scala `2.13.1 → 2.13.2 <https://github.com/scala/scala/releases/tag/v2.13.2>`__
532
533 * Woodstox 6.1.1 → 6.2.1, release notes:
534   * `6.2.0 <https://github.com/FasterXML/woodstox/wiki/Woodstox-Release-6.2#620-25-apr-2020>`__
535   * `6.2.1 <https://github.com/FasterXML/woodstox/wiki/Woodstox-Release-6.2#621-13-may-2020>`__
536
537 * xmlunit 2.6.3 → 2.7.0, release notes:
538   * `2.6.4 <https://github.com/xmlunit/xmlunit/releases/tag/v2.6.4>`__
539   * `2.7.0 <https://github.com/xmlunit/xmlunit/releases/tag/v2.7.0>`__
540
541 Plugin upgrades
542 ~~~~~~~~~~~~~~~
543 * builder-helper-maven-plugin `3.0.0 → 3.1.0 <https://github.com/mojohaus/build-helper-maven-plugin/issues?q=is%3Aissue+milestone%3A3.1.0+is%3Aclosed>`__
544
545 * duplicate-finder-maven-plugin `1.3.0 → 1.4.0 <https://github.com/basepom/duplicate-finder-maven-plugin/releases/tag/duplicate-finder-maven-plugin-1.4.0>`__
546
547 * maven-antrun-plugin `1.8 → 3.0.0 <https://blogs.apache.org/maven/entry/apache-maven-antrun-plugin-version>`__
548
549 * maven-assembly-plugin `3.2.0 → 3.3.0 <https://blogs.apache.org/maven/entry/apache-maven-assembly-plugin-version1>`__
550
551 * maven-invoker-plugin `3.2.0 → 3.2.1 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317525&version=12344863>`__
552
553 * maven-remote-resources-plugin `1.6.0 → 1.7.0 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317825&version=12331232>`__
554
555 * maven-shade-plugin `3.2.2 → 3.2.3 <https://blogs.apache.org/maven/entry/apache-maven-shade-plugin-version4>`__
556
557 Version 7.0.1
558 -------------
559 This is a bug-fix upgrade from version 7.0.0.
560
561 Bug fixes
562 ~~~~~~~~~
563 * Upgrade of ``maven-javadoc-plugin`` is causing issues in downstream javadoc jobs and therefore it has been reverted.
564   See `ODLPARENT-229 <https://jira.opendaylight.org/browse/ODLPARENT-229>`__ for details.
565
566 Third-party dependencies
567 ~~~~~~~~~~~~~~~~~~~~~~~~
568 * Akka `2.5.30 → 2.5.31 <https://akka.io/blog/news/2020/03/31/akka-2.5.31-released>`__
569
570 * Bouncy Castle `1.64 → 1.65 <https://www.bouncycastle.org/releasenotes.html>`__
571
572 * Checkstyle `8.30 → 8.31 <https://checkstyle.org/releasenotes.html#Release_8.31>`__
573
574 * commons-lang3 `3.9 → 3.10 <https://commons.apache.org/proper/commons-lang/changes-report.html#a3.10>`__
575
576 * Xtend 1.19.0 → 1.21.0, release notes:
577   * `1.20.0 <https://www.eclipse.org/xtend/releasenotes.html#/releasenotes/2019/12/03/version-2-20-0>`__
578   * `1.21.0 <https://www.eclipse.org/xtend/releasenotes.html#/releasenotes/2020/03/03/version-2-21-0>`__
579
580 Version 7.0.0
581 -------------
582 This is a major upgrade from version 6, with breaking changes; downstream projects may need to make changes to upgrade
583 to this version.
584
585 Property removals
586 ~~~~~~~~~~~~~~~~~
587 * ``enforcer.version`` and ``projectinfo`` properties were removed. These properties do not serve any legal purpose as
588   the plugins referenced by them are declared in ``pluginManagement`` section.
589
590 Upstream version removals
591 ~~~~~~~~~~~~~~~~~~~~~~~~~
592 The following upstream dependencies have been removed from dependency management:
593
594 * ``immutables.org/value`` without ``<classifier>annotations</classifier>``
595
596 * ``javax.xml.bind/jaxb-api``, replaced with ``jakarta.xml.bind/jakarta.xml.bind-api``
597
598 * ``com.google.inject/guice``
599
600 * ``com.mycila.guice.extensions/mycila-guice-jsr250``
601
602 * ``org.apache.shiro/shiro-core``
603
604 * ``org.apache.shiro/shiro-web``
605
606 Feature removals
607 ~~~~~~~~~~~~~~~~
608 * ``odl-akka-leveldb-0.10`` feature was removed. This feature provided leveldb-backed implementation of Akka
609   Persistence, which is not supported for production environments by upstream. Furthermore this feature relied on a
610   custom-built binary, which we do not have a means to reproduce -- limiting our portability. The controller project,
611   which is the only downstream user of persistence provides an alternative implementation, hence we are removing this
612   historical baggage. See `ODLPARENT-213 <https://jira.opendaylight.org/browse/ODLPARENT-213>`__ for details.
613
614 * ``odl-caffeine-2`` feature was removed. This feature provided a ``JSR-107 JCache`` implementation, an API deemed to
615   be problematic where high-performance and correctness in required.
616
617 New features
618 ~~~~~~~~~~~~
619 * OSGi R6 Declarative Services enabled in Karaf. The ``scr`` feature is now part of startup features, hence Service
620   Component Runtime can be used without incurring an additional refresh.
621   See `ODLPARENT-227 <https://jira.opendaylight.org/browse/ODLPARENT-227>`__ for details.
622
623 Third-party dependencies
624 ~~~~~~~~~~~~~~~~~~~~~~~~
625 * Akka `2.5.29 → 2.5.30 <https://akka.io/blog/news/2020/03/12/akka-2.5.30-released>`__
626
627 * antl4r `4.7.2 → 4.8-1 <https://github.com/antlr/antlr4/releases/tag/4.8>`__
628
629 * Asciidoctor `1.5.7.1 → 1.5.8 <https://github.com/asciidoctor/asciidoctor/releases/tag/v1.5.8>`__
630
631 * Checkstyle 8.26 → 8.30, release notes:
632   * `8.27 <https://checkstyle.org/releasenotes.html#Release_8.27>`__
633   * `8.28 <https://checkstyle.org/releasenotes.html#Release_8.28>`__
634   * `8.29 <https://checkstyle.org/releasenotes.html#Release_8.29>`__
635   * `8.30 <https://checkstyle.org/releasenotes.html#Release_8.30>`__
636
637 * Dropwizard Metrics 4.0.5 → 4.1.5, release notes:
638   * `4.1.0-rc0 <https://github.com/dropwizard/metrics/releases/tag/v4.1.0-rc0>`__
639   * `4.1.0-rc2 <https://github.com/dropwizard/metrics/releases/tag/v4.1.0-rc2>`__
640   * `4.1.0-rc3 <https://github.com/dropwizard/metrics/releases/tag/v4.1.0-rc3>`__
641   * `4.1.1 <https://github.com/dropwizard/metrics/releases/tag/v4.1.1>`__
642   * `4.1.2 <https://github.com/dropwizard/metrics/releases/tag/v4.1.2>`__
643   * `4.1.3 <https://github.com/dropwizard/metrics/releases/tag/v4.1.3>`__
644   * `4.1.4 <https://github.com/dropwizard/metrics/releases/tag/v4.1.4>`__
645
646 * Google Truth 0.43 → 1.0.1, release notes:
647   * `0.44 <https://github.com/google/truth/releases/tag/release_0_44>`__
648   * `0.45 <https://github.com/google/truth/releases/tag/release_0_45>`__
649   * `0.46 <https://github.com/google/truth/releases/tag/release_0_46>`__
650   * `1.0-rc1 <https://github.com/google/truth/releases/tag/release_1_0_rc1>`__
651   * `1.0-rc2 <https://github.com/google/truth/releases/tag/release_1_0_rc2>`__
652   * `1.0 <https://github.com/google/truth/releases/tag/release_1_0>`__
653   * `1.0.1 <https://github.com/google/truth/releases/tag/release_1_0_1>`__
654
655 * Guava 27.1 → 28.2, release notes:
656   * `28.0 <https://github.com/google/guava/releases/tag/v28.0>`__
657   * `28.1 <https://github.com/google/guava/releases/tag/v28.1>`__
658   * `28.2 <https://github.com/google/guava/releases/tag/v28.2>`__
659
660 * Javassist 3.26.0 → 3.27.0
661
662 * jdt-annotations 2.2.100 → 2.2.400
663
664 * Karaf 4.2.6 → 4.2.8, with related upgrades, release notes:
665   * `4.2.7 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12345539>`__
666   * `4.2.8 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12346100>`__
667
668 * log4j2 `2.13.0 → 2.13.1 <https://logging.apache.org/log4j/2.x/changes-report.html#a2.13.1>`__
669
670 * Netty 4.1.45 → 4.1.48, release notes:
671   * `4.1.46 <https://netty.io/news/2020/02/28/4-1-46-Final.html>`__
672   * `4.1.47 <https://netty.io/news/2020/03/09/4-1-47-Final.html>`__
673   * `4.1.48 <https://netty.io/news/2020/03/17/4-1-48-Final.html>`__
674
675 * Powermock 2.0.4 → 2.0.6, release notes:
676   * `2.0.5 <https://github.com/powermock/powermock/blob/release/2.x/docs/release-notes/official.md#205>`__
677   * `2.0.6 <https://github.com/powermock/powermock/blob/release/2.x/docs/release-notes/official.md#206>`__
678
679 * Scala 2.12.10 → 2.13.1, release notes:
680   * `2.13.0 <https://github.com/scala/scala/releases/tag/v2.13.0>`__
681   * `2.13.1 <https://github.com/scala/scala/releases/tag/v2.13.1>`__
682
683 * scala-java8-compat 0.8.0 → 0.9.1, release notes:
684   * `0.9.0 <https://github.com/scala/scala-java8-compat/releases/tag/v0.9.0>`__
685   * `0.9.1 <https://github.com/scala/scala-java8-compat/releases/tag/v0.9.1>`__
686
687 * Sevntu 1.36.0 → 1.37.1, release notes:
688   * `1.37.0 <https://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.37.0>`__
689   * `1.37.1 <https://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.37.1>`__
690
691 * woodstox-core 5.3.0 → 6.1.1
692
693 Plugin upgrades
694 ~~~~~~~~~~~~~~~
695
696 * findbugs-slf4j `1.4.0 → 1.5.0 <https://github.com/KengoTODA/findbugs-slf4j/blob/master/CHANGELOG.md#150---2019-07-04>`__
697
698 * maven-checkstyle-plugin `3.1.0 → 3.1.1 <https://blogs.apache.org/maven/entry/apache-maven-checkstyle-plugin-version1>`__
699
700 * maven-dependency-plugin `3.1.1 → 3.1.2 <https://blogs.apache.org/maven/entry/apache-maven-dependency-plugin-version2>`__
701
702 * maven-enforcer-plugin `3.0.0-M2 → 3.0.0-M3 <https://blogs.apache.org/maven/entry/apache-maven-enforcer-version-3>`__
703
704 * maven-javadoc-plugin `3.1.1 → 3.2.0 <https://blogs.apache.org/maven/entry/apache-maven-javadoc-plugin-version1>`__
705
706 * maven-shade-plugin `3.2.1 → 3.2.2 <https://blogs.apache.org/maven/entry/apache-maven-shade-plugin-version3>`__
707
708 * modernizer-maven-plugin `2.0.0 → 2.1.0 <https://github.com/gaul/modernizer-maven-plugin/releases/tag/modernizer-maven-plugin-2.1.0>`__
709
710 * pmd-maven-plugin `3.12.0 → 3.13.0 <https://blogs.apache.org/maven/entry/apache-maven-pmd-plugin-version2>`__
711
712 Version 6.0.5
713 -------------
714 This is a bug-fix upgrade from version 6.0.4.
715
716 Third-party dependencies
717 ~~~~~~~~~~~~~~~~~~~~~~~~
718 * Akka 2.5.26 → 2.5.29, release notes:
719   * `2.5.27 <https://akka.io/blog/news/2019/12/10/akka-2.5.27-released>`__
720   * `2.5.29 <https://akka.io/blog/news/2020/01/28/akka-2.5.29-released>`__
721
722 * commons-codec `1.13 → 1.14 <https://commons.apache.org/proper/commons-codec/changes-report.html#a1.14>`__
723
724 * Jackson `2.9.10 → 2.9.10.20200103 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9#micro-patches>`__
725
726 Plugin upgrades
727 ~~~~~~~~~~~~~~~
728 * maven-source-plugin `3.2.0 → 3.2.1 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317924&version=12346480>`__
729
730 Version 6.0.4
731 -------------
732 This is a bug-fix upgrade from version 6.0.3.
733
734 Bug fixes
735 ~~~~~~~~~
736 * ``single-feature-test`` was using outdated repositories, including Maven Central,
737   which `broke on Jan 15, 2020 <https://support.sonatype.com/hc/en-us/articles/360041287334-Central-501-HTTPS-Required>`__.
738   This has been corrected.
739
740 Third-party dependencies
741 ~~~~~~~~~~~~~~~~~~~~~~~~
742
743 * JUnit 4.11 → 4.13, release notes:
744   * `4.12 <https://github.com/junit-team/junit4/blob/master/doc/ReleaseNotes4.12.md>`__
745   * `4.13 <https://github.com/junit-team/junit4/blob/master/doc/ReleaseNotes4.13.md>`__
746
747 * log4j2 2.11.2 → 2.13.0, release notes:
748   * `2.12.0 <https://logging.apache.org/log4j/2.x/changes-report.html#a2.13.0>`__
749   * `2.12.1 <https://logging.apache.org/log4j/2.x/changes-report.html#a2.12.1>`__
750   * `2.13.0 <https://logging.apache.org/log4j/2.x/changes-report.html#a2.13.0>`__
751
752 * netty 4.1.42 → 4.1.45, release notes:
753   * `4.1.43 <https://netty.io/news/2019/10/24/4-1-43-Final.html>`__
754   * `4.1.44 <https://netty.io/news/2019/12/18/4-1-44-Final.html>`__
755   * `4.1.45 <https://netty.io/news/2020/01/13/4-1-45-Final.html>`__
756
757 Plugin upgrades
758 ~~~~~~~~~~~~~~~
759 * maven-assembly-plugin 2.2-beta5 → 3.2.0
760
761 * maven-archetype-plugin `3.1.1 → 3.1.2 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317122&version=12345957>`__
762
763 Version 6.0.3
764 -------------
765 This is a bug-fix upgrade from version 6.0.2.
766
767 Bug fixes
768 ~~~~~~~~~
769 * The fix for `ODLPARENT-216 <https://jira.opendaylight.org/browse/ODLPARENT-216>`__ ended up
770   breaking ``org.kohsuke.metainf-services`` integration. While this could be fixed in downstreams
771   by adding proper </annotationProcessorPaths> entry, it is a regression from 6.0.1.
772
773 Version 6.0.2
774 -------------
775 This is a security/bug-fix upgrade from version 6.0.1.
776
777 Bug fixes
778 ~~~~~~~~~
779 * ``single-feature-parent`` was setting up Karaf repositories incorrectly, leading to
780   the test using unpatched Karaf resources. This has now been fixed and the test run
781   is using environment equivalent to the contents of the distribution. See
782   `ODLPARENT-209 <https://jira.opendaylight.org/browse/ODLPARENT-209>`__ for details.
783
784 * ``immutables.org`` integration relied on pre-JDK9 way of integration, where the annotation processor
785   was just dropped as a dependency. This does not work with JDK9+ artifacts which are also explicit
786   JMPS modules. Note that users are advised to switch to depending on the ``annotations``-classified
787   artifact. See `ODLPARENT-216 <https://jira.opendaylight.org/browse/ODLPARENT-216>`__ for details.
788
789 * Assembled Karaf distribution did not perform proper JDK checks and allowed launching with JDK8,
790   leading to a failure to install OpenDaylight components with an error stack, which confuses users
791   not familiar with OSGi. The distribution now refuses to start with anything other than JDK11. See
792   `ODLPARENT-218 <https://jira.opendaylight.org/browse/ODLPARENT-218>`__ for details.
793
794 Third-party dependencies
795 ~~~~~~~~~~~~~~~~~~~~~~~~
796
797 * Akka `2.5.25 → 2.5.26 <https://akka.io/blog/news/2019/10/17/akka-2.5.26-released>`__
798
799 * Checkstyle 8.20 → 8.26, release notes:
800   * `8.21 <https://checkstyle.org/releasenotes.html#Release_8.21>`__
801   * `8.22 <https://checkstyle.org/releasenotes.html#Release_8.22>`__
802   * `8.23 <https://checkstyle.org/releasenotes.html#Release_8.23>`__
803   * `8.24 <https://checkstyle.org/releasenotes.html#Release_8.24>`__
804   * `8.25 <https://checkstyle.org/releasenotes.html#Release_8.25>`__
805   * `8.26 <https://checkstyle.org/releasenotes.html#Release_8.26>`__
806
807 * H2 database `1.4.199 → 1.4.200 <http://www.h2database.com/html/changelog.html>`__
808
809 * Hamcrest `2.1 → 2.2 <https://github.com/hamcrest/JavaHamcrest/releases/tag/v2.2>`__
810
811 * JaCoCo `0.8.4 → 0.8.5 <https://github.com/jacoco/jacoco/releases/tag/v0.8.5>`__
812
813 * Karaf 4.2.2 → 4.2.6, release notes:
814   * `4.2.3 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12344587>`__
815   * `4.2.4 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12344856>`__
816   * `4.2.5 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12345153>`__
817   * `4.2.6 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12345365>`__
818
819 * Powermock `2.0.2 → 2.0.4 <https://github.com/powermock/powermock/blob/release/2.x/docs/release-notes/official.md#204>`__
820
821 * Sevntu `1.35.0 → 1.36.0 <https://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.36.0>`__
822
823 Plugin upgrades
824 ~~~~~~~~~~~~~~~
825
826 * maven-bundle-plugin `4.1.0 → 4.2.0 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310100&version=12345491>`__
827
828 * maven-jar-plugin `3.1.2 → 3.2.0 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317526&version=12345503>`__
829
830 * maven-source-plugin `3.1.0 → 3.2.0 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317924&version=12345522>`__
831
832 * modernizer-maven-plugin `1.9.0 → 2.0.0 <https://github.com/gaul/modernizer-maven-plugin/releases/tag/modernizer-maven-plugin-2.0.0>`__
833
834 Version 6.0.1
835 -------------
836 This is a security/bug-fix upgrade from version 6.0.0.
837
838 Bug fixes
839 ~~~~~~~~~
840 * ``karaf-plugin`` ignored exceptions coming from its failure to resolve ${karaf.etc} variable. This
841   has now been fixed and the URL handling has been revised to fix build on Windows. See
842   `ODLPARENT-214 <https://jira.opendaylight.org/browse/ODLPARENT-214>`__ for details.
843
844 * ``leveldb-jni`` jar, which has been seeded to nexus.opendaylight.org long time ago is not published
845   in Maven Central. This has been resolved by repackaging this jar and publishing it from odlparent.
846   See `ODLPARENT-210 <https://jira.opendaylight.org/browse/ODLPARENT-210>`__ for details.
847
848 Third-party dependencies
849 ~~~~~~~~~~~~~~~~~~~~~~~~
850
851 * Bouncy Castle `1.63 → 1.64 <http://www.bouncycastle.org/releasenotes.html>`__
852
853 * Jackson `2.9.9 → 2.9.10 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9.10>`__
854
855 * Javassist 3.24.1-GA → 3.26.0-GA
856
857 * Guice 4.1.0 → 4.2.2, release notes:
858   * `4.2.0 <https://github.com/google/guice/wiki/Guice42>`__
859   * `4.2.1 <https://github.com/google/guice/wiki/Guice421>`__
860   * `4.2.2 <https://github.com/google/guice/wiki/Guice422>`__
861
862 * Mockito 2.25.1 → 2.28.2, release notes:
863   * `2.25.2 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2252>`__
864   * `2.25.3 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2253>`__
865   * `2.25.4 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2254>`__
866   * `2.25.5 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2255>`__
867   * `2.25.6 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2256>`__
868   * `2.25.7 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2257>`__
869   * `2.26.1 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2261>`__
870   * `2.26.2 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2262>`__
871   * `2.27.1 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2271>`__
872   * `2.27.2 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2272>`__
873   * `2.27.3 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2273>`__
874   * `2.27.4 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2274>`__
875   * `2.27.5 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2275>`__
876   * `2.28.0 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2280>`__
877
878 * Netty 4.1.39 → 4.1.42, release notes:
879   * `4.1.41 <https://netty.io/news/2019/09/12/4-1-41-Final.html>`__
880   * `4.1.42 <https://netty.io/news/2019/09/25/4-1-42-Final.html>`__
881
882 * pt-triemap `1.0.6 → 1.1.0 <https://github.com/PantheonTechnologies/triemap/releases/tag/triemap-1.1.0>`__
883
884 * reactive-streams `1.0.2 → 1.0.3 <http://www.reactive-streams.org/announce-1.0.3>`__
885
886 * stax2-api `3.1.4 → 4.2 <https://github.com/FasterXML/stax2-api/blob/master/release-notes/VERSION>`__
887
888 * woodstox-core 5.0.3 → 5.3.0, release notes:
889   * `5.1.0 <https://github.com/FasterXML/woodstox/wiki/Woodstox-Release-5.1>`__
890   * `5.2.0 <https://github.com/FasterXML/woodstox/wiki/Woodstox-Release-5.2>`__
891   * `5.3.0 <https://github.com/FasterXML/woodstox/wiki/Woodstox-Release-5.3>`__
892
893 Version 6.0.0
894 -------------
895 This is a major upgrade from version 5, with breaking changes; projects will
896 need to make changes to upgrade to this version.
897
898 Java 11 is required
899 ~~~~~~~~~~~~~~~~~~~
900 This release sets ``maven.compiler.release=11`` and enforces that the JDK used to build
901 is Java 11+. As there may be issues with various maven plugins when faced with JDK9+
902 constructs and JDK11+ classes, target release can be controlled on a per-artifact
903 basis (i.e. target Java 10 with ``maven.compiler.release=10`` property).
904
905 This release has been validated with ``openjdk-11.0.4`` and is not supported on any lower
906 version. As usual, we recommend using latest available JDK/JRE for Java 11 during development
907 and deployment.
908
909 Checkstyle/SpotBugs/Modernizer run by default
910 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
911 With this release code artifacts always run ``maven-checkstyle-plugin``, ``spotbugs-maven-plugin``
912 and ``modernizer-maven-plugin``. Checkstyle and SpotBugs run in enforcing mode, i.e. will fail
913 build if any violations are found. Modernizer is configured to report Java 8-compatible constructs
914 and will not fail the build unless instructed to do so.
915
916 Behavior of each of these is controlled via a maven property on a per-artifact basis:
917
918 * ``odlparent.checkstyle.enforce`` controls checkstyle enforcement: defaults to ``true``, but can be set to ``false``
919 * ``odlparent.checkstyle.skip`` controls checkstyle invocation: defaults to ``false``, but can be set to ``true``
920 * ``odlparent.spotbugs.enforce`` controls SpotBugs enforcement: defaults to ``true``, but can be set to ``false``
921 * ``odlparent.spotbugs.skip`` controls SpotBugs invocation: defaults to ``false``, but can be set to ``true``
922 * ``odlparent.modernizer.enforce`` controls modernizer enforcement: defaults to ``false``, but can be set to ``true``
923 * ``odlparent.modernizer.skip`` controls modernizer invocation: defaults to ``false``, but can be set to ``true``
924 * ``odlparent.modernizer.target`` controls modernizer Java version: defaults to ``1.8``, but can be set to ``1.11`` or similar
925
926 Bug fixes
927 ~~~~~~~~~
928
929 * ``blueprint container`` had ``org.apache.aries.blueprint.preemptiveShutdown`` set to false
930   to enable it to work with Config Subsystem. As that component is long gone, this property has
931   been removed as part of `ODLPARENT-34 <https://jira.opendaylight.org/browse/ODLPARENT-34>`__.
932   Furthermore, system properties related to Config Subsystem/NETCONF integration have been removed
933   as well.
934
935 Upstream version removals
936 ~~~~~~~~~~~~~~~~~~~~~~~~~
937
938 The following upstream dependencies have been removed from dependency management:
939
940 * com.google.code.findbugs/jsr305
941
942 Third-party dependencies
943 ~~~~~~~~~~~~~~~~~~~~~~~~
944
945 The dependency on `xmlunit-assertj` and `modernizer-maven-annotations` has been added and the following
946 dependencies have been upgraded:
947
948 * Akka 2.5.23 → 2.5.25, release notes:
949   * `2.5.24 <https://akka.io/blog/news/2019/08/09/akka-2.5.24-released>`__
950   * `2.5.25 <https://akka.io/blog/news/2019/08/20/akka-2.5.25-released>`__
951
952 * apache-sshd `2.2.0 → 2.3.0 <https://github.com/apache/mina-sshd/blob/master/docs/changes/2.3.0.md>`__
953
954 * Bouncy Castle `1.62 → 1.63 <https://www.bouncycastle.org/releasenotes.html>`__
955
956 * commons-beanutils `1.9.3 → 1.9.4 <https://www.apache.org/dist/commons/beanutils/RELEASE-NOTES.txt>`__
957
958 * commons-codec `1.12 → 1.13 <http://www.apache.org/dist/commons/codec/RELEASE-NOTES.txt>`__
959
960 * commons-text 1.6 → 1.8, release notes:
961   * `1.7 <https://commons.apache.org/proper/commons-text/changes-report.html#a1.7>`__
962   * `1.8 <https://commons.apache.org/proper/commons-text/changes-report.html#a1.8>`__
963
964 * Checkstyle 8.18 → 8.20, release notes:
965   * `8.19 <https://checkstyle.org/releasenotes.html#Release_8.19>`__
966   * `8.20 <https://checkstyle.org/releasenotes.html#Release_8.20>`__
967
968 * jackson-databind `2.9.9 → 2.9.9.3 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9#micro-patches>`__
969
970 * jaxb-api 2.2.8 → 2.3.0, aligning it with Karaf-provided version
971
972 * Netty 4.1.36 → 4.1.39, release notes:
973   * `4.1.37 <https://netty.io/news/2019/06/28/4-1-37-Final.html>`__
974   * `4.1.38 <https://netty.io/news/2019/07/24/4-1-38-Final.html>`__
975   * `4.1.39 <https://netty.io/news/2019/08/13/4-1-39-Final.html>`__
976
977 * Sevntu 1.32.0 → 1.35.0, release notes:
978   * `1.33.0 <https://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.33.0>`__
979   * `1.34.0 <https://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.34.0>`__
980   * `1.34.1 <https://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.34.1>`__
981   * `1.35.0 <https://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.35.0>`__
982
983 * Scala 2.12.8 → 2.12.9, release notes:
984   * `2.12.9 <https://github.com/scala/scala/releases/tag/v2.12.9>`__
985   * `2.12.10 <https://github.com/scala/scala/releases/tag/v2.12.10>`__
986
987 * slf4j `1.7.25 → 1.7.28 <https://www.slf4j.org/news.html>`__
988
989 * triemap `1.0.5 → 1.0.6 <https://github.com/PantheonTechnologies/triemap/releases/tag/triemap-1.0.6>`__
990
991 * typesafe/ssl-config `0.3.7 → 0.3.8 <https://github.com/lightbend/ssl-config/compare/v0.3.7...v0.3.8>`__
992
993 * Xtend 1.17.1 → 1.19.0, release notes:
994   * `1.18.0 <https://www.eclipse.org/xtend/releasenotes.html#/releasenotes/2019/06/04/version-2-18-0>`__
995   * `1.19.0 <https://www.eclipse.org/Xtext/releasenotes.html#/releasenotes/2019/09/03/version-2-19-0>`__
996
997 Plugin upgrades
998 ~~~~~~~~~~~~~~~
999
1000 * git-commit-id-plugin 2.2.6 → 3.0.1, release notes:
1001   * `3.0.0 <https://github.com/git-commit-id/maven-git-commit-id-plugin/releases/tag/v3.0.0>`__
1002   * `3.0.1 <https://github.com/git-commit-id/maven-git-commit-id-plugin/releases/tag/v3.0.1>`__
1003
1004 * maven-javadoc-plugin `3.1.0 → 3.1.1 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317529&version=12345060>`__
1005
1006 * pmd-maven-plugin `3.11.0 → 3.12.0 <https://blogs.apache.org/maven/entry/apache-maven-pmd-plugin-version1>`__
1007
1008 * spotbugs-maven-plugin 3.1.11  → 3.1.12.2, release notes:
1009   * `3.1.12 <https://github.com/spotbugs/spotbugs-maven-plugin/compare/spotbugs-maven-plugin-3.1.11...spotbugs-maven-plugin-3.1.12>`__
1010   * `3.1.12.1 <https://github.com/spotbugs/spotbugs-maven-plugin/releases/tag/spotbugs-maven-plugin-3.1.12.1>`__
1011   * `3.1.12.2 <https://github.com/spotbugs/spotbugs-maven-plugin/releases/tag/spotbugs-maven-plugin-3.1.12.2>`__
1012
1013 Version 5.0.1
1014 -------------
1015
1016 This is a bug-fix upgrade from version 5.0.0.
1017
1018 Third-party dependencies
1019 ~~~~~~~~~~~~~~~~~~~~~~~~
1020
1021 The following dependencies have been upgraded:
1022
1023 * Akka 2.5.21 → 2.5.23, release notes:
1024   * `2.5.22 <https://akka.io/blog/news/2019/04/03/akka-2.5.22-released>`__
1025   * `2.5.23 <https://akka.io/blog/news/2019/05/21/akka-2.5.23-released>`__
1026
1027 * asciidoctorj-diagram 1.5.12 → 1.5.16
1028
1029 * Bouncy Castle `1.61 → 1.62 <http://www.bouncycastle.org/releasenotes.html>`__
1030
1031 * commons-lang3 `3.8.1 → 3.9 <http://www.apache.org/dist/commons/lang/RELEASE-NOTES.txt>`__
1032
1033 * JaCoCo `0.8.3 → 0.8.4 <https://github.com/jacoco/jacoco/releases/tag/v0.8.4>`__
1034
1035 * Jackson `2.9.8 → 2.9.9 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9.9>`__
1036
1037 * Jolokia 1.6.0 → 1.6.2, release notes:
1038   * `1.6.1 <https://jolokia.org/changes-report.html#a1.6.1>`__
1039   * `1.6.2 <https://jolokia.org/changes-report.html#a1.6.2>`__
1040
1041 * Mockito `2.25.0 → 2.25.1 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2251>`__
1042
1043 * Netty 4.1.34 → 4.1.36, release notes:
1044   * `4.1.35 <https://netty.io/news/2019/04/17/4-1-35-Final.html>`__
1045   * `4.1.36 <https://netty.io/news/2019/04/30/4-1-36-Final.html>`__
1046
1047 * PowerMock 2.0.0 → 2.0.2, release notes:
1048   * `2.0.1 <https://github.com/powermock/powermock/releases/tag/powermock-2.0.1>`__
1049   * `2.0.2 <https://github.com/powermock/powermock/releases/tag/powermock-2.0.2>`__
1050
1051 * Reactive Streams `1.0.1 → 1.0.2 <https://www.lightbend.com/blog/update-reactive-streams-102-released>`__
1052
1053 * scala-parser-combinators `1.1.1 → 1.1.2 <https://github.com/scala/scala-parser-combinators/releases/tag/v1.1.2>`__
1054
1055 * Sevntu `1.32.0 → 1.33.0 <http://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.33.0>`__
1056
1057 * Typesafe Config `1.3.2 → 1.3.3 <https://github.com/lightbend/config/releases/tag/v1.3.3>`__
1058
1059 * triemap `1.0.4 → 1.0.5 <https://github.com/PantheonTechnologies/triemap/releases/tag/triemap-1.0.5>`__
1060
1061 * XBean finder 4.12 → 4.14, release notes:
1062   * `4.13 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12344253&projectId=12310312>`__
1063   * `4.14 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310312&version=12345220>`__
1064
1065 * xmlunit `2.6.2 → 2.6.3 <https://github.com/xmlunit/xmlunit/releases/tag/v2.6.3>`__
1066
1067 * Xtend `2.17.0 → 2.17.1 <https://www.eclipse.org/xtend/releasenotes.html#/releasenotes/2019/04/03/version-2-17-1>`__
1068
1069 Plugin upgrades
1070 ~~~~~~~~~~~~~~~
1071
1072 * maven-archetype-plugin 3.0.1 → 3.1.1, release notes:
1073   * `3.1.0 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317122&version=12340346>`__
1074   * `3.1.1 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317122&version=12345450>`__
1075
1076 * maven-bundle-plugin `4.1.0 → 4.2.0 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310100&version=12345047>`__
1077
1078 * maven-checkstyle-plugin `3.1.0 → 3.1.0 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317223&version=12342397>`__
1079
1080 * maven-compiler-plugin `3.8.0 → 3.8.1 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317225&version=12343484>`__
1081
1082 * maven-help-plugin `3.1.1 → 3.2.0 <https://blog.soebes.de/blog/2019/04/22/apache-maven-help-plugin-version-3-dot-2-0-released/>`__
1083
1084 * maven-jar-plugin `3.1.1 → 3.1.2 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317526&version=12344629>`__
1085
1086 * maven-plugin-plugin `3.5.2 → 3.6.0 <https://blogs.apache.org/maven/entry/apache-maven-plugin-tools-version1>`__
1087
1088 * maven-source-plugin `3.0.1 → 3.1.0 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317924&version=12336941>`__
1089
1090 * maven-surefire-plugin 2.22.1 → 2.22.2
1091
1092 New plugins
1093 ~~~~~~~~~~~
1094
1095 * ``modernizer-maven-plugin`` declared, allowing downstreams to more easily activate it,
1096   and so detect code which should be updated to more modern equivalent.
1097
1098 New features
1099 ~~~~~~~~~~~~
1100
1101 * ``odl-caffeine-2`` provides a pre-packaged feature for the Caffeine caching framework,
1102   along with the Guava compabitility layer.
1103
1104 Version 5.0.0
1105 -------------
1106
1107 This is a major upgrade from version 4, with breaking changes; projects will
1108 need to make changes to upgrade to this version.
1109
1110 The most significant change is `ODLPARENT-198 <https://jira.opendaylight.org/browse/ODLPARENT-198>`__,
1111 which removes JSR305 from default dependencies and does not present it at class path by default.
1112
1113 Deleted artifacts
1114 ~~~~~~~~~~~~~~~~~
1115
1116 ``findbugs`` has been removed, as its only purpose was to provide FindBugs
1117 rule definitions. Equivalent definitions are available in ``spotbugs``.
1118
1119 Bug fixes
1120 ~~~~~~~~~
1121
1122 * ``blueprint-maven-plugin`` used to scan the entire classpath, resulting in potential conflicts
1123   across projects. Scanning is now limited to ``${project.groupId}``, limiting conflict domain
1124   to single project. See `ODLPARENT-109 <https://jira.opendaylight.org/browse/ODLPARENT-109>`__.
1125
1126 * ``bundle-maven-plugin`` configuration ignored generated ServiceLoader service entries,
1127   which has now been fixed. See `ODLPARENT-197 <https://jira.opendaylight.org/browse/ODLPARENT-197>`__.
1128
1129 * Bundle tests are now enabled by default. See `ODLPARENT-158 <https://jira.opendaylight.org/browse/ODLPARENT-158>`__
1130   and `ODLPARENT-80 <https://jira.opendaylight.org/browse/ODLPARENT-80>`__ for details.
1131
1132 * Karaf log file rollover was not explictly set up, leading to inability to easily override
1133   the defaults. See `ODLPARENT-153 <https://jira.opendaylight.org/browse/ODLPARENT-153>`__ for details.
1134
1135 * Karaf log file used to use default maximum 16MiB file size, this has now been increased to 64MiB.
1136   See `ODLPARENT-154 <https://jira.opendaylight.org/browse/ODLPARENT-154>`__.
1137
1138 * ``features-test`` excluded opendaylight-karaf-empty's transitive dependencies, leading
1139   to the need to re-declare them in single-feature-parent. This re-declaration was forgotten
1140   in for ``bcpkix-framework-ext`` and ``bcprov-framework-ext`` bundles, which lead to them
1141   not being present in the local repository. See `ODLPARENT-130 <https://jira.opendaylight.org/browse/ODLPARENT-130>`__.
1142
1143 Upstream version removals
1144 ~~~~~~~~~~~~~~~~~~~~~~~~~
1145
1146 The following upstream dependencies have been removed from dependency management:
1147
1148 * cassandra-driver-core
1149
1150 * org.codehaus.enunciate/enunciate-core-annotations
1151
1152 * org.jboss.resteasy/jaxrs-api
1153
1154 * org.json/json
1155
1156 * org.osgi/org.osgi.compendium
1157
1158 Removed features
1159 ~~~~~~~~~~~~~~~~
1160
1161 * odl-jersey-1
1162
1163 * ``features-akka`` feature repository has been integrated into ``features-odlparent``
1164
1165 Third-party dependencies
1166 ~~~~~~~~~~~~~~~~~~~~~~~~
1167
1168 The following dependencies have been upgraded:
1169
1170 * apache-sshd `2.0.0 → 2.2.0 <https://github.com/apache/mina-sshd/compare/sshd-2.0.0...sshd-2.2.0>`__
1171
1172 * Aeron 1.12.0 → 1.15.3, release notes:
1173   * `1.13.0 <https://github.com/real-logic/aeron/releases/tag/1.13.0>`__
1174   * `1.14.0 <https://github.com/real-logic/aeron/releases/tag/1.14.0>`__
1175   * `1.15.0 <https://github.com/real-logic/aeron/releases/tag/1.15.0>`__
1176   * `1.15.1 <https://github.com/real-logic/aeron/releases/tag/1.15.1>`__
1177   * `1.15.2 <https://github.com/real-logic/aeron/releases/tag/1.15.2>`__
1178   * `1.15.3 <https://github.com/real-logic/aeron/releases/tag/1.15.3>`__
1179
1180 * Agrona 0.9.27 → 0.9.33, release notes:
1181   * `0.9.28 <https://github.com/real-logic/agrona/releases/tag/0.9.28>`__
1182   * `0.9.29 <https://github.com/real-logic/agrona/releases/tag/0.9.29>`__
1183   * `0.9.30 <https://github.com/real-logic/agrona/releases/tag/0.9.30>`__
1184   * `0.9.31 <https://github.com/real-logic/agrona/releases/tag/0.9.31>`__
1185   * `0.9.32 <https://github.com/real-logic/agrona/releases/tag/0.9.32>`__
1186   * `0.9.33 <https://github.com/real-logic/agrona/releases/tag/0.9.33>`__
1187
1188 * Akka 2.5.19 → 2.5.21, release notes:
1189   * `2.5.20 <https://akka.io/blog/news/2019/01/29/akka-2.5.20-released>`__
1190   * `2.5.21 <https://akka.io/blog/news/2019/02/13/akka-2.5.21-released>`__
1191
1192 * antl4r `4.7.1 → 4.7.2 <https://github.com/antlr/antlr4/releases/tag/4.7.2>`__
1193
1194 * asciidoctorj-diagram 1.5.11 → 1.5.12
1195
1196 * Bouncy Castle `1.60 → 1.61 <http://www.bouncycastle.org/releasenotes.html>`__
1197
1198 * checkstyle 8.16 → 8.18, release notes:
1199   * `8.17 <http://checkstyle.sourceforge.net/releasenotes.html#Release_8.17>`__
1200   * `8.18 <http://checkstyle.sourceforge.net/releasenotes.html#Release_8.18>`__
1201
1202 * commons-codec `1.11 → 1.12 <http://www.apache.org/dist/commons/codec/RELEASE-NOTES.txt>`__
1203
1204 * Google Error Prone 2.3.2 → 2.3.3
1205
1206 * Google Guava 25.1 → 27.1, release notes:
1207   * `26.0 <https://github.com/google/guava/releases/tag/v26.0>`__
1208   * `27.0 <https://github.com/google/guava/releases/tag/v27.0>`__
1209   * `27.0.1 <https://github.com/google/guava/releases/tag/v27.0.1>`__
1210   * `27.1 <https://github.com/google/guava/releases/tag/v27.1>`__
1211
1212 * Google Truth `0.42 → 0.43 <https://github.com/google/truth/releases/tag/release_0_43>`__
1213
1214 * h2 database `1.4.196 → 1.4.199 <http://www.h2database.com/html/changelog.html>`__
1215
1216 * Immutables `2.7.3 → 2.7.5 <https://github.com/immutables/immutables/#changelog>`__
1217
1218 * Javassist `3.24.0-GA → 3.24.1-GA <https://github.com/jboss-javassist/javassist/releases/tag/rel_3_24_1_ga>`__
1219
1220 * log4j2 `2.11.1 → 2.11.2 <https://github.com/apache/logging-log4j2/blob/log4j-2.11.2/RELEASE-NOTES.md>`__
1221
1222 * Mockito 2.23.4 → 2.25.0, release notes:
1223   * `2.24.0 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2240>`__
1224   * `2.25.0 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md#2250>`__
1225
1226 * Netty 4.1.32 → 4.1.34, release notes:
1227   * `4.1.32 <https://netty.io/news/2018/11/29/4-1-32-Final.html>`__
1228   * `4.1.33 <https://netty.io/news/2019/01/21/4-1-33-Final.html>`__
1229   * `4.1.34 <https://netty.io/news/2019/03/08/4-1-34-Final.html>`__
1230
1231 * OSGi 5.0.0 → 6.0.0
1232
1233 * Powermockito 1.7.4 → 2.0.0, release notes:
1234   * `2.0.0-beta.5 <https://github.com/powermock/powermock/releases/tag/powermock-2.0.0-beta.5>`__
1235   * `2.0.0-RC.1 <https://github.com/powermock/powermock/releases/tag/powermock-2.0.0-RC.1>`__
1236   * `2.0.0 <https://github.com/powermock/powermock/releases/tag/powermock-2.0.0>`__
1237
1238 * SpotBugs `3.1.9 → 3.1.12 <https://github.com/spotbugs/spotbugs/blob/3.1.12/CHANGELOG.md>`__
1239
1240 * ThreeTen `1.4.0 → 1.5.0 <https://www.threeten.org/threeten-extra/changes-report.html#a1.5.0>`__
1241
1242 * Xtend `2.16.0 → 2.17.0 <http://www.eclipse.org/xtend/releasenotes.html#/releasenotes/2019/03/05/version-2-17-0>`__
1243
1244 Plugin removals
1245 ~~~~~~~~~~~~~~~
1246
1247 * gmaven-plugin
1248
1249 * maven-findbugs-plugin
1250
1251 Plugin upgrades
1252 ~~~~~~~~~~~~~~~
1253
1254 * jacoco-maven-plugin `0.8.2 → 0.8.3 <https://github.com/jacoco/jacoco/releases/tag/v0.8.3>`__
1255
1256 * maven-invoker-plugin `3.1.0 → 3.2.0 <https://mail-archives.apache.org/mod_mbox/maven-announce/201901.mbox/%3Cop.zvzdg9tbkdkhrr@desktop-2khsk44%3E>`__
1257
1258 * maven-javadoc-plugin `3.0.1 → 3.1.0 <https://mail-archives.apache.org/mod_mbox/maven-announce/201903.mbox/%3C6064d830-474c-4b43-afef-99502c3a305a%40getmailbird.com%3E>`__
1259
1260 * spotbugs-maven-plugin 3.1.8 → 3.1.11
1261
1262 Version 4.0.9
1263 -------------
1264
1265 This is a bug-fix upgrade from version 4.0.8.
1266
1267 Bug fixes
1268 ~~~~~~~~~
1269
1270 * ``karaf-plugin`` invocation in ``karaf4-parent`` caused previously
1271   patched features to be overwritten with their stock versions, referencing
1272   bundles which were not populated in the local repository. (See
1273   `ODLPARENT-194 <https://jira.opendaylight.org/browse/ODLPARENT-194>`__.)
1274
1275 * ``karaf-plugin`` version in ``karaf4-parent`` is now provided through
1276   plugin management so downstreams can override it without needing
1277   to repeat its configuration.
1278
1279 * ``karaf-plugin`` no longer reads features twice when running discovery,
1280   speeding up the process a bit.
1281
1282 * Recent versions of the SpotBugs Maven plugin use SLF4J 1.8 beta 2, which
1283   can’t use the 1.7.25 implementation we provide; we therefore provide an
1284   implementation of 1.8 beta 2 when SpotBugs is used. (See
1285   `ODLPARENT-184 <https://jira.opendaylight.org/browse/ODLPARENT-184>`__.)
1286
1287 New features
1288 ~~~~~~~~~~~~
1289
1290 * ``odl-woodstox`` wraps the Woodstox StAX implementation which is imposed on
1291   us by Karaf.
1292
1293 Version 4.0.8
1294 -------------
1295
1296 This is a bug-fix and minor upstream bump upgrade from version 4.0.7.
1297
1298 Bug fixes
1299 ~~~~~~~~~
1300
1301 * ``bcprov-ext-jdk15on`` is a superset of ``bcprov-jdk15on``, so there’s no
1302   need to ship both; we now only ship the former. In addition, we install the
1303   Bouncy Castle JARs in ``lib/boot`` so that they continue to be available on
1304   the boot classpath (JDK 9 removes the extension mechanism which was used
1305   previously), and provide the corresponding bundles from the boot classpath
1306   instead of using separate JARs in the system repository. (See
1307   `ODLPARENT-183 <https://jira.opendaylight.org/browse/ODLPARENT-183>`__ and
1308   `ODLPARENT-185 <https://jira.opendaylight.org/browse/ODLPARENT-185>`__.)
1309
1310 * A dependency check has been added to ensure that we don’t run into the
1311   TrieMap dependency bug in 4.0.6 again.
1312
1313 * Dependencies pulled in by features are now checked for convergence, and
1314   ``karaf-plugin`` warns when it finds diverging dependencies (the same
1315   artifact with two different versions). Upstream-provided features are
1316   patched to avoid the following divergences (and upgrade some dependencies in
1317   the process):
1318
1319   * Aries utilities 1.1.0/1.1.3 (upgraded to 1.1.3).
1320   * Commons Beanutils 1.8.3/1.9.3 (upgraded to 1.9.3).
1321   * Commons Codec 1.8/1.10 (upgraded to 1.11).
1322   * ``javax.mail`` 1.4.4/1.4.7 (upgraded to 1.4.7).
1323
1324   (See `ODLPARENT-189 <https://jira.opendaylight.org/browse/ODLPARENT-189>`__.)
1325
1326 New features
1327 ~~~~~~~~~~~~
1328
1329 * ``odl-dropwizard-metrics`` provides Dropwizard Metrics (which are also
1330   available in dependency management).
1331
1332 * ``enunciate-maven-plugin`` is added as the replacement for
1333   ``maven-enunciate-plugin``.
1334
1335 Third-party dependencies
1336 ~~~~~~~~~~~~~~~~~~~~~~~~
1337
1338 The following dependencies are no longer provided by the JVM, starting with
1339 version 11, but we make them available via dependency management for projects
1340 which need them:
1341
1342 * ``javax.annotation-api``.
1343
1344 * JAXB (``jaxb-core``, ``jaxb-impl``).
1345
1346 The following dependencies have been upgraded:
1347
1348 * Checkstyle `8.15 → 8.16 <https://checkstyle.org/releasenotes.html#Release_8.16>`__.
1349
1350 * Dependency Check `4.0.0 → 4.0.2 <https://github.com/jeremylong/DependencyCheck/blob/master/RELEASE_NOTES.md>`__.
1351
1352 * ``git-commit-id`` `2.2.5 → 2.2.6 <https://github.com/ktoso/maven-git-commit-id-plugin/releases>`__.
1353
1354 * Immutables 2.7.1 → 2.7.3:
1355
1356   * `2.7.2 <https://github.com/immutables/immutables#272-2018-11-05>`__.
1357   * `2.7.3 <https://github.com/immutables/immutables#273-2018-11-10>`__.
1358
1359   (2.7.4 breaks our Javadocs.)
1360
1361 * Jackson `2.9.7 → 2.9.8 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9.8>`__.
1362
1363 Version 4.0.7
1364 -------------
1365
1366 This is a bug-fix release, correcting the ``triemap`` import declaration.
1367
1368 Version 4.0.6
1369 -------------
1370
1371 This is a bug-fix and minor upstream packaging upgrade from version 4.0.5.
1372
1373 Bug fixes
1374 ~~~~~~~~~
1375
1376 Single-feature-test was broken with JDK 9 and later and Karaf 4.2.2; this
1377 release adds the additional JVM configuration needed.
1378
1379 Third-party dependencies
1380 ~~~~~~~~~~~~~~~~~~~~~~~~
1381
1382 This release adds the ``triemap`` BOM to dependency management.
1383
1384 Version 4.0.5
1385 -------------
1386
1387 This is a bug-fix release: the Karaf Maven plugin, in version 4.2.2, is
1388 `broken <https://issues.apache.org/jira/browse/KARAF-6057>`__ in some cases we
1389 need in OpenDaylight; we revert to 4.2.1 in ``karaf4-parent`` to avoid this.
1390
1391 Version 4.0.4
1392 -------------
1393
1394 This is a bug-fix release, reverting the change made in 4.0.3 to handle
1395 building with either ``zip`` or ``tar.gz`` Karaf archives (which breaks
1396 builds in our infrastructure, without the empty Karaf archive).
1397
1398 Version 4.0.3
1399 -------------
1400
1401 This is a bug-fix and minor upstream bump upgrade from version 4.0.2.
1402
1403 Bug fixes
1404 ~~~~~~~~~
1405
1406 * Our FindBugs configuration for JDK 9 and later caused the plugin to run
1407   everywhere; instead, this version defines the ``findbugs.skip`` property to
1408   disable the plugin in modules where it would be used otherwise.
1409
1410 * The PowerMock declarations in dependency management missed
1411   ``powermock-api-mockito2``, which is necessary for modules using PowerMock
1412   with Mockito 2.
1413
1414 * The “quick” profile (``-Pq``) now skips SpotBugs.
1415
1416 * JSR-305 annotations are now optional, which fixes a number of issues when
1417   building with newer JDKs.
1418
1419 * We provide JAXB with JDK 11 and later (where it is no longer provided by the
1420   base platform).
1421
1422 * ``odlparent-artifacts`` has been updated to accurately represent the
1423   artifacts provided.
1424
1425 * ``javax.activation`` is now excluded from generated features (it’s provided
1426   on Karaf’s boot classpath).
1427
1428 * When the build is configured to build Karaf distributions in ``tar.gz``
1429   archives, but not ``zip`` archives, ``features-test`` used to fail; it will
1430   now used whichever is available
1431   (`ODLPARENT-174 <https://jira.opendaylight.org/browse/ODLPARENT-174>`__).
1432
1433 * Explicit GCs are disabled by default, so that calls to ``System.gc()`` are
1434   ignored
1435   (`ODLPARENT-175 <https://jira.opendaylight.org/browse/ODLPARENT-175>`__).
1436
1437 * Null checks are disabled in SpotBugs because of bad interactions with newer
1438   annotations and the bytecode produces by JDK 11 and later for
1439   ``try``-with-resources.
1440
1441 * Akka Persistence expects LevelDB 0.10, so we now pull in that version
1442   instead of 0.7.
1443
1444 Dependency convergence
1445 ~~~~~~~~~~~~~~~~~~~~~~
1446
1447 A number of dependencies have been added or constrained so that projects using
1448 this parent can enforce dependency convergence:
1449
1450 * Karaf’s ``framework`` feature is used as an import POM, so that we converge
1451   by default on the versions used in Karaf.
1452
1453 * The following dependencies have been added to dependency management:
1454
1455   * ``commons-beanutils``
1456   * the Checker Framework
1457   * Error Prone annotations
1458   * ``javax.activation``
1459   * ``xml-apis``
1460
1461 New features
1462 ~~~~~~~~~~~~
1463
1464 The following Karaf features have been added:
1465
1466 * ``odl-antlr4`` (providing ``antlr4-runtime``);
1467
1468 * ``odl-gson`` (providing ``gson``);
1469
1470 * ``odl-jersey-2`` (providing Jersey client, server, and container servlet,
1471   along with the necessary feature dependencies);
1472
1473 * ``odl-servlet-api`` (providing ``javax.servlet-api``);
1474
1475 * ``odl-stax2-api`` (providing ``stax2-api``);
1476
1477 * ``odl-ws-rs-api`` (providing ``javax.ws.rs-api``);
1478
1479 A new ``sonar-jacoco-aggregate`` profile can be used to produce Sonar reports
1480 with aggregated JaCoCo reports. Additionally, Sonar builds (run with
1481 ``-Dsonar``) are detected and run with a number of irrelevant plugins disabled.
1482
1483 Upstream version upgrades
1484 ~~~~~~~~~~~~~~~~~~~~~~~~~
1485
1486 * Akka 2.5.14 → 2.5.19 (and related ``ssl-config``, Aeron and Agrona upgrades):
1487
1488   * `2.5.15 <https://akka.io/blog/news/2018/08/24/akka-2.5.15-released>`__.
1489   * `2.5.16 <https://akka.io/blog/news/2018/08/29/akka-2.5.16-security-fix-released>`__.
1490   * `2.5.17 <https://akka.io/blog/news/2018/09/27/akka-2.5.17-released>`__.
1491   * `2.5.18 <https://akka.io/blog/news/2018/10/07/akka-2.5.18-released>`__.
1492   * `2.5.19 <https://akka.io/blog/news/2018/12/07/akka-2.5.19-released>`__.
1493
1494 * Commons Text `1.4 → 1.6 <http://www.apache.org/dist/commons/text/RELEASE-NOTES.txt>`__.
1495
1496 * Eclipse JDT annotations 2.2.0 → 2.2.100.
1497
1498 * Javassist 3.23.1 → 3.24.0.
1499
1500 * Karaf 4.2.1 → 4.2.2, with related upgrades.
1501
1502 * LMAX Disruptor `3.4.1 → 3.4.2 <https://github.com/LMAX-Exchange/disruptor/releases/tag/3.4.2>`__.
1503
1504 * Mockito `2.20.1 → 2.23.4 <https://github.com/mockito/mockito/blob/release/2.x/doc/release-notes/official.md>`__.
1505
1506 * Netty 4.1.29 → 4.1.31:
1507
1508   * `4.1.30 <https://netty.io/news/2018/09/28/4-1-30-Final.html>`__.
1509   * `4.1.31 <https://netty.io/news/2018/10/30/4-1-31-Final.html>`__.
1510
1511 * Pax Exam 4.12.0 → 4.13.1.
1512
1513 * Scala 2.12.6 → 2.12.8:
1514
1515   * `2.12.7 <https://github.com/scala/scala/releases/tag/v2.12.7>`__.
1516   * `2.12.8 <https://github.com/scala/scala/releases/tag/v2.12.8>`__.
1517
1518 * Wagon HTTP 3.1.0 → 3.2.0.
1519
1520 * Xtend `2.14.0 → 2.16.0 <https://www.eclipse.org/xtend/releasenotes.html>`__.
1521
1522 Plugin version upgrades
1523 ~~~~~~~~~~~~~~~~~~~~~~~
1524
1525 * Asciidoctor `1.5.6 → 1.5.7.1 <https://github.com/asciidoctor/asciidoctor-maven-plugin/releases>`__
1526   (with related AsciidoctorJ upgrades).
1527
1528 * Bundle 4.0.0 → 4.1.0.
1529
1530 * Checkstyle `8.12 → 8.15 <https://checkstyle.org/releasenotes.html#Release_8.13>`__.
1531
1532 * DependencyCheck `3.3.2 → 4.0.0 <https://github.com/jeremylong/DependencyCheck/blob/master/RELEASE_NOTES.md>`__.
1533
1534 * Failsafe / Surefire `2.22.0 → 2.22.1 <https://blogs.apache.org/maven/entry/apache-maven-surefire-plugin-version1>`__.
1535
1536 * Help 3.1.0 → 3.1.1.
1537
1538 * JAR 3.1.0 → 3.1.1.
1539
1540 * PMD `3.10.0 → 3.11.0 <https://blogs.apache.org/maven/entry/apache-maven-pmd-plugin-3>`__.
1541
1542 * Remote Resources `1.5 → 1.6.0 <https://blogs.apache.org/maven/entry/apache-maven-remote-resources-plugin>`__.
1543
1544 * Shade
1545   `3.2.0 → 3.2.1 <https://blog.soebes.de/blog/2018/11/12/apache-maven-shade-plugin-version-3-dot-2-1-released/>`__.
1546
1547 * SpotBugs `3.1.6 → 3.1.9 <https://github.com/spotbugs/spotbugs/blob/release-3.1/CHANGELOG.md>`__.
1548
1549 * XBean finder 4.9 → 4.12.
1550
1551 * XTend 2.14.0 → 2.16.0.
1552
1553 Version 4.0.2
1554 -------------
1555
1556 This is a bug-fix and minor upstream bump upgrade from version 4.0.1.
1557
1558 Bug fixes
1559 ~~~~~~~~~
1560
1561 Previous releases overrode Karaf’s ``jre.properties``; this is no longer
1562 necessary, and was causing failures with Java 9 and later (our version of
1563 ``jre.properties`` didn’t have the appropriate settings for anything after
1564 Java 8). This release drops that override. See
1565 `ODLPARENT-168 <https://jira.opendaylight.org/browse/ODLPARENT-168>`__ for
1566 details.
1567
1568 Upstream version upgrades
1569 ~~~~~~~~~~~~~~~~~~~~~~~~~
1570
1571 * Commons Lang `3.8 → 3.8.1 <http://www.apache.org/dist/commons/lang/RELEASE-NOTES.txt>`__.
1572
1573 * Jackson `2.9.6 → 2.9.7 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9.7>`__.
1574
1575 * Netty `4.1.28 → 4.1.29 <http://netty.io/news/2018/08/24/4-1-29-Final.html>`__.
1576
1577 Plugin version upgrades
1578 ~~~~~~~~~~~~~~~~~~~~~~~
1579
1580 * JAR `3.0.2 → 3.1.0 <https://blog.soebes.de/blog/2018/04/10/apache-maven-jar-plugin-version-3-dot-1-dot-0-released>`__.
1581
1582 * Javadoc `3.0.0 → 3.0.1 <https://blogs.apache.org/maven/entry/apache-maven-javadoc-plugin-version>`__.
1583
1584 * Jersey `2.22.2 → 2.25.1 <https://jersey.github.io/release-notes/2.25.html>`__,
1585   along with Glassfish JSON 1.0.4 → 1.1.2.
1586
1587 * Plugin 3.5 → 3.5.2:
1588
1589   * `3.5.1 <https://blog.soebes.de/blog/2018/01/22/apache-maven-plugin-tools-version-3-dot-5-1-released/>`__.
1590   * `3.5.2 <https://blog.soebes.de/blog/2018/05/26/apache-mave-plugin-tools-version-3-dot-5-2-released/>`__.
1591
1592 * Resources `3.0.1 → 3.1.0 <https://blogs.apache.org/maven/entry/apache-maven-resources-plugin-version>`__.
1593
1594 Version 4.0.1
1595 -------------
1596
1597 This is a bug-fix and minor upstream bump upgrade from version 4.0.0.
1598
1599 Bug fixes
1600 ~~~~~~~~~
1601
1602 The JaCoCo execution profile was incorrect, breaking Sonar; the report is now
1603 written correctly, so that Sonar can find it.
1604
1605 The Blueprint Maven plugin fails when it encounters Java 9 classes; this is
1606 fixed by forcefully upgrading its dependency on xbean-finder. See
1607 `ODLPARENT-167 <https://jira.opendaylight.org/browse/ODLPARENT-167>`__ for
1608 details.
1609
1610 Upstream version upgrades
1611 ~~~~~~~~~~~~~~~~~~~~~~~~~
1612
1613 * SpotBugs `3.1.6 → 3.1.7 <https://github.com/spotbugs/spotbugs/blob/release-3.1/CHANGELOG.md>`__.
1614
1615 Upstream version additions
1616 ~~~~~~~~~~~~~~~~~~~~~~~~~~
1617
1618 * Mockito Inline is added alongside Mockito Core, to ensure that the versions
1619   are kept in sync.
1620
1621 Plugin version upgrades
1622 ~~~~~~~~~~~~~~~~~~~~~~~
1623
1624 * Clean `3.0.0 → 3.1.0 <https://blog.soebes.de/blog/2018/04/14/apache-maven-clean-plugin-version-3-dot-1-0-released/>`__.
1625
1626 * Compiler `3.7.0 → 3.8.0 <https://blog.soebes.de/blog/2018/07/30/apache-maven-compiler-plugin-version-3-dot-8-0-released/>`__.
1627
1628 * Dependency 3.0.2 → 3.1.1:
1629
1630   * `3.1.0 <https://blog.soebes.de/blog/2018/04/06/apache-maven-dependency-plugin-version-3-dot-1-0-released/>`__.
1631   * `3.1.1 <https://blog.soebes.de/blog/2018/05/24/apache-maven-dependency-plugin-version-3-dot-1-1-released/>`__.
1632
1633 * Dependency Check `3.3.1 → 3.3.2 <https://github.com/jeremylong/DependencyCheck/blob/master/RELEASE_NOTES.md>`__.
1634
1635 * Enforcer `3.0.0-M1 → 3.0.0-M2 <https://mail-archives.apache.org/mod_mbox/maven-announce/201806.mbox/%3Cop.zko9b2vhkdkhrr%40desktop-2khsk44.dynamic.ziggo.nl%3E>`__.
1636
1637 * Failsafe 2.20.1 → 2.22:
1638
1639   * `2.21 <https://blog.soebes.de/blog/2018/03/06/apache-maven-surefire-plugin-version-2-dot-21-released/>`__.
1640   * `2.22 <https://blog.soebes.de/blog/2018/06/16/apache-maven-surefire-plugin-version-2-dot-22-released/>`__.
1641
1642 * Help 2.2 → 3.1.0:
1643
1644   * `3.0.0 <https://blog.soebes.de/blog/2018/03/18/apache-maven-help-plugin-version-3-dot-0-0-released/>`__.
1645   * `3.0.1 <https://blog.soebes.de/blog/2018/03/28/apache-maven-help-plugin-version-3-dot-0-1-released/>`__.
1646   * `3.1.0 <https://blog.soebes.de/blog/2018/06/09/apache-maven-help-plugin-version-3-dot-1-0-released/>`__.
1647
1648 * Invoker 2.0.0 → 3.1.0:
1649
1650   * `3.0.0 <https://blog.soebes.de/blog/2017/05/24/apache-maven-invoker-plugin-version-3-dot-0-0-released/>`__.
1651   * `3.1.0 <https://blog.soebes.de/blog/2018/05/31/apache-maven-invoker-plugin-version-3-dot-1-0-released/>`__.
1652
1653 * JAR `3.0.2 → 3.1.0 <https://blog.soebes.de/blog/2018/04/10/apache-maven-jar-plugin-version-3-dot-1-dot-0-released/>`__.
1654
1655 * Project Info Reports `2.9 → 3.0.0 <https://blog.soebes.de/blog/2018/06/27/apache-maven-project-info-reports-plugin-3-dot-0-0-released/>`__.
1656
1657 * Resources `3.0.1 → 3.1.0 <https://blog.soebes.de/blog/2018/05/01/apache-maven-resources-plugin-version-3-dot-1-0-released/>`__.
1658
1659 * Shade `3.1.0 → 3.2.0 <https://blog.soebes.de/blog/2018/09/13/apache-maven-shade-plugin-version-3-dot-2-0-released/>`__.
1660
1661 * Site `3.7 → 3.7.1 <https://blog.soebes.de/blog/2018/04/29/apache-maven-site-plugin-version-3-dot-7-1-released/>`__.
1662
1663 * Surefire 2.18.1 → 2.22.0:
1664
1665   * `2.19 <https://blog.soebes.de/blog/2015/10/19/apache-maven-surefire-plugin-version-2-dot-19-released/>`__.
1666   * `2.19.1 <https://blog.soebes.de/blog/2016/01/03/apache-maven-surefire-plugin-version-2-dot-19-dot-1-released/>`__.
1667   * `2.20 <https://blog.soebes.de/blog/2017/04/12/apache-maven-surefire-plugin-version-2-dot-20-released/>`__.
1668   * `2.21 <https://blog.soebes.de/blog/2018/03/06/apache-maven-surefire-plugin-version-2-dot-21-released/>`__.
1669   * `2.22 <https://blog.soebes.de/blog/2018/06/16/apache-maven-surefire-plugin-version-2-dot-22-released/>`__.
1670
1671
1672 Version 4.0.0
1673 -------------
1674
1675 This is a major upgrade from version 3, with breaking changes; projects will
1676 need to make changes to upgrade to this version.
1677
1678 `This Wiki page <https://wiki.opendaylight.org/view/Neon_platform_upgrade>`__
1679 has detailed step-by-step migration instructions.
1680
1681 ODL Parent 4 requires Maven 3.5.3 or later; this is needed in particular to
1682 enable SpotBugs support with current versions of the SpotBugs plugin.
1683
1684 Known issues
1685 ~~~~~~~~~~~~
1686
1687 This release’s SpotBugs support doesn’t handle Guava 25.1 correctly, resulting
1688 in false-positives regarding null handling; see
1689 `ODLPARENT-161 <https://jira.opendaylight.org/browse/ODLPARENT-161>`__ for
1690 details. Until this is fixed, the corresponding warnings are disabled, which
1691 matches our existing FindBugs configuration (which suffers from the a variant
1692 of this, with the same consequences).
1693
1694 We are planning on upgrading Akka during the 4.x cycle, even if it results in
1695 a technically breaking upgrade. This is currently blocked on an OSGi bug in
1696 Akka; see `Akka issue 25579 <https://github.com/akka/akka/issues/25579>`__ for
1697 details.
1698
1699 Blueprint and OSGi service handling
1700 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1701
1702 Previous releases used an OpenDaylight-specific directory for Blueprint XML
1703 files, ``org/opendaylight/blueprint``. It turned out this wasn’t useful, so
1704 version 4 uses the default directory, ``OSGI-INF/blueprint``.
1705
1706 The Maven bundle plugin is now configured to omit the ``Import-Service`` and
1707 ``Export-Service`` headers, since they are deprecated, unnecessary in
1708 OpenDaylight, and liable to cause issues.
1709
1710 With previous releases of OpenDaylight, projects were encouraged to use Pax
1711 CDI API annotations to describe their Blueprint beans, services and injections;
1712 with version 4, Blueprint annotations should be used instead:
1713
1714 * modules should depend on
1715   ``org.apache.aries.blueprint:blueprint-maven-plugin-annotation``, with the
1716   ``<optional>true</optional>`` flag, instead of
1717   ``org.ops4j.pax.cdi:pax-cdi-api``;
1718
1719 * ``@OsgiServiceProvider`` on bean definitions is replaced by ``@Service``;
1720
1721 * ``@OsgiService`` at injection points is replaced by ``@Reference``;
1722
1723 * ``@OsgiService`` on bean definitions, while technically wrong, can be seen in
1724   the OpenDaylight codebase; this is replaced by ``@Service``;
1725
1726 * service lists can be injected using ``@ReferenceList``.
1727
1728 See `this Gerrit patch <https://git.opendaylight.org/gerrit/75699>`__ for an
1729 example.
1730
1731 Compiler settings
1732 ~~~~~~~~~~~~~~~~~
1733
1734 Builds now warn about unchecked type uses (such as raw types where generics
1735 are available).
1736
1737 JUnit and Mockito are always available as test dependencies and no longer need
1738 to be declared in POMs.
1739
1740 New build profiles
1741 ~~~~~~~~~~~~~~~~~~
1742
1743 An OWASP profile is now available to run OWASP’s dependency checker; this will
1744 check all third-party dependencies against the NVD vulnerability database. To
1745 enable this, run Maven with ``-Powasp``.
1746
1747 Build profile changes
1748 ~~~~~~~~~~~~~~~~~~~~~
1749
1750 ``-Pq`` now skips Modernizer.
1751
1752 New features
1753 ~~~~~~~~~~~~
1754
1755 ``odl-akka-leveldb-0.10`` wraps LevelDB 0.10 for Akka.
1756
1757 ``odl-apache-commons-codec`` wraps Apache Commons Codec.
1758
1759 ``odl-apache-commons-lang3`` wraps Apache Commons Lang 3.
1760
1761 ``odl-apache-commons-net`` wraps Apache Commons Net.
1762
1763 ``odl-apache-commons-text`` wraps Apache Commons Text.
1764
1765 ``odl-apache-sshd`` wraps Apache SSHD.
1766
1767 ``odl-guava`` provides the default ODL version of Guava; it should be used
1768 instead of ``odl-guava-23`` or the new ``odl-guava-25``.
1769
1770 ``odl-jackson-2.9`` wraps Jackson 2.9.
1771
1772 New FindBugs and SpotBugs settings
1773 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1774
1775 FindBugs and SpotBugs are configured with
1776 `the SLF4J extension <http://kengotoda.github.io/findbugs-slf4j/>`__ (version
1777 1.4.0 for FindBugs, 1.4.1 for SpotBugs). This will flag misused SLF4J calls, in
1778 particular message templates which don’t match the arguments, and invalid
1779 placeholders (*e.g.* ``%s`` instead of ``{}``).
1780
1781 Deleted artifacts
1782 ~~~~~~~~~~~~~~~~~
1783
1784 ``aggregator-parent`` was unusable outside ``odlparent`` and has been removed.
1785 Instead, the ``maven.deploy.skip`` and ``maven.install.skip`` properties are
1786 available to disable deploying and installing artifacts.
1787
1788 Upstream version upgrades
1789 ~~~~~~~~~~~~~~~~~~~~~~~~~
1790
1791 This version upgrades the following third-party dependencies:
1792
1793 * Aeron 1.7.0 → 1.9.3:
1794
1795   * `1.8.0 <https://github.com/real-logic/aeron/releases/tag/1.8.0>`__.
1796   * `1.8.1 <https://github.com/real-logic/aeron/releases/tag/1.8.1>`__.
1797   * `1.8.2 <https://github.com/real-logic/aeron/releases/tag/1.8.2>`__.
1798   * `1.9.0 <https://github.com/real-logic/aeron/releases/tag/1.9.0>`__.
1799   * `1.9.1 <https://github.com/real-logic/aeron/releases/tag/1.9.1>`__.
1800   * `1.9.2 <https://github.com/real-logic/aeron/releases/tag/1.9.2>`__.
1801   * `1.9.3 <https://github.com/real-logic/aeron/releases/tag/1.9.3>`__.
1802
1803 * Agrona 0.9.12 → 0.9.21:
1804
1805   * `0.9.13 <https://github.com/real-logic/agrona/releases/tag/0.9.13>`__.
1806   * `0.9.14 <https://github.com/real-logic/agrona/releases/tag/0.9.14>`__.
1807   * `0.9.15 <https://github.com/real-logic/agrona/releases/tag/0.9.15>`__.
1808   * `0.9.16 <https://github.com/real-logic/agrona/releases/tag/0.9.16>`__.
1809   * `0.9.17 <https://github.com/real-logic/agrona/releases/tag/0.9.17>`__.
1810   * `0.9.18 <https://github.com/real-logic/agrona/releases/tag/0.9.18>`__.
1811   * `0.9.19 <https://github.com/real-logic/agrona/releases/tag/0.9.19>`__.
1812   * `0.9.20 <https://github.com/real-logic/agrona/releases/tag/0.9.20>`__.
1813   * `0.9.21 <https://github.com/real-logic/agrona/releases/tag/0.9.21>`__.
1814
1815 * Akka 2.5.11 → 2.5.14:
1816
1817   * `2.5.12 <https://akka.io/blog/news/2018/04/13/akka-2.5.12-released>`__.
1818   * `2.5.13 <https://akka.io/blog/news/2018/06/08/akka-2.5.13-released>`__.
1819   * `2.5.14 <https://akka.io/blog/news/2018/07/13/akka-2.5.14-released>`__.
1820
1821 * ASM 5.1 → 6.2.1 (synchronised with Karaf).
1822
1823 * Bouncy Castle `1.59 → 1.60 <https://www.bouncycastle.org/releasenotes.html>`__.
1824
1825 * Checkstyle `8.4 → 8.12 <http://checkstyle.sourceforge.net/releasenotes.html#Release_8.12>`__.
1826
1827 * Commons Lang `3.7 → 3.8 <http://www.apache.org/dist/commons/lang/RELEASE-NOTES.txt>`__.
1828
1829 * Commons Text 1.1 → 1.4:
1830
1831   * `1.2 <https://commons.apache.org/proper/commons-text/release-notes/RELEASE-NOTES-1.2.txt>`__.
1832   * `1.3 <https://commons.apache.org/proper/commons-text/release-notes/RELEASE-NOTES-1.3.txt>`__.
1833   * `1.4 <https://commons.apache.org/proper/commons-text/release-notes/RELEASE-NOTES-1.4.txt>`__.
1834
1835 * Eclipse JDT annotations 2.1.150 → 2.2.0.
1836
1837 * EclipseLink Moxy JAXB `2.7.1 → 2.7.3 <https://www.eclipse.org/eclipselink/releases/2.7.php>`__.
1838
1839 * Enunciate core annotations
1840   `2.10.1 → 2.11.1 <https://github.com/stoicflame/enunciate/releases>`__.
1841
1842 * Felix Metatype 1.1.6 → 1.2.0 (synchronised with Karaf).
1843
1844 * Google Truth `0.40 → 0.42 <https://github.com/google/truth/releases>`__.
1845
1846 * Guava 23.6.1 → 25.1:
1847
1848   * `23.4 <https://github.com/google/guava/releases/tag/v23.4>`__.
1849   * `23.5 <https://github.com/google/guava/releases/tag/v23.5>`__.
1850   * `23.6 <https://github.com/google/guava/releases/tag/v23.6>`__.
1851   * `24.0 <https://github.com/google/guava/releases/tag/v24.0>`__.
1852   * `24.1 <https://github.com/google/guava/releases/tag/v24.1>`__.
1853   * `25.0 <https://github.com/google/guava/releases/tag/v25.0>`__.
1854   * `25.1 <https://github.com/google/guava/releases/tag/v25.1>`__.
1855
1856 * Immutables `2.5.6 → 2.7.1 <https://github.com/immutables/immutables/blob/master/README.md#changelog>`__.
1857
1858 * Jackson 2.8.9 → 2.9.6:
1859
1860   * `2.9 feature overview <https://medium.com/@cowtowncoder/jackson-2-9-features-b2a19029e9ff>`__.
1861   * `2.9 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9>`__.
1862   * `2.9.1 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9.1>`__.
1863   * `2.9.2 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9.2>`__.
1864   * `2.9.3 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9.3>`__.
1865   * `2.9.4 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9.4>`__.
1866   * `2.9.5 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9.5>`__.
1867   * `2.9.6 <https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.9.6>`__.
1868
1869 * JaCoCo `0.8.1 → 0.8.2 <https://github.com/jacoco/jacoco/releases/tag/v0.8.2>`__.
1870
1871 * Javassist 3.22.0 → 3.23.1. This provides compatibility with Java 9 and later,
1872   and `fixes a file handle leak <https://github.com/jboss-javassist/javassist/issues/165>`__.
1873
1874 * Jettison 1.3.8 → 1.4.0.
1875
1876 * Jetty 9.3.21 → 9.4.11 (synchronised with Karaf):
1877
1878   * `9.4.0 <https://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00097.html>`__.
1879   * `9.4.1 <https://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00100.html>`__.
1880   * `9.4.2 <https://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00101.html>`__.
1881   * `9.4.3 <https://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00102.html>`__.
1882   * `9.4.4 <https://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00105.html>`__.
1883   * `9.4.5 <https://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00107.html>`__.
1884   * `9.4.6 <https://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00109.html>`__.
1885   * `9.4.7 <https://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00111.html>`__.
1886   * `9.4.8 <https://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00114.html>`__.
1887   * `9.4.9 <https://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00117.html>`__.
1888   * `9.4.10 <https://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00119.html>`__.
1889   * `9.4.11 <https://dev.eclipse.org/mhonarc/lists/jetty-announce/msg00122.html>`__.
1890
1891 * Jolokia OSGi `1.5.0 → 1.6.0 <https://jolokia.org/changes-report.html#a1.6.0>`__.
1892
1893 * Karaf 4.1.5 → 4.2.1:
1894
1895   * `4.1.6 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12342748>`__.
1896   * `4.2.1 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12342945>`__.
1897
1898 * LMAX Disruptor 3.3.10 → 3.4.1:
1899
1900   * `3.4.0 <https://github.com/LMAX-Exchange/disruptor/releases/tag/3.4.0>`__.
1901   * `3.4.1 <https://github.com/LMAX-Exchange/disruptor/releases/tag/3.4.1>`__.
1902
1903 * META-INF services 1.7 → 1.8.
1904
1905 * Mockito 1.10.19 → 2.20.1; see
1906   `What’s new in Mockito 2 <https://github.com/mockito/mockito/wiki/What%27s-new-in-Mockito-2>`__
1907   for upgrade instructions and
1908   `the list of issues you might run into <https://asolntsev.github.io/en/2016/10/11/mockito-2.1/>`__.
1909
1910 * Netty 4.1.22 → 4.1.28:
1911
1912   * `4.1.17 <http://netty.io/news/2017/11/08/4-0-53-Final-4-1-17-Final.html>`__.
1913   * `4.1.18 <http://netty.io/news/2017/12/11/4-0-54-Final-4-1-18-Final.html>`__.
1914   * `4.1.19 <http://netty.io/news/2017/12/18/4-1-19-Final.html>`__.
1915   * `4.1.20 <http://netty.io/news/2018/01/22/4-0-55-Final-4-1-20-Final.html>`__.
1916   * `4.1.21 <http://netty.io/news/2018/02/05/4-0-56-Final-4-1-21-Final.html>`__.
1917   * `4.1.22 <http://netty.io/news/2018/02/21/4-1-22-Final.html>`__.
1918   * `4.1.23 <http://netty.io/news/2018/04/04/4-1-23-Final.html>`__.
1919   * `4.1.24 <http://netty.io/news/2018/04/19/4-1-24-Final.html>`__.
1920   * `4.1.25 <http://netty.io/news/2018/05/14/4-1-25-Final.html>`__.
1921   * `4.1.26 <http://netty.io/news/2018/07/10/4-1-26-Final.html>`__.
1922   * `4.1.27 <http://netty.io/news/2018/07/11/4-1-27-Final.html>`__.
1923   * `4.1.28 <http://netty.io/news/2018/07/27/4-1-28-Final.html>`__.
1924
1925 * Pax Exam 4.11.0 → 4.12.0.
1926
1927 * Pax URL 2.5.3 → 2.5.4, which only fixes
1928   `a potential NullPointerException <https://ops4j1.jira.com/browse/PAXURL-346>`__.
1929
1930 * PowerMock 1.6.4 → 1.7.4:
1931
1932   * `1.6.5 <https://github.com/powermock/powermock/releases/tag/powermock-1.6.5>`__.
1933   * `1.6.6 <https://github.com/powermock/powermock/releases/tag/powermock-1.6.6>`__.
1934   * `1.7.0 <https://github.com/powermock/powermock/releases/tag/powermock-1.7.0>`__.
1935   * `1.7.1 <https://github.com/powermock/powermock/releases/tag/powermock-1.7.1>`__.
1936   * `1.7.2 <https://github.com/powermock/powermock/releases/tag/powermock-1.7.2>`__.
1937   * `1.7.3 <https://github.com/powermock/powermock/releases/tag/powermock-1.7.3>`__.
1938   * `1.7.4 <https://github.com/powermock/powermock/releases/tag/powermock-1.7.4>`__.
1939
1940 * Scala parser combinators 1.0.7 → 1.1.1:
1941
1942   * `1.1.0 <https://github.com/scala/scala-parser-combinators/releases/tag/v1.1.0>`__.
1943   * `1.1.1 <https://github.com/scala/scala-parser-combinators/releases/tag/v1.1.1>`__.
1944
1945 * SpotBugs `3.1.0 → 3.1.6 <https://github.com/spotbugs/spotbugs/blob/3.1.6/CHANGELOG.md>`__.
1946
1947 * Threeten Extra `1.3.2 → 1.4 <https://github.com/ThreeTen/threeten-extra/releases>`__.
1948
1949 * Typesafe SSL config 0.2.2 → 0.2.4:
1950
1951   * `0.2.3 <https://github.com/lightbend/ssl-config/releases/tag/v0.2.3>`__.
1952   * `0.2.4 <https://github.com/lightbend/ssl-config/releases/tag/v0.2.4>`__.
1953
1954 * Wagon HTTP
1955   `2.10 → 3.1.0 <https://lists.apache.org/thread.html/96024c54db7680697cb066e22a37b0ed5b4498386714a8a9ae1ec9cd@%3Cannounce.maven.apache.org%3E>`__.
1956
1957 * XMLUnit `1.6 → 2.6.2 <https://github.com/xmlunit/xmlunit/blob/master/RELEASE_NOTES.md>`__.
1958
1959 Upstream version additions
1960 ~~~~~~~~~~~~~~~~~~~~~~~~~~
1961
1962 The following upstream dependencies have been added to dependency management:
1963
1964 * Apache SSHD 2.0.0, with EdDSA and Netty support (EdDSA is provided by ``net.i2p.crypto:eddsa``).
1965
1966 * Blueprint annotations (``org.apache.aries.blueprint:blueprint-maven-plugin-annotation``).
1967
1968 * Log4J2.
1969
1970 * Pax Web 7.2.3 (synchronised with Karaf).
1971
1972 Upstream version removals
1973 ~~~~~~~~~~~~~~~~~~~~~~~~~
1974
1975 The following upstream dependencies have been removed from dependency management:
1976
1977 * Google Protobuf.
1978
1979 * Our repackaging of Jersey Servlet.
1980
1981 * JUnit’s ``junit-dep``, which has long been obsolete.
1982
1983 * LevelDB (which is still available as features).
1984
1985 * Pax CDI API — Blueprint annotations should be used instead.
1986
1987 Plugin version upgrades
1988 ~~~~~~~~~~~~~~~~~~~~~~~
1989
1990 The following plugins have been upgraded:
1991
1992 * Blueprint 1.4.0 → 1.10.0.
1993
1994 * Build helper 1.12 → 3.0.0.
1995
1996 * Bundle plugin 3.5.0 → 4.0.0.
1997
1998 * Checkstyle
1999   `2.17 → 3.0.0 <https://mail-archives.apache.org/mod_mbox/maven-announce/201801.mbox/%3Cop.zchs68akkdkhrr%40desktop-2khsk44.mshome.net%3E>`__.
2000
2001 * Duplicate finder
2002   `1.2.1 → 1.3.0 <https://github.com/basepom/duplicate-finder-maven-plugin/blob/master/CHANGES.md>`__.
2003
2004 * Git commit id `2.2.4 → 2.2.5 <https://github.com/ktoso/maven-git-commit-id-plugin/releases/tag/v2.2.5>`__.
2005
2006 * Jacoco Maven plugin `0.8.1 → 0.8.2 <https://github.com/jacoco/jacoco/releases/tag/v0.8.2>`__.
2007
2008 * Javadoc `3.0.0 → 3.0.1 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317529&version=12342283>`__.
2009
2010 * PMD 3.8 → 3.10.0:
2011
2012   * `3.10.0 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12342689&styleName=Text&projectId=12317621>`__.
2013
2014 * Sevntu `1.29.0 → 1.32.0 <http://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.32.0>`__.
2015
2016 * SpotBugs 3.1.0-RC6 → 3.1.6 (see the SpotBugs changes above).
2017
2018 Version 3.1.3
2019 -------------
2020
2021 This version fixes the following issues:
2022
2023 * `ODLPARENT-156 <https://jira.opendaylight.org/browse/ODLPARENT-156>`_:
2024   ``xtend-maven-plugin``’s dependencies end up pulling in conflicting
2025   dependencies. ODL Parent now constrains part of its dependency tree to avoid
2026   this.
2027
2028 This version adds ``odl-jackson-2.8`` to ``odlparent-artifacts``.
2029
2030 Version 3.1.2
2031 -------------
2032
2033 This version fixes the following issues:
2034
2035 * `INFRAUTILS-41 <https://jira.opendaylight.org/browse/INFRAUTILS-41>`_:
2036   ``jre.properties`` includes ``com.sun.management`` so that it can be
2037   enabled if necessary. (This doesn’t add a dependency on
2038   ``com.sun.management``, it allows bundles to use it if it is present.)
2039
2040 * `ODLPARENT-136 <https://jira.opendaylight.org/browse/ODLPARENT-136>`_:
2041   ``SingleFeatureTest`` pulls in ``org.osgi.compendium``.
2042
2043 * `ODLPARENT-144 <https://jira.opendaylight.org/browse/ODLPARENT-144>`_:
2044   ``org.apache.karaf.scr.management`` is whitelisted so that it no longer
2045   affects ``SingleFeatureTest``.
2046
2047 * `ODLPARENT-146 <https://jira.opendaylight.org/browse/ODLPARENT-146>`_:
2048   null-related FindBugs checks which produce false-positives with Guava 23.6
2049   and later are disabled, so that this really is fully backwards-compatible
2050   with 3.0 and later.
2051
2052 * `ODLPARENT-148 <https://jira.opendaylight.org/browse/ODLPARENT-148>`_:
2053   ``SingleFeatureTest`` preserves ``target/SFT/karaf.log``.
2054
2055 This version includes the following improvements:
2056
2057 * ``custom.properties`` no longer includes OVSDB-specific configuration.
2058
2059 * The ``odl-jersey-1`` feature includes the Jersey client.
2060
2061 * Redundant bundle dependency declarations in ``SingleFeatureTest`` have been
2062   removed (these are declarations which are also present in our base Karaf
2063   distribution).
2064
2065 * Build errors involving invalid feature or bundle URLs now indicate which
2066   feature is at fault.
2067
2068 * Obsolete Log4J overrides have been removed from ``SingleFeatureTest``.
2069
2070 When building using JDK 9 or 10, the default settings have been changed as
2071 follows to avoid errors or extraneous warnings:
2072
2073 * SFT is disabled (it needs Karaf 4.2 or later);
2074
2075 * Javadocs are generated as HTML 4;
2076
2077 * SpotBugs is disabled on JDK 10 or later;
2078
2079 * FindBugs is disabled on JDK 9 or later.
2080
2081 The following third-party dependencies have been upgraded:
2082
2083 * `EclipseLink Moxy JAXB 2.6.2 → 2.7.1 <https://www.eclipse.org/eclipselink/releases/2.7.php>`_.
2084
2085 * `Google Truth 0.36 → 0.40 <https://github.com/google/truth/releases>`_.
2086
2087 * `Gson 2.8.2 → 2.8.5 <https://github.com/google/gson/blob/master/CHANGELOG.md>`_.
2088
2089 * `Guava 23.6 → 23.6.1 <https://github.com/google/guava/compare/v23.6...v23.6.1>`_.
2090   This addresses CVE-2018-10237 (that’s the only change in this release).
2091
2092 * `Jacoco Maven plugin 0.8.0 → 0.8.1 <https://github.com/jacoco/jacoco/releases/tag/v0.8.1>`_.
2093
2094 * JDT annotations 2.1.0 → 2.1.150.
2095
2096 * `Scala 2.12.5 → 2.12.6 <https://github.com/scala/scala/releases/tag/v2.12.6>`_.
2097
2098 * `Scala Parser Combinators 1.0.6 → 1.0.7 <https://github.com/scala/scala-parser-combinators/releases/tag/v1.0.7>`_.
2099
2100 * `Sevntu 1.24.2 → 1.29.0 <https://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.29.0>`_.
2101
2102 * `Xtext and Xtend 2.13.0 → 2.14.0 <https://github.com/eclipse/xtext/blob/website-master/xtend-website/_posts/releasenotes/2018-05-23-version-2-14-0.md>`_.
2103
2104 The following Maven plugin has been upgraded:
2105
2106 * `Javadoc 3.0.0 → 3.0.1 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317529&version=12342283>`_.
2107
2108 Version 3.1.1
2109 -------------
2110
2111 This version fixes the following issues:
2112
2113 * `ODLPARENT-137 <https://jira.opendaylight.org/browse/ODLPARENT-137>`_:
2114   restore the OpenDaylight prompt.
2115
2116 * `ODLPARENT-146 <https://jira.opendaylight.org/browse/ODLPARENT-146>`_:
2117   Guava 23.6 switched from @Nullable to @NullableDecl, which causes false
2118   positives in FindBugs’ ``NP_NONNULL_PARAM_VIOLATION`` rule; we’re
2119   disabling the rule for now.
2120
2121 Version 3.1.0
2122 -------------
2123
2124 This version fixes the following issues:
2125
2126 * Mycila dependencies are now “compile” scoped rather than “test”; this allows
2127   child projects to use Guice with Mycila more easily.
2128
2129 * The duplicate finder now ignores ``web.xml`` and BluePrint XML files.
2130
2131 This version includes the following improvements:
2132
2133 * The ``-Pq`` profile skips Maven Modernizer, in preparation for its future
2134   integration (and its use in child projects).
2135
2136 * An OWASP profile, ``-Powasp`` is available for vulnerability checking.
2137
2138 * A new ``odl-jackson-2.8`` feature provides Jackson 2.8 to child projects.
2139
2140 The following third-party dependencies have been added to dependency management:
2141
2142 * `ThreeTen-Extra <http://www.threeten.org/threeten-extra/>`_
2143
2144 The following third-party dependencies have been upgraded:
2145
2146 * Aeron 1.2.5 → 1.7.0; release notes:
2147
2148   * `1.3.0 <https://github.com/real-logic/aeron/releases/tag/1.3.0>`_
2149   * `1.4.0 <https://github.com/real-logic/aeron/releases/tag/1.4.0>`_
2150   * `1.5.0 <https://github.com/real-logic/aeron/releases/tag/1.5.0>`_
2151   * `1.5.1 <https://github.com/real-logic/aeron/releases/tag/1.5.1>`_
2152   * `1.5.2 <https://github.com/real-logic/aeron/releases/tag/1.5.2>`_
2153   * `1.6.0 <https://github.com/real-logic/aeron/releases/tag/1.6.0>`_
2154   * `1.7.0 <https://github.com/real-logic/aeron/releases/tag/1.7.0>`_
2155
2156 * Agrona 0.9.5 → 0.9.12; release notes:
2157
2158   * `0.9.6 <https://github.com/real-logic/Agrona/releases/tag/0.9.6>`_
2159   * `0.9.7 <https://github.com/real-logic/Agrona/releases/tag/0.9.7>`_
2160   * `0.9.8 <https://github.com/real-logic/Agrona/releases/tag/0.9.8>`_
2161   * `0.9.9 <https://github.com/real-logic/Agrona/releases/tag/0.9.9>`_
2162   * `0.9.10 <https://github.com/real-logic/Agrona/releases/tag/0.9.10>`_
2163   * `0.9.11 <https://github.com/real-logic/Agrona/releases/tag/0.9.11>`_
2164   * `0.9.12 <https://github.com/real-logic/Agrona/releases/tag/0.9.12>`_
2165
2166 * Akka 2.5.5 → 2.5.11; release notes:
2167
2168   * `2.5.6 <https://akka.io/blog/news/2017/09/28/akka-2.5.6-released>`_
2169   * `2.5.7 <https://akka.io/blog/news/2017/11/17/akka-2.5.7-released>`_
2170   * `2.5.8 <https://akka.io/blog/news/2017/12/08/akka-2.5.8-released>`_
2171   * `2.5.9 <https://akka.io/blog/news/2018/01/11/akka-2.5.9-released-2.4.x-end-of-life>`_
2172   * `2.5.10 <https://akka.io/blog/news/2018/02/23/akka-2.5.10-released>`_
2173   * `2.5.11 <https://akka.io/blog/news/2018/02/28/akka-2.5.11-released>`_
2174
2175 * Commons Lang 3 `3.6 → 3.7 <http://www.apache.org/dist/commons/lang/RELEASE-NOTES.txt>`_
2176
2177 * Guava 23.3 → 23.6; release notes:
2178
2179   * `23.4 <https://github.com/google/guava/releases/tag/v23.4>`_
2180   * `23.5 <https://github.com/google/guava/releases/tag/v23.5>`_
2181   * `23.6 <https://github.com/google/guava/releases/tag/v23.6>`_
2182
2183 * H2 database `1.4.193 → 1.4.196 <http://www.h2database.com/html/changelog.html>`_
2184
2185 * Jacoco `0.7.9 → 0.8.0 <https://github.com/jacoco/jacoco/releases/tag/v0.8.0>`_
2186
2187 * Javassist `3.21.0 → 3.22.0 <https://github.com/jboss-javassist/javassist/compare/rel_3_21_0_ga...rel_3_22_0_ga>`_
2188
2189 * lmax-disruptor 3.3.7 → 3.3.10; release notes:
2190
2191   * `3.3.8 <https://github.com/LMAX-Exchange/disruptor/releases/tag/3.3.8>`_
2192   * `3.3.9 <https://github.com/LMAX-Exchange/disruptor/releases/tag/3.3.9>`_
2193   * `3.3.10 <https://github.com/LMAX-Exchange/disruptor/releases/tag/3.3.10>`_
2194
2195 * Netty 4.1.16 → 4.1.22; release notes:
2196
2197   * `4.1.17 <http://netty.io/news/2017/11/08/4-0-53-Final-4-1-17-Final.html>`_
2198   * `4.1.18 <http://netty.io/news/2017/12/11/4-0-54-Final-4-1-18-Final.html>`_
2199   * `4.1.19 <http://netty.io/news/2017/12/18/4-1-19-Final.html>`_
2200   * `4.1.20 <http://netty.io/news/2018/01/22/4-0-55-Final-4-1-20-Final.html>`_
2201   * `4.1.21 <http://netty.io/news/2018/02/05/4-0-56-Final-4-1-21-Final.html>`_
2202   * `4.1.22 <http://netty.io/news/2018/02/21/4-1-22-Final.html>`_
2203
2204 * Scala `2.12.4 → 2.12.5 <http://www.scala-lang.org/news/2.12.5>`_
2205
2206 * Typesafe Config `0.2.1 → 0.2.2 <https://github.com/typesafehub/config/blob/master/NEWS.md>`_
2207
2208 The following Maven plugins have been upgraded:
2209
2210 * FindBugs 3.0.4 → 3.0.5
2211
2212 * Git commit id 2.2.2 → 2.2.4; release notes:
2213
2214   * `2.2.3 <https://github.com/ktoso/maven-git-commit-id-plugin/releases/tag/v2.2.3>`_
2215   * `2.2.4 <https://github.com/ktoso/maven-git-commit-id-plugin/releases/tag/v2.2.4>`_
2216
2217 Version 3.0.3
2218 -------------
2219
2220 This version fixes the following issues:
2221
2222 * `ODLPARENT-136`_: ``features-test`` needs ``org.osgi.compendium``.
2223
2224 * Jackson dependencies are declared using ``jackson-bom`` to ensure all they
2225   remain consistent.
2226
2227 * ``find-duplicate-classpath-entries`` is run in the “verify” phase rather than
2228   the “validate” phase, which is too early.
2229
2230 * The version of Jetty we pull in is now aligned with that declared in Karaf,
2231   resolving a number of restart and dependency issues.
2232
2233 * Pulling in the ``wrap`` feature unconditionally is no longer necessary, so
2234   ``karaf4-parent`` no longer does so.
2235
2236 * ``metainf-services`` are declared with scope “provided” to avoid their being
2237   included in downstream features (it’s a build-time dependency only).
2238
2239 * ``leveldb-api`` is excluded from ``odl-akka-leveldb-0.7``, and ``jsr250-api``
2240   from ``enunciate-core-annotations``, to avoid duplicate having classes on the
2241   classpath.
2242
2243 * Since the ``ssh`` feature is excluded from generated features, our Karaf
2244   need to enable it at boot in all cases.
2245
2246 * ``bundle-test-lib`` is now a bundle.
2247
2248 * Since we use static SLF4J loggers, the ``SLF4J_LOGGER_SHOULD_BE_NON_STATIC``
2249   rule needs to be disabled in our FindBugs configuration (this allows
2250   downstream projects to enable ``findbugs-slf4j`` without having to deal with
2251   all the resulting false-positives).
2252
2253 * ``org.apache.karaf.scr.management`` is white-listed in SFT to avoid failures
2254   apparently related to that component (which we don’t care about).
2255
2256 .. _ODLPARENT-136: https://jira.opendaylight.org/browse/ODLPARENT-136
2257
2258 This version upgrades the following third-party dependencies:
2259
2260 * `Antlr 4.7 → 4.7.1`_
2261
2262 * `BouncyCastle 1.58 → 1.59`_
2263
2264 * Jersey 1.17 → 1.19.4 (additionally available as the ``odl-jersey-1`` feature)
2265
2266 * Jolokia 1.3.7 → 1.5.0
2267
2268 * Karaf 4.1.3 → 4.1.5; release notes:
2269
2270   * `Karaf 4.1.4`_
2271   * `Karaf 4.1.5`_
2272
2273 .. _Antlr 4.7 → 4.7.1: https://github.com/antlr/antlr4/releases/tag/4.7.1
2274 .. _BouncyCastle 1.58 → 1.59: https://www.bouncycastle.org/releasenotes.html
2275 .. _Karaf 4.1.4: https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12341702
2276 .. _Karaf 4.1.5: https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12342294
2277
2278 Version 3.0.2
2279 -------------
2280
2281 This version fixes the following issues:
2282
2283 * SingleFeatureTest uses the configured local Maven repository for Pax Exam.
2284
2285 * JavaDoc links are disabled for now to `speed up builds`_. A new
2286   ``javadoc-links`` profile enables the links.
2287
2288 * Conditional feature dependencies are processed, ensuring our
2289   `distribution is complete`_.
2290
2291 * Startup features are `adjusted for Karaf 4.1`_, avoiding unnecessary
2292   refreshes.
2293
2294 * The ``hiddenField`` Checkstyle check is disabled for abstract methods.
2295
2296 * The default logging configuration uses Log4J2, which is the new default in
2297   Karaf 4.1.
2298
2299 .. _speed up builds: https://jira.opendaylight.org/browse/ODLPARENT-121
2300 .. _distribution is complete: https://jira.opendaylight.org/browse/ODLPARENT-133
2301 .. _adjusted for Karaf 4.1: https://jira.opendaylight.org/browse/ODLPARENT-134
2302
2303 This version upgrades the following dependencies or plugins:
2304
2305 * ``maven-enforcer-plugin`` 1.4.1 → 3.0.0-M1
2306
2307 * ``maven-javadoc-plugin`` 3.0.0-M1 → 3.0.0
2308
2309 Version 3.0.1
2310 -------------
2311
2312 This version fixes the following issues:
2313
2314 * Karaf pulls in an invalid Hibernate feature repository, breaking downstream
2315   dependencies pulling in the “war” feature. ``populate-local-repo`` corrects
2316   the repository dependency.
2317
2318
2319 Version 3.0.0
2320 -------------
2321
2322 Compiler settings
2323 ~~~~~~~~~~~~~~~~~
2324
2325 Build now show compiler warnings and deprecation warnings. This doesn't affect
2326 the result or require any changes currently, it just makes the issues more
2327 visible.
2328
2329 New Checkstyle rules
2330 ~~~~~~~~~~~~~~~~~~~~
2331
2332 Checkstyle has been upgraded from 7.6 to 8.4 (see the
2333 `Checkstyle release notes`_ for details), and Sevntu from 1.21.0 to 1.24.2
2334 (note that the latter's group identifier changed from
2335 ``com.github.sevntu.checkstyle`` to ``com.github.sevntu-checkstyle``; you
2336 might need to update your IDE's configuration).
2337
2338 The following Checkstyle rules are enabled; this might require changes in
2339 projects which enforce Checkstyle validation:
2340
2341 * `AvoidHidingCauseExceptionCheck`_
2342 * `FinalClass`_: utility classes must be declared ``final``
2343 * `HiddenField`_: fields must not be shadowed
2344 * `HideUtilityClassConstructor`_: utility classes must hide their constructor
2345
2346 .. _Checkstyle release notes: http://checkstyle.sourceforge.net/releasenotes.html
2347
2348 .. _AvoidHidingCauseExceptionCheck: http://sevntu-checkstyle.github.io/sevntu.checkstyle/apidocs/com/github/sevntu/checkstyle/checks/coding/AvoidHidingCauseExceptionCheck.html
2349 .. _FinalClass: http://checkstyle.sourceforge.net/config_design.html#FinalClass
2350 .. _HiddenField: http://checkstyle.sourceforge.net/config_coding.html#HiddenField
2351 .. _HideUtilityClassConstructor: http://checkstyle.sourceforge.net/config_design.html#HideUtilityClassConstructor
2352
2353 Karaf
2354 ~~~~~
2355
2356 Karaf has been upgraded to 4.1.3. This should be transparent for dependent
2357 projects.
2358
2359 Karaf distributions
2360 ~~~~~~~~~~~~~~~~~~~
2361
2362 * When building a Karaf distribution using ``karaf4-parent``, projects can
2363   specify which archives to build: the ``karaf.archiveZip`` property will
2364   enable ZIP files if true, and ``karaf.archiveTarGz`` will enable
2365   gzip-compressed tarballs if true. By default both are enabled.
2366
2367 * Our Karaf distribution provides Bouncy Castle at startup. Auto-generated
2368   feature descriptors take this into account (they won't embed a Bouncy
2369   Castle dependency).
2370
2371 Feature removals
2372 ~~~~~~~~~~~~~~~~
2373
2374 * The ``odl-triemap-0.2`` feature wrapping
2375   ``com.github.romix:java-concurrent-hash-trie-map`` was rendered obsolete by
2376   YANG Tools' implementation and has been removed.
2377
2378 Feature additions
2379 ~~~~~~~~~~~~~~~~~
2380
2381 * ``odl-javassist-3`` provides Javassist in a feature.
2382
2383 * ``odl-jung-2.1`` provides `JUNG`_ in a feature.
2384
2385 .. _JUNG: http://jung.sourceforge.net/
2386
2387 Upstream version upgrades
2388 ~~~~~~~~~~~~~~~~~~~~~~~~~
2389
2390 The following upstream dependencies have been upgraded:
2391
2392 * Akka 2.4.18 → 2.5.4; release notes:
2393
2394   * `Akka 2.5.0`_
2395   * `Akka 2.5.1`_
2396   * `Akka 2.5.2`_
2397   * `Akka 2.5.3`_
2398   * `Akka 2.5.4`_
2399
2400 * `Awaitility 2 → 3`_
2401
2402 * `Bouncy Castle 1.57 → 1.58`_
2403
2404 * `Commons Codec 1.10 → 1.11`_
2405
2406 * `Commons File Upload 1.3.2 → 1.3.3`_
2407
2408 * `Commons IO 2.5 → 2.6`_
2409
2410 * Eclipse JDT annotations 2.0.0 → 2.1.0
2411
2412 * Felix Dependency Manager 4.3.0 → 4.4.1
2413 * Felix Dependency Manager Shell 4.0.4 → 4.0.6
2414 * Felix Metatype 1.1.2 → 1.1.6
2415
2416 * `Google Truth 0.28 → 0.36`_ (with the Java 8 extensions)
2417
2418 * `Gson 2.7 → 2.8.2`_
2419
2420 * Guava 22 → 23.3 along with the associated feature name change from
2421   ``odl-guava-22`` to ``odl-guava-23`` (dependent packages *must* change their
2422   dependency); release notes:
2423
2424   * `Guava 23`_
2425   * `Guava 23.1`_
2426   * `Guava 23.2`_
2427   * `Guava 23.3`_
2428
2429 * Immutables 2.4.2 → 2.5.6
2430
2431 * Jackson 2.3.2 → 2.8.9
2432
2433 * Jacoco 0.7.7 → 0.7.9; release notes:
2434
2435   * `Jacoco 0.7.8`_
2436   * `Jacoco 0.7.9`_
2437
2438 * Jacoco Listeners 2.4 → 3.8
2439
2440 * `Javassist 3.20.0 → 3.21.0`_
2441
2442 * `Jettison 1.3.7 → 1.3.8`_
2443
2444 * `Jolokia 1.3.6 → 1.3.7`_
2445
2446 * `JSONassert 1.3.0 → 1.5.0`_
2447
2448 * `logback 1.2.2 → 1.2.3`_
2449
2450 * `LMAX Disruptor 3.3.6 → 3.3.7`_
2451
2452 * Netty 4.1.8 → 4.1.16; release notes:
2453
2454   * `Netty 4.1.9`_
2455   * `Netty 4.1.10`_
2456   * `Netty 4.1.11`_
2457   * `Netty 4.1.12`_
2458   * `Netty 4.1.13`_
2459   * `Netty 4.1.14`_
2460   * `Netty 4.1.15`_
2461   * `Netty 4.1.16`_
2462
2463 * `Pax URL 2.5.2 → 2.5.3`_
2464
2465 * Scala 2.11.11 → 2.12.4; release notes:
2466
2467   * `Scala 2.12.0`_
2468   * `Scala 2.12.1`_
2469   * `Scala 2.12.2`_
2470   * `Scala 2.12.3`_
2471   * `Scala 2.12.4`_
2472
2473 * Servlet API 3.0.1 → 3.1.0
2474
2475 * `SLF4J 1.7.21 → 1.7.25`_
2476
2477 * `webcohesion enunciate 2.6.0 → 2.10.1`_
2478
2479 * `Xtend 2.12 → 2.13`_
2480
2481 .. _Akka 2.5.0: http://akka.io/blog/news/2017/04/13/akka-2.5.0-released
2482 .. _Akka 2.5.1: http://akka.io/blog/news/2017/05/02/akka-2.5.1-released
2483 .. _Akka 2.5.2: http://akka.io/blog/news/2017/05/24/akka-2.5.2-released
2484 .. _Akka 2.5.3: http://akka.io/blog/news/2017/06/19/akka-2.5.3-released
2485 .. _Akka 2.5.4: http://akka.io/blog/news/2017/08/10/akka-2.5.4-released
2486
2487 .. _Awaitility 2 → 3: https://github.com/awaitility/awaitility/wiki/ReleaseNotes30
2488
2489 .. _Bouncy Castle 1.57 → 1.58: https://www.bouncycastle.org/releasenotes.html
2490
2491 .. _Commons Codec 1.10 → 1.11: http://www.apache.org/dist/commons/codec/RELEASE-NOTES.txt
2492
2493 .. _Commons File Upload 1.3.2 → 1.3.3: http://www.apache.org/dist/commons/fileupload/RELEASE-NOTES.txt
2494
2495 .. _Commons IO 2.5 → 2.6: http://www.apache.org/dist/commons/io/RELEASE-NOTES.txt
2496
2497 .. _Google Truth 0.28 → 0.36: https://github.com/google/truth/releases
2498
2499 .. _Gson 2.7 → 2.8.2: https://github.com/google/gson/blob/master/CHANGELOG.md
2500
2501 .. _Guava 23: https://github.com/google/guava/wiki/Release23
2502 .. _Guava 23.1: https://github.com/google/guava/releases/tag/v23.1
2503 .. _Guava 23.2: https://github.com/google/guava/releases/tag/v23.2
2504 .. _Guava 23.3: https://github.com/google/guava/releases/tag/v23.3
2505
2506 .. _Jacoco 0.7.8: https://github.com/jacoco/jacoco/releases/tag/v0.7.8
2507 .. _Jacoco 0.7.9: https://github.com/jacoco/jacoco/releases/tag/v0.7.9
2508
2509 .. _Javassist 3.20.0 → 3.21.0: https://github.com/jboss-javassist/javassist/compare/rel_3_20_0_ga...rel_3_21_0_ga
2510
2511 .. _Jettison 1.3.7 → 1.3.8: https://github.com/jettison-json/jettison/compare/jettison-1.3.7...jettison-1.3.8
2512
2513 .. _Jolokia 1.3.6 → 1.3.7: https://github.com/rhuss/jolokia/releases/tag/v1.3.7
2514
2515 .. _JSONassert 1.3.0 → 1.5.0: https://github.com/skyscreamer/JSONassert/releases
2516
2517 .. _logback 1.2.2 → 1.2.3: https://logback.qos.ch/news.html
2518
2519 .. _LMAX Disruptor 3.3.6 → 3.3.7: https://github.com/LMAX-Exchange/disruptor/releases/tag/3.3.7
2520
2521 .. _Netty 4.1.9: http://netty.io/news/2017/03/10/4-0-45-Final-4-1-9-Final.html
2522 .. _Netty 4.1.10: http://netty.io/news/2017/04/30/4-0-46-Final-4-1-10-Final.html
2523 .. _Netty 4.1.11: http://netty.io/news/2017/05/12/4-0-47-Final-4-1-11-Final.html
2524 .. _Netty 4.1.12: http://netty.io/news/2017/06/09/4-0-48-Final-4-1-12-Final.html
2525 .. _Netty 4.1.13: http://netty.io/news/2017/07/06/4-0-49-Final-4-1-13-Final.html
2526 .. _Netty 4.1.14: http://netty.io/news/2017/08/03/4-0-50-Final-4-1-14-Final.html
2527 .. _Netty 4.1.15: http://netty.io/news/2017/08/25/4-0-51-Final-4-1-15-Final.html
2528 .. _Netty 4.1.16: http://netty.io/news/2017/09/25/4-0-52-Final-4-1-16-Final.html
2529
2530 .. _Pax URL 2.5.2 → 2.5.3: https://ops4j1.jira.com/browse/PAXURL-345?jql=project%20%3D%20PAXURL%20AND%20fixVersion%20%3D%202.5.3
2531
2532 .. _Scala 2.12.0: https://github.com/scala/scala/releases/tag/v2.12.0
2533 .. _Scala 2.12.1: https://github.com/scala/scala/releases/tag/v2.12.1
2534 .. _Scala 2.12.2: https://github.com/scala/scala/releases/tag/v2.12.2
2535 .. _Scala 2.12.3: https://github.com/scala/scala/releases/tag/v2.12.3
2536 .. _Scala 2.12.4: https://github.com/scala/scala/releases/tag/v2.12.4
2537
2538 .. _SLF4J 1.7.21 → 1.7.25: https://www.slf4j.org/news.html
2539
2540 .. _webcohesion enunciate 2.6.0 → 2.10.1: https://github.com/stoicflame/enunciate/releases
2541
2542 .. _Xtend 2.12 → 2.13: https://www.eclipse.org/xtend/releasenotes.html
2543
2544 Upstream version additions
2545 ~~~~~~~~~~~~~~~~~~~~~~~~~~
2546
2547 The following upstream dependencies have been added to dependency management:
2548
2549 * Commons Text, ``org.apache.commons:commons-text`` (this will allow downstreams
2550   to migrate from ``commons-lang3``\’s ``WordUtils``, which is deprecated)
2551
2552 Upstream version removals
2553 ~~~~~~~~~~~~~~~~~~~~~~~~~
2554
2555 The following upstream dependencies have been removed from dependency
2556 management (they are obsolete and unused):
2557
2558 * Chameleon MBeans
2559 * Eclipse Link
2560 * Equinox HTTP service bridge
2561 * ``equinoxSDK381`` artifacts
2562 * Coda Hale Metrics, which are mostly unused and should eventually be wrapped
2563   by InfraUtils
2564 * ``com.google.code.findbugs:jsr305`` (which *must not* be used; this is
2565   enforced — ``annotations`` should be used instead)
2566 * Felix File Install and Web Console
2567 * Gemini Web
2568 * Orbit
2569 * ``org.mockito:mockito-all`` (which *must not* be used; this is enforced —
2570   ``mockito-core`` should be used instead)
2571 * Spring Framework
2572 * ``txw2``
2573 * Xerces
2574 * ``xml-apis``
2575
2576 Plugin version upgrades
2577 ~~~~~~~~~~~~~~~~~~~~~~~
2578
2579 The following plugins have been upgraded:
2580
2581 * ``org.apache.servicemix.tooling:depends-maven-plugin`` 1.3.1 → 1.4.0
2582 * ``org.apache.felix:maven-bundle-plugin`` 2.4.0 → 3.3.0
2583 * ``maven-compiler-plugin`` 3.6.1 → 3.7.0
2584 * ``maven-dependency-plugin`` 3.0.1 → 3.0.2
2585 * ``maven-enforcer-plugin`` 1.4.1 → 3.0.0-M1
2586 * ``maven-failsafe-plugin`` 2.18.1 → 2.20.1
2587 * ``maven-javadoc-plugin`` 2.10.4 → 3.0.0-M1
2588 * ``maven-shade-plugin`` 2.4.3 → 3.1.0
2589
2590 New plugins
2591 ~~~~~~~~~~~
2592
2593 * The `Maven Find Duplicates`_ plugin can be enabled by setting the
2594   ``duplicate-finder.skip`` property to ``false``.
2595
2596 * The SpotBugs_ Maven plugin can now be used instead of the FindBugs plugin
2597   (both are available, so no change is required). To use SpotBugs, replace
2598   ``org.codehaus.mojo:findbugs-maven-plugin`` with
2599   ``com.github.spotbugs:spotbugs-maven-plugin``.
2600
2601 .. _Maven Find Duplicates: https://github.com/basepom/duplicate-finder-maven-plugin/
2602
2603 .. _SpotBugs: https://spotbugs.github.io/