<parent>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>10.0.0-SNAPSHOT</version>
+ <version>11.0.2-SNAPSHOT</version>
<relativePath>../odlparent-lite</relativePath>
</parent>
<nexus.repository.snapshot>opendaylight.snapshot</nexus.repository.snapshot>
<!-- Used in controller, genius, infrautils, netconf, netvirt, ovsdb, serviceutils -->
- <karaf.version>4.3.6</karaf.version>
+ <karaf.version>4.4.1</karaf.version>
<!-- Supporting Libraries -->
<!-- Only used internally -->
- <bouncycastle.version>1.70</bouncycastle.version>
+ <bouncycastle.version>1.72</bouncycastle.version>
<!-- JaCoCo configuration, by default tied to Sonar configuration, but can be overridden separately
to allow projects to report Sonar values from the entire project. -->
<!-- Default Sonar configuration -->
<sonar.java.source>${maven.compiler.release}</sonar.java.source>
- <sonar-jacoco-listeners.version>3.8</sonar-jacoco-listeners.version>
+ <sonar-jacoco-listeners.version>5.14.0.18788</sonar-jacoco-listeners.version>
<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
<!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
<!-- Target release for modernizer-maven-plugin. It defaults to '1.11',
meaning Java 11, but can be set to any version in pom.xml of project
which desires to override it (such as '1.12' for Java 12). -->
- <odlparent.modernizer.target>1.11</odlparent.modernizer.target>
+ <odlparent.modernizer.target>1.17</odlparent.modernizer.target>
<!-- Opt-out from spotbugs-maven-plugin failing the build on violations. Defaults
to true. Set to 'false' in pom.xml of project which desires to not enforce
<dependency>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>odlparent-artifacts</artifactId>
- <version>10.0.0-SNAPSHOT</version>
+ <version>11.0.2-SNAPSHOT</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<groupId>com.puppycrawl.tools</groupId>
<artifactId>checkstyle</artifactId>
<!-- This should match the plugin management on maven-checkstyle-plugin below -->
- <version>9.2.1</version>
+ <version>10.3.4</version>
</dependency>
<!-- Testing Dependencies -->
- <!-- JUnit, Hamcrest, Mockito and PowerMock need to be kept in sync -->
+ <!-- JUnit, Hamcrest and Mockito need to be kept in sync -->
<dependency>
<groupId>org.junit</groupId>
<artifactId>junit-bom</artifactId>
- <version>5.8.2</version>
+ <version>5.9.1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<scope>test</scope>
</dependency>
<dependency>
- <groupId>org.skyscreamer</groupId>
- <artifactId>jsonassert</artifactId>
- <version>1.5.0</version>
- <scope>test</scope>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-core</artifactId>
+ <version>4.8.1</version>
+ <scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
- <artifactId>mockito-core</artifactId>
- <version>4.2.0</version>
+ <artifactId>mockito-junit-jupiter</artifactId>
+ <version>4.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-inline</artifactId>
- <version>4.2.0</version>
+ <version>4.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<version>2.2</version>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>com.google.truth</groupId>
- <artifactId>truth</artifactId>
- <!-- When bumping this version, remember to also change the JavaDoc link in odlparent-lite -->
- <version>1.1.3</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>com.google.truth.extensions</groupId>
- <artifactId>truth-java8-extension</artifactId>
- <version>1.1.3</version>
- <scope>test</scope>
- </dependency>
<dependency>
<groupId>org.awaitility</groupId>
<artifactId>awaitility</artifactId>
<artifactId>value</artifactId>
<classifier>annotations</classifier>
<!-- Keep this version in sync with annotationProcessorPaths declaration below -->
- <version>2.8.8</version>
+ <version>2.9.2</version>
<!-- Must be provided; scope=test here breaks APT in Eclipse :( -->
<scope>provided</scope>
</dependency>
<groupId>org.kohsuke.metainf-services</groupId>
<artifactId>metainf-services</artifactId>
<!-- Keep this version in sync with annotationProcessorPaths declaration below -->
- <version>1.8</version>
+ <version>1.9</version>
<optional>true</optional>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
- <version>1.2.10</version>
+ <version>1.2.11</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.2.10</version>
+ <version>1.2.11</version>
</dependency>
<!-- log4j2 -->
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<!-- When bumping this version, remember to also change the JavaDoc link in odlparent-lite and docs -->
- <version>31.0.1-jre</version>
+ <version>31.1-jre</version>
<exclusions>
<exclusion>
<!-- Do not leak JSR305 onto the classpath by default -->
<groupId>com.google.guava</groupId>
<artifactId>guava-testlib</artifactId>
<!-- When bumping this version, remember to also change the JavaDoc link in odlparent-lite and docs -->
- <version>31.0.1-jre</version>
+ <version>31.1-jre</version>
<scope>test</scope>
<exclusions>
<exclusion>
<dependency>
<groupId>com.google.errorprone</groupId>
<artifactId>error_prone_annotations</artifactId>
- <version>2.7.1</version>
+ <version>2.15.0</version>
</dependency>
<dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-text</artifactId>
- <version>1.9</version>
+ <version>1.10.0</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<!-- When bumping this version, remember to also change the JavaDoc link in odlparent-lite and docs -->
<version>2.6</version>
</dependency>
- <dependency>
- <groupId>commons-codec</groupId>
- <artifactId>commons-codec</artifactId>
- <version>1.15</version>
- </dependency>
+
<!-- Jersey for JAXRS -->
<dependency>
- <groupId>javax.ws.rs</groupId>
- <artifactId>javax.ws.rs-api</artifactId>
- <version>2.1.1</version>
+ <groupId>jakarta.ws.rs</groupId>
+ <artifactId>jakarta.ws.rs-api</artifactId>
+ <version>2.1.6</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey</groupId>
<artifactId>jersey-bom</artifactId>
- <version>2.27</version>
+ <version>2.37</version>
<type>pom</type>
<scope>import</scope>
</dependency>
- <dependency>
- <groupId>jakarta.activation</groupId>
- <artifactId>jakarta.activation-api</artifactId>
- <version>1.2.2</version>
- </dependency>
-
- <dependency>
- <groupId>javax.annotation</groupId>
- <artifactId>javax.annotation-api</artifactId>
- <version>1.3.2</version>
- <optional>true</optional>
- </dependency>
<dependency>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
</dependency>
<!-- These three need to be consistent:
- jackson-2.12.6 needs woodstox-6.2.4+
+ jackson-2.13.4 needs woodstox-6.3.1+
woodstox-5.3+ needs stax2-api-4.2.x
-->
<dependency>
<dependency>
<groupId>com.fasterxml.woodstox</groupId>
<artifactId>woodstox-core</artifactId>
- <version>6.2.7</version>
+ <version>6.3.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson</groupId>
<artifactId>jackson-bom</artifactId>
- <version>2.12.6</version>
+ <version>2.13.4</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-annotations</artifactId>
- <version>3.1.12</version>
+ <version>4.7.2</version>
<scope>provided</scope>
<!-- Contains retention=RUNTIME annotations, which are not really needed -->
<optional>true</optional>
<dependency>
<groupId>org.eclipse.jdt</groupId>
<artifactId>org.eclipse.jdt.annotation</artifactId>
- <version>2.2.600</version>
+ <version>2.2.700</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
- <version>2.8.9</version>
- </dependency>
- <dependency>
- <groupId>commons-fileupload</groupId>
- <artifactId>commons-fileupload</artifactId>
- <version>1.4</version>
+ <version>2.9.1</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.11.0</version>
</dependency>
- <dependency>
- <groupId>commons-net</groupId>
- <artifactId>commons-net</artifactId>
- <version>3.8.0</version>
- </dependency>
<!-- Netty -->
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-bom</artifactId>
<!-- When bumping this version, remember to also change the JavaDoc link in odlparent-lite -->
- <version>4.1.73.Final</version>
+ <version>4.1.76.Final</version>
<type>pom</type>
<scope>import</scope>
</dependency>
- <dependency>
- <groupId>javax.ws.rs</groupId>
- <artifactId>jsr311-api</artifactId>
- <version>1.1.1</version>
- </dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
- <artifactId>bcpkix-jdk15on</artifactId>
+ <artifactId>bcpkix-jdk18on</artifactId>
<version>${bouncycastle.version}</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
- <artifactId>bcprov-jdk15on</artifactId>
+ <artifactId>bcprov-jdk18on</artifactId>
<version>${bouncycastle.version}</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
- <artifactId>bcprov-ext-jdk15on</artifactId>
+ <artifactId>bcprov-ext-jdk18on</artifactId>
<version>${bouncycastle.version}</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
- <artifactId>bcutil-jdk15on</artifactId>
+ <artifactId>bcutil-jdk18on</artifactId>
<version>${bouncycastle.version}</version>
</dependency>
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
- <version>3.28.0-GA</version>
+ <version>3.29.2-GA</version>
</dependency>
<dependency>
<groupId>org.jboss.spec.javax.transaction</groupId>
<version>1.7.1</version>
</dependency>
- <!--
- OSGi Release 7 artifacts. These come in two forms:
- - osgi.core, osgi.cmpn and osgi.annotation, which are legacy uber-bundles
- - fine-grained artifacts, which are the preferred way going forward, especially
- once we get to Release 8.
- The definitions here are sourced from https://github.com/osgi/osgi/blob/r7-cmpn-spec-final/cnf/central.mvn
- and the corresponding layout.bnd files.
- -->
- <!-- osgi.core content, defined in https://github.com/osgi/osgi/blob/r7-cmpn-spec-final/osgi.core/layout.bnd -->
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.dto</artifactId>
- <version>1.1.1</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.resource</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.framework</artifactId>
- <version>1.9.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.permissionadmin</artifactId>
- <version>1.2.1</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.condpermadmin</artifactId>
- <version>1.1.1</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.packageadmin</artifactId>
- <version>1.2.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.startlevel</artifactId>
- <version>1.1.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.resolver</artifactId>
- <version>1.1.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.url</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.util.tracker</artifactId>
- <version>1.5.2</version>
- <scope>provided</scope>
- </dependency>
-
- <!-- osgi.annotation content, defined in https://github.com/osgi/osgi/blob/r7-cmpn-spec-final/osgi.annotation/layout.bnd -->
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.annotation.versioning</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
+ <!-- OSGi Release 8 artifacts we support, augmenting Karaf's BOM -->
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.annotation.bundle</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
-
- <!-- osg.cmpn content, defined in https://github.com/osgi/osgi/blob/r7-cmpn-spec-final/osgi.cmpn/layout.bnd -->
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.application</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.namespace.contract</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.namespace.extender</artifactId>
- <version>1.0.1</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.namespace.implementation</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.namespace.service</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.namespace.unresolvable</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.async</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.application</artifactId>
<version>1.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.blueprint</artifactId>
- <version>1.0.2</version>
- <scope>provided</scope>
- </dependency>
- <!-- This is not published until R8>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.cdi</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency -->
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.clusterinfo</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.cm</artifactId>
- <version>1.6.0</version>
+ <artifactId>org.osgi.annotation.versioning</artifactId>
+ <version>1.1.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.component</artifactId>
- <version>1.4.0</version>
+ <artifactId>org.osgi.framework</artifactId>
+ <version>1.10.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.component.annotations</artifactId>
- <version>1.4.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.configurator</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.coordinator</artifactId>
- <version>1.0.2</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.deploymentadmin</artifactId>
- <version>1.1.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.device</artifactId>
- <version>1.1.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.dmt</artifactId>
- <version>2.0.2</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.event</artifactId>
- <version>1.4.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.http</artifactId>
- <version>1.2.1</version>
+ <version>1.5.0</version>
<scope>provided</scope>
+ <exclusions>
+ <!-- Causes class path duplicates -->
+ <exclusion>
+ <groupId>org.osgi</groupId>
+ <artifactId>osgi.annotation</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.http.whiteboard</artifactId>
- <version>1.1.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.io</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.jaxrs</artifactId>
- <version>1.0.0</version>
+ <version>1.1.1</version>
<scope>provided</scope>
+ <exclusions>
+ <!-- Causes class path duplicates -->
+ <exclusion>
+ <groupId>org.osgi</groupId>
+ <artifactId>osgi.annotation</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.jdbc</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.jndi</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.jpa</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.log</artifactId>
- <version>1.4.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.metatype</artifactId>
- <version>1.4.0</version>
+ <version>1.0.1</version>
<scope>provided</scope>
+ <exclusions>
+ <!-- Causes class path duplicates -->
+ <exclusion>
+ <groupId>org.osgi</groupId>
+ <artifactId>osgi.annotation</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.service.metatype.annotations</artifactId>
- <version>1.4.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.monitor</artifactId>
- <version>1.0.0</version>
+ <version>1.4.1</version>
<scope>provided</scope>
+ <exclusions>
+ <!-- Causes class path duplicates -->
+ <exclusion>
+ <groupId>org.osgi</groupId>
+ <artifactId>osgi.annotation</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.prefs</artifactId>
+ <artifactId>org.osgi.service.resolver</artifactId>
<version>1.1.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.provisioning</artifactId>
- <version>1.2.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.remoteserviceadmin</artifactId>
- <version>1.1.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.repository</artifactId>
- <version>1.1.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.rest</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.serviceloader</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.subsystem</artifactId>
- <version>1.1.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.transaction.control</artifactId>
- <version>1.0.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.upnp</artifactId>
- <version>1.2.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.useradmin</artifactId>
- <version>1.1.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.service.wireadmin</artifactId>
- <version>1.0.1</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.util.converter</artifactId>
- <version>1.0.1</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.util.function</artifactId>
- <version>1.2.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.util.measurement</artifactId>
- <version>1.0.2</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.util.position</artifactId>
- <version>1.0.1</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.util.promise</artifactId>
- <version>1.2.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.util.pushstream</artifactId>
+ <artifactId>org.osgi.service.url</artifactId>
<version>1.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
- <artifactId>org.osgi.util.xml</artifactId>
- <version>1.0.1</version>
+ <artifactId>org.osgi.util.tracker</artifactId>
+ <version>1.5.3</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.ops4j.pax.url</groupId>
<artifactId>pax-url-link</artifactId>
- <version>2.6.10</version>
+ <version>2.6.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.ops4j.pax.url</groupId>
<artifactId>pax-url-aether</artifactId>
- <version>2.6.10</version>
+ <version>2.6.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.ops4j.pax.url</groupId>
<artifactId>pax-url-wrap</artifactId>
- <version>2.6.10</version>
- </dependency>
-
- <dependency>
- <groupId>org.springframework.osgi</groupId>
- <artifactId>spring-osgi-mock</artifactId>
- <version>1.2.1</version>
- <scope>test</scope>
+ <version>2.6.11</version>
</dependency>
<dependency>
<groupId>org.xmlunit</groupId>
<artifactId>xmlunit-core</artifactId>
- <version>2.8.4</version>
+ <version>2.9.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.xmlunit</groupId>
<artifactId>xmlunit-assertj</artifactId>
- <version>2.8.4</version>
+ <version>2.9.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.xmlunit</groupId>
<artifactId>xmlunit-assertj3</artifactId>
- <version>2.8.4</version>
+ <version>2.9.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.xmlunit</groupId>
<artifactId>xmlunit-matchers</artifactId>
- <version>2.8.4</version>
+ <version>2.9.0</version>
<scope>test</scope>
</dependency>
<!-- FIXME: remove this once we have migrated over -->
<dependency>
<groupId>org.xmlunit</groupId>
<artifactId>xmlunit-legacy</artifactId>
- <version>2.8.4</version>
+ <version>2.9.0</version>
<scope>test</scope>
</dependency>
<groupId>org.gaul</groupId>
<artifactId>modernizer-maven-annotations</artifactId>
<!-- This should match the plugin version below -->
- <version>2.3.0</version>
+ <version>2.4.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-bom</artifactId>
- <version>9.4.43.v20210629</version>
+ <version>9.4.48.v20220622</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<optional>true</optional>
</dependency>
- <!-- jung, a graph library -->
- <dependency>
- <groupId>net.sf.jung</groupId>
- <artifactId>jung-api</artifactId>
- <version>2.1.1</version>
- </dependency>
- <dependency>
- <groupId>net.sf.jung</groupId>
- <artifactId>jung-algorithms</artifactId>
- <version>2.1.1</version>
- </dependency>
+ <!-- Argparse4j, for parsing command-line arguments in standalone executables -->
<dependency>
- <groupId>net.sf.jung</groupId>
- <artifactId>jung-graph-impl</artifactId>
- <version>2.1.1</version>
+ <groupId>net.sourceforge.argparse4j</groupId>
+ <artifactId>argparse4j</artifactId>
+ <version>0.9.0</version>
</dependency>
<!-- ThreeTen-Extra, date/time complements -->
<dependency>
<groupId>org.threeten</groupId>
<artifactId>threeten-extra</artifactId>
- <version>1.7.0</version>
+ <version>1.7.1</version>
</dependency>
<!-- When updating this version, consider antl4-maven-plugin below -->
<dependency>
<groupId>io.dropwizard.metrics</groupId>
<artifactId>metrics-bom</artifactId>
- <version>4.2.7</version>
+ <version>4.2.12</version>
<scope>import</scope>
<type>pom</type>
</dependency>
+ <!-- Sonar/JaCoCo integration -->
+ <dependency>
+ <groupId>org.sonarsource.java</groupId>
+ <artifactId>sonar-jacoco-listeners</artifactId>
+ <version>${sonar-jacoco-listeners.version}</version>
+ <scope>test</scope>
+ </dependency>
</dependencies>
</dependencyManagement>
<artifactId>hamcrest-library</artifactId>
<scope>test</scope>
</dependency>
+
+ <!-- JUnit 5 integration -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.junit.jupiter</groupId>
+ <artifactId>junit-jupiter-engine</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-junit-jupiter</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <!-- JUnit 4 integration -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
- <artifactId>junit-jupiter-engine</artifactId>
+ <artifactId>junit-jupiter-migrationsupport</artifactId>
<scope>test</scope>
</dependency>
<dependency>
We do not need to specify the groupId. -->
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
- <version>3.1.2</version>
+ <version>3.2.0</version>
<dependencies>
<dependency>
<groupId>com.puppycrawl.tools</groupId>
<artifactId>checkstyle</artifactId>
<!-- This should match the dependency management on com.puppycrawl.tools:checkstyle above -->
- <version>9.2.1</version>
+ <version>10.3.4</version>
</dependency>
<dependency>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>checkstyle</artifactId>
- <version>10.0.0-SNAPSHOT</version>
+ <version>11.0.2-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.github.sevntu-checkstyle</groupId>
<artifactId>sevntu-checks</artifactId>
- <version>1.41.0</version>
+ <version>1.42.0</version>
</dependency>
</dependencies>
<configuration>
<arg>-Xlint:all</arg>
<!-- Disable 'No processor claimed any of these annotations' -->
<arg>-Xlint:-processing</arg>
+ <!-- Disable 'declares no explicit constructors, thereby exposing a default constructor'
+ because it causes a lot of warnings in downstreams. -->
+ <arg>-Xlint:-missing-explicit-ctor</arg>
</compilerArgs>
<annotationProcessorPaths>
<dependency>
<groupId>org.immutables</groupId>
<artifactId>value</artifactId>
<!-- Keep this version in sync with dependency declaration above -->
- <version>2.8.8</version>
+ <version>2.9.2</version>
</dependency>
<dependency>
<groupId>org.kohsuke.metainf-services</groupId>
<artifactId>metainf-services</artifactId>
<!-- Keep this version in sync with dependency declaration above -->
- <version>1.8</version>
+ <version>1.9</version>
</dependency>
</annotationProcessorPaths>
</configuration>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
- <version>2.22.2</version>
+ <version>3.0.0-M7</version>
</plugin>
<plugin>
<artifactId>maven-invoker-plugin</artifactId>
<artifactItem>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>odl-license</artifactId>
- <version>10.0.0-SNAPSHOT</version>
+ <version>11.0.2-SNAPSHOT</version>
<type>license</type>
<outputDirectory>${project.build.outputDirectory}</outputDirectory>
<destFileName>LICENSE</destFileName>
</plugin>
<plugin>
<artifactId>maven-shade-plugin</artifactId>
- <version>3.2.4</version>
+ <version>3.3.0</version>
</plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
- <version>2.22.2</version>
+ <version>3.0.0-M7</version>
<configuration>
<redirectTestOutputToFile>${maven.test.redirectTestOutputToFile}</redirectTestOutputToFile>
<trimStackTrace>false</trimStackTrace>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
- <version>5.1.4</version>
+ <version>5.1.8</version>
<extensions>true</extensions>
<configuration>
<instructions>
<plugin>
<groupId>org.gaul</groupId>
<artifactId>modernizer-maven-plugin</artifactId>
- <version>2.3.0</version>
+ <version>2.4.0</version>
<configuration>
<javaVersion>${odlparent.modernizer.target}</javaVersion>
<failOnViolations>${odlparent.modernizer.enforce}</failOnViolations>
different behavior, hence we do NOT want to blindly migrate. Examples
include:
- - ImmutableCollection et al. are not just implementation details, they
- form an API contract
- - ImmutableMap/ImmutableSet retain iteration order, whereas their
- Map.of()/Set.of() counterparts have unstable iteration order (by design)
- Iterables, which we are widely use for efficient discovery of when
the Iterable is actually a Collection
-->
- <exclusionPattern>com/google/common/collect/Immutable.*</exclusionPattern>
<exclusionPattern>com/google/common/collect/Iterables.*</exclusionPattern>
</exclusionPatterns>
</configuration>
<plugin>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
- <version>3.1.12.2</version>
+ <version>4.7.2.0</version>
<dependencies>
<dependency>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs</artifactId>
- <version>3.1.12</version>
+ <version>4.7.2</version>
</dependency>
<dependency>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>spotbugs</artifactId>
- <version>10.0.0-SNAPSHOT</version>
+ <version>11.0.2-SNAPSHOT</version>
+ </dependency>
+
+ <!-- The SpotBugs Maven plugin uses SLF4J-2 -->
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>2.0.0</version>
</dependency>
<dependency>
- <!-- The SpotBugs Maven plugin uses SLF4J 1.8 beta 2 -->
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
- <version>1.8.0-beta2</version>
+ <version>2.0.0</version>
</dependency>
</dependencies>
<configuration>
<plugin>
<groupId>org.opendaylight.odlparent</groupId>
<artifactId>copy-files-plugin</artifactId>
- <version>10.0.0-SNAPSHOT</version>
+ <version>11.0.2-SNAPSHOT</version>
<executions>
<execution>
<phase>prepare-package</phase>
</plugins>
</build>
- <profiles>
- <profile>
- <id>disable-spotbugs</id>
- <activation>
- <!-- Current spotbugs does not support JDK15+ -->
- <jdk>[15,)</jdk>
- </activation>
-
- <properties>
- <odlparent.spotbugs.skip>true</odlparent.spotbugs.skip>
- </properties>
-
- <build>
- <plugins>
- <plugin>
- <groupId>com.github.ekryd.echo-maven-plugin</groupId>
- <artifactId>echo-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>UNTESTED-JDK</id>
- <goals>
- <goal>echo</goal>
- </goals>
- <phase>test</phase>
- <configuration>
- <message>Running on JDK newer than 11, which is not supported. Skipping SpotBugs execution.</message>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
<reporting>
<plugins>
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
- <version>3.1.0</version>
+ <version>3.2.0</version>
</plugin>
<!-- FIXME: activate this