diff --git a/SOURCES/0001-Avoid-limitation-with-older-shade-plug-in-versions-w.patch b/SOURCES/0001-Avoid-limitation-with-older-shade-plug-in-versions-w.patch new file mode 100644 index 0000000..9ae9983 --- /dev/null +++ b/SOURCES/0001-Avoid-limitation-with-older-shade-plug-in-versions-w.patch @@ -0,0 +1,32 @@ +From d39c125a6030c88920f188345fee1d624ac4afe1 Mon Sep 17 00:00:00 2001 +From: Mat Booth +Date: Tue, 12 Mar 2019 12:58:38 +0000 +Subject: [PATCH 1/4] Avoid limitation with older shade plug-in versions where + it cannot deal with Java 9-style module-info files + +--- + .../org.eclipse.jdt.launching.javaagent/pom.xml | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/pom.xml b/eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/pom.xml +index 8d32e4fa5..dd76e096a 100644 +--- a/eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/pom.xml ++++ b/eclipse.jdt.debug/org.eclipse.jdt.launching.javaagent/pom.xml +@@ -77,6 +77,14 @@ + + + javaagent-shaded ++ ++ ++ *:* ++ ++ **/module-info.class ++ ++ ++ + + + +-- +2.26.2 + diff --git a/SOURCES/0002-Allow-bootstrapping-against-OSGi-Core-R6.patch b/SOURCES/0002-Allow-bootstrapping-against-OSGi-Core-R6.patch new file mode 100644 index 0000000..7a4041d --- /dev/null +++ b/SOURCES/0002-Allow-bootstrapping-against-OSGi-Core-R6.patch @@ -0,0 +1,31 @@ +From 006d5e833eae44aab2514918acfe20f8ab3992d2 Mon Sep 17 00:00:00 2001 +From: Mat Booth +Date: Tue, 12 Mar 2019 15:12:37 +0000 +Subject: [PATCH 2/4] Allow bootstrapping against OSGi Core R6 + +--- + .../http/servlet/internal/HttpServiceRuntimeImpl.java | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/HttpServiceRuntimeImpl.java b/rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/HttpServiceRuntimeImpl.java +index 8d07030b8..530f5bb11 100644 +--- a/rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/HttpServiceRuntimeImpl.java ++++ b/rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet/src/org/eclipse/equinox/http/servlet/internal/HttpServiceRuntimeImpl.java +@@ -1341,8 +1341,12 @@ public class HttpServiceRuntimeImpl + @Override + public Void call() { + try { +- Dictionary properties = getHsrRegistration().getReference().getProperties(); +- properties.put(Constants.SERVICE_CHANGECOUNT, getServiceChangecount()); ++ Dictionary properties = new Hashtable(); ++ String[] keys = getHsrRegistration().getReference().getPropertyKeys(); ++ for (String key : keys) { ++ properties.put(key, getHsrRegistration().getReference().getProperty(key)); ++ } ++ properties.put("service.changecount", getServiceChangecount()); + getHsrRegistration().setProperties(properties); + return null; + } +-- +2.26.2 + diff --git a/SOURCES/0004-Add-parent-pom-for-old-tycho-pomless.patch b/SOURCES/0004-Add-parent-pom-for-old-tycho-pomless.patch new file mode 100644 index 0000000..6d88f68 --- /dev/null +++ b/SOURCES/0004-Add-parent-pom-for-old-tycho-pomless.patch @@ -0,0 +1,31 @@ +From 1373863303582bd46daea47db219506c0fbebcee Mon Sep 17 00:00:00 2001 +From: Mat Booth +Date: Wed, 13 May 2020 15:24:34 +0100 +Subject: [PATCH 4/4] Add parent pom for old tycho-pomless + +--- + eclipse.platform.resources/bundles/pom.xml | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + create mode 100644 eclipse.platform.resources/bundles/pom.xml + +diff --git a/eclipse.platform.resources/bundles/pom.xml b/eclipse.platform.resources/bundles/pom.xml +new file mode 100644 +index 000000000..44a2f411b +--- /dev/null ++++ b/eclipse.platform.resources/bundles/pom.xml +@@ -0,0 +1,12 @@ ++ ++ 4.0.0 ++ ++ eclipse.platform.resources ++ eclipse.platform.resources ++ 4.15.0-SNAPSHOT ++ .. ++ ++ eclipse.platform.resources ++ eclipse.platform.resources-bundles ++ pom ++ +-- +2.26.2 + diff --git a/SOURCES/compiler-release.patch b/SOURCES/compiler-release.patch new file mode 100644 index 0000000..0d0828d --- /dev/null +++ b/SOURCES/compiler-release.patch @@ -0,0 +1,10 @@ +--- rt.equinox.p2/bundles/org.eclipse.equinox.p2.artifact.repository/pom.xml.orig 2020-03-23 00:19:02.052686148 +0000 ++++ rt.equinox.p2/bundles/org.eclipse.equinox.p2.artifact.repository/pom.xml 2020-03-23 00:19:10.187688146 +0000 +@@ -11,4 +11,7 @@ + org.eclipse.equinox.p2.artifact.repository + 1.3.400-SNAPSHOT + eclipse-plugin ++ ++ 8 ++ + diff --git a/SOURCES/force-clean-after-p2-operations.patch b/SOURCES/force-clean-after-p2-operations.patch new file mode 100644 index 0000000..c1e0d3c --- /dev/null +++ b/SOURCES/force-clean-after-p2-operations.patch @@ -0,0 +1,80 @@ +From d964680827a248e8a312c000c4c2443f96c8c459 Mon Sep 17 00:00:00 2001 +From: Mat Booth +Date: Fri, 27 Sep 2019 14:52:54 +0100 +Subject: [PATCH] Force a clean on the restart after p2 operations + +--- + .../META-INF/MANIFEST.MF | 2 +- + .../bundles/org.eclipse.equinox.launcher/pom.xml | 2 +- + .../src/org/eclipse/equinox/launcher/Main.java | 13 +++++++++++++ + .../internal/p2/ui/ProvisioningOperationRunner.java | 6 ++++++ + 4 files changed, 21 insertions(+), 2 deletions(-) + +diff --git a/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/META-INF/MANIFEST.MF b/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/META-INF/MANIFEST.MF +index 497e5d6fa..a118a0e4c 100644 +--- a/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/META-INF/MANIFEST.MF ++++ b/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/META-INF/MANIFEST.MF +@@ -2,7 +2,7 @@ Manifest-Version: 1.0 + Bundle-ManifestVersion: 2 + Bundle-Name: %pluginName + Bundle-SymbolicName: org.eclipse.equinox.launcher;singleton:=true +-Bundle-Version: 1.5.700.qualifier ++Bundle-Version: 1.5.701.qualifier + Main-Class: org.eclipse.equinox.launcher.Main + Bundle-ClassPath: . + Bundle-Vendor: %providerName +diff --git a/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/pom.xml b/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/pom.xml +index 43849b5b8..c5d2cdfea 100644 +--- a/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/pom.xml ++++ b/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/pom.xml +@@ -19,6 +19,6 @@ + + org.eclipse.equinox + org.eclipse.equinox.launcher +- 1.5.700-SNAPSHOT ++ 1.5.701-SNAPSHOT + eclipse-plugin + +diff --git a/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/launcher/Main.java b/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/launcher/Main.java +index d013ff7c2..65f4cfd8a 100644 +--- a/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/launcher/Main.java ++++ b/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/launcher/Main.java +@@ -560,6 +560,18 @@ + setupVMProperties(); + processConfiguration(); + ++ File oca = new File(getConfigurationLocation().toURI()); ++ File ocaFile = new File(oca, "clean_on_restart"); ++ if (ocaFile.exists()) { ++ System.err.println("Clean triggered."); //$NON-NLS-1$ ++ ocaFile.delete(); ++ commands = Arrays.copyOf(args, args.length + 1); ++ commands[commands.length-1] = CLEAN; ++ passThruArgs = Arrays.copyOf(passThruArgs, passThruArgs.length + 1); ++ passThruArgs[passThruArgs.length-1] = CLEAN; ++ setupVMProperties(); ++ } ++ + if (protectBase && (System.getProperty(PROP_SHARED_CONFIG_AREA) == null)) { + System.err.println("This application is configured to run in a cascaded mode only."); //$NON-NLS-1$ + System.setProperty(PROP_EXITCODE, Integer.toString(14)); +diff --git a/rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvisioningOperationRunner.java b/rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvisioningOperationRunner.java +index a70b640ba..8a002ebc2 100644 +--- a/rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvisioningOperationRunner.java ++++ b/rt.equinox.p2/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/ProvisioningOperationRunner.java +@@ -72,6 +72,12 @@ public class ProvisioningOperationRunner { + * @param restartPolicy + */ + void requestRestart(final int restartPolicy) { ++ String oca = System.getProperty("osgi.configuration.area"); ++ try { ++ java.io.File ocaCleanFile = new java.io.File(new java.net.URL(oca).toURI()); ++ new java.io.File(ocaCleanFile, "clean_on_restart").createNewFile(); ++ } catch (Exception e) { /* Eh, we tried... */ } ++ + // Global override of restart (used in test cases). + if (suppressRestart) + return; +-- +2.20.1 +