[GERONIMO-6795] graal 20.3 upgrade
diff --git a/arthur-impl/src/main/java/org/apache/geronimo/arthur/impl/nativeimage/ArthurNativeImageConfiguration.java b/arthur-impl/src/main/java/org/apache/geronimo/arthur/impl/nativeimage/ArthurNativeImageConfiguration.java
index 3b13c9b..7e59074 100644
--- a/arthur-impl/src/main/java/org/apache/geronimo/arthur/impl/nativeimage/ArthurNativeImageConfiguration.java
+++ b/arthur-impl/src/main/java/org/apache/geronimo/arthur/impl/nativeimage/ArthurNativeImageConfiguration.java
@@ -67,9 +67,6 @@
     @GraalCommandPart(order = 12, template = "-H:+ReportExceptionStackTraces")
     private boolean reportExceptionStackTraces = true;
 
-    @GraalCommandPart(order = 13, template = "-H:+TraceClassInitialization")
-    private boolean traceClassInitialization = true;
-
     @GraalCommandPart(order = 14, template = "-H:+PrintClassInitialization")
     private boolean printClassInitialization = false;
 
diff --git a/arthur-impl/src/test/java/org/apache/geronimo/arthur/impl/nativeimage/CommandGeneratorTest.java b/arthur-impl/src/test/java/org/apache/geronimo/arthur/impl/nativeimage/CommandGeneratorTest.java
index 9d9484a..fef9fdc 100644
--- a/arthur-impl/src/test/java/org/apache/geronimo/arthur/impl/nativeimage/CommandGeneratorTest.java
+++ b/arthur-impl/src/test/java/org/apache/geronimo/arthur/impl/nativeimage/CommandGeneratorTest.java
@@ -50,7 +50,6 @@
         configuration.setEnforceMaxRuntimeCompileMethods(false);
         configuration.setAddAllCharsets(false);
         configuration.setReportExceptionStackTraces(false);
-        configuration.setTraceClassInitialization(false);
         configuration.setPrintClassInitialization(false);
         configuration.setBuildStaticImage(false);
         configuration.setAllowIncompleteClasspath(false);
@@ -94,7 +93,6 @@
         filledConfig.setEnforceMaxRuntimeCompileMethods(false);
         filledConfig.setAddAllCharsets(false);
         filledConfig.setReportExceptionStackTraces(false);
-        filledConfig.setTraceClassInitialization(false);
         filledConfig.setPrintClassInitialization(true);
         filledConfig.setFallbackMode(ArthurNativeImageConfiguration.FallbackMode.auto);
         filledConfig.setBuildStaticImage(false);
@@ -113,7 +111,6 @@
                                 "native-image", "-classpath",
                                 "-H:MaxRuntimeCompileMethods=1000", "-H:+EnforceMaxRuntimeCompileMethods",
                                 "-H:+AddAllCharsets", "-H:+ReportExceptionStackTraces",
-                                "-H:+TraceClassInitialization",
                                 "--no-fallback", "--static", "--allow-incomplete-classpath",
                                 "--report-unsupported-elements-at-runtime", "--enable-all-security-services",
                                 "--no-server", "main", "main.graal.exec")),
@@ -123,7 +120,6 @@
                                 "native-image", "-classpath", "foo" + File.pathSeparator + "bar",
                                 "-H:MaxRuntimeCompileMethods=1000", "-H:+EnforceMaxRuntimeCompileMethods",
                                 "-H:+AddAllCharsets", "-H:+ReportExceptionStackTraces",
-                                "-H:+TraceClassInitialization",
                                 "--no-fallback", "--static", "--allow-incomplete-classpath",
                                 "--report-unsupported-elements-at-runtime", "--enable-all-security-services",
                                 "--no-server", "main", "main.graal.exec")),
diff --git a/arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/ArthurMojo.java b/arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/ArthurMojo.java
index fe38a9c..89f08c6 100644
--- a/arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/ArthurMojo.java
+++ b/arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/ArthurMojo.java
@@ -79,7 +79,7 @@
      * In case Graal must be downloaded to get native-image, which version to download.
      * It contains the graal version and can be suffixed by the graal java version prefixed with "r" (as on sdkman).
      */
-    @Parameter(property = "arthur.graalVersion", defaultValue = "20.1.0.r8")
+    @Parameter(property = "arthur.graalVersion", defaultValue = "20.3.0.r8")
     private String graalVersion;
 
     /**
diff --git a/arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/NativeImageMojo.java b/arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/NativeImageMojo.java
index 7a4d712..18bd42f 100644
--- a/arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/NativeImageMojo.java
+++ b/arthur-maven-plugin/src/main/java/org/apache/geronimo/arthur/maven/mojo/NativeImageMojo.java
@@ -165,12 +165,6 @@
     private boolean reportExceptionStackTraces;
 
     /**
-     * Should class initialition be tracked.
-     */
-    @Parameter(property = "arthur.traceClassInitialization", defaultValue = "true")
-    private boolean traceClassInitialization;
-
-    /**
      * Should initialiation of classes be printed - mainly for debug purposes.
      */
     @Parameter(property = "arthur.printClassInitialization", defaultValue = "false")
diff --git a/documentation/pom.xml b/documentation/pom.xml
index d58bda7..ab41da1 100644
--- a/documentation/pom.xml
+++ b/documentation/pom.xml
@@ -52,7 +52,6 @@
         </exclusion>
       </exclusions>
     </dependency>
-    <!-- NEEDS_WINEGROWER_RELEASE deactivated until the release
     <dependency>
       <groupId>${project.groupId}.knights</groupId>
       <artifactId>winegrower-knight</artifactId>
@@ -64,7 +63,6 @@
         </exclusion>
       </exclusions>
     </dependency>
-    -->
 
     <!-- generation dependencies -->
     <dependency>
diff --git a/integration-test/pom.xml b/integration-test/pom.xml
index f38c149..f59c179 100644
--- a/integration-test/pom.xml
+++ b/integration-test/pom.xml
@@ -39,7 +39,7 @@
     <dependency>
       <groupId>org.testcontainers</groupId>
       <artifactId>junit-jupiter</artifactId>
-      <version>1.12.3</version>
+      <version>1.14.3</version>
       <scope>test</scope>
     </dependency>
     <dependency>
@@ -79,14 +79,12 @@
       <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
-    <!-- NEEDS_WINEGROWER_RELEASE commented until winegrower is released
     <dependency>
       <groupId>${project.groupId}.knights</groupId>
       <artifactId>winegrower-knight</artifactId>
       <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
-    -->
   </dependencies>
 
   <build>
diff --git a/integration-test/src/test/java/org/apache/geronimo/arthur/integrationtests/MavenTest.java b/integration-test/src/test/java/org/apache/geronimo/arthur/integrationtests/MavenTest.java
index 5bca5d7..65cab08 100644
--- a/integration-test/src/test/java/org/apache/geronimo/arthur/integrationtests/MavenTest.java
+++ b/integration-test/src/test/java/org/apache/geronimo/arthur/integrationtests/MavenTest.java
@@ -48,7 +48,6 @@
 
 
     @Test
-    @EnabledIfSystemProperty(named = "winegrower.enabled", matches = "NEEDS_WINEGROWER_RELEASE") // deactivated until the release
     @Spec(expectedOutput = "Starting org.apache.geronimo.arthur.integrationtests.Application")
     void scr() {}
 
diff --git a/integration-test/src/test/java/org/apache/geronimo/arthur/integrationtests/container/MavenContainer.java b/integration-test/src/test/java/org/apache/geronimo/arthur/integrationtests/container/MavenContainer.java
index 8363f21..635bbb5 100644
--- a/integration-test/src/test/java/org/apache/geronimo/arthur/integrationtests/container/MavenContainer.java
+++ b/integration-test/src/test/java/org/apache/geronimo/arthur/integrationtests/container/MavenContainer.java
@@ -16,10 +16,12 @@
  */
 package org.apache.geronimo.arthur.integrationtests.container;
 
+import java.util.List;
 import java.util.Optional;
 import java.util.concurrent.ExecutionException;
 
 import com.github.dockerjava.api.DockerClient;
+import com.github.dockerjava.api.model.Image;
 import org.testcontainers.DockerClientFactory;
 import org.testcontainers.containers.GenericContainer;
 import org.testcontainers.images.builder.ImageFromDockerfile;
@@ -46,14 +48,16 @@
     // we can run apt update && apt install -y gcc libc6-dev zlib1g-dev in start() but it is slow so we cache it through an image
     // note: we don't clean the image to be able to reuse it and speed up integration-tests, use -Darthur.container.maven.deleteOnExit=true to auto clean it
     private static String getOrCreateAutoBaseImage() {
-        final String fromImage = System.getProperty("arthur.container.maven.baseimage", "maven:3.6.2-jdk-8-slim");
+        final String fromImage = System.getProperty("arthur.container.maven.baseimage", "maven:3.6.3-jdk-8-slim");
         // creating a tag from the source image to ensure we can have multiple test versions (maven/jdk matrix)
         final String tag = fromImage.split(":")[1];
         final String targetImage = "apache/geronimo/arthur/maven-test-base:" + tag;
 
         final DockerClient client = DockerClientFactory.instance().client();
         try {
-            if (!client.listImagesCmd().withImageNameFilter(targetImage).exec().isEmpty()) {
+            // note that docker daemon can ignore filter parameter so let's check it exactly
+            final List<Image> images = client.listImagesCmd().withImageNameFilter(targetImage).exec();
+            if (images.size() == 1) {
                 log.info("Found '{}' image, reusing it", targetImage);
                 return targetImage;
             }
diff --git a/integration-test/src/test/resources/integration-tests/scr/pom.xml b/integration-test/src/test/resources/integration-tests/scr/pom.xml
index 0078282..c835d3c 100644
--- a/integration-test/src/test/resources/integration-tests/scr/pom.xml
+++ b/integration-test/src/test/resources/integration-tests/scr/pom.xml
@@ -117,7 +117,7 @@
       <plugin>
         <groupId>org.apache.geronimo.arthur</groupId>
         <artifactId>arthur-maven-plugin</artifactId>
-        <version>1.0.0-SNAPSHOT</version>
+        <version>${project.version}</version>
         <configuration>
           <main>org.apache.geronimo.arthur.integrationtests.ScrMain</main>
           <graalExtensions>
diff --git a/knights/jsch-knight/src/test/java/org/apache/geronimo/arthur/knight/jsch/JschExtensionTest.java b/knights/jsch-knight/src/test/java/org/apache/geronimo/arthur/knight/jsch/JschExtensionTest.java
index 4da6c05..3458786 100644
--- a/knights/jsch-knight/src/test/java/org/apache/geronimo/arthur/knight/jsch/JschExtensionTest.java
+++ b/knights/jsch-knight/src/test/java/org/apache/geronimo/arthur/knight/jsch/JschExtensionTest.java
@@ -46,53 +46,55 @@
         final Collection<ClassReflectionModel> reflection = context.getReflections();
         assertEquals(48, reflection.size());
         reflection.stream().map(ClassReflectionModel::getAllDeclaredConstructors).forEach(Assertions::assertTrue);
-        assertEquals("com.jcraft.jsch.jce.HMACSHA1\n" +
-                "com.jcraft.jsch.jce.AES192CTR\n" +
-                "com.jcraft.jsch.DHEC384\n" +
-                "com.jcraft.jsch.jce.DH\n" +
-                "com.jcraft.jsch.jce.SHA1\n" +
-                "com.jcraft.jsch.jce.SignatureDSA\n" +
-                "com.jcraft.jsch.jce.AES256CTR\n" +
-                "com.jcraft.jsch.jgss.GSSContextKrb5\n" +
-                "com.jcraft.jsch.jce.AES192CBC\n" +
-                "com.jcraft.jsch.jce.PBKDF\n" +
-                "com.jcraft.jsch.jce.HMACMD596\n" +
-                "com.jcraft.jsch.jce.KeyPairGenDSA\n" +
-                "com.jcraft.jsch.jce.MD5\n" +
-                "com.jcraft.jsch.jce.SignatureECDSA521\n" +
-                "com.jcraft.jsch.DHG14\n" +
-                "com.jcraft.jsch.jce.ARCFOUR\n" +
-                "com.jcraft.jsch.jce.KeyPairGenRSA\n" +
+        assertEquals("" +
+                "com.jcraft.jsch.CipherNone\n" +
                 "com.jcraft.jsch.DHEC256\n" +
-                "com.jcraft.jsch.jce.HMACMD5\n" +
-                "com.jcraft.jsch.jce.HMACSHA196\n" +
-                "com.jcraft.jsch.UserAuthPublicKey\n" +
-                "com.jcraft.jsch.jce.AES128CTR\n" +
-                "com.jcraft.jsch.jce.SignatureRSA\n" +
-                "com.jcraft.jsch.jce.SHA384\n" +
+                "com.jcraft.jsch.DHEC384\n" +
+                "com.jcraft.jsch.DHEC521\n" +
+                "com.jcraft.jsch.DHG1\n" +
+                "com.jcraft.jsch.DHG14\n" +
                 "com.jcraft.jsch.DHGEX\n" +
                 "com.jcraft.jsch.DHGEX256\n" +
-                "com.jcraft.jsch.jce.Random\n" +
-                "com.jcraft.jsch.DHG1\n" +
-                "com.jcraft.jsch.jce.BlowfishCBC\n" +
-                "com.jcraft.jsch.jce.SignatureECDSA384\n" +
+                "com.jcraft.jsch.UserAuthGSSAPIWithMIC\n" +
+                "com.jcraft.jsch.UserAuthKeyboardInteractive\n" +
                 "com.jcraft.jsch.UserAuthNone\n" +
+                "com.jcraft.jsch.UserAuthPassword\n" +
+                "com.jcraft.jsch.UserAuthPublicKey\n" +
+                "com.jcraft.jsch.jce.AES128CBC\n" +
+                "com.jcraft.jsch.jce.AES128CTR\n" +
+                "com.jcraft.jsch.jce.AES192CBC\n" +
+                "com.jcraft.jsch.jce.AES192CTR\n" +
+                "com.jcraft.jsch.jce.AES256CBC\n" +
+                "com.jcraft.jsch.jce.AES256CTR\n" +
+                "com.jcraft.jsch.jce.ARCFOUR\n" +
                 "com.jcraft.jsch.jce.ARCFOUR128\n" +
                 "com.jcraft.jsch.jce.ARCFOUR256\n" +
-                "com.jcraft.jsch.UserAuthKeyboardInteractive\n" +
-                "com.jcraft.jsch.jce.SignatureECDSA256\n" +
-                "com.jcraft.jsch.jce.TripleDESCTR\n" +
-                "com.jcraft.jsch.jce.SHA512\n" +
-                "com.jcraft.jsch.DHEC521\n" +
-                "com.jcraft.jsch.UserAuthPassword\n" +
-                "com.jcraft.jsch.jce.SHA256\n" +
-                "com.jcraft.jsch.jce.KeyPairGenECDSA\n" +
-                "com.jcraft.jsch.jce.TripleDESCBC\n" +
-                "com.jcraft.jsch.CipherNone\n" +
-                "com.jcraft.jsch.jce.AES128CBC\n" +
-                "com.jcraft.jsch.jce.AES256CBC\n" +
+                "com.jcraft.jsch.jce.BlowfishCBC\n" +
+                "com.jcraft.jsch.jce.DH\n" +
                 "com.jcraft.jsch.jce.ECDHN\n" +
-                "com.jcraft.jsch.UserAuthGSSAPIWithMIC\n" +
-                "com.jcraft.jsch.jce.HMACSHA256", reflection.stream().map(ClassReflectionModel::getName).collect(joining("\n")));
+                "com.jcraft.jsch.jce.HMACMD5\n" +
+                "com.jcraft.jsch.jce.HMACMD596\n" +
+                "com.jcraft.jsch.jce.HMACSHA1\n" +
+                "com.jcraft.jsch.jce.HMACSHA196\n" +
+                "com.jcraft.jsch.jce.HMACSHA256\n" +
+                "com.jcraft.jsch.jce.KeyPairGenDSA\n" +
+                "com.jcraft.jsch.jce.KeyPairGenECDSA\n" +
+                "com.jcraft.jsch.jce.KeyPairGenRSA\n" +
+                "com.jcraft.jsch.jce.MD5\n" +
+                "com.jcraft.jsch.jce.PBKDF\n" +
+                "com.jcraft.jsch.jce.Random\n" +
+                "com.jcraft.jsch.jce.SHA1\n" +
+                "com.jcraft.jsch.jce.SHA256\n" +
+                "com.jcraft.jsch.jce.SHA384\n" +
+                "com.jcraft.jsch.jce.SHA512\n" +
+                "com.jcraft.jsch.jce.SignatureDSA\n" +
+                "com.jcraft.jsch.jce.SignatureECDSA256\n" +
+                "com.jcraft.jsch.jce.SignatureECDSA384\n" +
+                "com.jcraft.jsch.jce.SignatureECDSA521\n" +
+                "com.jcraft.jsch.jce.SignatureRSA\n" +
+                "com.jcraft.jsch.jce.TripleDESCBC\n" +
+                "com.jcraft.jsch.jce.TripleDESCTR\n" +
+                "com.jcraft.jsch.jgss.GSSContextKrb5",
+                reflection.stream().map(ClassReflectionModel::getName).sorted().collect(joining("\n")));
     }
 }
diff --git a/knights/openwebbeans-knight/pom.xml b/knights/openwebbeans-knight/pom.xml
new file mode 100644
index 0000000..c38b978
--- /dev/null
+++ b/knights/openwebbeans-knight/pom.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <parent>
+    <artifactId>knights</artifactId>
+    <groupId>org.apache.geronimo.arthur.knights</groupId>
+    <version>1.0.1-SNAPSHOT</version>
+  </parent>
+  <modelVersion>4.0.0</modelVersion>
+
+  <artifactId>openwebbeans-knight</artifactId>
+  <name>Arthur :: Knights :: OpenWebBeans</name>
+
+  <properties>
+    <geronimo-arthur.shortname>knight.openwebbeans</geronimo-arthur.shortname>
+  </properties>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-api</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.geronimo.arthur</groupId>
+      <artifactId>arthur-spi</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-jcdi_2.0_spec</artifactId>
+      <version>1.3</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-el_2.2_spec</artifactId>
+      <version>1.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-annotation_1.3_spec</artifactId>
+      <version>1.3</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-atinject_1.0_spec</artifactId>
+      <version>1.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-interceptor_1.2_spec</artifactId>
+      <version>1.2</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.openwebbeans</groupId>
+      <artifactId>openwebbeans-se</artifactId>
+      <version>2.0.20</version>
+    </dependency>
+    <dependency>
+      <groupId>org.graalvm.nativeimage</groupId>
+      <artifactId>svm</artifactId>
+      <version>${graalvm.version}</version>
+      <scope>provided</scope>
+    </dependency>
+  </dependencies>
+</project>
\ No newline at end of file
diff --git a/knights/openwebbeans-knight/src/main/java/org/apache/geronimo/arthur/knight/openwebbeans/OpenWebBeansExtension.java b/knights/openwebbeans-knight/src/main/java/org/apache/geronimo/arthur/knight/openwebbeans/OpenWebBeansExtension.java
new file mode 100644
index 0000000..61ef51e
--- /dev/null
+++ b/knights/openwebbeans-knight/src/main/java/org/apache/geronimo/arthur/knight/openwebbeans/OpenWebBeansExtension.java
@@ -0,0 +1,26 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.geronimo.arthur.knight.openwebbeans;
+
+import org.apache.geronimo.arthur.spi.ArthurExtension;
+
+public class OpenWebBeansExtension implements ArthurExtension {
+    @Override
+    public void execute(final Context context) {
+
+    }
+}
diff --git a/knights/pom.xml b/knights/pom.xml
index 353743b..89e31c1 100644
--- a/knights/pom.xml
+++ b/knights/pom.xml
@@ -30,9 +30,8 @@
 
   <modules>
     <module>jsch-knight</module>
-    <!-- NEEDS_WINEGROWER_RELEASE deactivated until the release
     <module>winegrower-knight</module>
-    -->
+    <module>openwebbeans-knight</module>
   </modules>
 
   <dependencies>
diff --git a/knights/winegrower-knight/pom.xml b/knights/winegrower-knight/pom.xml
index fa3b5db..63c31bd 100644
--- a/knights/winegrower-knight/pom.xml
+++ b/knights/winegrower-knight/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.geronimo.arthur.knights</groupId>
     <artifactId>knights</artifactId>
-    <version>1.0.0-SNAPSHOT</version>
+    <version>1.0.1-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
diff --git a/pom.xml b/pom.xml
index 098c7c3..0c2ccfa 100644
--- a/pom.xml
+++ b/pom.xml
@@ -40,8 +40,8 @@
 
     <!-- knights -->
     <jsch.version>0.1.55</jsch.version>
-    <graalvm.version>19.3.0</graalvm.version>
-    <winegrower.version>1.0-SNAPSHOT</winegrower.version> <!-- search for NEEDS_WINEGROWER_RELEASE once released -->
+    <graalvm.version>20.3.0</graalvm.version>
+    <winegrower.version>1.0.0</winegrower.version>
 
     <!-- plugin versions/confs -->
     <maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
@@ -52,6 +52,7 @@
     <geronimo-arthur.shortname>${project.artifactId}</geronimo-arthur.shortname>
     <geronimo-arthur.Automatic-Module-Name>${project.groupId}.${geronimo-arthur.shortname}
     </geronimo-arthur.Automatic-Module-Name>
+    <junit.version>5.7.0</junit.version>
   </properties>
 
   <modules>
@@ -79,14 +80,20 @@
     <dependency>
       <groupId>org.projectlombok</groupId>
       <artifactId>lombok</artifactId>
-      <version>1.18.4</version>
+      <version>1.18.16</version>
       <scope>provided</scope>
     </dependency>
 
+    <dependency> <!-- not strictly needed for compile classpath but surefire 3M5 requires its presence -->
+      <groupId>org.junit.jupiter</groupId>
+      <artifactId>junit-jupiter-api</artifactId>
+      <version>${junit.version}</version>
+      <scope>test</scope>
+    </dependency>
     <dependency>
       <groupId>org.junit.jupiter</groupId>
       <artifactId>junit-jupiter</artifactId>
-      <version>5.5.2</version>
+      <version>${junit.version}</version>
       <scope>test</scope>
     </dependency>
   </dependencies>
@@ -107,12 +114,12 @@
       <dependency>
         <groupId>org.apache.commons</groupId>
         <artifactId>commons-compress</artifactId>
-        <version>1.19</version>
+        <version>1.20</version>
       </dependency>
       <dependency>
         <groupId>org.apache.xbean</groupId>
         <artifactId>xbean-finder-shaded</artifactId>
-        <version>4.15</version>
+        <version>4.18</version>
         <exclusions>
           <exclusion>
             <groupId>org.apache.xbean</groupId>
@@ -123,17 +130,17 @@
       <dependency>
         <groupId>org.apache.geronimo.specs</groupId>
         <artifactId>geronimo-json_1.1_spec</artifactId>
-        <version>1.2</version>
+        <version>1.5</version>
       </dependency>
       <dependency>
         <groupId>org.apache.geronimo.specs</groupId>
         <artifactId>geronimo-jsonb_1.0_spec</artifactId>
-        <version>1.2</version>
+        <version>1.4</version>
       </dependency>
       <dependency>
         <groupId>org.apache.johnzon</groupId>
         <artifactId>johnzon-jsonb</artifactId>
-        <version>1.2.1</version>
+        <version>1.2.9</version>
       </dependency>
       <dependency>
         <groupId>org.slf4j</groupId>
@@ -184,7 +191,7 @@
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-surefire-plugin</artifactId>
-        <version>3.0.0-M3</version>
+        <version>3.0.0-M5</version>
         <configuration>
           <forkCount>1</forkCount>
           <reuseForks>true</reuseForks>