diff --git a/tycho-fix-build.patch b/tycho-fix-build.patch
index 2e2bd8d..24b0406 100644
--- a/tycho-fix-build.patch
+++ b/tycho-fix-build.patch
@@ -79,19 +79,6 @@ index b00c344..bc05c2d 100644
validateUniqueBaseDirs(projects);
}
-diff --git a/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/src/main/java/org/eclipse/tycho/surefire/osgibooter/OsgiSurefireBooter.java b/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/src/main/java/org/eclipse/tycho/surefire/osgibooter/OsgiSurefireBooter.java
-index 26afcd4..19eeab9 100644
---- a/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/src/main/java/org/eclipse/tycho/surefire/osgibooter/OsgiSurefireBooter.java
-+++ b/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/src/main/java/org/eclipse/tycho/surefire/osgibooter/OsgiSurefireBooter.java
-@@ -84,7 +84,7 @@ public class OsgiSurefireBooter {
- extractProviderProperties(testProps), null, false);
- StartupReportConfiguration startupReportConfig = new StartupReportConfiguration(useFile, printSummary,
- StartupReportConfiguration.PLAIN_REPORT_FORMAT, redirectTestOutputToFile, disableXmlReport, reportsDir,
-- trimStacktrace, null, "TESTHASH", false);
-+ trimStacktrace, null, "TESTHASH", false, 0);
- ReporterFactory reporterFactory = new DefaultReporterFactory(startupReportConfig);
- // API indicates we should use testClassLoader below but surefire also tries
- // to load surefire classes using this classloader
diff --git a/tycho-testing-harness/src/main/java/org/eclipse/tycho/test/AbstractTychoIntegrationTest.java b/tycho-testing-harness/src/main/java/org/eclipse/tycho/test/AbstractTychoIntegrationTest.java
index 097bdeb..f90b10c 100644
--- a/tycho-testing-harness/src/main/java/org/eclipse/tycho/test/AbstractTychoIntegrationTest.java
diff --git a/tycho-fix-surefire.patch b/tycho-fix-surefire.patch
index a5531bd..5dfefae 100644
--- a/tycho-fix-surefire.patch
+++ b/tycho-fix-surefire.patch
@@ -38,7 +38,7 @@ index c43cc8d..6e5fde4 100644
org.apache.maven.plugins
maven-surefire-plugin
- 2.17
-+ 2.19.1
++ 2.20.1
org.apache.maven.plugins
@@ -53,8 +53,8 @@ index da31140..fb5803f 100644
-Require-Bundle: org.junit;bundle-version="[3.8.0,4.0.0)"
-Bundle-ClassPath: jars/surefire-junit3-2.17.jar
+Require-Bundle: org.junit;bundle-version="[3.8.0,5.0.0)"
-+Bundle-ClassPath: jars/surefire-junit3-2.19.1.jar,
-+ jars/common-junit3-2.19.1.jar
++Bundle-ClassPath: jars/surefire-junit3-2.20.1.jar,
++ jars/common-junit3-2.20.1.jar
Bundle-Vendor: %providerName
diff --git a/tycho-surefire/org.eclipse.tycho.surefire.junit/pom.xml b/tycho-surefire/org.eclipse.tycho.surefire.junit/pom.xml
index f99c319..0224cc6 100644
@@ -81,9 +81,9 @@ index 50be5ea..97760e2 100644
Bundle-RequiredExecutionEnvironment: J2SE-1.5,
JavaSE-1.6
-Bundle-ClassPath: jars/surefire-junit4-2.17.jar
-+Bundle-ClassPath: jars/surefire-junit4-2.19.1.jar,
-+ jars/common-junit3-2.19.1.jar,
-+ jars/common-junit4-2.19.1.jar
++Bundle-ClassPath: jars/surefire-junit4-2.20.1.jar,
++ jars/common-junit3-2.20.1.jar,
++ jars/common-junit4-2.20.1.jar
Import-Package: junit.framework;version="3.0.0",
org.junit;version="4.0.0",
org.junit.runner;version="4.0.0",
@@ -122,11 +122,11 @@ index 595265b..1ac6c5d 100644
- jars/surefire-junit47-2.17.jar,
- jars/common-junit48-2.17.jar,
- jars/surefire-grouper-2.17.jar
-+ jars/surefire-junit47-2.19.1.jar,
-+ jars/common-junit48-2.19.1.jar,
-+ jars/surefire-grouper-2.19.1.jar,
-+ jars/common-junit3-2.19.1.jar,
-+ jars/common-junit4-2.19.1.jar
++ jars/surefire-junit47-2.20.1.jar,
++ jars/common-junit48-2.20.1.jar,
++ jars/surefire-grouper-2.20.1.jar,
++ jars/common-junit3-2.20.1.jar,
++ jars/common-junit4-2.20.1.jar
Import-Package: junit.framework;version="3.0.0",
org.junit;version="[4.7,5)",
org.junit.runner;version="[4.7,5)",
@@ -155,16 +155,17 @@ diff --git a/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/META-INF/MANIF
index 991edc1..83732d5 100644
--- a/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/META-INF/MANIFEST.MF
+++ b/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/META-INF/MANIFEST.MF
-@@ -5,9 +5,10 @@ Require-Bundle: org.eclipse.osgi;bundle-version="3.2.2",
+@@ -5,9 +5,11 @@ Require-Bundle: org.eclipse.osgi;bundle-version="3.2.2",
Eclipse-AutoStart: true
Bundle-Version: 1.0.0
Bundle-ClassPath: .,
- jars/surefire-booter-2.17.jar,
- jars/surefire-api-2.17.jar,
- jars/maven-surefire-common-2.17.jar
-+ jars/surefire-booter-2.19.1.jar,
-+ jars/surefire-api-2.19.1.jar,
-+ jars/maven-surefire-common-2.19.1.jar,
++ jars/surefire-booter-2.20.1.jar,
++ jars/surefire-api-2.20.1.jar,
++ jars/surefire-logger-api-2.20.1.jar,
++ jars/maven-surefire-common-2.20.1.jar,
+ jars/plexus-utils-3.0.jar
Bundle-Name: Tycho Surefire OSGi Booter Eclipse Application
Bundle-ManifestVersion: 2
@@ -173,7 +174,19 @@ diff --git a/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/pom.xml b/tych
index 82700eb..3fbc3a3 100644
--- a/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/pom.xml
+++ b/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/pom.xml
-@@ -57,6 +57,11 @@
+@@ -49,6 +49,11 @@
+
+
+ org.apache.maven.surefire
++ surefire-logger-api
++ ${surefire-version}
++
++
++ org.apache.maven.surefire
+ surefire-booter
+ ${surefire-version}
+
+@@ -57,6 +62,11 @@
maven-surefire-common
${surefire-version}
@@ -189,7 +202,7 @@ diff --git a/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/src/main/java/
index 19eeab9..31e9d3e 100644
--- a/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/src/main/java/org/eclipse/tycho/surefire/osgibooter/OsgiSurefireBooter.java
+++ b/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/src/main/java/org/eclipse/tycho/surefire/osgibooter/OsgiSurefireBooter.java
-@@ -21,7 +21,9 @@
+@@ -21,13 +21,16 @@
import java.net.URL;
import java.util.ArrayList;
import java.util.Arrays;
@@ -199,7 +212,14 @@ index 19eeab9..31e9d3e 100644
import java.util.List;
import java.util.Map;
import java.util.Properties;
-@@ -36,12 +38,15 @@
+ import java.util.Set;
+
+ import org.apache.maven.plugin.surefire.StartupReportConfiguration;
++import org.apache.maven.plugin.surefire.log.api.NullConsoleLogger;
+ import org.apache.maven.plugin.surefire.report.DefaultReporterFactory;
+ import org.apache.maven.surefire.booter.BooterConstants;
+ import org.apache.maven.surefire.booter.ClassLoaderConfiguration;
+@@ -36,12 +39,15 @@
import org.apache.maven.surefire.booter.PropertiesWrapper;
import org.apache.maven.surefire.booter.ProviderConfiguration;
import org.apache.maven.surefire.booter.ProviderFactory;
@@ -215,7 +235,7 @@ index 19eeab9..31e9d3e 100644
import org.apache.maven.surefire.testset.TestRequest;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IStatus;
-@@ -62,7 +67,11 @@
+@@ -62,7 +68,11 @@
File reportsDir = new File(testProps.getProperty("reportsdirectory"));
String provider = testProps.getProperty("testprovider");
String runOrder = testProps.getProperty("runOrder");
@@ -228,7 +248,7 @@ index 19eeab9..31e9d3e 100644
List suiteXmlFiles = wrapper.getStringList(BooterConstants.TEST_SUITE_XML_FILES);
boolean forkRequested = true;
-@@ -79,13 +88,14 @@
+@@ -79,17 +89,18 @@
new ClassLoaderConfiguration(useSystemClassloader, useManifestOnlyJar), forkRequested, inForkedVM);
// TODO dir scanning with no includes done here (done in TestMojo already)
// but without dirScannerParams we get an NPE accessing runOrder
@@ -243,11 +263,17 @@ index 19eeab9..31e9d3e 100644
new RunOrderParameters(runOrder, null), failIfNoTests, reporterConfig, null, testRequest,
- extractProviderProperties(testProps), null, false);
+ extractProviderProperties(testProps), null, false, Collections.emptyList(),
-+ 0, Shutdown.DEFAULT);
++ 0, Shutdown.DEFAULT, 0);
StartupReportConfiguration startupReportConfig = new StartupReportConfiguration(useFile, printSummary,
StartupReportConfiguration.PLAIN_REPORT_FORMAT, redirectTestOutputToFile, disableXmlReport, reportsDir,
- trimStacktrace, null, "TESTHASH", false, 0);
-@@ -107,12 +117,12 @@
+- trimStacktrace, null, "TESTHASH", false);
+- ReporterFactory reporterFactory = new DefaultReporterFactory(startupReportConfig);
++ trimStacktrace, null, new File(reportsDir, "TESTHASH"), false, 0, null);
++ ReporterFactory reporterFactory = new DefaultReporterFactory(startupReportConfig, new NullConsoleLogger());
+ // API indicates we should use testClassLoader below but surefire also tries
+ // to load surefire classes using this classloader
+ RunResult result = ProviderFactory.invokeProvider(null, createCombinedClassLoader(testPlugin), reporterFactory,
+@@ -107,12 +118,12 @@
/*
* See TestMojo#mergeProviderProperties
*/
@@ -272,7 +298,7 @@ index cb2b826..bbe5f29 100644
- 2.17
-+ 2.19.1
++ 2.20.1