Bug 522339: [JUnit 5] Merge BETA_JUNIT5 branches to R4_7_maintenance
branches

Change-Id: Ia32cd9755c9ac3c9f3cab091bacd089dedc1225f
Signed-off-by: Noopur Gupta <noopur_gupta@in.ibm.com>
diff --git a/apitools/org.eclipse.pde.api.tools.annotations/pom.xml b/apitools/org.eclipse.pde.api.tools.annotations/pom.xml
index 42c46d8..a3e3d7c 100644
--- a/apitools/org.eclipse.pde.api.tools.annotations/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.annotations/pom.xml
@@ -11,7 +11,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.cdcfoundation10/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.cdcfoundation10/pom.xml
index 35e9ac7..0f6f55b 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.cdcfoundation10/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.cdcfoundation10/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.cdcfoundation11/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.cdcfoundation11/pom.xml
index 6fb10e7..42b321b 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.cdcfoundation11/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.cdcfoundation11/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.feature/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.feature/pom.xml
index 697d528..6e21cee 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.feature/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.feature/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde.feature</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.j2se12/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.j2se12/pom.xml
index b5492f9..3a42447 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.j2se12/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.j2se12/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.j2se13/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.j2se13/pom.xml
index c885eba..a79d046 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.j2se13/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.j2se13/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.j2se14/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.j2se14/pom.xml
index 9da3985..c700ba7 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.j2se14/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.j2se14/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.j2se15/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.j2se15/pom.xml
index b34524f..f3af83e 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.j2se15/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.j2se15/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.javase16/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.javase16/pom.xml
index ca600f9..1544ff2 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.javase16/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.javase16/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.javase17/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.javase17/pom.xml
index 2b1fabe..172d625 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.javase17/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.javase17/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.javase18/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.javase18/pom.xml
index 7c4a68c..99fc2c5 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.javase18/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.javase18/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.jre11/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.jre11/pom.xml
index 8543562..5311aa3 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.jre11/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.jre11/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.osgiminimum10/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.osgiminimum10/pom.xml
index 34a56dd..27cfb31 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.osgiminimum10/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.osgiminimum10/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.osgiminimum11/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.osgiminimum11/pom.xml
index b21bffa..cf94a7e 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.osgiminimum11/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.osgiminimum11/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.ee.osgiminimum12/pom.xml b/apitools/org.eclipse.pde.api.tools.ee.osgiminimum12/pom.xml
index 451337d..e9cd489 100644
--- a/apitools/org.eclipse.pde.api.tools.ee.osgiminimum12/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ee.osgiminimum12/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF b/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF
index 36ed6e5..9402aab 100644
--- a/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF
+++ b/apitools/org.eclipse.pde.api.tools.tests/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %Bundle-Name
 Bundle-SymbolicName: org.eclipse.pde.api.tools.tests
-Bundle-Version: 1.1.0.qualifier
+Bundle-Version: 1.1.1.qualifier
 Bundle-Vendor: %Bundle-Vendor
 Require-Bundle: org.eclipse.core.runtime,
  org.junit,
diff --git a/apitools/org.eclipse.pde.api.tools.tests/pom.xml b/apitools/org.eclipse.pde.api.tools.tests/pom.xml
index 7785d6e..ee68479 100644
--- a/apitools/org.eclipse.pde.api.tools.tests/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.tests/pom.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
-  Copyright (c) 2012, 2016 Eclipse Foundation and others.
+  Copyright (c) 2012, 2017 Eclipse Foundation and others.
   All rights reserved. This program and the accompanying materials
   are made available under the terms of the Eclipse Distribution License v1.0
   which accompanies this distribution, and is available at
@@ -14,12 +14,12 @@
   <parent>
     <artifactId>tests-pom</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../tests-pom/</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
   <artifactId>org.eclipse.pde.api.tools.tests</artifactId>
-  <version>1.1.0-SNAPSHOT</version>
+  <version>1.1.1-SNAPSHOT</version>
   <packaging>eclipse-test-plugin</packaging>
 
   <properties>
diff --git a/apitools/org.eclipse.pde.api.tools.tests/src/org/eclipse/pde/api/tools/builder/tests/leak/ClassExtendsLeak.java b/apitools/org.eclipse.pde.api.tools.tests/src/org/eclipse/pde/api/tools/builder/tests/leak/ClassExtendsLeak.java
index f79c41b..d2e84ca 100644
--- a/apitools/org.eclipse.pde.api.tools.tests/src/org/eclipse/pde/api/tools/builder/tests/leak/ClassExtendsLeak.java
+++ b/apitools/org.eclipse.pde.api.tools.tests/src/org/eclipse/pde/api/tools/builder/tests/leak/ClassExtendsLeak.java
@@ -638,4 +638,23 @@
 		deployLeakTest(typename + ".java", inc); //$NON-NLS-1$
 	}
 
+	/**
+	 * Test that an API class that extends a noextend class is not a leak if it is
+	 * final
+	 */
+	public void testFinalClassExtendsNoExtendClass14F() {
+		x36(false);
+	}
+
+	public void testFinalClassExtendsNoExtendClass14I() {
+		x36(true);
+	}
+
+	private void x36(boolean inc) {
+		expectingNoProblems();
+		String typename = "test36"; //$NON-NLS-1$
+		setExpectedMessageArgs(new String[][] { { "class1", typename } }); //$NON-NLS-1$
+		deployLeakTest(typename + ".java", inc); //$NON-NLS-1$
+	}
+
 }
diff --git a/apitools/org.eclipse.pde.api.tools.tests/test-builder/leak/class/test36.java b/apitools/org.eclipse.pde.api.tools.tests/test-builder/leak/class/test36.java
new file mode 100644
index 0000000..d280a59
--- /dev/null
+++ b/apitools/org.eclipse.pde.api.tools.tests/test-builder/leak/class/test36.java
@@ -0,0 +1,20 @@
+/*******************************************************************************
+ * Copyright (c) 2017 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package x.y.z;
+
+import x.y.z.classNoExtend;
+
+
+final public class test36 extends classNoExtend {
+	
+
+}
+
diff --git a/apitools/org.eclipse.pde.api.tools.ui/META-INF/MANIFEST.MF b/apitools/org.eclipse.pde.api.tools.ui/META-INF/MANIFEST.MF
index 9255184..1449cd3 100644
--- a/apitools/org.eclipse.pde.api.tools.ui/META-INF/MANIFEST.MF
+++ b/apitools/org.eclipse.pde.api.tools.ui/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.pde.api.tools.ui; singleton:=true
-Bundle-Version: 1.1.100.qualifier
+Bundle-Version: 1.1.101.qualifier
 Bundle-Localization: plugin
 Eclipse-LazyStart: true
 Bundle-ActivationPolicy: lazy
diff --git a/apitools/org.eclipse.pde.api.tools.ui/pom.xml b/apitools/org.eclipse.pde.api.tools.ui/pom.xml
index 0684215..751fbbc 100644
--- a/apitools/org.eclipse.pde.api.tools.ui/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools.ui/pom.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
-  Copyright (c) 2012, 2016 Eclipse Foundation and others.
+  Copyright (c) 2012, 2017 Eclipse Foundation and others.
   All rights reserved. This program and the accompanying materials
   are made available under the terms of the Eclipse Distribution License v1.0
   which accompanies this distribution, and is available at
@@ -14,11 +14,11 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
   <artifactId>org.eclipse.pde.api.tools.ui</artifactId>
-  <version>1.1.100-SNAPSHOT</version>
+  <version>1.1.101-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/markers/ApiMarkerResolutionGenerator.java b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/markers/ApiMarkerResolutionGenerator.java
index 43ac23a..0837649 100644
--- a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/markers/ApiMarkerResolutionGenerator.java
+++ b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/markers/ApiMarkerResolutionGenerator.java
@@ -74,7 +74,8 @@
 						new FilterProblemWithCommentResolution(marker) };
 			}
 			case IApiMarkerConstants.DEFAULT_API_BASELINE_MARKER_ID: {
-				return new IMarkerResolution[] { profileResolution };
+			return new IMarkerResolution[] { profileResolution,
+					new ConfigureProblemSeverityForAPIToolsResolution(marker) };
 			}
 			case IApiMarkerConstants.SINCE_TAG_MARKER_ID: {
 				return new IMarkerResolution[] {
diff --git a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/markers/ConfigureProblemSeverityForAPIToolsResolution.java b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/markers/ConfigureProblemSeverityForAPIToolsResolution.java
index c1bdf32..fe62c28 100644
--- a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/markers/ConfigureProblemSeverityForAPIToolsResolution.java
+++ b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/markers/ConfigureProblemSeverityForAPIToolsResolution.java
@@ -10,7 +10,9 @@
  *******************************************************************************/
 package org.eclipse.pde.api.tools.ui.internal.markers;
 
+import java.util.HashMap;
 import java.util.HashSet;
+import java.util.Map;
 
 import org.eclipse.core.resources.IMarker;
 import org.eclipse.core.runtime.CoreException;
@@ -28,14 +30,20 @@
 import org.eclipse.pde.api.tools.internal.util.Util;
 import org.eclipse.pde.api.tools.ui.internal.ApiUIPlugin;
 import org.eclipse.pde.api.tools.ui.internal.IApiToolsConstants;
+import org.eclipse.pde.api.tools.ui.internal.preferences.ApiBaselinePreferencePage;
 import org.eclipse.swt.graphics.Image;
 import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.IMarkerResolutionRelevance;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.dialogs.PreferencesUtil;
 import org.eclipse.ui.progress.UIJob;
 import org.eclipse.ui.views.markers.WorkbenchMarkerResolution;
 
 import com.ibm.icu.text.MessageFormat;
 
-public class ConfigureProblemSeverityForAPIToolsResolution extends WorkbenchMarkerResolution implements IJavaCompletionProposal {
+public class ConfigureProblemSeverityForAPIToolsResolution extends WorkbenchMarkerResolution
+		implements IJavaCompletionProposal, IMarkerResolutionRelevance {
 	protected IMarker fBackingMarker = null;
 	protected String fCategory = null;
 
@@ -124,18 +132,32 @@
 		UIJob job = new UIJob("") { //$NON-NLS-1$
 			@Override
 			public IStatus runInUIThread(IProgressMonitor monitor) {
+				// Configure problem severity for missing baseline
+				// This doesn't have project specific option
+				if (fBackingMarker.getAttribute(IApiMarkerConstants.API_MARKER_ATTR_ID,
+						-1) == IApiMarkerConstants.DEFAULT_API_BASELINE_MARKER_ID) {
+					Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+					Map<String, Object> data = new HashMap<>();
+					data.put(ApiBaselinePreferencePage.DATA_SELECT_OPTION_KEY,
+							ApiBaselinePreferencePage.MISSING_BASELINE_OPTION);
+					PreferencesUtil
+							.createPreferenceDialogOn(shell, IApiToolsConstants.ID_BASELINES_PREF_PAGE, null, data)
+							.open();
+
+					return Status.OK_STATUS;
+				}
+				// Configure problem severity for API Error/Warning( Usage Error, API compatibility error, API
+				// version error, since tag error, analysis option etc )
 				IJavaProject project = JavaCore.create(fBackingMarker.getResource().getProject());
 				int id = ApiProblemFactory.getProblemId(fBackingMarker);
 				int tab = -1;
 				String key = null;
 				key = Util.getAPIToolPreferenceKey(id);
 				tab = Util.getAPIToolPreferenceTab(id);
-
 				PDEConfigureProblemSeverityAction problemSeverityAction = new PDEConfigureProblemSeverityAction(
 						project, key ,
 						tab);
 				problemSeverityAction.run();
-
 				return Status.OK_STATUS;
 			}
 
@@ -190,4 +212,9 @@
 	public IContextInformation getContextInformation() {
 		return null;
 	}
+
+	@Override
+	public int getRelevanceForResolution() {
+		return IApiToolProposalRelevance.CONFIGURE_PROBLEM_SEVERITY;
+	}
 }
diff --git a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/ApiBaselinePreferencePage.java b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/ApiBaselinePreferencePage.java
index bce8951..ce9f027 100644
--- a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/ApiBaselinePreferencePage.java
+++ b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/ApiBaselinePreferencePage.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2007, 2015 IBM Corporation and others.
+ * Copyright (c) 2007, 2017 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -14,6 +14,7 @@
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.HashSet;
+import java.util.Map;
 
 import org.eclipse.core.resources.IProject;
 import org.eclipse.jface.dialogs.Dialog;
@@ -67,6 +68,8 @@
  */
 public class ApiBaselinePreferencePage extends PreferencePage implements IWorkbenchPreferencePage {
 
+	public static final String DATA_SELECT_OPTION_KEY = "select_option_key"; //$NON-NLS-1$
+	public static final String MISSING_BASELINE_OPTION = "MISSING_BASELINE_OPTION"; //$NON-NLS-1$
 	public static final String ID = "org.eclipse.pde.api.tools.ui.apiprofiles.prefpage"; //$NON-NLS-1$
 
 	/**
@@ -398,4 +401,18 @@
 		this.block.performDefaults();
 		applyChanges();
 	}
+	@Override
+	public void applyData(Object data) {
+		if (data instanceof Map) {
+			Map<?, ?> pageData = (Map<?, ?>) data;
+			Object key = pageData.get(ApiErrorsWarningsPreferencePage.DATA_SELECT_OPTION_KEY);
+			if (key instanceof String) {
+				String option = (String) key;
+				if (option.equals(ApiBaselinePreferencePage.MISSING_BASELINE_OPTION)) {
+					block.selectOption();
+				}
+			}
+		}
+	}
+
 }
diff --git a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/ApiBaselinesConfigurationBlock.java b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/ApiBaselinesConfigurationBlock.java
index 096d9fa..410c09d 100644
--- a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/ApiBaselinesConfigurationBlock.java
+++ b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/ApiBaselinesConfigurationBlock.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2007, 2013 IBM Corporation and others.
+ * Copyright (c) 2007, 2017 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -437,4 +437,10 @@
 	public static Key[] getAllKeys() {
 		return fgAllKeys;
 	}
+
+	public void selectOption() {
+		if (fCombo != null && !fCombo.isDisposed()) {
+			fCombo.setFocus();
+		}
+	}
 }
diff --git a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/ApiErrorsWarningsConfigurationBlock.java b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/ApiErrorsWarningsConfigurationBlock.java
index fffc340..8b0435a 100644
--- a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/ApiErrorsWarningsConfigurationBlock.java
+++ b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/ApiErrorsWarningsConfigurationBlock.java
@@ -41,6 +41,7 @@
 import org.eclipse.pde.api.tools.ui.internal.ApiUIPlugin;
 import org.eclipse.pde.api.tools.ui.internal.SWTFactory;
 import org.eclipse.pde.internal.ui.preferences.ConfigurationBlock;
+
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.custom.ScrolledComposite;
 import org.eclipse.swt.events.SelectionAdapter;
@@ -882,8 +883,9 @@
 		if (tabID == COMPATIBILITY_PAGE_ID) {
 			Link link = new Link(page, SWT.CENTER);
 			link.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false, 1, 7));
-			String linkHttp = "<a href=\"https://wiki.eclipse.org/Evolving_Java-based_APIs_2\">'Achieving API Binary Compatibility'</a>"; //$NON-NLS-1$
-			link.setText(NLS.bind(PreferenceMessages.ApiErrorsWarningsConfigurationBlock_4, linkHttp));
+			String linkHttp = "<a href=\"https://wiki.eclipse.org/Evolving_Java-based_APIs_2\">" //$NON-NLS-1$
+					+ PreferenceMessages.ApiErrorsWarningsConfigurationBlock_4 + "</a>"; //$NON-NLS-1$
+			link.setText(NLS.bind(PreferenceMessages.ApiErrorsWarningsConfigurationBlock_5, linkHttp));
 			link.setSize(400, 100);
 			link.addSelectionListener(new SelectionAdapter() {
 				@Override
diff --git a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/PreferenceMessages.java b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/PreferenceMessages.java
index 6f85a59..717599b 100644
--- a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/PreferenceMessages.java
+++ b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/PreferenceMessages.java
@@ -19,6 +19,7 @@
 	public static String ApiErrorsWarningsConfigurationBlock_2;
 	public static String ApiErrorsWarningsConfigurationBlock_3;
 	public static String ApiErrorsWarningsConfigurationBlock_4;
+	public static String ApiErrorsWarningsConfigurationBlock_5;
 	public static String ApiErrorsWarningsConfigurationBlock_automatically_remove_problem_filters;
 	public static String ApiErrorsWarningsPreferencePage_0;
 	public static String ApiErrorsWarningsPreferencePage_1;
diff --git a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/preferencemessages.properties b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/preferencemessages.properties
index 5b97ad5..c76a3d7 100644
--- a/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/preferencemessages.properties
+++ b/apitools/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/preferences/preferencemessages.properties
@@ -12,7 +12,8 @@
 ApiErrorsWarningsConfigurationBlock_1=Error and warning settings have changed. A rebuild of the project is required for the changes to take effect.\n\nRebuild {0} now?
 ApiErrorsWarningsConfigurationBlock_2=Settings Changed
 ApiErrorsWarningsConfigurationBlock_3=Missing execution environment descriptions:
-ApiErrorsWarningsConfigurationBlock_4=Read {0} for details.
+ApiErrorsWarningsConfigurationBlock_4='Achieving API Binary Compatibility'
+ApiErrorsWarningsConfigurationBlock_5=Read {0} for details.
 ApiErrorsWarningsConfigurationBlock_automatically_remove_problem_filters=Automatically &remove unused API problem filters
 ApiErrorsWarningsPreferencePage_0=API Tools
 ApiErrorsWarningsPreferencePage_1=<A>Configure Project Specific Settings...</A>
diff --git a/apitools/org.eclipse.pde.api.tools/META-INF/MANIFEST.MF b/apitools/org.eclipse.pde.api.tools/META-INF/MANIFEST.MF
index 0e3f0aa..7438293 100644
--- a/apitools/org.eclipse.pde.api.tools/META-INF/MANIFEST.MF
+++ b/apitools/org.eclipse.pde.api.tools/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.pde.api.tools;singleton:=true
-Bundle-Version: 1.1.100.qualifier
+Bundle-Version: 1.1.101.qualifier
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
 Require-Bundle: org.eclipse.osgi;bundle-version="[3.4.0,4.0.0)",
diff --git a/apitools/org.eclipse.pde.api.tools/forceQualifierUpdate.txt b/apitools/org.eclipse.pde.api.tools/forceQualifierUpdate.txt
new file mode 100644
index 0000000..c566f08
--- /dev/null
+++ b/apitools/org.eclipse.pde.api.tools/forceQualifierUpdate.txt
@@ -0,0 +1,2 @@
+# To force a version qualifier update add the bug here
+Bug 519291 -Comparator issues in PDE Api tools in 4.7.1 M20170705-0740
diff --git a/apitools/org.eclipse.pde.api.tools/pom.xml b/apitools/org.eclipse.pde.api.tools/pom.xml
index b7eb55a..68f5589 100644
--- a/apitools/org.eclipse.pde.api.tools/pom.xml
+++ b/apitools/org.eclipse.pde.api.tools/pom.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
-  Copyright (c) 2012, 2016 Eclipse Foundation and others.
+  Copyright (c) 2012, 2017 Eclipse Foundation and others.
   All rights reserved. This program and the accompanying materials
   are made available under the terms of the Eclipse Distribution License v1.0
   which accompanies this distribution, and is available at
@@ -14,12 +14,12 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
   <artifactId>org.eclipse.pde.api.tools</artifactId>
-  <version>1.1.100-SNAPSHOT</version>
+  <version>1.1.101-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
   <properties>
     <defaultSigning-excludeInnerJars>true</defaultSigning-excludeInnerJars>
diff --git a/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/builder/LeakExtendsProblemDetector.java b/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/builder/LeakExtendsProblemDetector.java
index e16b60e..e01799e 100644
--- a/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/builder/LeakExtendsProblemDetector.java
+++ b/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/builder/LeakExtendsProblemDetector.java
@@ -78,8 +78,10 @@
 					if (RestrictionModifiers.isExtendRestriction(annotations.getRestrictions())) {
 						IApiAnnotations annotationsSource = member.getApiComponent().getApiDescription().resolveAnnotations(sourceMember.getHandle());
 						if (annotationsSource != null && !RestrictionModifiers.isExtendRestriction(annotationsSource.getRestrictions())) {
-							problemFlags = IApiProblem.LEAK_BY_EXTENDING_NO_EXTEND_TYPE;
-							return true;
+							if (!Flags.isFinal(sourceMember.getModifiers())) {
+								problemFlags = IApiProblem.LEAK_BY_EXTENDING_NO_EXTEND_TYPE;
+								return true;
+							}
 						}
 					}
 					if (RestrictionModifiers.isImplementRestriction(annotations.getRestrictions())) {
diff --git a/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/model/AbstractApiTypeContainer.java b/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/model/AbstractApiTypeContainer.java
index a6b7869..498bfd5 100644
--- a/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/model/AbstractApiTypeContainer.java
+++ b/apitools/org.eclipse.pde.api.tools/src/org/eclipse/pde/api/tools/internal/model/AbstractApiTypeContainer.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2007, 2013 IBM Corporation and others.
+ * Copyright (c) 2007, 2017 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -118,6 +118,19 @@
 			comp = (IApiComponent) container.getAncestor(IApiElement.COMPONENT);
 			if (comp != null) {
 				origin = comp.getSymbolicName();
+				// comp is the fragment - get the origin of root host
+				if (origin != null && !origin.equals(id)) {
+					if (comp.isFragment()) {
+						IApiComponent rootComp = comp;
+						while (rootComp != null && rootComp.isFragment()) {
+							rootComp = rootComp.getHost();
+						}
+						if (rootComp != null) {
+							origin = rootComp.getSymbolicName();
+						}
+					}
+
+				}
 			}
 			if (origin == null) {
 				IApiTypeRoot file = container.findTypeRoot(qualifiedName);
diff --git a/ds/org.eclipse.pde.ds.annotations.tests/pom.xml b/ds/org.eclipse.pde.ds.annotations.tests/pom.xml
index d70890a..3b0bbef 100644
--- a/ds/org.eclipse.pde.ds.annotations.tests/pom.xml
+++ b/ds/org.eclipse.pde.ds.annotations.tests/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>tests-pom</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../tests-pom/</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ds/org.eclipse.pde.ds.annotations/pom.xml b/ds/org.eclipse.pde.ds.annotations/pom.xml
index b4e5561..e69e24b 100644
--- a/ds/org.eclipse.pde.ds.annotations/pom.xml
+++ b/ds/org.eclipse.pde.ds.annotations/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ds/org.eclipse.pde.ds.core/pom.xml b/ds/org.eclipse.pde.ds.core/pom.xml
index c2a6415..04f7ad8 100644
--- a/ds/org.eclipse.pde.ds.core/pom.xml
+++ b/ds/org.eclipse.pde.ds.core/pom.xml
@@ -15,7 +15,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ds/org.eclipse.pde.ds.lib/pom.xml b/ds/org.eclipse.pde.ds.lib/pom.xml
index afef203..ae58fc6 100644
--- a/ds/org.eclipse.pde.ds.lib/pom.xml
+++ b/ds/org.eclipse.pde.ds.lib/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ds/org.eclipse.pde.ds.tests/pom.xml b/ds/org.eclipse.pde.ds.tests/pom.xml
index 4571e28..dac597d 100644
--- a/ds/org.eclipse.pde.ds.tests/pom.xml
+++ b/ds/org.eclipse.pde.ds.tests/pom.xml
@@ -15,7 +15,7 @@
   <parent>
     <artifactId>tests-pom</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../tests-pom/</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ds/org.eclipse.pde.ds.ui/pom.xml b/ds/org.eclipse.pde.ds.ui/pom.xml
index 9c413c7..d668aa3 100644
--- a/ds/org.eclipse.pde.ds.ui/pom.xml
+++ b/ds/org.eclipse.pde.ds.ui/pom.xml
@@ -15,7 +15,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ds/org.eclipse.pde.ds1_2.lib/pom.xml b/ds/org.eclipse.pde.ds1_2.lib/pom.xml
index 9a74907..b6e645f 100644
--- a/ds/org.eclipse.pde.ds1_2.lib/pom.xml
+++ b/ds/org.eclipse.pde.ds1_2.lib/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/features/org.eclipse.pde-feature/pom.xml b/features/org.eclipse.pde-feature/pom.xml
index dc8917b..f70bcf1 100644
--- a/features/org.eclipse.pde-feature/pom.xml
+++ b/features/org.eclipse.pde-feature/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde.feature</groupId>
diff --git a/pom.xml b/pom.xml
index ab6aee3..ed512d8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -16,13 +16,13 @@
   <parent>
     <groupId>org.eclipse</groupId>
     <artifactId>eclipse-platform-parent</artifactId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../eclipse-platform-parent</relativePath>
   </parent>
 
   <groupId>eclipse.pde.ui</groupId>
   <artifactId>eclipse.pde.ui</artifactId>
-  <version>4.7.0-SNAPSHOT</version>
+  <version>4.7.1-SNAPSHOT</version>
   <packaging>pom</packaging>
 
   <properties>
diff --git a/tests-pom/pom.xml b/tests-pom/pom.xml
index bce5d4c..d5bf682 100644
--- a/tests-pom/pom.xml
+++ b/tests-pom/pom.xml
@@ -14,10 +14,10 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
   </parent>
   <artifactId>tests-pom</artifactId>
-  <version>4.7.0-SNAPSHOT</version>
+  <version>4.7.1-SNAPSHOT</version>
   <packaging>pom</packaging>
   <properties>
     <code.ignoredWarnings>${tests.ignoredWarnings}</code.ignoredWarnings>
diff --git a/ua/org.eclipse.pde.ua.core/pom.xml b/ua/org.eclipse.pde.ua.core/pom.xml
index 6860622..ee11ea4 100644
--- a/ua/org.eclipse.pde.ua.core/pom.xml
+++ b/ua/org.eclipse.pde.ua.core/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ua/org.eclipse.pde.ua.tests/pom.xml b/ua/org.eclipse.pde.ua.tests/pom.xml
index 4e62f25..57a6a7b 100644
--- a/ua/org.eclipse.pde.ua.tests/pom.xml
+++ b/ua/org.eclipse.pde.ua.tests/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>tests-pom</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../tests-pom/</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ua/org.eclipse.pde.ua.ui/pom.xml b/ua/org.eclipse.pde.ua.ui/pom.xml
index 54f9bb4..2d895f9 100644
--- a/ua/org.eclipse.pde.ua.ui/pom.xml
+++ b/ua/org.eclipse.pde.ua.ui/pom.xml
@@ -15,7 +15,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ui/org.eclipse.pde.core/pom.xml b/ui/org.eclipse.pde.core/pom.xml
index 58cbc6f..0c0442b 100644
--- a/ui/org.eclipse.pde.core/pom.xml
+++ b/ui/org.eclipse.pde.core/pom.xml
@@ -15,7 +15,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ui/org.eclipse.pde.genericeditor.extension/pom.xml b/ui/org.eclipse.pde.genericeditor.extension/pom.xml
index 98f76aa..1d937ff 100644
--- a/ui/org.eclipse.pde.genericeditor.extension/pom.xml
+++ b/ui/org.eclipse.pde.genericeditor.extension/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde.ui</groupId>
diff --git a/ui/org.eclipse.pde.junit.runtime/pom.xml b/ui/org.eclipse.pde.junit.runtime/pom.xml
index bea4b9c..848ec9b 100644
--- a/ui/org.eclipse.pde.junit.runtime/pom.xml
+++ b/ui/org.eclipse.pde.junit.runtime/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ui/org.eclipse.pde.launching/pom.xml b/ui/org.eclipse.pde.launching/pom.xml
index d2a3456..15079f6 100644
--- a/ui/org.eclipse.pde.launching/pom.xml
+++ b/ui/org.eclipse.pde.launching/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ui/org.eclipse.pde.runtime/pom.xml b/ui/org.eclipse.pde.runtime/pom.xml
index a0aa311..ffd6c06 100644
--- a/ui/org.eclipse.pde.runtime/pom.xml
+++ b/ui/org.eclipse.pde.runtime/pom.xml
@@ -15,7 +15,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ui/org.eclipse.pde.ui.templates/pom.xml b/ui/org.eclipse.pde.ui.templates/pom.xml
index ece24b0..99ca47b 100644
--- a/ui/org.eclipse.pde.ui.templates/pom.xml
+++ b/ui/org.eclipse.pde.ui.templates/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ui/org.eclipse.pde.ui.tests/pom.xml b/ui/org.eclipse.pde.ui.tests/pom.xml
index d792e70..0603b37 100644
--- a/ui/org.eclipse.pde.ui.tests/pom.xml
+++ b/ui/org.eclipse.pde.ui.tests/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>tests-pom</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../tests-pom/</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ui/org.eclipse.pde.ui/pom.xml b/ui/org.eclipse.pde.ui/pom.xml
index 5d26187..b051786 100644
--- a/ui/org.eclipse.pde.ui/pom.xml
+++ b/ui/org.eclipse.pde.ui/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/PDEUIMessages.java b/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/PDEUIMessages.java
index 51c8b31..ad1779b 100644
--- a/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/PDEUIMessages.java
+++ b/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/PDEUIMessages.java
@@ -145,6 +145,8 @@
 	public static String PDECompilersConfigurationBlock_settings_changed_all;
 	public static String PDECompilersConfigurationBlock_usage;
 	public static String PDECompilersConfigurationBlock_build;
+	public static String PDECompilersConfigurationBlock_buildButtonLabel;
+	public static String PDECompilersConfigurationBlock_dontBuildButtonLabel;
 
 	public static String PDEWizardNewFileCreationPage_errorMsgStartsWithDot;
 
diff --git a/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/correction/ConfigureProblemSeverityForPDECompilerResolution.java b/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/correction/ConfigureProblemSeverityForPDECompilerResolution.java
index 7a4b1dd..bf8fa44 100644
--- a/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/correction/ConfigureProblemSeverityForPDECompilerResolution.java
+++ b/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/correction/ConfigureProblemSeverityForPDECompilerResolution.java
@@ -36,11 +36,12 @@
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.graphics.Point;
 import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.IMarkerResolutionRelevance;
 import org.eclipse.ui.PlatformUI;
 import org.eclipse.ui.dialogs.PreferencesUtil;
 
 public class ConfigureProblemSeverityForPDECompilerResolution extends AbstractManifestMarkerResolution
-		implements IJavaCompletionProposal {
+		implements IJavaCompletionProposal, IMarkerResolutionRelevance {
 	private static final String CONFIGURE_PROBLEM_SEVERITY_DIALOG_ID = "configure_problem_severity_dialog_id_compiler"; //$NON-NLS-1$
 	IMarker marker = null;
 	String id = ""; //$NON-NLS-1$
@@ -191,4 +192,9 @@
 		return -1;
 	}
 
+	@Override
+	public int getRelevanceForResolution() {
+		return -1;
+	}
+
 }
diff --git a/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/pderesources.properties b/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/pderesources.properties
index bc1513f..ee88ca1 100644
--- a/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/pderesources.properties
+++ b/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/pderesources.properties
@@ -77,6 +77,8 @@
 PDECompilersConfigurationBlock_settings_changed_all=Compiler settings have changed. A full build is required for the changes to take effect.\n\nDo a full build now?
 PDECompilersConfigurationBlock_usage=Usage
 PDECompilersConfigurationBlock_build=Build
+PDECompilersConfigurationBlock_buildButtonLabel=&Build
+PDECompilersConfigurationBlock_dontBuildButtonLabel=&Not now
 PDEMultiPageContentOutline_SortingAction_label = Sort
 PDEMultiPageContentOutline_SortingAction_tooltip = Sort
 PDEMultiPageContentOutline_SortingAction_description = Sorts elements in the outline
diff --git a/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/preferences/PDECompilersConfigurationBlock.java b/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/preferences/PDECompilersConfigurationBlock.java
index eef1d33..b9f032c 100644
--- a/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/preferences/PDECompilersConfigurationBlock.java
+++ b/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/preferences/PDECompilersConfigurationBlock.java
@@ -24,6 +24,7 @@
 import org.eclipse.jface.dialogs.IDialogSettings;
 import org.eclipse.jface.dialogs.MessageDialog;
 import org.eclipse.jface.resource.JFaceResources;
+import org.eclipse.jface.window.Window;
 import org.eclipse.pde.internal.core.PDECore;
 import org.eclipse.pde.internal.core.builders.CompilerFlags;
 import org.eclipse.pde.internal.core.natures.PDE;
@@ -773,7 +774,11 @@
 						if (fProject != null) {
 							message = MessageFormat.format(PDEUIMessages.PDECompilersConfigurationBlock_setting_changed_project, fProject.getName());
 						}
-						if (MessageDialog.openQuestion(fParent.getShell(), PDEUIMessages.PDECompilersConfigurationBlock_settings_changed, message)) {
+						int open = MessageDialog.open(MessageDialog.QUESTION, fParent.getShell(),
+								PDEUIMessages.PDECompilersConfigurationBlock_settings_changed, message, SWT.NONE,
+								PDEUIMessages.PDECompilersConfigurationBlock_buildButtonLabel,
+								PDEUIMessages.PDECompilersConfigurationBlock_dontBuildButtonLabel);
+						if (open == Window.OK) {
 							doFullBuild();
 						}
 					}
diff --git a/ui/org.eclipse.pde/pom.xml b/ui/org.eclipse.pde/pom.xml
index 6bd0cbf..10c7867 100644
--- a/ui/org.eclipse.pde/pom.xml
+++ b/ui/org.eclipse.pde/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ui/org.eclipse.tools.layout.spy/pom.xml b/ui/org.eclipse.tools.layout.spy/pom.xml
index 3f14ddd..706f52d 100644
--- a/ui/org.eclipse.tools.layout.spy/pom.xml
+++ b/ui/org.eclipse.tools.layout.spy/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.pde</groupId>
diff --git a/ui/org.eclipse.ui.trace/pom.xml b/ui/org.eclipse.ui.trace/pom.xml
index dc82e6f..06c4922 100644
--- a/ui/org.eclipse.ui.trace/pom.xml
+++ b/ui/org.eclipse.ui.trace/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.ui</groupId>
diff --git a/ui/org.eclipse.ui.views.log/pom.xml b/ui/org.eclipse.ui.views.log/pom.xml
index db81e3b..29c275f 100644
--- a/ui/org.eclipse.ui.views.log/pom.xml
+++ b/ui/org.eclipse.ui.views.log/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <artifactId>eclipse.pde.ui</artifactId>
     <groupId>eclipse.pde.ui</groupId>
-    <version>4.7.0-SNAPSHOT</version>
+    <version>4.7.1-SNAPSHOT</version>
     <relativePath>../../</relativePath>
   </parent>
   <groupId>org.eclipse.ui</groupId>