1 ========================
2 ODL Parent release notes
3 ========================
8 This version fixes the following issues:
10 * `ODLPARENT-156 <https://jira.opendaylight.org/browse/ODLPARENT-156>`_:
11 ``xtend-maven-plugin``’s dependencies end up pulling in conflicting
12 dependencies. ODL Parent now constrains part of its dependency tree to avoid
15 This version adds ``odl-jackson-2.8`` to ``odlparent-artifacts``.
20 This version fixes the following issues:
22 * `INFRAUTILS-41 <https://jira.opendaylight.org/browse/INFRAUTILS-41>`_:
23 ``jre.properties`` includes ``com.sun.management`` so that it can be
24 enabled if necessary. (This doesn’t add a dependency on
25 ``com.sun.management``, it allows bundles to use it if it is present.)
27 * `ODLPARENT-136 <https://jira.opendaylight.org/browse/ODLPARENT-136>`_:
28 ``SingleFeatureTest`` pulls in ``org.osgi.compendium``.
30 * `ODLPARENT-144 <https://jira.opendaylight.org/browse/ODLPARENT-144>`_:
31 ``org.apache.karaf.scr.management`` is whitelisted so that it no longer
32 affects ``SingleFeatureTest``.
34 * `ODLPARENT-146 <https://jira.opendaylight.org/browse/ODLPARENT-146>`_:
35 null-related FindBugs checks which produce false-positives with Guava 23.6
36 and later are disabled, so that this really is fully backwards-compatible
39 * `ODLPARENT-148 <https://jira.opendaylight.org/browse/ODLPARENT-148>`_:
40 ``SingleFeatureTest`` preserves ``target/SFT/karaf.log``.
42 This version includes the following improvements:
44 * ``custom.properties`` no longer includes OVSDB-specific configuration.
46 * The ``odl-jersey-1`` feature includes the Jersey client.
48 * Redundant bundle dependency declarations in ``SingleFeatureTest`` have been
49 removed (these are declarations which are also present in our base Karaf
52 * Build errors involving invalid feature or bundle URLs now indicate which
55 * Obsolete Log4J overrides have been removed from ``SingleFeatureTest``.
57 When building using JDK 9 or 10, the default settings have been changed as
58 follows to avoid errors or extraneous warnings:
60 * SFT is disabled (it needs Karaf 4.2 or later);
62 * Javadocs are generated as HTML 4;
64 * SpotBugs is disabled on JDK 10 or later;
66 * FindBugs is disabled on JDK 9 or later.
68 The following third-party dependencies have been upgraded:
70 * `EclipseLink Moxy JAXB 2.6.2 → 2.7.1 <https://www.eclipse.org/eclipselink/releases/2.7.php>`_.
72 * `Google Truth 0.36 → 0.40 <https://github.com/google/truth/releases>`_.
74 * `Gson 2.8.2 → 2.8.5 <https://github.com/google/gson/blob/master/CHANGELOG.md>`_.
76 * `Guava 23.6 → 23.6.1 <https://github.com/google/guava/compare/v23.6...v23.6.1>`_.
77 This addresses CVE-2018-10237 (that’s the only change in this release).
79 * `Jacoco Maven plugin 0.8.0 → 0.8.1 <https://github.com/jacoco/jacoco/releases/tag/v0.8.1>`_.
81 * JDT annotations 2.1.0 → 2.1.150.
83 * `Scala 2.12.5 → 2.12.6 <https://github.com/scala/scala/releases/tag/v2.12.6>`_.
85 * `Scala Parser Combinators 1.0.6 → 1.0.7 <https://github.com/scala/scala-parser-combinators/releases/tag/v1.0.7>`_.
87 * `Sevntu 1.24.2 → 1.29.0 <https://sevntu-checkstyle.github.io/sevntu.checkstyle/#1.29.0>`_.
89 * `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>`_.
91 The following Maven plugin has been upgraded:
93 * `Javadoc 3.0.0 → 3.0.1 <https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317529&version=12342283>`_.
98 This version fixes the following issues:
100 * `ODLPARENT-137 <https://jira.opendaylight.org/browse/ODLPARENT-137>`_:
101 restore the OpenDaylight prompt.
103 * `ODLPARENT-146 <https://jira.opendaylight.org/browse/ODLPARENT-146>`_:
104 Guava 23.6 switched from @Nullable to @NullableDecl, which causes false
105 positives in FindBugs’ ``NP_NONNULL_PARAM_VIOLATION`` rule; we’re
106 disabling the rule for now.
111 This version fixes the following issues:
113 * Mycila dependencies are now “compile” scoped rather than “test”; this allows
114 child projects to use Guice with Mycila more easily.
116 * The duplicate finder now ignores ``web.xml`` and BluePrint XML files.
118 This version includes the following improvements:
120 * The ``-Pq`` profile skips Maven Modernizer, in preparation for its future
121 integration (and its use in child projects).
123 * An OWASP profile, ``-Powasp`` is available for vulnerability checking.
125 * A new ``odl-jackson-2.8`` feature provides Jackson 2.8 to child projects.
127 The following third-party dependencies have been added to dependency management:
129 * `ThreeTen-Extra <http://www.threeten.org/threeten-extra/>`_
131 The following third-party dependencies have been upgraded:
133 * Aeron 1.2.5 → 1.7.0; release notes:
135 * `1.3.0 <https://github.com/real-logic/aeron/releases/tag/1.3.0>`_
136 * `1.4.0 <https://github.com/real-logic/aeron/releases/tag/1.4.0>`_
137 * `1.5.0 <https://github.com/real-logic/aeron/releases/tag/1.5.0>`_
138 * `1.5.1 <https://github.com/real-logic/aeron/releases/tag/1.5.1>`_
139 * `1.5.2 <https://github.com/real-logic/aeron/releases/tag/1.5.2>`_
140 * `1.6.0 <https://github.com/real-logic/aeron/releases/tag/1.6.0>`_
141 * `1.7.0 <https://github.com/real-logic/aeron/releases/tag/1.7.0>`_
143 * Agrona 0.9.5 → 0.9.12; release notes:
145 * `0.9.6 <https://github.com/real-logic/Agrona/releases/tag/0.9.6>`_
146 * `0.9.7 <https://github.com/real-logic/Agrona/releases/tag/0.9.7>`_
147 * `0.9.8 <https://github.com/real-logic/Agrona/releases/tag/0.9.8>`_
148 * `0.9.9 <https://github.com/real-logic/Agrona/releases/tag/0.9.9>`_
149 * `0.9.10 <https://github.com/real-logic/Agrona/releases/tag/0.9.10>`_
150 * `0.9.11 <https://github.com/real-logic/Agrona/releases/tag/0.9.11>`_
151 * `0.9.12 <https://github.com/real-logic/Agrona/releases/tag/0.9.12>`_
153 * Akka 2.5.5 → 2.5.11; release notes:
155 * `2.5.6 <https://akka.io/blog/news/2017/09/28/akka-2.5.6-released>`_
156 * `2.5.7 <https://akka.io/blog/news/2017/11/17/akka-2.5.7-released>`_
157 * `2.5.8 <https://akka.io/blog/news/2017/12/08/akka-2.5.8-released>`_
158 * `2.5.9 <https://akka.io/blog/news/2018/01/11/akka-2.5.9-released-2.4.x-end-of-life>`_
159 * `2.5.10 <https://akka.io/blog/news/2018/02/23/akka-2.5.10-released>`_
160 * `2.5.11 <https://akka.io/blog/news/2018/02/28/akka-2.5.11-released>`_
162 * Commons Lang 3 `3.6 → 3.7 <http://www.apache.org/dist/commons/lang/RELEASE-NOTES.txt>`_
164 * Guava 23.3 → 23.6; release notes:
166 * `23.4 <https://github.com/google/guava/releases/tag/v23.4>`_
167 * `23.5 <https://github.com/google/guava/releases/tag/v23.5>`_
168 * `23.6 <https://github.com/google/guava/releases/tag/v23.6>`_
170 * H2 database `1.4.193 → 1.4.196 <http://www.h2database.com/html/changelog.html>`_
172 * Jacoco `0.7.9 → 0.8.0 <https://github.com/jacoco/jacoco/releases/tag/v0.8.0>`_
174 * Javassist `3.21.0 → 3.22.0 <https://github.com/jboss-javassist/javassist/compare/rel_3_21_0_ga...rel_3_22_0_ga>`_
176 * lmax-disruptor 3.3.7 → 3.3.10; release notes:
178 * `3.3.8 <https://github.com/LMAX-Exchange/disruptor/releases/tag/3.3.8>`_
179 * `3.3.9 <https://github.com/LMAX-Exchange/disruptor/releases/tag/3.3.9>`_
180 * `3.3.10 <https://github.com/LMAX-Exchange/disruptor/releases/tag/3.3.10>`_
182 * Netty 4.1.16 → 4.1.22; release notes:
184 * `4.1.17 <http://netty.io/news/2017/11/08/4-0-53-Final-4-1-17-Final.html>`_
185 * `4.1.18 <http://netty.io/news/2017/12/11/4-0-54-Final-4-1-18-Final.html>`_
186 * `4.1.19 <http://netty.io/news/2017/12/18/4-1-19-Final.html>`_
187 * `4.1.20 <http://netty.io/news/2018/01/22/4-0-55-Final-4-1-20-Final.html>`_
188 * `4.1.21 <http://netty.io/news/2018/02/05/4-0-56-Final-4-1-21-Final.html>`_
189 * `4.1.22 <http://netty.io/news/2018/02/21/4-1-22-Final.html>`_
191 * Scala `2.12.4 → 2.12.5 <http://www.scala-lang.org/news/2.12.5>`_
193 * Typesafe Config `0.2.1 → 0.2.2 <https://github.com/typesafehub/config/blob/master/NEWS.md>`_
195 The following Maven plugins have been upgraded:
197 * FindBugs 3.0.4 → 3.0.5
199 * Git commit id 2.2.2 → 2.2.4; release notes:
201 * `2.2.3 <https://github.com/ktoso/maven-git-commit-id-plugin/releases/tag/v2.2.3>`_
202 * `2.2.4 <https://github.com/ktoso/maven-git-commit-id-plugin/releases/tag/v2.2.4>`_
207 This version fixes the following issues:
209 * `ODLPARENT-136`_: ``features-test`` needs ``org.osgi.compendium``.
211 * Jackson dependencies are declared using ``jackson-bom`` to ensure all they
214 * ``find-duplicate-classpath-entries`` is run in the “verify” phase rather than
215 the “validate” phase, which is too early.
217 * The version of Jetty we pull in is now aligned with that declared in Karaf,
218 resolving a number of restart and dependency issues.
220 * Pulling in the ``wrap`` feature unconditionally is no longer necessary, so
221 ``karaf4-parent`` no longer does so.
223 * ``metainf-services`` are declared with scope “provided” to avoid their being
224 included in downstream features (it’s a build-time dependency only).
226 * ``leveldb-api`` is excluded from ``odl-akka-leveldb-0.7``, and ``jsr250-api``
227 from ``enunciate-core-annotations``, to avoid duplicate having classes on the
230 * Since the ``ssh`` feature is excluded from generated features, our Karaf
231 need to enable it at boot in all cases.
233 * ``bundle-test-lib`` is now a bundle.
235 * Since we use static SLF4J loggers, the ``SLF4J_LOGGER_SHOULD_BE_NON_STATIC``
236 rule needs to be disabled in our FindBugs configuration (this allows
237 downstream projects to enable ``findbugs-slf4j`` without having to deal with
238 all the resulting false-positives).
240 * ``org.apache.karaf.scr.management`` is white-listed in SFT to avoid failures
241 apparently related to that component (which we don’t care about).
243 .. _ODLPARENT-136: https://jira.opendaylight.org/browse/ODLPARENT-136
245 This version upgrades the following third-party dependencies:
247 * `Antlr 4.7 → 4.7.1`_
249 * `BouncyCastle 1.58 → 1.59`_
251 * Jersey 1.17 → 1.19.4 (additionally available as the ``odl-jersey-1`` feature)
253 * Jolokia 1.3.7 → 1.5.0
255 * Karaf 4.1.3 → 4.1.5; release notes:
260 .. _Antlr 4.7 → 4.7.1: https://github.com/antlr/antlr4/releases/tag/4.7.1
261 .. _BouncyCastle 1.58 → 1.59: https://www.bouncycastle.org/releasenotes.html
262 .. _Karaf 4.1.4: https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12341702
263 .. _Karaf 4.1.5: https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12342294
268 This version fixes the following issues:
270 * SingleFeatureTest uses the configured local Maven repository for Pax Exam.
272 * JavaDoc links are disabled for now to `speed up builds`_. A new
273 ``javadoc-links`` profile enables the links.
275 * Conditional feature dependencies are processed, ensuring our
276 `distribution is complete`_.
278 * Startup features are `adjusted for Karaf 4.1`_, avoiding unnecessary
281 * The ``hiddenField`` Checkstyle check is disabled for abstract methods.
283 * The default logging configuration uses Log4J2, which is the new default in
286 .. _speed up builds: https://jira.opendaylight.org/browse/ODLPARENT-121
287 .. _distribution is complete: https://jira.opendaylight.org/browse/ODLPARENT-133
288 .. _adjusted for Karaf 4.1: https://jira.opendaylight.org/browse/ODLPARENT-134
290 This version upgrades the following dependencies or plugins:
292 * ``maven-enforcer-plugin`` 1.4.1 → 3.0.0-M1
294 * ``maven-javadoc-plugin`` 3.0.0-M1 → 3.0.0
299 This version fixes the following issues:
301 * Karaf pulls in an invalid Hibernate feature repository, breaking downstream
302 dependencies pulling in the “war” feature. ``populate-local-repo`` corrects
303 the repository dependency.
312 Build now show compiler warnings and deprecation warnings. This doesn't affect
313 the result or require any changes currently, it just makes the issues more
319 Checkstyle has been upgraded from 7.6 to 8.4 (see the
320 `Checkstyle release notes`_ for details), and Sevntu from 1.21.0 to 1.24.2
321 (note that the latter's group identifier changed from
322 ``com.github.sevntu.checkstyle`` to ``com.github.sevntu-checkstyle``; you
323 might need to update your IDE's configuration).
325 The following Checkstyle rules are enabled; this might require changes in
326 projects which enforce Checkstyle validation:
328 * `AvoidHidingCauseExceptionCheck`_
329 * `FinalClass`_: utility classes must be declared ``final``
330 * `HiddenField`_: fields must not be shadowed
331 * `HideUtilityClassConstructor`_: utility classes must hide their constructor
333 .. _Checkstyle release notes: http://checkstyle.sourceforge.net/releasenotes.html
335 .. _AvoidHidingCauseExceptionCheck: http://sevntu-checkstyle.github.io/sevntu.checkstyle/apidocs/com/github/sevntu/checkstyle/checks/coding/AvoidHidingCauseExceptionCheck.html
336 .. _FinalClass: http://checkstyle.sourceforge.net/config_design.html#FinalClass
337 .. _HiddenField: http://checkstyle.sourceforge.net/config_coding.html#HiddenField
338 .. _HideUtilityClassConstructor: http://checkstyle.sourceforge.net/config_design.html#HideUtilityClassConstructor
343 Karaf has been upgraded to 4.1.3. This should be transparent for dependent
349 * When building a Karaf distribution using ``karaf4-parent``, projects can
350 specify which archives to build: the ``karaf.archiveZip`` property will
351 enable ZIP files if true, and ``karaf.archiveTarGz`` will enable
352 gzip-compressed tarballs if true. By default both are enabled.
354 * Our Karaf distribution provides Bouncy Castle at startup. Auto-generated
355 feature descriptors take this into account (they won't embed a Bouncy
361 * The ``odl-triemap-0.2`` feature wrapping
362 ``com.github.romix:java-concurrent-hash-trie-map`` was rendered obsolete by
363 YANG Tools' implementation and has been removed.
368 * ``odl-javassist-3`` provides Javassist in a feature.
370 * ``odl-jung-2.1`` provides `JUNG`_ in a feature.
372 .. _JUNG: http://jung.sourceforge.net/
374 Upstream version upgrades
375 ~~~~~~~~~~~~~~~~~~~~~~~~~
377 The following upstream dependencies have been upgraded:
379 * Akka 2.4.18 → 2.5.4; release notes:
387 * `Awaitility 2 → 3`_
389 * `Bouncy Castle 1.57 → 1.58`_
391 * `Commons Codec 1.10 → 1.11`_
393 * `Commons File Upload 1.3.2 → 1.3.3`_
395 * `Commons IO 2.5 → 2.6`_
397 * Eclipse JDT annotations 2.0.0 → 2.1.0
399 * Felix Dependency Manager 4.3.0 → 4.4.1
400 * Felix Dependency Manager Shell 4.0.4 → 4.0.6
401 * Felix Metatype 1.1.2 → 1.1.6
403 * `Google Truth 0.28 → 0.36`_ (with the Java 8 extensions)
405 * `Gson 2.7 → 2.8.2`_
407 * Guava 22 → 23.3 along with the associated feature name change from
408 ``odl-guava-22`` to ``odl-guava-23`` (dependent packages *must* change their
409 dependency); release notes:
416 * Immutables 2.4.2 → 2.5.6
418 * Jackson 2.3.2 → 2.8.9
420 * Jacoco 0.7.7 → 0.7.9; release notes:
425 * Jacoco Listeners 2.4 → 3.8
427 * `Javassist 3.20.0 → 3.21.0`_
429 * `Jettison 1.3.7 → 1.3.8`_
431 * `Jolokia 1.3.6 → 1.3.7`_
433 * `JSONassert 1.3.0 → 1.5.0`_
435 * `logback 1.2.2 → 1.2.3`_
437 * `LMAX Disruptor 3.3.6 → 3.3.7`_
439 * Netty 4.1.8 → 4.1.16; release notes:
450 * `Pax URL 2.5.2 → 2.5.3`_
452 * Scala 2.11.11 → 2.12.4; release notes:
460 * Servlet API 3.0.1 → 3.1.0
462 * `SLF4J 1.7.21 → 1.7.25`_
464 * `webcohesion enunciate 2.6.0 → 2.10.1`_
466 * `Xtend 2.12 → 2.13`_
468 .. _Akka 2.5.0: http://akka.io/blog/news/2017/04/13/akka-2.5.0-released
469 .. _Akka 2.5.1: http://akka.io/blog/news/2017/05/02/akka-2.5.1-released
470 .. _Akka 2.5.2: http://akka.io/blog/news/2017/05/24/akka-2.5.2-released
471 .. _Akka 2.5.3: http://akka.io/blog/news/2017/06/19/akka-2.5.3-released
472 .. _Akka 2.5.4: http://akka.io/blog/news/2017/08/10/akka-2.5.4-released
474 .. _Awaitility 2 → 3: https://github.com/awaitility/awaitility/wiki/ReleaseNotes30
476 .. _Bouncy Castle 1.57 → 1.58: https://www.bouncycastle.org/releasenotes.html
478 .. _Commons Codec 1.10 → 1.11: http://www.apache.org/dist/commons/codec/RELEASE-NOTES.txt
480 .. _Commons File Upload 1.3.2 → 1.3.3: http://www.apache.org/dist/commons/fileupload/RELEASE-NOTES.txt
482 .. _Commons IO 2.5 → 2.6: http://www.apache.org/dist/commons/io/RELEASE-NOTES.txt
484 .. _Google Truth 0.28 → 0.36: https://github.com/google/truth/releases
486 .. _Gson 2.7 → 2.8.2: https://github.com/google/gson/blob/master/CHANGELOG.md
488 .. _Guava 23: https://github.com/google/guava/wiki/Release23
489 .. _Guava 23.1: https://github.com/google/guava/releases/tag/v23.1
490 .. _Guava 23.2: https://github.com/google/guava/releases/tag/v23.2
491 .. _Guava 23.3: https://github.com/google/guava/releases/tag/v23.3
493 .. _Jacoco 0.7.8: https://github.com/jacoco/jacoco/releases/tag/v0.7.8
494 .. _Jacoco 0.7.9: https://github.com/jacoco/jacoco/releases/tag/v0.7.9
496 .. _Javassist 3.20.0 → 3.21.0: https://github.com/jboss-javassist/javassist/compare/rel_3_20_0_ga...rel_3_21_0_ga
498 .. _Jettison 1.3.7 → 1.3.8: https://github.com/jettison-json/jettison/compare/jettison-1.3.7...jettison-1.3.8
500 .. _Jolokia 1.3.6 → 1.3.7: https://github.com/rhuss/jolokia/releases/tag/v1.3.7
502 .. _JSONassert 1.3.0 → 1.5.0: https://github.com/skyscreamer/JSONassert/releases
504 .. _logback 1.2.2 → 1.2.3: https://logback.qos.ch/news.html
506 .. _LMAX Disruptor 3.3.6 → 3.3.7: https://github.com/LMAX-Exchange/disruptor/releases/tag/3.3.7
508 .. _Netty 4.1.9: http://netty.io/news/2017/03/10/4-0-45-Final-4-1-9-Final.html
509 .. _Netty 4.1.10: http://netty.io/news/2017/04/30/4-0-46-Final-4-1-10-Final.html
510 .. _Netty 4.1.11: http://netty.io/news/2017/05/12/4-0-47-Final-4-1-11-Final.html
511 .. _Netty 4.1.12: http://netty.io/news/2017/06/09/4-0-48-Final-4-1-12-Final.html
512 .. _Netty 4.1.13: http://netty.io/news/2017/07/06/4-0-49-Final-4-1-13-Final.html
513 .. _Netty 4.1.14: http://netty.io/news/2017/08/03/4-0-50-Final-4-1-14-Final.html
514 .. _Netty 4.1.15: http://netty.io/news/2017/08/25/4-0-51-Final-4-1-15-Final.html
515 .. _Netty 4.1.16: http://netty.io/news/2017/09/25/4-0-52-Final-4-1-16-Final.html
517 .. _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
519 .. _Scala 2.12.0: https://github.com/scala/scala/releases/tag/v2.12.0
520 .. _Scala 2.12.1: https://github.com/scala/scala/releases/tag/v2.12.1
521 .. _Scala 2.12.2: https://github.com/scala/scala/releases/tag/v2.12.2
522 .. _Scala 2.12.3: https://github.com/scala/scala/releases/tag/v2.12.3
523 .. _Scala 2.12.4: https://github.com/scala/scala/releases/tag/v2.12.4
525 .. _SLF4J 1.7.21 → 1.7.25: https://www.slf4j.org/news.html
527 .. _webcohesion enunciate 2.6.0 → 2.10.1: https://github.com/stoicflame/enunciate/releases
529 .. _Xtend 2.12 → 2.13: https://www.eclipse.org/xtend/releasenotes.html
531 Upstream version additions
532 ~~~~~~~~~~~~~~~~~~~~~~~~~~
534 The following upstream dependencies have been added to dependency management:
536 * Commons Text, ``org.apache.commons:commons-text`` (this will allow downstreams
537 to migrate from ``commons-lang3``\’s ``WordUtils``, which is deprecated)
539 Upstream version removals
540 ~~~~~~~~~~~~~~~~~~~~~~~~~
542 The following upstream dependencies have been removed from dependency
543 management (they are obsolete and unused):
547 * Equinox HTTP service bridge
548 * ``equinoxSDK381`` artifacts
549 * Coda Hale Metrics, which are mostly unused and should eventually be wrapped
551 * ``com.google.code.findbugs:jsr305`` (which *must not* be used; this is
552 enforced — ``annotations`` should be used instead)
553 * Felix File Install and Web Console
556 * ``org.mockito:mockito-all`` (which *must not* be used; this is enforced —
557 ``mockito-core`` should be used instead)
563 Plugin version upgrades
564 ~~~~~~~~~~~~~~~~~~~~~~~
566 The following plugins have been upgraded:
568 * ``org.apache.servicemix.tooling:depends-maven-plugin`` 1.3.1 → 1.4.0
569 * ``org.apache.felix:maven-bundle-plugin`` 2.4.0 → 3.3.0
570 * ``maven-compiler-plugin`` 3.6.1 → 3.7.0
571 * ``maven-dependency-plugin`` 3.0.1 → 3.0.2
572 * ``maven-enforcer-plugin`` 1.4.1 → 3.0.0-M1
573 * ``maven-failsafe-plugin`` 2.18.1 → 2.20.1
574 * ``maven-javadoc-plugin`` 2.10.4 → 3.0.0-M1
575 * ``maven-shade-plugin`` 2.4.3 → 3.1.0
580 * The `Maven Find Duplicates`_ plugin can be enabled by setting the
581 ``duplicate-finder.skip`` property to ``false``.
583 * The SpotBugs_ Maven plugin can now be used instead of the FindBugs plugin
584 (both are available, so no change is required). To use SpotBugs, replace
585 ``org.codehaus.mojo:findbugs-maven-plugin`` with
586 ``com.github.spotbugs:spotbugs-maven-plugin``.
588 .. _Maven Find Duplicates: https://github.com/basepom/duplicate-finder-maven-plugin/
590 .. _SpotBugs: https://spotbugs.github.io/