Moved to GitHub
diff --git a/CONTRIBUTING b/CONTRIBUTING
deleted file mode 100644
index 8be8ef1..0000000
--- a/CONTRIBUTING
+++ /dev/null
@@ -1,71 +0,0 @@
-# Contributing to Eclipse Platform
-
-Thanks for your interest in this project.
-
-## Project description
-
-Eclipse Platform defines the set of frameworks and common services that
-collectively make up infrastructure required to support the use of Eclipse as a
-component model, as a Rich Client Platform (RCP) and as a comprehensive tool
-integration platform. These services and frameworks include a standard workbench
-user interface model and portable native widget toolkit, a project model for
-managing resources, automatic resource delta management for incremental
-compilers and builders, language-independent debug infrastructure, and
-infrastructure for distributed multi-user versioned resource management.
-
-* https://projects.eclipse.org/projects/eclipse.platform
-
-## Developer resources
-
-Information regarding source code management, builds, coding standards, and
-more.
-
-* https://projects.eclipse.org/projects/eclipse.platform/developer
-
-The project maintains the following source code repositories
-
-* http://git.eclipse.org/c/platform/eclipse.platform.common.git
-* http://git.eclipse.org/c/platform/eclipse.platform.debug.git
-* http://git.eclipse.org/c/platform/eclipse.platform.git
-* http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git
-* http://git.eclipse.org/c/platform/eclipse.platform.releng.buildtools.git
-* http://git.eclipse.org/c/platform/eclipse.platform.releng.git
-* http://git.eclipse.org/c/platform/eclipse.platform.resources.git
-* http://git.eclipse.org/c/platform/eclipse.platform.runtime.git
-* http://git.eclipse.org/c/platform/eclipse.platform.swt.git
-* http://git.eclipse.org/c/platform/eclipse.platform.swt.binaries.git
-* http://git.eclipse.org/c/platform/eclipse.platform.team.git
-* http://git.eclipse.org/c/platform/eclipse.platform.text.git
-* http://git.eclipse.org/c/platform/eclipse.platform.ua.git
-* http://git.eclipse.org/c/platform/eclipse.platform.ui.git
-* http://git.eclipse.org/c/platform/eclipse.platform.ui.tools.git
-
-This project uses Bugzilla to track ongoing development and issues.
-
-* Search for issues: https://eclipse.org/bugs/buglist.cgi?product=Platform
-* Create a new report: https://eclipse.org/bugs/enter_bug.cgi?product=Platform
-
-Be sure to search for existing bugs before you create another one. Remember that
-contributions are always welcome!
-
-## Eclipse Contributor Agreement
-
-Before your contribution can be accepted by the project team contributors must
-electronically sign the Eclipse Contributor Agreement (ECA).
-
-* http://www.eclipse.org/legal/ECA.php
-
-Commits that are provided by non-committers must have a Signed-off-by field in
-the footer indicating that the author is aware of the terms by which the
-contribution has been provided to the project. The non-committer must
-additionally have an Eclipse Foundation account and must have a signed Eclipse
-Contributor Agreement (ECA) on file.
-
-For more information, please see the Eclipse Committer Handbook:
-https://www.eclipse.org/projects/handbook/#resources-commit
-
-## Contact
-
-Contact the project developers via the project's "dev" list.
-
-* https://dev.eclipse.org/mailman/listinfo/platform-dev
\ No newline at end of file
diff --git a/Jenkinsfile b/Jenkinsfile
deleted file mode 100644
index 6afed45..0000000
--- a/Jenkinsfile
+++ /dev/null
@@ -1,44 +0,0 @@
-pipeline {
-	options {
-		timeout(time: 40, unit: 'MINUTES')
-		buildDiscarder(logRotator(numToKeepStr:'5'))
-	}
-	agent {
-		label "centos-latest"
-	}
-	tools {
-		maven 'apache-maven-latest'
-		jdk 'openjdk-jdk11-latest'
-	}
-	stages {
-		stage('Build') {
-			steps {
-				wrap([$class: 'Xvnc', useXauthority: true]) {
-					sh """
-					mvn clean verify --batch-mode --fail-at-end -Dmaven.repo.local=$WORKSPACE/.m2/repository \
-						-Pbuild-individual-bundles -Pbree-libs -Papi-check \
-						-DskipTests=false -Dcompare-version-with-baselines.skip=false \
-						-Dmaven.test.error.ignore=true -Dmaven.test.failure.ignore=true \
-						-Dmaven.compiler.failOnWarning=true -Dproject.build.sourceEncoding=UTF-8 
-					"""
-				}
-			}
-			post {
-				always {
-					archiveArtifacts artifacts: '.*log,*/target/work/data/.metadata/.*log,*/tests/target/work/data/.metadata/.*log,apiAnalyzer-workspace/.metadata/.*log', allowEmptyArchive: true
-					junit '**/target/surefire-reports/TEST-*.xml'
-					publishIssues issues:[scanForIssues(tool: java()), scanForIssues(tool: mavenConsole())]
-				}
-			}
-		}
-		stage('Check freeze period') {
-			steps {
-				sh "wget https://raw.githubusercontent.com/eclipse-platform/eclipse.platform.releng.aggregator/master/scripts/verifyFreezePeriod.sh"
-				sh "chmod +x verifyFreezePeriod.sh"
-				withCredentials([string(credentialsId: 'google-api-key', variable: 'GOOGLE_API_KEY')]) {
-					sh './verifyFreezePeriod.sh'
-				}
-			}
-		}
-	}
-}
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index e23ece2..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,277 +0,0 @@
-Eclipse Public License - v 2.0
-
-    THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
-    PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION
-    OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
-
-1. DEFINITIONS
-
-"Contribution" means:
-
-  a) in the case of the initial Contributor, the initial content
-     Distributed under this Agreement, and
-
-  b) in the case of each subsequent Contributor:
-     i) changes to the Program, and
-     ii) additions to the Program;
-  where such changes and/or additions to the Program originate from
-  and are Distributed by that particular Contributor. A Contribution
-  "originates" from a Contributor if it was added to the Program by
-  such Contributor itself or anyone acting on such Contributor's behalf.
-  Contributions do not include changes or additions to the Program that
-  are not Modified Works.
-
-"Contributor" means any person or entity that Distributes the Program.
-
-"Licensed Patents" mean patent claims licensable by a Contributor which
-are necessarily infringed by the use or sale of its Contribution alone
-or when combined with the Program.
-
-"Program" means the Contributions Distributed in accordance with this
-Agreement.
-
-"Recipient" means anyone who receives the Program under this Agreement
-or any Secondary License (as applicable), including Contributors.
-
-"Derivative Works" shall mean any work, whether in Source Code or other
-form, that is based on (or derived from) the Program and for which the
-editorial revisions, annotations, elaborations, or other modifications
-represent, as a whole, an original work of authorship.
-
-"Modified Works" shall mean any work in Source Code or other form that
-results from an addition to, deletion from, or modification of the
-contents of the Program, including, for purposes of clarity any new file
-in Source Code form that contains any contents of the Program. Modified
-Works shall not include works that contain only declarations,
-interfaces, types, classes, structures, or files of the Program solely
-in each case in order to link to, bind by name, or subclass the Program
-or Modified Works thereof.
-
-"Distribute" means the acts of a) distributing or b) making available
-in any manner that enables the transfer of a copy.
-
-"Source Code" means the form of a Program preferred for making
-modifications, including but not limited to software source code,
-documentation source, and configuration files.
-
-"Secondary License" means either the GNU General Public License,
-Version 2.0, or any later versions of that license, including any
-exceptions or additional permissions as identified by the initial
-Contributor.
-
-2. GRANT OF RIGHTS
-
-  a) Subject to the terms of this Agreement, each Contributor hereby
-  grants Recipient a non-exclusive, worldwide, royalty-free copyright
-  license to reproduce, prepare Derivative Works of, publicly display,
-  publicly perform, Distribute and sublicense the Contribution of such
-  Contributor, if any, and such Derivative Works.
-
-  b) Subject to the terms of this Agreement, each Contributor hereby
-  grants Recipient a non-exclusive, worldwide, royalty-free patent
-  license under Licensed Patents to make, use, sell, offer to sell,
-  import and otherwise transfer the Contribution of such Contributor,
-  if any, in Source Code or other form. This patent license shall
-  apply to the combination of the Contribution and the Program if, at
-  the time the Contribution is added by the Contributor, such addition
-  of the Contribution causes such combination to be covered by the
-  Licensed Patents. The patent license shall not apply to any other
-  combinations which include the Contribution. No hardware per se is
-  licensed hereunder.
-
-  c) Recipient understands that although each Contributor grants the
-  licenses to its Contributions set forth herein, no assurances are
-  provided by any Contributor that the Program does not infringe the
-  patent or other intellectual property rights of any other entity.
-  Each Contributor disclaims any liability to Recipient for claims
-  brought by any other entity based on infringement of intellectual
-  property rights or otherwise. As a condition to exercising the
-  rights and licenses granted hereunder, each Recipient hereby
-  assumes sole responsibility to secure any other intellectual
-  property rights needed, if any. For example, if a third party
-  patent license is required to allow Recipient to Distribute the
-  Program, it is Recipient's responsibility to acquire that license
-  before distributing the Program.
-
-  d) Each Contributor represents that to its knowledge it has
-  sufficient copyright rights in its Contribution, if any, to grant
-  the copyright license set forth in this Agreement.
-
-  e) Notwithstanding the terms of any Secondary License, no
-  Contributor makes additional grants to any Recipient (other than
-  those set forth in this Agreement) as a result of such Recipient's
-  receipt of the Program under the terms of a Secondary License
-  (if permitted under the terms of Section 3).
-
-3. REQUIREMENTS
-
-3.1 If a Contributor Distributes the Program in any form, then:
-
-  a) the Program must also be made available as Source Code, in
-  accordance with section 3.2, and the Contributor must accompany
-  the Program with a statement that the Source Code for the Program
-  is available under this Agreement, and informs Recipients how to
-  obtain it in a reasonable manner on or through a medium customarily
-  used for software exchange; and
-
-  b) the Contributor may Distribute the Program under a license
-  different than this Agreement, provided that such license:
-     i) effectively disclaims on behalf of all other Contributors all
-     warranties and conditions, express and implied, including
-     warranties or conditions of title and non-infringement, and
-     implied warranties or conditions of merchantability and fitness
-     for a particular purpose;
-
-     ii) effectively excludes on behalf of all other Contributors all
-     liability for damages, including direct, indirect, special,
-     incidental and consequential damages, such as lost profits;
-
-     iii) does not attempt to limit or alter the recipients' rights
-     in the Source Code under section 3.2; and
-
-     iv) requires any subsequent distribution of the Program by any
-     party to be under a license that satisfies the requirements
-     of this section 3.
-
-3.2 When the Program is Distributed as Source Code:
-
-  a) it must be made available under this Agreement, or if the
-  Program (i) is combined with other material in a separate file or
-  files made available under a Secondary License, and (ii) the initial
-  Contributor attached to the Source Code the notice described in
-  Exhibit A of this Agreement, then the Program may be made available
-  under the terms of such Secondary Licenses, and
-
-  b) a copy of this Agreement must be included with each copy of
-  the Program.
-
-3.3 Contributors may not remove or alter any copyright, patent,
-trademark, attribution notices, disclaimers of warranty, or limitations
-of liability ("notices") contained within the Program from any copy of
-the Program which they Distribute, provided that Contributors may add
-their own appropriate notices.
-
-4. COMMERCIAL DISTRIBUTION
-
-Commercial distributors of software may accept certain responsibilities
-with respect to end users, business partners and the like. While this
-license is intended to facilitate the commercial use of the Program,
-the Contributor who includes the Program in a commercial product
-offering should do so in a manner which does not create potential
-liability for other Contributors. Therefore, if a Contributor includes
-the Program in a commercial product offering, such Contributor
-("Commercial Contributor") hereby agrees to defend and indemnify every
-other Contributor ("Indemnified Contributor") against any losses,
-damages and costs (collectively "Losses") arising from claims, lawsuits
-and other legal actions brought by a third party against the Indemnified
-Contributor to the extent caused by the acts or omissions of such
-Commercial Contributor in connection with its distribution of the Program
-in a commercial product offering. The obligations in this section do not
-apply to any claims or Losses relating to any actual or alleged
-intellectual property infringement. In order to qualify, an Indemnified
-Contributor must: a) promptly notify the Commercial Contributor in
-writing of such claim, and b) allow the Commercial Contributor to control,
-and cooperate with the Commercial Contributor in, the defense and any
-related settlement negotiations. The Indemnified Contributor may
-participate in any such claim at its own expense.
-
-For example, a Contributor might include the Program in a commercial
-product offering, Product X. That Contributor is then a Commercial
-Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance
-claims and warranties are such Commercial Contributor's responsibility
-alone. Under this section, the Commercial Contributor would have to
-defend claims against the other Contributors related to those performance
-claims and warranties, and if a court requires any other Contributor to
-pay any damages as a result, the Commercial Contributor must pay
-those damages.
-
-5. NO WARRANTY
-
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT
-PERMITTED BY APPLICABLE LAW, THE PROGRAM IS PROVIDED ON AN "AS IS"
-BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR
-IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF
-TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR
-PURPOSE. Each Recipient is solely responsible for determining the
-appropriateness of using and distributing the Program and assumes all
-risks associated with its exercise of rights under this Agreement,
-including but not limited to the risks and costs of program errors,
-compliance with applicable laws, damage to or loss of data, programs
-or equipment, and unavailability or interruption of operations.
-
-6. DISCLAIMER OF LIABILITY
-
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT
-PERMITTED BY APPLICABLE LAW, NEITHER RECIPIENT NOR ANY CONTRIBUTORS
-SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST
-PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE
-EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-7. GENERAL
-
-If any provision of this Agreement is invalid or unenforceable under
-applicable law, it shall not affect the validity or enforceability of
-the remainder of the terms of this Agreement, and without further
-action by the parties hereto, such provision shall be reformed to the
-minimum extent necessary to make such provision valid and enforceable.
-
-If Recipient institutes patent litigation against any entity
-(including a cross-claim or counterclaim in a lawsuit) alleging that the
-Program itself (excluding combinations of the Program with other software
-or hardware) infringes such Recipient's patent(s), then such Recipient's
-rights granted under Section 2(b) shall terminate as of the date such
-litigation is filed.
-
-All Recipient's rights under this Agreement shall terminate if it
-fails to comply with any of the material terms or conditions of this
-Agreement and does not cure such failure in a reasonable period of
-time after becoming aware of such noncompliance. If all Recipient's
-rights under this Agreement terminate, Recipient agrees to cease use
-and distribution of the Program as soon as reasonably practicable.
-However, Recipient's obligations under this Agreement and any licenses
-granted by Recipient relating to the Program shall continue and survive.
-
-Everyone is permitted to copy and distribute copies of this Agreement,
-but in order to avoid inconsistency the Agreement is copyrighted and
-may only be modified in the following manner. The Agreement Steward
-reserves the right to publish new versions (including revisions) of
-this Agreement from time to time. No one other than the Agreement
-Steward has the right to modify this Agreement. The Eclipse Foundation
-is the initial Agreement Steward. The Eclipse Foundation may assign the
-responsibility to serve as the Agreement Steward to a suitable separate
-entity. Each new version of the Agreement will be given a distinguishing
-version number. The Program (including Contributions) may always be
-Distributed subject to the version of the Agreement under which it was
-received. In addition, after a new version of the Agreement is published,
-Contributor may elect to Distribute the Program (including its
-Contributions) under the new version.
-
-Except as expressly stated in Sections 2(a) and 2(b) above, Recipient
-receives no rights or licenses to the intellectual property of any
-Contributor under this Agreement, whether expressly, by implication,
-estoppel or otherwise. All rights in the Program not expressly granted
-under this Agreement are reserved. Nothing in this Agreement is intended
-to be enforceable by any entity that is not a Contributor or Recipient.
-No third-party beneficiary rights are created under this Agreement.
-
-Exhibit A - Form of Secondary Licenses Notice
-
-"This Source Code may also be made available under the following 
-Secondary Licenses when the conditions for such availability set forth 
-in the Eclipse Public License, v. 2.0 are satisfied: {name license(s),
-version(s), and exceptions or additional permissions here}."
-
-  Simply including a copy of this Agreement, including this Exhibit A
-  is not sufficient to license the Source Code under Secondary Licenses.
-
-  If it is not possible or desirable to put the notice in a particular
-  file, then You may include the notice in a location (such as a LICENSE
-  file in a relevant directory) where a recipient would be likely to
-  look for such a notice.
-
-  You may add additional accurate notices of copyright ownership.
\ No newline at end of file
diff --git a/MOVED_TO_GITHUB.md b/MOVED_TO_GITHUB.md
new file mode 100644
index 0000000..c2aa333
--- /dev/null
+++ b/MOVED_TO_GITHUB.md
@@ -0,0 +1 @@
+This repository is now moved to GitHub: https://github.com/eclipse-platform/eclipse.platform.releng
diff --git a/NOTICE b/NOTICE
deleted file mode 100644
index f906f8b..0000000
--- a/NOTICE
+++ /dev/null
@@ -1,43 +0,0 @@
-# Notices for Eclipse Platform
-
-This content is produced and maintained by the Eclipse Platform project.
-
-* Project home: https://projects.eclipse.org/projects/eclipse.platform
-
-## Trademarks
-
-Eclipse Platform is a trademark of the Eclipse Foundation.
-
-## Copyright
-
-All content is the property of the respective authors or their employers. For
-more information regarding authorship of content, please consult the listed
-source code repository logs.
-
-## Declared Project Licenses
-
-This program and the accompanying materials are made available under the terms
-of the Eclipse Public License v. 2.0 which is available at
-http://www.eclipse.org/legal/epl-2.0.
-
-SPDX-License-Identifier: EPL-2.0
-
-## Source Code
-
-The project maintains the following source code repositories:
-
-* http://git.eclipse.org/c/platform/eclipse.platform.common.git
-* http://git.eclipse.org/c/platform/eclipse.platform.debug.git
-* http://git.eclipse.org/c/platform/eclipse.platform.git
-* http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git
-* http://git.eclipse.org/c/platform/eclipse.platform.releng.buildtools.git
-* http://git.eclipse.org/c/platform/eclipse.platform.releng.git
-* http://git.eclipse.org/c/platform/eclipse.platform.resources.git
-* http://git.eclipse.org/c/platform/eclipse.platform.runtime.git
-* http://git.eclipse.org/c/platform/eclipse.platform.swt.git
-* http://git.eclipse.org/c/platform/eclipse.platform.swt.binaries.git
-* http://git.eclipse.org/c/platform/eclipse.platform.team.git
-* http://git.eclipse.org/c/platform/eclipse.platform.text.git
-* http://git.eclipse.org/c/platform/eclipse.platform.ua.git
-* http://git.eclipse.org/c/platform/eclipse.platform.ui.git
-* http://git.eclipse.org/c/platform/eclipse.platform.ui.tools.git
\ No newline at end of file
diff --git a/bundles/org.eclipse.ant.optional.junit/.project b/bundles/org.eclipse.ant.optional.junit/.project
deleted file mode 100644
index a778bdc..0000000
--- a/bundles/org.eclipse.ant.optional.junit/.project
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.ant.optional.junit</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.ant.optional.junit/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.ant.optional.junit/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.ant.optional.junit/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.ant.optional.junit/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.ant.optional.junit/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.ant.optional.junit/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.ant.optional.junit/META-INF/MANIFEST.MF b/bundles/org.eclipse.ant.optional.junit/META-INF/MANIFEST.MF
deleted file mode 100644
index 2552633..0000000
--- a/bundles/org.eclipse.ant.optional.junit/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,10 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-Description: %Bundle-Description
-Bundle-SymbolicName: org.eclipse.ant.optional.junit
-Bundle-Version: 3.3.300.qualifier
-Bundle-Vendor: %providerName
-Fragment-Host: org.apache.ant;bundle-version="[1.6.5,2.0.0)"
-Bundle-Localization: plugin
-Require-Bundle: org.junit
diff --git a/bundles/org.eclipse.ant.optional.junit/about.html b/bundles/org.eclipse.ant.optional.junit/about.html
deleted file mode 100644
index 164f781..0000000
--- a/bundles/org.eclipse.ant.optional.junit/about.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>About</title>
-</head>
-<body lang="EN-US">
-	<h2>About This Content</h2>
-
-	<p>November 30, 2017</p>
-	<h3>License</h3>
-
-	<p>
-		The Eclipse Foundation makes available all content in this plug-in
-		(&quot;Content&quot;). Unless otherwise indicated below, the Content
-		is provided to you under the terms and conditions of the Eclipse
-		Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
-		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
-		For purposes of the EPL, &quot;Program&quot; will mean the Content.
-	</p>
-
-	<p>
-		If you did not receive this Content directly from the Eclipse
-		Foundation, the Content is being redistributed by another party
-		(&quot;Redistributor&quot;) and different terms and conditions may
-		apply to your use of any object code in the Content. Check the
-		Redistributor's license that was provided with the Content. If no such
-		license exists, contact the Redistributor. Unless otherwise indicated
-		below, the terms and conditions of the EPL still apply to any source
-		code in the Content and such source code may be obtained at <a
-			href="http://www.eclipse.org/">http://www.eclipse.org</a>.
-	</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.ant.optional.junit/build.properties b/bundles/org.eclipse.ant.optional.junit/build.properties
deleted file mode 100644
index c4f96a8..0000000
--- a/bundles/org.eclipse.ant.optional.junit/build.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2016 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = about.html,\
-               META-INF/,\
-               plugin.properties
-src.includes = about.html
diff --git a/bundles/org.eclipse.ant.optional.junit/forceQualifierUpdate.txt b/bundles/org.eclipse.ant.optional.junit/forceQualifierUpdate.txt
deleted file mode 100644
index 56f1032..0000000
--- a/bundles/org.eclipse.ant.optional.junit/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
diff --git a/bundles/org.eclipse.ant.optional.junit/plugin.properties b/bundles/org.eclipse.ant.optional.junit/plugin.properties
deleted file mode 100644
index 338e93d..0000000
--- a/bundles/org.eclipse.ant.optional.junit/plugin.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2016 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-pluginName=Eclipse JUnit Fragment for Ant used in Eclipse Test Framework
-providerName=Eclipse.org
-Bundle-Description = This fragment is required by the Eclipse Test Framework. It allows communication between JUnit and Ant.
\ No newline at end of file
diff --git a/bundles/org.eclipse.ant.optional.junit/pom.xml b/bundles/org.eclipse.ant.optional.junit/pom.xml
deleted file mode 100644
index 1b3973f..0000000
--- a/bundles/org.eclipse.ant.optional.junit/pom.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012 Eclipse Foundation.
-  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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.ant</groupId>
-  <artifactId>org.eclipse.ant.optional.junit</artifactId>
-  <version>3.3.300-SNAPSHOT</version>
-  <packaging>eclipse-plugin</packaging>
-</project>
diff --git a/bundles/org.eclipse.rcp/.project b/bundles/org.eclipse.rcp/.project
deleted file mode 100644
index 96f8077..0000000
--- a/bundles/org.eclipse.rcp/.project
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.rcp</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.rcp/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.rcp/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.rcp/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.rcp/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.rcp/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.rcp/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.rcp/META-INF/MANIFEST.MF b/bundles/org.eclipse.rcp/META-INF/MANIFEST.MF
deleted file mode 100644
index e42589a..0000000
--- a/bundles/org.eclipse.rcp/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.rcp; singleton:=true
-Bundle-Version: 4.23.0.qualifier
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Bundle-ActivationPolicy: lazy
diff --git a/bundles/org.eclipse.rcp/about.html b/bundles/org.eclipse.rcp/about.html
deleted file mode 100644
index 164f781..0000000
--- a/bundles/org.eclipse.rcp/about.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>About</title>
-</head>
-<body lang="EN-US">
-	<h2>About This Content</h2>
-
-	<p>November 30, 2017</p>
-	<h3>License</h3>
-
-	<p>
-		The Eclipse Foundation makes available all content in this plug-in
-		(&quot;Content&quot;). Unless otherwise indicated below, the Content
-		is provided to you under the terms and conditions of the Eclipse
-		Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
-		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
-		For purposes of the EPL, &quot;Program&quot; will mean the Content.
-	</p>
-
-	<p>
-		If you did not receive this Content directly from the Eclipse
-		Foundation, the Content is being redistributed by another party
-		(&quot;Redistributor&quot;) and different terms and conditions may
-		apply to your use of any object code in the Content. Check the
-		Redistributor's license that was provided with the Content. If no such
-		license exists, contact the Redistributor. Unless otherwise indicated
-		below, the terms and conditions of the EPL still apply to any source
-		code in the Content and such source code may be obtained at <a
-			href="http://www.eclipse.org/">http://www.eclipse.org</a>.
-	</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.rcp/about.ini b/bundles/org.eclipse.rcp/about.ini
deleted file mode 100644
index 76a0356..0000000
--- a/bundles/org.eclipse.rcp/about.ini
+++ /dev/null
@@ -1,27 +0,0 @@
-# about.ini
-# contains information about a feature
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# "%key" are externalized strings defined in about.properties
-# This file does not need to be translated.
-
-# Property "aboutText" contains blurb for "About" dialog (translated)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=eclipse32.png
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (not translated)
-# needed for primary features only
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
-
-# Property "tipsAndTricksHref" contains the Help topic href to a tips and tricks page 
-# optional
diff --git a/bundles/org.eclipse.rcp/about.mappings b/bundles/org.eclipse.rcp/about.mappings
deleted file mode 100644
index 515397a..0000000
--- a/bundles/org.eclipse.rcp/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings
-# contains fill-ins for about.properties
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file does not need to be translated.
-
-0=${buildId}
diff --git a/bundles/org.eclipse.rcp/about.properties b/bundles/org.eclipse.rcp/about.properties
deleted file mode 100644
index 9f5fd16..0000000
--- a/bundles/org.eclipse.rcp/about.properties
+++ /dev/null
@@ -1,27 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2021 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-
-blurb=Eclipse RCP\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Eclipse contributors and others 2000, 2021.  All rights reserved.\n\
-Visit http://www.eclipse.org/eclipse
-
diff --git a/bundles/org.eclipse.rcp/build.properties b/bundles/org.eclipse.rcp/build.properties
deleted file mode 100644
index 849303c..0000000
--- a/bundles/org.eclipse.rcp/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2016 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = about.html,\
-               about.ini,\
-               about.mappings,\
-               about.properties,\
-               eclipse32.png,\
-               plugin.properties,\
-               META-INF/
-
diff --git a/bundles/org.eclipse.rcp/eclipse32.png b/bundles/org.eclipse.rcp/eclipse32.png
deleted file mode 100644
index bf85680..0000000
--- a/bundles/org.eclipse.rcp/eclipse32.png
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.rcp/forceQualifierUpdate.txt b/bundles/org.eclipse.rcp/forceQualifierUpdate.txt
deleted file mode 100644
index 56f1032..0000000
--- a/bundles/org.eclipse.rcp/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
diff --git a/bundles/org.eclipse.rcp/plugin.properties b/bundles/org.eclipse.rcp/plugin.properties
deleted file mode 100644
index 452d896..0000000
--- a/bundles/org.eclipse.rcp/plugin.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2016 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-pluginName=Eclipse RCP
-providerName=Eclipse.org
diff --git a/bundles/org.eclipse.rcp/pom.xml b/bundles/org.eclipse.rcp/pom.xml
deleted file mode 100644
index dcecd22..0000000
--- a/bundles/org.eclipse.rcp/pom.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012, 2016 Eclipse Foundation.
-  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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.rcp</groupId>
-  <artifactId>org.eclipse.rcp</artifactId>
-  <packaging>eclipse-plugin</packaging>
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-packaging-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <configuration>
-          <format>'v${buildTimestamp}'</format>
-        </configuration>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/bundles/org.eclipse.releng.tests/.classpath b/bundles/org.eclipse.releng.tests/.classpath
deleted file mode 100644
index 4a00bec..0000000
--- a/bundles/org.eclipse.releng.tests/.classpath
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
-		<attributes>
-			<attribute name="module" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.releng.tests/.gitignore b/bundles/org.eclipse.releng.tests/.gitignore
deleted file mode 100644
index f08c220..0000000
--- a/bundles/org.eclipse.releng.tests/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*~
-/*.jpage
diff --git a/bundles/org.eclipse.releng.tests/.project b/bundles/org.eclipse.releng.tests/.project
deleted file mode 100644
index c16d753..0000000
--- a/bundles/org.eclipse.releng.tests/.project
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.releng.tests</name>
-	<comment></comment>
-	<projects>
-		<project>org.eclipse.core.runtime</project>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.releng.tests/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.releng.tests/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.releng.tests/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.releng.tests/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.releng.tests/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.releng.tests/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.releng.tests/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.releng.tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index c444abe..0000000
--- a/bundles/org.eclipse.releng.tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,447 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=11
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=error
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=error
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=disabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=error
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=11
-org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
-org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_module_statements=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
-org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped=true
-org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=true
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=120
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_on_off_tags=false
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
-org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.incompleteClasspath=error
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/bundles/org.eclipse.releng.tests/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.releng.tests/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 00449fd..0000000
--- a/bundles/org.eclipse.releng.tests/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,62 +0,0 @@
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=org.eclipse.jdt.ui.default.eclipse_profile
-formatter_settings_version=14
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_missing_override_annotations_interface_methods=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_functional_interfaces=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=true
-sp_cleanup.format_source_code_changes_only=true
-sp_cleanup.insert_inferred_type_arguments=false
-sp_cleanup.make_local_variable_final=true
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=false
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_redundant_modifiers=true
-sp_cleanup.remove_redundant_type_arguments=true
-sp_cleanup.remove_trailing_whitespaces=true
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=false
-sp_cleanup.remove_unused_imports=false
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_anonymous_class_creation=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_lambda=true
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/bundles/org.eclipse.releng.tests/.settings/org.eclipse.wst.xml.core.prefs b/bundles/org.eclipse.releng.tests/.settings/org.eclipse.wst.xml.core.prefs
deleted file mode 100644
index c49d584..0000000
--- a/bundles/org.eclipse.releng.tests/.settings/org.eclipse.wst.xml.core.prefs
+++ /dev/null
@@ -1,18 +0,0 @@
-attributeHasNoValue=2
-eclipse.preferences.version=1
-endTagWithAttributes=2
-honourAllSchemaLocations=true
-indicateNoGrammar=-1
-indiciateNoDocumentElement=2
-markupValidation=true
-missingClosingBracket=2
-missingClosingQuote=2
-missingEndTag=2
-missingQuotes=2
-missingStartTag=2
-missingTagName=2
-namespaceInPITarget=2
-use-project-settings=true
-whitespaceAtStart=2
-whitespaceBeforeTagName=2
-xinclude=false
diff --git a/bundles/org.eclipse.releng.tests/META-INF/MANIFEST.MF b/bundles/org.eclipse.releng.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index b498cbf..0000000
--- a/bundles/org.eclipse.releng.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,15 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %Plugin.name
-Bundle-SymbolicName: org.eclipse.releng.tests;singleton:=true
-Bundle-Version: 3.5.200.qualifier
-Eclipse-BundleShape: dir
-Bundle-Vendor: %Plugin.providerName
-Bundle-Localization: plugin
-Require-Bundle: org.eclipse.core.runtime,
- org.junit,
- org.eclipse.core.resources
-Export-Package: org.eclipse.releng.tests
-Bundle-RequiredExecutionEnvironment: JavaSE-11
-Bundle-ClassPath: .
-Automatic-Module-Name: org.eclipse.releng.tests
diff --git a/bundles/org.eclipse.releng.tests/about.html b/bundles/org.eclipse.releng.tests/about.html
deleted file mode 100644
index 164f781..0000000
--- a/bundles/org.eclipse.releng.tests/about.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>About</title>
-</head>
-<body lang="EN-US">
-	<h2>About This Content</h2>
-
-	<p>November 30, 2017</p>
-	<h3>License</h3>
-
-	<p>
-		The Eclipse Foundation makes available all content in this plug-in
-		(&quot;Content&quot;). Unless otherwise indicated below, the Content
-		is provided to you under the terms and conditions of the Eclipse
-		Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
-		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
-		For purposes of the EPL, &quot;Program&quot; will mean the Content.
-	</p>
-
-	<p>
-		If you did not receive this Content directly from the Eclipse
-		Foundation, the Content is being redistributed by another party
-		(&quot;Redistributor&quot;) and different terms and conditions may
-		apply to your use of any object code in the Content. Check the
-		Redistributor's license that was provided with the Content. If no such
-		license exists, contact the Redistributor. Unless otherwise indicated
-		below, the terms and conditions of the EPL still apply to any source
-		code in the Content and such source code may be obtained at <a
-			href="http://www.eclipse.org/">http://www.eclipse.org</a>.
-	</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.tests/build.properties b/bundles/org.eclipse.releng.tests/build.properties
deleted file mode 100644
index c01f64f..0000000
--- a/bundles/org.eclipse.releng.tests/build.properties
+++ /dev/null
@@ -1,25 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2011 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = compare.properties,\
-               compareoptions.properties,\
-               META-INF/,\
-               plugin.properties,\
-               about.html,\
-               test.xml,\
-               notes.txt,\
-               ignoreErrorsUnix.txt,\
-               ignoreErrorsWindows.txt,\
-               ignoreFiles.txt,\
-               .
-source.. = src/
diff --git a/bundles/org.eclipse.releng.tests/compare.properties b/bundles/org.eclipse.releng.tests/compare.properties
deleted file mode 100644
index 3d00a1f..0000000
--- a/bundles/org.eclipse.releng.tests/compare.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 2006, 2010 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-compare.new=@new@
-compare.old=@old@
-compare.output=@output@
-compare.options=@compareoptions@
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.tests/compareoptions.properties b/bundles/org.eclipse.releng.tests/compareoptions.properties
deleted file mode 100644
index 7c43354..0000000
--- a/bundles/org.eclipse.releng.tests/compareoptions.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2011 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-exclude.plugins=org.eclipse.equinox.http.jetty,org.eclipse.equinox.http.jetty.source,com.ibm.icu,com.ibm.icu.source,org.eclipse.ui.carbon,org.eclipse.ui.carbon.source,org.eclipse.swt.gtk.solaris.x86,org.eclipse.swt.gtk.solaris.x86.source,org.eclipse.swt.gtk.linux.s390,org.eclipse.swt.gtk.linux.s390.source,org.eclipse.swt.gtk.linux.s390x,org.eclipse.swt.gtk.linux.s390x.source,org.eclipse.equinox.launcher.gtk.linux.s390,org.eclipse.equinox.launcher.gtk.linux.s390x,org.eclipse.ecf,org.eclipse.ecf.source,org.eclipse.ecf.filetransfer,org.eclipse.ecf.filetransfer.source,org.eclipse.ecf.identity,org.eclipse.ecf.identity.source,org.eclipse.ecf.provider.filetransfer,org.eclipse.ecf.provider.filetransfer.source,org.eclipse.ecf.provider.filetransfer.ssl,org.eclipse.ecf.provider.filetransfer.ssl.source,org.eclipse.ecf.provider.filetransfer.httpclient,org.eclipse.ecf.provider.filetransfer.httpclient.source,org.eclipse.ecf.provider.filetransfer.httpclient.ssl,org.eclipse.ecf.provider.filetransfer.httpclient.ssl.source,org.eclipse.ecf.ssl,org.eclipse.ecf.ssl.source,org.junit,org.junit.source,org.eclipse.equinox.launcher.gtk.linux.ppc,org.eclipse.equinox.launcher.gtk.linux.ppc.source,org.eclipse.equinox.launcher.motif.solaris.sparc,org.eclipse.equinox.launcher.gtk.hpux.ia64,org.eclipse.equinox.launcher.motif.linux.x86,org.eclipse.equinox.launcher.motif.aix.ppc,org.eclipse.equinox.launcher.gtk.hpux.ia64,org.apache.lucene.analysis,org.apache.lucene.core,org.eclipse.equinox.launcher.carbon.macosx,javax.servlet,org.eclipse.jetty.continuation,org.eclipse.jetty.continuation.source,org.eclipse.jetty.http,org.eclipse.jetty.http.source,org.eclipse.jetty.io,org.eclipse.jetty.io.source,org.eclipse.jetty.security,org.eclipse.jetty.security.source,org.eclipse.jetty.server,org.eclipse.jetty.server.source,org.eclipse.jetty.servlet,org.eclipse.jetty.servlet.source,org.eclipse.jetty.util,org.eclipse.jetty.util.source
-exclude.features=master-equinox,master-ecf,org.eclipse.pde.api.tools.ee.fragments,org.eclipse.cvs,org.eclipse.cvs.source,org.eclipse.help.source,org.eclipse.help,org.eclipse.equinox.jmx.server.feature,org.eclipse.equinox.jmx.client.feature,org.eclipse.equinox.jmx.common.feature,org.eclipse.equinox.serverside.sdk,org.eclipse.equinox.serverside.sdk,org.eclipse.equinox.sdk
diff --git a/bundles/org.eclipse.releng.tests/forceQualifierUpdate.txt b/bundles/org.eclipse.releng.tests/forceQualifierUpdate.txt
deleted file mode 100644
index 64803dd..0000000
--- a/bundles/org.eclipse.releng.tests/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
-Bug 534597 - Unanticipated comparator errors in I20180511-2000
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.tests/ignoreErrorsUnix.txt b/bundles/org.eclipse.releng.tests/ignoreErrorsUnix.txt
deleted file mode 100644
index 3b2be15..0000000
--- a/bundles/org.eclipse.releng.tests/ignoreErrorsUnix.txt
+++ /dev/null
@@ -1 +0,0 @@
-941
diff --git a/bundles/org.eclipse.releng.tests/ignoreErrorsWindows.txt b/bundles/org.eclipse.releng.tests/ignoreErrorsWindows.txt
deleted file mode 100644
index b6bb1fe..0000000
--- a/bundles/org.eclipse.releng.tests/ignoreErrorsWindows.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-127
-128
-941
diff --git a/bundles/org.eclipse.releng.tests/ignoreFiles.txt b/bundles/org.eclipse.releng.tests/ignoreFiles.txt
deleted file mode 100644
index e1d5da2..0000000
--- a/bundles/org.eclipse.releng.tests/ignoreFiles.txt
+++ /dev/null
@@ -1,114 +0,0 @@
-feature.properties
-feature.xml
-cpl*.html
-epl*.html
-license.html
-notice.html
-about.html
-pom.xml
-about_cairo.html
-*/about_files/copyright-software-19980720.htm
-*/.metadata/.cache.properties
-*/reference/api/*
-*/reference/apt/*
-*/reference/osgi/*
-*/org.apache.ant_*
-*/org.junit*
-*/xercesImpl_jar/*
-*/xercessrc_zip/*
-*/plugins/org.eclipse.ant.ui_*/lib/remoteAnt_jar/org/eclipse/ant/internal/ui/antsupport/RemoteAntMessages.properties
-*/plugins/org.eclipse.ui_*/plugin.xml
-*/plugins/org.eclipse.tomcat_*/conf/*
-*/plugins/org.eclipse.tomcat_*/catalina_jar/*
-*/plugins/org.eclipse.tomcat_*/jasper-runtime_jar/*
-*/plugins/org.eclipse.tomcat_*/tomcat-util_jar/*
-*/plugins/org.eclipse.tomcat_*/commons-digester_jar/*
-*/plugins/org.eclipse.tomcat_*/naming-common_jar/*
-*/plugins/org.eclipse.tomcat_*/naming-resources_jar/*
-*/plugins/org.eclipse.tomcat_*/servlets-common_jar/*
-*/plugins/org.eclipse.tomcat_*/tomcat-coyote_jar/*
-*/plugins/org.eclipse.tomcat_*/tomcat-http11_jar/*
-*/plugins/org.eclipse.tomcat_*/commons-beanutils_jar/*
-*/plugins/org.eclipse.tomcat_*/commons-modeler_jar/*
-*/plugins/org.eclipse.tomcat_*/jasper-runtime_jar/*
-*/plugins/org.eclipse.tomcat_*/tomcat-util_jar/*
-*/plugins/org.eclipse.tomcat_*/commons-logging_jar/*
-*/plugins/org.eclipse.tomcat_*/servlet_jar/*
-*/plugins/org.apache.lucene_*/lucene-*-src_zip/lucene-*-src/*
-*/plugins/org.apache.lucene.analysis_*/lucene-analysis-*-src_zip/*
-*/plugins/org.apache.lucene.source_*/src/*
-*/plugins/org.apache.lucene.analysis_*/source-bundle/src/*
-*/plugins/org.apache.lucene.analysis.source_*/src/*
-*/plugins/org.apache.lucene.analysis_*/source-bundle/*
-*/plugins/org.apache.lucene.analysis_*/build.xml
-*/plugins/org.apache.lucene.core.source_*/*
-*/plugins/*.source_*/plugin.xml
-*/plugins/javax.servlet.source_*/src/*
-*/plugins/javax.servlet.jsp.source_/src/*
-*/plugins/org.apache.ant.source_*/about_files/*
-*/plugins/org.apache.jasper.source_*/src/org.apache.jasper_*/src_zip/*
-*/plugins/org.eclipse.platform.source_*/src/org.apache.lucene_*/lucene-*-src_zip/lucene-*/*
-*/plugins/*source_*/src/*
-*/plugins/org.eclipse.jdt.ui_*/jdt_jar/org/eclipse/jdt/internal/corext/template/default-codetemplates.xml
-*/plugins/org.eclipse.ant.ui_*/antui_jar/anttasks_*.xml
-*/plugins/org.eclipse.ant.ui_*/antui_jar/XDOCtasks.xml
-*/plugins/org.eclipse.ant.ui_*/templates/ant.xml    
-*/plugins/org.eclipse.ant.ui_*/org/eclipse/ant/internal/ui/editor/anttasks_*.xml 
-*/plugins/org.eclipse.pde.build_*/scripts/*
-*/plugins/org.eclipse.pde.build_*/feature/*
-*/plugins/org.eclipse.pde.build_*/notes/*
-*/plugins/org.eclipse.pde.build_*/templates/*
-*/plugins/org.eclipse.pde.build_*/data/*
-*/plugins/org.eclipse.pde.ui.templates_*/templates*/help/toc.xml
-*/plugins/org.eclipse.pde.ui.templates_*/templates_*
-*/plugins/org.eclipse.pde_*/intro/*
-*/plugins/org.eclipse.help.webapp_*/WEB-INF/web.xml
-*/plugins/org.eclipse.help.webapp_*/plugin.xml
-*/plugins/org.eclipse.help.base__*/plugin.xml
-*/plugins/org.eclipse.ui.workbench_*/workbench-new_jar/scripts/exportplugin.xml
-*/plugins/org.eclipse.ui.workbench_*/texteditor-new_jar/scripts/exportplugin.xml
-*/plugins/org.eclipse.jface_*/jface-new_jar/scripts/exportplugin.xml
-*/plugins/org.eclipse.jdt_*/overviewExtensionContent.xml
-*/plugins/org.eclipse.jdt_*/samplesExtensionContent.xml
-*/plugins/org.eclipse.jdt_*/tutorialsExtensionContent.xml
-*/plugins/org.eclipse.jdt_*/cheatsheets/HelloWorld.xml
-*/plugins/org.eclipse.jdt_*/cheatsheets/HelloWorldSWT.xml
-*/plugins/org.eclipse.pde_*/overviewExtensionContent.xml
-*/plugins/org.eclipse.pde_*/tutorialsExtensionContent.xml
-*/plugins/org.eclipse.pde_*/cheatsheets/*
-*/plugins/org.eclipse.platform_*/introContent.xml
-*/plugins/org.eclipse.platform_*/cheatsheets/CVS_1.xml
-*/plugins/org.eclipse.jdt_*/newsExtensionContent.xml
-*/plugins/org.eclipse.pde_*/newsExtensionContent.xml 
-*/plugins/org.eclipse.intro_*/newsExtensionContent.xml 
-*/plugins/org.eclipse.platform.source_*/src/org.eclipse.*/component.xml
-*/plugins/org.eclipse.jdt.source_3.1.0/src/org.eclipse.*/component.xml
-*/plugins/org.eclipse.ui.intro_*/about_files/copyright-software-19980720.htm
-*/plugins/org.eclipse.jdt.debug.ui_*/plugin.xml
-*/plugins/org.eclipse.platform.doc.user_*/build.xml
-*/plugins/com.ibm.icu_*/com/ibm/icu/impl/duration/impl/data/pfd_ar_EG.xml
-*/plugins/org.eclipse.ecf.*/*
-*/plugins/org.eclipse.equinox.p2.*/plugin.xml
-*/plugins/org.eclipse.ecf*
-*/features/org.eclipse.equinox.executable*/build.xml
-*/plugins/org.eclipse.equinox.p2.*/content.xml
-*/features/org.eclipse.equinox.executable_*/motif_root/about_files/
-*/plugins/org.apache.ant_*
-*/plugins/org.apache.ant.source_*
-*/plugins/org.apache.jasper.glassfish_*
-*/plugins/org.apache.jasper.glassfish.source_*
-*/p2/org.eclipse.equinox.p2.director\rollback\*.xml
-*/plugins/javax.servlet_*
-*/plugins/javax.servlet.source_*
-*/plugins/com.sun.el_*
-*/plugins/com.sun.el.source_*
-*/plugins/org.objectweb.asm.source_*
-*/plugins/javax.servlet.jsp.source_*
-*/plugins/org.apache.lucene.analysis.source_*
-*/plugins/org.apache.lucene.source_*
-*/plugins/org.apache.commons.codec_*
-*/plugins/org.apache.commons.codec.source_*
-*/plugins/org.apache.commons.httpclient.source_*
-*/plugins/org.hamcrest.core.source_*
-*/eclipse/p2/org.eclipse.equinox.p2.metadata.repository/cache/content*_jar/content.xml
-*/eclipse/artifacts.xml
diff --git a/bundles/org.eclipse.releng.tests/miscTests.jpage b/bundles/org.eclipse.releng.tests/miscTests.jpage
deleted file mode 100644
index 4b95b6f..0000000
--- a/bundles/org.eclipse.releng.tests/miscTests.jpage
+++ /dev/null
@@ -1,3 +0,0 @@
-Integer.MAX_VALUE / (1024*1024)
-(int) 2047
-(int) 2097151
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.tests/notes.txt b/bundles/org.eclipse.releng.tests/notes.txt
deleted file mode 100644
index 617f3e9..0000000
--- a/bundles/org.eclipse.releng.tests/notes.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-In order for the testChkpii automated test to run you must have
-the correct version of the internal IBM chkpii tools on your
-path and the file must be called chkpw1402.exe
-
-Also, in Unix system chkpii chokes if you have errors 127 and 128
-in your ignoreErrors.txt file
-
-Also, you must use the correct platform file seperator in the
-ignoreFiles.txt.
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.tests/plugin.properties b/bundles/org.eclipse.releng.tests/plugin.properties
deleted file mode 100644
index 1670e2c..0000000
--- a/bundles/org.eclipse.releng.tests/plugin.properties
+++ /dev/null
@@ -1,24 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2011 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-Plugin.name= Eclipse Releng Tests
-Plugin.providerName= Eclipse.org
-TestLabelDecorator.label= JDT UI Test Decorator
-TestLightweightLabelDecorator.label= JDT UI Test Lightweight Decorator
-
-AddTestMarkersAction.label= Add Test Markers
-AddTestMarkersAction.tooltip= Add Test Markers
-
-exampleQuickFixProcessor.name= Example Quick Fix Processor
-exampleQuickAssistProcessor.name= Example Quick Assist Processor
diff --git a/bundles/org.eclipse.releng.tests/pom.xml b/bundles/org.eclipse.releng.tests/pom.xml
deleted file mode 100644
index 8ef42cb..0000000
--- a/bundles/org.eclipse.releng.tests/pom.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012, 2019 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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
-     Lars Vogel <Lars.Vogel@vogella.com> - Bug 485612
-     Paul Pazderski - Bug 546468: Enable releng tools tests on automatic builds
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.releng</groupId>
-  <artifactId>org.eclipse.releng.tests</artifactId>
-  <version>3.5.200-SNAPSHOT</version>
-  <packaging>eclipse-test-plugin</packaging>
-  <properties>
-    <code.ignoredWarnings>${tests.ignoredWarnings}</code.ignoredWarnings>
-    <testSuite>${project.artifactId}</testSuite>
-    <skipTests>true</skipTests>
-  </properties>
-</project>
diff --git a/bundles/org.eclipse.releng.tests/src/org/eclipse/releng/tests/BuildTests.java b/bundles/org.eclipse.releng.tests/src/org/eclipse/releng/tests/BuildTests.java
deleted file mode 100644
index fb09bbf..0000000
--- a/bundles/org.eclipse.releng.tests/src/org/eclipse/releng/tests/BuildTests.java
+++ /dev/null
@@ -1,768 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2022 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tests;
-
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-import static org.junit.Assume.assumeFalse;
-
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FilenameFilter;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.net.URL;
-import java.net.URLConnection;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Enumeration;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipFile;
-
-import org.eclipse.core.runtime.Platform;
-import org.junit.Before;
-import org.junit.Ignore;
-import org.junit.Test;
-
-public class BuildTests {
-
-	private String           logFileName;
-	private static final int HTML       = 0;
-	private static final int PROPERTIES = 1;
-	private static final int XML        = 2;
-
-	private static FileTool.IZipFilter getTrueFilter() {
-		return new FileTool.IZipFilter() {
-
-			@Override
-			public boolean shouldExtract(String fullEntryName, String entryName, int depth) {
-				return true;
-			}
-
-			@Override
-			public boolean shouldUnzip(String fullEntryName, String entryName, int depth) {
-				return true;
-			}
-		};
-	}
-
-	/**
-	 * Method hasErrors.
-	 *
-	 * @param string
-	 * @return boolean
-	 */
-	private boolean hasErrors(String string) {
-
-		boolean result = false;
-
-		try (BufferedReader aReader = new BufferedReader(new InputStreamReader(new FileInputStream(string)))){
-			String aLine = aReader.readLine();
-			while (aLine != null) {
-				int aNumber = parseLine(aLine);
-				if (aNumber > 0) {
-					result = true;
-				}
-				aLine = aReader.readLine();
-			}
-		}
-		catch (FileNotFoundException e) {
-			System.out.println("Could not open log file: " + string);
-			result = true;
-		}
-		catch (IOException e) {
-			System.out.println("Error reading log file: " + string);
-			result = true;
-		}
-		return result;
-	}
-	@Test
-	public void testChkpii() {
-
-		try {
-			// test that chkpii is on path by printing chkpii help information
-			Runtime aRuntime = Runtime.getRuntime();
-			Process aProcess = aRuntime.exec(getExec() + " /?");
-			BufferedReader aBufferedReader = new BufferedReader(new InputStreamReader(aProcess.getInputStream()));
-			while (aBufferedReader.readLine() != null) {
-			}
-			aProcess.waitFor();
-		} catch (IOException e) {
-			// skip chkpii test if chkpii cannot be run.
-			System.out.println("testChkpii-NotInstalled");
-			System.out.println(e.getMessage());
-			System.out.println("Skipping chkpii test.");
-			assertTrue(true);
-			return;
-		} catch (InterruptedException e) {
-			e.printStackTrace();
-		}
-
-		String zipFile = locateEclipseZip();
-
-		// String sniffFolder = BootLoader.getInstallURL().getPath() +
-		// "releng_sniff_folder";
-		// String sniffFolder = "d:\\builds\\t";
-		String sniffFolder = Platform.getLocation().toOSString();
-
-		try {
-			if (zipFile.isEmpty()) {
-				FileTool.unzip(getTrueFilter(), new File(sniffFolder));
-			} else {
-				FileTool.unzip(getTrueFilter(), new ZipFile(zipFile), new File(sniffFolder));
-			}
-		}
-		catch (IOException e) {
-			fail(zipFile + ": " + sniffFolder + ": " + "IOException unzipping Eclipse for chkpii");
-		}
-
-		boolean result1 = testChkpii(HTML);
-		boolean result2 = testChkpii(XML);
-		boolean result3 = testChkpii(PROPERTIES);
-		assertTrue("Translation errors in files.  See the chkpii logs linked from the test results page for details.",
-				(result1 && result2 && result3));
-	}
-
-	private boolean testChkpii(int type) {
-		Runtime aRuntime = Runtime.getRuntime();
-		String chkpiiString = getChkpiiString(type);
-		try {
-			Process aProcess = aRuntime.exec(chkpiiString);
-			BufferedReader aBufferedReader = new BufferedReader(new InputStreamReader(aProcess.getInputStream()));
-			while (aBufferedReader.readLine() != null) {
-			}
-			aProcess.waitFor();
-		} catch (IOException e) {
-			e.printStackTrace();
-			return false;
-		} catch (InterruptedException e) {
-			return false;
-		}
-		return !hasErrors(getOutputFile(type));
-	}
-
-	/**
-	 * Method getChkpiiString.
-	 *
-	 * @param type
-	 * @return String
-	 */
-	private String getChkpiiString(int type) {
-		return getExec() + " " + getFilesToTest(type) + " -E -O " + getOutputFile(type) + " -XM @" + getExcludeErrors() + " -X "
-				+ getExcludeFile() + " -S /jsq /tex";
-	}
-
-	/**
-	 * Method locateEclipseZip.
-	 *
-	 * @return String
-	 */
-	private String locateEclipseZip() {
-
-		// String to use when running as an automated test.
-		String installDir = Platform.getInstallLocation().getURL().getPath() + ".." + File.separator + "..";
-
-		// String to use when running in Eclipse
-		// String installDir = BootLoader.getInstallURL().getPath() + "..";
-		File aFile = new File(installDir);
-
-		for (File file : aFile.listFiles()) {
-			String fileName = file.getName();
-			if (fileName.startsWith("eclipse-SDK-") && fileName.endsWith(".zip")) {
-				return file.getPath();
-			}
-		}
-
-		return "";
-	}
-
-	/**
-	 * Method getExcludeFiles.
-	 *
-	 * @return String
-	 */
-	private String getExcludeFile() {
-		String aString = System.getProperty("PLUGIN_PATH");
-		return aString + File.separator + "ignoreFiles.txt";
-	}
-
-	/**
-	 * Method getOutputFile.
-	 *
-	 * @param type
-	 * @return String
-	 */
-
-	private String getOutputFile(int type) {
-
-		new File(logFileName).mkdirs();
-
-		String aString = logFileName + File.separator + "org.eclipse.nls.";
-		aString = new File(aString).getPath();
-
-		switch (type) {
-			case HTML:
-				return aString + "html.txt";
-			case PROPERTIES:
-				return aString + "properties.txt";
-
-			case XML:
-				return aString + "xml.txt";
-
-			default:
-				return aString + "other.txt";
-		}
-	}
-
-	/**
-	 * Method getFilesToTest.
-	 *
-	 * @param type
-	 * @return String
-	 */
-
-	private String getFilesToTest(int type) {
-
-		String sniffFolder = Platform.getLocation().toOSString();
-
-		String aString = new File(sniffFolder).getPath() + File.separator;
-
-		switch (type) {
-			case HTML:
-				return aString + "*.htm*";
-			case PROPERTIES:
-				return aString + "*.properties";
-
-			case XML:
-				return aString + "*.xml";
-
-			default:
-				return aString + "*.*";
-		}
-	}
-
-	/**
-	 * Method getExec.
-	 *
-	 * @return String
-	 */
-
-	private String getExec() {
-
-		return new File("chkpw1402.exe").getPath();
-	}
-
-	/**
-	 * Method getExcludeErrors.
-	 */
-	private String getExcludeErrors() {
-
-		String os = Platform.getOS();
-		String fileName;
-
-		if (os.equals("win32")) {
-			fileName = "ignoreErrorsWindows.txt";
-		} else {
-			fileName = "ignoreErrorsUnix.txt";
-		}
-
-		String aString = System.getProperty("PLUGIN_PATH");
-		return aString + File.separator + fileName;
-	}
-
-	/**
-	 * Method parseLine.
-	 *
-	 * @param aLine
-	 * @return -1 if not an error or warning line or the number of errors or warnings.
-	 */
-	private int parseLine(String aLine) {
-		int index = aLine.indexOf("Files Could Not Be Processed: ");
-
-		if (index == -1) {
-			index = aLine.indexOf("Files Contain Error");
-		}
-
-		if (index == -1) {
-			return -1;
-		} else {
-			String aString = aLine.substring(0, index).trim();
-			return Integer.parseInt(aString);
-		}
-	}
-
-	public class FileSuffixFilter implements FilenameFilter {
-
-		private String suffix;
-
-		public FileSuffixFilter(String suffix) {
-			this.suffix = suffix;
-		}
-
-		@Override
-		public boolean accept(File dir, String name) {
-			int lastDot = name.lastIndexOf('.');
-			if (lastDot == -1) {
-				return false;
-			}
-			return name.substring(lastDot).equals(suffix);
-		}
-
-	}
-
-	public static final List<String> REQUIRED_FEATURE_FILES_EPL2 = List.of("epl-2.0.html", "feature.properties",
-			"feature.xml", "license.html");
-	public static final String REQUIRED_FEATURE_SUFFIX = "";
-
-	public static final List<String> REQUIRED_PLUGIN_FILES = List.of("about.html", "plugin.properties", "plugin.xml");
-	public static final String REQUIRED_PLUGIN_SUFFIX = ".jar";
-
-	public static final List<String> REQUIRED_FEATURE_PLUGIN_FILES = List.of("about.html", "about.ini",
-			"about.mappings", "about.properties", "plugin.properties", "plugin.xml");
-	public static final String REQUIRED_FEATURE_PLUGIN_SUFFIX = ".gif";
-
-	public static final List<String> REQUIRED_FRAGMENT_FILES = List.of("fragment.xml");
-	public static final String REQUIRED_FRAGMENT_SUFFIX = "";
-
-	public static final List<String> REQUIRED_SWT_FRAGMENT_FILES = List.of("fragment.properties");
-	public static final String REQUIRED_SWT_FRAGMENT_SUFFIX = "";
-
-	public static final List<String> REQUIRED_SOURCE_FILES = List.of("about.html");
-	public static final String REQUIRED_SOURCE_SUFFIX = ".zip";
-
-	public static final List<String> REQUIRED_BUNDLE_FILES = List.of("about.html");
-	public static final String REQUIRED_BUNDLE_MANIFEST = "MANIFEST.MF";
-	public static final String REQUIRED_BUNDLE_SUFFIX = ".jar";
-
-	public static final List<String> SUFFIX_EXEMPT_LIST = List.of("org.eclipse.swt", "org.apache.ant");
-
-	public static final int PLUGIN_COUNT  = 84; // - 20; // Note this number
-	// must include non-shipping
-	// test plugins
-	public static final int FEATURE_COUNT = 9;  // - 1; // Note this number must
-
-	// include non-shipping test
-	// feature
-
-	@Before
-	public void setUp() {
-		// Automated Test
-		logFileName = Platform.getInstallLocation().getURL().getPath() + ".." + File.separator + ".." + File.separator + "results"
-				+ File.separator + "chkpii"; // A tad bogus but this is where
-											 // the build wants to copy the
-											 // results from!
-
-		// Runtime Workbench - TODO Put me back to Automated status
-		// logFileName = "d:\\results";
-		// sourceDirectoryName = "d:\\sourceFetch";
-	}
-	@Test
-	public void testFeatureFiles() {
-		assumeFalse(isMavenRun());
-		List<String> result = new ArrayList<>();
-		String installDir = Platform.getInstallLocation().getURL().getPath();
-
-		File featureDir = new File(installDir, "features");
-		for (File aFeature : featureDir.listFiles()) {
-			List<String> testFiles = REQUIRED_FEATURE_FILES_EPL2;
-			if (!testDirectory(aFeature, testFiles, REQUIRED_FEATURE_SUFFIX)) {
-				result.add(aFeature.getPath());
-			}
-		}
-
-		String aString = "";
-		if (!result.isEmpty()) {
-			for (String element: result) {
-				aString = aString + element + "; ";
-			}
-		}
-		assertTrue("Feature directory missing required files: " + aString, result.isEmpty());
-	}
-	@Test
-	public void testPluginFiles() {
-		assumeFalse(isMavenRun());
-		System.out.println(System.getenv());
-		List<String> result = new ArrayList<>();
-		String installDir = Platform.getInstallLocation().getURL().getPath();
-		File pluginDir = new File(installDir, "plugins");
-		for (File aPlugin : pluginDir.listFiles()) {
-			if (!aPlugin.getName().contains("test") && !aPlugin.getName().contains("org.eclipse.jetty")
-					&& !aPlugin.getName().contains("jakarta") && !aPlugin.getName().contains("slf4j.api")
-					&& !aPlugin.getName().contains("org.eclipse.ecf")) {
-				if (!testPluginFile(aPlugin)) {
-					result.add(aPlugin.getPath());
-				}
-			}
-		}
-
-		String aString = "";
-		if (!result.isEmpty()) {
-			for (String element : result) {
-				aString = aString + element + "; ";
-			}
-		}
-		assertTrue("Plugin directory missing required files: " + aString, result.isEmpty());
-	}
-
-	private boolean isMavenRun() {
-		return System.getenv("MAVEN_CMD_LINE_ARGS") != null;
-	}
-
-	private boolean testPluginFile(File aPlugin) {
-
-		// Are we a doc plugin?
-		if (testDirectory(aPlugin, REQUIRED_PLUGIN_FILES, ".zip")) {
-			return true;
-		}
-
-		// Are we a feature plugin?
-		if (testDirectory(aPlugin, REQUIRED_FEATURE_PLUGIN_FILES, REQUIRED_FEATURE_PLUGIN_SUFFIX)) {
-			return true;
-		}
-
-		// Are we a regular plugin
-		if (testDirectory(aPlugin, REQUIRED_PLUGIN_FILES, REQUIRED_PLUGIN_SUFFIX)) {
-			return true;
-		}
-
-		// Are we a source plugin
-		if (testSourcePlugin(aPlugin)) {
-			return true;
-		}
-
-		// Are we a fragment
-		if ((testDirectory(aPlugin, REQUIRED_FRAGMENT_FILES, REQUIRED_FRAGMENT_SUFFIX))
-				|| (testBundleDirectory(aPlugin, REQUIRED_BUNDLE_FILES, REQUIRED_BUNDLE_MANIFEST, REQUIRED_FRAGMENT_SUFFIX))) {
-			return true;
-		}
-
-		// Are we an swt fragment
-		if (testDirectory(aPlugin, REQUIRED_SWT_FRAGMENT_FILES, REQUIRED_SWT_FRAGMENT_SUFFIX)) {
-			return true;
-		}
-
-		// Are we a bundle?
-		if (testBundleDirectory(aPlugin, REQUIRED_BUNDLE_FILES, REQUIRED_BUNDLE_MANIFEST, REQUIRED_BUNDLE_SUFFIX)) {
-			return true;
-		}
-
-		// No then we are bad
-		return false;
-	}
-
-	private boolean testPluginJar(File aDirectory, List<String> requiredFiles) {
-		ArrayList<String> list = new ArrayList<>();
-		try (ZipFile jarredPlugin = new ZipFile(aDirectory)) {
-			Enumeration<? extends ZipEntry> _enum = jarredPlugin.entries();
-			while (_enum.hasMoreElements()) {
-				list.add(_enum.nextElement().toString());
-			}
-		} catch (IOException e) {
-			e.printStackTrace();
-		}
-		if (!list.containsAll(requiredFiles)) {
-			return false;
-		}
-		return true;
-	}
-
-	private boolean testDirectory(File aDirectory, List<String> requiredFiles, String requiredSuffix) {
-		if (aDirectory.getName().endsWith(".jar")) {
-			return testPluginJar(aDirectory, requiredFiles);
-		} else {
-			if (!Arrays.asList(aDirectory.list()).containsAll(requiredFiles)) {
-				return false;
-			}
-
-			int index = aDirectory.getName().indexOf('_');
-			if (index == -1) {
-				index = aDirectory.getName().length();
-			}
-
-			String plainName = aDirectory.getName().substring(0, index);
-
-			if (requiredSuffix.isEmpty() || SUFFIX_EXEMPT_LIST.contains(plainName)) {
-				return true;
-			} else if (aDirectory.listFiles(new FileSuffixFilter(requiredSuffix)).length == 0) {
-				return false;
-			}
-		}
-		return true;
-	}
-
-	private boolean testBundleDirectory(File aDirectory, List<String> requiredFiles, String manifestFile, String requiredSuffix) {
-		if (aDirectory.getName().endsWith(".jar")) {
-			return testPluginJar(aDirectory, requiredFiles);
-		} else {
-			if (!Arrays.asList(aDirectory.list()).containsAll(requiredFiles)) {
-				return false;
-			}
-
-			int index = aDirectory.getName().indexOf('_');
-			if (index == -1) {
-				index = aDirectory.getName().length();
-			}
-
-			String plainName = aDirectory.getName().substring(0, index);
-
-			File metaDir = new File(aDirectory, "META-INF");
-
-			String[] metaFiles = metaDir.list();
-			if (metaFiles == null) {
-				return (false);
-			} else {
-				for (String filename : metaFiles) {
-					if (filename == manifestFile) {
-						return true;
-					}
-				}
-			}
-
-			if (!metaDir.exists()) {
-				return false;
-			}
-
-			if (requiredSuffix.isEmpty() || SUFFIX_EXEMPT_LIST.contains(plainName)) {
-				return true;
-			} else if (aDirectory.listFiles(new FileSuffixFilter(requiredSuffix)).length == 0) {
-				return false;
-			}
-		}
-		return true;
-	}
-
-	/**
-	 * Return true if the receiver is a source plugin, false otherwise A separate method because this is a little tricky.
-	 *
-	 * @param aPlugin
-	 * @return boolean
-	 */
-	private boolean testSourcePlugin(File aPlugin) {
-		if (!testDirectory(aPlugin, REQUIRED_PLUGIN_FILES, "")) {
-			return false;
-		}
-
-		File sourceDir = new File(aPlugin, "src");
-		File[] sourceDirs = sourceDir.listFiles();
-		if (sourceDirs == null) {
-			return false;
-		}
-
-		for ( File aSourceDir : sourceDirs) {
-			if (!testDirectory(aSourceDir, REQUIRED_SOURCE_FILES, REQUIRED_SOURCE_SUFFIX)) {
-				return false;
-			}
-		}
-		return true;
-	}
-	@Test
-	public void testJavadocLogs() throws Exception {
-		assumeFalse(isMavenRun());
-		String javadocUrls = System.getProperty("RELENGTEST.JAVADOC.URLS");
-		// Skip this test if there are no logs to check
-		if (javadocUrls == null) {
-			System.err.println("WARNING: no javadoc logs to test, since RELENGTEST.JAVADOC.URLS property was not set");
-			return;
-		} else {
-			System.err.println("RELENGTEST.JAVADOC.URLS: " + javadocUrls);
-		}
-
-		String[] urls = javadocUrls.split(",");
-		URL[] javadocLogs = new URL[urls.length];
-		for (int i = 0; i < urls.length; i++) {
-			javadocLogs[i] = new URL(urls[i]);
-			System.err.println("javadocLogs[" + i + "]: " + javadocLogs[i]);
-		}
-
-		JavadocLog javadocLog = new JavadocLog(javadocLogs);
-		String message = "javadoc errors and/or warnings in: \n";
-		boolean problemLogsExist = !javadocLog.logs.isEmpty();
-		if (problemLogsExist) {
-			for (int i = 0; i < javadocLog.logs.size(); i++)
-				message = message.concat(javadocLog.logs.get(i) + "\n");
-		}
-		message = message.concat("See the javadoc logs linked from the test results page for details");
-		assertTrue(message, !problemLogsExist);
-	}
-
-	@Test
-	@Ignore("see bug 561174")
-	public void testDirtyLogSize() throws Exception {
-		final boolean DEBUG_DIRTY_TEST = true;
-		// MAX_ALLOWED_BYTES will never be 'zero', even if "no dirt" because the
-		// "dirReport" always contains some information
-		// in response to the "git status" command. The goal, here, is to
-		// "hard code" previously observed values, to make sure
-		// there is no regressions, which would be implied by a report larger
-		// than those that had been produced before.
-		// The "size" should be expressed in exact bytes as "increases" in
-		// size might be small ... if just a file or two.
-		URL standardReportURL = this.getClass().getResource("standardDirtReport.txt");
-		URLConnection standardReportURLConnection = standardReportURL.openConnection();
-		// No need to get contents (yet, most of the time) unless getContentLenth doesn't work for plugin resources?
-		long MAX_ALLOWED_BYTES = standardReportURLConnection.getContentLength();
-		// long MAX_ALLOWED_BYTES = 37179;
-		System.out.println("DEBUG: MAX_ALLOWED_BYTES: " + MAX_ALLOWED_BYTES);
-		String buildId = System.getProperty("buildId");
-		assertNotNull("buildId property must be specified for testDirtyLogSize test", buildId);
-		String downloadHost = "build.eclipse.org/eclipse/builds/4" + buildId.charAt(0) + "/siteDir";
-		String urlOfFile = "http://" + downloadHost + "/eclipse/downloads/drops4/" + buildId + "/buildlogs/dirtReport.txt";
-		URL logURL = new URL(urlOfFile);
-
-		URLConnection urlConnection = logURL.openConnection();
-		// getContentLength calls "connect" if needed.
-		// urlConnection.connect();
-		// Note, if expect more than "2 Gig", use getContentLengthLong (in Java 7).
-		long nBytes = urlConnection.getContentLength();
-		if (DEBUG_DIRTY_TEST) {
-			System.out.println("Debug info for testDirtyLogSize");
-			System.out.println("Debug: nBytes: " + nBytes);
-			printHeaders(urlConnection);
-		}
-		// if find "response does not contain length, on a regular basis, for
-		// some servers, will have to read contents.
-		assertTrue(
-				"Either file (url) does not exist (build may have been removed?), or HTTP response does not contain content length. urlOfFile: "
-						+ urlOfFile,
-				(-1 != nBytes));
-		assertFalse("dirtReport file has increased in size, indicating a regression. See " + urlOfFile, nBytes > MAX_ALLOWED_BYTES);
-		assertFalse(
-				"Good news! dirtReport file has decreased in size, compared to standard, so the standardDirtReport.txt file should be replaced with the one at "
-						+ urlOfFile
-						+ ". But NOTE: results may not be accurate, if there are other errors in build, so diff is recommended.",
-				nBytes < MAX_ALLOWED_BYTES);
-
-	}
-
-	@Test
-	public void testJarSign() throws Exception {
-		assumeFalse(isMavenRun());
-		String buildId = System.getProperty("buildId");
-		assertNotNull("buildId property must be specified for testJarSign test", buildId);
-		String downloadHost = "download.eclipse.org";
-		String urlOfFile = "https://" + downloadHost + "/eclipse/downloads/drops4/" + buildId
-				+ "/buildlogs/reporeports/reports/unsigned8.txt";
-		URL logURL = new URL(urlOfFile);
-
-		URLConnection urlConnection = logURL.openConnection();
-		long nBytes = urlConnection.getContentLength();
-		// nBytes will be -1 if the file doesn't exist
-		// it will be more than 3 if there are unsigned jars. (atlear jar extention will be listed
-
-		assertTrue("Some bundles are unsigned please refer  " + urlOfFile, (2 > nBytes));
-	}
-
-	private String getDownloadHost() {
-		String downloadHost = System.getProperty("downloadHost");
-		if (downloadHost == null) {
-			downloadHost = "download.eclipse.org";
-		}
-		return downloadHost;
-	}
-
-	private void printHeaders(URLConnection urlConnection) {
-		System.out.println("Debug: Headers for urlConnection to " + urlConnection.getURL());
-		Map<String, List<String>> allFields = urlConnection.getHeaderFields();
-		for (Entry<String, List<String>> entry : allFields.entrySet()) {
-			for (String value : entry.getValue()) {
-				System.out.printf("Debug: %-20s %-30s %n", "key: " + entry.getKey(), "value: " + value);
-			}
-		}
-	}
-	@Test
-	public void testComparatorLogSize() throws Exception {
-		assumeFalse(isMavenRun());
-		final boolean DEBUG_TEST = true;
-		// MAX_ALLOWED_BYTES will never be 'zero', even if no unexpected comparator warnings, because the
-		// report always contains some information, such as identifying which build it was for.
-		// The goal, here, is to
-		// "hard code" nominal values, to make sure
-		// there is no regressions, which would be implied by a report larger
-		// than that nominal value.
-		long MAX_ALLOWED_BYTES = 319;
-		String buildId = System.getProperty("buildId");
-		assertNotNull("buildId property must be specified for testComparatorLogSize test", buildId);
-		// Comparator logs are not generated for N builds
-		String downloadHost = getDownloadHost();
-		String urlOfFile = "https://" + downloadHost + "/eclipse/downloads/drops4/" + buildId
-				+ "/buildlogs/comparatorlogs/buildtimeComparatorUnanticipated.log.txt";
-		URL logURL = new URL(urlOfFile);
-
-		URLConnection urlConnection = logURL.openConnection();
-		// urlConnection.connect();
-		long nBytes = urlConnection.getContentLength();
-		if (DEBUG_TEST) {
-			System.out.println("Debug info for testComparatorLogSize");
-			System.out.println("Debug: nBytes: " + nBytes);
-			printHeaders(urlConnection);
-		}
-		// if find "response does not contain length, on a regular basis, for
-		// some servers, will have to read contents.
-		assertTrue("Either file (url) does not exist, or HTTP response does not contain content length. urlOfFile: "
-				+ urlOfFile, (-1 != nBytes));
-		assertTrue("Unanticipated comparator log file has increased in size, indicating a regression. See " + urlOfFile,
-				nBytes <= MAX_ALLOWED_BYTES);
-		if (MAX_ALLOWED_BYTES > (nBytes + 20)) {
-			System.out.println(
-					"WARNING: MAX_ALLOWED_BYTES was larger than bytes found, by " + (MAX_ALLOWED_BYTES - nBytes)
-							+ ", which may indicate MAX_ALLOWED_BYTES needs to be lowered, to catch regressions.");
-		}
-	}
-
-	private class JavadocLog {
-
-		private ArrayList<String> logs = new ArrayList<>();
-
-		private JavadocLog(URL[] logs) {
-			findProblems(logs);
-		}
-
-		private void findProblems(URL[] javadocLogs) {
-			String JAVADOC_WARNING = ": warning";
-			String JAVADOC_ERROR = ": error";
-			String JAVADOC_JAVA = ".java:";
-
-			for (URL javadocLog : javadocLogs) {
-				try (BufferedReader in = new BufferedReader(new InputStreamReader(javadocLog.openStream()))){
-					String tmp;
-					while ((tmp = in.readLine()) != null) {
-						tmp = tmp.toLowerCase();
-						if (tmp.contains(JAVADOC_ERROR) || tmp.contains(JAVADOC_WARNING)
-								|| tmp.contains(JAVADOC_JAVA)) {
-							String fileName = new File(javadocLog.getFile()).getName();
-							if (!logs.contains(fileName))
-								logs.add(fileName);
-						}
-					}
-				}
-				catch (FileNotFoundException e) {
-					logs.add("Unable to find " + new File(javadocLog.getFile()).getName() + " to read.");
-					e.printStackTrace();
-				}
-				catch (IOException e) {
-					logs.add("Unable to read " + new File(javadocLog.getFile()).getName());
-					e.printStackTrace();
-				}
-			}
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tests/src/org/eclipse/releng/tests/FileTool.java b/bundles/org.eclipse.releng.tests/src/org/eclipse/releng/tests/FileTool.java
deleted file mode 100644
index 5aae221..0000000
--- a/bundles/org.eclipse.releng.tests/src/org/eclipse/releng/tests/FileTool.java
+++ /dev/null
@@ -1,199 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2022 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tests;
-
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.Enumeration;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipFile;
-
-
-/**
- * A tool for performing operations on files.
- */
-public class FileTool {
-
-	/**
-	 * A zip filter which is used to filter out unwanted entries while extracting a zip file.
-	 *
-	 * @see FileTool#unzip
-	 */
-	public interface IZipFilter {
-		/**
-		 * Returns a boolean indicating whether the entry with the
-		 * specified name should be extracted from the zip file.
-		 *
-		 * @param fullEntryName the full entry name; includes full
-		 * path segments for nested zip entries
-		 * @param entryName the partial entry name; only includes
-		 * path segments from the currect zip entry
-		 * @param depth a number greater than or equal to zero
-		 * which specifies the depth of the current nested zip
-		 * entry
-		 * @return a boolean indicating whether the entry with the
-		 * specified name should be extracted from the zip file
-		 */
-		boolean shouldExtract(String fullEntryName, String entryName, int depth);
-		/**
-		 * Returns a boolean indicating whether the entry (which
-		 * is a zip/jar file) with the specified name should be
-		 * extracted from the zip file and then unzipped.
-		 *
-		 * @param fullEntryName the full entry name; includes full
-		 * path segments for nested zip entries
-		 * @param entryName the partial entry name; only includes
-		 * path segments from the currect zip entry
-		 * @param depth a number greater than or equal to zero
-		 * which specifies the depth of the current nested zip
-		 * entry
-		 * @return a boolean indicating whether the entry (which
-		 * is a zip/jar file) with the specified name should be
-		 * extracted from the zip file and then unzipped
-		 */
-		boolean shouldUnzip(String fullEntryName, String entryName, int depth);
-	}
-	/**
-	 * Returns the given file path with its separator
-	 * character changed from the given old separator to the
-	 * given new separator.
-	 *
-	 * @param path a file path
-	 * @param oldSeparator a path separator character
-	 * @param newSeparator a path separator character
-	 * @return the file path with its separator character
-	 * changed from the given old separator to the given new
-	 * separator
-	 */
-	public static String changeSeparator(String path, char oldSeparator, char newSeparator){
-		return path.replace(oldSeparator, newSeparator);
-	}
-	/**
-	 * Unzips the given zip file to the given destination directory
-	 * extracting only those entries the pass through the given
-	 * filter.
-	 *
-	 * @param filter filters out unwanted zip entries
-	 * @param zipFile the zip file to unzip
-	 * @param dstDir the destination directory
-	 */
-	public static void unzip(IZipFilter filter, ZipFile zipFile, File dstDir) throws IOException {
-		unzip(filter, zipFile, dstDir, dstDir, 0);
-	}
-
-	private static void unzip(IZipFilter filter, ZipFile zipFile, File rootDstDir, File dstDir, int depth) throws IOException {
-
-		Enumeration<? extends ZipEntry> entries = zipFile.entries();
-
-		try (zipFile) {
-			while(entries.hasMoreElements()){
-				ZipEntry entry = entries.nextElement();
-				if(entry.isDirectory()){
-					continue;
-				}
-				String entryName = entry.getName();
-				File file = new File(dstDir, FileTool.changeSeparator(entryName, '/', File.separatorChar));
-				String destCanPath = dstDir.getCanonicalPath();
-				String fileCanPath = file.getCanonicalPath();
-				if (!fileCanPath.startsWith(destCanPath + File.separatorChar)) {
-					throw new IOException("Entry is out side of target dir: " + entryName);
-				}
-				String fullEntryName = FileTool.changeSeparator(file.toString().substring(rootDstDir.toString().length() + 1), File.separatorChar, '/');
-				if(!(filter == null || filter.shouldExtract(fullEntryName, entryName, depth))){
-					continue;
-				}
-				file.getParentFile().mkdirs();
-				try (InputStream src = zipFile.getInputStream(entry);
-					OutputStream dst = new FileOutputStream(file)){
-					src.transferTo(dst);
-				}
-				if((entryName.endsWith(".zip") || entryName.endsWith(".jar")) && (filter == null || filter.shouldUnzip(fullEntryName, entryName, depth))) {
-					String fileName = file.getName();
-					String dirName = fileName.substring(0, fileName.length() - 4) + "_" + fileName.substring(fileName.length() - 3);
-					ZipFile innerZipFile = null;
-					try {
-						innerZipFile = new ZipFile(file);
-						File innerDstDir = new File(file.getParentFile(), dirName);
-						unzip(filter, innerZipFile, rootDstDir, innerDstDir, depth + 1);
-						file.delete();
-					} catch (IOException e) {
-						if(innerZipFile != null){
-							try {
-								innerZipFile.close();
-								System.out.println("Could not unzip: " + fileName + ". InnerZip = " + innerZipFile.getName() + ". Lenght: " + innerZipFile.getName().length());
-							} catch(IOException e2){
-							}
-						} else
-							System.out.println("Could not unzip: " + fileName + ". InnerZip = <null>");
-						e.printStackTrace();
-					}
-
-				}
-			}
-		}
-	}
-	/**
-	 * Unzips the inner zip files in the given destination directory
-	 * extracting only those entries the pass through the given
-	 * filter.
-	 *
-	 * @param filter filters out unwanted zip entries
-	 * @param dstDir the destination directory
-	 */
-	public static void unzip(IZipFilter filter, File dstDir) {
-		unzip(filter, dstDir, dstDir, 0);
-	}
-
-	private static void unzip(IZipFilter filter, File rootDstDir, File dstDir, int depth) {
-
-		File[] entries = rootDstDir.listFiles();
-		if (entries == null) {
-			entries = new File[0];
-		}
-		for (File entry : entries) {
-			if (entry.isDirectory()) {
-				unzip(filter, entry, dstDir, depth);
-			}
-			String entryName = entry.getName();
-			File file = new File(dstDir, FileTool.changeSeparator(entryName, '/', File.separatorChar));
-			if (entryName.endsWith(".zip") || entryName.endsWith(".jar")) {
-				String fileName = file.getName();
-				String dirName = fileName.substring(0, fileName.length() - 4) + "_"
-						+ fileName.substring(fileName.length() - 3);
-				ZipFile innerZipFile = null;
-				try {
-					innerZipFile = new ZipFile(entry);
-					File innerDstDir = new File(entry.getParentFile(), dirName);
-					unzip(filter, innerZipFile, rootDstDir, innerDstDir, depth + 1);
-					// entry.delete();
-				} catch (IOException e) {
-					if (innerZipFile != null) {
-						try {
-							innerZipFile.close();
-							System.out.println("Could not unzip: " + fileName + ". InnerZip = " + innerZipFile.getName()
-									+ ". Lenght: " + innerZipFile.getName().length());
-						} catch (IOException e2) {
-						}
-					} else
-						System.out.println("Could not unzip: " + fileName + ". InnerZip = <null>");
-					e.printStackTrace();
-				}
-
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.releng.tests/src/org/eclipse/releng/tests/checkSignature b/bundles/org.eclipse.releng.tests/src/org/eclipse/releng/tests/checkSignature
deleted file mode 100755
index 22fe366..0000000
--- a/bundles/org.eclipse.releng.tests/src/org/eclipse/releng/tests/checkSignature
+++ /dev/null
@@ -1,61 +0,0 @@
-#!/usr/bin/env bash
-
-# small utility to check signature of app on the mac. Assumes the XCode tools installed.
-
-appPathAndName=$1
-if [[ -z "${appPathAndName}" ]] 
-then 
-    echo -e "\n\t[ERROR] Programming error. The applications path and name must be specified for $(basename $0)"
-    exit 1
-fi
-
-if [[ ! -e "${appPathAndName}" ]]
-then
-    echo -e "\n\t[ERROR] Programning error in $(basename $0). The applications path and name was specified, but did not exist,\n\t\tWas specified as ${appPathAndName}"
-    exit 2
-fi
-SPCTL=$(which spctl)
-if [[ -z "${SPCTL}" ]]
-then
-    echo "\n\t[ERROR} spctl was not found on this system to check signatures"
-    exit 3
-fi
-CODESIGN=$(which codesign)
-if [[ -z "${CODESIGN}" ]]
-then 
-    echo "\n\t[ERROR codesign was not found on this system to check signatures"
-    exit 4
-fi
-
-echo -e "\n\t${SPCTL} -a -t exec -vvvv $appPathAndName\n"
-"${SPCTL}" -a -t exec -vvvv "$appPathAndName"
-RCspctl=$?
-if [[ $RCspctl != 0 ]]
-then
-    echo -e "\n\tspctl returned $RCspctl"
-fi
-# display always returns 0 apparently
-echo -e "\n\t${CODESIGN} --verbose=4 --display --deep -r- $appPathAndName\n"
-"${CODESIGN}" --verbose=4 --display --deep --continue -r- "$appPathAndName"
-# verify for return code
-echo -e "\n\t${CODESIGN} --verbose=4 --verify --deep --continue  -r- $appPathAndName\n"
-"${CODESIGN}" --verbose=4 --verify --deep --continue -r- "$appPathAndName"
-RCcodesign=$?
-if [[ $RCcodesign != 0 ]]
-then
-    echo -e "\n\tcodesign returned $RCcodesign"
-fi
-# according to man pages, return code of 1 means "not correctly signed".
-# other return codes (2, 3) mean things like "arguments not correct"
-if [[ $RCspctl == 1 || $RCcodesign == 1 ]]
-then
-    echo -e "\n\t[ERROR] The application $appPathAndName was not correctly signed"
-    exit $(( $RCspctl & $RCcodesign ))
-fi
-if [[ $RCspctl != 0 || $RCcodesign != 0 ]]
-then
-    echo -e "\n\t[ERROR] The verification arguments while checking $appPathAndName were not correct"
-    exit $(( $RCspctl & $RCcodesign ))
-fi
-exit 0
-
diff --git a/bundles/org.eclipse.releng.tests/src/org/eclipse/releng/tests/standardDirtReport.txt b/bundles/org.eclipse.releng.tests/src/org/eclipse/releng/tests/standardDirtReport.txt
deleted file mode 100644
index 610035a..0000000
--- a/bundles/org.eclipse.releng.tests/src/org/eclipse/releng/tests/standardDirtReport.txt
+++ /dev/null
@@ -1,52 +0,0 @@
-
-	Dirt Report for I20180117-2000
-
-Entering 'eclipse.jdt'
-Entering 'eclipse.jdt.core'
- M org.eclipse.jdt.core/jdtCompilerAdapter.jar
-Entering 'eclipse.jdt.core.binaries'
-Entering 'eclipse.jdt.debug'
-?? org.eclipse.jdt.debug.tests/javadebugtests.jar
-?? org.eclipse.jdt.debug/jdi.jar
-?? org.eclipse.jdt.debug/jdimodel.jar
-Entering 'eclipse.jdt.ui'
-Entering 'eclipse.pde.build'
-Entering 'eclipse.pde.ui'
-Entering 'eclipse.platform'
-Entering 'eclipse.platform.common'
-?? bundles/org.eclipse.jdt.doc.isv/index/
-?? bundles/org.eclipse.jdt.doc.user/index/
-?? bundles/org.eclipse.pde.doc.user/index/
-?? bundles/org.eclipse.platform.doc.isv/index/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.compare.examples.xml/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.compare.examples/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.swt.examples.launcher/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.swt.examples.ole.win32/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.swt.examples.views/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.swt.examples/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.team.examples.filesystem/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.ui.examples.fieldassist/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.ui.examples.javaeditor/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.ui.examples.multipageeditor/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.ui.examples.propertysheet/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.ui.examples.readmetool/
-?? bundles/org.eclipse.platform.doc.isv/samples/org.eclipse.ui.examples.undo/
-?? bundles/org.eclipse.platform.doc.user/index/
-Entering 'eclipse.platform.debug'
-Entering 'eclipse.platform.releng'
-Entering 'eclipse.platform.resources'
-Entering 'eclipse.platform.runtime'
-Entering 'eclipse.platform.swt'
-Entering 'eclipse.platform.swt.binaries'
-Entering 'eclipse.platform.team'
-Entering 'eclipse.platform.text'
-Entering 'eclipse.platform.ua'
-Entering 'eclipse.platform.ui'
-Entering 'eclipse.platform.ui.tools'
-Entering 'rt.equinox.binaries'
-Entering 'rt.equinox.bundles'
-Entering 'rt.equinox.framework'
-?? features/org.eclipse.equinox.executable.feature/bin/cocoa/macosx/x86_64/Eclipse.app/Contents/MacOS/
-?? features/org.eclipse.equinox.executable.feature/bin/gtk/
-?? features/org.eclipse.equinox.executable.feature/bin/win32/
-Entering 'rt.equinox.p2'
diff --git a/bundles/org.eclipse.releng.tests/test.xml b/bundles/org.eclipse.releng.tests/test.xml
deleted file mode 100644
index a22ed34..0000000
--- a/bundles/org.eclipse.releng.tests/test.xml
+++ /dev/null
@@ -1,242 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project
-  name="RelEng Automated Tests"
-  default="run"
-  basedir=".">
-
-  <property environment="env" />
-	<!-- The property ${eclipse-home} should be passed into this script -->
-	<!-- sets the properties eclipse-home, and library-file -->
-  <property
-    name="eclipse-home"
-    value="${basedir}/../../" />
-  <property
-    name="plugin-name"
-    value="org.eclipse.releng.tests" />
-  <property
-    name="library-file"
-    value="${eclipse-home}/plugins/org.eclipse.test/library.xml" />
-
-	<!-- This target holds all initialization code that needs to be done for -->
-	<!-- all tests that are to be run. Initialization for individual tests -->
-	<!-- should be done within the body of the suite target. -->
-  <target name="init">
-
-    <tstamp />
-
-    <condition property="JAVADOC_OUTPUT_LOCATION" value="file:///${eclipse-home}/../../../.." else="file:///${eclipse-home}/../.." >
-      <os family="mac" />
-    </condition>
-    
-    <condition property="downloadHost" value="${env.DOWNLOAD_HOST}" else="download.eclipse.org">
-     <isset property="env.DOWNLOAD_HOST" />
-    </condition>
-    
-    <condition property="tar.gz">
-      <contains
-        string="${runtimeArchive}"
-        substring=".tar.gz" />
-    </condition>
-    <condition
-      property="location"
-      value="/builds/t">
-      <equals
-        arg1="${os}"
-        arg2="win32" />
-    </condition>
-    <property
-      name="location"
-      value="${basedir}/releng" />
-    <property
-      name="locationcompare"
-      value="${basedir}/relengcompare" />
-    <property
-      name="locationcomparecurrent"
-      value="${basedir}/relengcomparecurrent" />
-	    <!-- Is now 4 part qualifier. Value used to be set at start of file. 
-	         But, then had to use only 3 part qualifier. Now, set elsewhere?
-	       <property name="org.eclipse.releng.tests" value="org.eclipse.releng.tests_3.2.300" />
-	    -->
-    <echo message="Full name with versionand qualifier of org.eclipse.releng.tests:" />
-    <echo message="   ${org.eclipse.releng.tests}" />
-  </target>
-
-	<!-- This target holds code to cleanup the testing environment after the tests -->
-	<!-- have been run. You can use this to delete temporary files that are created. -->
-  <target name="cleanup">
-	  <!-- temp, leave for inspection
-		<delete dir="${location}" quiet="true" />
-		<delete dir="${locationcompare}" />
-		-->
-  </target>
-
-	<!--if file is a tar.gz file and not a zip, extract the SDK on which to 
-		execute chkpii before starting tests -->
-  <target
-    name="setup"
-    if="tar.gz">
-    <property
-      name="archiveDir"
-      value="${eclipse-home}/../.." />
-    <delete dir="${location}" />
-    <mkdir dir="${location}" />
-    <exec
-      dir="${location}"
-      executable="tar">
-      <arg line="-xzf ${archiveDir}/${runtimeArchive}" />
-    </exec>
-    <condition property="notMac">
-      <not>
-        <os family="mac" />
-      </not>
-    </condition>
-		<!-- <antcall target="setupcompare" /> -->
-  </target>
-
-  <target
-    name="setupcompare"
-    if="notMac">
-		<!-- 
-		     Run compare test only on Linux machine since it is the fastest machine.
-	         Also, the compare tool only parses feature.xmls so it only needs to be run on one machine.  
-	    -->
-    <delete dir="${locationcompare}" />
-    <mkdir dir="${locationcompare}" />
-    <property
-      name="locationcomparetemp"
-      value="${locationcompare}/temp" />
-    <delete dir="${locationcomparetemp}" />
-    <mkdir dir="${locationcomparetemp}" />
-    <delete dir="${locationcompare}" />
-    <mkdir dir="${locationcompare}" />
-    <property
-      name="locationcomparetemp"
-      value="${locationcompare}/temp" />
-    <delete dir="${locationcomparetemp}" />
-    <mkdir dir="${locationcomparetemp}" />
-    <property file="${basedir}/../../equinoxp2tests.properties" />
-    <p2.mirror
-      source="${org.eclipse.equinox.p2.tests.last.release.build.repo}"
-      ignoreErrors="true">
-      <destination
-        kind="metadata"
-        location="file://${locationcomparetemp}"
-        name="Current build Repo" />
-      <destination
-        kind="artifact"
-        location="file://${locationcomparetemp}"
-        name="Current build Repo" />
-    </p2.mirror>
-    <p2.repo2runnable destination="${locationcompare}">
-      <source
-        dir="${locationcompare}"
-        includes="temp" />
-    </p2.repo2runnable>
-    <delete dir="${locationcomparetemp}" />
-
-    <delete dir="${locationcomparecurrent}" />
-    <mkdir dir="${locationcomparecurrent}" />
-    <property
-      name="locationcomparecurrenttemp"
-      value="${locationcomparecurrent}/temp" />
-    <delete dir="${locationcomparecurrenttemp}" />
-    <mkdir dir="${locationcomparecurrenttemp}" />
-    <p2.mirror
-      source="${org.eclipse.equinox.p2.tests.current.build.repo}"
-      ignoreErrors="true">
-      <destination
-        kind="metadata"
-        location="file://${locationcomparecurrenttemp}"
-        name="Current build Repo" />
-      <destination
-        kind="artifact"
-        location="file://${locationcomparecurrenttemp}"
-        name="Current build Repo" />
-    </p2.mirror>
-    <p2.repo2runnable destination="${locationcomparecurrent}">
-      <source
-        dir="${locationcomparecurrent}"
-        includes="temp" />
-    </p2.repo2runnable>
-    <delete dir="${locationcomparecurrenttemp}" />
-
-    <replace
-      file="${basedir}/plugins/${org.eclipse.releng.tests}/compare.properties"
-      token="@new@"
-      value="${locationcomparecurrent}/features" />
-    <replace
-      file="${basedir}/plugins/${org.eclipse.releng.tests}/compare.properties"
-      token="@old@"
-      value="${locationcompare}/features" />
-    <property
-      name="versionOutputDir"
-      value="${locationcompare}/../../../results/versiontool" />
-    <mkdir dir="${versionOutputDir}" />
-    <exec
-      dir="${versionOutputDir}"
-      executable="/bin/touch"
-      failonerror="false"
-      os="Linux">
-      <arg line="results.xml" />
-    </exec>
-    <property
-      name="versionOutputFile"
-      value="${versionOutputDir}/results.xml" />
-    <echo message="locationcompare ${locationcompare} versionOutputDir ${versionOutputDir} versionOutputFile ${versionOutputFile}" />
-    <replace
-      file="${basedir}/plugins/${org.eclipse.releng.tests}/compare.properties"
-      token="@output@"
-      value="${versionOutputFile}" />
-    <replace
-      file="${basedir}/plugins/${org.eclipse.releng.tests}/compare.properties"
-      token="@compareoptions@"
-      value="${basedir}/plugins/${org.eclipse.releng.tests}/compareoptions.properties" />
-  </target>
-
-
-
-	<!-- This target runs the test suite. Any actions that need to happen after all -->
-	<!-- the tests have been run should go here. -->
-  <target
-    name="run"
-    depends="init,BuildTests">
-    <ant
-      target="collect"
-      antfile="${library-file}"
-      dir="${eclipse-home}">
-      <property
-        name="includes"
-        value="org*.xml" />
-      <property
-        name="output-file"
-        value="${plugin-name}.xml" />
-    </ant>
-  </target>
-
-  <target
-    name="BuildTests"
-    depends="init,cleanup,setup">
-    <ant
-      target="core-test"
-      antfile="${library-file}"
-      dir="${eclipse-home}">
-      <property
-        name="data-dir"
-        value="${location}" />
-      <property
-        name="plugin-name"
-        value="${plugin-name}" />
-      <property
-        name="classname"
-        value="org.eclipse.releng.tests.BuildTests" />
-      <property
-        name="plugin-path"
-        value="${eclipse-home}/plugins/${org.eclipse.releng.tests}" />
-      
-      <property
-        name="vmargs"
-        value="-DdownloadHost=${downloadHost} -DbuildId=${buildId} -DRELENGTEST.JAVADOC.URLS=${JAVADOC_OUTPUT_LOCATION}/platform.doc.isv.javadoc.txt,${JAVADOC_OUTPUT_LOCATION}/jdt.doc.isv.javadoc.txt,${JAVADOC_OUTPUT_LOCATION}/pde.doc.user.javadoc.txt,${JAVADOC_OUTPUT_LOCATION}/platform.doc.isv.schema.txt,${JAVADOC_OUTPUT_LOCATION}/jdt.doc.isv.schema.txt,${JAVADOC_OUTPUT_LOCATION}/pde.doc.user.schema.txt"  />
-    </ant>
-  </target>
-
-</project>
\ No newline at end of file
diff --git a/bundles/org.eclipse.sdk.examples/.project b/bundles/org.eclipse.sdk.examples/.project
deleted file mode 100644
index 91e3edd..0000000
--- a/bundles/org.eclipse.sdk.examples/.project
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.sdk.examples</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.sdk.examples/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.sdk.examples/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.sdk.examples/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.sdk.examples/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.sdk.examples/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.sdk.examples/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.sdk.examples/META-INF/MANIFEST.MF b/bundles/org.eclipse.sdk.examples/META-INF/MANIFEST.MF
deleted file mode 100644
index 79ba73e..0000000
--- a/bundles/org.eclipse.sdk.examples/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,7 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-Vendor: %providerName
-Bundle-SymbolicName: org.eclipse.sdk.examples; singleton:=true
-Bundle-Version: 4.23.0.qualifier
-Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.sdk.examples/about.html b/bundles/org.eclipse.sdk.examples/about.html
deleted file mode 100644
index 164f781..0000000
--- a/bundles/org.eclipse.sdk.examples/about.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>About</title>
-</head>
-<body lang="EN-US">
-	<h2>About This Content</h2>
-
-	<p>November 30, 2017</p>
-	<h3>License</h3>
-
-	<p>
-		The Eclipse Foundation makes available all content in this plug-in
-		(&quot;Content&quot;). Unless otherwise indicated below, the Content
-		is provided to you under the terms and conditions of the Eclipse
-		Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
-		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
-		For purposes of the EPL, &quot;Program&quot; will mean the Content.
-	</p>
-
-	<p>
-		If you did not receive this Content directly from the Eclipse
-		Foundation, the Content is being redistributed by another party
-		(&quot;Redistributor&quot;) and different terms and conditions may
-		apply to your use of any object code in the Content. Check the
-		Redistributor's license that was provided with the Content. If no such
-		license exists, contact the Redistributor. Unless otherwise indicated
-		below, the terms and conditions of the EPL still apply to any source
-		code in the Content and such source code may be obtained at <a
-			href="http://www.eclipse.org/">http://www.eclipse.org</a>.
-	</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.sdk.examples/about.ini b/bundles/org.eclipse.sdk.examples/about.ini
deleted file mode 100644
index 669383f..0000000
--- a/bundles/org.eclipse.sdk.examples/about.ini
+++ /dev/null
@@ -1,31 +0,0 @@
-# about.ini
-# contains information about a feature
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# "%key" are externalized strings defined in about.properties
-# This file does not need to be translated.
-
-# Property "aboutText" contains blurb for "About" dialog (translated)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=eclipse32.png
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (not translated)
-# needed for primary features only
-
-# Property "welcomePage" contains path to welcome page (special XML-based format)
-# optional
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
-
-
-
-
diff --git a/bundles/org.eclipse.sdk.examples/about.mappings b/bundles/org.eclipse.sdk.examples/about.mappings
deleted file mode 100644
index 515397a..0000000
--- a/bundles/org.eclipse.sdk.examples/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings
-# contains fill-ins for about.properties
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file does not need to be translated.
-
-0=${buildId}
diff --git a/bundles/org.eclipse.sdk.examples/about.properties b/bundles/org.eclipse.sdk.examples/about.properties
deleted file mode 100644
index 43b9486..0000000
--- a/bundles/org.eclipse.sdk.examples/about.properties
+++ /dev/null
@@ -1,29 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-#
-# Do not translate any values surrounded by {}
-
-blurb=Eclipse SDK Examples\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Eclipse contributors and others 2000, 2007.  All rights reserved.\n\
-Visit http://www.eclipse.org/eclipse
-
diff --git a/bundles/org.eclipse.sdk.examples/build.properties b/bundles/org.eclipse.sdk.examples/build.properties
deleted file mode 100644
index 1e8f95d..0000000
--- a/bundles/org.eclipse.sdk.examples/build.properties
+++ /dev/null
@@ -1,27 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2010 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = about.html,\
-               about.ini,\
-               about.mappings,\
-               about.properties,\
-               eclipse32.png,\
-               plugin.properties,\
-               META-INF/
-
-# note: the following files are intentionally not listed in bin.includes
-#    epl-v10.html
-#    notice.html
-# these files need to end up as root files in <install>/eclipse/
-src.includes=about.html
-
diff --git a/bundles/org.eclipse.sdk.examples/eclipse32.png b/bundles/org.eclipse.sdk.examples/eclipse32.png
deleted file mode 100644
index bf85680..0000000
--- a/bundles/org.eclipse.sdk.examples/eclipse32.png
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.sdk.examples/forceQualifierUpdate.txt b/bundles/org.eclipse.sdk.examples/forceQualifierUpdate.txt
deleted file mode 100644
index 56f1032..0000000
--- a/bundles/org.eclipse.sdk.examples/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
diff --git a/bundles/org.eclipse.sdk.examples/plugin.properties b/bundles/org.eclipse.sdk.examples/plugin.properties
deleted file mode 100644
index 013c3d5..0000000
--- a/bundles/org.eclipse.sdk.examples/plugin.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-pluginName=Eclipse SDK Examples
-providerName=Eclipse.org
diff --git a/bundles/org.eclipse.sdk.examples/pom.xml b/bundles/org.eclipse.sdk.examples/pom.xml
deleted file mode 100644
index a60db01..0000000
--- a/bundles/org.eclipse.sdk.examples/pom.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.sdk</groupId>
-  <artifactId>org.eclipse.sdk.examples</artifactId>
-  <packaging>eclipse-plugin</packaging>
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-packaging-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <configuration>
-          <format>'v${buildTimestamp}'</format>
-        </configuration>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/bundles/org.eclipse.sdk.tests/.project b/bundles/org.eclipse.sdk.tests/.project
deleted file mode 100644
index 4dd55e8..0000000
--- a/bundles/org.eclipse.sdk.tests/.project
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.sdk.tests</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.sdk.tests/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.sdk.tests/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.sdk.tests/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.sdk.tests/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.sdk.tests/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.sdk.tests/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.sdk.tests/META-INF/MANIFEST.MF b/bundles/org.eclipse.sdk.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index b6c21cc..0000000
--- a/bundles/org.eclipse.sdk.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,7 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Tests
-Bundle-SymbolicName: org.eclipse.sdk.tests; singleton:=true
-Bundle-Version: 4.23.0.qualifier
-Eclipse-BundleShape: dir
-
diff --git a/bundles/org.eclipse.sdk.tests/about.html b/bundles/org.eclipse.sdk.tests/about.html
deleted file mode 100644
index 164f781..0000000
--- a/bundles/org.eclipse.sdk.tests/about.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>About</title>
-</head>
-<body lang="EN-US">
-	<h2>About This Content</h2>
-
-	<p>November 30, 2017</p>
-	<h3>License</h3>
-
-	<p>
-		The Eclipse Foundation makes available all content in this plug-in
-		(&quot;Content&quot;). Unless otherwise indicated below, the Content
-		is provided to you under the terms and conditions of the Eclipse
-		Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
-		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
-		For purposes of the EPL, &quot;Program&quot; will mean the Content.
-	</p>
-
-	<p>
-		If you did not receive this Content directly from the Eclipse
-		Foundation, the Content is being redistributed by another party
-		(&quot;Redistributor&quot;) and different terms and conditions may
-		apply to your use of any object code in the Content. Check the
-		Redistributor's license that was provided with the Content. If no such
-		license exists, contact the Redistributor. Unless otherwise indicated
-		below, the terms and conditions of the EPL still apply to any source
-		code in the Content and such source code may be obtained at <a
-			href="http://www.eclipse.org/">http://www.eclipse.org</a>.
-	</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.sdk.tests/about.ini b/bundles/org.eclipse.sdk.tests/about.ini
deleted file mode 100644
index b26762a..0000000
--- a/bundles/org.eclipse.sdk.tests/about.ini
+++ /dev/null
@@ -1,27 +0,0 @@
-# about.ini
-# contains information about a feature
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# "%key" are externalized strings defined in about.properties
-# This file does not need to be translated.
-
-# Property "aboutText" contains blurb for "About" dialog (translated)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=eclipse32.png
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (not translated)
-# needed for primary features only
-
-# Property "welcomePage" contains path to welcome page (special XML-based format)
-# optional
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
diff --git a/bundles/org.eclipse.sdk.tests/about.mappings b/bundles/org.eclipse.sdk.tests/about.mappings
deleted file mode 100644
index 515397a..0000000
--- a/bundles/org.eclipse.sdk.tests/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings
-# contains fill-ins for about.properties
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file does not need to be translated.
-
-0=${buildId}
diff --git a/bundles/org.eclipse.sdk.tests/about.properties b/bundles/org.eclipse.sdk.tests/about.properties
deleted file mode 100644
index 62a7728..0000000
--- a/bundles/org.eclipse.sdk.tests/about.properties
+++ /dev/null
@@ -1,29 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2021 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-#
-# Do not translate any values surrounded by {}
-
-blurb=Eclipse SDK Tests\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Eclipse contributors and others 2000, 2021.  All rights reserved.\n\
-Visit http://www.eclipse.org/eclipse
-
diff --git a/bundles/org.eclipse.sdk.tests/build.properties b/bundles/org.eclipse.sdk.tests/build.properties
deleted file mode 100644
index 7dae64c..0000000
--- a/bundles/org.eclipse.sdk.tests/build.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = about.html,\
-               about.ini,\
-               about.mappings,\
-               about.properties,\
-               eclipse32.png,\
-               plugin.properties,\
-               META-INF/
diff --git a/bundles/org.eclipse.sdk.tests/eclipse32.png b/bundles/org.eclipse.sdk.tests/eclipse32.png
deleted file mode 100644
index bf85680..0000000
--- a/bundles/org.eclipse.sdk.tests/eclipse32.png
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.sdk.tests/forceQualifierUpdate.txt b/bundles/org.eclipse.sdk.tests/forceQualifierUpdate.txt
deleted file mode 100644
index 739ca9c..0000000
--- a/bundles/org.eclipse.sdk.tests/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
-Bug 480835 - Failures in build due to changes not being picked up by tests
-Bug 566156 - 4.17 I-Build: I20200818-0600 - BUILD FAILED
-4.20 I-Build: I20210518-0600 - BUILD FAILED
\ No newline at end of file
diff --git a/bundles/org.eclipse.sdk.tests/plugin.properties b/bundles/org.eclipse.sdk.tests/plugin.properties
deleted file mode 100644
index 1fc36ef..0000000
--- a/bundles/org.eclipse.sdk.tests/plugin.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-pluginName=Eclipse SDK Tests
-providerName=Eclipse.org
diff --git a/bundles/org.eclipse.sdk.tests/pom.xml b/bundles/org.eclipse.sdk.tests/pom.xml
deleted file mode 100644
index c48ea99..0000000
--- a/bundles/org.eclipse.sdk.tests/pom.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012 Eclipse Foundation.
-  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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.sdk</groupId>
-  <artifactId>org.eclipse.sdk.tests</artifactId>
-  <packaging>eclipse-plugin</packaging>
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-packaging-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <configuration>
-          <format>'v${buildTimestamp}'</format>
-        </configuration>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/bundles/org.eclipse.test.performance.win32/.project b/bundles/org.eclipse.test.performance.win32/.project
deleted file mode 100644
index 4923750..0000000
--- a/bundles/org.eclipse.test.performance.win32/.project
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.test.performance.win32</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.test.performance.win32/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.test.performance.win32/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.test.performance.win32/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.test.performance.win32/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.test.performance.win32/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.test.performance.win32/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.test.performance.win32/META-INF/MANIFEST.MF b/bundles/org.eclipse.test.performance.win32/META-INF/MANIFEST.MF
deleted file mode 100644
index ff254e9..0000000
--- a/bundles/org.eclipse.test.performance.win32/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %Plugin.name
-Bundle-SymbolicName: org.eclipse.test.performance.win32
-Bundle-Version: 3.1.500.qualifier
-Bundle-Vendor: %Plugin.providerName
-Fragment-Host: org.eclipse.test.performance;bundle-version="[3.1.0,4.0.0)"
-Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.test.performance.win32/about.html b/bundles/org.eclipse.test.performance.win32/about.html
deleted file mode 100644
index 164f781..0000000
--- a/bundles/org.eclipse.test.performance.win32/about.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>About</title>
-</head>
-<body lang="EN-US">
-	<h2>About This Content</h2>
-
-	<p>November 30, 2017</p>
-	<h3>License</h3>
-
-	<p>
-		The Eclipse Foundation makes available all content in this plug-in
-		(&quot;Content&quot;). Unless otherwise indicated below, the Content
-		is provided to you under the terms and conditions of the Eclipse
-		Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
-		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
-		For purposes of the EPL, &quot;Program&quot; will mean the Content.
-	</p>
-
-	<p>
-		If you did not receive this Content directly from the Eclipse
-		Foundation, the Content is being redistributed by another party
-		(&quot;Redistributor&quot;) and different terms and conditions may
-		apply to your use of any object code in the Content. Check the
-		Redistributor's license that was provided with the Content. If no such
-		license exists, contact the Redistributor. Unless otherwise indicated
-		below, the terms and conditions of the EPL still apply to any source
-		code in the Content and such source code may be obtained at <a
-			href="http://www.eclipse.org/">http://www.eclipse.org</a>.
-	</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.test.performance.win32/build.properties b/bundles/org.eclipse.test.performance.win32/build.properties
deleted file mode 100644
index 3a43620..0000000
--- a/bundles/org.eclipse.test.performance.win32/build.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2007 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-bin.includes = os/,\
-               about.html,\
-               META-INF/,\
-               plugin.properties
-
-
diff --git a/bundles/org.eclipse.test.performance.win32/forceQualifierUpdate.txt b/bundles/org.eclipse.test.performance.win32/forceQualifierUpdate.txt
deleted file mode 100644
index 56f1032..0000000
--- a/bundles/org.eclipse.test.performance.win32/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
diff --git a/bundles/org.eclipse.test.performance.win32/os/win32/x86_64/ivjperf.dll b/bundles/org.eclipse.test.performance.win32/os/win32/x86_64/ivjperf.dll
deleted file mode 100644
index aeb32d7..0000000
--- a/bundles/org.eclipse.test.performance.win32/os/win32/x86_64/ivjperf.dll
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.win32/plugin.properties b/bundles/org.eclipse.test.performance.win32/plugin.properties
deleted file mode 100644
index c8adc79..0000000
--- a/bundles/org.eclipse.test.performance.win32/plugin.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2007 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-Plugin.name= Performance Monitor for Windows
-Plugin.providerName= Eclipse.org
diff --git a/bundles/org.eclipse.test.performance.win32/pom.xml b/bundles/org.eclipse.test.performance.win32/pom.xml
deleted file mode 100644
index c4a162c..0000000
--- a/bundles/org.eclipse.test.performance.win32/pom.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012 Eclipse Foundation.
-  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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.test</groupId>
-  <artifactId>org.eclipse.test.performance.win32</artifactId>
-  <version>3.1.500-SNAPSHOT</version>
-  <packaging>eclipse-plugin</packaging>
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>target-platform-configuration</artifactId>
-        <configuration>
-          <environments>
-            <environment>
-              <os>win32</os>
-              <ws>win32</ws>
-              <arch>x86_64</arch>
-            </environment>
-          </environments>
-        </configuration>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/bundles/org.eclipse.test.performance.win32/src/build.bat b/bundles/org.eclipse.test.performance.win32/src/build.bat
deleted file mode 100644
index ed2f0e4..0000000
--- a/bundles/org.eclipse.test.performance.win32/src/build.bat
+++ /dev/null
@@ -1,15 +0,0 @@
-@echo off
-if '%1' == '?' goto help
-if not '%BATLST%' == '' echo on
-rem - build        - Build the program
-
-del ivjperf.h
-call javah.exe -classpath "z:\jars\perfmsr.jar" -jni -o ivjperf.h org.eclipse.perfmsr.core.PerformanceMonitor
-echo After running this step you still need to do a build inside of VC
-@goto exit
-
-:help
-echo Build the program
-goto exit
-
-:exit
\ No newline at end of file
diff --git a/bundles/org.eclipse.test.performance.win32/src/ivjperf.c b/bundles/org.eclipse.test.performance.win32/src/ivjperf.c
deleted file mode 100644
index 32ead06..0000000
--- a/bundles/org.eclipse.test.performance.win32/src/ivjperf.c
+++ /dev/null
@@ -1,320 +0,0 @@
-/*
- This DLL provides some native utility methods for the Performance Plugin.
-
- 2003/07/08 - I tried providing my own replacement to GetPerformanceInfo by calling pdhopenquery()
- but wsad always crashed when I shut it down, so I backed off (at least for now) and simply return
- a function not available return code. At some later point in time you can go back in VSS and restore
- that code and try again.
- */
-
-#include <windows.h>
-#include <wincon.h>
-#include <psapi.h>
-
-#include "ivjperf.h"
-
-enum loadStatusType {unknown, loaded, notFound} loadStatus = unknown, loadHandleCount = unknown;
-
-// loadStatusType loadStatus;
-
-// depending on the OS (NT4/W2k or XP) we use different functions
-typedef BOOL WINAPI _GPI(PPERFORMACE_INFORMATION pPerformanceInformation, DWORD cb);
-
-_GPI* gpGetPerformanceInfo = NULL;	// this is our function pointer
-
-typedef BOOL WINAPI _GPHC(HANDLE hProcess, PDWORD count);
-_GPHC* gpGetProcessHandleCount = NULL;
-
-
-/*
-	A helper function that makes it easier to throw exceptions.
-*/
-void throwException(JNIEnv * jniEnv, char* details)
-{
-	jclass exceptionClass;
-
-	exceptionClass = (*jniEnv)->FindClass(jniEnv, "java/lang/IllegalArgumentException"); 
-	if (exceptionClass == 0)
-	{
-		printf("Could not find the exception class I have to give up");
-		return;
-	}
-	(*jniEnv)->ThrowNew(jniEnv, exceptionClass, details);
-	return;
-
-}
-
-/*
-	A helper function that throws an exception that tells us a function is not supported
-*/
-void throwUnsupported(JNIEnv * jniEnv, char* details)
-{
-	jclass exceptionClass;
-
-	exceptionClass = (*jniEnv)->FindClass(jniEnv, "java/lang/UnsupportedOperationException"); 
-	if (exceptionClass == 0)
-	{
-		printf("Could not find the UnsupportedOperationException class I have to give up");
-		return;
-	}
-	(*jniEnv)->ThrowNew(jniEnv, exceptionClass, details);
-	return;
-
-}
-
-/*
-	A helper method that makes it easier to handle errors. If a windows
-	error is encountered, then a RuntimeException is thrown.
-*/
-void handleSystemError(JNIEnv * jniEnv)
-{
-	jclass exceptionClass;
-	LPVOID lpMsgBuf;
-
-	if (!FormatMessage( 
-		FORMAT_MESSAGE_ALLOCATE_BUFFER | 
-		FORMAT_MESSAGE_FROM_SYSTEM | 
-		FORMAT_MESSAGE_IGNORE_INSERTS,
-		NULL,
-		GetLastError(),
-		MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
-		(LPTSTR) &lpMsgBuf,
-		0,
-		NULL ))
-	{
-		// I give up
-		return;
-	}
-
-	exceptionClass = (*jniEnv)->FindClass(jniEnv, "java/lang/RuntimeException"); 
-	(*jniEnv)->ThrowNew(jniEnv, exceptionClass, lpMsgBuf);
-	LocalFree( lpMsgBuf );
-}
-
-/*
-	Determine if you can (or have) loaded the GetPerformanceInfo function. Set the global variable
-	loadStatus with your determination.
-*/
-void checkGetPerformanceInfo(JNIEnv * jniEnv)
-{
-	if (loadStatus == unknown)
-	{
-		HMODULE psapiHandle = LoadLibraryA("PSAPI.dll");
-		if (psapiHandle == NULL)
-		{
-			loadStatus = notFound;
-			throwUnsupported(jniEnv, "Could not load psapi.dll");
-			return;
-		}
-		gpGetPerformanceInfo = (_GPI*)GetProcAddress(psapiHandle, "GetPerformanceInfo");
-
-		if(gpGetPerformanceInfo == NULL)loadStatus = notFound;
-		else loadStatus = loaded;
-	}
-}
-
-/*
-	If you can answer the total amount of committed memory (for the entire machine). If you can't
-	figure this out then return -1.
-*/
-jlong getTotalCommitted(JNIEnv * jniEnv)
-{
-	BOOL rc;
-	jlong result = -1;
-	PERFORMACE_INFORMATION	pi;
-
-	checkGetPerformanceInfo(jniEnv);
-	if (loadStatus == loaded)
-	{
-		rc = (gpGetPerformanceInfo)(&pi, sizeof(pi));
-		if (!rc)handleSystemError(jniEnv);
-		else result = pi.CommitTotal * pi.PageSize;
-	}
-	return result;
-}
-
-/*
-	Answer the number of open handles in the process. If you can't get this information return -1.
-*/
-jlong getHandleCount(JNIEnv * jniEnv, HANDLE me)
-{
-	jlong result = -1;
-	DWORD handleCount;
-
-	if (loadHandleCount == unknown)
-	{
-		HMODULE kernel32 = LoadLibraryA("kernel32.dll");
-		if (kernel32 == NULL)
-		{
-			loadHandleCount = notFound;
-			throwUnsupported(jniEnv, "Could not load kernel32.dll");
-		}
-		else
-		{
-			gpGetProcessHandleCount = (_GPHC*)GetProcAddress(kernel32, "GetProcessHandleCount");
-
-			if(gpGetProcessHandleCount == NULL)loadHandleCount = notFound;
-			else loadHandleCount = loaded;
-		}
-	}
-
-	if (loadHandleCount == loaded)
-	{
-		(gpGetProcessHandleCount)(me, &handleCount);
-		result = handleCount;
-	}
-	return result;
-}
-
-/*
-	The following block is copied from the Java source code. It documents the counters array.
-
-	 * @param counters the results are returned in this array.
-	 * <ol>
-	 * <li>working set in bytes for this process
-	 * <li>peak working set in bytes for this process
-	 * <li>elapsed time in milliseconds
-	 * <li>user time in milliseconds
-	 * <li>kernel time in milliseconds
-	 * <li>page faults for the process
-	 * <li>commit charge total in bytes (working set for the entire machine). On some 
-	 * machines we have problems getting this value so we return -1 in that case.
-	 * <li>number of GDI objects in the process
-	 * <li>number of USER objects in the process
-	 * <li>number of open handles in the process. returns -1 if this information is not available
-	 * <li>Number of read operations
-	 * <li>Number of write operations
-	 * <li>Number of bytes read
-	 * <li>Number of bytes written
-	 * </ol>
-
-*/
-JNIEXPORT jboolean JNICALL Java_org_eclipse_perfmsr_core_PerformanceMonitor_nativeGetPerformanceCounters
-  (JNIEnv * jniEnv, jclass jniClass, jlongArray counters)
-{
-	FILETIME creationTime, exitTime, kernelTime, userTime, systemTime;
-	ULARGE_INTEGER uliCreation, uliSystem, uliKernel, uliUser;
-	ULONGLONG diff;
-	IO_COUNTERS ioCounters;
-
-	jboolean result = TRUE;
-	jsize len = (*jniEnv)->GetArrayLength(jniEnv, counters);
-	jlong *body = (*jniEnv)->GetLongArrayElements(jniEnv, counters, 0);
-	HANDLE me = GetCurrentProcess();
-	PROCESS_MEMORY_COUNTERS memCounters;
-	DWORD cb = sizeof(PROCESS_MEMORY_COUNTERS);
-	BOOL rc = GetProcessMemoryInfo(me, &memCounters, cb);
-	if (rc != 0)
-	{
-		body[0] = memCounters.WorkingSetSize;
-		body[1] = memCounters.PeakWorkingSetSize;
-		body[5] = memCounters.PageFaultCount;
-	}
-	else
-	{
-		handleSystemError(jniEnv);
-		return FALSE;
-	}
-
-	if (!GetProcessTimes(me, &creationTime, &exitTime, &kernelTime, &userTime))
-	{
-		handleSystemError(jniEnv);
-		return FALSE;
-	}
-	GetSystemTimeAsFileTime(&systemTime);
-
-	memcpy(&uliCreation, &creationTime, sizeof(uliCreation));  
-	memcpy(&uliSystem, &systemTime, sizeof(uliSystem));
-	memcpy(&uliKernel, &kernelTime, sizeof(uliSystem));
-	memcpy(&uliUser, &userTime, sizeof(ULARGE_INTEGER));
-	diff = uliSystem.QuadPart - uliCreation.QuadPart;
-	body[2] = diff / 10000;
-	body[3] = uliUser.QuadPart / 10000;
-	body[4] = uliKernel.QuadPart / 10000;
-	body[6] = getTotalCommitted(jniEnv);
-
-	body[7] = GetGuiResources(me, GR_GDIOBJECTS);
-	body[8] = GetGuiResources(me, GR_USEROBJECTS);
-	body[9] = getHandleCount(jniEnv, me);
-
-	if (!GetProcessIoCounters(me, &ioCounters))
-	{
-		handleSystemError(jniEnv);
-		return FALSE;
-	}
-	body[10] = ioCounters.ReadOperationCount;
-	body[11] = ioCounters.WriteOperationCount;
-	body[12] = ioCounters.ReadTransferCount;
-	body[13] = ioCounters.WriteTransferCount;
-
-	(*jniEnv)->ReleaseLongArrayElements(jniEnv, counters, body, 0);
-
-	return result;
-}
-
-JNIEXPORT jstring JNICALL Java_org_eclipse_perfmsr_core_PerformanceMonitor_nativeGetUUID
-  (JNIEnv * jniEnv, jclass jniClass)
-{
-	UUID				uuid;
-	unsigned char*		uuidStr;
-	jstring				result;
-
-	UuidCreate(&uuid);
-	UuidToString(&uuid, &uuidStr);
-
-	result = (*jniEnv)->NewStringUTF(jniEnv, uuidStr); 
-	RpcStringFree(&uuidStr);
-
-	return result;
-}
-
-
-JNIEXPORT void JNICALL Java_org_eclipse_perfmsr_core_PerformanceMonitor_nativeGetPerformanceInfo
-  (JNIEnv * jniEnv, jclass jniClass, jlongArray counters)
-{
-	jlong *body;
-	BOOL rc;
-	PERFORMACE_INFORMATION	pi;
-
-	jsize len = (*jniEnv)->GetArrayLength(jniEnv, counters); 
-	
-	if (len != 13)
-	{
-		throwException(jniEnv, "Wrong number of elements in array, 13 are expected");
-		return;
-	}
-
-	checkGetPerformanceInfo(jniEnv);
-	if (loadStatus == notFound)
-	{
-		throwUnsupported(jniEnv, "The GetPerformanceInfo() function is not available");
-		return;
-	}
-	
-	body = (*jniEnv)->GetLongArrayElements(jniEnv, counters, 0);
-	
-	rc = (gpGetPerformanceInfo)(&pi, sizeof(pi));
-	if (!rc)
-	{
-		handleSystemError(jniEnv);
-		return;
-	}
-
-	body[0] = pi.CommitTotal;
-	body[1] = pi.CommitLimit;
-	body[2] = pi.CommitPeak;
-	body[3] = pi.PhysicalTotal;
-	body[4] = pi.PhysicalAvailable;
-	body[5] = pi.SystemCache;
-	body[6] = pi.KernelTotal;
-	body[7] = pi.KernelPaged;
-	body[8] = pi.KernelNonpaged;
-	body[9] = pi.PageSize;
-	body[10] = pi.HandleCount;
-	body[11] = pi.ProcessCount;
-	body[12] = pi.ThreadCount;
-
-	(*jniEnv)->ReleaseLongArrayElements(jniEnv, counters, body, 0);
-
-}
-
diff --git a/bundles/org.eclipse.test.performance.win32/src/ivjperf.h b/bundles/org.eclipse.test.performance.win32/src/ivjperf.h
deleted file mode 100644
index c7173b8..0000000
--- a/bundles/org.eclipse.test.performance.win32/src/ivjperf.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/* DO NOT EDIT THIS FILE - it is machine generated */
-#include <jni.h>
-/* Header for class org_eclipse_perfmsr_core_PerformanceMonitor */
-
-#ifndef _Included_org_eclipse_perfmsr_core_PerformanceMonitor
-#define _Included_org_eclipse_perfmsr_core_PerformanceMonitor
-#ifdef __cplusplus
-extern "C" {
-#endif
-/* Inaccessible static: _debug */
-/* Inaccessible static: _isLoaded */
-#undef org_eclipse_perfmsr_core_PerformanceMonitor_WHAT_ELASPED_IDX
-#define org_eclipse_perfmsr_core_PerformanceMonitor_WHAT_ELASPED_IDX 2L
-#undef org_eclipse_perfmsr_core_PerformanceMonitor_WHAT_USER_TIME_IDX
-#define org_eclipse_perfmsr_core_PerformanceMonitor_WHAT_USER_TIME_IDX 3L
-#undef org_eclipse_perfmsr_core_PerformanceMonitor_WHAT_KERNEL_TIME_IDX
-#define org_eclipse_perfmsr_core_PerformanceMonitor_WHAT_KERNEL_TIME_IDX 4L
-#undef org_eclipse_perfmsr_core_PerformanceMonitor_WHAT_COMMITTED_IDX
-#define org_eclipse_perfmsr_core_PerformanceMonitor_WHAT_COMMITTED_IDX 6L
-#undef org_eclipse_perfmsr_core_PerformanceMonitor_WHAT_OPEN_HANDLES_IDX
-#define org_eclipse_perfmsr_core_PerformanceMonitor_WHAT_OPEN_HANDLES_IDX 9L
-/* Inaccessible static: _df */
-/* Inaccessible static: _map */
-/*
- * Class:     org_eclipse_perfmsr_core_PerformanceMonitor
- * Method:    nativeGetPerformanceInfo
- * Signature: ([J)V
- */
-JNIEXPORT void JNICALL Java_org_eclipse_perfmsr_core_PerformanceMonitor_nativeGetPerformanceInfo
-  (JNIEnv *, jclass, jlongArray);
-
-/*
- * Class:     org_eclipse_perfmsr_core_PerformanceMonitor
- * Method:    nativeGetPerformanceCounters
- * Signature: ([J)Z
- */
-JNIEXPORT jboolean JNICALL Java_org_eclipse_perfmsr_core_PerformanceMonitor_nativeGetPerformanceCounters
-  (JNIEnv *, jclass, jlongArray);
-
-/*
- * Class:     org_eclipse_perfmsr_core_PerformanceMonitor
- * Method:    nativeGetUUID
- * Signature: ()Ljava/lang/String;
- */
-JNIEXPORT jstring JNICALL Java_org_eclipse_perfmsr_core_PerformanceMonitor_nativeGetUUID
-  (JNIEnv *, jclass);
-
-#ifdef __cplusplus
-}
-#endif
-#endif
diff --git a/bundles/org.eclipse.test.performance.win32/src/resource.h b/bundles/org.eclipse.test.performance.win32/src/resource.h
deleted file mode 100644
index 71b6748..0000000
--- a/bundles/org.eclipse.test.performance.win32/src/resource.h
+++ /dev/null
@@ -1,14 +0,0 @@
-//{{NO_DEPENDENCIES}}
-// Microsoft Visual C++ generated include file.
-// Used by ivjperf.rc
-
-// Next default values for new objects
-// 
-#ifdef APSTUDIO_INVOKED
-#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE        101
-#define _APS_NEXT_COMMAND_VALUE         40001
-#define _APS_NEXT_CONTROL_VALUE         1001
-#define _APS_NEXT_SYMED_VALUE           101
-#endif
-#endif
diff --git a/bundles/org.eclipse.test.performance/.classpath b/bundles/org.eclipse.test.performance/.classpath
deleted file mode 100644
index b14a53c..0000000
--- a/bundles/org.eclipse.test.performance/.classpath
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
-		<attributes>
-			<attribute name="module" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.test.performance/.project b/bundles/org.eclipse.test.performance/.project
deleted file mode 100644
index 1f09a58..0000000
--- a/bundles/org.eclipse.test.performance/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.test.performance</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.api.tools.apiAnalysisBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
-	</natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.test.performance/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.test.performance/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.test.performance/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.test.performance/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.test.performance/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.test.performance/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.test.performance/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.test.performance/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index d61d9e9..0000000
--- a/bundles/org.eclipse.test.performance/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,456 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.classpath.outputOverlappingAnotherSource=error
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=11
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=info
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=error
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=error
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=disabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disable
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=error
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=error
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=error
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=info
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=info
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.release=disabled
-org.eclipse.jdt.core.compiler.source=11
-org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=99
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=true
-org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=1
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
-org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
-org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=17
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=1
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=1
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=next_line_on_wrap
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
-org.eclipse.jdt.core.formatter.comment.line_length=132
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=true
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=256
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=true
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=space
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_on_off_tags=false
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=true
-org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
-org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=false
-org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.incompleteClasspath=error
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/bundles/org.eclipse.test.performance/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.test.performance/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 3919f5b..0000000
--- a/bundles/org.eclipse.test.performance/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,123 +0,0 @@
-cleanup.add_default_serial_version_id=false
-cleanup.add_generated_serial_version_id=true
-cleanup.add_missing_annotations=true
-cleanup.add_missing_deprecated_annotations=true
-cleanup.add_missing_methods=true
-cleanup.add_missing_nls_tags=false
-cleanup.add_missing_override_annotations=true
-cleanup.add_missing_override_annotations_interface_methods=true
-cleanup.add_serial_version_id=true
-cleanup.always_use_blocks=true
-cleanup.always_use_parentheses_in_expressions=true
-cleanup.always_use_this_for_non_static_field_access=false
-cleanup.always_use_this_for_non_static_method_access=false
-cleanup.convert_functional_interfaces=false
-cleanup.convert_to_enhanced_for_loop=false
-cleanup.correct_indentation=true
-cleanup.format_source_code=true
-cleanup.format_source_code_changes_only=false
-cleanup.insert_inferred_type_arguments=false
-cleanup.make_local_variable_final=true
-cleanup.make_parameters_final=true
-cleanup.make_private_fields_final=true
-cleanup.make_type_abstract_if_missing_method=false
-cleanup.make_variable_declarations_final=true
-cleanup.never_use_blocks=false
-cleanup.never_use_parentheses_in_expressions=false
-cleanup.organize_imports=true
-cleanup.qualify_static_field_accesses_with_declaring_class=false
-cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-cleanup.qualify_static_member_accesses_with_declaring_class=true
-cleanup.qualify_static_method_accesses_with_declaring_class=false
-cleanup.remove_private_constructors=true
-cleanup.remove_redundant_type_arguments=true
-cleanup.remove_trailing_whitespaces=true
-cleanup.remove_trailing_whitespaces_all=true
-cleanup.remove_trailing_whitespaces_ignore_empty=false
-cleanup.remove_unnecessary_casts=true
-cleanup.remove_unnecessary_nls_tags=true
-cleanup.remove_unused_imports=true
-cleanup.remove_unused_local_variables=false
-cleanup.remove_unused_private_fields=false
-cleanup.remove_unused_private_members=true
-cleanup.remove_unused_private_methods=false
-cleanup.remove_unused_private_types=true
-cleanup.sort_members=true
-cleanup.sort_members_all=false
-cleanup.use_anonymous_class_creation=false
-cleanup.use_blocks=true
-cleanup.use_blocks_only_for_return_and_throw=false
-cleanup.use_lambda=true
-cleanup.use_parentheses_in_expressions=true
-cleanup.use_this_for_non_static_field_access=true
-cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-cleanup.use_this_for_non_static_method_access=true
-cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-cleanup.use_type_arguments=false
-cleanup_profile=_Eclipse Releng
-cleanup_settings_version=2
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=_Eclipse Releng
-formatter_settings_version=12
-internal.default.compliance=default
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_missing_override_annotations_interface_methods=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_functional_interfaces=true
-sp_cleanup.convert_to_enhanced_for_loop=true
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=true
-sp_cleanup.format_source_code_changes_only=true
-sp_cleanup.insert_inferred_type_arguments=false
-sp_cleanup.make_local_variable_final=true
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=false
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_redundant_modifiers=true
-sp_cleanup.remove_redundant_semicolons=true
-sp_cleanup.remove_redundant_type_arguments=true
-sp_cleanup.remove_trailing_whitespaces=true
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=false
-sp_cleanup.remove_unused_imports=true
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_anonymous_class_creation=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_lambda=true
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/bundles/org.eclipse.test.performance/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.test.performance/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index ba85338..0000000
--- a/bundles/org.eclipse.test.performance/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,32 +0,0 @@
-compilers.f.unresolved-features=1
-compilers.f.unresolved-plugins=1
-compilers.incompatible-environment=0
-compilers.p.build=1
-compilers.p.build.bin.includes=1
-compilers.p.build.encodings=2
-compilers.p.build.java.compiler=2
-compilers.p.build.java.compliance=1
-compilers.p.build.missing.output=2
-compilers.p.build.output.library=1
-compilers.p.build.source.library=1
-compilers.p.build.src.includes=1
-compilers.p.deprecated=1
-compilers.p.discouraged-class=1
-compilers.p.internal=1
-compilers.p.missing-packages=0
-compilers.p.missing-version-export-package=2
-compilers.p.missing-version-import-package=2
-compilers.p.missing-version-require-bundle=2
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=0
-compilers.p.unknown-element=0
-compilers.p.unknown-identifier=1
-compilers.p.unknown-resource=0
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.s.create-docs=false
-compilers.s.doc-folder=doc
-compilers.s.open-tags=1
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.test.performance/META-INF/MANIFEST.MF b/bundles/org.eclipse.test.performance/META-INF/MANIFEST.MF
deleted file mode 100644
index 9be90f7..0000000
--- a/bundles/org.eclipse.test.performance/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,24 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %Plugin.name
-Bundle-SymbolicName: org.eclipse.test.performance
-Bundle-Version: 3.18.0.qualifier
-Bundle-Activator: org.eclipse.test.internal.performance.PerformanceTestPlugin
-Bundle-Vendor: %Plugin.providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.perfmsr.core,
- org.eclipse.test,
- org.eclipse.test.internal;x-internal:=true,
- org.eclipse.test.internal.performance,
- org.eclipse.test.internal.performance.data,
- org.eclipse.test.internal.performance.db,
- org.eclipse.test.internal.performance.eval,
- org.eclipse.test.internal.performance.tests,
- org.eclipse.test.performance
-Require-Bundle: org.eclipse.core.runtime,
- org.junit,
- org.junit.jupiter.api
-Bundle-ActivationPolicy: lazy
-Bundle-ClassPath: .
-Bundle-RequiredExecutionEnvironment: JavaSE-11
-Automatic-Module-Name: org.eclipse.test.performance
diff --git a/bundles/org.eclipse.test.performance/about.html b/bundles/org.eclipse.test.performance/about.html
deleted file mode 100644
index 164f781..0000000
--- a/bundles/org.eclipse.test.performance/about.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>About</title>
-</head>
-<body lang="EN-US">
-	<h2>About This Content</h2>
-
-	<p>November 30, 2017</p>
-	<h3>License</h3>
-
-	<p>
-		The Eclipse Foundation makes available all content in this plug-in
-		(&quot;Content&quot;). Unless otherwise indicated below, the Content
-		is provided to you under the terms and conditions of the Eclipse
-		Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
-		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
-		For purposes of the EPL, &quot;Program&quot; will mean the Content.
-	</p>
-
-	<p>
-		If you did not receive this Content directly from the Eclipse
-		Foundation, the Content is being redistributed by another party
-		(&quot;Redistributor&quot;) and different terms and conditions may
-		apply to your use of any object code in the Content. Check the
-		Redistributor's license that was provided with the Content. If no such
-		license exists, contact the Redistributor. Unless otherwise indicated
-		below, the terms and conditions of the EPL still apply to any source
-		code in the Content and such source code may be obtained at <a
-			href="http://www.eclipse.org/">http://www.eclipse.org</a>.
-	</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.test.performance/build.properties b/bundles/org.eclipse.test.performance/build.properties
deleted file mode 100644
index 2b8e8a7..0000000
--- a/bundles/org.eclipse.test.performance/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2004 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-bin.includes = .,\
-               plugin.properties,\
-               about.html,\
-               META-INF/
-               
-source.. = src/
-src.includes = about.html
diff --git a/bundles/org.eclipse.test.performance/forceQualifierUpdate.txt b/bundles/org.eclipse.test.performance/forceQualifierUpdate.txt
deleted file mode 100644
index bdbde48..0000000
--- a/bundles/org.eclipse.test.performance/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
-Bug 485498 - Add generics to org.eclipse.test.performance
-Bug 534597 - Unanticipated comparator errors in I20180511-2000
\ No newline at end of file
diff --git a/bundles/org.eclipse.test.performance/plugin.properties b/bundles/org.eclipse.test.performance/plugin.properties
deleted file mode 100644
index 41d7849..0000000
--- a/bundles/org.eclipse.test.performance/plugin.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-Plugin.name= Performance Test Plug-in
-Plugin.providerName= Eclipse.org
diff --git a/bundles/org.eclipse.test.performance/pom.xml b/bundles/org.eclipse.test.performance/pom.xml
deleted file mode 100644
index 7184461..0000000
--- a/bundles/org.eclipse.test.performance/pom.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.test</groupId>
-  <artifactId>org.eclipse.test.performance</artifactId>
-  <version>3.18.0-SNAPSHOT</version>
-  <packaging>eclipse-plugin</packaging>
-  <properties>
-     <code.ignoredWarnings>-warn:-deprecation,unavoidableGenericProblems,raw,unchecked</code.ignoredWarnings>
-  </properties>
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>target-platform-configuration</artifactId>
-        <configuration>
-          <dependency-resolution>
-            <optionalDependencies>ignore</optionalDependencies>
-            <extraRequirements>
-              <requirement>
-                <type>eclipse-plugin</type>
-                <id>org.eclipse.core.jobs</id>
-                <versionRange>0.0.0</versionRange>
-              </requirement>
-            </extraRequirements>
-          </dependency-resolution>
-        </configuration>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/bundles/org.eclipse.test.performance/scripts/exportplugin.xml b/bundles/org.eclipse.test.performance/scripts/exportplugin.xml
deleted file mode 100644
index 03a67bf..0000000
--- a/bundles/org.eclipse.test.performance/scripts/exportplugin.xml
+++ /dev/null
@@ -1,95 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- build script to create a plugin from ${plugin} -->
-<project name="${plugin}" default="export plug-in [_3.5.0]" basedir="..">
-
-	<target name="export plug-in [_3.5.0]">
-	    <tstamp/>
-		<antcall target="zz_internal_export">
-			<param name="test_performance_version" value="3.5.0"/>
-		</antcall>
-	</target>
-	<target name="export plug-in [_3.4.0]">
-	    <tstamp/>
-		<antcall target="zz_internal_export">
-			<param name="test_performance_version" value="3.4.0"/>
-		</antcall>
-	</target>
-<target name="export plug-in [_3.4.0.qualifier] (binary only)">
-    <tstamp/>
-	<property name="qualifier" value="${DSTAMP}${TSTAMP}" />
-	<antcall target="zz_internal_export_binary_only">
-		<param name="test_performance_version" value="3.4.0.${qualifier}"/>
-	</antcall>
-</target>
-<target name="export plug-in [_3.4.0.qualifier] (with sources)">
-    <tstamp/>
-	<property name="qualifier" value="${DSTAMP}${TSTAMP}" />
-	<antcall target="zz_internal_export">
-		<param name="test_performance_version" value="3.4.0.${qualifier}"/>
-	</antcall>
-</target>
-
-<target name="zz_internal_export">
-
-	<tstamp/>
-	<property name="export-dir" value="./org.eclipse.releng.basebuilder/plugins" />
-	<property name="plugin" value="org.eclipse.test.performance" />
-	<property name="plugin-dir" value="${export-dir}/${plugin}_${test_performance_version}"/>
-
-	<echo message="TARGET: ${export-dir}" />
-	<mkdir dir="${export-dir}" />
-
-	<echo message="UPDATE ${plugin}_${test_performance_version}.jar" />
-	<copy todir="${plugin}/META-INF">
-		<fileset dir="META-INF" />
-	</copy>  
-	<replaceregexp file="${export-dir}/META-INF/MANIFEST.MF" match="Bundle-Version: ((\d)+\.(\d)+\.(\d)+\.)qualifier" replace="Bundle-Version: \1${qualifier}" byline="true" />
-	<zip zipfile="${export-dir}/${plugin}_${test_performance_version}.jar">
-		<fileset dir=".">
-		  <include name="plugin.xml" />
-		  <include name="plugin.properties" />
-          <include name="about.html"/>
-        </fileset>
-		<fileset dir="${export-dir}">
-			<include name="META-INF/**" />
-		</fileset>
-        <fileset dir="bin" />
-        <zipfileset dir="src" prefix="src"/>
-	</zip>
-	<delete dir="${export-dir}/META-INF" />
-
-</target>
-
-<target name="zz_internal_export_binary_only">
-
-	<tstamp/>
-	<property name="export-dir" value="../org.eclipse.releng.basebuilder/plugins" />
-	<property name="plugin" value="org.eclipse.test.performance" />
-	<property name="plugin-dir" value="${export-dir}/${plugin}_${test_performance_version}"/>
-
-	<echo message="TARGET: ${export-dir}" />
-	<mkdir dir="${export-dir}" />
-
-	<echo message="UPDATE ${plugin}_${test_performance_version}.jar" />
-	<copy todir="${export-dir}/META-INF">
-		<fileset dir="META-INF" />
-	</copy>  
-	<replaceregexp file="${export-dir}/META-INF/MANIFEST.MF" match="Bundle-Version: ((\d)+\.(\d)+\.(\d)+\.)qualifier" replace="Bundle-Version: \1${qualifier}" byline="true" />
-	<zip zipfile="${export-dir}/${plugin}_${test_performance_version}.jar">
-		<fileset dir=".">
-		  <include name="plugin.xml" />
-		  <include name="plugin.properties" />
-	      <include name=".options"/>
-          <include name="about.html"/>
-        </fileset>
-		<fileset dir="${export-dir}">
-			<include name="META-INF/**" />
-		</fileset>
-        <fileset dir="bin" />
-	</zip>
-	<delete dir="${export-dir}/META-INF" />
-
-</target>
-
-</project>
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/perfmsr/core/PerformanceMonitor.java b/bundles/org.eclipse.test.performance/src/org/eclipse/perfmsr/core/PerformanceMonitor.java
deleted file mode 100644
index 44f261f..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/perfmsr/core/PerformanceMonitor.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.perfmsr.core;
-
-/**
- * Some natives for PerformanceMonitorWindows. (We cannot fold them into the PerformanceMonitorWindows because this would break the
- * natives and we don't want to rebuild them yet).
- */
-public class PerformanceMonitor {
-
-    /**
-     * ivjperf - name of the library that implements the native methods.
-     */
-    private static final String NATIVE_LIBRARY_NAME = "ivjperf"; //$NON-NLS-1$
-
-    /**
-     * Is the native library loaded? 0-don't know, 1-no, 2-yes
-     */
-    private static int          fgIsLoaded          = 0;
-
-    /**
-     * Answer true if the native library for this class has been successfully loaded. If the load has not been attempted yet, try to
-     * load it.
-     *
-     * @return true if native library has been successfully loaded
-     */
-    public static boolean isLoaded() {
-        if (fgIsLoaded == 0) {
-            try {
-                System.loadLibrary(NATIVE_LIBRARY_NAME);
-                fgIsLoaded = 2;
-            }
-            catch (Throwable e) {
-                e.printStackTrace();
-                fgIsLoaded = 1;
-            }
-        }
-        return fgIsLoaded == 2;
-    }
-
-    /**
-     * Calls the Windows GetPerformanceInfo function
-     *
-     * @param counters
-     *            any array of counters that corresponds to the Windows PERFORMANCE_INFORMATION structure.
-     */
-    public static native void nativeGetPerformanceInfo(long[] counters);
-
-    public static native boolean nativeGetPerformanceCounters(long[] counters);
-
-    public static native String nativeGetUUID();
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/OrderedTestSuite.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/OrderedTestSuite.java
deleted file mode 100644
index 2911f10..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/OrderedTestSuite.java
+++ /dev/null
@@ -1,272 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2020 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test;
-
-import java.io.BufferedInputStream;
-import java.io.DataInputStream;
-import java.io.IOException;
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-/**
- * Test suite with user-specified test order (fails if not all test methods are listed) or bytecode declaration order.
- *
- * <p>
- * <b>Background:</b> {@link java.lang.Class#getDeclaredMethods()} does not specify the order of the methods. Up to Java SE 6, the
- * methods were usually sorted in declaration order, but in Java SE 7 and later, the order is random. This class guarantees reliable
- * test execution order even for questionable VM implementations.
- * </p>
- *
- * @since 3.8
- */
-public class OrderedTestSuite extends TestSuite {
-
-    /**
-     * Creates a new ordered test suite that runs tests in the specified execution order.
-     *
-     * @param testClass
-     *            the JUnit-3-style test class
-     * @param testMethods
-     *            the names of all test methods in the expected execution order
-     */
-    public OrderedTestSuite(final Class<? extends TestCase> testClass, String[] testMethods) {
-        super(testClass.getName());
-
-        Set<String> existingMethods = new HashSet<>();
-        Method[] methods = testClass.getMethods(); // just public member methods
-        for (Method method : methods) {
-            existingMethods.add(method.getName());
-        }
-
-        for (final String testMethod : testMethods) {
-            if (existingMethods.remove(testMethod)) {
-                addTest(createTest(testClass, testMethod));
-            } else {
-                addTest(error(testClass, testMethod, new IllegalArgumentException("Class '" + testClass.getName() + " misses test method '" + testMethod + "'."))); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-            }
-        }
-
-        for (String existingMethod : existingMethods) {
-            if (existingMethod.startsWith("test")) { //$NON-NLS-1$
-                addTest(error(testClass, existingMethod, new IllegalArgumentException("Test method '" + existingMethod + "' not listed in OrderedTestSuite of class '" + testClass.getName() + "'."))); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-            }
-        }
-
-    }
-
-    /**
-     * Creates a new test suite that runs tests in bytecode declaration order.
-     *
-     * @param testClass
-     *            the JUnit-3-style test class
-     * @since 3.9
-     */
-    public OrderedTestSuite(Class<? extends TestCase> testClass) {
-        this(testClass, testClass.getName());
-    }
-
-    /**
-     * Creates a new test suite that runs tests in bytecode declaration order.
-     *
-     * @param testClass
-     *            the JUnit-3-style test class
-     * @param name
-     *            the name of the suite
-     * @since 3.9
-     */
-    public OrderedTestSuite(Class<? extends TestCase> testClass, String name) {
-        super(name);
-
-        TestSuite vmOrderSuite = new TestSuite(testClass);
-        ArrayList<Test> tests = Collections.list(vmOrderSuite.tests());
-
-        class SortingException extends RuntimeException {
-
-            private static final long serialVersionUID = 1L;
-
-            public SortingException(String message) {
-                super(message);
-            }
-        }
-
-        try {
-            final List<String> orderedMethodNames = getBytecodeOrderedTestNames(testClass);
-            tests.sort((o1, o2) -> {
-                if (o1 instanceof TestCase && o2 instanceof TestCase) {
-                    TestCase t1 = (TestCase) o1;
-                    TestCase t2 = (TestCase) o2;
-                    int i1 = orderedMethodNames.indexOf(t1.getName());
-                    int i2 = orderedMethodNames.indexOf(t2.getName());
-                    if (i1 != -1 && i2 != -1)
-                        return i1 - i2;
-                }
-                throw new SortingException("suite failed to detect test order: " + o1 + ", " + o2); //$NON-NLS-1$ //$NON-NLS-2$
-            });
-        } catch (SortingException | IOException e) {
-            addTest(error(testClass, "suite failed to detect test order", e)); //$NON-NLS-1$
-        }
-
-        for (Test test : tests) {
-            addTest(test);
-        }
-    }
-
-    /**
-     * Returns the names of JUnit-3-style test cases declared in the given <code>testClass</code> and its superclasses, in bytecode
-     * declaration order, listing test cases from a class before the non-overridden test cases from its superclass.
-     *
-     * @param testClass
-     *            the JUnit-3-style test class
-     * @return a modifiable <code>List&lt;String&gt;</code> of test names in bytecode declaration order
-     * @throws IOException
-     *             if an I/O error occurs.
-     *
-     * @since 3.10
-     */
-    public static List<String> getBytecodeOrderedTestNames(Class<? extends TestCase> testClass) throws IOException {
-        ArrayList<String> orderedMethodNames = new ArrayList<>();
-        Class<?> c = testClass;
-        while (Test.class.isAssignableFrom(c)) {
-            addDeclaredTestMethodNames(c, orderedMethodNames);
-            c = c.getSuperclass();
-        }
-        return orderedMethodNames;
-    }
-
-    private static void addDeclaredTestMethodNames(Class<?> c, ArrayList<String> methodNames) throws IOException {
-        /*
-         * XXX: This method needs to be updated if new constant pool tags are specified. Current supported major class file version:
-         * 52 (Java SE 8).
-         *
-         * See JVMS 8, 4.4 The Constant Pool.
-         */
-        String className = c.getName();
-        int lastDot = className.lastIndexOf("."); //$NON-NLS-1$
-        if (lastDot != -1)
-            className = className.substring(lastDot + 1);
-        DataInputStream is = new DataInputStream(new BufferedInputStream(c.getResourceAsStream(className + ".class"))); //$NON-NLS-1$
-        int magic = is.readInt();
-        if (magic != 0xcafebabe)
-            throw new IOException("bad magic bytes: 0x" + Integer.toHexString(magic)); //$NON-NLS-1$
-        int minor = is.readUnsignedShort();
-        int major = is.readUnsignedShort();
-        int cpCount = is.readUnsignedShort();
-        String[] constantPoolStrings = new String[cpCount];
-        for (int i = 1; i < cpCount; i++) {
-
-            byte tag = is.readByte();
-            switch (tag) {
-                case 7: // CONSTANT_Class
-                    skip(is, 2);
-                    break;
-                case 9: // CONSTANT_Fieldref
-                case 10: // CONSTANT_Methodref
-                case 11: // CONSTANT_InterfaceMethodref
-                    skip(is, 4);
-                    break;
-                case 8: // CONSTANT_String
-                    skip(is, 2);
-                    break;
-                case 3: // CONSTANT_Integer
-                case 4: // CONSTANT_Float
-                    skip(is, 4);
-                    break;
-                case 5: // CONSTANT_Long
-                case 6: // CONSTANT_Double
-                    skip(is, 8);
-                    i++; // weird spec wants this
-                    break;
-                case 12: // CONSTANT_NameAndType
-                    skip(is, 4);
-                    break;
-                case 1: // CONSTANT_Utf8
-                    constantPoolStrings[i] = is.readUTF();
-                    break;
-                case 15: // CONSTANT_MethodHandle
-                    skip(is, 3);
-                    break;
-                case 16: // CONSTANT_MethodType
-                    skip(is, 2);
-                    break;
-                case 18: // CONSTANT_InvokeDynamic
-                    skip(is, 4);
-                    break;
-                default:
-                    throw new IOException("unknown constant pool tag " + tag + " at index " + i + ". Class file version: " + major + "." + minor); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-            }
-        }
-        skip(is, 2 * 3); // access_flags, this_class, super_class
-        int interfacesCount = is.readUnsignedShort();
-        skip(is, 2 * interfacesCount);
-        int fieldsCount = is.readUnsignedShort();
-        for (int i = 0; i < fieldsCount; i++) {
-            skip(is, 2 * 3); // access_flags, name_index, descriptor_index
-            int attributesCount = is.readUnsignedShort();
-            for (int j = 0; j < attributesCount; j++) {
-                skip(is, 2); // attribute_name_index
-                long attInfoCount = readUnsignedInt(is);
-                skip(is, attInfoCount);
-            }
-        }
-
-        int methodsCount = is.readUnsignedShort();
-        for (int i = 0; i < methodsCount; i++) {
-            skip(is, 2); // access_flags
-            int nameIndex = is.readUnsignedShort();
-            int descIndex = is.readUnsignedShort();
-            if ("()V".equals(constantPoolStrings[descIndex])) { //$NON-NLS-1$
-                String name = constantPoolStrings[nameIndex];
-                if (name.startsWith("test") && !methodNames.contains(name)) //$NON-NLS-1$
-                    methodNames.add(name);
-            }
-            int attributesCount = is.readUnsignedShort();
-            for (int j = 0; j < attributesCount; j++) {
-                skip(is, 2); // attribute_name_index
-                long attInfoCount = readUnsignedInt(is);
-                skip(is, attInfoCount);
-            }
-        }
-    }
-
-    private static void skip(DataInputStream is, long bytes) throws IOException {
-        while (bytes > 0)
-            bytes -= is.skip(bytes);
-        if (bytes != 0)
-            throw new IOException("error in skipping bytes: " + bytes); //$NON-NLS-1$
-    }
-
-    private static long readUnsignedInt(DataInputStream is) throws IOException {
-        return is.readInt() & 0xFFFFffffL;
-    }
-
-    private static Test error(Class<? extends TestCase> testClass, String testMethod, Exception exception) {
-        final Throwable e2 = exception.fillInStackTrace();
-        return new TestCase(testMethod + "(" + testClass.getName() + ")") { //$NON-NLS-1$ //$NON-NLS-2$
-
-            @Override
-            protected void runTest() throws Throwable {
-                throw e2;
-            }
-        };
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/Screenshots.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/Screenshots.java
deleted file mode 100644
index a385da8..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/Screenshots.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test;
-
-import java.io.File;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.test.internal.AwtScreenshot;
-
-/**
- * Helper class to take screenshots from running tests.
- *
- * @since 3.13
- */
-public final class Screenshots {
-
-    /**
-     * Takes a screenshot and writes the path to the generated image file to System.out.
-     * <p>
-     * Workaround for missing {@link junit.framework.TestCase#getName()} in JUnit 4:
-     * </p>
-     *
-     * <pre>
-     * &#64;Rule
-     * public TestName testName = new TestName();
-     * </pre>
-     *
-     * @param testClass
-     *            test class that takes the screenshot
-     * @param name
-     *            screenshot identifier (e.g. test name)
-     * @return file system path to the screenshot file
-     */
-    public static String takeScreenshot(Class<?> testClass, String name) {
-        File resultsDir = getResultsDirectory();
-        String filename = new File(resultsDir.getAbsolutePath(), testClass.getName() + "." + name + ".png").getAbsolutePath();
-        AwtScreenshot.dumpAwtScreenshot(filename);
-        return filename;
-    }
-
-    /**
-     * @return unspecified
-     * @noreference This method is not intended to be referenced by clients.
-     */
-    public static File getResultsDirectory() {
-        File resultsDir = getJunitReportOutput(); // ends up in testresults/linux.gtk.x86_6.0/<class>.<test>.png
-
-        if (resultsDir == null) {
-            File eclipseDir = new File("").getAbsoluteFile();
-            if (isRunByGerritHudsonJob()) {
-                resultsDir = new File(eclipseDir, "/../").getAbsoluteFile(); // ends up in the workspace root
-            } else {
-                resultsDir = new File(System.getProperty("java.io.tmpdir"));
-            }
-        }
-
-        resultsDir.mkdirs();
-        return resultsDir;
-    }
-
-    private static File getJunitReportOutput() {
-        String[] args = Platform.getCommandLineArgs();
-        for (int i = 0; i < args.length - 1; i++) {
-            if ("-junitReportOutput".equals(args[i])) { // see library.xml and org.eclipse.test.EclipseTestRunner
-                return new File(args[i + 1]).getAbsoluteFile();
-            }
-        }
-        return null;
-    }
-
-    /**
-     * @return unspecified
-     * @noreference This method is not intended to be referenced by clients.
-     */
-    public static boolean isRunByGerritHudsonJob() {
-        return System.getProperty("user.dir").matches(".*/(?:eclipse|rt\\.equinox)\\.[^/]+-Gerrit/.*");
-    }
-
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/TracingSuite.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/TracingSuite.java
deleted file mode 100644
index 59398d2..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/TracingSuite.java
+++ /dev/null
@@ -1,292 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2020 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test;
-
-import java.io.PrintStream;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Inherited;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-import java.lang.management.ManagementFactory;
-import java.lang.management.ThreadInfo;
-import java.lang.management.ThreadMXBean;
-import java.lang.reflect.InaccessibleObjectException;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.Locale;
-import java.util.Timer;
-import java.util.TimerTask;
-import java.util.concurrent.ConcurrentHashMap;
-
-import org.junit.runner.Description;
-import org.junit.runner.Result;
-import org.junit.runner.Runner;
-import org.junit.runner.notification.Failure;
-import org.junit.runner.notification.RunListener;
-import org.junit.runner.notification.RunNotifier;
-import org.junit.runner.notification.StoppedByUserException;
-import org.junit.runners.Suite;
-import org.junit.runners.model.InitializationError;
-import org.junit.runners.model.RunnerBuilder;
-
-/**
- * The {@code TracingSuite} runner behaves like a normal {@link Suite}, but additionally logs the
- * start of each atomic test contained in the suite to {@code System.out}, and it tries to collect
- * more information after a timeout.
- * <p>
- * For atomic tests that run longer than 10 minutes, it tries to take a stack trace and a screenshot,
- * and then it tries to throw an IllegalStateException in the "main" thread. The exact behavior can be
- * configured using the {@link TracingOptions} annotation.
- * <p>
- * Usage: Modify an existing JUnit 4 suite class, or create a new one like this:
- * <pre>
-{@literal @}RunWith(TracingSuite.class)
-{@literal @}SuiteClasses(MyTestClass.class)
-{@literal @}TracingOptions(stackDumpTimeoutSeconds = 5)
-public class TracingMyTestClass { }
-</pre>
- * Directly annotating an existing JUnit 4 class that contains atomic tests doesn't work (JUnit 4 design flaw).
- */
-public class TracingSuite extends Suite {
-
-    /**
-     * Configuration options for classes annotated with {@code @RunWith(TracingSuite.class)}.
-     */
-    @Retention(RetentionPolicy.RUNTIME)
-    @Target(ElementType.TYPE)
-    @Inherited
-    public @interface TracingOptions {
-
-        /**
-         * @return true iff start times of atomic tests should be logged to {@code System.out}
-         */
-        public boolean logTestStart() default true;
-
-        /**
-         * @return the number of seconds after which a thread dump is initiated,
-         *         or 0 if no timer should be started
-         */
-        public long stackDumpTimeoutSeconds() default 10 * 60;
-
-        /**
-         * @return true iff the runner should try to throw an
-         *         {@link IllegalStateException} in the main thread after
-         *         writing a stack dump. This sometimes makes an program proceed
-         *         when the main thread was stuck in an endless loop.
-         */
-        public boolean throwExceptionInMainThread() default true;
-
-        /**
-         * @return the maximum number of screenshots that are taken
-         */
-        public int maxScreenshotCount() default 5;
-    }
-
-    private TracingOptions fTracingOptions;
-
-    private class TracingRunNotifier extends RunNotifier {
-        private RunNotifier fNotifier;
-        private Timer fTimer = new Timer(true);
-        private ConcurrentHashMap<Description, TimerTask> fRunningTests = new ConcurrentHashMap<>();
-
-        public TracingRunNotifier(RunNotifier notifier) {
-            fNotifier = notifier;
-        }
-
-        @Override
-        public void addListener(RunListener listener) {
-            fNotifier.addListener(listener);
-        }
-
-        @Override
-        public void removeListener(RunListener listener) {
-            fNotifier.removeListener(listener);
-        }
-
-        @Override
-        public void fireTestRunStarted(Description description) {
-            fNotifier.fireTestRunStarted(description);
-        }
-
-        @Override
-        public void fireTestRunFinished(Result result) {
-            fNotifier.fireTestRunFinished(result);
-        }
-
-        @Override
-        public void fireTestStarted(Description description) throws StoppedByUserException {
-            Date start = new Date();
-            if (fTracingOptions.logTestStart()) {
-                String message = format(start, description);
-                System.out.println(message);
-            }
-
-            long seconds = fTracingOptions.stackDumpTimeoutSeconds();
-            if (seconds != 0) {
-                DumpTask task = new DumpTask(description);
-                fRunningTests.put(description, task);
-                fTimer.schedule(task, seconds * 1000);
-            }
-            fNotifier.fireTestStarted(description);
-        }
-
-        @Override
-        public void fireTestFailure(Failure failure) {
-            fNotifier.fireTestFailure(failure);
-        }
-
-        @Override
-        public void fireTestAssumptionFailed(Failure failure) {
-            fNotifier.fireTestAssumptionFailed(failure);
-        }
-
-        @Override
-        public void fireTestIgnored(Description description) {
-            fNotifier.fireTestIgnored(description);
-        }
-
-        @Override
-        public void fireTestFinished(Description description) {
-            TimerTask task = fRunningTests.remove(description);
-            if (task != null) {
-                task.cancel();
-            }
-            fNotifier.fireTestFinished(description);
-        }
-
-        @Override
-        public void pleaseStop() {
-            fNotifier.pleaseStop();
-        }
-
-        @Override
-        public void addFirstListener(RunListener listener) {
-            fNotifier.addFirstListener(listener);
-        }
-    }
-
-    private class DumpTask extends TimerTask {
-        private volatile int fScreenshotCount;
-        private Description fDescription;
-
-        public DumpTask(Description description) {
-            fDescription = description;
-        }
-
-        @Override
-        public void run() {
-            // There are situation where a blocked main thread apparently also blocks output to
-            // System.err. Try to dump to System.out first. If both dumps get through, the short
-            // delay between the traces may even help identify threads that are still running.
-            dumpStackTraces(System.out);
-            try {
-                Thread.sleep(100);
-            } catch (InterruptedException e2) {
-                // won't happen, continue
-            }
-            Thread main = dumpStackTraces(System.err);
-
-            if (fScreenshotCount < fTracingOptions.maxScreenshotCount()) {
-                String screenshotFile = Screenshots.takeScreenshot(TracingSuite.class, Integer.toString(fScreenshotCount++));
-                System.err.println("Timeout screenshot saved to " + screenshotFile);
-            }
-
-            if (main != null && fTracingOptions.throwExceptionInMainThread()) {
-                Throwable toThrow = new IllegalStateException("main thread killed by " + TracingSuite.class.getSimpleName() + " timeout");
-                toThrow.initCause(new RuntimeException(toThrow.getMessage()));
-                // Set the stack trace to that of the target thread.
-                toThrow.setStackTrace(main.getStackTrace());
-                // Thread#stop(Throwable) doesn't work any more in JDK 8. Try stop0:
-                try {
-                    Method stop0 = Thread.class.getDeclaredMethod("stop0", Object.class);
-                    stop0.setAccessible(true);
-                    stop0.invoke(main, toThrow);
-                } catch (
-                        NoSuchMethodException |
-                        SecurityException |
-                        IllegalAccessException |
-                        IllegalArgumentException |
-                        InaccessibleObjectException |
-                        InvocationTargetException e1) {
-                    e1.printStackTrace();
-                }
-            }
-        }
-
-        private Thread dumpStackTraces(PrintStream stream) {
-            long seconds = fTracingOptions.stackDumpTimeoutSeconds();
-            String message = format(new Date(), fDescription) + " ran for more than " + seconds + " seconds";
-            stream.println(message);
-
-            stream.format("totalMemory:           %11d\n", Runtime.getRuntime().totalMemory());
-            stream.format("freeMemory (before GC):%11d\n", Runtime.getRuntime().freeMemory());
-            System.gc();
-            stream.format("freeMemory (after GC): %11d\n", Runtime.getRuntime().freeMemory());
-
-            ThreadMXBean threadStuff = ManagementFactory.getThreadMXBean();
-            ThreadInfo[] allThreads = threadStuff.getThreadInfo(threadStuff.getAllThreadIds(), 200);
-            for (ThreadInfo threadInfo : allThreads) {
-                stream.print("\"");
-                stream.print(threadInfo.getThreadName());
-                stream.print("\": ");
-                stream.print(threadInfo.getThreadState());
-                stream.println();
-                final StackTraceElement[] elements = threadInfo.getStackTrace();
-                for (StackTraceElement element : elements) {
-                    stream.print("    ");
-                    stream.print(element);
-                    stream.println();
-                }
-                stream.println();
-            }
-            for (Thread t : Thread.getAllStackTraces().keySet()) {
-                String name = t.getName();
-                if ("main".equals(name)) {
-                    return t;
-                }
-            }
-            return null;
-        }
-    }
-
-    static class ThreadDump extends Exception {
-        private static final long serialVersionUID = 1L;
-        ThreadDump(String message) {
-            super(message);
-        }
-    }
-
-    private static String format(Date time, Description description) {
-        String now = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss Z", Locale.US).format(time);
-        String message = "[" + now + "] " + description.getClassName() + "#" + description.getMethodName() + "()";
-        return message;
-    }
-
-    public TracingSuite(Class<?> klass, RunnerBuilder builder) throws InitializationError {
-        super(klass, builder);
-        fTracingOptions = klass.getAnnotation(TracingOptions.class);
-        if (fTracingOptions == null) {
-            @TracingOptions class DefaultTracingOptionsProvider { /* just an annotation holder */ }
-            fTracingOptions = DefaultTracingOptionsProvider.class.getAnnotation(TracingOptions.class);
-        }
-    }
-
-    @Override
-    protected void runChild(Runner runner, RunNotifier notifier) {
-        super.runChild(runner, new TracingRunNotifier(notifier));
-    }
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/AwtScreenshot.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/AwtScreenshot.java
deleted file mode 100644
index ee7906d..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/AwtScreenshot.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal;
-
-import java.awt.AWTException;
-import java.awt.HeadlessException;
-import java.awt.Rectangle;
-import java.awt.Robot;
-import java.awt.Toolkit;
-import java.awt.image.BufferedImage;
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.PrintStream;
-import java.net.URISyntaxException;
-import java.net.URL;
-
-import javax.imageio.ImageIO;
-
-public class AwtScreenshot {
-
-    private static final int TIMEOUT_SECONDS = 15;
-
-    public static void main(String[] args) {
-        try {
-            System.setProperty("java.awt.headless", "false");
-            Robot robot = new Robot();
-            Rectangle rect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
-            BufferedImage image = robot.createScreenCapture(rect);
-            File file = new File(args[0]);
-            ImageIO.write(image, "png", file);
-
-            System.out.println("AWT screenshot saved to: " + file.getAbsolutePath());
-        } catch (HeadlessException | AWTException | IOException e) {
-            e.printStackTrace();
-        }
-    }
-
-    static class StreamForwarder extends Thread {
-
-        private InputStream fProcessOutput;
-
-        private PrintStream fStream;
-
-        public StreamForwarder(InputStream processOutput, PrintStream stream) {
-            fProcessOutput = processOutput;
-            fStream = stream;
-        }
-
-        @Override
-        public void run() {
-            try (BufferedReader reader = new BufferedReader(new InputStreamReader(fProcessOutput))) {
-                String line = null;
-                while ((line = reader.readLine()) != null) {
-                    fStream.println(line);
-                }
-            } catch (IOException e) {
-                e.printStackTrace();
-            }
-        }
-    }
-
-    public static void dumpAwtScreenshot(String screenshotFile) {
-        try {
-            URL location = AwtScreenshot.class.getProtectionDomain().getCodeSource().getLocation();
-            String cp = location.toURI().getPath();
-            if (new File(cp).isDirectory() && !cp.endsWith(File.separatorChar + "bin" + File.separatorChar)) {
-                cp += "bin" + File.separatorChar;
-            }
-            String javaHome = System.getProperty("java.home");
-            String javaExe = javaHome + File.separatorChar + "bin" + File.separatorChar + "java";
-            if (File.separatorChar == '\\') {
-                javaExe += ".exe"; // assume it's Windows
-            }
-            String[] args = new String[] { javaExe, "-cp", cp, AwtScreenshot.class.getName(), screenshotFile };
-            // System.out.println("Start process: " + Arrays.asList(args));
-            ProcessBuilder processBuilder = new ProcessBuilder(args);
-            if ("Mac OS X".equals(System.getProperty("os.name"))) {
-                processBuilder.environment().put("AWT_TOOLKIT", "CToolkit");
-            }
-            Process process = processBuilder.start();
-            new StreamForwarder(process.getErrorStream(), System.out).start();
-            new StreamForwarder(process.getInputStream(), System.out).start();
-            long end = System.currentTimeMillis() + TIMEOUT_SECONDS * 1000;
-            boolean done = false;
-            do {
-                try {
-                    process.exitValue();
-                    done = true;
-                } catch (IllegalThreadStateException e) {
-                    try {
-                        Thread.sleep(100);
-                    } catch (InterruptedException e1) {
-                        // continue
-                    }
-                }
-            } while (!done && System.currentTimeMillis() < end);
-
-            if (done) {
-                int exitCode = process.exitValue();
-                if (exitCode != 0) {
-                    System.out.println("AwtScreenshot VM finished with exit code " + exitCode + ".");
-                }
-            } else {
-                process.destroy();
-                System.out.println("Killed AwtScreenshot VM after " + TIMEOUT_SECONDS + " seconds.");
-            }
-        } catch (URISyntaxException | IOException e) {
-            e.printStackTrace();
-        }
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/InternalDimensions.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/InternalDimensions.java
deleted file mode 100644
index 52d5ad4..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/InternalDimensions.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.data.Unit;
-
-/**
- * Some hard coded measurement id's.
- */
-public interface InternalDimensions {
-
-    // Common:
-    // OS Counters:
-    Dim SYSTEM_TIME = new Dim(2, Unit.SECOND, 1000), // System.currentTimeMillis. "System Time"
-            USED_JAVA_HEAP = new Dim(3, Unit.BYTE), // Runtime.totalMemory() - Runtime.freeMemory()
-            WORKING_SET = new Dim(4, Unit.BYTE), // the working set (or on Linux the resident set). "Working Set"
-            // USER_TIME= new Dim(10, Unit.SECOND, 1000), // the amount of elapsed user time. "User time"
-            KERNEL_TIME = new Dim(11, Unit.SECOND, 1000), // the amount of elapsed kernel time. "Kernel time"
-            CPU_TIME = new Dim(20, Unit.SECOND, 1000), // the amount of CPU time we have used so far. "CPU Time"
-            INVOCATION_COUNT = new Dim(52, Unit.INVOCATION, 1); // the number of method invocations. "Invocation Count"
-
-    // OS Info:
-    Dim PHYSICAL_TOTAL = new Dim(24, Unit.BYTE), // the amount of physical memory in bytes. "Physical Memory"
-            SYSTEM_CACHE = new Dim(26, Unit.BYTE); // the amount of system cache memory in bytes. "System Cache"
-
-    // Windows:
-    // OS Counters:
-    Dim COMITTED       = new Dim(7, Unit.BYTE), // "Committed"
-            WORKING_SET_PEAK = new Dim(8, Unit.BYTE), // "Working Set Peak"
-            ELAPSED_PROCESS = new Dim(9, Unit.SECOND, 1000), // "Elapsed Process"
-            PAGE_FAULTS = new Dim(19), // "Page Faults"
-            GDI_OBJECTS = new Dim(34), // "GDI Objects"
-            USER_OBJECTS = new Dim(35), // "USER Objects"
-            OPEN_HANDLES = new Dim(36), // "Open Handles"
-            READ_COUNT = new Dim(38, Unit.BYTE), // "Read Count"
-            WRITE_COUNT = new Dim(39, Unit.BYTE), // "Write Count"
-            BYTES_READ = new Dim(40, Unit.BYTE), // "Bytes Read"
-            BYTES_WRITTEN = new Dim(41, Unit.BYTE); // "Bytes Written"
-
-    // OS Info:
-    Dim COMMIT_LIMIT   = new Dim(22), // "Commit Limit"
-            COMMIT_PEAK = new Dim(23), // "Commit Peak"
-            PHYSICAL_AVAIL = new Dim(25, Unit.BYTE), // "Physical Available"
-            KERNEL_TOTAL = new Dim(27), // "Kernel Total"
-            KERNEL_PAGED = new Dim(28), // "Kernel Paged"
-            KERNEL_NONPAGED = new Dim(29), // "Kernel Nonpaged"
-            PAGE_SIZE = new Dim(30, Unit.BYTE), // "Page Size"
-            HANDLE_COUNT = new Dim(31), // "Handle Count"
-            PROCESS_COUNT = new Dim(32), // "Process Count"
-            THREAD_COUNT = new Dim(33), // "Thread Count"
-            COMMIT_TOTAL = new Dim(37);            // "Commit Total"
-
-    // Linux:
-    // OS Counters:
-    Dim HARD_PAGE_FAULTS = new Dim(42), // the number of hard page faults. A page had to be fetched from disk. "Hard Page Faults"
-            SOFT_PAGE_FAULTS = new Dim(43), // the number of soft page faults. A page was not fetched from disk. "Soft Page Faults"
-            TRS = new Dim(44, Unit.BYTE), // the amount of memory in bytes occupied by text (i.e. code). "Text Size"
-            DRS = new Dim(45, Unit.BYTE), // the amount of memory in bytes occupied by data or stack. "Data Size"
-            LRS = new Dim(46, Unit.BYTE); // the amount of memory in bytes occupied by shared code. "Library Size"
-
-    // OS Info:
-    Dim USED_LINUX_MEM   = new Dim(48, Unit.BYTE), // the amount of memory that Linux reports is used. From /proc/meminfo.
-                                                   // "Used Memory"
-            FREE_LINUX_MEM = new Dim(49, Unit.BYTE), // the amount of memory that Linux reports is free. From /proc/meminfo.
-                                                     // "Free Memory"
-            BUFFERS_LINUX = new Dim(50, Unit.BYTE); // the amount of memory that Linux reports is used by buffers. From
-                                                    // /proc/meminfo. "Buffers Memory"
-
-    // Mac:
-    // OS Counters:
-    // OS Info:
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/InternalPerformanceMeter.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/InternalPerformanceMeter.java
deleted file mode 100644
index 9be9676..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/InternalPerformanceMeter.java
+++ /dev/null
@@ -1,291 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2019 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.ObjectOutputStream;
-import java.io.PrintStream;
-import java.text.MessageFormat;
-import java.text.NumberFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.test.internal.performance.data.DataPoint;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.data.Sample;
-import org.eclipse.test.internal.performance.db.Variations;
-import org.eclipse.test.internal.performance.eval.StatisticsSession;
-import org.eclipse.test.internal.performance.eval.StatisticsUtil;
-import org.eclipse.test.internal.performance.eval.StatisticsUtil.Percentile;
-import org.eclipse.test.performance.Dimension;
-import org.eclipse.test.performance.PerformanceMeter;
-
-public abstract class InternalPerformanceMeter extends PerformanceMeter {
-
-    private static class DimensionComparator implements Comparator<Dim> {
-
-        @Override
-        public int compare(Dim o1, Dim o2) {
-            return o1.getId() - o2.getId();
-        }
-
-    }
-
-    public static final int       AVERAGE                            = -3;
-    public static final int       SIZE                               = -4;
-    public static final int       STDEV                              = -5;
-    public static final int       BEFORE                             = 0;
-    public static final int       AFTER                              = 1;
-
-    protected static final String VERBOSE_PERFORMANCE_METER_PROPERTY = "InternalPrintPerformanceResults"; //$NON-NLS-1$
-    protected static final String CSV_PERFORMANCE_METER_PROPERTY = "InternalPrintCsvPerformanceResults"; //$NON-NLS-1$
-    private   static final String DUMP_PERFORMANCE_DATA_PROPERTY = "InternalWriteRawPerformanceData"; //$NON-NLS-1$
-
-    private String                fScenarioId;
-
-    private String                fShortName;
-    private Dimension[]           fSummaryDimensions;
-    private boolean               fSummaryIsGlobal;
-    private int                   fCommentType;
-    private String                fComment;
-
-    public InternalPerformanceMeter(String scenarioId) {
-        fScenarioId = scenarioId;
-    }
-
-    @Override
-    public void dispose() {
-        fScenarioId = null;
-    }
-
-    public abstract Sample getSample();
-
-    /**
-     * Answer the scenario ID.
-     *
-     * @return the scenario ID
-     */
-    public String getScenarioName() {
-        return fScenarioId;
-    }
-
-    @Override
-    public void commit() {
-        Sample sample = getSample();
-        if (sample != null) {
-            if (fSummaryDimensions != null) {
-                sample.tagAsSummary(fSummaryIsGlobal, fShortName, fSummaryDimensions, fCommentType, fComment);
-            } else if (this.fComment != null) {
-                sample.setComment(this.fCommentType, this.fComment);
-            }
-            Variations variations = PerformanceTestPlugin.getVariations();
-            if (System.getProperty(VERBOSE_PERFORMANCE_METER_PROPERTY) != null) {
-                printSample(System.out, sample);
-                // printSampleCSV(System.out, sample);
-            }
-            String property = System.getProperty(CSV_PERFORMANCE_METER_PROPERTY);
-            if (property != null) {
-                File output = new File(property);
-                try (PrintStream ps = new PrintStream(new FileOutputStream(output))) {
-                    printSampleCSV(ps, sample);
-                } catch (IOException e) {
-                    // It turns out you cannot write.
-                    e.printStackTrace();
-                }
-            }
-            property = System.getProperty(DUMP_PERFORMANCE_DATA_PROPERTY);
-            if (property != null) {
-                File output = new File(property);
-                try (ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(output, true))) {
-                    oos.writeObject(fScenarioId);
-                    oos.writeObject(variations);
-                    oos.writeObject(sample);
-                } catch (IOException e) {
-                    // It turns out you cannot write.
-                    e.printStackTrace();
-                }
-            }
-        }
-    }
-
-    private void printSample(PrintStream ps, Sample sample) {
-        ps.print("Scenario '" + getScenarioName() + "' "); //$NON-NLS-1$ //$NON-NLS-2$
-        DataPoint[] dataPoints = sample.getDataPoints();
-        if (dataPoints.length > 0) {
-            StatisticsSession s = new StatisticsSession(dataPoints);
-            Dim[] dimensions = dataPoints[0].getDimensions();
-            Arrays.sort(dimensions, new DimensionComparator());
-            if (dimensions.length > 0) {
-                List<Dim> badDimensions = new ArrayList<>();
-                long n = s.getCount(dimensions[0]);
-                MessageFormat format = new MessageFormat("({0,number,percent} in [{1}, {2}])"); //$NON-NLS-1$
-
-                String spaces = "                                                                                                       "; //$NON-NLS-1$
-
-                ps.println("(average over " + n + " samples):"); //$NON-NLS-1$ //$NON-NLS-2$
-                for (Dim dimension : dimensions) {
-                    double mean = s.getAverage(dimension);
-
-                    String nameString = "  " + dimension.getName() + ":"; //$NON-NLS-1$ //$NON-NLS-2$
-                    String meanString = dimension.getDisplayValue(mean);
-                    int align = firstNonDigit(meanString);
-                    int endIndex = 30 - align - nameString.length();
-                    if (endIndex > 0)
-                        meanString = spaces.substring(0, endIndex) + meanString;
-
-                    align = nameString.length() + meanString.length();
-
-                    Percentile percentile = StatisticsUtil.T95;
-                    double[] confidenceInterval = s.getConfidenceInterval(dimension, percentile);
-
-                    StringBuffer printBuffer;
-                    if (n <= 2) {
-                        printBuffer = new StringBuffer(" (no confidence)"); //$NON-NLS-1$
-                    } else {
-                        printBuffer = new StringBuffer();
-                        int ns = align;
-                        while (ns++ < 40)
-                            printBuffer.append(' ');
-                        printBuffer
-                                .append(format.format(new Object[] { Double.valueOf(percentile.inside()),
-                                        dimension.getDisplayValue(confidenceInterval[0]),
-                                        dimension.getDisplayValue(confidenceInterval[1]) }));
-                    }
-
-                    align += printBuffer.length();
-                    try {
-                        while (align++ < 70)
-                            printBuffer.append(' ');
-                        printBuffer.append(checkSampleSize(s, sample, dimension));
-                    }
-                    catch (CoreException x) {
-                        badDimensions.add(dimension);
-                        continue;
-                    }
-
-                    ps.print(nameString);
-                    ps.print(meanString);
-                    ps.println(printBuffer);
-                }
-
-                if (!badDimensions.isEmpty()) {
-                    ps.print("  Dimensions with unusable statistical properties: "); //$NON-NLS-1$
-                    for (Iterator<Dim> iter = badDimensions.iterator(); iter.hasNext();) {
-                        Dim dimension = iter.next();
-                        ps.print(dimension.getName());
-                        if (iter.hasNext())
-                            ps.print(", "); //$NON-NLS-1$
-                    }
-                    ps.println();
-                }
-            }
-        }
-        ps.println();
-    }
-
-    private String checkSampleSize(StatisticsSession s, Sample sample, Dim dimension) throws CoreException {
-        long sampleSize = s.getCount(dimension);
-        double stdev = s.getStddev(dimension);
-        double mean = s.getAverage(dimension);
-
-        if (stdev == 0)
-            return ""; //$NON-NLS-1$
-
-        // measurable effect size
-        // sampleSize= 16 * stdev^2 / effect^2
-        double effectSize = 4 * Math.sqrt(stdev * stdev / sampleSize);
-
-        double base;
-        String baseName;
-        if (stdev > Math.abs(mean)) {
-            base = stdev;
-            baseName = "stdev"; //$NON-NLS-1$
-        } else {
-            base = Math.abs(mean);
-            baseName = "mean"; //$NON-NLS-1$
-        }
-        double fivePercentEffect = 0.05 * base;
-        long requiredSampleSizeForFivePercentEffect = Math.round(16 * stdev * stdev / fivePercentEffect / fivePercentEffect + 0.5);
-
-        // if (requiredSampleSizeForFivePercentEffect > 1000 || Double.isNaN(stdev))
-        //			throw new CoreException(new Status(IStatus.OK, "org.eclipse.text.performance", IStatus.OK, "no message", null)); //$NON-NLS-1$ //$NON-NLS-2$
-
-        NumberFormat numberInstance = NumberFormat.getNumberInstance();
-        numberInstance.setMaximumFractionDigits(1);
-        numberInstance.setMinimumFractionDigits(1);
-
-        String measurableMsg = " Measurable effect: " + dimension.getDisplayValue(effectSize) + " (" + numberInstance.format(effectSize / stdev) + " SDs)"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-        if (fivePercentEffect < effectSize)
-            measurableMsg += " (required sample size for an effect of 5% of " + baseName + ": " + requiredSampleSizeForFivePercentEffect + ")"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-
-        return measurableMsg;
-    }
-
-    private int firstNonDigit(String string) {
-        int length = string.length();
-        for (int i = 0; i < length; i++)
-            if (!Character.isDigit(string.charAt(i)) && string.charAt(i) != '-' && string.charAt(i) != '.')
-                return i;
-        return length;
-    }
-
-    void printSampleCSV(PrintStream ps, Sample sample) {
-        final char SEPARATOR = '\t';
-        DataPoint[] dataPoints = sample.getDataPoints();
-        if (dataPoints.length > 0) {
-            Dim[] dimensions = dataPoints[0].getDimensions();
-            Arrays.sort(dimensions, new DimensionComparator());
-            if (dimensions.length > 0) {
-                /* print dimensions */
-                for (Dim dimension : dimensions) {
-                    ps.print(dimension.getName());
-                    ps.print(SEPARATOR);
-                }
-                ps.println("scenario"); //$NON-NLS-1$
-
-                for (int p = 0; p < dataPoints.length - 1; p += 2) {
-                    DataPoint before = dataPoints[p];
-                    DataPoint after = dataPoints[p + 1];
-                    for (Dim dimension : dimensions) {
-                        long valBefore = before.getScalar(dimension).getMagnitude();
-                        long valAfter = after.getScalar(dimension).getMagnitude();
-                        ps.print(valAfter - valBefore);
-                        ps.print(SEPARATOR);
-                    }
-                    ps.print(sample.getShortname() != null ? sample.getShortname() : sample.getScenarioID());
-                    ps.println();
-                }
-
-                ps.println();
-            }
-        }
-    }
-
-    public void tagAsSummary(boolean global, String shortName, Dimension[] dims) {
-        fSummaryIsGlobal = global;
-        fShortName = shortName;
-        fSummaryDimensions = dims;
-    }
-
-    public void setComment(int commentType, String comment) {
-        fCommentType = commentType;
-        fComment = comment;
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/NullPerformanceMeter.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/NullPerformanceMeter.java
deleted file mode 100644
index 0444fae..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/NullPerformanceMeter.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import org.eclipse.test.performance.PerformanceMeter;
-
-/**
- * Null performance meter.
- */
-public class NullPerformanceMeter extends PerformanceMeter {
-
-    @Override
-    public void start() {
-        // do nothing
-    }
-
-    @Override
-    public void stop() {
-        // do nothing
-    }
-
-    @Override
-    public void commit() {
-        // do nothing
-    }
-
-    @Override
-    public void dispose() {
-        // do nothing
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/OSPerformanceMeter.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/OSPerformanceMeter.java
deleted file mode 100644
index 1ad4caf..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/OSPerformanceMeter.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-
-import org.eclipse.test.internal.performance.data.DataPoint;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.data.Sample;
-import org.eclipse.test.internal.performance.data.Scalar;
-
-/**
- * Performance meter that makes its measurements with OS functionality.
- */
-public class OSPerformanceMeter extends InternalPerformanceMeter {
-
-    private PerformanceMonitor fPerformanceMonitor;
-    private long               fStartTime;
-    private List<DataPoint>               fDataPoints = new ArrayList<>();
-
-    /**
-     * @param scenarioId
-     *            the scenario id
-     */
-    public OSPerformanceMeter(String scenarioId) {
-        super(scenarioId);
-        fPerformanceMonitor = PerformanceMonitor.getPerformanceMonitor();
-        fStartTime = System.currentTimeMillis();
-    }
-
-    @Override
-    public void dispose() {
-        fPerformanceMonitor = null;
-        fDataPoints = null;
-        super.dispose();
-    }
-
-    @Override
-    public void start() {
-        snapshot(BEFORE);
-    }
-
-    @Override
-    public void stop() {
-        snapshot(AFTER);
-    }
-
-    @Override
-    public Sample getSample() {
-        if (fDataPoints != null) {
-            HashMap<String, String> runProperties = new HashMap<>();
-            collectRunInfo(runProperties);
-            return new Sample(getScenarioName(), fStartTime, runProperties,
-                    fDataPoints.toArray(new DataPoint[fDataPoints.size()]));
-        }
-        return null;
-    }
-
-    // ---- private stuff ------
-
-    private void snapshot(int step) {
-        HashMap<Dim, Scalar> map = new HashMap<>();
-        fPerformanceMonitor.collectOperatingSystemCounters(map);
-        fDataPoints.add(new DataPoint(step, map));
-    }
-
-    /**
-     * Write out the run element if it hasn't been written out yet.
-     *
-     * @param runProperties
-     */
-    private void collectRunInfo(HashMap runProperties) {
-        fPerformanceMonitor.collectGlobalPerformanceInfo(runProperties);
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/OSPerformanceMeterFactory.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/OSPerformanceMeterFactory.java
deleted file mode 100644
index 88f2100..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/OSPerformanceMeterFactory.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import org.eclipse.test.performance.PerformanceMeter;
-
-public class OSPerformanceMeterFactory extends PerformanceMeterFactory {
-
-    @Override
-    protected PerformanceMeter doCreatePerformanceMeter(String scenario) {
-        return new OSPerformanceMeter(scenario);
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMeterFactory.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMeterFactory.java
deleted file mode 100644
index cb95926..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMeterFactory.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.test.performance.Performance;
-import org.eclipse.test.performance.PerformanceMeter;
-
-import junit.framework.TestCase;
-
-public abstract class PerformanceMeterFactory {
-
-    private static Set<String> fScenarios = new HashSet<>();
-
-    public PerformanceMeter createPerformanceMeter(String scenario) {
-        assertUniqueScenario(scenario);
-        return doCreatePerformanceMeter(scenario);
-    }
-
-    public PerformanceMeter createPerformanceMeter(TestCase testCase, String monitorId) {
-        return createPerformanceMeter(Performance.getDefault().getDefaultScenarioId(testCase, monitorId));
-    }
-
-    public PerformanceMeter createPerformanceMeter(TestCase testCase) {
-        return createPerformanceMeter(Performance.getDefault().getDefaultScenarioId(testCase));
-    }
-
-    protected abstract PerformanceMeter doCreatePerformanceMeter(String scenario);
-
-    private static void assertUniqueScenario(String scenario) {
-        if (fScenarios.contains(scenario))
-            throw new IllegalArgumentException();
-        fScenarios.add(scenario);
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMonitor.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMonitor.java
deleted file mode 100644
index 77068e6..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMonitor.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import java.util.Map;
-
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.data.Scalar;
-
-class PerformanceMonitor {
-
-    private static PerformanceMonitor fgPerformanceMonitor;
-
-    public static PerformanceMonitor getPerformanceMonitor() {
-        if (fgPerformanceMonitor == null) {
-            String os = System.getProperty("os.name"); //$NON-NLS-1$
-            if (os.startsWith("Windows")) //$NON-NLS-1$
-                fgPerformanceMonitor = new PerformanceMonitorWindows();
-            else if (os.startsWith("Mac OS X")) //$NON-NLS-1$
-                fgPerformanceMonitor = new PerformanceMonitorMac();
-            else
-                fgPerformanceMonitor = new PerformanceMonitorLinux();
-        }
-        return fgPerformanceMonitor;
-    }
-
-    protected void collectOperatingSystemCounters(Map scalars) {
-        Runtime runtime = Runtime.getRuntime();
-        // runtime.gc();
-        addScalar(scalars, InternalDimensions.USED_JAVA_HEAP, runtime.totalMemory() - runtime.freeMemory());
-    }
-
-    protected void collectGlobalPerformanceInfo(Map scalars) {
-        // no default implementation
-    }
-
-    void addScalar(Map scalars, Dim dimension, long value) {
-        scalars.put(dimension, new Scalar(dimension, value));
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMonitorLinux.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMonitorLinux.java
deleted file mode 100644
index 2533002..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMonitorLinux.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials are made
- * available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import java.io.BufferedReader;
-import java.io.FileReader;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.util.Map;
-import java.util.StringTokenizer;
-
-class PerformanceMonitorLinux extends PerformanceMonitor {
-
-    private static long    PAGESIZE         = 4096;
-    private static long    JIFFIES          = 10L;
-    private static boolean fgHasElapsedTime = true;
-    private static long    fgStartupTime;
-
-    /**
-     * Write out operating system counters for Linux.
-     *
-     * @param scalars
-     */
-    @Override
-    protected void collectOperatingSystemCounters(Map scalars) {
-        synchronized (this) {
-            /**
-             * The status values for a Linux process, that is the values that come from /proc/self/stat. The names of the variables match
-             * the man proc page.
-             */
-            StringTokenizer st = readTokens("/proc/self/stat", false); //$NON-NLS-1$
-            if (st != null) {
-                st.nextToken(); // int pid; // Process id.
-                st.nextToken(); // String comm; // The command name.
-                st.nextToken(); // String state;
-                st.nextToken(); // int ppid; // Parent process id. */
-                st.nextToken(); // int pgrp; // Process group. */
-                st.nextToken(); // int session;
-                st.nextToken(); // int ttry_nr;
-                st.nextToken(); // int tpgid;
-                st.nextToken(); // long flags;
-                long minflt = Long.parseLong(st.nextToken()); // Minor page faults (didn't need to load a page from disk). */
-                st.nextToken(); // long cminflt; // Minor page faults for the process and it's children. */
-                long majflt = Long.parseLong(st.nextToken()); // Major page faults. */
-                st.nextToken(); // long cmajflt; // Major page faults for the process and it's children. */
-                long utime = Long.parseLong(st.nextToken()); // User time in jiffies. */
-                long stime = Long.parseLong(st.nextToken()); // System time in jiffies. */
-                st.nextToken(); // long cutime; // User time for the process and it's children. */
-                st.nextToken(); // long cstime; // System time for the process and it's children. */
-
-                // addScalar(scalars, InternalDimensions.USER_TIME, utime*JIFFIES);
-                addScalar(scalars, InternalDimensions.KERNEL_TIME, stime * JIFFIES);
-                addScalar(scalars, InternalDimensions.CPU_TIME, (utime + stime) * JIFFIES);
-                addScalar(scalars, InternalDimensions.SOFT_PAGE_FAULTS, minflt);
-                addScalar(scalars, InternalDimensions.HARD_PAGE_FAULTS, majflt);
-            }
-
-            /**
-             * The status memory values values for a Linux process, that is the values that come from /proc/self/statm. The names of the
-             * variables match the man proc page.
-             */
-            st = readTokens("/proc/self/statm", false); //$NON-NLS-1$
-            if (st != null) {
-                st.nextToken(); // int size; // Size of the process in pages
-                int resident = Integer.parseInt(st.nextToken()); // Resident size in pages.
-                st.nextToken(); // int shared; // Shared size in pages.
-                int trs = Integer.parseInt(st.nextToken()); // Text (code) size in pages.
-                int drs = Integer.parseInt(st.nextToken()); // Data/Stack size in pages.
-                int lrs = Integer.parseInt(st.nextToken()); // Library size in pages.
-                // st.nextToken(); // int dt; // Dirty pages.
-
-                addScalar(scalars, InternalDimensions.WORKING_SET, resident * PAGESIZE);
-                addScalar(scalars, InternalDimensions.TRS, trs * PAGESIZE);
-                addScalar(scalars, InternalDimensions.DRS, drs * PAGESIZE);
-                addScalar(scalars, InternalDimensions.LRS, lrs * PAGESIZE);
-            }
-
-            long currentTime = System.currentTimeMillis();
-
-            addScalar(scalars, InternalDimensions.SYSTEM_TIME, currentTime);
-
-            if (fgHasElapsedTime) {
-                if (fgStartupTime == 0) {
-                    String t = System.getProperty("eclipse.startTime"); //$NON-NLS-1$
-                    if (t != null) {
-                        try {
-                            fgStartupTime = Long.parseLong(t);
-                        } catch (NumberFormatException e) {
-                            fgHasElapsedTime = false;
-                        }
-                    } else
-                        fgHasElapsedTime = false;
-                }
-                if (fgHasElapsedTime)
-                    addScalar(scalars, InternalDimensions.ELAPSED_PROCESS, currentTime - fgStartupTime);
-            }
-
-            super.collectOperatingSystemCounters(scalars);
-        }
-    }
-
-    /**
-     * Write out the global machine counters for Linux.
-     *
-     * @param scalars
-     */
-    @Override
-    protected void collectGlobalPerformanceInfo(Map scalars) {
-        synchronized (this) {
-            /**
-             * The meminfo values for a Linux machine, that is the values that come from /proc/meminfo.
-             */
-            // /proc/meminfo is formatted on linux - use byte-counted output from free
-            StringTokenizer st = readOutput("free -b", true); //$NON-NLS-1$
-            if (st != null) {
-                st.nextToken(); // throw away label
-                long total = Long.parseLong(st.nextToken());
-                long used = Long.parseLong(st.nextToken());
-                long free = Long.parseLong(st.nextToken());
-                st.nextToken(); // long shared;
-                long buffers = Long.parseLong(st.nextToken());
-                long cache = Long.parseLong(st.nextToken());
-
-                addScalar(scalars, InternalDimensions.PHYSICAL_TOTAL, total);
-                addScalar(scalars, InternalDimensions.USED_LINUX_MEM, used);
-                addScalar(scalars, InternalDimensions.FREE_LINUX_MEM, free);
-                addScalar(scalars, InternalDimensions.BUFFERS_LINUX, buffers);
-                addScalar(scalars, InternalDimensions.SYSTEM_CACHE, cache);
-            }
-            super.collectGlobalPerformanceInfo(scalars);
-        }
-    }
-
-    private StringTokenizer readTokens(String procPath, boolean skipFirst) {
-        try (BufferedReader rdr = new BufferedReader(new FileReader(procPath));){
-            if (skipFirst)
-                rdr.readLine(); // throw away the heading line
-            return new StringTokenizer(rdr.readLine());
-        } catch (IOException e) {
-            PerformanceTestPlugin.log(e);
-        }
-        return null;
-    }
-
-    private StringTokenizer readOutput(String cmd, boolean skipFirst) {
-        BufferedReader rdr = null;
-        try {
-            Process process = Runtime.getRuntime().exec(cmd);
-            rdr = new BufferedReader(new InputStreamReader(process.getInputStream()));
-            if (skipFirst)
-                rdr.readLine(); // throw away the heading line
-            return new StringTokenizer(rdr.readLine());
-        } catch (IOException e) {
-            PerformanceTestPlugin.log(e);
-        }
-        finally {
-            try {
-                if (rdr != null)
-                    rdr.close();
-            } catch (IOException e) {
-                // silently ignored
-            }
-        }
-        return null;
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMonitorMac.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMonitorMac.java
deleted file mode 100644
index 22945a0..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMonitorMac.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import java.util.Map;
-
-/**
- * The Mac OS X version of the performance monitor. (Uses default implementation for now).
- */
-class PerformanceMonitorMac extends PerformanceMonitor {
-
-    private static boolean      fgHasElapsedTime    = true;
-    private static long         fgStartupTime;
-
-    /**
-     * name of the library that implements the native methods.
-     */
-    private static final String NATIVE_LIBRARY_NAME = "perf_3_1_0"; //$NON-NLS-1$
-
-    /**
-     * Is the native library loaded? 0-don't know, 1-no, 2-yes
-     */
-    private static int          fgIsLoaded          = 0;
-
-    /**
-     * Answer true if the native library for this class has been successfully loaded. If the load has not been attempted yet, try to
-     * load it.
-     *
-     * @return returns true if native library has been successfullz loaded
-     */
-    public static boolean isLoaded() {
-        if (fgIsLoaded == 0) {
-            try {
-                System.loadLibrary(NATIVE_LIBRARY_NAME);
-                fgIsLoaded = 2;
-            } catch (Throwable e) {
-                // e.printStackTrace();
-                // PerformanceTestPlugin.log(e);
-                fgIsLoaded = 1;
-            }
-        }
-        return fgIsLoaded == 2;
-    }
-
-    /**
-     * Write out operating system counters for Mac OS X.
-     *
-     * @param scalars
-     *            where to collect the data
-     */
-    @Override
-    protected void collectOperatingSystemCounters(Map scalars) {
-        synchronized (this) {
-            if (isLoaded()) {
-                int[] counters = new int[18];
-                if (getrusage(0, counters) == 0) {
-
-                    int user_time = counters[0] * 1000 + counters[1] / 1000;
-                    int kernel_time = counters[2] * 1000 + counters[3] / 1000;
-
-                    addScalar(scalars, InternalDimensions.KERNEL_TIME, kernel_time);
-                    addScalar(scalars, InternalDimensions.CPU_TIME, user_time + kernel_time);
-                }
-            }
-
-            long currentTime = System.currentTimeMillis();
-
-            addScalar(scalars, InternalDimensions.SYSTEM_TIME, currentTime);
-
-            if (fgHasElapsedTime) {
-                if (fgStartupTime == 0) {
-                    String t = System.getProperty("eclipse.startTime"); //$NON-NLS-1$
-                    if (t != null) {
-                        try {
-                            fgStartupTime = Long.parseLong(t);
-                        } catch (NumberFormatException e) {
-                            fgHasElapsedTime = false;
-                        }
-                    } else
-                        fgHasElapsedTime = false;
-                }
-                if (fgHasElapsedTime)
-                    addScalar(scalars, InternalDimensions.ELAPSED_PROCESS, currentTime - fgStartupTime);
-            }
-
-            super.collectOperatingSystemCounters(scalars);
-        }
-    }
-
-    // struct rusage {
-    // 0,1 struct timeval ru_utime; /* user time used */
-    // 2,3 struct timeval ru_stime; /* system time used */
-    // 4 long ru_maxrss; /* integral max resident set size */
-    // 5 long ru_ixrss; /* integral shared text memory size */
-    // 6 long ru_idrss; /* integral unshared data size */
-    // 7 long ru_isrss; /* integral unshared stack size */
-    // 8 long ru_minflt; /* page reclaims */
-    // 9 long ru_majflt; /* page faults */
-    // 10 long ru_nswap; /* swaps */
-    // 11 long ru_inblock; /* block input operations */
-    // 12 long ru_oublock; /* block output operations */
-    // 13 long ru_msgsnd; /* messages sent */
-    // 14 long ru_msgrcv; /* messages received */
-    // 15 long ru_nsignals; /* signals received */
-    // 16 long ru_nvcsw; /* voluntary context switches */
-    // 17 long ru_nivcsw; /* involuntary context switches */
-    // };
-    private static native int getrusage(int who, int[] counters);
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMonitorWindows.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMonitorWindows.java
deleted file mode 100644
index dc873d2..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceMonitorWindows.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import java.util.Map;
-
-/**
- * The PerformanceMonitor for Windows.
- */
-class PerformanceMonitorWindows extends PerformanceMonitor {
-
-    private boolean fgNativeGetPerformanceInfoNotAvailable;
-
-    @Override
-    protected void collectOperatingSystemCounters(Map scalars) {
-        synchronized (this) {
-            if (org.eclipse.perfmsr.core.PerformanceMonitor.isLoaded()) {
-                long[] counters = new long[14];
-                if (org.eclipse.perfmsr.core.PerformanceMonitor.nativeGetPerformanceCounters(counters)) {
-                    addScalar(scalars, InternalDimensions.WORKING_SET, counters[0]);
-                    addScalar(scalars, InternalDimensions.WORKING_SET_PEAK, counters[1]);
-                    addScalar(scalars, InternalDimensions.ELAPSED_PROCESS, counters[2]);
-                    // addScalar(scalars, InternalDimensions.USER_TIME, counters[3]);
-                    addScalar(scalars, InternalDimensions.KERNEL_TIME, counters[4]);
-                    addScalar(scalars, InternalDimensions.CPU_TIME, counters[3] + counters[4]);
-                    addScalar(scalars, InternalDimensions.PAGE_FAULTS, counters[5]);
-                    if (counters[6] != -1)
-                        addScalar(scalars, InternalDimensions.COMITTED, counters[6]);
-                    addScalar(scalars, InternalDimensions.GDI_OBJECTS, counters[7]);
-                    // addScalar(scalars, Dimensions.USER_OBJECTS, counters[8]);
-                    // if (counters[9] != -1)
-                    // addScalar(scalars, InternalDimensions.OPEN_HANDLES, counters[9]);
-                    // addScalar(scalars, InternalDimensions.READ_COUNT, counters[10]);
-                    // addScalar(scalars, InternalDimensions.WRITE_COUNT, counters[11]);
-                    // addScalar(scalars, InternalDimensions.BYTES_READ, counters[12]);
-                    // addScalar(scalars, InternalDimensions.BYTES_WRITTEN, counters[13]);
-                }
-            }
-            super.collectOperatingSystemCounters(scalars);
-        }
-    }
-
-    /**
-     * Collect global performance info. This includes things like the total committed memory for the entire system.
-     *
-     * This function depends on the GetPerformanceInfo() function being available in the Windows ivjperf.dll. This is available in
-     * XP but is usually not available in Win2000. If it is not available then this function throws an
-     * UnsupportedOperationException.
-     *
-     * @param scalars
-     */
-    @Override
-    protected void collectGlobalPerformanceInfo(Map scalars) {
-        synchronized (this) {
-            if (!fgNativeGetPerformanceInfoNotAvailable && org.eclipse.perfmsr.core.PerformanceMonitor.isLoaded()) {
-                long[] counters = new long[13];
-                try {
-                    org.eclipse.perfmsr.core.PerformanceMonitor.nativeGetPerformanceInfo(counters);
-                    long pageSize = counters[9];
-                    addScalar(scalars, InternalDimensions.COMMIT_TOTAL, counters[0] * pageSize);
-                    addScalar(scalars, InternalDimensions.COMMIT_LIMIT, counters[1] * pageSize);
-                    addScalar(scalars, InternalDimensions.COMMIT_PEAK, counters[2] * pageSize);
-                    addScalar(scalars, InternalDimensions.PHYSICAL_TOTAL, counters[3] * pageSize);
-                    addScalar(scalars, InternalDimensions.PHYSICAL_AVAIL, counters[4] * pageSize);
-                    addScalar(scalars, InternalDimensions.SYSTEM_CACHE, counters[5] * pageSize);
-                    addScalar(scalars, InternalDimensions.KERNEL_TOTAL, counters[6] * pageSize);
-                    addScalar(scalars, InternalDimensions.KERNEL_PAGED, counters[7] * pageSize);
-                    addScalar(scalars, InternalDimensions.KERNEL_NONPAGED, counters[8] * pageSize);
-                    addScalar(scalars, InternalDimensions.PAGE_SIZE, counters[9]);
-                    addScalar(scalars, InternalDimensions.HANDLE_COUNT, counters[10]);
-                    addScalar(scalars, InternalDimensions.PROCESS_COUNT, counters[11]);
-                    addScalar(scalars, InternalDimensions.THREAD_COUNT, counters[12]);
-                }
-                catch (Exception e) {
-                    PerformanceTestPlugin
-                            .logWarning("native function GetPerformanceInfo() not available on this version of Windows"); //$NON-NLS-1$
-                    fgNativeGetPerformanceInfoNotAvailable = true;
-                }
-            }
-            super.collectGlobalPerformanceInfo(scalars);
-        }
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceTestPlugin.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceTestPlugin.java
deleted file mode 100644
index 3726dea..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/PerformanceTestPlugin.java
+++ /dev/null
@@ -1,362 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2009 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.db.Variations;
-import org.eclipse.test.performance.Dimension;
-
-/**
- * @since 3.1
- */
-public class PerformanceTestPlugin extends Plugin {
-
-    public static final String  CONFIG                          = "config"; //$NON-NLS-1$
-    public static final String  BUILD                           = "build"; //$NON-NLS-1$
-
-    private static final String DEFAULT_DB_NAME                 = "perfDB"; //$NON-NLS-1$
-    private static final String DEFAULT_DB_USER                 = "guest"; //$NON-NLS-1$
-    private static final String DEFAULT_DB_PASSWORD             = "guest"; //$NON-NLS-1$
-
-    private static final String DB_NAME                         = "dbname"; //$NON-NLS-1$
-    private static final String DB_USER                         = "dbuser"; //$NON-NLS-1$
-    private static final String DB_PASSWD                       = "dbpasswd"; //$NON-NLS-1$
-
-    /*
-     * New properties
-     */
-    private static final String ECLIPSE_PERF_DBLOC              = "eclipse.perf.dbloc"; //$NON-NLS-1$
-    public static final String  ECLIPSE_PERF_ASSERTAGAINST      = "eclipse.perf.assertAgainst"; //$NON-NLS-1$
-    private static final String ECLIPSE_PERF_CONFIG             = "eclipse.perf.config"; //$NON-NLS-1$
-    private static final String ECLIPSE_PERF_DEFAULT_DIM        = "eclipse.perf.default.dim"; //$NON-NLS-1$
-    private static final String ECLIPSE_PERF_RESULTS_DIMENSIONS = "eclipse.perf.results.dimensions"; //$NON-NLS-1$
-    private static final String ECLIPSE_PERF_CONFIGS_DESCRIPTOR = "eclipse.perf.configs.descriptor"; //$NON-NLS-1$
-
-    /**
-     * Supported dimensions.
-     * <p>
-     * Currently all the dimensions accessible through this interface:
-     * <ul>
-     * <li>{@link Dimension#KERNEL_TIME}</li>
-     * <li>{@link Dimension#CPU_TIME}</li>
-     * <li>{@link Dimension#WORKING_SET}</li>
-     * <li>{@link Dimension#ELAPSED_PROCESS}</li>
-     * <li>{@link Dimension#USED_JAVA_HEAP}</li>
-     * <li>{@link Dimension#WORKING_SET_PEAK}</li>
-     * <li>{@link Dimension#KERNEL_TIME}</li>
-     * </ul>
-     * </p>
-     */
-    private static final Dim[]  SUPPORTED_DIMENSIONS            = { InternalDimensions.KERNEL_TIME, InternalDimensions.CPU_TIME, InternalDimensions.WORKING_SET, InternalDimensions.ELAPSED_PROCESS, InternalDimensions.USED_JAVA_HEAP,
-            InternalDimensions.WORKING_SET_PEAK, InternalDimensions.COMITTED, };
-
-    /**
-     * Identifiers of the supported dimensions.
-     */
-    private static final int[]  SUPPORTED_DIMENSIONS_ID         = new int[SUPPORTED_DIMENSIONS.length];
-    static {
-        int length = SUPPORTED_DIMENSIONS.length;
-        for (int i = 0; i < length; i++) {
-            SUPPORTED_DIMENSIONS_ID[i] = SUPPORTED_DIMENSIONS[i].getId();
-        }
-    }
-
-    /**
-     * Default machines names.
-     */
-    private static final String          DEFAULT_CONFIG_DESCRIPTORS = ""; //$NON-NLS-1$
-
-    /**
-     * Default dimension use for performance results.
-     */
-    private static final Dim             DEFAULT_DIMENSION          = InternalDimensions.ELAPSED_PROCESS;
-
-    /**
-     * The dimensions which are put in the generated performance results pages.
-     */
-    private static final Dim[]           DEFAULT_RESULTS_DIMENSIONS = { InternalDimensions.ELAPSED_PROCESS, InternalDimensions.CPU_TIME, };
-
-    /**
-     * The plug-in ID
-     */
-    public static final String           PLUGIN_ID                  = "org.eclipse.test.performance"; //$NON-NLS-1$
-
-    /** Status code describing an internal error */
-    public static final int              INTERNAL_ERROR             = 1;
-
-    /**
-     * The shared instance.
-     */
-    private static PerformanceTestPlugin fgPlugin;
-
-    /**
-     * The constructor.
-     */
-    public PerformanceTestPlugin() {
-        super();
-        fgPlugin = this;
-    }
-
-    /*
-     * Returns the shared instance.
-     */
-    public static PerformanceTestPlugin getDefault() {
-        return fgPlugin;
-    }
-
-    /*
-     * -Declipse.perf.dbloc=net://localhost
-     */
-    public static String getDBLocation() {
-        String dbloc = System.getProperty(ECLIPSE_PERF_DBLOC);
-        if (dbloc != null) {
-            logInfo("System property " + ECLIPSE_PERF_DBLOC + " found to equal " + dbloc + " in getDBLocation"); //$NON-NLS-1$ //$NON-NLS-2$
-            Variations keys = new Variations();
-            keys.parsePairs(ECLIPSE_PERF_DBLOC + '=' + dbloc);
-            return keys.getProperty(ECLIPSE_PERF_DBLOC);
-        }
-        return null;
-    }
-
-    public static String getDBName() {
-        String dbloc = System.getProperty(ECLIPSE_PERF_DBLOC);
-        if (dbloc != null) {
-            logInfo("System property " + ECLIPSE_PERF_DBLOC + " found to equal " + dbloc + " in getDBName"); //$NON-NLS-1$ //$NON-NLS-2$
-            Variations keys = new Variations();
-            keys.parsePairs(ECLIPSE_PERF_DBLOC + '=' + dbloc);
-            return keys.getProperty(DB_NAME, DEFAULT_DB_NAME);
-        }
-        return DEFAULT_DB_NAME;
-    }
-
-    public static String getDBUser() {
-        String dbloc = System.getProperty(ECLIPSE_PERF_DBLOC);
-        if (dbloc != null) {
-            logInfo("System property " + ECLIPSE_PERF_DBLOC + " found to equal " + dbloc + " in getDBUser"); //$NON-NLS-1$ //$NON-NLS-2$
-            Variations keys = new Variations();
-            keys.parsePairs(ECLIPSE_PERF_DBLOC + '=' + dbloc);
-            return keys.getProperty(DB_USER, DEFAULT_DB_USER);
-        }
-        return DEFAULT_DB_USER;
-    }
-
-    /**
-     * Returns the default dimension used for performance results.
-     *
-     * @return The default {@link Dimension} or <code>null</code> if the specified default dimension does not match any known
-     *         dimensions name.
-     */
-    public static Dimension getDefaultDimension() {
-        String defaultDim = System.getProperty(ECLIPSE_PERF_DEFAULT_DIM);
-        if (defaultDim == null)
-            return DEFAULT_DIMENSION;
-        Dimension dimension = getDimension(defaultDim);
-        Assert.isNotNull(dimension, "Invalid default dimension found in system property '" + ECLIPSE_PERF_DEFAULT_DIM + "': " + defaultDim); //$NON-NLS-1$ //$NON-NLS-2$
-        return dimension;
-    }
-
-    /**
-     * Returns the dimensions displayed in the performance results.
-     *
-     * @return The list of {@link Dimension} which will be displayed in the generated results data pages.
-     */
-    public static Dimension[] getResultsDimensions() {
-        String resultsDimension = System.getProperty(ECLIPSE_PERF_RESULTS_DIMENSIONS);
-        if (resultsDimension == null)
-            return DEFAULT_RESULTS_DIMENSIONS;
-        StringTokenizer tokenizer = new StringTokenizer(resultsDimension, ","); //$NON-NLS-1$
-        List<Dimension> list = new ArrayList<>();
-        while (tokenizer.hasMoreTokens()) {
-            String token = tokenizer.nextToken().trim();
-            Dimension dimension = getDimension(token);
-            if (dimension == null) {
-                try {
-                    dimension = getDimension(Integer.parseInt(token));
-                } catch (NumberFormatException e) {
-                    // skip
-                }
-                if (dimension == null) {
-                    System.err.println("Skip invalid results dimension found in system property '" + ECLIPSE_PERF_RESULTS_DIMENSIONS + "': " + resultsDimension); //$NON-NLS-1$ //$NON-NLS-2$
-                    continue;
-                }
-            }
-            list.add(dimension);
-        }
-        int size = list.size();
-        if (size == 0) {
-            System.err.println("No valid dimension was found in system property '" + ECLIPSE_PERF_RESULTS_DIMENSIONS + "'!"); //$NON-NLS-1$ //$NON-NLS-2$
-            System.err.println("=> default results dimensions will be used instead!"); //$NON-NLS-1$
-            return DEFAULT_RESULTS_DIMENSIONS;
-        }
-        Dimension[] dimensions = new Dimension[size];
-        list.toArray(dimensions);
-        return dimensions;
-    }
-
-    /**
-     * Returns the names of the dimensions which may be used in the performance results.
-     *
-     * @return The list of the dimension names
-     */
-    public static List<String> getDimensions() {
-        List<String> dimensions = new ArrayList<>();
-        for (Dim element : SUPPORTED_DIMENSIONS) {
-            dimensions.add(element.getName());
-        }
-        return dimensions;
-    }
-
-    /**
-     * Return the dimension corresponding to the given id.
-     *
-     * @param id
-     *            The id of the searched dimension.
-     * @return The {@link Dimension} or <code>null</code> if none is found.
-     */
-    public static Dimension getDimension(int id) {
-        int length = SUPPORTED_DIMENSIONS.length;
-        for (int i = 0; i < length; i++) {
-            if (SUPPORTED_DIMENSIONS[i].getId() == id) {
-                return SUPPORTED_DIMENSIONS[i];
-            }
-        }
-        return null;
-    }
-
-    /**
-     * Return the dimension corresponding to the given id.
-     *
-     * @param name
-     *            The name of the searched dimension.
-     * @return The {@link Dimension} or <code>null</code> if none is found.
-     */
-    public static Dimension getDimension(String name) {
-        int length = SUPPORTED_DIMENSIONS.length;
-        for (int i = 0; i < length; i++) {
-            if (SUPPORTED_DIMENSIONS[i].getName().equals(name)) {
-                return SUPPORTED_DIMENSIONS[i];
-            }
-        }
-        return null;
-    }
-
-    /**
-     * Return the descriptors of the configurations used for the performances.
-     *
-     * @return An array of 2 strings, the former is the name of the configuration and the latter its description.
-     */
-    public static String[][] getConfigDescriptors() {
-        String descriptors = System.getProperty(ECLIPSE_PERF_CONFIGS_DESCRIPTOR, DEFAULT_CONFIG_DESCRIPTORS);
-        StringTokenizer tokenizer = new StringTokenizer(descriptors, ",;"); //$NON-NLS-1$
-        List<String[]> list = new ArrayList<>();
-        while (tokenizer.hasMoreTokens()) {
-            String[] config = new String[2];
-            config[0] = tokenizer.nextToken().trim(); // config name
-            config[1] = tokenizer.nextToken().trim(); // config description
-            list.add(config);
-        }
-        String[][] configDescriptors = new String[list.size()][];
-        list.toArray(configDescriptors);
-        return configDescriptors;
-    }
-
-    public static String getDBPassword() {
-        String dbloc = System.getProperty(ECLIPSE_PERF_DBLOC);
-        if (dbloc != null) {
-            logInfo("System property " + ECLIPSE_PERF_DBLOC + " found to equal " + dbloc + " in getDBPassword"); //$NON-NLS-1$ //$NON-NLS-2$
-            Variations keys = new Variations();
-            keys.parsePairs(ECLIPSE_PERF_DBLOC + '=' + dbloc);
-            return keys.getProperty(DB_PASSWD, DEFAULT_DB_PASSWORD);
-        }
-        return DEFAULT_DB_PASSWORD;
-    }
-
-    /*
-     * -Declipse.perf.config=<varname1>=<varval1>;<varname2>=<varval2>;...;<varnameN>=<varvalN>
-     */
-    public static Variations getVariations() {
-        Variations keys = new Variations();
-        String configKey = System.getProperty(ECLIPSE_PERF_CONFIG);
-        if (configKey != null)
-            keys.parsePairs(configKey);
-        return keys;
-    }
-
-    /*
-     * -Declipse.perf.assertAgainst=<varname1>=<varval1>;<varname2>=<varval2>;...;<varnameN>=<varvalN> Returns null if assertAgainst
-     * property isn't defined.
-     */
-    public static Variations getAssertAgainst() {
-        String assertKey = System.getProperty(ECLIPSE_PERF_ASSERTAGAINST);
-        if (assertKey != null) {
-            Variations keys = getVariations();
-            if (keys == null)
-                keys = new Variations();
-            keys.parsePairs(assertKey);
-            return keys;
-        }
-        return null;
-    }
-
-    // logging
-
-    public static void logError(String message) {
-        if (message == null)
-            message = ""; //$NON-NLS-1$
-        log(new Status(IStatus.ERROR, PLUGIN_ID, INTERNAL_ERROR, message, null));
-    }
-
-    public static void logWarning(String message) {
-        if (message == null)
-            message = ""; //$NON-NLS-1$
-        log(new Status(IStatus.WARNING, PLUGIN_ID, IStatus.OK, message, null));
-    }
-    public static void logInfo(String message) {
-        if (message == null)
-            message = ""; //$NON-NLS-1$
-        log(new Status(IStatus.INFO, PLUGIN_ID, IStatus.OK, message, null));
-    }
-    public static void log(Throwable e) {
-        log(new Status(IStatus.ERROR, PLUGIN_ID, INTERNAL_ERROR, "Internal Error", e)); //$NON-NLS-1$
-    }
-
-    public static void log(IStatus status) {
-        if (fgPlugin != null) {
-            fgPlugin.getLog().log(status);
-        } else {
-            switch (status.getSeverity()) {
-                case IStatus.ERROR:
-                    System.err.println("Error: " + status.getMessage()); //$NON-NLS-1$
-                    break;
-                case IStatus.WARNING:
-                    System.err.println("Warning: " + status.getMessage()); //$NON-NLS-1$
-                    break;
-                default:
-                    break;
-            }
-            Throwable exception = status.getException();
-            if (exception != null)
-                exception.printStackTrace(System.err);
-        }
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/SystemTimePerformanceMeter.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/SystemTimePerformanceMeter.java
deleted file mode 100644
index 0cd3b91..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/SystemTimePerformanceMeter.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.test.internal.performance.data.DataPoint;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.data.Sample;
-import org.eclipse.test.internal.performance.data.Scalar;
-
-public class SystemTimePerformanceMeter extends InternalPerformanceMeter {
-
-    private static final int DEFAULT_INITIAL_CAPACITY = 3;
-
-    private long             fStartDate;
-    private List<Long>             fStartTime;
-    private List<Long>             fStopTime;
-
-    /**
-     * @param scenarioId
-     *            the scenario id
-     */
-    public SystemTimePerformanceMeter(String scenarioId) {
-        this(scenarioId, DEFAULT_INITIAL_CAPACITY);
-        fStartDate = System.currentTimeMillis();
-    }
-
-    /**
-     * @param scenarioId
-     *            the scenario id
-     * @param initalCapacity
-     *            the initial capacity in the number of measurments
-     */
-    public SystemTimePerformanceMeter(String scenarioId, int initalCapacity) {
-        super(scenarioId);
-        fStartTime = new ArrayList<>(initalCapacity);
-        fStopTime = new ArrayList<>(initalCapacity);
-    }
-
-    @Override
-    public void start() {
-        fStartTime.add(Long.valueOf(System.currentTimeMillis()));
-    }
-
-    @Override
-    public void stop() {
-        fStopTime.add(Long.valueOf(System.currentTimeMillis()));
-    }
-
-    @Override
-    public void commit() {
-        Assert.isTrue(fStartTime.size() == fStopTime.size());
-        System.out.println("Scenario: " + getScenarioName()); //$NON-NLS-1$
-        int maxOccurenceLength = String.valueOf(fStartTime.size()).length();
-        for (int i = 0; i < fStartTime.size(); i++) {
-            String occurence = String.valueOf(i + 1);
-            System.out
-                    .println("Occurence " + replicate(" ", maxOccurenceLength - occurence.length()) + occurence + ": " + (fStopTime.get(i).longValue() - fStartTime.get(i).longValue())); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-        }
-    }
-
-    private String replicate(String s, int n) {
-        StringBuilder buf = new StringBuilder(n * s.length());
-        for (int i = 0; i < n; i++)
-            buf.append(s);
-        return buf.toString();
-    }
-
-    @Override
-    public void dispose() {
-        fStartTime = null;
-        fStopTime = null;
-        super.dispose();
-    }
-
-    @Override
-    public Sample getSample() {
-        Assert.isTrue(fStartTime.size() == fStopTime.size());
-
-        Map<String, String> properties = new HashMap<>();
-        /*
-         * properties.put(DRIVER_PROPERTY, PerformanceTestPlugin.getBuildId()); properties.put(HOSTNAME_PROPERTY, getHostName());
-         */
-
-        DataPoint[] data = new DataPoint[2 * fStartTime.size()];
-        for (int i = 0; i < fStartTime.size(); i++) {
-            data[2 * i] = createDataPoint(BEFORE, InternalDimensions.SYSTEM_TIME, fStartTime.get(i).longValue());
-            data[2 * i + 1] = createDataPoint(AFTER, InternalDimensions.SYSTEM_TIME, fStopTime.get(i).longValue());
-        }
-
-        return new Sample(getScenarioName(), fStartDate, properties, data);
-    }
-
-    private DataPoint createDataPoint(int step, Dim dimension, long value) {
-        Map<Dim, Scalar> scalars = new HashMap<>();
-        scalars.put(dimension, new Scalar(dimension, value));
-        return new DataPoint(step, scalars);
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/SystemTimePerformanceMeterFactory.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/SystemTimePerformanceMeterFactory.java
deleted file mode 100644
index b10d210..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/SystemTimePerformanceMeterFactory.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance;
-
-import org.eclipse.test.performance.PerformanceMeter;
-
-public class SystemTimePerformanceMeterFactory extends PerformanceMeterFactory {
-
-    @Override
-    protected PerformanceMeter doCreatePerformanceMeter(String scenario) {
-        return new SystemTimePerformanceMeter(scenario);
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/DataPoint.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/DataPoint.java
deleted file mode 100644
index 92f7542..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/DataPoint.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials are made
- * available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.data;
-
-import java.io.Serializable;
-import java.util.Collection;
-import java.util.Map;
-import java.util.Set;
-
-/**
- * @since 3.1
- */
-public class DataPoint implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    private int fStep;
-    private Map<Dim, Scalar> fScalars;
-
-    public DataPoint(int step, Map<Dim, Scalar> values) {
-        fStep = step;
-        fScalars = values;
-    }
-
-    public int getStep() {
-        return fStep;
-    }
-
-    public Dim[] getDimensions() {
-        Set<Dim> set = fScalars.keySet();
-        return set.toArray(new Dim[set.size()]);
-    }
-
-    public Collection<Dim> getDimensions2() {
-        return fScalars.keySet();
-    }
-
-    public boolean contains(Dim dimension) {
-        return fScalars.containsKey(dimension);
-    }
-
-    public Scalar[] getScalars() {
-        return fScalars.values().toArray(new Scalar[fScalars.size()]);
-    }
-
-    public Scalar getScalar(Dim dimension) {
-        return fScalars.get(dimension);
-    }
-
-    @Override
-    public String toString() {
-        return "DataPoint [step= " + fStep + ", #dimensions: " + fScalars.size() + "]"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/Dim.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/Dim.java
deleted file mode 100644
index c1bdc8c..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/Dim.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2009 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.data;
-
-import org.eclipse.test.internal.performance.InternalDimensions;
-import org.eclipse.test.internal.performance.PerformanceTestPlugin;
-import org.eclipse.test.performance.Dimension;
-
-/**
- * @since 3.1
- */
-public class Dim implements Dimension {
-
-    private static final long serialVersionUID = 1L;
-
-    private static Dim[] fgRegisteredDimensions = new Dim[100];
-
-    private final int    fId;
-    private final Unit   fUnit;
-    private final int    fMultiplier;
-    private String       shortName;
-
-    public static Dim getDimension(int id) {
-        InternalDimensions.COMITTED.getId(); // trigger loading class InternalDimensions
-        if (id >= 0 && id < fgRegisteredDimensions.length)
-            return fgRegisteredDimensions[id];
-        return null;
-    }
-
-    public Dim(int id) {
-        this(id, Unit.CARDINAL, 1);
-    }
-
-    public Dim(int id, Unit unit) {
-        this(id, unit, 1);
-    }
-
-    public Dim(int id, Unit unit, int multiplier) {
-
-        if (id >= 0 && id < fgRegisteredDimensions.length) {
-            if (fgRegisteredDimensions[id] == null) {
-                fgRegisteredDimensions[id] = this;
-            } else
-                PerformanceTestPlugin.logError("dimension with id '" + id + "' already registered"); //$NON-NLS-1$ //$NON-NLS-2$
-        }
-        this.fId = id;
-        this.fUnit = unit;
-        this.fMultiplier = multiplier;
-    }
-
-    public int getId() {
-        return this.fId;
-    }
-
-    public Unit getUnit() {
-        return this.fUnit;
-    }
-
-    public int getMultiplier() {
-        return this.fMultiplier;
-    }
-
-    public String getName() {
-        return DimensionMessages.getString(this.fId);
-    }
-
-    /**
-     * Returns the label for the current dimension. This label is done keeping only uppercase characters from the name. It's
-     * typically used for anchor references based on dimension.
-     *
-     * @return The short name of the dimension
-     */
-    public String getLabel() {
-        if (this.shortName == null) {
-            String name = getName();
-            StringBuilder buffer = new StringBuilder();
-            int length = name.length();
-            for (int i = 0; i < length; i++) {
-                if (Character.isUpperCase(name.charAt(i))) {
-                    buffer.append(name.charAt(i));
-                }
-            }
-            this.shortName = buffer.toString();
-        }
-        return this.shortName;
-    }
-
-    public String getDescription() {
-        return DimensionMessages.getString(this.fId);
-    }
-
-    @Override
-    public String toString() {
-        return "Dimension [name=" + getName() + ", " + this.fUnit + "]"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-    }
-
-    public String getDisplayValue(Scalar scalar) {
-        return this.fUnit.getDisplayValue1(scalar.getMagnitude(), this.fMultiplier);
-    }
-
-    public String getDisplayValue(double scalar) {
-        return this.fUnit.getDisplayValue1(scalar / this.fMultiplier);
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/DimensionMessages.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/DimensionMessages.java
deleted file mode 100644
index 0ff2482..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/DimensionMessages.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.data;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-/**
- * @since 3.1
- */
-public class DimensionMessages {
-
-    private static final String         BUNDLE_NAME     = "org.eclipse.test.internal.performance.data.DimensionMessages"; //$NON-NLS-1$
-
-    private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME);
-
-    private DimensionMessages() {
-        // emtpy
-    }
-
-    public static String getString(int id) {
-        return getString("dimension." + id); //$NON-NLS-1$
-    }
-
-    public static String getDescription(int id) {
-        return getString("dimension.description." + id); //$NON-NLS-1$
-    }
-
-    public static String getString(String key) {
-        try {
-            return RESOURCE_BUNDLE.getString(key);
-        }
-        catch (MissingResourceException e) {
-            return '!' + key + '!';
-        }
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/DimensionMessages.properties b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/DimensionMessages.properties
deleted file mode 100644
index 4a2f515..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/DimensionMessages.properties
+++ /dev/null
@@ -1,97 +0,0 @@
-###############################################################################
-# Copyright (c) 2005 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-# Dimension Name
-dimension.2=System Time
-dimension.3=Used Java Heap
-dimension.4=Working Set
-dimension.7=Committed
-dimension.8=Working Set Peak
-dimension.9=Elapsed Process
-dimension.10=User time
-dimension.11=Kernel time
-dimension.19=Page Faults
-dimension.20=CPU Time
-dimension.22=Commit Limit
-dimension.23=Commit Peak
-dimension.24=Physical Memory
-dimension.25=Physical Available
-dimension.26=System Cache
-dimension.27=Kernel Total
-dimension.28=Kernel Paged
-dimension.29=Kernel Nonpaged
-dimension.30=Page Size
-dimension.31=Handle Count
-dimension.32=Process Count
-dimension.33=Thread Count
-dimension.34=GDI Objects
-dimension.35=USER Objects
-dimension.36=Open Handles
-dimension.37=Commit Total
-dimension.38=Read Count
-dimension.39=Write Count
-dimension.40=Bytes Read
-dimension.41=Bytes Written
-dimension.42=Hard Page Faults
-dimension.43=Soft Page Faults
-dimension.44=Text Size
-dimension.45=Data Size
-dimension.46=Library Size
-dimension.48=Used Memory
-dimension.49=Free Memory
-dimension.50=Buffers Memory
-dimension.51=Free Java Memory
-dimension.52=Invocation Count
-
-# Dimension Description
-dimension.description.2=* no longer measured, same as elapsed time, see PerformanceMonitor *
-dimension.description.3=Change in the amount of memory allocated for Java objects.
-dimension.description.4=Change in the amount of physical memory used by the process (other data resides in swap space).
-dimension.description.7=Change in the amount of allocated memory (both, in physical memory and swap space, can be preallocated for future use).
-dimension.description.8=Increase of the maximum working set size, useful with start-up tests.
-dimension.description.9=Amount of wall-clock time.
-dimension.description.10=User time
-dimension.description.11=Amount of time the process ran on the CPU, while the CPU was in kernel mode.
-dimension.description.19=Number of memory pages that were loaded from swap space on disk or from memory (i.e., in the latter case, they were not mapped in the process' page table, but already present in memory for some reason).
-dimension.description.20=Amount of time the process ran on the CPU.
-dimension.description.22=Commit Limit
-dimension.description.23=Commit Peak
-dimension.description.24=Physical Memory
-dimension.description.25=Physical Available
-dimension.description.26=System Cache
-dimension.description.27=Kernel Total
-dimension.description.28=Kernel Paged
-dimension.description.29=Kernel Nonpaged
-dimension.description.30=Page Size
-dimension.description.31=Handle Count
-dimension.description.32=Process Count
-dimension.description.33=Thread Count
-dimension.description.34=Change in the number of GDI (Graphics Device Interface) objects, can be useful for UI tests (particularly start-up tests).
-dimension.description.35=USER Objects
-dimension.description.36=Open Handles
-dimension.description.37=Commit Total
-dimension.description.38=Read Count
-dimension.description.39=Write Count
-dimension.description.40=Bytes Read
-dimension.description.41=Bytes Written
-dimension.description.42=Number of memory pages that were loaded from swap space on disk.
-dimension.description.43=Number of memory pages that were loaded from memory (i.e., they were not mapped in the process' page table, but already present in memory for some reason).
-dimension.description.44=Change in the process' code memory size, useful with start-up tests.
-dimension.description.45=Change in the process' data and stack memory size.
-dimension.description.46=Change in the process' library memory size.
-dimension.description.48=Used Memory
-dimension.description.49=Free Memory
-dimension.description.50=Buffers Memory
-dimension.description.51=Free Java Memory
-dimension.description.52=Invocation Count
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/Sample.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/Sample.java
deleted file mode 100644
index 32d5196..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/Sample.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2019 IBM Corporation and others.
- *
- * This program and the accompanying materials are made
- * available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.data;
-
-import java.io.Serializable;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.test.performance.Dimension;
-import org.junit.Assert;
-
-/**
- * @since 3.1
- */
-public class Sample implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    String      fScenarioID;
-    long        fStartTime;
-    Map<String, String> fProperties;
-    DataPoint[] fDataPoints;
-
-    boolean     fIsSummary;
-    boolean     fSummaryIsGlobal;
-    String      fShortName;
-    Dimension[] fSummaryDimensions;
-    int         fCommentType;
-    String      fComment;
-
-    public Sample(String scenarioID, long starttime, Map<String, String> properties, DataPoint[] dataPoints) {
-        Assert.assertTrue("scenarioID is null", scenarioID != null); //$NON-NLS-1$
-        fScenarioID = scenarioID;
-        fStartTime = starttime;
-        fProperties = properties;
-        fDataPoints = dataPoints;
-    }
-
-    public Sample(DataPoint[] dataPoints) {
-        fDataPoints = dataPoints;
-    }
-
-    public void setComment(int commentType, String comment) {
-        fCommentType = commentType;
-        fComment = comment;
-    }
-
-    public void tagAsSummary(boolean global, String shortName, Dimension[] summaryDimensions, int commentType, String comment) {
-        fIsSummary = true;
-        fSummaryIsGlobal = global;
-        fShortName = shortName;
-        fSummaryDimensions = summaryDimensions;
-        fCommentType = commentType;
-        fComment = comment;
-    }
-
-    public String getScenarioID() {
-        return fScenarioID;
-    }
-
-    public long getStartTime() {
-        return fStartTime;
-    }
-
-    public String getProperty(String name) {
-        return fProperties.get(name);
-    }
-
-    public String[] getPropertyKeys() {
-        if (fProperties == null)
-            return new String[0];
-        Set<String> set = fProperties.keySet();
-        return set.toArray(new String[set.size()]);
-    }
-
-    public DataPoint[] getDataPoints() {
-        DataPoint[] dataPoints = new DataPoint[fDataPoints.length];
-        System.arraycopy(fDataPoints, 0, dataPoints, 0, fDataPoints.length);
-        return dataPoints;
-    }
-
-    @Override
-    public String toString() {
-        return "MeteringSession [scenarioID= " + fScenarioID + ", #datapoints: " + fDataPoints.length + "]"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-    }
-
-    public boolean isSummary() {
-        return fIsSummary;
-    }
-
-    public boolean isGlobal() {
-        return fSummaryIsGlobal;
-    }
-
-    public String getShortname() {
-        return fShortName;
-    }
-
-    public Dimension[] getSummaryDimensions() {
-        return fSummaryDimensions;
-    }
-
-    public int getCommentType() {
-        return fCommentType;
-    }
-
-    public String getComment() {
-        return fComment;
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/Scalar.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/Scalar.java
deleted file mode 100644
index f9c6546..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/Scalar.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.data;
-
-import java.io.Serializable;
-
-/**
- * @since 3.1
- */
-public class Scalar implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    private Dim  fDimension;
-    private long fMagnitude;
-
-    public Scalar(Dim dimension, long extent) {
-        fDimension = dimension;
-        fMagnitude = extent;
-    }
-
-    public Dim getDimension() {
-        return fDimension;
-    }
-
-    public long getMagnitude() {
-        return fMagnitude;
-    }
-
-    @Override
-    public String toString() {
-        if (fDimension == null)
-            return "Scalar [dimension= " + fDimension + ", magnitude= " + fMagnitude + "]"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-        return "Scalar [" + fDimension.getName() + ": " + fDimension.getDisplayValue(this) + "]"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/Unit.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/Unit.java
deleted file mode 100644
index 99e91eb..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/data/Unit.java
+++ /dev/null
@@ -1,162 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.data;
-
-import java.io.Serializable;
-import java.text.NumberFormat;
-
-/**
- * @since 3.1
- */
-public class Unit implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    public static final Unit SECOND     = new Unit("s", "second", false);         //$NON-NLS-1$ //$NON-NLS-2$
-    public static final Unit BYTE       = new Unit("byte", "byte", true);         //$NON-NLS-1$ //$NON-NLS-2$
-    public static final Unit CARDINAL   = new Unit("", "", false);                //$NON-NLS-1$ //$NON-NLS-2$
-    public static final Unit INVOCATION = new Unit("invoc.", "invocation", false); //$NON-NLS-1$ //$NON-NLS-2$
-
-    private static final int T_DECIMAL  = 1000;
-    private static final int T_BINARY   = 1024;
-
-    // protected static final String[] PREFIXES= new String[] { "y", "z", "a", "f", "p", "n", "u", "m", "", "k", "M", "G", "T", "P",
-    // "E", "Z", "Y" };
-    // protected static final String[] FULL_PREFIXES= new String[] { "yocto", "zepto", "atto", "femto", "pico", "nano", "micro",
-    // "milli", "", "kilo", "mega", "giga", "tera", "peta", "exa", "zetta", "yotta" };
-    // protected static final String[] BINARY_PREFIXES= new String[] { "", "", "", "", "", "", "", "", "", "ki", "Mi", "Gi", "Ti",
-    // "Pi", "Ei", "Zi", "Yi" };
-    // protected static final String[] BINARY_FULL_PREFIXES= new String[] { "", "", "", "", "", "", "", "", "", "kibi", "mebi",
-    // "gibi", "tebi", "pebi", "exbi", "zebi", "yobi" };
-
-    private final String     fShortName;
-    private final String     fFullName;
-    private final boolean    fIsBinary;
-
-    // private final int fPrecision= 2;
-
-    public Unit(String shortName, String fullName, boolean binary) {
-        fShortName = shortName;
-        fFullName = fullName;
-        fIsBinary = binary;
-    }
-
-    public String getShortName() {
-        return fShortName;
-    }
-
-    public String getFullName() {
-        return fFullName;
-    }
-
-    public String getDisplayValue1(long magnitudel, int multiplier) {
-
-        // return getDisplayValue1(magnitudel / multiplier);
-        // return Long.toString((double)(magnitudel / multiplier));
-        return getDisplayValue1(magnitudel / multiplier);
-    }
-
-    public String getDisplayValue1(double magnitude) {
-
-        if (this == SECOND)
-            return formatedTime((long) (magnitude * 1000.0));
-        return formatEng((long) (magnitude));
-
-        /*
-         * int div= fIsBinary ? T_BINARY : T_DECIMAL; boolean negative= magnitude < 0; double mag= Math.abs(magnitude), ratio= mag /
-         * div; int divs= PREFIXES.length / 2; while (ratio >= 1) { mag= ratio; divs++; ratio= mag / div; } ratio= mag * div; while
-         * (ratio > 0.0 && ratio < div) { mag= ratio; divs--; ratio= mag * div; }
-         *
-         * if (negative) mag= -mag;
-         *
-         * String[] prefixes= fIsBinary ? BINARY_PREFIXES : PREFIXES; NumberFormat format= NumberFormat.getInstance();
-         * format.setMaximumFractionDigits(fPrecision); if (divs > 0 && divs <= prefixes.length) return prefixes[divs] +
-         * getShortName() + format.format(mag); else return getShortName() + magnitude;
-         */
-    }
-
-    @Override
-    public String toString() {
-        return "Unit [" + getShortName() + "]"; //$NON-NLS-1$ //$NON-NLS-2$
-    }
-
-    /**
-     * Answer a formatted string for the elapsed time (minutes, hours or days) that is appropriate for the scale of the time.
-     *
-     * @param diff
-     *            time in milliseconds
-     *
-     *            I copied this from karasiuk.utility.TimeIt
-     * @return the formatted time
-     */
-    public static String formatedTime(long diff) {
-        long sign = diff < 0 ? -1 : 1;
-        diff = Math.abs(diff);
-
-        if (diff < 1000)
-            return String.valueOf(sign * diff) + "ms"; //$NON-NLS-1$
-
-        NumberFormat nf = NumberFormat.getInstance();
-        nf.setMaximumFractionDigits(2);
-        double d = diff / 1000.0;
-        if (d < 60)
-            return nf.format(sign * d) + "s"; //$NON-NLS-1$
-
-        d = d / 60.0;
-        if (d < 60.0)
-            return nf.format(sign * d) + "m"; //$NON-NLS-1$
-
-        d = d / 60.0;
-        if (d < 24.0)
-            return nf.format(sign * d) + "h"; //$NON-NLS-1$
-
-        d = d / 24.0;
-        return nf.format(sign * d) + "d"; //$NON-NLS-1$
-    }
-
-    /**
-     * Answer a number formatted using engineering conventions, K thousands, M millions, G billions and T trillions.
-     *
-     * I copied this method from karasiuk.utility.Misc.
-     *
-     * @param n
-     *            the number to format
-     * @return the formatted number
-     */
-    public String formatEng(long n) {
-        long sign = n < 0 ? -1 : 1;
-        n = Math.abs(n);
-        int TSD = fIsBinary ? T_BINARY : T_DECIMAL;
-        if (n < TSD)
-            return String.valueOf(sign * n);
-        double d = ((double) n) / TSD;
-        NumberFormat nf = NumberFormat.getInstance();
-        nf.setMaximumFractionDigits(2);
-        if (d < TSD)
-            return nf.format(sign * d) + "K"; //$NON-NLS-1$
-
-        d = d / TSD;
-        if (d < TSD)
-            return nf.format(sign * d) + "M"; //$NON-NLS-1$
-
-        d = d / TSD;
-        if (d < TSD)
-            return nf.format(sign * d) + "G"; //$NON-NLS-1$
-
-        d = d / TSD;
-        return nf.format(sign * d) + "T"; //$NON-NLS-1$
-    }
-
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/Report.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/Report.java
deleted file mode 100644
index 9cd22c4..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/Report.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.db;
-
-import java.io.PrintStream;
-import java.util.HashMap;
-
-public class Report {
-
-    private static final String LEFT       = "l";          //$NON-NLS-1$
-    private static final String RIGHT      = "r";          //$NON-NLS-1$
-
-    private int                 fGap;
-    private int                 fColumn;
-    private int                 fRow;
-    private int                 fRows;
-    private HashMap<String, String>             fContent   = new HashMap<>();
-    private HashMap<String, Integer>             fWidths    = new HashMap<>();
-    private HashMap<String, String>             fAlignment = new HashMap<>();
-
-    public Report(int gap) {
-        fGap = gap;
-    }
-
-    public void addCell(String value) {
-        setCell(fColumn, fRow, value, LEFT);
-        fColumn++;
-    }
-
-    public void addCellRight(String value) {
-        setCell(fColumn, fRow, value, RIGHT);
-        fColumn++;
-    }
-
-    public void nextRow() {
-        fRow++;
-        fColumn = 0;
-    }
-
-    private void setCell(int x, int y, String value, String align) {
-        fContent.put(String.valueOf(x + "/" + y), value); //$NON-NLS-1$
-        fAlignment.put(String.valueOf(x + "/" + y), align); //$NON-NLS-1$
-        Integer w = fWidths.get(Integer.toString(x));
-        if (w == null)
-            w = Integer.valueOf(value.length());
-        else
-            w = Integer.valueOf(Math.max(w.intValue(), value.length()));
-        fWidths.put(Integer.toString(x), w);
-        fRows = Math.max(fRows, y + 1);
-    }
-
-    private String getCell(int x, int y) {
-        return fContent.get(x + "/" + y); //$NON-NLS-1$
-    }
-
-    public void print(PrintStream ps) {
-        int n = fWidths.size();
-        for (int y = 0; y < fRows; y++) {
-            for (int x = 0; x < n; x++) {
-                Integer w = fWidths.get(Integer.toString(x));
-                int ww = w.intValue();
-                String s = getCell(x, y);
-                if (s == null)
-                    s = ""; //$NON-NLS-1$
-
-                if (x > 0)
-                    for (int g = 0; g < fGap; g++)
-                        ps.print(' ');
-
-                int www = ww - s.length();
-                String align = fAlignment.get(x + "/" + y); //$NON-NLS-1$
-                if (LEFT.equalsIgnoreCase(align))
-                    ps.print(s);
-                for (int l = 0; l < www; l++)
-                    ps.print(' ');
-                if (RIGHT.equalsIgnoreCase(align))
-                    ps.print(s);
-            }
-            ps.println();
-        }
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/SQL.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/SQL.java
deleted file mode 100644
index a725a12..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/SQL.java
+++ /dev/null
@@ -1,517 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials are made
- * available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.db;
-
-import java.math.BigDecimal;
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-import java.sql.Timestamp;
-
-/*
- * Any SQL should only be used here.
- */
-public class SQL {
-
-    private boolean      fCompatibility = false;
-
-    protected Connection fConnection;
-
-    private PreparedStatement fInsertVariation, fInsertScenario, fInsertSample, fInsertDataPoint, fInsertScalar;
-    private PreparedStatement fQueryComment, fInsertComment, fQueryComment2;
-    private PreparedStatement fQueryVariation, fQueryVariations, fQueryScenario, fQueryAllScenarios, fQueryDatapoints,
-            fQueryScalars;
-    private PreparedStatement fInsertSummaryEntry, fUpdateScenarioShortName, fQuerySummaryEntry, fQueryGlobalSummaryEntries,
-            fQuerySummaryEntries;
-    private PreparedStatement fInsertFailure, fQueryFailure;
-
-    protected SQL(Connection con) throws SQLException {
-        fConnection = con;
-
-        boolean needsUpgrade = true;
-        boolean needsInitialization = true;
-        boolean needsFailures = true;
-        boolean needsComments = true;
-
-        try (Statement statement = fConnection.createStatement()) {
-            try (ResultSet rs = statement.executeQuery("select SYS.SYSTABLES.TABLENAME from SYS.SYSTABLES where SYS.SYSTABLES.TABLENAME not like 'SYS%'")) { //$NON-NLS-1$
-                while (rs.next()) {
-                    String tablename = rs.getString(1);
-                    if ("SUMMARYENTRY".equals(tablename)) //$NON-NLS-1$
-                        needsUpgrade = false;
-                    else if ("CONFIG_ORG".equals(tablename)) //$NON-NLS-1$
-                        fCompatibility = true;
-                    else if ("VARIATION".equals(tablename)) //$NON-NLS-1$
-                        needsInitialization = false;
-                    else if ("FAILURE".equals(tablename)) //$NON-NLS-1$
-                        needsFailures = false;
-                    else if ("COMMENT".equals(tablename)) //$NON-NLS-1$
-                        needsComments = false;
-                }
-            }
-            if (!fCompatibility) {
-                // check whether table SAMPLE still has the CONFIG_ID column
-                try (ResultSet rs = statement.executeQuery("select count(*) from SYS.SYSTABLES, SYS.SYSCOLUMNS where SYS.SYSTABLES.TABLENAME = 'SAMPLE' and " + //$NON-NLS-1$
-                        "SYS.SYSTABLES.TABLEID = SYS.SYSCOLUMNS.REFERENCEID and SYS.SYSCOLUMNS.COLUMNNAME = 'CONFIG_ID' ")) { //$NON-NLS-1$
-                    if (rs.next() && rs.getInt(1) == 1)
-                        fCompatibility = true;
-                }
-            }
-        }
-
-        if (needsInitialization)
-            initialize();
-        else {
-            if (needsUpgrade)
-                upgradeDB();
-            else if (needsFailures)
-                addFailureTable();
-            if (needsComments)
-                addCommentTable();
-        }
-    }
-
-    protected void dispose() throws SQLException {
-        if (fInsertVariation != null)
-            fInsertVariation.close();
-        if (fInsertScenario != null)
-            fInsertScenario.close();
-        if (fInsertSample != null)
-            fInsertSample.close();
-        if (fInsertDataPoint != null)
-            fInsertDataPoint.close();
-        if (fInsertScalar != null)
-            fInsertScalar.close();
-        if (fInsertSummaryEntry != null)
-            fInsertSummaryEntry.close();
-        if (fInsertFailure != null)
-            fInsertFailure.close();
-        if (fInsertComment != null)
-            fInsertComment.close();
-        if (fUpdateScenarioShortName != null)
-            fUpdateScenarioShortName.close();
-        if (fQueryDatapoints != null)
-            fQueryDatapoints.close();
-        if (fQueryScalars != null)
-            fQueryScalars.close();
-        if (fQueryVariation != null)
-            fQueryVariation.close();
-        if (fQueryScenario != null)
-            fQueryScenario.close();
-        if (fQueryAllScenarios != null)
-            fQueryAllScenarios.close();
-        if (fQueryVariations != null)
-            fQueryVariations.close();
-        if (fQueryGlobalSummaryEntries != null)
-            fQueryGlobalSummaryEntries.close();
-        if (fQuerySummaryEntries != null)
-            fQuerySummaryEntries.close();
-        if (fQueryFailure != null)
-            fQueryFailure.close();
-        if (fQueryComment != null)
-            fQueryComment.close();
-        if (fQueryComment2 != null)
-            fQueryComment2.close();
-    }
-
-    private void initialize() throws SQLException {
-        try  (Statement stmt = fConnection.createStatement()) {
-            stmt.executeUpdate("create table VARIATION (" + //$NON-NLS-1$
-                    "ID int unique not null GENERATED ALWAYS AS IDENTITY," + //$NON-NLS-1$
-                    "KEYVALPAIRS varchar(10000) not null " + //$NON-NLS-1$
-                    ")" //$NON-NLS-1$
-            );
-            stmt.executeUpdate("create table SCENARIO (" + //$NON-NLS-1$
-                    "ID int unique not null GENERATED ALWAYS AS IDENTITY," + //$NON-NLS-1$
-                    "NAME varchar(256) not null," + //$NON-NLS-1$
-                    "SHORT_NAME varchar(40)" + //$NON-NLS-1$
-                    ")" //$NON-NLS-1$
-            );
-            stmt.executeUpdate("create table SAMPLE (" + //$NON-NLS-1$
-                    "ID int not null GENERATED ALWAYS AS IDENTITY," + //$NON-NLS-1$
-                    "VARIATION_ID int not null," + //$NON-NLS-1$
-                    "SCENARIO_ID int not null," + //$NON-NLS-1$
-                    "STARTTIME timestamp" + //$NON-NLS-1$
-                    ")" //$NON-NLS-1$
-            );
-            stmt.executeUpdate("create table DATAPOINT (" + //$NON-NLS-1$
-                    "ID int not null GENERATED ALWAYS AS IDENTITY," + //$NON-NLS-1$
-                    "SAMPLE_ID int not null," + //$NON-NLS-1$
-                    "SEQ int," + //$NON-NLS-1$
-                    "STEP int" + //$NON-NLS-1$
-                    ")" //$NON-NLS-1$
-            );
-            stmt.executeUpdate("create table SCALAR (" + //$NON-NLS-1$
-                    "DATAPOINT_ID int not null," + //$NON-NLS-1$
-                    "DIM_ID int not null," + //$NON-NLS-1$
-                    "VALUE bigint" + //$NON-NLS-1$
-                    ")" //$NON-NLS-1$
-            );
-            stmt.executeUpdate("create table SUMMARYENTRY (" + //$NON-NLS-1$
-                    "VARIATION_ID int not null," + //$NON-NLS-1$
-                    "SCENARIO_ID int not null," + //$NON-NLS-1$
-                    "DIM_ID int not null," + //$NON-NLS-1$
-                    "IS_GLOBAL smallint not null," + //$NON-NLS-1$
-                    "COMMENT_ID int not null" + //$NON-NLS-1$
-                    ")" //$NON-NLS-1$
-            );
-            stmt.executeUpdate("create table FAILURE (" + //$NON-NLS-1$
-                    "VARIATION_ID int not null," + //$NON-NLS-1$
-                    "SCENARIO_ID int not null," + //$NON-NLS-1$
-                    "MESSAGE varchar(1000) not null" + //$NON-NLS-1$
-                    ")" //$NON-NLS-1$
-            );
-            stmt.executeUpdate("create table COMMENT (" + //$NON-NLS-1$
-                    "ID int unique not null GENERATED ALWAYS AS IDENTITY," + //$NON-NLS-1$
-                    "KIND int not null," + //$NON-NLS-1$
-                    "TEXT varchar(400) not null" + //$NON-NLS-1$
-                    ")" //$NON-NLS-1$
-            );
-
-            // Primary/unique
-            stmt.executeUpdate("alter table VARIATION add constraint VA_KVP primary key (KEYVALPAIRS)"); //$NON-NLS-1$
-            stmt.executeUpdate("alter table SCENARIO add constraint SC_NAME primary key (NAME)"); //$NON-NLS-1$
-            stmt.executeUpdate("alter table SAMPLE add constraint SA_ID primary key (ID)"); //$NON-NLS-1$
-            stmt.executeUpdate("alter table DATAPOINT add constraint DP_ID primary key (ID)"); //$NON-NLS-1$
-
-            // Foreign
-            stmt.executeUpdate("alter table SAMPLE add constraint SAMPLE_CONSTRAINT " + //$NON-NLS-1$
-                    "foreign key (VARIATION_ID) references VARIATION (ID)"); //$NON-NLS-1$
-            stmt.executeUpdate("alter table SAMPLE add constraint SAMPLE_CONSTRAINT2 " + //$NON-NLS-1$
-                    "foreign key (SCENARIO_ID) references SCENARIO (ID)"); //$NON-NLS-1$
-            stmt.executeUpdate("alter table DATAPOINT add constraint DP_CONSTRAINT " + //$NON-NLS-1$
-                    "foreign key (SAMPLE_ID) references SAMPLE (ID)"); //$NON-NLS-1$
-            stmt.executeUpdate("alter table SCALAR add constraint SCALAR_CONSTRAINT " + //$NON-NLS-1$
-                    "foreign key (DATAPOINT_ID) references DATAPOINT (ID)"); //$NON-NLS-1$
-
-            stmt.executeUpdate("alter table SUMMARYENTRY add constraint FP_CONSTRAINT " + //$NON-NLS-1$
-                    "foreign key (VARIATION_ID) references VARIATION (ID)"); //$NON-NLS-1$
-            stmt.executeUpdate("alter table SUMMARYENTRY add constraint FP_CONSTRAINT2 " + //$NON-NLS-1$
-                    "foreign key (SCENARIO_ID) references SCENARIO (ID)"); //$NON-NLS-1$
-
-            stmt.executeUpdate("alter table FAILURE add constraint FA_CONSTRAINT " + //$NON-NLS-1$
-                    "foreign key (VARIATION_ID) references VARIATION (ID)"); //$NON-NLS-1$
-            stmt.executeUpdate("alter table FAILURE add constraint FA_CONSTRAINT2 " + //$NON-NLS-1$
-                    "foreign key (SCENARIO_ID) references SCENARIO (ID)"); //$NON-NLS-1$
-
-            fConnection.commit();
-
-        }
-    }
-
-    private void upgradeDB() throws SQLException {
-        try (Statement stmt = fConnection.createStatement();){
-            stmt.executeUpdate("create table SUMMARYENTRY (" + //$NON-NLS-1$
-                    "VARIATION_ID int not null," + //$NON-NLS-1$
-                    "SCENARIO_ID int not null," + //$NON-NLS-1$
-                    "DIM_ID int not null," + //$NON-NLS-1$
-                    "IS_GLOBAL smallint not null," + //$NON-NLS-1$
-                    "COMMENT_ID int not null" + //$NON-NLS-1$
-                    ")" //$NON-NLS-1$
-            );
-            stmt.executeUpdate("alter table SUMMARYENTRY add constraint FP_CONSTRAINT " + //$NON-NLS-1$
-                    "foreign key (VARIATION_ID) references VARIATION (ID)"); //$NON-NLS-1$
-            stmt.executeUpdate("alter table SUMMARYENTRY add constraint FP_CONSTRAINT2 " + //$NON-NLS-1$
-                    "foreign key (SCENARIO_ID) references SCENARIO (ID)"); //$NON-NLS-1$
-
-            stmt.executeUpdate("alter table SCENARIO add column SHORT_NAME varchar(40)"); //$NON-NLS-1$
-
-            fConnection.commit();
-
-        }
-    }
-
-    private void addCommentTable() throws SQLException {
-        try (Statement stmt = fConnection.createStatement()){
-            stmt.executeUpdate("create table COMMENT (" + //$NON-NLS-1$
-                    "ID int unique not null GENERATED ALWAYS AS IDENTITY," + //$NON-NLS-1$
-                    "KIND int not null," + //$NON-NLS-1$
-                    "TEXT varchar(400) not null" + //$NON-NLS-1$
-                    ")" //$NON-NLS-1$
-            );
-
-            stmt.executeUpdate("alter table SUMMARYENTRY add column COMMENT_ID int not null default 0"); //$NON-NLS-1$
-
-            fConnection.commit();
-
-        }
-    }
-
-    private void addFailureTable() throws SQLException {
-        try (Statement stmt = fConnection.createStatement();){
-            stmt.executeUpdate("create table FAILURE (" + //$NON-NLS-1$
-                    "VARIATION_ID int not null," + //$NON-NLS-1$
-                    "SCENARIO_ID int not null," + //$NON-NLS-1$
-                    "MESSAGE varchar(1000) not null" + //$NON-NLS-1$
-                    ")" //$NON-NLS-1$
-            );
-
-            stmt.executeUpdate("alter table FAILURE add constraint FA_CONSTRAINT " + //$NON-NLS-1$
-                    "foreign key (VARIATION_ID) references VARIATION (ID)"); //$NON-NLS-1$
-            stmt.executeUpdate("alter table FAILURE add constraint FA_CONSTRAINT2 " + //$NON-NLS-1$
-                    "foreign key (SCENARIO_ID) references SCENARIO (ID)"); //$NON-NLS-1$
-
-            fConnection.commit();
-
-        }
-    }
-
-    static int create(PreparedStatement stmt) throws SQLException {
-        stmt.executeUpdate();
-        try (ResultSet rs = stmt.getGeneratedKeys()) {
-            if (rs != null) {
-                if (rs.next()) {
-                    BigDecimal idColVar = rs.getBigDecimal(1);
-                    return idColVar.intValue();
-                }
-            }
-        }
-        return 0;
-    }
-
-    int getScenario(String scenarioPattern) throws SQLException {
-        if (fQueryScenario == null)
-            fQueryScenario = fConnection.prepareStatement("select ID from SCENARIO where NAME = ?"); //$NON-NLS-1$
-        fQueryScenario.setString(1, scenarioPattern);
-        try (ResultSet result = fQueryScenario.executeQuery()) {
-            while (result.next())
-                return result.getInt(1);
-        }
-        if (fInsertScenario == null)
-            fInsertScenario = fConnection.prepareStatement(
-                    "insert into SCENARIO (NAME) values (?)", Statement.RETURN_GENERATED_KEYS); //$NON-NLS-1$
-        fInsertScenario.setString(1, scenarioPattern);
-        return create(fInsertScenario);
-    }
-
-    int getVariations(Variations variations) throws SQLException {
-        if (fQueryVariation == null)
-            fQueryVariation = fConnection.prepareStatement("select ID from VARIATION where KEYVALPAIRS = ?"); //$NON-NLS-1$
-        String exactMatchString = variations.toExactMatchString();
-        fQueryVariation.setString(1, exactMatchString);
-        try (ResultSet result = fQueryVariation.executeQuery()) {
-            while (result.next())
-                return result.getInt(1);
-        }
-        if (fInsertVariation == null)
-            fInsertVariation = fConnection.prepareStatement(
-                    "insert into VARIATION (KEYVALPAIRS) values (?)", Statement.RETURN_GENERATED_KEYS); //$NON-NLS-1$
-        fInsertVariation.setString(1, exactMatchString);
-        return create(fInsertVariation);
-    }
-
-    int createSample(int variation_id, int scenario_id, Timestamp starttime) throws SQLException {
-        if (fInsertSample == null) {
-            if (fCompatibility) {
-                // since we cannot remove table columns in cloudscape we have to
-                // provide a non-null value for CONFIG_ID
-                fInsertSample = fConnection
-                        .prepareStatement(
-                                "insert into SAMPLE (VARIATION_ID, SCENARIO_ID, STARTTIME, CONFIG_ID) values (?, ?, ?, 0)", Statement.RETURN_GENERATED_KEYS); //$NON-NLS-1$
-            } else {
-                fInsertSample = fConnection
-                        .prepareStatement(
-                                "insert into SAMPLE (VARIATION_ID, SCENARIO_ID, STARTTIME) values (?, ?, ?)", Statement.RETURN_GENERATED_KEYS); //$NON-NLS-1$
-            }
-        }
-        fInsertSample.setInt(1, variation_id);
-        fInsertSample.setInt(2, scenario_id);
-        fInsertSample.setTimestamp(3, starttime);
-        return create(fInsertSample);
-    }
-
-    int createDataPoint(int sample_id, int seq, int step) throws SQLException {
-        if (fInsertDataPoint == null)
-            fInsertDataPoint = fConnection.prepareStatement(
-                    "insert into DATAPOINT (SAMPLE_ID, SEQ, STEP) values (?, ?, ?)", Statement.RETURN_GENERATED_KEYS); //$NON-NLS-1$
-        fInsertDataPoint.setInt(1, sample_id);
-        fInsertDataPoint.setInt(2, seq);
-        fInsertDataPoint.setInt(3, step);
-        return create(fInsertDataPoint);
-    }
-
-    void insertScalar(int datapoint_id, int dim_id, long value) throws SQLException {
-        if (fInsertScalar == null)
-            fInsertScalar = fConnection.prepareStatement("insert into SCALAR values (?, ?, ?)"); //$NON-NLS-1$
-        fInsertScalar.setInt(1, datapoint_id);
-        fInsertScalar.setInt(2, dim_id);
-        fInsertScalar.setLong(3, value);
-        fInsertScalar.executeUpdate();
-    }
-
-    ResultSet queryDataPoints(Variations variations, String scenarioName) throws SQLException {
-        if (fQueryDatapoints == null)
-            fQueryDatapoints = fConnection
-                    .prepareStatement("select DATAPOINT.ID, DATAPOINT.STEP from VARIATION, SCENARIO, SAMPLE, DATAPOINT " + //$NON-NLS-1$
-                            "where " + //$NON-NLS-1$
-                            "SAMPLE.VARIATION_ID = VARIATION.ID and VARIATION.KEYVALPAIRS = ? and " + //$NON-NLS-1$
-                            "SAMPLE.SCENARIO_ID = SCENARIO.ID and SCENARIO.NAME LIKE ? and " + //$NON-NLS-1$
-                            "DATAPOINT.SAMPLE_ID = SAMPLE.ID " //$NON-NLS-1$
-                    );
-        fQueryDatapoints.setString(1, variations.toExactMatchString());
-        fQueryDatapoints.setString(2, scenarioName);
-        return fQueryDatapoints.executeQuery();
-    }
-
-    ResultSet queryScalars(int datapointId) throws SQLException {
-        if (fQueryScalars == null)
-            fQueryScalars = fConnection
-                    .prepareStatement("select SCALAR.DIM_ID, SCALAR.VALUE from SCALAR where SCALAR.DATAPOINT_ID = ?"); //$NON-NLS-1$
-        fQueryScalars.setInt(1, datapointId);
-        return fQueryScalars.executeQuery();
-    }
-
-    /*
-     * Returns SCENARIO.NAME
-     */
-    ResultSet queryScenarios(Variations variations, String scenarioPattern) throws SQLException {
-        if (fQueryAllScenarios == null)
-            fQueryAllScenarios = fConnection
-                    .prepareStatement("select distinct SCENARIO.NAME from SCENARIO, SAMPLE, VARIATION where " + //$NON-NLS-1$
-                            "SAMPLE.VARIATION_ID = VARIATION.ID and VARIATION.KEYVALPAIRS LIKE ? and " + //$NON-NLS-1$
-                            "SAMPLE.SCENARIO_ID = SCENARIO.ID and SCENARIO.NAME LIKE ?" //$NON-NLS-1$
-                    );
-        fQueryAllScenarios.setString(1, variations.toQueryPattern());
-        fQueryAllScenarios.setString(2, scenarioPattern);
-        return fQueryAllScenarios.executeQuery();
-    }
-
-    /*
-     * Returns VARIATION.KEYVALPAIRS
-     */
-    ResultSet queryVariations(String variations, String scenarioPattern) throws SQLException {
-        if (fQueryVariations == null)
-            fQueryVariations = fConnection
-                    .prepareStatement("select distinct VARIATION.KEYVALPAIRS from VARIATION, SAMPLE, SCENARIO where " + //$NON-NLS-1$
-                            "SAMPLE.VARIATION_ID = VARIATION.ID and VARIATION.KEYVALPAIRS LIKE ? and " + //$NON-NLS-1$
-                            "SAMPLE.SCENARIO_ID = SCENARIO.ID and SCENARIO.NAME LIKE ?" //$NON-NLS-1$
-                    );
-        fQueryVariations.setString(1, variations);
-        fQueryVariations.setString(2, scenarioPattern);
-        return fQueryVariations.executeQuery();
-    }
-
-    void createSummaryEntry(int variation_id, int scenario_id, int dim_id, boolean isGlobal, int comment_id) throws SQLException {
-        if (fQuerySummaryEntry == null)
-            fQuerySummaryEntry = fConnection
-                    .prepareStatement("select count(*) from SUMMARYENTRY where VARIATION_ID = ? and SCENARIO_ID = ? and DIM_ID = ? and IS_GLOBAL = ? and COMMENT_ID = ?"); //$NON-NLS-1$
-        fQuerySummaryEntry.setInt(1, variation_id);
-        fQuerySummaryEntry.setInt(2, scenario_id);
-        fQuerySummaryEntry.setInt(3, dim_id);
-        fQuerySummaryEntry.setShort(4, (short) (isGlobal ? 1 : 0));
-        fQuerySummaryEntry.setInt(5, comment_id);
-        try (ResultSet result = fQuerySummaryEntry.executeQuery()) {
-            if (result.next() && result.getInt(1) > 0)
-                return;
-        }
-        if (fInsertSummaryEntry == null)
-            fInsertSummaryEntry = fConnection
-                    .prepareStatement("insert into SUMMARYENTRY (VARIATION_ID, SCENARIO_ID, DIM_ID, IS_GLOBAL, COMMENT_ID) values (?, ?, ?, ?, ?)"); //$NON-NLS-1$
-        fInsertSummaryEntry.setInt(1, variation_id);
-        fInsertSummaryEntry.setInt(2, scenario_id);
-        fInsertSummaryEntry.setInt(3, dim_id);
-        fInsertSummaryEntry.setShort(4, (short) (isGlobal ? 1 : 0));
-        fInsertSummaryEntry.setInt(5, comment_id);
-        fInsertSummaryEntry.executeUpdate();
-    }
-
-    public void setScenarioShortName(int scenario_id, String shortName) throws SQLException {
-        if (shortName.length() >= 40)
-            shortName = shortName.substring(0, 40);
-        if (fUpdateScenarioShortName == null)
-            fUpdateScenarioShortName = fConnection.prepareStatement("update SCENARIO set SHORT_NAME = ? where SCENARIO.ID = ?"); //$NON-NLS-1$
-        fUpdateScenarioShortName.setString(1, shortName);
-        fUpdateScenarioShortName.setInt(2, scenario_id);
-        fUpdateScenarioShortName.executeUpdate();
-    }
-
-    ResultSet queryGlobalSummaryEntries(Variations variations) throws SQLException {
-        if (fQueryGlobalSummaryEntries == null)
-            fQueryGlobalSummaryEntries = fConnection
-                    .prepareStatement("select distinct SCENARIO.NAME, SCENARIO.SHORT_NAME, SUMMARYENTRY.DIM_ID, SUMMARYENTRY.IS_GLOBAL, SUMMARYENTRY.COMMENT_ID " + //$NON-NLS-1$
-                            "from VARIATION, SCENARIO, SUMMARYENTRY " + //$NON-NLS-1$
-                            "where SUMMARYENTRY.VARIATION_ID = VARIATION.ID " + //$NON-NLS-1$
-                            "and VARIATION.KEYVALPAIRS LIKE ? " + //$NON-NLS-1$
-                            "and SUMMARYENTRY.SCENARIO_ID = SCENARIO.ID " + //$NON-NLS-1$
-                            "and SUMMARYENTRY.IS_GLOBAL = 1 " + //$NON-NLS-1$
-                            "order by SCENARIO.NAME" //$NON-NLS-1$
-                    );
-        fQueryGlobalSummaryEntries.setString(1, variations.toExactMatchString());
-        return fQueryGlobalSummaryEntries.executeQuery();
-    }
-
-    ResultSet querySummaryEntries(Variations variations, String scenarioPattern) throws SQLException {
-        if (fQuerySummaryEntries == null)
-            fQuerySummaryEntries = fConnection
-                    .prepareStatement("select distinct SCENARIO.NAME, SCENARIO.SHORT_NAME, SUMMARYENTRY.DIM_ID, SUMMARYENTRY.IS_GLOBAL, SUMMARYENTRY.COMMENT_ID " + //$NON-NLS-1$
-                            "from VARIATION, SCENARIO, SUMMARYENTRY " + //$NON-NLS-1$
-                            "where SUMMARYENTRY.VARIATION_ID = VARIATION.ID " + //$NON-NLS-1$
-                            "and VARIATION.KEYVALPAIRS LIKE ? " + //$NON-NLS-1$
-                            "and SUMMARYENTRY.SCENARIO_ID = SCENARIO.ID " + //$NON-NLS-1$
-                            "and SCENARIO.NAME like ? " + //$NON-NLS-1$
-                            "order by SCENARIO.NAME" //$NON-NLS-1$
-                    );
-        fQuerySummaryEntries.setString(1, variations.toExactMatchString());
-        fQuerySummaryEntries.setString(2, scenarioPattern);
-        return fQuerySummaryEntries.executeQuery();
-    }
-
-    void insertFailure(int variation_id, int scenario_id, String message) throws SQLException {
-        if (fInsertFailure == null)
-            fInsertFailure = fConnection.prepareStatement("insert into FAILURE values (?, ?, ?)"); //$NON-NLS-1$
-        fInsertFailure.setInt(1, variation_id);
-        fInsertFailure.setInt(2, scenario_id);
-        fInsertFailure.setString(3, message);
-        fInsertFailure.executeUpdate();
-    }
-
-    public ResultSet queryFailure(Variations variations, String scenarioPattern) throws SQLException {
-        if (fQueryFailure == null)
-            fQueryFailure = fConnection
-                    .prepareStatement("select SCENARIO.NAME, FAILURE.MESSAGE from FAILURE, VARIATION, SCENARIO where " + //$NON-NLS-1$
-                            "FAILURE.VARIATION_ID = VARIATION.ID and VARIATION.KEYVALPAIRS LIKE ? and " + //$NON-NLS-1$
-                            "FAILURE.SCENARIO_ID = SCENARIO.ID and SCENARIO.NAME LIKE ?" //$NON-NLS-1$
-                    );
-        fQueryFailure.setString(1, variations.toExactMatchString());
-        fQueryFailure.setString(2, scenarioPattern);
-        return fQueryFailure.executeQuery();
-    }
-
-    int getCommentId(int commentKind, String comment) throws SQLException {
-        if (comment.length() > 400)
-            comment = comment.substring(0, 400);
-        if (fQueryComment == null)
-            fQueryComment = fConnection.prepareStatement("select ID from COMMENT where KIND = ? and TEXT = ?"); //$NON-NLS-1$
-        fQueryComment.setInt(1, commentKind);
-        fQueryComment.setString(2, comment);
-        try (ResultSet result = fQueryComment.executeQuery()) {
-            while (result.next())
-                return result.getInt(1);
-        }
-        if (fInsertComment == null)
-            fInsertComment = fConnection.prepareStatement(
-                    "insert into COMMENT (KIND, TEXT) values (?, ?)", Statement.RETURN_GENERATED_KEYS); //$NON-NLS-1$
-        fInsertComment.setInt(1, commentKind);
-        fInsertComment.setString(2, comment);
-        return create(fInsertComment);
-    }
-
-    public ResultSet getComment(int comment_id) throws SQLException {
-        if (fQueryComment2 == null)
-            fQueryComment2 = fConnection.prepareStatement("select KIND, TEXT from COMMENT where ID = ?"); //$NON-NLS-1$
-        fQueryComment2.setInt(1, comment_id);
-        return fQueryComment2.executeQuery();
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/SummaryEntry.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/SummaryEntry.java
deleted file mode 100644
index dbcdfaf..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/SummaryEntry.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.db;
-
-import org.eclipse.test.internal.performance.data.Dim;
-
-public class SummaryEntry {
-
-    public String  scenarioName;
-    public String  shortName;
-    public Dim     dimension;
-    public boolean isGlobal;
-    public int     commentKind;
-    public String  comment;
-
-    SummaryEntry(String scenarioName, String shortName, Dim dimension, boolean isGlobal) {
-        this.scenarioName = scenarioName;
-        this.shortName = shortName;
-        this.dimension = dimension;
-        this.isGlobal = isGlobal;
-    }
-
-    SummaryEntry(String scenarioName, String shortName, Dim dimension, boolean isGlobal, int commentKind, String comment) {
-        this.scenarioName = scenarioName;
-        this.shortName = shortName;
-        this.dimension = dimension;
-        this.isGlobal = isGlobal;
-        this.commentKind = commentKind;
-        this.comment = comment;
-    }
-
-    @Override
-    public String toString() {
-        return "SummaryEntry(" + isGlobal + "): <" + scenarioName + "> <" + shortName + "> <" + dimension + '>'; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/TimeSeries.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/TimeSeries.java
deleted file mode 100644
index 81f4749..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/TimeSeries.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2006 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.db;
-
-public class TimeSeries {
-
-    private String[] fBuildNames;
-    private double[] fAverages;
-    private double[] fStddev;
-    private long[]   fCount;
-
-    TimeSeries(String[] tags, double[] averages, double[] stddev, long[] sizes) {
-        fBuildNames = tags;
-        fAverages = averages;
-        fStddev = stddev;
-        fCount = sizes;
-    }
-
-    /**
-     * Returns length of series.
-     *
-     * @return length of series
-     */
-    public int getLength() {
-        return fBuildNames.length;
-    }
-
-    /**
-     * Returns value at given index.
-     *
-     * @param ix
-     * @return value at given index
-     */
-    public double getValue(int ix) {
-        return fAverages[ix];
-    }
-
-    /**
-     * Returns std dev at given index.
-     *
-     * @param ix
-     * @return std dev at given index
-     */
-    public double getStddev(int ix) {
-        return fStddev[ix];
-    }
-
-    /**
-     * Returns label at given index.
-     *
-     * @param ix
-     * @return label at given index
-     */
-    public String getLabel(int ix) {
-        return fBuildNames[ix];
-    }
-
-    /**
-     * Returns the sample size at the given index.
-     *
-     * @param ix
-     * @return the sample size at the given index
-     */
-    public long getCount(int ix) {
-        return fCount[ix];
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/Variations.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/Variations.java
deleted file mode 100644
index e3cc6c6..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/db/Variations.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2019 IBM Corporation and others.
- *
- * This program and the accompanying materials are made
- * available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.db;
-
-import java.util.Arrays;
-import java.util.Properties;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import org.eclipse.test.internal.performance.PerformanceTestPlugin;
-
-/**
- * The <code>Variations</code> class represents a set of key/value pairs and is used to tag data stored in the performance database
- * and when querying for data from the database.
- */
-public class Variations extends Properties {
-
-    private static final long serialVersionUID = 1L;
-
-    /**
-     * Creates an empty set of key/value pairs.
-     */
-    public Variations() {
-        //
-    }
-
-    /**
-     * Creates a Variations object that is populated with a "config" and a "build" key/value pair.
-     *
-     * @param configValue
-     *            a value to store under the config key
-     * @param buildValue
-     *            a value to store under the build key
-     * @deprecated Use the default constructor instead and fill in key/value pairs explicitely.
-     */
-    @Deprecated
-    public Variations(String configValue, String buildValue) {
-        if (configValue != null)
-            put(PerformanceTestPlugin.CONFIG, configValue);
-        if (buildValue != null)
-            put(PerformanceTestPlugin.BUILD, buildValue);
-    }
-
-    /**
-     * Creates a set of key/value pairs by parsing the given string. The format of the string must be:
-     *
-     * <pre>
-     *   key1=value1;key2=value2; .... ; keyn=valuen
-     * </pre>
-     *
-     * @param keyValuePairs
-     */
-    public Variations(String keyValuePairs) {
-        parsePairs(keyValuePairs);
-    }
-
-    public String toExactMatchString() {
-        return toDB(this, false);
-    }
-
-    public String toQueryPattern() {
-        return toDB(this, true);
-    }
-
-    public void parsePairs(String keyvaluepairs) {
-        parse(keyvaluepairs, ";"); //$NON-NLS-1$
-    }
-
-    public void parseDB(String keyvaluepairs) {
-        parse(keyvaluepairs, "|"); //$NON-NLS-1$
-    }
-
-    /**
-     * parsing the given string as key/value pairs and stores them in Variations. The string's format is an implementation detail of
-     * the database.
-     *
-     * @param keyvaluepairs
-     * @param separator
-     */
-    private void parse(String keyvaluepairs, String separator) {
-        StringTokenizer st = new StringTokenizer(keyvaluepairs, separator);
-        while (st.hasMoreTokens()) {
-            String token = st.nextToken();
-            int i = token.indexOf('=');
-            if (i < 1)
-                throw new IllegalArgumentException("kev/value pair '" + token + "' is illformed"); //$NON-NLS-1$ //$NON-NLS-2$
-            String value = token.substring(i + 1);
-            token = token.substring(0, i);
-            // System.out.println(token + ": <" + value + ">");
-            put(token, value);
-        }
-    }
-
-    /*
-     * TODO: we need to escape '=' and ';' characters in key/values.
-     */
-    private static String toDB(Properties keyValues, boolean asQuery) {
-        Set<String> set = keyValues.stringPropertyNames();
-        String[] keys = set.toArray(new String[set.size()]);
-        Arrays.sort(keys);
-        StringBuilder sb = new StringBuilder();
-
-        for (String key : keys) {
-            if (asQuery)
-                sb.append('%');
-            String value = keyValues.getProperty(key);
-            sb.append('|');
-            sb.append(key);
-            sb.append('=');
-            if (value != null)
-                sb.append(value);
-            sb.append('|');
-        }
-        if (asQuery)
-            sb.append('%');
-        return sb.toString();
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/AbsoluteBandChecker.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/AbsoluteBandChecker.java
deleted file mode 100644
index 15cb412..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/AbsoluteBandChecker.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.eval;
-
-import org.eclipse.test.internal.performance.PerformanceTestPlugin;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.data.Scalar;
-
-/**
- * @since 3.1
- */
-public class AbsoluteBandChecker extends AssertChecker {
-
-    private long fLowerBand;
-    private long fUpperBand;
-
-    public AbsoluteBandChecker(Dim dimension, long lowerBand, long upperBand) {
-        super(dimension);
-        fLowerBand = lowerBand;
-        fUpperBand = upperBand;
-    }
-
-    @Override
-    public boolean test(StatisticsSession reference, StatisticsSession measured, StringBuffer message) {
-        Dim dimension = getDimension();
-
-        if (!measured.contains(dimension)) {
-            PerformanceTestPlugin.logWarning("collected data provides no dimension '" + dimension.getName() + '\''); //$NON-NLS-1$
-            return true;
-        }
-        if (!reference.contains(dimension)) {
-            PerformanceTestPlugin.logWarning("reference data provides no dimension '" + dimension.getName() + '\''); //$NON-NLS-1$
-            return true;
-        }
-
-        double actual = measured.getAverage(dimension);
-        double test = reference.getAverage(dimension);
-
-        if (actual > fUpperBand + test || actual < test - fLowerBand) {
-            message.append('\n'
-                    + dimension.getName()
-                    + ": " + dimension.getDisplayValue(actual) + " is not within [-" + dimension.getDisplayValue(new Scalar(null, fLowerBand)) + ", +" + dimension.getDisplayValue(new Scalar(null, fUpperBand)) + "] of " + dimension.getDisplayValue(test)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-            return false;
-        }
-
-        return true;
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/AssertChecker.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/AssertChecker.java
deleted file mode 100644
index b00d039..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/AssertChecker.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.eval;
-
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.test.internal.performance.data.Dim;
-
-/**
- * @since 3.1
- */
-public abstract class AssertChecker {
-
-    private Set<Dim> fDimensions;
-
-    public AssertChecker(Dim dimension) {
-        this(new Dim[] { dimension });
-    }
-
-    public AssertChecker(Dim[] dimensions) {
-        fDimensions = new HashSet<>();
-        fDimensions.addAll(Arrays.asList(dimensions));
-    }
-
-    public Dim[] getDimensions() {
-        return fDimensions.toArray(new Dim[fDimensions.size()]);
-    }
-
-    protected Dim getDimension() {
-        Assert.isTrue(fDimensions.size() == 1);
-        return getDimensions()[0];
-    }
-
-    /**
-     * Evaluates the predicate.
-     *
-     * @param reference
-     *            statistics of dimensions of the reference metering session
-     * @param measured
-     *            statistics of dimensions of the metering session to be tested
-     * @param message
-     *            a message presented to the user upon failure
-     * @return <code>true</code> if the predicate passes, <code>false</code> if it fails
-     */
-    public abstract boolean test(StatisticsSession reference, StatisticsSession measured, StringBuffer message);
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/EmptyEvaluator.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/EmptyEvaluator.java
deleted file mode 100644
index cff6cba..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/EmptyEvaluator.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.eval;
-
-import org.eclipse.test.performance.PerformanceMeter;
-
-/**
- * The empty evaluator. Does nothing.
- */
-public class EmptyEvaluator implements IEvaluator {
-
-    @Override
-    public void evaluate(PerformanceMeter performanceMeter) throws RuntimeException {
-        // empty
-    }
-
-    @Override
-    public void setAssertCheckers(AssertChecker[] asserts) {
-        // empty
-    }
-
-    @Override
-    public void setReferenceFilterProperties(String driver, String timestamp) {
-        // empty
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/Evaluator.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/Evaluator.java
deleted file mode 100644
index 4a187e4..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/Evaluator.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials are made
- * available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.eval;
-
-import java.util.HashSet;
-
-import org.eclipse.test.internal.performance.InternalPerformanceMeter;
-import org.eclipse.test.internal.performance.PerformanceTestPlugin;
-import org.eclipse.test.internal.performance.data.DataPoint;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.data.Sample;
-import org.eclipse.test.internal.performance.db.Variations;
-import org.eclipse.test.performance.PerformanceMeter;
-import org.junit.Assert;
-
-/**
- * The default implementation of an evaluator backed by a database.
- *
- * @since 3.1
- */
-public class Evaluator extends EmptyEvaluator {
-
-    private AssertChecker[] fCheckers;
-
-    @Override
-    public void setAssertCheckers(AssertChecker[] asserts) {
-        fCheckers = asserts;
-    }
-
-    @Override
-    public void evaluate(PerformanceMeter performanceMeter) throws RuntimeException {
-
-        if (fCheckers == null)
-            return; // nothing to do
-
-        // get reference build tag
-        Variations refKeys = PerformanceTestPlugin.getAssertAgainst();
-        String assertKey = System.getProperty(PerformanceTestPlugin.ECLIPSE_PERF_ASSERTAGAINST);
-        if (refKeys == null) {
-            PerformanceTestPlugin.logWarning("refkeys was null. " + PerformanceTestPlugin.ECLIPSE_PERF_ASSERTAGAINST + " was " + assertKey); //$NON-NLS-1$ //$NON-NLS-2$
-            return; // nothing to do
-        }
-        // else
-        PerformanceTestPlugin.logInfo("refkeys was: " + refKeys.toString() + " \n\t based on " + PerformanceTestPlugin.ECLIPSE_PERF_ASSERTAGAINST + " being set to " + assertKey); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-
-
-        if (!(performanceMeter instanceof InternalPerformanceMeter))
-            return; // we cannot handle this.
-
-        InternalPerformanceMeter ipm = (InternalPerformanceMeter) performanceMeter;
-        Sample session = ipm.getSample();
-        Assert.assertTrue("metering session is null", session != null); //$NON-NLS-1$
-
-        // determine all dimensions we need
-        HashSet<Dim> allDimensions = new HashSet<>();
-        for (AssertChecker chk : fCheckers) {
-            for (Dim dim : chk.getDimensions())
-                allDimensions.add(dim);
-        }
-
-        // get data for this session
-        DataPoint[] sessionDatapoints = session.getDataPoints();
-        Variations config = PerformanceTestPlugin.getVariations();
-        if (sessionDatapoints == null || sessionDatapoints.length == 0) {
-            PerformanceTestPlugin.logWarning("no session data named '" + config + "' found"); //$NON-NLS-1$ //$NON-NLS-2$
-            return;
-        }
-
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/IEvaluator.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/IEvaluator.java
deleted file mode 100644
index cc00d3d..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/IEvaluator.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.eval;
-
-import org.eclipse.test.performance.PerformanceMeter;
-
-/**
- * @since 3.1
- */
-public interface IEvaluator {
-
-    /**
-     * Evaluates the given performance meter by comparing its measurements against the reference data selected with
-     * <code>setReferenceFilterProperties</code>.
-     *
-     * @param performanceMeter
-     *            the performance meter
-     * @throws RuntimeException
-     *             when the comparison does not pass
-     */
-    void evaluate(PerformanceMeter performanceMeter) throws RuntimeException;
-
-    /**
-     * Sets the asserts that should be evaluated by the evaluator.
-     *
-     * @param asserts
-     *            the assert checkers that should be evaluated by the evaluator
-     */
-    void setAssertCheckers(AssertChecker[] asserts);
-
-    /**
-     * Selects the reference build against which the current session will be compared in <code>evaluate</code>.
-     *
-     * @param driver
-     * @param timestamp
-     *            the timestamp of the reference, may be null to use any
-     */
-    void setReferenceFilterProperties(String driver, String timestamp);
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/RelativeBandChecker.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/RelativeBandChecker.java
deleted file mode 100644
index 8270240..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/RelativeBandChecker.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.eval;
-
-import org.eclipse.test.internal.performance.PerformanceTestPlugin;
-import org.eclipse.test.internal.performance.data.Dim;
-
-/**
- * @since 3.1
- */
-public class RelativeBandChecker extends AssertChecker {
-
-    private final double fLowerBand;
-    private final double fUpperBand;
-
-    public RelativeBandChecker(Dim dimension, double lowerBand, double upperBand) {
-        super(dimension);
-        fLowerBand = lowerBand;
-        fUpperBand = upperBand;
-    }
-
-    @Override
-    public boolean test(StatisticsSession reference, StatisticsSession measured, StringBuffer message) {
-        Dim dimension = getDimension();
-
-        if (!measured.contains(dimension)) {
-            PerformanceTestPlugin.logWarning("collected data provides no dimension '" + dimension.getName() + '\''); //$NON-NLS-1$
-            return true;
-        }
-        if (!reference.contains(dimension)) {
-            PerformanceTestPlugin.logWarning("reference data provides no dimension '" + dimension.getName() + '\''); //$NON-NLS-1$
-            return true;
-        }
-
-        double actual = measured.getAverage(dimension);
-        double test = reference.getAverage(dimension);
-
-        if (test < 0.001 && test > -0.001) {
-            // we don't fail for reference value of zero
-            PerformanceTestPlugin.logWarning("ref value for '" + dimension.getName() + "' is too small"); //$NON-NLS-1$ //$NON-NLS-2$
-            return true;
-        }
-        if (actual < 0) {
-            // we don't fail for negative values
-            PerformanceTestPlugin.logWarning("actual value for '" + dimension.getName() + "' is negative"); //$NON-NLS-1$ //$NON-NLS-2$
-            return true;
-        }
-
-        if (actual > fUpperBand * test || actual < fLowerBand * test) {
-            message.append('\n'
-                    + dimension.getName()
-                    + ": " + dimension.getDisplayValue(actual) + " is not within [" + Math.round(fLowerBand * 100) + "%, " + Math.round(fUpperBand * 100) + "%] of " + dimension.getDisplayValue(test)); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-            return false;
-        }
-        return true;
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/StatisticsSession.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/StatisticsSession.java
deleted file mode 100644
index f27e874..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/StatisticsSession.java
+++ /dev/null
@@ -1,243 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.eval;
-
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.test.internal.performance.InternalPerformanceMeter;
-import org.eclipse.test.internal.performance.data.DataPoint;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.data.Scalar;
-import org.eclipse.test.internal.performance.eval.StatisticsUtil.Percentile;
-import org.junit.Assert;
-
-/**
- * @since 3.1
- */
-public class StatisticsSession {
-
-    static final class Statistics {
-
-        public long   count;
-        public long   sum;
-        public double average;
-        public double stddev;
-    }
-
-    private final DataPoint[] fDataPoints;
-    private final Map<Dim, Statistics>         fStatistics = new HashMap<>();
-
-    public StatisticsSession(DataPoint[] datapoints) {
-        fDataPoints = datapoints;
-    }
-
-    public double getAverage(Dim dimension) {
-        return getStats(dimension).average;
-    }
-
-    public long getSum(Dim dimension) {
-        return getStats(dimension).sum;
-    }
-
-    public long getCount(Dim dimension) {
-        return getStats(dimension).count;
-    }
-
-    public double getStddev(Dim dimension) {
-        return getStats(dimension).stddev;
-    }
-
-    double getStderr_mean(Dim dimension) {
-        return getStats(dimension).stddev / Math.sqrt(getStats(dimension).count);
-    }
-
-    double getStudentsT(Dim dimension, Percentile percentile) {
-        int df = (int) getStats(dimension).count - 1;
-        return StatisticsUtil.getStudentsT(df, percentile);
-    }
-
-    /**
-     * Returns the confidence interval for the given dimension and the percentile.
-     *
-     * @param dimension
-     *            the dimension
-     * @param percentile
-     *            the percentile
-     * @return an array of length two, with the lower and upper bounds of the confidence interval
-     */
-    public double[] getConfidenceInterval(Dim dimension, Percentile percentile) {
-        double mean = getAverage(dimension);
-        double stat_err = getStderr_mean(dimension);
-
-        double t = getStudentsT(dimension, percentile);
-
-        double[] interval = { mean - t * stat_err, mean + t * stat_err };
-
-        return interval;
-    }
-
-    private Statistics getStats(Dim dimension) {
-        Statistics stats = fStatistics.get(dimension);
-        if (stats == null) {
-            stats = computeStats(dimension);
-            fStatistics.put(dimension, stats);
-        }
-        return stats;
-    }
-
-    private Statistics computeStats(Dim dimension) {
-
-        Statistics stats;
-
-        Set<Integer> steps = new HashSet<>();
-        for (DataPoint dp : fDataPoints) {
-            steps.add(Integer.valueOf(dp.getStep()));
-        }
-
-        if (steps.contains(Integer.valueOf(InternalPerformanceMeter.AVERAGE))) {
-            // an already aggregated set of data points from the DB
-            stats = computeStatsFromAggregates(dimension);
-        } else if (steps.contains(Integer.valueOf(InternalPerformanceMeter.AFTER))) {
-            // raw values from measurement
-            stats = computeStatsFromMeasurements(dimension, steps);
-        } else {
-            Assert.fail("illegal data set: contains neither AVERAGE nor AFTER values."); //$NON-NLS-1$
-            stats = null; // dummy
-        }
-
-        return stats;
-    }
-
-    private Statistics computeStatsFromAggregates(Dim dimension) {
-        Statistics stats = new Statistics();
-        long aggregateCount = 0;
-        double averageSum = 0;
-        long countSum = 0;
-        double stdevSum = 0;
-
-        // Set acquiredAggregates= new HashSet();
-        for (DataPoint point : fDataPoints) {
-            Scalar scalar = point.getScalar(dimension);
-            if (scalar == null)
-                continue;
-
-            Integer aggregate = Integer.valueOf(point.getStep());
-            // allow for multiple measurements that were each stored with their own
-            // aggregate values
-            // Assert.assertTrue(acquiredAggregates.add(aggregate));
-
-            long magnitude = scalar.getMagnitude();
-            switch (aggregate.intValue()) {
-                case InternalPerformanceMeter.AVERAGE:
-                    averageSum += magnitude;
-                    aggregateCount++;
-                    break;
-                case InternalPerformanceMeter.STDEV:
-                    // see DB.internalStore
-                    stdevSum += Double.longBitsToDouble(magnitude);
-                    break;
-                case InternalPerformanceMeter.SIZE:
-                    countSum += magnitude;
-                    break;
-                default:
-                    Assert.fail("only average, stdev and size are supported in aggregate mode"); //$NON-NLS-1$
-                    break;
-            }
-        }
-
-        stats.average = averageSum / aggregateCount;
-        stats.stddev = stdevSum / aggregateCount; // XXX this does not work! have to treat multiple runs like normal measurement
-                                                  // data
-        stats.count = countSum;
-        stats.sum = Math.round(stats.count * stats.average);
-
-        return stats;
-    }
-
-    private Statistics computeStatsFromMeasurements(Dim dimension, Set<Integer> steps) {
-        Statistics stats = new Statistics();
-        long mags[];
-        switch (steps.size()) {
-            case 1:
-                // if there is only one Step, we don't calculate the delta. happens for startup tests
-                mags = new long[fDataPoints.length];
-                for (int i = 0; i < fDataPoints.length; i++) {
-                    Scalar sc = fDataPoints[i].getScalar(dimension);
-                    mags[i] = sc == null ? 0 : sc.getMagnitude();
-                }
-                break;
-            case 2:
-                int count = fDataPoints.length / 2;
-                mags = new long[count];
-                for (int i = 0; i < count; i++) {
-                    DataPoint before = fDataPoints[2 * i];
-                    Assert.assertTrue("wrong order of steps", before.getStep() == InternalPerformanceMeter.BEFORE); //$NON-NLS-1$
-                    DataPoint after = fDataPoints[2 * i + 1];
-                    Assert.assertTrue("wrong order of steps", after.getStep() == InternalPerformanceMeter.AFTER); //$NON-NLS-1$
-
-                    Scalar delta = getDelta(before, after, dimension);
-                    long magnitude = delta.getMagnitude();
-                    mags[i] = magnitude;
-                }
-                break;
-            default:
-                Assert.fail("cannot handle more than two steps in measurement mode"); //$NON-NLS-1$
-                return null; // dummy
-        }
-
-        for (long mag : mags) {
-            stats.sum += mag;
-            stats.count++;
-        }
-
-        if (stats.count > 0) {
-            stats.average = (double) stats.sum / stats.count;
-            if (stats.count == 1) {
-                stats.stddev = 0;
-            } else {
-                double squaredDeviations = 0;
-                for (long mag : mags) {
-                    double deviation = stats.average - mag;
-                    squaredDeviations += deviation * deviation;
-                }
-                stats.stddev = Math.sqrt(squaredDeviations / (stats.count - 1)); // unbiased sample stdev
-            }
-        } else {
-            stats.average = 0;
-            stats.stddev = 0;
-        }
-
-        return stats;
-    }
-
-    private Scalar getDelta(DataPoint before, DataPoint after, Dim dimension) {
-        Scalar one = before.getScalar(dimension);
-        Assert.assertTrue("reference has no value for dimension " + dimension, one != null); //$NON-NLS-1$
-
-        Scalar two = after.getScalar(dimension);
-        Assert.assertTrue("reference has no value for dimension " + dimension, two != null); //$NON-NLS-1$
-
-        return new Scalar(one.getDimension(), two.getMagnitude() - one.getMagnitude());
-    }
-
-    public boolean contains(Dim dimension) {
-        if (fDataPoints.length > 0)
-            return fDataPoints[0].contains(dimension);
-        return false;
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/StatisticsUtil.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/StatisticsUtil.java
deleted file mode 100644
index e25df50..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/eval/StatisticsUtil.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.eval;
-
-import org.eclipse.test.internal.performance.db.TimeSeries;
-
-/**
- * Utility methods for statistics.
- *
- * @since 3.2
- */
-public final class StatisticsUtil {
-
-    /**
-     * Percentile constants class.
-     *
-     * @since 3.2
-     */
-    public static final class Percentile {
-
-        final int            fColumn;
-        private final double fInside;
-
-        private Percentile(int column, double inside) {
-            fColumn = column;
-            fInside = inside;
-        }
-
-        /**
-         * Returns how much is within the percentile, [0, 1]
-         *
-         * @return the inside quotient
-         */
-        public double inside() {
-            return fInside;
-        }
-    }
-
-    public static final Percentile T90   = new Percentile(0, 0.9);
-    public static final Percentile T95   = new Percentile(1, 0.95);
-    public static final Percentile T97_5 = new Percentile(2, 0.975);
-    public static final Percentile T99   = new Percentile(3, 0.99);
-
-    /**
-     * Returns the student's t value from the two-tailed t-table. For a degree-of-freedom larger than 100, the value for 100 is
-     * returned.
-     *
-     * @param df
-     *            the degrees of freedom (usually sample size - 1)
-     * @param percentile
-     *            the percentile
-     * @return the corresponding student's t value
-     */
-    public static double getStudentsT(int df, Percentile percentile) {
-        if (df < 0)
-            df = 0;
-        else if (df > 100)
-            df = 100;
-        return T[df][percentile.fColumn];
-    }
-
-    /**
-     * Returns <code>true</code> if the mean of two data sets is significantly different, such that the probability that they are
-     * from the same population is lower than <code>percentile</code>, <code>false</code> otherwise. The data sets are taken from
-     * <code>series</code> at <code>index1</code> and <code>index2</code>.
-     * <p>
-     * Note that no conclusion must be drawn from a <code>false</code> return value: it does not indicate that the two data sets are
-     * from the same population - there may simply be not enough data to conclude the other way, for example due to a small sample
-     * size or large standard deviation.
-     * </p>
-     * <p>
-     * Also note that a <code>true</code> return value does not say anything about the relevance of the difference - a statistically
-     * significant difference may be practically irrelevant if it is small.
-     * </p>
-     * <p>
-     * XXX the current implementation assumes that the standard deviations are sufficiently similar.
-     * </p>
-     *
-     * @param refSeries
-     *            the time series containing the first data set
-     * @param index1
-     *            the index into <code>series1</code> for the first data set
-     * @param testSeries
-     *            the time series containing the second data set
-     * @param index2
-     *            the index into <code>series2</code> for the second data set
-     * @param percentile
-     *            the percentile level to use
-     * @return <code>true</code> if the null hypothesis is rejected on the <code>percentile</code> level, <code>false</code> if it
-     *         cannot be rejected based on the given data
-     */
-    public static double[] statisticsForTimeSeries(TimeSeries refSeries, int index1, TimeSeries testSeries, int index2,
-            Percentile percentile) {
-        // see http://bmj.bmjjournals.com/collections/statsbk/7.shtml
-
-        double[] values = new double[] { refSeries.getValue(index1), testSeries.getValue(index2) };
-        long[] counts = new long[] { refSeries.getCount(index1), testSeries.getCount(index2) };
-        double[] stddevs = new double[] { refSeries.getStddev(index1), testSeries.getStddev(index2) };
-        double ttest = studentTtest(values, stddevs, counts, percentile);
-        return new double[] { getStudentsT((int) (counts[0] + counts[1] - 2), percentile), ttest,
-                standardError(values, stddevs, counts), deviation(values), };
-    }
-
-    public static double studentTtest(double[] values, double[] stddevs, long[] counts, Percentile percentile) {
-
-        double ref = values[0];
-        double val = values[1];
-
-        double delta = ref - val;
-        long df1 = counts[0] - 1;
-        double sd1 = stddevs[0];
-        long df2 = counts[1];
-        double sd2 = stddevs[1];
-        // TODO if the stdev's are not sufficiently similar, we have to take a different approach
-
-        if (!Double.isNaN(sd1) && !Double.isNaN(sd2) && df1 > 0 && df2 > 0) {
-            long df = df1 + df2;
-            double sp_square = (df1 * sd1 * sd1 + df2 * sd2 * sd2) / df;
-
-            double se_diff = Math.sqrt(sp_square * (1.0 / (df1 + 1) + 1.0 / (df2 + 1)));
-            return Math.abs(delta / se_diff);
-        }
-
-        return -1;
-    }
-
-    public static double deviation(double[] values) {
-        return (values[1] - values[0]) / values[0];
-    }
-
-    public static double standardError(double[] values, double[] stddevs, long[] counts) {
-        return Math.sqrt((stddevs[0] * stddevs[0] / counts[0]) + (stddevs[1] * stddevs[1] / counts[1])) / values[0];
-    }
-
-    /**
-     * The (two-tailed) T-table. [degrees_of_freedom][percentile]
-     */
-    private static final double[][] T = { { Double.NaN, Double.NaN, Double.NaN, Double.NaN },
-            { Double.NaN, Double.NaN, Double.NaN, Double.NaN }, { 2.92, 4.3027, 6.2054, 9.925 },
-            { 2.3534, 3.1824, 4.1765, 5.8408 }, { 2.1318, 2.7765, 3.4954, 4.6041 }, { 2.015, 2.5706, 3.1634, 4.0321 },
-            { 1.9432, 2.4469, 2.9687, 3.7074 }, { 1.8946, 2.3646, 2.8412, 3.4995 }, { 1.8595, 2.306, 2.7515, 3.3554 },
-            { 1.8331, 2.2622, 2.685, 3.2498 }, { 1.8125, 2.2281, 2.6338, 3.1693 }, { 1.7959, 2.201, 2.5931, 3.1058 },
-            { 1.7823, 2.1788, 2.56, 3.0545 }, { 1.7709, 2.1604, 2.5326, 3.0123 }, { 1.7613, 2.1448, 2.5096, 2.9768 },
-            { 1.7531, 2.1315, 2.4899, 2.9467 }, { 1.7459, 2.1199, 2.4729, 2.9208 }, { 1.7396, 2.1098, 2.4581, 2.8982 },
-            { 1.7341, 2.1009, 2.445, 2.8784 }, { 1.7291, 2.093, 2.4334, 2.8609 }, { 1.7247, 2.086, 2.4231, 2.8453 },
-            { 1.7207, 2.0796, 2.4138, 2.8314 }, { 1.7171, 2.0739, 2.4055, 2.8188 }, { 1.7139, 2.0687, 2.3979, 2.8073 },
-            { 1.7109, 2.0639, 2.391, 2.797 }, { 1.7081, 2.0595, 2.3846, 2.7874 }, { 1.7056, 2.0555, 2.3788, 2.7787 },
-            { 1.7033, 2.0518, 2.3734, 2.7707 }, { 1.7011, 2.0484, 2.3685, 2.7633 }, { 1.6991, 2.0452, 2.3638, 2.7564 },
-            { 1.6973, 2.0423, 2.3596, 2.75 }, { 1.6955, 2.0395, 2.3556, 2.744 }, { 1.6939, 2.0369, 2.3518, 2.7385 },
-            { 1.6924, 2.0345, 2.3483, 2.7333 }, { 1.6909, 2.0322, 2.3451, 2.7284 }, { 1.6896, 2.0301, 2.342, 2.7238 },
-            { 1.6883, 2.0281, 2.3391, 2.7195 }, { 1.6871, 2.0262, 2.3363, 2.7154 }, { 1.686, 2.0244, 2.3337, 2.7116 },
-            { 1.6849, 2.0227, 2.3313, 2.7079 }, { 1.6839, 2.0211, 2.3289, 2.7045 }, { 1.6829, 2.0195, 2.3267, 2.7012 },
-            { 1.682, 2.0181, 2.3246, 2.6981 }, { 1.6811, 2.0167, 2.3226, 2.6951 }, { 1.6802, 2.0154, 2.3207, 2.6923 },
-            { 1.6794, 2.0141, 2.3189, 2.6896 }, { 1.6787, 2.0129, 2.3172, 2.687 }, { 1.6779, 2.0117, 2.3155, 2.6846 },
-            { 1.6772, 2.0106, 2.3139, 2.6822 }, { 1.6766, 2.0096, 2.3124, 2.68 }, { 1.6759, 2.0086, 2.3109, 2.6778 },
-            { 1.6753, 2.0076, 2.3095, 2.6757 }, { 1.6747, 2.0066, 2.3082, 2.6737 }, { 1.6741, 2.0057, 2.3069, 2.6718 },
-            { 1.6736, 2.0049, 2.3056, 2.67 }, { 1.673, 2.004, 2.3044, 2.6682 }, { 1.6725, 2.0032, 2.3033, 2.6665 },
-            { 1.672, 2.0025, 2.3022, 2.6649 }, { 1.6716, 2.0017, 2.3011, 2.6633 }, { 1.6711, 2.001, 2.3, 2.6618 },
-            { 1.6706, 2.0003, 2.299, 2.6603 }, { 1.6702, 1.9996, 2.2981, 2.6589 }, { 1.6698, 1.999, 2.2971, 2.6575 },
-            { 1.6694, 1.9983, 2.2962, 2.6561 }, { 1.669, 1.9977, 2.2954, 2.6549 }, { 1.6686, 1.9971, 2.2945, 2.6536 },
-            { 1.6683, 1.9966, 2.2937, 2.6524 }, { 1.6679, 1.996, 2.2929, 2.6512 }, { 1.6676, 1.9955, 2.2921, 2.6501 },
-            { 1.6672, 1.9949, 2.2914, 2.649 }, { 1.6669, 1.9944, 2.2906, 2.6479 }, { 1.6666, 1.9939, 2.2899, 2.6469 },
-            { 1.6663, 1.9935, 2.2892, 2.6458 }, { 1.666, 1.993, 2.2886, 2.6449 }, { 1.6657, 1.9925, 2.2879, 2.6439 },
-            { 1.6654, 1.9921, 2.2873, 2.643 }, { 1.6652, 1.9917, 2.2867, 2.6421 }, { 1.6649, 1.9913, 2.2861, 2.6412 },
-            { 1.6646, 1.9908, 2.2855, 2.6403 }, { 1.6644, 1.9905, 2.2849, 2.6395 }, { 1.6641, 1.9901, 2.2844, 2.6387 },
-            { 1.6639, 1.9897, 2.2838, 2.6379 }, { 1.6636, 1.9893, 2.2833, 2.6371 }, { 1.6634, 1.989, 2.2828, 2.6364 },
-            { 1.6632, 1.9886, 2.2823, 2.6356 }, { 1.663, 1.9883, 2.2818, 2.6349 }, { 1.6628, 1.9879, 2.2813, 2.6342 },
-            { 1.6626, 1.9876, 2.2809, 2.6335 }, { 1.6624, 1.9873, 2.2804, 2.6329 }, { 1.6622, 1.987, 2.28, 2.6322 },
-            { 1.662, 1.9867, 2.2795, 2.6316 }, { 1.6618, 1.9864, 2.2791, 2.6309 }, { 1.6616, 1.9861, 2.2787, 2.6303 },
-            { 1.6614, 1.9858, 2.2783, 2.6297 }, { 1.6612, 1.9855, 2.2779, 2.6291 }, { 1.6611, 1.9852, 2.2775, 2.6286 },
-            { 1.6609, 1.985, 2.2771, 2.628 }, { 1.6607, 1.9847, 2.2767, 2.6275 }, { 1.6606, 1.9845, 2.2764, 2.6269 },
-            { 1.6604, 1.9842, 2.276, 2.6264 }, { 1.6602, 1.984, 2.2757, 2.6259 }, };
-
-    private StatisticsUtil() {
-        // don't instantiate
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/AllTests.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/AllTests.java
deleted file mode 100644
index 23654cd..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/AllTests.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.tests;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-public class AllTests {
-
-    public static Test suite() {
-        TestSuite suite = new TestSuite("Performance Test plugin tests"); //$NON-NLS-1$
-
-        // suite.addTestSuite(SimplePerformanceMeterTest.class);
-        suite.addTestSuite(VariationsTests.class);
-        suite.addTestSuite(PerformanceMeterFactoryTest.class);
-
-        return suite;
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/PerformanceMeterFactoryTest.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/PerformanceMeterFactoryTest.java
deleted file mode 100644
index a605169..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/PerformanceMeterFactoryTest.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.tests;
-
-import org.eclipse.test.internal.performance.OSPerformanceMeter;
-import org.eclipse.test.performance.Performance;
-import org.eclipse.test.performance.PerformanceMeter;
-
-import junit.framework.TestCase;
-
-public class PerformanceMeterFactoryTest extends TestCase {
-
-    public void testPerformanceMeterFactory() {
-        System.setProperty(
-                "PerformanceMeterFactory", "org.eclipse.test.performance:org.eclipse.test.internal.performance.OSPerformanceMeterFactory"); //$NON-NLS-1$ //$NON-NLS-2$
-
-        PerformanceMeter pm = Performance.getDefault().createPerformanceMeter("scenarioId"); //$NON-NLS-1$
-
-        assertTrue(pm instanceof OSPerformanceMeter);
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/SimplePerformanceMeterTest.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/SimplePerformanceMeterTest.java
deleted file mode 100644
index d008fbd..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/SimplePerformanceMeterTest.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.tests;
-
-import org.eclipse.test.internal.performance.OSPerformanceMeter;
-import org.eclipse.test.performance.Performance;
-import org.eclipse.test.performance.PerformanceMeter;
-
-import junit.framework.TestCase;
-
-public class SimplePerformanceMeterTest extends TestCase {
-
-    public void testPerformanceMeterFactory() {
-        PerformanceMeter meter = Performance.getDefault().createPerformanceMeter("scenarioId"); //$NON-NLS-1$
-
-        assertTrue(meter instanceof OSPerformanceMeter);
-
-        meter.start();
-        meter.stop();
-
-        meter.commit();
-
-        meter.dispose();
-    }
-
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/TestPerformanceMeter.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/TestPerformanceMeter.java
deleted file mode 100644
index ffa9df4..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/TestPerformanceMeter.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials are made
- * available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.tests;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.test.internal.performance.InternalPerformanceMeter;
-import org.eclipse.test.internal.performance.data.DataPoint;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.data.Sample;
-import org.eclipse.test.internal.performance.data.Scalar;
-
-/**
- * Mock performance meter that generates deterministic values for two dimensions.
- */
-class TestPerformanceMeter extends InternalPerformanceMeter {
-
-    private long fStartTime;
-    private List<DataPoint> fDataPoints = new ArrayList<>();
-    private Map<Dim, Scalar>  fStart      = new HashMap<>();
-    private Map<Dim, Scalar>  fStop       = new HashMap<>();
-
-    /**
-     * @param scenarioId
-     *            the scenario id
-     */
-    TestPerformanceMeter(String scenarioId) {
-        super(scenarioId);
-        fStartTime = System.currentTimeMillis();
-    }
-
-    void addPair(Dim dimension, long start, long end) {
-        fStart.put(dimension, new Scalar(dimension, start));
-        fStop.put(dimension, new Scalar(dimension, end));
-    }
-
-    @Override
-    public void dispose() {
-        fDataPoints = null;
-        super.dispose();
-    }
-
-    @Override
-    public Sample getSample() {
-        if (fDataPoints != null)
-            return new Sample(getScenarioName(), fStartTime, new HashMap<>(),
-                    fDataPoints.toArray(new DataPoint[fDataPoints.size()]));
-        return null;
-    }
-
-    @Override
-    public void start() {
-        fDataPoints.add(new DataPoint(BEFORE, fStart));
-    }
-
-    @Override
-    public void stop() {
-        fDataPoints.add(new DataPoint(AFTER, fStop));
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/VariationsTests.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/VariationsTests.java
deleted file mode 100644
index ac2cc80..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/internal/performance/tests/VariationsTests.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.tests;
-
-import org.eclipse.test.internal.performance.db.Variations;
-
-import junit.framework.TestCase;
-
-public class VariationsTests extends TestCase {
-
-    public void testVariations() {
-        Variations v1 = new Variations();
-        v1.put("k1", "foo"); //$NON-NLS-1$ //$NON-NLS-2$
-        assertEquals("|k1=foo|", v1.toExactMatchString()); //$NON-NLS-1$
-        assertEquals("%|k1=foo|%", v1.toQueryPattern()); //$NON-NLS-1$
-
-        Variations v2 = new Variations();
-        v2.put("k1", "foo"); //$NON-NLS-1$ //$NON-NLS-2$
-        v2.put("k2", "bar"); //$NON-NLS-1$ //$NON-NLS-2$
-        assertEquals("|k1=foo||k2=bar|", v2.toExactMatchString()); //$NON-NLS-1$
-        assertEquals("%|k1=foo|%|k2=bar|%", v2.toQueryPattern()); //$NON-NLS-1$
-
-        Variations v3 = new Variations();
-        v3.put("k1", "foo"); //$NON-NLS-1$ //$NON-NLS-2$
-        v3.put("k2", "bar"); //$NON-NLS-1$ //$NON-NLS-2$
-        v3.put("k3", "xyz"); //$NON-NLS-1$ //$NON-NLS-2$
-        assertEquals("|k1=foo||k2=bar||k3=xyz|", v3.toExactMatchString()); //$NON-NLS-1$
-        assertEquals("%|k1=foo|%|k2=bar|%|k3=xyz|%", v3.toQueryPattern()); //$NON-NLS-1$
-    }
-
-    public void testParseVariations() {
-        Variations v1 = new Variations();
-        v1.put("k1", "foo"); //$NON-NLS-1$ //$NON-NLS-2$
-
-        Variations v = new Variations();
-        v.parseDB(v1.toExactMatchString());
-        assertEquals(v1, v);
-
-        Variations v2 = new Variations();
-        v2.put("k1", "foo"); //$NON-NLS-1$ //$NON-NLS-2$
-        v2.put("k2", "bar"); //$NON-NLS-1$ //$NON-NLS-2$
-        v = new Variations();
-        v.parseDB(v2.toExactMatchString());
-        assertEquals(v2, v);
-
-        Variations v3 = new Variations();
-        v3.put("k1", "foo"); //$NON-NLS-1$ //$NON-NLS-2$
-        v3.put("k2", "bar"); //$NON-NLS-1$ //$NON-NLS-2$
-        v3.put("k3", "xyz"); //$NON-NLS-1$ //$NON-NLS-2$
-        v = new Variations();
-        v.parseDB(v3.toExactMatchString());
-        assertEquals(v3, v);
-    }
-
-    // public void testMaxLength() {
-    // StringBuffer sb= new StringBuffer();
-    // for (int i= 0; i < 1000; i++)
-    //            sb.append("0123456789"); //$NON-NLS-1$
-    // Variations v= new Variations(sb.toString(), null);
-    //
-    // String s1= v.toExactMatchString();
-    // assertTrue(s1.length() == 10000);
-    //
-    // String s2= v.toQueryPattern();
-    // assertTrue(s2.length() == 10000);
-    // }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/AbstractPerformanceTestCase.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/AbstractPerformanceTestCase.java
deleted file mode 100644
index 8ed034f..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/AbstractPerformanceTestCase.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2020 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     Copied and modified from PerformanceTestCase.java
- *******************************************************************************/
-
-package org.eclipse.test.performance;
-
-/**
- * Common parts of Junit4 and Junit5
- *
- * @since 3.16
- */
-public class AbstractPerformanceTestCase {
-
-    protected PerformanceMeter fPerformanceMeter;
-
-    /**
-     * Mark the scenario of this test case to be included into the global and the component performance summary. The summary shows
-     * the given dimension of the scenario and labels the scenario with the short name.
-     *
-     * @param shortName
-     *            a short (shorter than 40 characters) descritive name of the scenario
-     * @param dimension
-     *            the dimension to show in the summary
-     */
-    public void tagAsGlobalSummary(String shortName, Dimension dimension) {
-        Performance performance = Performance.getDefault();
-        performance.tagAsGlobalSummary(fPerformanceMeter, shortName, new Dimension[] { dimension });
-    }
-
-    /**
-     * Mark the scenario represented by the given PerformanceMeter to be included into the global and the component performance
-     * summary. The summary shows the given dimensions of the scenario and labels the scenario with the short name.
-     *
-     * @param shortName
-     *            a short (shorter than 40 characters) descritive name of the scenario
-     * @param dimensions
-     *            an array of dimensions to show in the summary
-     */
-    public void tagAsGlobalSummary(String shortName, Dimension[] dimensions) {
-        Performance performance = Performance.getDefault();
-        performance.tagAsGlobalSummary(fPerformanceMeter, shortName, dimensions);
-    }
-
-    /**
-     * Mark the scenario of this test case to be included into the component performance summary. The summary shows the given
-     * dimension of the scenario and labels the scenario with the short name.
-     *
-     * @param shortName
-     *            a short (shorter than 40 characters) descritive name of the scenario
-     * @param dimension
-     *            the dimension to show in the summary
-     */
-    public void tagAsSummary(String shortName, Dimension dimension) {
-        Performance performance = Performance.getDefault();
-        performance.tagAsSummary(fPerformanceMeter, shortName, new Dimension[] { dimension });
-    }
-
-    /**
-     * Mark the scenario represented by the given PerformanceMeter to be included into the component performance summary. The
-     * summary shows the given dimensions of the scenario and labels the scenario with the short name.
-     *
-     * @param shortName
-     *            a short (shorter than 40 characters) descritive name of the scenario
-     * @param dimensions
-     *            an array of dimensions to show in the summary
-     */
-    public void tagAsSummary(String shortName, Dimension[] dimensions) {
-        Performance performance = Performance.getDefault();
-        performance.tagAsSummary(fPerformanceMeter, shortName, dimensions);
-    }
-
-    /**
-     * Set a comment for the scenario represented by this TestCase. Currently only comments with a commentKind of
-     * EXPLAINS_DEGRADATION_COMMENT are used. Their commentText is shown in a hover of the performance summaries graph if a
-     * performance degradation exists.
-     *
-     * @param commentKind
-     *            kind of comment. Must be EXPLAINS_DEGRADATION_COMMENT to have an effect.
-     * @param commentText
-     *            the comment (shorter than 400 characters)
-     */
-    public void setComment(int commentKind, String commentText) {
-        Performance performance = Performance.getDefault();
-        performance.setComment(fPerformanceMeter, commentKind, commentText);
-    }
-
-    /**
-     * Called from within a test case immediately before the code to measure is run. It starts capturing of performance data. Must
-     * be followed by a call to {@link AbstractPerformanceTestCase#stopMeasuring()} before subsequent calls to this method or
-     * {@link AbstractPerformanceTestCase#commitMeasurements()}.
-     *
-     * @see PerformanceMeter#start()
-     */
-    protected void startMeasuring() {
-        fPerformanceMeter.start();
-    }
-
-    /**
-     * Called from within a test case immediately after the operation to measure. Must be preceded by a call to
-     * {@link AbstractPerformanceTestCase#startMeasuring()}, that follows any previous call to this method.
-     *
-     * @see PerformanceMeter#stop()
-     */
-    protected void stopMeasuring() {
-        fPerformanceMeter.stop();
-    }
-
-    /**
-     * Called exactly once after repeated measurements are done and before their analysis. Afterwards
-     * {@link AbstractPerformanceTestCase#startMeasuring()} and {@link AbstractPerformanceTestCase#stopMeasuring()} must not be called.
-     *
-     * @see PerformanceMeter#commit()
-     */
-    protected void commitMeasurements() {
-        fPerformanceMeter.commit();
-    }
-
-    /**
-     * Asserts default properties of the measurements captured for this test case.
-     *
-     * @throws RuntimeException
-     *             if the properties do not hold
-     */
-    protected void assertPerformance() {
-        Performance.getDefault().assertPerformance(fPerformanceMeter);
-    }
-
-    /**
-     * Asserts that the measurement specified by the given dimension is within a certain range with respect to some reference value.
-     * If the specified dimension isn't available, the call has no effect.
-     *
-     * @param dim
-     *            the Dimension to check
-     * @param lowerPercentage
-     *            a negative number indicating the percentage the measured value is allowed to be smaller than some reference value
-     * @param upperPercentage
-     *            a positive number indicating the percentage the measured value is allowed to be greater than some reference value
-     * @throws RuntimeException
-     *             if the properties do not hold
-     */
-    protected void assertPerformanceInRelativeBand(Dimension dim, int lowerPercentage, int upperPercentage) {
-        Performance.getDefault().assertPerformanceInRelativeBand(fPerformanceMeter, dim, lowerPercentage, upperPercentage);
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/Dimension.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/Dimension.java
deleted file mode 100644
index eca8db9..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/Dimension.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.performance;
-
-import java.io.Serializable;
-
-import org.eclipse.test.internal.performance.InternalDimensions;
-
-/**
- * Some predefined dimensions most likely supported on all platforms.
- *
- * This interface is not intended to be implemented by clients.
- *
- * @since 3.1
- */
-public interface Dimension extends Serializable {
-
-    // Dimensions available on all platforms:
-
-    /**
-     * The amount of time that the process has executed in kernel mode. It is calculated by taking the sum of the time that each of
-     * the threads of the process has executed in kernel mode.
-     */
-    public Dimension KERNEL_TIME      = InternalDimensions.KERNEL_TIME;
-
-    /**
-     * The amount of CPU time used so far by this process. It is calculated by adding the KERNEL_TIME and the amount of time that
-     * the process has executed in user mode. The user time is calculated by taking the sum of the time that each of the threads of
-     * the process has executed in user mode. It does not include any time where the process is waiting for OS resources. It is the
-     * best approximation for ELAPSED_PROCESS (which is not available on all platforms).
-     */
-    public Dimension CPU_TIME         = InternalDimensions.CPU_TIME;
-
-    /**
-     * WORKING_SET is the amount of memory in the working set of this process. The working set is the set of memory pages touched
-     * recently by the threads in the process. If free memory in the computer is above a threshold, pages are left in the working
-     * set of a process even if they are not in use. When free memory falls below a threshold, pages are removed from working sets.
-     */
-    public Dimension WORKING_SET      = InternalDimensions.WORKING_SET;
-
-    /**
-     * The total elapsed time this process has been running. Since it starts at 0 on process start it can be used to measure startup
-     * time. On Windows it is calculated by subtracting the creation time of the process from the current system time. On Linux it
-     * is calculated by subtracting the value of the system property "eclipse.startTime" from System.currentTimeMillis() Please note
-     * that in contrast to the CPU_TIME the elapsed time of a process is influenced by other processes running in parallel.
-     */
-    public Dimension ELAPSED_PROCESS  = InternalDimensions.ELAPSED_PROCESS;
-
-    /**
-     * The amount of memory used in the JVM. It is calculated by subtracting <code>Runtime.freeMemory()</code> from
-     * <code>Runtime.totalMemory()</code>.
-     */
-    public Dimension USED_JAVA_HEAP   = InternalDimensions.USED_JAVA_HEAP;
-
-    // the following Dimensions not available on all platforms!
-
-    /**
-     * WORKING_SET_PEAK is the maximum amount of memory in the working set of this process at any point in time. The working set is
-     * the set of memory pages touched recently by the threads in the process. If free memory in the computer is above a threshold,
-     * pages are left in the working set of a process even if they are not in use. When free memory falls below a threshold, pages
-     * are removed from working sets. Currently this dimension is only available on Windows.
-     */
-    public Dimension WORKING_SET_PEAK = InternalDimensions.WORKING_SET_PEAK;
-
-    /**
-     * The total amount of committed memory (for the entire machine). Committed memory is the size of virtual memory that has been
-     * committed (as opposed to simply reserved). Committed memory must have backing (i.e., disk) storage available, or must be
-     * assured never to need disk storage (because main memory is large enough to hold it.) Notice that this is an instantaneous
-     * count, not an average over the time interval. Currently this dimension is only available on Windows.
-     */
-    public Dimension COMITTED         = InternalDimensions.COMITTED;
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/Performance.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/Performance.java
deleted file mode 100644
index 2a964c9..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/Performance.java
+++ /dev/null
@@ -1,370 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2018 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.performance;
-
-import java.lang.reflect.InvocationTargetException;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.test.internal.performance.InternalDimensions;
-import org.eclipse.test.internal.performance.InternalPerformanceMeter;
-import org.eclipse.test.internal.performance.NullPerformanceMeter;
-import org.eclipse.test.internal.performance.OSPerformanceMeterFactory;
-import org.eclipse.test.internal.performance.PerformanceMeterFactory;
-import org.eclipse.test.internal.performance.PerformanceTestPlugin;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.eval.AbsoluteBandChecker;
-import org.eclipse.test.internal.performance.eval.AssertChecker;
-import org.eclipse.test.internal.performance.eval.Evaluator;
-import org.eclipse.test.internal.performance.eval.IEvaluator;
-import org.eclipse.test.internal.performance.eval.RelativeBandChecker;
-import org.osgi.framework.Bundle;
-
-import junit.framework.TestCase;
-
-/**
- * Helper for performance measurements. Currently provides performance meter creation and checking of measurements.
- *
- * This class is not intended to be subclassed by clients.
- *
- * @since 3.1
- */
-public class Performance {
-
-    /**
-     * A comment kind of a comment that explains a performance degradation.
-     */
-    public static final int         EXPLAINS_DEGRADATION_COMMENT       = 1;
-
-    private static final String     PERFORMANCE_METER_FACTORY          = "/option/performanceMeterFactory"; //$NON-NLS-1$
-    private static final String     PERFORMANCE_METER_FACTORY_PROPERTY = "PerformanceMeterFactory";        //$NON-NLS-1$
-
-    private static Performance      fgDefault;
-
-    private PerformanceMeterFactory fPerformanceMeterFactory;
-    private IEvaluator              fDefaultEvaluator;
-
-    /** Null performance meter singleton */
-    private NullPerformanceMeter    fNullPeformanceMeter;
-
-    /**
-     * Private constructor to block instance creation.
-     */
-    private Performance() {
-        // empty
-    }
-
-    /**
-     * Returns the singleton of <code>Performance</code>
-     *
-     * @return the singleton of <code>Performance</code>
-     */
-    public static Performance getDefault() {
-        if (fgDefault == null)
-            fgDefault = new Performance();
-        return fgDefault;
-    }
-
-    /**
-     * Asserts default properties of the measurements captured by the given performance meter.
-     *
-     * @param performanceMeter
-     *            the performance meter
-     * @throws RuntimeException
-     *             if the properties do not hold
-     */
-    public void assertPerformance(PerformanceMeter performanceMeter) {
-        if (fDefaultEvaluator == null) {
-            fDefaultEvaluator = new Evaluator();
-            fDefaultEvaluator.setAssertCheckers(new AssertChecker[] { new RelativeBandChecker(InternalDimensions.ELAPSED_PROCESS,
-                    0.0f, 1.10f),
-            // new RelativeBandChecker(InternalDimensions.CPU_TIME, 0.0f, 1.10f),
-            // new RelativeBandChecker(InternalDimensions.WORKING_SET, 0.0f, 3.00f),
-            // new RelativeBandChecker(InternalDimensions.USED_JAVA_HEAP, 0.0f, 2.00f),
-            // new RelativeBandChecker(InternalDimensions.SYSTEM_TIME, 0.0f, 1.10f)
-                    });
-        }
-        fDefaultEvaluator.evaluate(performanceMeter);
-    }
-
-    /**
-     * Asserts that the measurement specified by the dimension captured in the given performance meter is within a certain range
-     * with respect to some reference value. If the performance meter doesn't provide the specified dimension, the call has no
-     * effect.
-     *
-     * @param performanceMeter
-     *            the performance meter
-     * @param dim
-     *            the Dimension to check
-     * @param lowerPercentage
-     *            a negative number indicating the percentage the measured value is allowed to be smaller than some reference value
-     * @param upperPercentage
-     *            a positive number indicating the percentage the measured value is allowed to be greater than some reference value
-     * @throws RuntimeException
-     *             if the properties do not hold
-     */
-    public void assertPerformanceInRelativeBand(PerformanceMeter performanceMeter, Dimension dim, int lowerPercentage,
-            int upperPercentage) {
-        Evaluator e = new Evaluator();
-        e.setAssertCheckers(new AssertChecker[] { new RelativeBandChecker((Dim) dim, 1.0 + (lowerPercentage / 100.0),
-                1.0 + (upperPercentage / 100.0)), });
-        e.evaluate(performanceMeter);
-    }
-
-    /**
-     * Asserts that the measurement specified by the dimension captured in the given performance meter is within a certain range
-     * with respect to some reference value. If the performance meter doesn't provide the specified dimension, the call has no
-     * effect.
-     *
-     * @param performanceMeter
-     *            the performance meter
-     * @param dim
-     *            the Dimension to check
-     * @param lowerBand
-     *            a negative number indicating the absolute amount the measured value is allowed to be smaller than some reference
-     *            value
-     * @param upperBand
-     *            a positive number indicating the absolute amount the measured value is allowed to be greater than some reference
-     *            value
-     * @throws RuntimeException
-     *             if the properties do not hold
-     */
-    public void assertPerformanceInAbsoluteBand(PerformanceMeter performanceMeter, Dimension dim, int lowerBand, int upperBand) {
-        Evaluator e = new Evaluator();
-        e.setAssertCheckers(new AssertChecker[] { new AbsoluteBandChecker((Dim) dim, lowerBand, upperBand), });
-        e.evaluate(performanceMeter);
-    }
-
-    /**
-     * Creates a performance meter for the given scenario id.
-     *
-     * @param scenarioId
-     *            the scenario id
-     * @return a performance meter for the given scenario id
-     * @throws IllegalArgumentException
-     *             if a performance meter for the given scenario id has already been created
-     */
-    public PerformanceMeter createPerformanceMeter(String scenarioId) {
-        return getPeformanceMeterFactory().createPerformanceMeter(scenarioId);
-    }
-
-    /**
-     * Returns the null performance meter singleton.
-     *
-     * @return the null performance meter singleton
-     */
-    public PerformanceMeter getNullPerformanceMeter() {
-        if (fNullPeformanceMeter == null)
-            fNullPeformanceMeter = new NullPerformanceMeter();
-        return fNullPeformanceMeter;
-    }
-
-    /**
-     * Returns a default scenario id for the given test. The test's name must have been set, such that <code>test.getName()</code>
-     * is not <code>null</code>.
-     *
-     * @param test
-     *            the test
-     * @return the default scenario id for the test
-     */
-    public String getDefaultScenarioId(TestCase test) {
-        return test.getClass().getName() + '#' + test.getName() + "()"; //$NON-NLS-1$
-    }
-
-    /**
-     * Returns a default scenario id for the given test class.
-     *
-     * @param test
-     *            the test class
-     * @return the default scenario id for the test
-     * @since 3.15
-     */
-    public String getDefaultScenarioId(Class<?> test) {
-        return test.getName() + '#' + test.getName() + "()"; //$NON-NLS-1$
-    }
-
-    /**
-     * Returns a default scenario id for the given test class.
-     *
-     * @param test
-     *            the test class
-     * @param methodName
-     *            the methodname of the test method
-     * @return the default scenario id for the test
-     * @since 3.16
-     */
-    public String getDefaultScenarioId(Class<?> test, String methodName) {
-        return test.getName() + '#' + methodName + "()"; //$NON-NLS-1$
-    }
-
-    /**
-     * Returns a default scenario id for the given test and id. The test's name must have been set, such that
-     * <code>test.getName()</code> is not <code>null</code>. The id distinguishes multiple scenarios in the same test.
-     *
-     * @param test
-     *            the test
-     * @param id
-     *            the id
-     * @return the default scenario id for the test and the id
-     */
-    public String getDefaultScenarioId(TestCase test, String id) {
-        return getDefaultScenarioId(test) + '-' + id;
-    }
-
-    private PerformanceMeterFactory getPeformanceMeterFactory() {
-        if (fPerformanceMeterFactory == null)
-            fPerformanceMeterFactory = createPerformanceMeterFactory();
-        return fPerformanceMeterFactory;
-    }
-
-    private PerformanceMeterFactory createPerformanceMeterFactory() {
-        PerformanceMeterFactory factory;
-        factory = tryInstantiate(System.getProperty(PERFORMANCE_METER_FACTORY_PROPERTY));
-        if (factory != null)
-            return factory;
-
-        factory = tryInstantiate(Platform.getDebugOption(PerformanceTestPlugin.PLUGIN_ID + PERFORMANCE_METER_FACTORY));
-        if (factory != null)
-            return factory;
-
-        return createDefaultPerformanceMeterFactory();
-    }
-
-    private PerformanceMeterFactory tryInstantiate(String className) {
-        PerformanceMeterFactory instance = null;
-        if (className != null && className.length() > 0) {
-            try {
-                Class<?> c = null;
-                if (Platform.isRunning()) {
-                    int separator = className.indexOf(':');
-                    Bundle bundle = null;
-                    if (separator == -1) {
-                        bundle = PerformanceTestPlugin.getDefault().getBundle();
-                    } else {
-                        String bundleName = className.substring(0, separator);
-                        className = className.substring(separator + 1);
-                        bundle = Platform.getBundle(bundleName);
-                    }
-                    c = bundle.loadClass(className);
-                } else {
-                    c = Class.forName(className);
-                }
-                instance = (PerformanceMeterFactory) c.getDeclaredConstructor().newInstance();
-            } catch (
-                    ClassNotFoundException |
-                    InstantiationException |
-                    IllegalAccessException |
-                    ClassCastException |
-                    IllegalArgumentException |
-                    InvocationTargetException |
-                    NoSuchMethodException |
-                    SecurityException e) {
-                PerformanceTestPlugin.log(e);
-            }
-        }
-        return instance;
-    }
-
-    private PerformanceMeterFactory createDefaultPerformanceMeterFactory() {
-        return new OSPerformanceMeterFactory();
-    }
-
-    /**
-     * Mark the scenario represented by the given PerformanceMeter to be included into the global and the component performance
-     * summary. The summary shows the given dimension of the scenario and labels the scenario with the short name.
-     *
-     * @param pm
-     *            the PerformanceMeter
-     * @param shortName
-     *            a short (shorter than 40 characters) descriptive name of the scenario
-     * @param dimension
-     *            the dimension to show in the summary
-     */
-    public void tagAsGlobalSummary(PerformanceMeter pm, String shortName, Dimension dimension) {
-        tagAsGlobalSummary(pm, shortName, new Dimension[] { dimension });
-    }
-
-    /**
-     * Mark the scenario represented by the given PerformanceMeter to be included into the global and the component performance
-     * summary. The summary shows the given dimensions of the scenario and labels the scenario with the short name.
-     *
-     * @param pm
-     *            the PerformanceMeter
-     * @param shortName
-     *            a short (shorter than 40 characters) descriptive name of the scenario
-     * @param dimensions
-     *            an array of dimensions to show in the summary
-     */
-    public void tagAsGlobalSummary(PerformanceMeter pm, String shortName, Dimension[] dimensions) {
-        if (pm instanceof InternalPerformanceMeter) {
-            InternalPerformanceMeter ipm = (InternalPerformanceMeter) pm;
-            ipm.tagAsSummary(true, shortName, dimensions);
-        }
-    }
-
-    /**
-     * Mark the scenario represented by the given PerformanceMeter to be included into the component performance summary. The
-     * summary shows the given dimension of the scenario and labels the scenario with the short name.
-     *
-     * @param pm
-     *            the PerformanceMeter
-     * @param shortName
-     *            a short (shorter than 40 characters) descriptive name of the scenario
-     * @param dimension
-     *            the dimension to show in the summary
-     */
-    public void tagAsSummary(PerformanceMeter pm, String shortName, Dimension dimension) {
-        tagAsSummary(pm, shortName, new Dimension[] { dimension });
-    }
-
-    /**
-     * Mark the scenario represented by the given PerformanceMeter to be included into the component performance summary. The
-     * summary shows the given dimensions of the scenario and labels the scenario with the short name.
-     *
-     * @param pm
-     *            the PerformanceMeter
-     * @param shortName
-     *            a short (shorter than 40 characters) descriptive name of the scenario
-     * @param dimensions
-     *            an array of dimensions to show in the summary
-     */
-    public void tagAsSummary(PerformanceMeter pm, String shortName, Dimension[] dimensions) {
-        if (pm instanceof InternalPerformanceMeter) {
-            InternalPerformanceMeter ipm = (InternalPerformanceMeter) pm;
-            ipm.tagAsSummary(false, shortName, dimensions);
-        }
-    }
-
-    /**
-     * Set a comment for the scenario represented by the given PerformanceMeter. Currently only comments with a commentKind of
-     * EXPLAINS_DEGRADATION_COMMENT are used. Their commentText is shown in a hover of the performance summaries graph if a
-     * performance degradation exists.
-     *
-     * @param pm
-     *            the PerformanceMeter
-     * @param commentKind
-     *            kind of comment. Must be EXPLAINS_DEGRADATION_COMMENT to have an effect.
-     * @param commentText
-     *            the comment (shorter than 400 characters)
-     */
-    public void setComment(PerformanceMeter pm, int commentKind, String commentText) {
-        if (commentKind == EXPLAINS_DEGRADATION_COMMENT) {
-            if (pm instanceof InternalPerformanceMeter) {
-                InternalPerformanceMeter ipm = (InternalPerformanceMeter) pm;
-                ipm.setComment(commentKind, commentText);
-            }
-        }
-    }
-
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/PerformanceMeter.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/PerformanceMeter.java
deleted file mode 100644
index ac6e49a..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/PerformanceMeter.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.performance;
-
-/**
- * A <code>PerformanceMeter</code> is used for doing repeated measurements of an arbitrary operation.
- *
- * The kind of measurement and the retrieval of the results remain internal to the implementation. Measurements can include time,
- * CPU cycle and memory consumption.
- *
- * A <code>PerformanceMeter</code> is created using the method {@link Performance#createPerformanceMeter(String)}. An operation is
- * measured by calling {@link PerformanceMeter#start()} before and {@link PerformanceMeter#stop()} after that operation. The
- * measurement can be repeated, for example, to let the VM warm up and to allow for statistical analysis afterwards.
- *
- * After measurements are done and before an analysis of the results can be made {@link PerformanceMeter#commit()} has to be called.
- * This allows for example to prepare the measurements for analysis or persist them.
- * {@link Performance#assertPerformance(PerformanceMeter)} provides a default analysis of the measurements. After the
- * <code>PerformanceMeter</code> is no longer used {@link PerformanceMeter#dispose()} must be called.
- *
- * Example usage in a test case:
- *
- * <pre>
- *
- * public void testOpenEditor() {
- *     Performance perf = Performance.getDefault();
- *     PerformanceMeter performanceMeter = perf.createPerformanceMeter(perf.getDefaultScenarioId(this));
- *     try {
- *         for (int i = 0; i &lt; 10; i++) {
- *             performanceMeter.start();
- *             openEditor();
- *             performanceMeter.stop();
- *             closeEditor();
- *         }
- *         performanceMeter.commit();
- *         perf.assertPerformance(performanceMeter);
- *     }
- *     finally {
- *         performanceMeter.dispose();
- *     }
- * }
- * </pre>
- *
- * This class is not intended to be subclassed by clients.
- */
-public abstract class PerformanceMeter {
-
-    /**
-     * Called immediately before the operation to measure. Must be followed by a call to {@link PerformanceMeter#stop()} before
-     * subsequent calls to this method or {@link PerformanceMeter#commit()}.
-     */
-    public abstract void start();
-
-    /**
-     * Called immediately after the operation to measure. Must be preceded by a call to {@link PerformanceMeter#start()}, that
-     * follows any previous call to this method.
-     */
-    public abstract void stop();
-
-    /**
-     * Called exactly once after repeated measurements are done and before their analysis. Afterwards
-     * {@link PerformanceMeter#start()} and {@link PerformanceMeter#stop()} must not be called.
-     */
-    public abstract void commit();
-
-    /**
-     * Dispose associated resources. Clients must call this method exactly once. Afterwards no methods must be called on the
-     * performance meter.
-     */
-    public abstract void dispose();
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/PerformanceTestCase.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/PerformanceTestCase.java
deleted file mode 100644
index 84afb26..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/PerformanceTestCase.java
+++ /dev/null
@@ -1,210 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2009 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.performance;
-
-import junit.framework.TestCase;
-
-/**
- * A PerformanceTestCase is a convenience class that takes care of managing a <code>PerformanceMeter</code>.
- * <p>
- * Here is an example:
- *
- * <pre>
- * public class MyPerformanceTestCase extends PeformanceTestCase {
- *
- *   public void testMyOperation() {
- *     for (int i= 0; i < 10; i++) {
- *       // preparation
- *       startMeasuring();
- *       // my operation
- *       stopMeasuring();
- *       // clean up
- *     }
- *     commitMeasurements();
- *     assertPerformance();
- *   }
- * }
- */
-public class PerformanceTestCase extends TestCase {
-
-    protected PerformanceMeter fPerformanceMeter;
-
-    /**
-     * Constructs a performance test case.
-     */
-    public PerformanceTestCase() {
-        super();
-    }
-
-    /**
-     * Constructs a performance test case with the given name.
-     *
-     * @param name
-     *            the name of the performance test case
-     */
-    public PerformanceTestCase(String name) {
-        super(name);
-    }
-
-    /**
-     * Overridden to create a default performance meter for this test case.
-     *
-     * @throws Exception
-     */
-    @Override
-    protected void setUp() throws Exception {
-        Performance performance = Performance.getDefault();
-        fPerformanceMeter = performance.createPerformanceMeter(performance.getDefaultScenarioId(this));
-    }
-
-    /**
-     * Overridden to dispose of the performance meter.
-     *
-     * @throws Exception
-     */
-    @Override
-    protected void tearDown() throws Exception {
-        fPerformanceMeter.dispose();
-    }
-
-    /**
-     * Mark the scenario of this test case to be included into the global and the component performance summary. The summary shows
-     * the given dimension of the scenario and labels the scenario with the short name.
-     *
-     * @param shortName
-     *            a short (shorter than 40 characters) descritive name of the scenario
-     * @param dimension
-     *            the dimension to show in the summary
-     */
-    public void tagAsGlobalSummary(String shortName, Dimension dimension) {
-        Performance performance = Performance.getDefault();
-        performance.tagAsGlobalSummary(fPerformanceMeter, shortName, new Dimension[] { dimension });
-    }
-
-    /**
-     * Mark the scenario represented by the given PerformanceMeter to be included into the global and the component performance
-     * summary. The summary shows the given dimensions of the scenario and labels the scenario with the short name.
-     *
-     * @param shortName
-     *            a short (shorter than 40 characters) descritive name of the scenario
-     * @param dimensions
-     *            an array of dimensions to show in the summary
-     */
-    public void tagAsGlobalSummary(String shortName, Dimension[] dimensions) {
-        Performance performance = Performance.getDefault();
-        performance.tagAsGlobalSummary(fPerformanceMeter, shortName, dimensions);
-    }
-
-    /**
-     * Mark the scenario of this test case to be included into the component performance summary. The summary shows the given
-     * dimension of the scenario and labels the scenario with the short name.
-     *
-     * @param shortName
-     *            a short (shorter than 40 characters) descritive name of the scenario
-     * @param dimension
-     *            the dimension to show in the summary
-     */
-    public void tagAsSummary(String shortName, Dimension dimension) {
-        Performance performance = Performance.getDefault();
-        performance.tagAsSummary(fPerformanceMeter, shortName, new Dimension[] { dimension });
-    }
-
-    /**
-     * Mark the scenario represented by the given PerformanceMeter to be included into the component performance summary. The
-     * summary shows the given dimensions of the scenario and labels the scenario with the short name.
-     *
-     * @param shortName
-     *            a short (shorter than 40 characters) descritive name of the scenario
-     * @param dimensions
-     *            an array of dimensions to show in the summary
-     */
-    public void tagAsSummary(String shortName, Dimension[] dimensions) {
-        Performance performance = Performance.getDefault();
-        performance.tagAsSummary(fPerformanceMeter, shortName, dimensions);
-    }
-
-    /**
-     * Set a comment for the scenario represented by this TestCase. Currently only comments with a commentKind of
-     * EXPLAINS_DEGRADATION_COMMENT are used. Their commentText is shown in a hover of the performance summaries graph if a
-     * performance degradation exists.
-     *
-     * @param commentKind
-     *            kind of comment. Must be EXPLAINS_DEGRADATION_COMMENT to have an effect.
-     * @param commentText
-     *            the comment (shorter than 400 characters)
-     */
-    public void setComment(int commentKind, String commentText) {
-        Performance performance = Performance.getDefault();
-        performance.setComment(fPerformanceMeter, commentKind, commentText);
-    }
-
-    /**
-     * Called from within a test case immediately before the code to measure is run. It starts capturing of performance data. Must
-     * be followed by a call to {@link PerformanceTestCase#stopMeasuring()} before subsequent calls to this method or
-     * {@link PerformanceTestCase#commitMeasurements()}.
-     *
-     * @see PerformanceMeter#start()
-     */
-    protected void startMeasuring() {
-        fPerformanceMeter.start();
-    }
-
-    /**
-     * Called from within a test case immediately after the operation to measure. Must be preceded by a call to
-     * {@link PerformanceTestCase#startMeasuring()}, that follows any previous call to this method.
-     *
-     * @see PerformanceMeter#stop()
-     */
-    protected void stopMeasuring() {
-        fPerformanceMeter.stop();
-    }
-
-    /**
-     * Called exactly once after repeated measurements are done and before their analysis. Afterwards
-     * {@link PerformanceTestCase#startMeasuring()} and {@link PerformanceTestCase#stopMeasuring()} must not be called.
-     *
-     * @see PerformanceMeter#commit()
-     */
-    protected void commitMeasurements() {
-        fPerformanceMeter.commit();
-    }
-
-    /**
-     * Asserts default properties of the measurements captured for this test case.
-     *
-     * @throws RuntimeException
-     *             if the properties do not hold
-     */
-    protected void assertPerformance() {
-        Performance.getDefault().assertPerformance(fPerformanceMeter);
-    }
-
-    /**
-     * Asserts that the measurement specified by the given dimension is within a certain range with respect to some reference value.
-     * If the specified dimension isn't available, the call has no effect.
-     *
-     * @param dim
-     *            the Dimension to check
-     * @param lowerPercentage
-     *            a negative number indicating the percentage the measured value is allowed to be smaller than some reference value
-     * @param upperPercentage
-     *            a positive number indicating the percentage the measured value is allowed to be greater than some reference value
-     * @throws RuntimeException
-     *             if the properties do not hold
-     */
-    protected void assertPerformanceInRelativeBand(Dimension dim, int lowerPercentage, int upperPercentage) {
-        Performance.getDefault().assertPerformanceInRelativeBand(fPerformanceMeter, dim, lowerPercentage, upperPercentage);
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/PerformanceTestCaseJunit4.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/PerformanceTestCaseJunit4.java
deleted file mode 100644
index 6605ce1..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/PerformanceTestCaseJunit4.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2020 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     Copied and modified for Junit4 from PerformanceTestCase.java
- *******************************************************************************/
-
-package org.eclipse.test.performance;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.rules.TestName;
-
-/**
- * A PerformanceTestCaseJunit4 is a convenience class that takes care of managing a <code>PerformanceMeter</code>.
- * <p>
- * Here is an example:
- *
- * <blockquote>
- *
- * <pre>
- * public class MyPerformanceTestCase extends PerformanceTestCaseJunit4 {
- *
- *     &#64;Test
- *     public void testMyOperation() {
- *         for (int i = 0; i < 10; i++) {
- *             // preparation
- *             startMeasuring();
- *             // my operation
- *             stopMeasuring();
- *             // clean up
- *         }
- *         commitMeasurements();
- *         assertPerformance();
- *     }
- * }
- * </pre>
- *
- * </blockquote>
- *
- * @since 3.16
- */
-public class PerformanceTestCaseJunit4 extends AbstractPerformanceTestCase {
-
-    @Rule
-    public TestName tn = new TestName();
-
-    /**
-     * Create a default performance meter for this test case.
-     *
-     * @throws Exception
-     */
-    @Before
-    public void setUp() throws Exception {
-        Performance performance = Performance.getDefault();
-        fPerformanceMeter = performance.createPerformanceMeter(performance.getDefaultScenarioId(this.getClass(), tn.getMethodName()));
-    }
-
-    /**
-     * Dispose of the performance meter.
-     *
-     * @throws Exception
-     */
-    @After
-    public void tearDown() throws Exception {
-        fPerformanceMeter.dispose();
-    }
-}
diff --git a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/PerformanceTestCaseJunit5.java b/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/PerformanceTestCaseJunit5.java
deleted file mode 100644
index 9d39cfa..0000000
--- a/bundles/org.eclipse.test.performance/src/org/eclipse/test/performance/PerformanceTestCaseJunit5.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2020 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     Copied and modified for Junit4 from PerformanceTestCase.java
- *******************************************************************************/
-
-package org.eclipse.test.performance;
-
-import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.TestInfo;
-
-/**
- * A PerformanceTestCaseJunit5 is a convenience class that takes care of managing a <code>PerformanceMeter</code>.
- * <p>
- * Here is an example:
- *
- * <blockquote>
- *
- * <pre>
- * public class MyPerformanceTestCase extends PerformanceTestCaseJunit% {
- *
- *     &#64;Test
- *     public void testMyOperation() {
- *         for (int i = 0; i < 10; i++) {
- *             // preparation
- *             startMeasuring();
- *             // my operation
- *             stopMeasuring();
- *             // clean up
- *         }
- *         commitMeasurements();
- *         assertPerformance();
- *     }
- * }
- * </pre>
- *
- * </blockquote>
- *
- * @since 3.16
- */
-public class PerformanceTestCaseJunit5 extends AbstractPerformanceTestCase {
-
-    /**
-     * Create a default performance meter for this test case.
-     *
-     * @param testInfo
-     *
-     * @throws Exception
-     */
-    @BeforeEach
-    public void setUp(TestInfo testInfo) throws Exception {
-        Performance performance = Performance.getDefault();
-        fPerformanceMeter = performance.createPerformanceMeter(performance.getDefaultScenarioId(this.getClass(), testInfo.getDisplayName()));
-    }
-
-    /**
-     * Dispose of the performance meter.
-     *
-     * @throws Exception
-     */
-    @AfterEach
-    public void tearDown() throws Exception {
-        fPerformanceMeter.dispose();
-    }
-}
diff --git a/bundles/org.eclipse.test/.classpath b/bundles/org.eclipse.test/.classpath
deleted file mode 100644
index a42a828..0000000
--- a/bundles/org.eclipse.test/.classpath
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src">
-		<attributes>
-			<attribute name="test" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.test/.gitignore b/bundles/org.eclipse.test/.gitignore
deleted file mode 100644
index f1855e6..0000000
--- a/bundles/org.eclipse.test/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/bin/
-*.jpage
\ No newline at end of file
diff --git a/bundles/org.eclipse.test/.project b/bundles/org.eclipse.test/.project
deleted file mode 100644
index 4bc9739..0000000
--- a/bundles/org.eclipse.test/.project
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.test</name>
-	<comment></comment>
-	<projects>
-		<project>org.apache.ant</project>
-		<project>org.eclipse.ant.core</project>
-		<project>org.eclipse.core.resources</project>
-		<project>org.eclipse.core.runtime</project>
-		<project>org.eclipse.help</project>
-		<project>org.eclipse.jface</project>
-		<project>org.eclipse.jface.text</project>
-		<project>org.eclipse.swt</project>
-		<project>org.eclipse.ui.workbench</project>
-		<project>org.junit</project>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/bundles/org.eclipse.test/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.test/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.test/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.test/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.test/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.test/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.test/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.test/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index b1207fa..0000000
--- a/bundles/org.eclipse.test/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,103 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=11
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=disabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=11
diff --git a/bundles/org.eclipse.test/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.test/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index ba85338..0000000
--- a/bundles/org.eclipse.test/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,32 +0,0 @@
-compilers.f.unresolved-features=1
-compilers.f.unresolved-plugins=1
-compilers.incompatible-environment=0
-compilers.p.build=1
-compilers.p.build.bin.includes=1
-compilers.p.build.encodings=2
-compilers.p.build.java.compiler=2
-compilers.p.build.java.compliance=1
-compilers.p.build.missing.output=2
-compilers.p.build.output.library=1
-compilers.p.build.source.library=1
-compilers.p.build.src.includes=1
-compilers.p.deprecated=1
-compilers.p.discouraged-class=1
-compilers.p.internal=1
-compilers.p.missing-packages=0
-compilers.p.missing-version-export-package=2
-compilers.p.missing-version-import-package=2
-compilers.p.missing-version-require-bundle=2
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=0
-compilers.p.unknown-element=0
-compilers.p.unknown-identifier=1
-compilers.p.unknown-resource=0
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.s.create-docs=false
-compilers.s.doc-folder=doc
-compilers.s.open-tags=1
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.test/META-INF/MANIFEST.MF b/bundles/org.eclipse.test/META-INF/MANIFEST.MF
deleted file mode 100644
index 960b681..0000000
--- a/bundles/org.eclipse.test/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,23 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.test; singleton:=true
-Bundle-Version: 3.5.0.qualifier
-Eclipse-BundleShape: dir
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Require-Bundle: org.apache.ant,
- org.eclipse.ui;bundle-version="[3.112.0,4.0.0)",
- org.eclipse.core.runtime,
- org.eclipse.ui.ide.application,
- org.eclipse.equinox.app,
- org.junit.jupiter.api,
- org.junit.jupiter.engine,
- org.junit.platform.commons,
- org.junit.platform.engine,
- org.junit.platform.launcher,
- org.junit.vintage.engine
-Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-11
-Export-Package: org.eclipse.test
-Automatic-Module-Name: org.eclipse.test
diff --git a/bundles/org.eclipse.test/about.html b/bundles/org.eclipse.test/about.html
deleted file mode 100644
index 164f781..0000000
--- a/bundles/org.eclipse.test/about.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>About</title>
-</head>
-<body lang="EN-US">
-	<h2>About This Content</h2>
-
-	<p>November 30, 2017</p>
-	<h3>License</h3>
-
-	<p>
-		The Eclipse Foundation makes available all content in this plug-in
-		(&quot;Content&quot;). Unless otherwise indicated below, the Content
-		is provided to you under the terms and conditions of the Eclipse
-		Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
-		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
-		For purposes of the EPL, &quot;Program&quot; will mean the Content.
-	</p>
-
-	<p>
-		If you did not receive this Content directly from the Eclipse
-		Foundation, the Content is being redistributed by another party
-		(&quot;Redistributor&quot;) and different terms and conditions may
-		apply to your use of any object code in the Content. Check the
-		Redistributor's license that was provided with the Content. If no such
-		license exists, contact the Redistributor. Unless otherwise indicated
-		below, the terms and conditions of the EPL still apply to any source
-		code in the Content and such source code may be obtained at <a
-			href="http://www.eclipse.org/">http://www.eclipse.org</a>.
-	</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.test/build.properties b/bundles/org.eclipse.test/build.properties
deleted file mode 100644
index dbb2d16..0000000
--- a/bundles/org.eclipse.test/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2017 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-output.. = bin/
-bin.includes = .,\
-               plugin.properties,\
-               META-INF/,\
-               plugin.xml,\
-               about.html
-src.includes = about.html
-source.. = src/
diff --git a/bundles/org.eclipse.test/easymock.psf b/bundles/org.eclipse.test/easymock.psf
deleted file mode 100644
index e3005d5..0000000
--- a/bundles/org.eclipse.test/easymock.psf
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<psf version="2.0">
-<provider id="org.eclipse.team.cvs.core.cvsnature">
-<project reference="1.0,:extssh:dev.eclipse.org:/cvsroot/tools,org.eclipse.orbit/org.easymock,org.easymock,v2_4"/>
-</provider>
-</psf>
\ No newline at end of file
diff --git a/bundles/org.eclipse.test/forceQualifierUpdate.txt b/bundles/org.eclipse.test/forceQualifierUpdate.txt
deleted file mode 100644
index a6ccccb..0000000
--- a/bundles/org.eclipse.test/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
-Bug 416387 - don't sign inner jars in tools and test framework
-Bug 516465 - Add missing about.html to o.e.test
-Pick up new signing certificate
-Bug 566471 - I20200828-0150 - Comparator Errors Found
\ No newline at end of file
diff --git a/bundles/org.eclipse.test/plugin.properties b/bundles/org.eclipse.test/plugin.properties
deleted file mode 100644
index 5a0deba..0000000
--- a/bundles/org.eclipse.test/plugin.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-pluginName = Eclipse Automated Testing
-providerName = Eclipse.org
diff --git a/bundles/org.eclipse.test/plugin.xml b/bundles/org.eclipse.test/plugin.xml
deleted file mode 100644
index 4a14819..0000000
--- a/bundles/org.eclipse.test/plugin.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-     <extension
-         id="coretestapplication"
-         point="org.eclipse.core.runtime.applications">
-      <application>
-         <run
-               class="org.eclipse.test.CoreTestApplication">
-         </run>
-      </application>
-   </extension>
-   <extension
-         id="uitestapplication"
-         point="org.eclipse.core.runtime.applications">
-      <application>
-         <run
-               class="org.eclipse.test.UITestApplication">
-            <parameter
-                  name="productInfo"
-                  value="product.ini">
-            </parameter>
-         </run>
-      </application>
-   </extension>
-
-</plugin>
diff --git a/bundles/org.eclipse.test/pom.xml b/bundles/org.eclipse.test/pom.xml
deleted file mode 100644
index 49fedc7..0000000
--- a/bundles/org.eclipse.test/pom.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.test</groupId>
-  <artifactId>org.eclipse.test</artifactId>
-  <version>3.5.0-SNAPSHOT</version>
-  <packaging>eclipse-plugin</packaging>
-  <properties>
-    <defaultSigning-excludeInnerJars>true</defaultSigning-excludeInnerJars> 
-  </properties>  
-</project>
diff --git a/bundles/org.eclipse.test/src/org/eclipse/test/AbstractJUnitResultFormatter.java b/bundles/org.eclipse.test/src/org/eclipse/test/AbstractJUnitResultFormatter.java
deleted file mode 100644
index 1a3755f..0000000
--- a/bundles/org.eclipse.test/src/org/eclipse/test/AbstractJUnitResultFormatter.java
+++ /dev/null
@@ -1,310 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2018, 2020 Red Hat Inc. and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     Lucas Bullen (Red Hat Inc.) - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test;
-
-import java.io.BufferedReader;
-import java.io.ByteArrayInputStream;
-import java.io.Closeable;
-import java.io.FileOutputStream;
-import java.io.FileReader;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.io.Writer;
-import java.nio.BufferOverflowException;
-import java.nio.ByteBuffer;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.util.Objects;
-import java.util.Optional;
-
-import org.apache.tools.ant.Project;
-import org.apache.tools.ant.taskdefs.optional.junitlauncher.TestExecutionContext;
-import org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter;
-import org.apache.tools.ant.util.FileUtils;
-import org.junit.platform.engine.TestSource;
-import org.junit.platform.engine.support.descriptor.ClassSource;
-import org.junit.platform.launcher.TestIdentifier;
-import org.junit.platform.launcher.TestPlan;
-
-/**
- * Contains some common behaviour that's used by our internal {@link TestResultFormatter}s
- */
-abstract class AbstractJUnitResultFormatter implements TestResultFormatter {
-
-
-	protected static String NEW_LINE = System.lineSeparator();
-	protected TestExecutionContext context;
-
-	private SysOutErrContentStore sysOutStore;
-	private SysOutErrContentStore sysErrStore;
-
-	@Override
-	public void sysOutAvailable(final byte[] data) {
-		if (this.sysOutStore == null) {
-			this.sysOutStore = new SysOutErrContentStore(true);
-		}
-		try {
-			this.sysOutStore.store(data);
-		} catch (IOException e) {
-			handleException(e);
-			return;
-		}
-	}
-
-	@Override
-	public void sysErrAvailable(final byte[] data) {
-		if (this.sysErrStore == null) {
-			this.sysErrStore = new SysOutErrContentStore(false);
-		}
-		try {
-			this.sysErrStore.store(data);
-		} catch (IOException e) {
-			handleException(e);
-			return;
-		}
-	}
-
-	@Override
-	public void setContext(final TestExecutionContext context) {
-		this.context = context;
-	}
-
-	/**
-	 * @return Returns true if there's any stdout data, that was generated during the
-	 * tests, is available for use. Else returns false.
-	 */
-	boolean hasSysOut() {
-		return this.sysOutStore != null && this.sysOutStore.hasData();
-	}
-
-	/**
-	 * @return Returns true if there's any stderr data, that was generated during the
-	 * tests, is available for use. Else returns false.
-	 */
-	boolean hasSysErr() {
-		return this.sysErrStore != null && this.sysErrStore.hasData();
-	}
-
-	/**
-	 * @return Returns a {@link Reader} for reading any stdout data that was generated
-	 * during the test execution. It is expected that the {@link #hasSysOut()} be first
-	 * called to see if any such data is available and only if there is, then this method
-	 * be called
-	 * @throws IOException If there's any I/O problem while creating the {@link Reader}
-	 */
-	Reader getSysOutReader() throws IOException {
-		return this.sysOutStore.getReader();
-	}
-
-	/**
-	 * @return Returns a {@link Reader} for reading any stderr data that was generated
-	 * during the test execution. It is expected that the {@link #hasSysErr()} be first
-	 * called to see if any such data is available and only if there is, then this method
-	 * be called
-	 * @throws IOException If there's any I/O problem while creating the {@link Reader}
-	 */
-	Reader getSysErrReader() throws IOException {
-		return this.sysErrStore.getReader();
-	}
-
-	/**
-	 * Writes out any stdout data that was generated during the
-	 * test execution. If there was no such data then this method just returns.
-	 *
-	 * @param writer The {@link Writer} to use. Cannot be null.
-	 * @throws IOException If any I/O problem occurs during writing the data
-	 */
-	void writeSysOut(final Writer writer) throws IOException {
-		Objects.requireNonNull(writer, "Writer cannot be null");
-		this.writeFrom(this.sysOutStore, writer);
-	}
-
-	/**
-	 * Writes out any stderr data that was generated during the
-	 * test execution. If there was no such data then this method just returns.
-	 *
-	 * @param writer The {@link Writer} to use. Cannot be null.
-	 * @throws IOException If any I/O problem occurs during writing the data
-	 */
-	void writeSysErr(final Writer writer) throws IOException {
-		Objects.requireNonNull(writer, "Writer cannot be null");
-		this.writeFrom(this.sysErrStore, writer);
-	}
-
-	static Optional<TestIdentifier> traverseAndFindTestClass(final TestPlan testPlan, final TestIdentifier testIdentifier) {
-		if (isTestClass(testIdentifier).isPresent()) {
-			return Optional.of(testIdentifier);
-		}
-		final Optional<TestIdentifier> parent = testPlan.getParent(testIdentifier);
-		return parent.isPresent() ? traverseAndFindTestClass(testPlan, parent.get()) : Optional.empty();
-	}
-
-	static Optional<ClassSource> isTestClass(final TestIdentifier testIdentifier) {
-		if (testIdentifier == null) {
-			return Optional.empty();
-		}
-		final Optional<TestSource> source = testIdentifier.getSource();
-		if (!source.isPresent()) {
-			return Optional.empty();
-		}
-		final TestSource testSource = source.get();
-		if (testSource instanceof ClassSource) {
-			return Optional.of((ClassSource) testSource);
-		}
-		return Optional.empty();
-	}
-
-	private void writeFrom(final SysOutErrContentStore store, final Writer writer) throws IOException {
-		final char[] chars = new char[1024];
-		int numRead = -1;
-		try (final Reader reader = store.getReader()) {
-			while ((numRead = reader.read(chars)) != -1) {
-				writer.write(chars, 0, numRead);
-			}
-		}
-	}
-
-	@Override
-	public void close() throws IOException {
-		FileUtils.close(this.sysOutStore);
-		FileUtils.close(this.sysErrStore);
-	}
-
-	protected void handleException(final Throwable t) {
-		// we currently just log it and move on.
-		this.context.getProject().ifPresent(p -> p.log("Exception in listener "
-				+ AbstractJUnitResultFormatter.this.getClass().getName(), t, Project.MSG_DEBUG));
-	}
-
-
-	/*
-    A "store" for sysout/syserr content that gets sent to the AbstractJUnitResultFormatter.
-    This store first uses a relatively decent sized in-memory buffer for storing the sysout/syserr
-    content. This in-memory buffer will be used as long as it can fit in the new content that
-    keeps coming in. When the size limit is reached, this store switches to a file based store
-    by creating a temporarily file and writing out the already in-memory held buffer content
-    and any new content that keeps arriving to this store. Once the file has been created,
-    the in-memory buffer will never be used any more and in fact is destroyed as soon as the
-    file is created.
-    Instances of this class are not thread-safe and users of this class are expected to use necessary thread
-    safety guarantees, if they want to use an instance of this class by multiple threads.
-	 */
-	private static final class SysOutErrContentStore implements Closeable {
-		private static final int DEFAULT_CAPACITY_IN_BYTES = 50 * 1024; // 50 KB
-		private static final Reader EMPTY_READER = new Reader() {
-			@Override
-			public int read(final char[] cbuf, final int off, final int len) throws IOException {
-				return -1;
-			}
-
-			@Override
-			public void close() throws IOException {
-			}
-		};
-
-		private final String tmpFileSuffix;
-		private ByteBuffer inMemoryStore = ByteBuffer.allocate(DEFAULT_CAPACITY_IN_BYTES);
-		private boolean usingFileStore = false;
-		private Path filePath;
-		private FileOutputStream fileOutputStream;
-
-		SysOutErrContentStore(final boolean isSysOut) {
-			this.tmpFileSuffix = isSysOut ? ".sysout" : ".syserr";
-		}
-
-		void store(final byte[] data) throws IOException {
-			if (this.usingFileStore) {
-				this.storeToFile(data, 0, data.length);
-				return;
-			}
-			// we haven't yet created a file store and the data can fit in memory,
-			// so we write it in our buffer
-			try {
-				this.inMemoryStore.put(data);
-				return;
-			} catch (BufferOverflowException boe) {
-				// the buffer capacity can't hold this incoming data, so this
-				// incoming data hasn't been transferred to the buffer. let's
-				// now fall back to a file store
-				this.usingFileStore = true;
-			}
-			// since the content couldn't be transferred into in-memory buffer,
-			// we now create a file and transfer already (previously) stored in-memory
-			// content into that file, before finally transferring this new content
-			// into the file too. We then finally discard this in-memory buffer and
-			// just keep using the file store instead
-			this.fileOutputStream = createFileStore();
-			// first the existing in-memory content
-			storeToFile(this.inMemoryStore.array(), 0, this.inMemoryStore.position());
-			storeToFile(data, 0, data.length);
-			// discard the in-memory store
-			this.inMemoryStore = null;
-		}
-
-		private void storeToFile(final byte[] data, final int offset, final int length) throws IOException {
-			if (this.fileOutputStream == null) {
-				// no backing file was created so we can't do anything
-				return;
-			}
-			this.fileOutputStream.write(data, offset, length);
-		}
-
-		private FileOutputStream createFileStore() throws IOException {
-			this.filePath = Files.createTempFile(null, this.tmpFileSuffix);
-			this.filePath.toFile().deleteOnExit();
-			return new FileOutputStream(this.filePath.toFile());
-		}
-
-		/*
-		 * Returns a Reader for reading the sysout/syserr content. If there's no data
-		 * available in this store, then this returns a Reader which when used for read operations,
-		 * will immediately indicate an EOF.
-		 */
-		Reader getReader() throws IOException {
-			if (this.usingFileStore && this.filePath != null) {
-				// we use a FileReader here so that we can use the system default character
-				// encoding for reading the contents on sysout/syserr stream, since that's the
-				// encoding that System.out/System.err uses to write out the messages
-				return new BufferedReader(new FileReader(this.filePath.toFile()));
-			}
-			if (this.inMemoryStore != null) {
-				return new InputStreamReader(new ByteArrayInputStream(this.inMemoryStore.array(), 0, this.inMemoryStore.position()));
-			}
-			// no data to read, so we return an "empty" reader
-			return EMPTY_READER;
-		}
-
-		/*
-		 *  Returns true if this store has any data (either in-memory or in a file). Else
-		 *  returns false.
-		 */
-		boolean hasData() {
-			if (this.inMemoryStore != null && this.inMemoryStore.position() > 0) {
-				return true;
-			}
-			if (this.usingFileStore && this.filePath != null) {
-				return true;
-			}
-			return false;
-		}
-
-		@Override
-		public void close() throws IOException {
-			this.inMemoryStore = null;
-			FileUtils.close(this.fileOutputStream);
-			FileUtils.delete(this.filePath.toFile());
-		}
-	}
-}
diff --git a/bundles/org.eclipse.test/src/org/eclipse/test/AwtScreenshot.java b/bundles/org.eclipse.test/src/org/eclipse/test/AwtScreenshot.java
deleted file mode 100644
index 5802d75..0000000
--- a/bundles/org.eclipse.test/src/org/eclipse/test/AwtScreenshot.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015, 2017 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test;
-
-import java.awt.AWTException;
-import java.awt.HeadlessException;
-import java.awt.Rectangle;
-import java.awt.Robot;
-import java.awt.Toolkit;
-import java.awt.image.BufferedImage;
-import java.io.File;
-import java.io.IOException;
-
-import javax.imageio.ImageIO;
-
-public class AwtScreenshot {
-
-	public static void main(String[] args) {
-		try {
-			System.setProperty("java.awt.headless", "false");
-			Robot robot= new Robot();
-			Rectangle rect= new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
-			BufferedImage image= robot.createScreenCapture(rect);
-			File file= new File(args[0]);
-			ImageIO.write(image, "png", file);
-
-			System.out.println("AWT screenshot saved to: " + file.getAbsolutePath());
-		} catch (HeadlessException|AWTException|IOException e) {
-			e.printStackTrace();
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.test/src/org/eclipse/test/ClassLoaderTools.java b/bundles/org.eclipse.test/src/org/eclipse/test/ClassLoaderTools.java
deleted file mode 100644
index d98b4b6..0000000
--- a/bundles/org.eclipse.test/src/org/eclipse/test/ClassLoaderTools.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2018 Red Hat Inc. and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     Lucas Bullen (Red Hat Inc.) - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URI;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Enumeration;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.osgi.internal.framework.EquinoxBundle;
-import org.osgi.framework.Bundle;
-
-@SuppressWarnings("restriction")
-class ClassLoaderTools {
-	public static ClassLoader getPluginClassLoader(String getfTestPluginName, ClassLoader currentTCCL) {
-		Bundle bundle = Platform.getBundle(getfTestPluginName);
-		if (bundle == null) {
-			throw new IllegalArgumentException("Bundle \"" + getfTestPluginName + "\" not found. Possible causes include missing dependencies, too restrictive version ranges, or a non-matching required execution environment."); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		return new TestBundleClassLoader(bundle, currentTCCL);
-	}
-
-	public static String getClassPlugin(String className) {
-		int index = className.lastIndexOf('.');
-		String plugin = null;
-		while (index != -1) {
-			plugin = className.substring(0, index);
-			if(Platform.getBundle(plugin) != null) {
-				break;
-			}
-			index = className.lastIndexOf('.', index-1);
-		}
-		return plugin;
-	}
-
-	public static ClassLoader getJUnit5Classloader(List<String> platformEngine) {
-		List<Bundle> platformEngineBundles = new ArrayList<>();
-		for (String string : platformEngine) {
-			Bundle bundle = Platform.getBundle(string);
-			platformEngineBundles.add(bundle);
-		}
-		return new MultiBundleClassLoader(platformEngineBundles);
-	}
-
-	static class TestBundleClassLoader extends ClassLoader {
-		protected Bundle bundle;
-		protected ClassLoader currentTCCL;
-
-		public TestBundleClassLoader(Bundle target, ClassLoader currentTCCL) {
-			this.bundle = target;
-			this.currentTCCL = currentTCCL;
-		}
-
-		@Override
-		protected Class<?> findClass(String name) throws ClassNotFoundException {
-			try {
-				return bundle.loadClass(name);
-			} catch (ClassNotFoundException e) {
-				return currentTCCL.loadClass(name);
-			}
-		}
-
-		@Override
-		protected URL findResource(String name) {
-			URL url = bundle.getResource(name);
-			if(url == null) {
-				url = currentTCCL.getResource(name);
-			}
-			return url;
-		}
-
-		@Override
-		protected Enumeration<URL> findResources(String name) throws IOException {
-			Enumeration<URL> enumeration = bundle.getResources(name);
-			if(enumeration == null) {
-				enumeration = currentTCCL.getResources(name);
-			}
-			return enumeration;
-		}
-
-		@Override
-		public Enumeration<URL> getResources(String res) throws IOException {
-			Enumeration<URL> urls = currentTCCL.getResources(res);
-			if(urls.hasMoreElements())
-				return urls;
-
-			List<URL> resources = new ArrayList<>(6);
-			String location = null;
-			URL url = null;
-			if (bundle instanceof EquinoxBundle) {
-				location = ((EquinoxBundle) bundle).getLocation();
-			}
-			if (location != null && location.startsWith("reference:")) { //$NON-NLS-1$
-				location = location.substring(10, location.length());
-				URI uri = URI.create(location);
-				String newPath =( uri.getPath() == null ? "" : uri.getPath()) + "bin" + '/' + res; //$NON-NLS-1$
-				URI newUri = uri.resolve(newPath).normalize();
-				if(newUri.isAbsolute())
-					url = newUri.toURL();
-			}
-			if (url != null) {
-				File f = new File(url.getFile());
-				if (f.exists())
-					resources.add(url);
-			}
-			else
-				return Collections.emptyEnumeration();
-
-			return Collections.enumeration(resources);
-		}
-	}
-
-	static class MultiBundleClassLoader extends ClassLoader {
-		private List<Bundle> bundleList;
-
-		public MultiBundleClassLoader(List<Bundle> platformEngineBundles) {
-			this.bundleList = platformEngineBundles;
-
-		}
-		public Class<?> findClasss(String name) throws ClassNotFoundException {
-			return findClass(name);
-		}
-		@Override
-		protected Class<?> findClass(String name) throws ClassNotFoundException {
-			Class<?> c = null;
-			for (Bundle temp : bundleList) {
-				try {
-					c = temp.loadClass(name);
-					if (c != null)
-						return c;
-				} catch (ClassNotFoundException e) {
-				}
-			}
-			return c;
-		}
-
-		@Override
-		protected URL findResource(String name) {
-			URL url = null;
-			for (Bundle temp : bundleList) {
-				url = temp.getResource(name);
-				if (url != null)
-					return url;
-			}
-			return url;
-		}
-
-		@Override
-		protected Enumeration<URL> findResources(String name) throws IOException {
-			Enumeration<URL> enumFinal = null;
-			for (int i = 0; i < bundleList.size(); i++) {
-				if (i == 0) {
-					enumFinal = bundleList.get(i).getResources(name);
-					continue;
-				}
-				Enumeration<URL> e2 = bundleList.get(i).getResources(name);
-				Vector<URL> temp = new Vector<>();
-				while (enumFinal != null && enumFinal.hasMoreElements()) {
-					temp.add(enumFinal.nextElement());
-				}
-				while (e2 != null && e2.hasMoreElements()) {
-					temp.add(e2.nextElement());
-				}
-				enumFinal = temp.elements();
-			}
-			return enumFinal;
-		}
-	}
-}
diff --git a/bundles/org.eclipse.test/src/org/eclipse/test/CoreTestApplication.java b/bundles/org.eclipse.test/src/org/eclipse/test/CoreTestApplication.java
deleted file mode 100644
index 15bc418..0000000
--- a/bundles/org.eclipse.test/src/org/eclipse/test/CoreTestApplication.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2018 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test;
-
-import java.io.IOException;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.equinox.app.IApplication;
-import org.eclipse.equinox.app.IApplicationContext;
-
-/**
- * A an application that launches tests once it is started.
- */
-public class CoreTestApplication implements IApplication {
-	/** true if workspace tests should log their deltas */
-	private static boolean deltas= false;
-
-	/**
-	 * Runs a set of tests as defined by the given command line args.
-	 * This is the platform application entry point.
-	 */
-	public Object run(Object arguments) throws Exception {
-		String[] args= Platform.getCommandLineArgs();//getCommand//processCommandLine((String[]) arguments);
-		return Integer.valueOf(runTests(args));
-	}
-
-	@Override
-	public Object start(IApplicationContext context) throws Exception {
-		String[] args = (String[]) context.getArguments().get("application.args");
-		if (args == null)
-			args = new String[0];
-		return run(args);
-	}
-
-	@Override
-	public void stop() {
-
-	}
-
-	protected int runTests(String[] args) throws IOException {
-		return EclipseTestRunner.run(args);
-	}
-
-	public static boolean deltasEnabled() {
-		return deltas;
-	}
-
-	protected String[] processCommandLine(String[] args) {
-		int[] configArgs = new int[100];
-		configArgs[0] = -1; // need to initialize the first element to something that could not be an index.
-		int configArgIndex = 0;
-		for (int i = 0; i < args.length; i++) {
-			boolean found = false;
-			// check for args without parameters (i.e., a flag arg)
-			// see if we should be logging deltas
-			if (args[i].equalsIgnoreCase("-deltas")) {
-				found = true;
-				deltas = true;
-			}
-			if (found) {
-				configArgs[configArgIndex++] = i;
-				continue;
-			}
-
-			// check for args with parameters
-			if (i == args.length - 1 || args[i + 1].startsWith("-")) {
-				continue;
-			}
-			++i;
-
-			// done checking for args.  Remember where an arg was found
-			if (found) {
-				configArgs[configArgIndex++] = i - 1;
-				configArgs[configArgIndex++] = i;
-			}
-		}
-
-		//remove all the arguments consumed by this argument parsing
-		if (configArgIndex == 0)
-			return args;
-		String[] passThruArgs = new String[args.length - configArgIndex];
-		configArgIndex = 0;
-		int j = 0;
-		for (int i = 0; i < args.length; i++) {
-			if (i == configArgs[configArgIndex])
-				configArgIndex++;
-			else
-				passThruArgs[j++] = args[i];
-		}
-		return passThruArgs;
-	}
-}
diff --git a/bundles/org.eclipse.test/src/org/eclipse/test/EclipseTestRunner.java b/bundles/org.eclipse.test/src/org/eclipse/test/EclipseTestRunner.java
deleted file mode 100644
index c300d2d..0000000
--- a/bundles/org.eclipse.test/src/org/eclipse/test/EclipseTestRunner.java
+++ /dev/null
@@ -1,331 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2018 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     Anthony Dahanne  <anthony.dahanne@compuware.com> - enhance ETF to be able to launch several tests in several bundles - https://bugs.eclipse.org/330613
- *     Lucas Bullen (Red Hat Inc.) - JUnit 5 support
- *******************************************************************************/
-package org.eclipse.test;
-
-import static org.junit.platform.engine.discovery.DiscoverySelectors.selectClass;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Optional;
-import java.util.Properties;
-
-import org.apache.tools.ant.Project;
-import org.apache.tools.ant.taskdefs.optional.junitlauncher.TestExecutionContext;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.ui.testing.dumps.TimeoutDumpTimer;
-import org.junit.platform.engine.TestExecutionResult;
-import org.junit.platform.launcher.Launcher;
-import org.junit.platform.launcher.LauncherDiscoveryRequest;
-import org.junit.platform.launcher.TestExecutionListener;
-import org.junit.platform.launcher.TestIdentifier;
-import org.junit.platform.launcher.core.LauncherDiscoveryRequestBuilder;
-import org.junit.platform.launcher.core.LauncherFactory;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.FrameworkUtil;
-import org.osgi.framework.wiring.BundleWiring;
-
-/**
- * A TestRunner for JUnit that supports Ant JUnitResultFormatters and running
- * tests inside Eclipse. Example call: EclipseTestRunner -classname
- * junit.samples.SimpleTest
- * formatter=org.apache.tools.ant.taskdefs.optional.junit
- * .XMLJUnitResultFormatter
- */
-public class EclipseTestRunner {
-	static class ThreadDump extends Exception {
-
-		private static final long serialVersionUID = 1L;
-
-		ThreadDump(String message) {
-			super(message);
-		}
-	}
-
-	/**
-	 * No problems with this test.
-	 */
-	public static final int SUCCESS = 0;
-	/**
-	 * Some tests failed.
-	 */
-	public static final int FAILURES = 1;
-	/**
-	 * An error occured.
-	 */
-	public static final int ERRORS = 2;
-
-	/**
-	 * The main entry point (the parameters are not yet consistent with the Ant
-	 * JUnitTestRunner, but eventually they should be). Parameters
-	 *
-	 * <pre>
-	 * -className=&lt;testSuiteName&gt;
-	 * -testPluginName&lt;containingpluginName&gt;
-	 * -formatter=&lt;classname&gt;(,&lt;path&gt;)
-	 * </pre>
-	 * Where &lt;classname&gt; is the formatter classname, currently ignored as only
-	 * LegacyXmlResultFormatter is used. The path is either the path to the
-	 * result file and should include the file extension (xml) if a single test
-	 * is being run or should be the path to the result directory where result
-	 * files should be created if multiple tests are being run. If no path is
-	 * given, the standard output is used.
-	 */
-	public static void main(String[] args) throws IOException {
-		System.exit(run(args));
-	}
-
-	public static int run(String[] args) throws IOException {
-		String className = null;
-		String classesNames = null;
-		String testPluginName = null;
-		String testPluginsNames = null;
-		String resultPathString = null;
-		String timeoutString = null;
-		String junitReportOutput = null;
-
-		Properties props = new Properties();
-
-		int startArgs = 0;
-		if (args.length > 0) {
-			// support the JUnit task commandline syntax where
-			// the first argument is the name of the test class
-			if (!args[0].startsWith("-")) {
-				className = args[0];
-				startArgs++;
-			}
-		}
-		for (int i = startArgs; i < args.length; i++) {
-			if (args[i].toLowerCase().equals("-classname")) {
-				if (i < args.length - 1)
-					className = args[i + 1];
-				i++;
-			} else if (args[i].toLowerCase().equals("-classesnames")) {
-				if (i < args.length - 1)
-					classesNames = args[i + 1];
-				i++;
-			} else if (args[i].toLowerCase().equals("-testpluginname")) {
-				if (i < args.length - 1)
-					testPluginName = args[i + 1];
-				i++;
-			} else if (args[i].toLowerCase().equals("-testpluginsnames")) {
-				if (i < args.length - 1)
-					testPluginsNames = args[i + 1];
-				i++;
-			} else if (args[i].equals("-junitReportOutput")) {
-				if (i < args.length - 1)
-					junitReportOutput = args[i + 1];
-				i++;
-			} else if (args[i].startsWith("haltOnError=")) {
-				System.err.println("The haltOnError option is no longer supported");
-			} else if (args[i].startsWith("haltOnFailure=")) {
-				System.err.println("The haltOnFailure option is no longer supported");
-			} else if (args[i].startsWith("formatter=")) {
-				String formatterString = args[i].substring(10);
-				int seperatorIndex = formatterString.indexOf(',');
-				resultPathString = seperatorIndex == -1 ? null : formatterString.substring(seperatorIndex + 1);
-			} else if (args[i].startsWith("propsfile=")) {
-				try (FileInputStream in = new FileInputStream(args[i].substring(10))) {
-					props.load(in);
-				}
-			} else if (args[i].equals("-testlistener")) {
-				System.err.println("The testlistener option is no longer supported");
-			} else if (args[i].equals("-timeout")) {
-				if (i < args.length - 1)
-					timeoutString = args[i + 1];
-				i++;
-			}
-		}
-		// Add/overlay system properties on the properties from the Ant project
-		Hashtable<Object, Object> p = System.getProperties();
-		for (Enumeration<Object> _enum = p.keys(); _enum.hasMoreElements();) {
-			Object key = _enum.nextElement();
-			props.put(key, p.get(key));
-		}
-
-		if (timeoutString == null || timeoutString.isEmpty()) {
-			System.err.println("INFO: optional timeout was not specified.");
-		} else {
-			String timeoutScreenOutputDir = null;
-			if (junitReportOutput == null || junitReportOutput.isEmpty()) {
-				timeoutScreenOutputDir = "timeoutScreens";
-			} else {
-				timeoutScreenOutputDir = junitReportOutput + "/timeoutScreens";
-			}
-			System.err.println("INFO: timeoutScreenOutputDir: " + timeoutScreenOutputDir);
-			System.err.println("INFO: timeout: " + timeoutString);
-			startStackDumpTimeoutTimer(timeoutString, new File(timeoutScreenOutputDir));
-		}
-
-		if (testPluginsNames != null && classesNames != null) {
-			// we have several plugins to look tests for, let's parse their
-			// names
-			String[] testPlugins = testPluginsNames.split(",");
-			String[] suiteClasses = classesNames.split(",");
-			int returnCode = 0;
-			int j = 0;
-			EclipseTestRunner runner = new EclipseTestRunner();
-			for (String oneClassName : suiteClasses) {
-				int result = runner.runTests(props, testPlugins[j], oneClassName, resultPathString, true);
-				j++;
-				if(result != 0) {
-					returnCode = result;
-				}
-			}
-			return returnCode;
-		}
-		if (className == null)
-			throw new IllegalArgumentException("Test class name not specified");
-		EclipseTestRunner runner = new EclipseTestRunner();
-		return runner.runTests(props, testPluginName, className, resultPathString, false);
-	}
-
-	private int runTests(Properties props, String testPluginName, String testClassName, String resultPath, boolean multiTest) {
-		ClassLoader currentTCCL = Thread.currentThread().getContextClassLoader();
-		ExecutionListener executionListener = new ExecutionListener();
-		if(testPluginName == null) {
-			testPluginName = ClassLoaderTools.getClassPlugin(testClassName);
-		}
-		if(testPluginName == null)
-			throw new IllegalArgumentException("Test class not found");
-		LauncherDiscoveryRequest request = LauncherDiscoveryRequestBuilder.request()
-				.selectors(selectClass(testClassName))
-				.build();
-
-		try {
-			Thread.currentThread().setContextClassLoader(ClassLoaderTools.getJUnit5Classloader(getPlatformEngines()));
-			final Launcher launcher = LauncherFactory.create();
-
-			Thread.currentThread().setContextClassLoader(ClassLoaderTools.getPluginClassLoader(testPluginName, currentTCCL));
-			try(LegacyXmlResultFormatter legacyXmlResultFormatter = new LegacyXmlResultFormatter()){
-				try (OutputStream fileOutputStream = getResultOutputStream(resultPath,testClassName,multiTest)){
-					legacyXmlResultFormatter.setDestination(fileOutputStream);
-					legacyXmlResultFormatter.setContext(new ExecutionContext(props));
-					launcher.execute(request, legacyXmlResultFormatter, executionListener);
-				}
-			} catch (IOException e) {
-				e.printStackTrace();
-				return ERRORS;
-			}
-		} finally {
-			Thread.currentThread().setContextClassLoader(currentTCCL);
-		}
-		return executionListener.didExecutionContainedFailures() ? FAILURES : SUCCESS;
-	}
-
-	private OutputStream getResultOutputStream(String resultPathString, String testClassName, boolean multiTest) throws IOException {
-		if(resultPathString == null || resultPathString.isEmpty())
-			return System.out;
-		File resultFile;
-		if(multiTest) {
-			Path resultDirectoryPath = new Path(resultPathString);
-			File testDirectory = resultDirectoryPath.toFile();
-			if(!testDirectory.exists())
-				testDirectory.mkdirs();
-			resultFile = resultDirectoryPath.append("TEST-"+testClassName+".xml").toFile();
-		}else {
-			IPath resultPath = new Path(resultPathString);
-			resultFile = resultPath.toFile();
-			if(resultFile.isDirectory()) {
-				resultFile = resultPath.append("TEST-"+testClassName+".xml").toFile();
-			} else {
-				File resultDirectory = resultFile.getParentFile();
-				if(!resultDirectory.exists())
-					resultDirectory.mkdirs();
-			}
-		}
-		if(!resultFile.exists()) {
-			resultFile.createNewFile();
-		}
-		return new FileOutputStream(resultFile);
-	}
-
-
-	private List<String> getPlatformEngines(){
-		List<String> platformEngines = new ArrayList<>();
-		Bundle bundle = FrameworkUtil.getBundle(getClass());
-		Bundle[] bundles = bundle.getBundleContext().getBundles();
-		for (Bundle iBundle : bundles) {
-			try {
-				BundleWiring bundleWiring = Platform.getBundle(iBundle.getSymbolicName()).adapt(BundleWiring.class);
-				Collection<String> listResources = bundleWiring.listResources("META-INF/services", "org.junit.platform.engine.TestEngine", BundleWiring.LISTRESOURCES_LOCAL);
-				if (!listResources.isEmpty())
-					platformEngines.add(iBundle.getSymbolicName());
-			} catch (Exception e) {
-				// check the next bundle
-			}
-		}
-		return platformEngines;
-	}
-
-	private final class ExecutionListener implements TestExecutionListener {
-		private boolean executionContainedFailures;
-
-		public ExecutionListener() {
-			this.executionContainedFailures = false;
-		}
-
-		public boolean didExecutionContainedFailures() {
-			return executionContainedFailures;
-		}
-
-		@Override
-		public void executionFinished(TestIdentifier testIdentifier, TestExecutionResult testExecutionResult) {
-			if(testExecutionResult.getStatus() == org.junit.platform.engine.TestExecutionResult.Status.FAILED) {
-				executionContainedFailures = true;
-			}
-		}
-	}
-
-	private final class ExecutionContext implements TestExecutionContext {
-
-		private final Properties props;
-
-		ExecutionContext(Properties props) {
-			this.props = props;
-		}
-
-		@Override
-		public Properties getProperties() {
-			return this.props;
-		}
-
-		@Override
-		public Optional<Project> getProject() {
-			return null;
-		}
-	}
-
-	/**
-	 * Starts a timer that dumps interesting debugging information shortly before
-	 * the given timeout expires.
-	 *
-	 * @param timeoutArg      the -timeout argument from the command line
-	 * @param outputDirectory where the test results end up
-	 */
-	private static void startStackDumpTimeoutTimer(final String timeoutArg, final File outputDirectory) {
-		TimeoutDumpTimer.startTimeoutDumpTimer(timeoutArg, outputDirectory);
-	}
-}
diff --git a/bundles/org.eclipse.test/src/org/eclipse/test/LegacyXmlResultFormatter.java b/bundles/org.eclipse.test/src/org/eclipse/test/LegacyXmlResultFormatter.java
deleted file mode 100644
index afb4dd4..0000000
--- a/bundles/org.eclipse.test/src/org/eclipse/test/LegacyXmlResultFormatter.java
+++ /dev/null
@@ -1,412 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2021 Red Hat Inc. and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     Lucas Bullen (Red Hat Inc.) - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test;
-
-import java.io.IOException;
-import java.io.OutputStream;
-import java.io.Reader;
-import java.util.Date;
-import java.util.Map;
-import java.util.Optional;
-import java.util.Properties;
-import java.util.Set;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.atomic.AtomicLong;
-
-import javax.xml.stream.XMLOutputFactory;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tools.ant.taskdefs.optional.junitlauncher.TestResultFormatter;
-import org.apache.tools.ant.util.DOMElementWriter;
-import org.apache.tools.ant.util.DateUtils;
-import org.junit.platform.commons.util.ExceptionUtils;
-import org.junit.platform.engine.TestExecutionResult;
-import org.junit.platform.engine.TestSource;
-import org.junit.platform.engine.reporting.ReportEntry;
-import org.junit.platform.engine.support.descriptor.ClassSource;
-import org.junit.platform.launcher.TestIdentifier;
-import org.junit.platform.launcher.TestPlan;
-
-/**
- * A {@link TestResultFormatter} which generates an XML report of the tests. The generated XML reports
- * conforms to the schema of the XML that was generated by the {@code junit} task's XML
- * report formatter and can be used by the {@code junitreport} task
- */
-public class LegacyXmlResultFormatter extends AbstractJUnitResultFormatter {
-
-	private static final double ONE_SECOND = 1000.0;
-
-	OutputStream outputStream;
-	final Map<TestIdentifier, Stats> testIds = new ConcurrentHashMap<>();
-	final Map<TestIdentifier, Optional<String>> skipped = new ConcurrentHashMap<>();
-	final Map<TestIdentifier, Optional<Throwable>> failed = new ConcurrentHashMap<>();
-	final Map<TestIdentifier, Optional<Throwable>> errored = new ConcurrentHashMap<>();
-	final Map<TestIdentifier, Optional<Throwable>> aborted = new ConcurrentHashMap<>();
-
-	TestPlan testPlan;
-	long testPlanStartedAt = -1;
-	long testPlanEndedAt = -1;
-	final AtomicLong numTestsRun = new AtomicLong(0);
-	final AtomicLong numTestsFailed = new AtomicLong(0);
-	final AtomicLong numTestsErrored = new AtomicLong(0);
-	final AtomicLong numTestsSkipped = new AtomicLong(0);
-	final AtomicLong numTestsAborted = new AtomicLong(0);
-
-	@Override
-	public void testPlanExecutionStarted(final TestPlan plan) {
-		this.testPlan = plan;
-		this.testPlanStartedAt = System.currentTimeMillis();
-	}
-
-	@Override
-	public void testPlanExecutionFinished(final TestPlan plan) {
-		this.testPlanEndedAt = System.currentTimeMillis();
-		// format and print out the result
-		try {
-			new XMLReportWriter().write();
-		} catch (IOException | XMLStreamException e) {
-			handleException(e);
-			return;
-		}
-	}
-
-	@Override
-	public void dynamicTestRegistered(final TestIdentifier testIdentifier) {
-		// nothing to do
-	}
-
-	@Override
-	public void executionSkipped(final TestIdentifier testIdentifier, final String reason) {
-		final long currentTime = System.currentTimeMillis();
-		this.numTestsSkipped.incrementAndGet();
-		this.skipped.put(testIdentifier, Optional.ofNullable(reason));
-		// a skipped test is considered started and ended now
-		final Stats stats = new Stats(testIdentifier, currentTime);
-		stats.endedAt = currentTime;
-		this.testIds.put(testIdentifier, stats);
-	}
-
-	@Override
-	public void executionStarted(final TestIdentifier testIdentifier) {
-		final long currentTime = System.currentTimeMillis();
-		this.testIds.putIfAbsent(testIdentifier, new Stats(testIdentifier, currentTime));
-		if (testIdentifier.isTest()) {
-			this.numTestsRun.incrementAndGet();
-		}
-	}
-
-	@Override
-	public void executionFinished(final TestIdentifier testIdentifier, final TestExecutionResult testExecutionResult) {
-		final long currentTime = System.currentTimeMillis();
-		final Stats stats = this.testIds.get(testIdentifier);
-		if (stats != null) {
-			stats.endedAt = currentTime;
-		}
-		switch (testExecutionResult.getStatus()) {
-		case SUCCESSFUL: {
-			break;
-		}
-		case ABORTED: {
-			this.numTestsAborted.incrementAndGet();
-			this.aborted.put(testIdentifier, testExecutionResult.getThrowable());
-			break;
-		}
-		case FAILED: {
-			Optional<Throwable> throwableOptional = testExecutionResult.getThrowable();
-			if(throwableOptional.isPresent() && throwableOptional.get() instanceof AssertionError) {
-				this.numTestsFailed.incrementAndGet();
-				this.failed.put(testIdentifier, testExecutionResult.getThrowable());
-			}else {
-				this.numTestsErrored.incrementAndGet();
-				this.errored.put(testIdentifier, testExecutionResult.getThrowable());
-			}
-			break;
-		}
-		}
-	}
-
-	@Override
-	public void reportingEntryPublished(final TestIdentifier testIdentifier, final ReportEntry entry) {
-		// nothing to do
-	}
-
-	@Override
-	public void setDestination(final OutputStream os) {
-		this.outputStream = os;
-	}
-
-	private final class Stats {
-		final long startedAt;
-		long endedAt;
-
-		Stats(final TestIdentifier testIdentifier, final long startedAt) {
-			this.startedAt = startedAt;
-		}
-	}
-	@Override
-	public void setUseLegacyReportingName(final boolean useLegacyReportingName) {
-		//do nothing
-	}
-
-
-	private final class XMLReportWriter {
-
-		private static final String ELEM_TESTSUITE = "testsuite";
-		private static final String ELEM_PROPERTIES = "properties";
-		private static final String ELEM_PROPERTY = "property";
-		private static final String ELEM_TESTCASE = "testcase";
-		private static final String ELEM_SKIPPED = "skipped";
-		private static final String ELEM_FAILURE = "failure";
-		private static final String ELEM_ERROR = "error";
-		private static final String ELEM_ABORTED = "aborted";
-		private static final String ELEM_SYSTEM_OUT = "system-out";
-		private static final String ELEM_SYSTEM_ERR = "system-err";
-
-
-		private static final String ATTR_CLASSNAME = "classname";
-		private static final String ATTR_NAME = "name";
-		private static final String ATTR_VALUE = "value";
-		private static final String ATTR_TIME = "time";
-		private static final String ATTR_TIMESTAMP = "timestamp";
-		private static final String ATTR_NUM_ABORTED = "aborted";
-		private static final String ATTR_NUM_FAILURES = "failures";
-		private static final String ATTR_NUM_ERRORS = "errors";
-		private static final String ATTR_NUM_TESTS = "tests";
-		private static final String ATTR_NUM_SKIPPED = "skipped";
-		private static final String ATTR_MESSAGE = "message";
-		private static final String ATTR_TYPE = "type";
-
-		public XMLReportWriter() {
-			// TODO Auto-generated constructor stub
-		}
-
-		void write() throws XMLStreamException, IOException {
-			final XMLStreamWriter writer = XMLOutputFactory.newFactory().createXMLStreamWriter(outputStream, "UTF-8");
-			try {
-				writer.writeStartDocument();
-				writeTestSuite(writer);
-				writer.writeEndDocument();
-			} finally {
-				writer.close();
-			}
-		}
-
-		void writeTestSuite(final XMLStreamWriter writer) throws XMLStreamException, IOException {
-			// write the testsuite element
-			writer.writeStartElement(ELEM_TESTSUITE);
-			final String testsuiteName = determineTestSuiteName();
-			writer.writeAttribute(ATTR_NAME, testsuiteName);
-			// time taken for the tests execution
-			writer.writeAttribute(ATTR_TIME, String.valueOf((testPlanEndedAt - testPlanStartedAt) / ONE_SECOND));
-			// add the timestamp of report generation
-			final String timestamp = DateUtils.format(new Date(), DateUtils.ISO8601_DATETIME_PATTERN);
-			writer.writeAttribute(ATTR_TIMESTAMP, timestamp);
-			writer.writeAttribute(ATTR_NUM_TESTS, String.valueOf(numTestsRun.longValue()));
-			writer.writeAttribute(ATTR_NUM_FAILURES, String.valueOf(numTestsFailed.longValue()));
-			writer.writeAttribute(ATTR_NUM_ERRORS, String.valueOf(numTestsErrored.longValue()));
-			writer.writeAttribute(ATTR_NUM_SKIPPED, String.valueOf(numTestsSkipped.longValue()));
-			writer.writeAttribute(ATTR_NUM_ABORTED, String.valueOf(numTestsAborted.longValue()));
-
-			// write the properties
-			writeProperties(writer);
-			// write the tests
-			writeTestCase(writer);
-			writeSysOut(writer);
-			writeSysErr(writer);
-			// end the testsuite
-			writer.writeEndElement();
-		}
-
-		void writeProperties(final XMLStreamWriter writer) throws XMLStreamException {
-			final Properties properties = LegacyXmlResultFormatter.this.context.getProperties();
-			if (properties == null || properties.isEmpty()) {
-				return;
-			}
-			writer.writeStartElement(ELEM_PROPERTIES);
-			for (final String prop : properties.stringPropertyNames()) {
-				writer.writeStartElement(ELEM_PROPERTY);
-				writer.writeAttribute(ATTR_NAME, prop);
-				writer.writeAttribute(ATTR_VALUE, properties.getProperty(prop));
-				writer.writeEndElement();
-			}
-			writer.writeEndElement();
-		}
-
-		void writeTestCase(final XMLStreamWriter writer) throws XMLStreamException {
-			for (final Map.Entry<TestIdentifier, Stats> entry : testIds.entrySet()) {
-				final TestIdentifier testId = entry.getKey();
-				if (!testId.isTest()) {
-					// only interested in test methods
-					continue;
-				}
-				// find the parent class of this test method
-				final Optional<TestIdentifier> parent = testPlan.getParent(testId);
-				if (!parent.isPresent()) {
-					continue;
-				}
-				final String classname = parent.get().getLegacyReportingName();
-				writer.writeStartElement(ELEM_TESTCASE);
-				writer.writeAttribute(ATTR_CLASSNAME, classname);
-				writer.writeAttribute(ATTR_NAME, testId.getDisplayName());
-				final Stats stats = entry.getValue();
-				writer.writeAttribute(ATTR_TIME, String.valueOf((stats.endedAt - stats.startedAt) / ONE_SECOND));
-				// skipped element if the test was skipped
-				writeSkipped(writer, testId);
-				// failed element if the test failed
-				writeFailed(writer, testId);
-				// errored element if the test failed with an error
-				writeErrored(writer, testId);
-				// aborted element if the test was aborted
-				writeAborted(writer, testId);
-
-				writer.writeEndElement();
-			}
-		}
-
-		private void writeSkipped(final XMLStreamWriter writer, final TestIdentifier testIdentifier) throws XMLStreamException {
-			if (!skipped.containsKey(testIdentifier)) {
-				return;
-			}
-			writer.writeStartElement(ELEM_SKIPPED);
-			final Optional<String> reason = skipped.get(testIdentifier);
-			if (reason.isPresent()) {
-				writer.writeAttribute(ATTR_MESSAGE, reason.get());
-			}
-			writer.writeEndElement();
-		}
-
-		private void writeFailed(final XMLStreamWriter writer, final TestIdentifier testIdentifier) throws XMLStreamException {
-			if (!failed.containsKey(testIdentifier)) {
-				return;
-			}
-			writer.writeStartElement(ELEM_FAILURE);
-			final Optional<Throwable> cause = failed.get(testIdentifier);
-			if (cause.isPresent()) {
-				final Throwable t = cause.get();
-				final String message = t.getMessage();
-				if (message != null && !message.trim().isEmpty()) {
-					writer.writeAttribute(ATTR_MESSAGE, message);
-				}
-				writer.writeAttribute(ATTR_TYPE, t.getClass().getName());
-				writer.writeCharacters(ExceptionUtils.readStackTrace(t));
-			}
-			writer.writeEndElement();
-		}
-
-		private void writeErrored(final XMLStreamWriter writer, final TestIdentifier testIdentifier) throws XMLStreamException {
-			if (!errored.containsKey(testIdentifier)) {
-				return;
-			}
-			writer.writeStartElement(ELEM_ERROR);
-			final Optional<Throwable> cause = errored.get(testIdentifier);
-			if (cause.isPresent()) {
-				final Throwable t = cause.get();
-				final String message = t.getMessage();
-				if (message != null && !message.trim().isEmpty()) {
-					writer.writeAttribute(ATTR_MESSAGE, message);
-				}
-				writer.writeAttribute(ATTR_TYPE, t.getClass().getName());
-				writer.writeCharacters(ExceptionUtils.readStackTrace(t));
-			}
-			writer.writeEndElement();
-		}
-
-		private void writeAborted(final XMLStreamWriter writer, final TestIdentifier testIdentifier) throws XMLStreamException {
-			if (!aborted.containsKey(testIdentifier)) {
-				return;
-			}
-			writer.writeStartElement(ELEM_ABORTED);
-			final Optional<Throwable> cause = aborted.get(testIdentifier);
-			if (cause.isPresent()) {
-				final Throwable t = cause.get();
-				final String message = t.getMessage();
-				if (message != null && !message.trim().isEmpty()) {
-					writer.writeAttribute(ATTR_MESSAGE, message);
-				}
-				writer.writeAttribute(ATTR_TYPE, t.getClass().getName());
-			}
-			writer.writeEndElement();
-		}
-
-		private void writeSysOut(final XMLStreamWriter writer) throws XMLStreamException, IOException {
-			if (!LegacyXmlResultFormatter.this.hasSysOut()) {
-				return;
-			}
-			writer.writeStartElement(ELEM_SYSTEM_OUT);
-			try (final Reader reader = LegacyXmlResultFormatter.this.getSysOutReader()) {
-				writeCharactersFrom(reader, writer);
-			}
-			writer.writeEndElement();
-		}
-
-		private void writeSysErr(final XMLStreamWriter writer) throws XMLStreamException, IOException {
-			if (!LegacyXmlResultFormatter.this.hasSysErr()) {
-				return;
-			}
-			writer.writeStartElement(ELEM_SYSTEM_ERR);
-			try (final Reader reader = LegacyXmlResultFormatter.this.getSysErrReader()) {
-				writeCharactersFrom(reader, writer);
-			}
-			writer.writeEndElement();
-		}
-
-		private void writeCharactersFrom(final Reader reader, final XMLStreamWriter writer) throws IOException, XMLStreamException {
-			final char[] chars = new char[1024];
-			int numRead = -1;
-			while ((numRead = reader.read(chars)) != -1) {
-				// although it's called a DOMElementWriter, the encode method is just a
-				// straight forward XML util method which doesn't concern about whether
-				// DOM, SAX, StAX semantics.
-				// TODO: Perhaps make it a static method
-				final String encoded = new DOMElementWriter().encode(new String(chars, 0, numRead));
-				writer.writeCharacters(encoded);
-			}
-		}
-
-		private String determineTestSuiteName() {
-			// this is really a hack to try and match the expectations of the XML report in JUnit4.x
-			// world. In JUnit5, the TestPlan doesn't have a name and a TestPlan (for which this is a
-			// listener) can have numerous tests within it
-			final Set<TestIdentifier> roots = testPlan.getRoots();
-			if (roots.isEmpty()) {
-				return "UNKNOWN";
-			}
-			for (final TestIdentifier root : roots) {
-				final Optional<ClassSource> classSource = findFirstClassSource(root);
-				if (classSource.isPresent()) {
-					return classSource.get().getClassName();
-				}
-			}
-			return "UNKNOWN";
-		}
-
-		private Optional<ClassSource> findFirstClassSource(final TestIdentifier root) {
-			if (root.getSource().isPresent()) {
-				final TestSource source = root.getSource().get();
-				if (source instanceof ClassSource) {
-					return Optional.of((ClassSource) source);
-				}
-			}
-			for (final TestIdentifier child : testPlan.getChildren(root)) {
-				final Optional<ClassSource> classSource = findFirstClassSource(child);
-				if (classSource.isPresent()) {
-					return classSource;
-				}
-			}
-			return Optional.empty();
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.test/src/org/eclipse/test/RegressionTest.java b/bundles/org.eclipse.test/src/org/eclipse/test/RegressionTest.java
deleted file mode 100644
index 1ff9687..0000000
--- a/bundles/org.eclipse.test/src/org/eclipse/test/RegressionTest.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test;
-
-import java.io.BufferedOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.PrintStream;
-import java.util.StringTokenizer;
-import java.io.ByteArrayOutputStream;
-
-/**
- * Check the output of several tests for regressions.
- */
-public class RegressionTest {
-
-	PrintStream output;
-	String oldFilename, newFilename, outFilename;
-	public static final String NOTHING_CHANGED_MSG
-		= "All tests unchanged.";
-	/**
-	 * Constructor for RegressionTest
-	 */
-	public RegressionTest(	String oldFilename,
-							String newFilename,
-							String outFilename) {
-		this.oldFilename = oldFilename;
-		this.newFilename = newFilename;
-		this.outFilename = outFilename;
-	}
-
-	public static void main(String[] argv) {
-		if (argv.length < 3) {
-			System.err.println("Error: too few arguments");
-			System.err.println("Usage: (progname) oldfile newfile outfile");
-		} else {
-			// ASSERT: The program has at least the correct number of arguments
-			RegressionTest rt = new RegressionTest(argv[0], argv[1], argv[2]);
-			rt.testRegressions();
-		}
-	}
-
-	/**
-	 * Test for regressions in the test suite.
-	 */
-	public void testRegressions() {
-		// Read the old and new files
-		String oldPass = "";
-		String newPass = "";
-		try {
-			oldPass = readFile(oldFilename);
-			newPass = readFile(newFilename);
-		} catch (Exception e) {
-			System.err.println("Error opening input file");
-			System.err.println(e.getMessage());
-			System.exit(-1);
-		}
-
-		try {
-			output = new PrintStream(
-						new BufferedOutputStream(
-							new FileOutputStream(
-								new File(outFilename))));
-		} catch (Exception e) {
-			System.err.println("Error opening output file");
-			System.err.println(e.getMessage());
-			System.exit(-1);
-		}
-		// Establish their relationship
-		StringTokenizer oldst = new StringTokenizer(oldPass);
-		StringTokenizer newst = new StringTokenizer(newPass);
-
-		String[] oldTest = nextTest(oldst);
-		String[] newTest = nextTest(newst);
-
-		boolean nothingChanged = true;
-		while (oldTest != null && newTest != null) {
-
-			// Compare the two test names
-			int compareName = oldTest[0].compareTo(newTest[0]);
-			if (compareName == 0) {
-				int compareStatus = oldTest[1].compareTo(newTest[1]);
-				if (compareStatus != 0) {
-					nothingChanged = false;
-					output.println(testChanged(newTest));
-				}
-				oldTest = nextTest(oldst);
-				newTest = nextTest(newst);
-			} else if (compareName < 0) {
-				// oldTestName comes first
-				output.println(testNotRun(oldTest));
-				oldTest = nextTest(oldst);
-				nothingChanged = false;
-			} else {
-				// newTestName comes first
-				output.println(testAdded(newTest));
-				newTest = nextTest(newst);
-				nothingChanged = false;
-			}
-		}
-		// Make sure all tests are parsed
-		while (oldTest != null) {
-			// oldTestName comes first
-			output.println(testNotRun(oldTest));
-			oldTest = nextTest(oldst);
-			nothingChanged = false;
-		}
-		while (newTest != null) {
-			// newTestName comes first
-			output.println(testAdded(newTest));
-			newTest = nextTest(newst);
-			nothingChanged = false;
-		}
-		// Make sure that there is always some output.
-		if (nothingChanged) {
-			output.println(NOTHING_CHANGED_MSG);
-		}
-		output.close();
-	}
-
-	/**
-	 * Get the message for when a test is not run.
-	 */
-	static String testNotRun(String[] test) {
-		return "Not run: " + test[0];
-	}
-
-	/**
-	 * Get the message for when a test's status changes.
-	 */
-	static String testChanged(String[] test) {
-		return "Changed: " + test[0] + ", " + test[1];
-	}
-
-	/**
-	 * Get the message for when a test is added.
-	 */
-	static String testAdded(String[] test) {
-		return "New test: " + test[0] + ", Status: " + test[1];
-	}
-
-	/**
-	 * Read the file given by s, and return its contents.
-	 */
-	static String readFile(String s) throws IOException {
-		byte[] buf = new byte[8192];
-		ByteArrayOutputStream aStream = new ByteArrayOutputStream();
-		try (FileInputStream r = new FileInputStream(s)) {
-			int n;
-			while ((n = r.read(buf)) != -1) {
-				aStream.write(buf, 0, n);
-			}
-		}
-		return aStream.toString();
-	}
-
-
-	/**
-	 * Returns the next 2 tokens in st, if they exist.
-	 * Returns null if they do not.
-	 */
-	static String[] nextTest(StringTokenizer st) {
-		String[] test = new String[2];
-		if (st.hasMoreTokens()) {
-			test[0] = st.nextToken();
-		} else {
-			return null;
-		}
-		if (st.hasMoreTokens()) {
-			test[1] = st.nextToken();
-		} else {
-			return null;
-		}
-		return test;
-	}
-}
-
diff --git a/bundles/org.eclipse.test/src/org/eclipse/test/UITestApplication.java b/bundles/org.eclipse.test/src/org/eclipse/test/UITestApplication.java
deleted file mode 100644
index 5306364..0000000
--- a/bundles/org.eclipse.test/src/org/eclipse/test/UITestApplication.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2018 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test;
-
-import static org.junit.jupiter.api.Assertions.assertNotNull;
-
-import java.io.IOException;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.equinox.app.IApplication;
-import org.eclipse.equinox.app.IApplicationContext;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.testing.ITestHarness;
-import org.eclipse.ui.testing.TestableObject;
-
-/**
- * A Workbench that runs a test suite specified in the command line arguments.
- */
-public class UITestApplication  implements ITestHarness, IApplication {
-
-	private static final String DEFAULT_APP_3_0 = "org.eclipse.ui.ide.workbench"; //$NON-NLS-1$
-
-	private TestableObject fTestableObject;
-	int fTestRunnerResult = -1;
-	private IApplicationContext appContext;
-
-	public Object run(final Object args) throws Exception {
-		// Get the application to test
-		Object application = getApplication((String[])args);
-		assertNotNull(application);
-
-		fTestableObject = PlatformUI.getTestableObject();
-		fTestableObject.setTestHarness(this);
-		((IApplication) application).start(appContext);
-		return Integer.valueOf(fTestRunnerResult);
-	}
-
-	/*
-	 * return the application to run, or null if not even the default application
-	 * is found.
-	 */
-	private Object getApplication(String[] args) throws CoreException {
-		// Assume we are in 3.0 mode.
-		// Find the name of the application as specified by the PDE JUnit launcher.
-		// If no application is specified, the 3.0 default workbench application
-		// is returned.
-		IExtension extension =
-				Platform.getExtensionRegistry().getExtension(
-						Platform.PI_RUNTIME,
-						Platform.PT_APPLICATIONS,
-						getApplicationToRun(args));
-
-		assertNotNull(extension);
-
-		// If the extension does not have the correct grammar, return null.
-		// Otherwise, return the application object.
-		IConfigurationElement[] elements = extension.getConfigurationElements();
-		if (elements.length > 0) {
-			IConfigurationElement[] runs = elements[0].getChildren("run"); //$NON-NLS-1$
-			if (runs.length > 0) {
-				Object runnable = runs[0].createExecutableExtension("class"); //$NON-NLS-1$
-				if (runnable instanceof IApplication)
-					return runnable;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * The -testApplication argument specifies the application to be run.
-	 * If the PDE JUnit launcher did not set this argument, then return
-	 * the name of the default application.
-	 * In 3.0, the default is the "org.eclipse.ui.ide.worbench" application.
-	 *
-	 */
-	private String getApplicationToRun(String[] args) {
-		for (int i = 0; i < args.length; i++) {
-			if (args[i].equals("-testApplication") && i < args.length -1) //$NON-NLS-1$
-				return args[i+1];
-		}
-		return DEFAULT_APP_3_0;
-	}
-
-	@Override
-	public void runTests() {
-		fTestableObject.testingStarting();
-		fTestableObject.runTest(() -> {
-			try {
-				fTestRunnerResult = EclipseTestRunner.run(Platform.getCommandLineArgs());
-			} catch (IOException e) {
-				e.printStackTrace();
-			}
-		});
-		fTestableObject.testingFinished();
-	}
-
-
-	@Override
-	public Object start(IApplicationContext context) throws Exception {
-		this.appContext = context;
-		String[] args = (String[]) appContext.getArguments().get("application.args");
-		if (args == null)
-			args = new String[0];
-		return run(args);
-	}
-
-	@Override
-	public void stop() {
-
-	}
-
-}
-
diff --git a/features/org.eclipse.help-feature/.project b/features/org.eclipse.help-feature/.project
deleted file mode 100644
index 7327cde..0000000
--- a/features/org.eclipse.help-feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.help-feature</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/features/org.eclipse.help-feature/.settings/org.eclipse.core.resources.prefs b/features/org.eclipse.help-feature/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/features/org.eclipse.help-feature/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/features/org.eclipse.help-feature/.settings/org.eclipse.core.runtime.prefs b/features/org.eclipse.help-feature/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/features/org.eclipse.help-feature/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/features/org.eclipse.help-feature/build.properties b/features/org.eclipse.help-feature/build.properties
deleted file mode 100644
index 047f949..0000000
--- a/features/org.eclipse.help-feature/build.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2008, 2012 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = feature.xml,\
-               feature.properties
diff --git a/features/org.eclipse.help-feature/feature.properties b/features/org.eclipse.help-feature/feature.properties
deleted file mode 100644
index 81bd981..0000000
--- a/features/org.eclipse.help-feature/feature.properties
+++ /dev/null
@@ -1,42 +0,0 @@
-###############################################################################
-# Copyright (c) 2008, 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Help System
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "description" property - description of the feature
-description=Eclipse help system.
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2008, 2013 IBM Corporation and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n\
-\n\
-Contributors:\n\
-    IBM Corporation - initial API and implementation\n
-################ end of copyright property ####################################
\ No newline at end of file
diff --git a/features/org.eclipse.help-feature/feature.xml b/features/org.eclipse.help-feature/feature.xml
deleted file mode 100644
index 9024f6d..0000000
--- a/features/org.eclipse.help-feature/feature.xml
+++ /dev/null
@@ -1,213 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- NOTE: Usually we keep branding and feature bundle version in sync, but we can't increase the major version -->
-<feature
-      id="org.eclipse.help"
-      label="%featureName"
-      version="2.3.900.qualifier"
-      provider-name="%providerName"
-      plugin="org.eclipse.help.base"
-      license-feature="org.eclipse.license"
-      license-feature-version="0.0.0">
-
-   <description>
-      %description
-   </description>
-
-   <copyright>
-      %copyright
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <plugin
-         id="javax.el"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="jakarta.servlet-api"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="javax.servlet.jsp"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="com.sun.el"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.commons.logging"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.jasper.glassfish"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.lucene.analyzers-common"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.lucene.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.lucene.analyzers-smartcn"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.http.jetty"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.http.registry"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.http.servlet"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.jsp.jasper"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.jsp.jasper.registry"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.help.base"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.help.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.help.webapp"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jetty.http"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jetty.io"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jetty.security"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jetty.server"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jetty.servlet"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jetty.util"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jetty.util.ajax"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.slf4j.api"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.net"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.security"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-</feature>
diff --git a/features/org.eclipse.help-feature/forceQualifierUpdate.txt b/features/org.eclipse.help-feature/forceQualifierUpdate.txt
deleted file mode 100644
index 1466094..0000000
--- a/features/org.eclipse.help-feature/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
-Bug 417264 - We should update our version of Jetty
-Bug 422417 - help feature "extra requirement" for Lucene, in POM, can be removed
-Bug 416718 - We should update our version of Jetty for SR2
-Bug 448567 - Update Orbit for M3
-Bug 457171 - adopt and adjust to new jasper.glassfish bundle from Orbit
-Bug 527904 - Update platform.ua to Lucene 7.1
\ No newline at end of file
diff --git a/features/org.eclipse.help-feature/pom.xml b/features/org.eclipse.help-feature/pom.xml
deleted file mode 100644
index 53ae399..0000000
--- a/features/org.eclipse.help-feature/pom.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012, 2019 Eclipse Foundation.
-  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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.help.feature</groupId>
-  <artifactId>org.eclipse.help</artifactId>
-  <name>org.eclipse.help.feature</name>
-  <version>2.3.900-SNAPSHOT</version>
-  <packaging>eclipse-feature</packaging>
-    <build>
-     <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-source-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <executions>
-          <execution>
-            <phase>package</phase>
-            <id>feature-source</id>
-            <goals>
-              <goal>feature-source</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-p2-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <executions>
-          <execution>
-            <id>attach-p2-metadata</id>
-            <phase>package</phase>
-            <goals>
-              <goal>p2-metadata</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/features/org.eclipse.help-feature/sourceTemplateFeature/feature.properties b/features/org.eclipse.help-feature/sourceTemplateFeature/feature.properties
deleted file mode 100644
index 92ec41b..0000000
--- a/features/org.eclipse.help-feature/sourceTemplateFeature/feature.properties
+++ /dev/null
@@ -1,42 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2011 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Help Developer Resources
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "description" property - description of the feature
-description=Source code for the Eclipse help system.
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2000, 2013 IBM Corporation and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n\
-\n\
-Contributors:\n\
-    IBM Corporation - initial API and implementation\n
-################ end of copyright property ####################################
\ No newline at end of file
diff --git a/features/org.eclipse.help-feature/sourceTemplateFeature/license.html b/features/org.eclipse.help-feature/sourceTemplateFeature/license.html
deleted file mode 100644
index 25fe124..0000000
--- a/features/org.eclipse.help-feature/sourceTemplateFeature/license.html
+++ /dev/null
@@ -1,108 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>Eclipse Foundation Software User Agreement</title>
-</head>
-
-<body lang="EN-US">
-<h2>Eclipse Foundation Software User Agreement</h2>
-<p>April 14, 2010</p>
-
-<h3>Usage Of Content</h3>
-
-<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
-   (COLLECTIVELY &quot;CONTENT&quot;).  USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
-   CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU AGREE THAT YOUR USE
-   OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
-   NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
-   CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
-
-<h3>Applicable Licenses</h3>
-
-<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 2.0
-  (&quot;EPL&quot;).  A copy of the EPL is provided with this Content and is also available at <a href="https://www.eclipse.org/legal/epl-2.0/">https://www.eclipse.org/legal/epl-2.0/</a>.
-
-   For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
-   repository (&quot;Repository&quot;) in software modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
-
-<ul>
-       <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content.  Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
-       <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
-       <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.  Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;.  Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
-      and/or Fragments associated with that Feature.</li>
-       <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
-</ul>
-
-<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
-Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;).  Abouts and Feature Licenses may be located in any directory of a Download or Module
-including, but not limited to the following locations:</p>
-
-<ul>
-       <li>The top-level (root) directory</li>
-       <li>Plug-in and Fragment directories</li>
-       <li>Inside Plug-ins and Fragments packaged as JARs</li>
-       <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
-       <li>Feature directories</li>
-</ul>
-
-<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license (&quot;Feature Update License&quot;) during the
-installation process.  If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
-inform you where you can locate them.  Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
-Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
-that directory.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-       <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
-       <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-       <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
-       <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-       <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT.  If no About, Feature License, or Feature Update License is provided, please
-contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
-
-
-<h3>Use of Provisioning Technology</h3>
-
-<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
-   Update Manager (&quot;Provisioning Technology&quot;) for the purpose of allowing users to install software, documentation, information and/or
-   other materials (collectively &quot;Installable Software&quot;). This capability is provided with the intent of allowing such users to
-   install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a
-       href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
-   (&quot;Specification&quot;).</p>
-
-<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the
-   applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology
-   in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the
-   Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p>
-
-<ol>
-       <li>A series of actions may occur (&quot;Provisioning Process&quot;) in which a user may execute the Provisioning Technology
-       on a machine (&quot;Target Machine&quot;) with the intent of installing, extending or updating the functionality of an Eclipse-based
-       product.</li>
-       <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be
-       accessed and copied to the Target Machine.</li>
-       <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
-       Software (&quot;Installable Software Agreement&quot;) and such Installable Software Agreement shall be accessed from the Target
-       Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern
-       the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such
-       indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li>
-</ol>
-
-<h3>Cryptography</h3>
-
-<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
-   another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
-   possession, or use, and re-export of encryption software, to see if this is permitted.</p>
-
-<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
-</body>
-</html>
diff --git a/features/org.eclipse.platform-feature/.project b/features/org.eclipse.platform-feature/.project
deleted file mode 100644
index 9f53c70..0000000
--- a/features/org.eclipse.platform-feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.platform-feature</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/features/org.eclipse.platform-feature/.settings/org.eclipse.core.resources.prefs b/features/org.eclipse.platform-feature/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/features/org.eclipse.platform-feature/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/features/org.eclipse.platform-feature/.settings/org.eclipse.core.runtime.prefs b/features/org.eclipse.platform-feature/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/features/org.eclipse.platform-feature/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/features/org.eclipse.platform-feature/build.properties b/features/org.eclipse.platform-feature/build.properties
deleted file mode 100644
index 91ab3ab..0000000
--- a/features/org.eclipse.platform-feature/build.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-#  Copyright (c) 2000, 2013 IBM Corporation and others.
-#
-#  This program and the accompanying materials
-#  are made available under the terms of the Eclipse Public License 2.0
-#  which accompanies this distribution, and is available at
-#  https://www.eclipse.org/legal/epl-2.0/
-#
-#  SPDX-License-Identifier: EPL-2.0
-# 
-#  Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = feature.xml,\
-			   feature.properties
-
-root=rootfiles
diff --git a/features/org.eclipse.platform-feature/feature.properties b/features/org.eclipse.platform-feature/feature.properties
deleted file mode 100644
index 37b1a69..0000000
--- a/features/org.eclipse.platform-feature/feature.properties
+++ /dev/null
@@ -1,39 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2020 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Platform
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "description" property - description of the feature
-description=Common OS-independent base of the Eclipse platform. (Binary runtime and user documentation.)
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2000, 2020 IBM Corporation and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n
-################ end of copyright property ####################################
\ No newline at end of file
diff --git a/features/org.eclipse.platform-feature/feature.xml b/features/org.eclipse.platform-feature/feature.xml
deleted file mode 100644
index 6f8b260..0000000
--- a/features/org.eclipse.platform-feature/feature.xml
+++ /dev/null
@@ -1,540 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.platform"
-      label="%featureName"
-      version="4.23.0.qualifier"
-      provider-name="%providerName"
-      license-feature="org.eclipse.license"
-      license-feature-version="0.0.0">
-
-   <description>
-      %description
-   </description>
-
-   <copyright>
-      %copyright
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <includes
-         id="org.eclipse.rcp"
-         version="0.0.0"/>
-
-   <includes
-         id="org.eclipse.equinox.p2.user.ui"
-         version="0.0.0"
-         optional="true"/>
-
-   <includes
-         id="org.eclipse.help"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.apache.ant"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ant.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="com.jcraft.jsch"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.compare.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.compare"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.compare.win32"
-         os="win32"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filebuffers"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.net"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.net.linux"
-         os="linux"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.net.win32.x86_64"
-         os="win32"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.resources"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.osgi.util"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.debug.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.debug.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.e4.ui.ide"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.event"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ltk.core.refactoring"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ltk.ui.refactoring"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.platform"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.platform.doc.user"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.search"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.text.quicksearch"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.team.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.team.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.text"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jface.text"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jsch.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jsch.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.console"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.intro"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.intro.universal"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.cheatsheets"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.browser"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.genericeditor"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.monitoring"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.navigator"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.navigator.resources"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.net"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.workbench.texteditor"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.views"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.editors"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.externaltools"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.ide"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.ide.application"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.win32"
-         ws="win32"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem.linux.x86_64"
-         os="linux"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem.macosx"
-         os="macosx"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.resources.win32.x86_64"
-         os="win32"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem.win32.x86_64"
-         os="win32"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem.linux.ppc64le"
-         os="linux"
-         arch="ppc64le"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem.linux.aarch64"
-         os="linux"
-         arch="aarch64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.variables"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.forms"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.views.properties.tabbed"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.security"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.security.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.security.win32.x86_64"
-         os="win32"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.security.macosx"
-         os="macosx"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.security.linux"
-         os="linux"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.externaltools"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.themes"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.core.runtime"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.intro.quicklinks"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.team.genericeditor.diff.extension"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.urischeme"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.views.log"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.debug.ui.launchview"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-</feature>
diff --git a/features/org.eclipse.platform-feature/forceQualifierUpdate.txt b/features/org.eclipse.platform-feature/forceQualifierUpdate.txt
deleted file mode 100644
index b89ede0..0000000
--- a/features/org.eclipse.platform-feature/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
-Bug 430284 - Update Orbit pre-reqs to latest Orbit I-build
-Bug 399749 - update to Orbit M7 S-build URL
-Bug 442445 - Moving to Ant 1.9.4 for Mars
-Bug 448567 - Update Orbit for M3
-Bug 437486 - Add JSch 0.1.51 to Platform
-Bug 467268 - Update to Orbit RC1 URL
-Bug 537521 - Update to latest org.eclipse.debug.core
-Needs a touch for felix.scr qualifier update
-Bug 515092 - Source bundles missing for team plugins
-Bug 541562 - 4.10.0 I-Build: I20181126-0140 failed
-4.10.0 I-Build: I20181128-0600 failed
-Bug 545223 - Version bumps for 4.12 stream
-Bug 574602 - Eclipse 4.21 prerequisites: Orbit
diff --git a/features/org.eclipse.platform-feature/pom.xml b/features/org.eclipse.platform-feature/pom.xml
deleted file mode 100644
index ac878dd..0000000
--- a/features/org.eclipse.platform-feature/pom.xml
+++ /dev/null
@@ -1,85 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012, 2014 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
-  http://www.eclipse.org/org/documents/edl-v10.php
-
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.platform.feature</groupId>
-  <artifactId>org.eclipse.platform</artifactId>
-  <name>org.eclipse.platform.feature</name>
-  <packaging>eclipse-feature</packaging>
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>target-platform-configuration</artifactId>
-        <configuration>
-          <dependency-resolution>
-            <extraRequirements>
-              <!-- this guarantees proper reactor build order  -->
-              <requirement>
-                <type>eclipse-plugin</type>
-                <id>org.eclipse.platform.doc.isv</id>
-                <versionRange>0.0.0</versionRange>
-              </requirement>
-            </extraRequirements>
-          </dependency-resolution>
-        </configuration>
-      </plugin>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-source-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <executions>
-          <execution>
-            <phase>package</phase>
-            <id>feature-source</id>
-            <goals>
-              <goal>feature-source</goal>
-            </goals>
-            <configuration>
-              <plugins>
-                <plugin id="org.eclipse.platform.doc.isv" versionRange="0.0.0"/>
-              </plugins>
-              <excludes>
-                <plugin id="org.eclipse.platform.doc.user"/>
-                <plugin id="org.eclipse.core.filesystem.linux.x86_64"/>
-                <plugin id="org.eclipse.core.filesystem.macosx"/>
-                <plugin id="org.eclipse.core.filesystem.win32.x86_64"/>
-                <plugin id="org.eclipse.core.filesystem.linux.ppc64le"/>
-                <plugin id="org.eclipse.core.resources.win32.x86_64"/>
-              </excludes>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-p2-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <executions>
-          <execution>
-            <id>attach-p2-metadata</id>
-            <phase>package</phase>
-            <goals>
-              <goal>p2-metadata</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/features/org.eclipse.platform-feature/rootfiles/.eclipseproduct b/features/org.eclipse.platform-feature/rootfiles/.eclipseproduct
deleted file mode 100644
index 498ad11..0000000
--- a/features/org.eclipse.platform-feature/rootfiles/.eclipseproduct
+++ /dev/null
@@ -1,3 +0,0 @@
-name=Eclipse Platform
-id=org.eclipse.platform
-version=4.23.0
diff --git a/features/org.eclipse.platform-feature/sourceTemplateFeature/build.properties b/features/org.eclipse.platform-feature/sourceTemplateFeature/build.properties
deleted file mode 100644
index 6813ac4..0000000
--- a/features/org.eclipse.platform-feature/sourceTemplateFeature/build.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################
-#  Copyright (c) 2000, 2016 IBM Corporation and others.
-#
-#  This program and the accompanying materials
-#  are made available under the terms of the Eclipse Public License 2.0
-#  which accompanies this distribution, and is available at
-#  https://www.eclipse.org/legal/epl-2.0/
-#
-#  SPDX-License-Identifier: EPL-2.0
-#
-#  Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes =\
-epl-v10.html,\
-feature.xml,\
-feature.properties,\
-license.html
diff --git a/features/org.eclipse.platform-feature/sourceTemplateFeature/feature.properties b/features/org.eclipse.platform-feature/sourceTemplateFeature/feature.properties
deleted file mode 100644
index b735401..0000000
--- a/features/org.eclipse.platform-feature/sourceTemplateFeature/feature.properties
+++ /dev/null
@@ -1,42 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Platform Plug-in Developer Resources
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "description" property - description of the feature
-description=Common OS-independent API documentation and source code zips for the Eclipse Platform.
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2000, 2013 IBM Corporation and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n\
-\n\
-Contributors:\n\
-    IBM Corporation - initial API and implementation\n
-################ end of copyright property ####################################
\ No newline at end of file
diff --git a/features/org.eclipse.platform-feature/sourceTemplateFragment/about.html b/features/org.eclipse.platform-feature/sourceTemplateFragment/about.html
deleted file mode 100644
index 164f781..0000000
--- a/features/org.eclipse.platform-feature/sourceTemplateFragment/about.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>About</title>
-</head>
-<body lang="EN-US">
-	<h2>About This Content</h2>
-
-	<p>November 30, 2017</p>
-	<h3>License</h3>
-
-	<p>
-		The Eclipse Foundation makes available all content in this plug-in
-		(&quot;Content&quot;). Unless otherwise indicated below, the Content
-		is provided to you under the terms and conditions of the Eclipse
-		Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
-		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
-		For purposes of the EPL, &quot;Program&quot; will mean the Content.
-	</p>
-
-	<p>
-		If you did not receive this Content directly from the Eclipse
-		Foundation, the Content is being redistributed by another party
-		(&quot;Redistributor&quot;) and different terms and conditions may
-		apply to your use of any object code in the Content. Check the
-		Redistributor's license that was provided with the Content. If no such
-		license exists, contact the Redistributor. Unless otherwise indicated
-		below, the terms and conditions of the EPL still apply to any source
-		code in the Content and such source code may be obtained at <a
-			href="http://www.eclipse.org/">http://www.eclipse.org</a>.
-	</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/features/org.eclipse.platform-feature/sourceTemplateFragment/build.properties b/features/org.eclipse.platform-feature/sourceTemplateFragment/build.properties
deleted file mode 100644
index a56a932..0000000
--- a/features/org.eclipse.platform-feature/sourceTemplateFragment/build.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = about.html, fragment.xml, src/**, META-INF/
-sourcePlugin = true
-
diff --git a/features/org.eclipse.rcp/.project b/features/org.eclipse.rcp/.project
deleted file mode 100644
index 209b7bb..0000000
--- a/features/org.eclipse.rcp/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.rcp (feature)</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/features/org.eclipse.rcp/.settings/org.eclipse.core.resources.prefs b/features/org.eclipse.rcp/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/features/org.eclipse.rcp/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/features/org.eclipse.rcp/.settings/org.eclipse.core.runtime.prefs b/features/org.eclipse.rcp/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/features/org.eclipse.rcp/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/features/org.eclipse.rcp/build.properties b/features/org.eclipse.rcp/build.properties
deleted file mode 100644
index d8a3ae7..0000000
--- a/features/org.eclipse.rcp/build.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################
-#  Copyright (c) 2000, 2014 IBM Corporation and others.
-#
-#  This program and the accompanying materials
-#  are made available under the terms of the Eclipse Public License 2.0
-#  which accompanies this distribution, and is available at
-#  https://www.eclipse.org/legal/epl-2.0/
-#
-#  SPDX-License-Identifier: EPL-2.0
-# 
-#  Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes=feature.xml,feature.properties
-root=rootfiles
-
-
-
diff --git a/features/org.eclipse.rcp/feature.properties b/features/org.eclipse.rcp/feature.properties
deleted file mode 100644
index dd0e3d1..0000000
--- a/features/org.eclipse.rcp/feature.properties
+++ /dev/null
@@ -1,45 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse RCP
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=The Eclipse Project Updates
-
-# "description" property - description of the feature
-description=Rich Client Platform
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2000, 2013 Eclipse contributors and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n\
-\n\
-Contributors:\n\
-    IBM Corporation - initial API and implementation\n
-################ end of copyright property ####################################
\ No newline at end of file
diff --git a/features/org.eclipse.rcp/feature.xml b/features/org.eclipse.rcp/feature.xml
deleted file mode 100644
index 79fdbd9..0000000
--- a/features/org.eclipse.rcp/feature.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.rcp"
-      label="%featureName"
-      version="4.23.0.qualifier"
-      provider-name="%providerName"
-      plugin="org.eclipse.rcp"
-      license-feature="org.eclipse.license"
-      license-feature-version="0.0.0">
-
-   <description>
-      %description
-   </description>
-
-   <copyright>
-      %copyright
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <includes
-         id="org.eclipse.e4.rcp"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.help"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.workbench"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.update.configurator"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.rcp"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.cocoa"
-         os="macosx"
-         ws="cocoa"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="com.ibm.icu"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-</feature>
diff --git a/features/org.eclipse.rcp/forceQualifierUpdate.txt b/features/org.eclipse.rcp/forceQualifierUpdate.txt
deleted file mode 100644
index 4a3a4c8..0000000
--- a/features/org.eclipse.rcp/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
-Bug 529356 - Build failure in I20180102-2215
-Bug 533109 - Build failure in I20180330-2000
-Needs a touch for felix.scr qualifier update
-Bug 539668 - Build failure in I20180930-1800
-4.10.0 I-Build: I20181128-0600 failed
-Bug 545223 - Version bumps for 4.12 stream
-Bug 550723 - Build failure in I20190903-1800
-Bug 563515 - 4.16 I-Build: I20200524-0600 - BUILD FAILED
-Build failure in I20200606-0700
-Bug 565342 - 4.17 I-Build: I20200719-2010 - BUILD FAILED
-feature touch for chromium merge
-feature touch for build failure in I20201204-0610
-4.19 I-Build: I20210204-1300 - BUILD FAILED
-4.19 I-Build: I20210204-1800 - BUILD FAILED
-4.19 I-Build: I20210216-1030 - BUILD FAILEDBug 571236 - 4.19 I-Build: I20210216-1800 - BUILD FAILED
-4.20 I-Build: I20210413-1800 - BUILD FAILED
-4.20 I-Build: I20210413-2350 - BUILD FAILED
diff --git a/features/org.eclipse.rcp/pom.xml b/features/org.eclipse.rcp/pom.xml
deleted file mode 100644
index 9bb294f..0000000
--- a/features/org.eclipse.rcp/pom.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012, 2014 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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.rcp.feature</groupId>
-  <artifactId>org.eclipse.rcp</artifactId>
-  <name>org.eclipse.rcp.feature</name>
-  <packaging>eclipse-feature</packaging>
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-source-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <executions>
-          <execution>
-            <phase>package</phase>
-            <id>feature-source</id>
-            <goals>
-              <goal>feature-source</goal>
-            </goals>
-            <configuration>
-              <excludes>
-                <plugin id="org.eclipse.rcp"/>
-              </excludes>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-p2-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <executions>
-          <execution>
-            <id>attach-p2-metadata</id>
-            <phase>package</phase>
-            <goals>
-              <goal>p2-metadata</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/features/org.eclipse.rcp/rootfiles/readme/readme_eclipse.html b/features/org.eclipse.rcp/rootfiles/readme/readme_eclipse.html
deleted file mode 100644
index 5da0aa7..0000000
--- a/features/org.eclipse.rcp/rootfiles/readme/readme_eclipse.html
+++ /dev/null
@@ -1,1450 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta
-  http-equiv="Content-Type"
-  content="text/html; charset=UTF-8" />
-<title>Eclipse Project Release Notes 4.22</title>
-<!-- Please validate as "xhtml1 strict", at
-https://validator.w3.org/check?uri=http%3A%2F%2Fwww.eclipse.org%2Feclipse%2Fdevelopment%2Freadme_eclipse_4.22.html;ss=1
-(It must be "on website" to validate.)
--->
-</head>
-<body>
-  <h1>
-    <a
-      class="mozTocH1"
-      name="mozTocId299852">Eclipse Project Release Notes</a>
-  </h1>
-  <p>
-    <a
-      class="mozTocH1"
-      name="mozTocId299852">Release 4.22</a>
-  </p>
-  <p>
-    <a
-      class="mozTocH1"
-      name="mozTocId299852">Last revised November 17, 2021</a>
-  </p>
-  <!-- 
-This following link to www.eclipse.org should be commented out
-or removed in final version of the 
-"web version" of the readme, since it does not make sense to 
-have there. But in the "product's readme" it will point people 
-to "the latest version" since there _might_ be changes made 
-after the release.
-  <p>
-    The latest version of this document can be found on the web at <a href="https://www.eclipse.org/eclipse/development/readme_eclipse_4.22.php">Eclipse Release Notes 4.22</a>. There may or may
-    not be changes made after the product is released. You can tell by checking the "last revised" date near the top of this page.
-  </p>
--->
-
-  <p style="text-align: left; font-weight: bold;">
-    <a
-      class="mozTocH1"
-      name="mozTocId299852"> This software is OSI Certified Open Source Software.<br /> OSI Certified is a certification mark of the Open Source Initiative.
-    </a>
-  </p>
-  <h2 id="TargetOperatingEnvironments1">
-    <a
-      class="mozTocH2"
-      name="mozTocId438134" />
-  </h2>
-  <ol id="mozToc">
-    <!--mozToc h1 1 h2 2 h3 3 h4 4 h5 5 h6 6-->
-    <li><a href="#mozTocId299852">Eclipse Project Release Notes</a>
-      <ol>
-        <li><a href="#mozTocId315234">Target Operating Environments</a></li>
-        <li><a href="#mozTocId569479">Compatibility with Previous Releases</a>
-          <ol>
-            <li><a href="#mozTocId324309">Compatibility of Release 4.22 with 4.21</a></li>
-          </ol></li>
-        <li><a href="#mozTocId214943">Known Issues</a>
-          <ol>
-            <li><a href="#mozTocId559320">General - Startup</a>
-              <ol>
-                <li><a href="#mozTocId693657">Installation/Configuration issues that can cause Eclipse to fail start</a></li>
-                <li><a href="#mozTocId337416"> Invalid characters in install directory prevents Eclipse from starting </a></li>
-              </ol></li>
-            <li><a href="#mozTocId324774">Platform - Ant</a>
-              <ol>
-                <li><a href="#mozTocId480194">Custom Ant tasks and Ant types must be separate from plug-in library JARs</a></li>
-                <li><a href="#mozTocId912215">XDoclet support from within Eclipse</a></li>
-                <li><a href="#mozTocId31051">Ant Editor code completion based on Ant 1.6.x</a></li>
-                <li><a href="#mozTocId925603">Setting build loggers not supported when debugging Ant builds</a></li>
-                <li><a href="#mozTocId669417">Renaming an External Tool builder set to run during auto-build will cause errors</a></li>
-                <li><a href="#mozTocId772119">Slow typing/saving of the Ant editor with imports that define numerous macrodefs</a></li>
-                <li><a href="#mozTocId715004">Ant 1.8.x reports missing libraries as build failures</a></li>
-              </ol></li>
-            <li><a href="#mozTocId876322">Platform - User Assistance</a>
-              <ol>
-                <li><a href="#mozTocId828477">Welcome page not displayed properly (Linux/Unix)</a></li>
-                <li><a href="#mozTocId26110">Help browser tool bar buttons do not work for some documents</a></li>
-                <li><a href="#mozTocId324012">Help documents not displayed in a browser or very slow document loading (Windows only)</a></li>
-                <li><a href="#mozTocId227368">Working disconnected from the network (Windows only)</a></li>
-                <li><a href="#mozTocId121403">Using Internet Explorer in offline mode (Windows only)</a></li>
-              </ol></li>
-            <li><a href="#mozTocId683637">Platform - UI</a>
-              <ol>
-                <li><a href="#mozTocId348035">Dirty state not tracked properly for OLE documents (Windows only)</a></li>
-                <li><a href="#mozTocId878052">OLE document crashes can cause Eclipse to also crash (Windows only)</a></li>
-                <li><a href="#mozTocId452707">Toolbars only containing contributed controls exhibit display errors on Mac/Linux</a></li>
-                <li><a href="#mozTocId443682">Allocating enough memory and solving OutOfMemoryError</a></li>
-                <li><a href="#mozTocId862142">Capabilities and Activities don't affect the menus and toolbars</a></li>
-              </ol></li>
-            <li><a href="#mozTocId554478">Platform - SWT</a>
-              <ol>
-                <li><a href="#mozTocId565691">Support for macOS 11 (Big Sur)</a></li>
-                <li><a href="#mozTocId534426">Usage of swt.autoScale and GDK_SCALE flag on GTK platforms</a></li>
-                <li><a href="#mozTocId554478">Non-uniform scaling of text vs. icons when using intermediate scaling factors on high-DPI displays</a></li>
-                <li><a href="#mozTocId69222">Eclipse plug-in based on the SWT Browser throws exception</a></li>
-                <li><a href="#mozTocId238090">Eclipse icon is duplicated in task-bar on Windows</a></li>
-                <li><a href="#mozTocId414883">BIDI Segments in Text controls</a></li>
-                <li><a href="#mozTocId518357">Block Selection functionality provided by StyledText is not BIDI aware</a></li>
-              </ol></li>
-            <li><a href="#mozTocId805874">Platform - Install/Update</a>
-              <ol>
-                <li><a href="#mozTocId914600">Manually installing features and plug-ins on a FAT file system (Windows only)</a></li>
-                <li><a href="#mozTocId648565">Connecting to untrusted sites using https</a></li>
-                <li><a href="#mozTocId104394">Extension location is lost if the install path changes</a></li>
-              </ol></li>
-            <li><a href="#mozTocId428861">Java development tools (JDT)</a>
-              <ol>
-                <li><a href="#mozTocId180305">Multiple regions formatting in a given source snippet</a></li>
-                <li><a href="#mozTocId589358">Searching for constant field references</a></li>
-                <li><a href="#mozTocId577868">Cut, copy, paste not working for linked resources in views showing Java elements</a></li>
-                <li><a href="#mozTocId554543">Java working sets not working correctly for elements from JRE system library container</a></li>
-                <li><a href="#mozTocId440090">Suspend on uncaught exception overrides exception breakpoint location filters</a></li>
-                <li><a href="#mozTocId812347">Running Java programs with non-Latin-1 characters in package or class names</a></li>
-                <li><a href="#mozTocId638407">Cannot run or debug class in a project with GB18030 characters in project name</a></li>
-                <li><a href="#mozTocId994970">Cannot detect installed JRE with GB18030 characters in path name</a></li>
-                <li><a href="#mozTocId324283">Cannot generate Javadoc for packages with GB18030 characters in the name</a></li>
-                <li><a href="#mozTocId524553">Unable to debug stack overflows</a></li>
-                <li><a href="#mozTocId162517">Evaluation limitation</a></li>
-                <li><a href="#mozTocId408387">Missing debug attributes</a></li>
-                <li><a href="#mozTocId330034">Using Hot Code Replace</a></li>
-                <li><a href="#mozTocId976120">Scrapbook</a></li>
-                <li><a href="#mozTocId666507">Debugging over slow connections</a></li>
-                <li><a href="#mozTocId207158">Updating of inspected values</a></li>
-                <li><a href="#mozTocId821393">Stepping over native methods that perform I/O</a></li>
-                <li><a href="#mozTocId606104">Java Annotation Processing</a></li>
-                <li><a href="#mozTocId188069">Java indexing encounters problems when a folder is used both as a source and a class folder</a></li>
-              </ol></li>
-            <li><a href="#mozTocId25456">Plug-in Development Environment (PDE)</a>
-              <ol>
-                <li><a href="#mozTocId179699">Feature manifest editor does not preserve all comments</a></li>
-                <li><a href="#mozTocId243421">PDE will not unzip source zips of some plug-ins</a></li>
-                <li><a href="#mozTocId722932">Emacs key bindings do not work in manifest editor fields</a></li>
-                <li><a href="#mozTocId828449">Export of plug-in may silently drop classes</a></li>
-                <li><a href="#mozTocId89714">Compilation errors when exporting projects not stored outside of the workspace</a></li>
-                <li><a href="#mozTocId270371">Headless build needs to be run from a fully qualified path</a></li>
-                <li><a href="#mozTocId73293">Importing in Eclipse application fails if plug-in exists in host workspace</a></li>
-                <li><a href="#mozTocId914239">Reusing a workspace after changing architectures silently breaks PDE models</a></li>
-                <li><a href="#mozTocId624312">Missing @since tag API Tools problems on interface fields containing @noreference tag</a></li>
-               </ol></li>
-                
-              </ol></li>
-          </ol></li>
-        <li><a href="#mozTocId19817">Running Eclipse</a>
-          <ol>
-            <li><a href="#mozTocId60052">Allocating enough memory and solving OutOfMemoryErrors</a></li>
-            <li><a href="#mozTocId735187">Selecting a workspace</a></li>
-            <li><a href="#mozTocId620725">Specifying the Java virtual machine</a></li>
-            <li><a href="#mozTocId928700">Mac OS X</a></li>
-            <li><a href="#mozTocId221199">Shared Install</a></li>
-          </ol></li>
-        <li><a href="#mozTocId575572">Upgrading Workspace from a Previous Release</a>
-          <ol>
-            <li><a href="#mozTocId401691">Users who don't use "-data"</a></li>
-            <li><a href="#mozTocId197750">Users who do use "-data"</a></li>
-            <li><a href="#mozTocId839433">Users who use User Libraries or classpath containers that contain JARs referencing other libraries via Class-Path in the MANIFEST.MF</a></li>
-            <li><a href="#mozTocId623237">Dropped in bundles may not resolve after upgrade</a></li>
-          </ol></li>
-        <li><a href="#mozTocId638978">Interoperability with Previous Releases</a>
-          <ol>
-            <li><a href="#mozTocId759237">Interoperability of Release 4.22 with previous releases</a>
-              <ol>
-                <li><a href="#mozTocId226004">Sharing projects between heterogeneous Eclipse 4.22 and 4.21</a></li>
-                <li><a href="#mozTocId574781">Using Eclipse 4.22 to develop plug-ins that work in Eclipse 4.21</a></li>
-              </ol>
-            </li>
-          </ol></li>
-        <li><a href="#mozTocId317294">Appendix: Execution Environment by Bundle</a></li>
-  </ol>
-  <h2 id="TargetOperatingEnvironments2">
-    <a
-      class="mozTocH2"
-      name="mozTocId315234" />Target Operating Environments
-  </h2>
-  <p>In order to remain current, each Eclipse Project release targets reasonably current operating environments.</p>
-  <p>Most of the Eclipse SDK is "pure" Java code and has no direct dependence on the underlying operating system. The chief dependence is therefore on the Java Platform itself. Portions are
-    targeted to specific classes of operating environments, requiring their source code to only reference facilities available in particular class libraries (e.g. J2ME Foundation 1.1, J2SE 1.4, Java
-    5, etc).</p>
-  <p>In general, the 4.22 release of the Eclipse Project is developed on Java SE 11 VMs. As such, the Eclipse SDK as a whole is targeted at all modern, desktop Java VMs.</p>
-  <p>
-    <a href="#appendix">Appendix 1</a> contains a table that indicates the class library level required for each bundle.
-  </p>
-  <p>
-    There are many different implementations of the Java Platform running atop a variety of operating systems. We focus our testing on a handful of popular combinations of operating system and Java
-    Platform; these are our <em>reference platforms</em>. Eclipse undoubtedly runs fine in many operating environments beyond the reference platforms we test. However, since we do not systematically
-    test them we cannot vouch for them. Problems encountered when running Eclipse on a non-reference platform that cannot be recreated on any reference platform will be given lower priority than
-    problems with running Eclipse on a reference platform.
-  </p>
-  <p>
-    Eclipse 4.22 is tested and validated on a number of reference platforms. For the complete list, see <a
-      href="https://www.eclipse.org/projects/project-plan.php?planurl=https://www.eclipse.org/eclipse/development/plans/eclipse_project_plan_4_22.xml#target_environments">Target Environments in the
-      4.22 Plan</a>.
-  </p>
-  <p>
-    As stated above, <i>we expect that Eclipse works fine on other current Java VM and OS versions but we cannot flag these as reference platforms without significant community support for testing
-      them.</i>
-  </p>
-  <p>The Eclipse SDK is designed as the basis for internationalized products. The user interface elements provided by the Eclipse SDK components, including dialogs and error messages, are
-    externalized. The English strings are provided as the default resource bundles.</p>
-  <p>Latin-1, DBCS, and BiDi locales are supported by the Eclipse SDK on all reference platforms.</p>
-  <p>The Eclipse SDK supports GB 18030 (level 1), the Chinese code page standard, on Windows, Linux and the Macintosh.</p>
-  <p>German and Japanese locales are tested.</p>
-  <h2 id="Compatibility">
-    <a
-      class="mozTocH2"
-      name="mozTocId569479">Compatibility with Previous Releases</a>
-  </h2>
-  <h3>
-    <a
-      class="mozTocH3"
-      name="mozTocId324309">Compatibility of Release 4.22 with 4.21</a>
-  </h3>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId324309">Eclipse 4.22 is compatible with Eclipse 4.21 (and all earlier 4.x and 3.x versions).</a>
-  </p>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId324309"> <strong>API Contract Compatibility:</strong> Eclipse SDK 4.22 is upwards contract-compatible with Eclipse SDK 4.21 except in those areas noted in the
-    </a><a href="https://www.eclipse.org/eclipse/development/porting/eclipse_4_22_porting_guide.html"><em>Eclipse 4.22 Plug-in Migration Guide</em></a>. Programs that use affected APIs and extension points
-    will need to be ported to Eclipse SDK 4.22 APIs. Downward contract compatibility is not supported. There is no guarantee that compliance with Eclipse SDK 4.22 APIs would ensure compliance with
-    Eclipse SDK 4.21 APIs. Refer to <a href="https://wiki.eclipse.org/Evolving_Java-based_APIs"><em>Evolving Java-based APIs</em></a> for a discussion of the kinds of API changes that maintain contract
-    compatibility.
-  </p>
-  <p>
-    <strong>Binary (plug-in) Compatibility:</strong> Eclipse SDK 4.22 is upwards binary-compatible with Eclipse SDK 4.21 except in those areas noted in the <a
-      href="https://www.eclipse.org/eclipse/development/porting/eclipse_4_22_porting_guide.html"><em>Eclipse 4.22 Plug-in Migration Guide</em> </a>. Downward plug-in compatibility is not supported.
-    Plug-ins for Eclipse SDK 4.22 will not be usable in Eclipse SDK 4.21. Refer to <a href="https://wiki.eclipse.org/Evolving_Java-based_APIs"> <em>Evolving Java-based APIs</em></a> for a discussion of
-    the kinds of API changes that maintain binary compatibility.
-  </p>
-  <p>
-    <strong>Source Compatibility:</strong> Eclipse SDK 4.22 is upwards source-compatible with Eclipse SDK 4.21 except in the areas noted in the <a
-      href="https://www.eclipse.org/eclipse/development/porting/eclipse_4_22_porting_guide.html"><em>Eclipse 4.22 Plug-in Migration Guide</em> </a>. This means that source files written to use Eclipse
-    SDK 4.22 APIs might successfully compile and run against Eclipse SDK 4.21 APIs, although this is not guaranteed. Downward source compatibility is not supported. If source files use new Eclipse SDK
-    APIs, they will not be usable with an earlier version of the Eclipse SDK.
-  </p>
-  <p>
-    <strong>Workspace Compatibility:</strong> Eclipse SDK 4.22 is upwards workspace-compatible with earlier 3.x and 4.x versions of the Eclipse SDK unless noted. This means that workspaces and projects
-    created with Eclipse SDK 4.21, 4.20, 4.19, 4.18, 4.17, 4.16, 4.15, 4.14, 4.13, 4.12, 4.11, 4.10, 4.9, 4.8, 4.7, 4.6, 4.5 and 4.4 can be successfully opened by Eclipse SDK 4.22 and upgraded to a 4.22 workspace. This includes both hidden metadata, which is localized to a
-    particular workspace, as well as metadata files found within a workspace project (e.g., the .project file), which may propagate between workspaces via file copying or team repositories. Individual
-    plug-ins developed for Eclipse SDK 4.22 should provide similar upwards compatibility for their hidden and visible workspace metadata created by earlier versions; 4.22 plug-in developers are
-    responsible for ensuring that their plug-ins recognize metadata from earlier versions and process it appropriately. User interface session state may be discarded when a workspace is upgraded.
-    Downward workspace compatibility is not supported. A workspace created (or opened) by a product based on Eclipse 4.22 will be unusable with a product based on an earlier version of Eclipse. Visible
-    metadata files created (or overwritten) by Eclipse 4.22 will generally be unusable with earlier versions of Eclipse.
-  </p>
-  <p>
-    <strong>Non-compliant usage of API's</strong>: All non-API methods and classes, and certainly everything in a package with "internal" in its name or x-internal in the bundle manifest entry, are
-    considered implementation details which may vary between operating environment and are subject to change without notice. Client plug-ins that directly depend on anything other than what is
-    specified in the Eclipse SDK API are inherently unsupportable and receive no guarantees about compatibility within a single release much less with earlier releases. Refer to <a
-      href="https://www.eclipse.org/articles/Article-API-Use/index.html"> <em>How to Use the Eclipse API</em></a> for information about how to write compliant plug-ins.
-  </p>
-  <h2 id="KnownIssues">
-    <a
-      class="mozTocH2"
-      name="mozTocId214943">Known Issues</a>
-  </h2>
-  <p>
-    <a
-      class="mozTocH2"
-      name="mozTocId214943"> Note: Bug numbers refer to the Eclipse project bug database at </a><a href="http://dev.eclipse.org/bugs/">http://bugs.eclipse.org/bugs/</a>
-  </p>
-  <h3 id="I-General-Startup">
-    <a
-      class="mozTocH3"
-      name="mozTocId559320">General - Startup</a>
-  </h3>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId693657">Installation/Configuration issues that can cause Eclipse to fail start</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId693657">Here are some common problems that can cause Eclipse not to start:</a>
-  </p>
-  <ul>
-      <li>Running Eclipse with Java SE 11 and above may require additional configuration. Please refer to <a href="https://wiki.eclipse.org/Configure_Eclipse_for_Java_9">this page</a> for more details.</li>
-    <li><a
-      class="mozTocH4"
-      name="mozTocId693657">As shown </a><a href="#TargetOperatingEnvironments">above</a>, Eclipse 4.22 requires at least a Java SE 11. Perhaps an older version of the VM is being found in your path. To
-      explicitly specify which VM to run with, use the Eclipse <code>-vm</code> command-line argument. (See also the <a href="#RunningEclipse">Running Eclipse</a> section below.)</li>
-    <li>Eclipse must be installed to a clean directory and not installed over top of a previous installation. If you have done this then please re-install to a new directory. If your workspace is
-      in a child directory of your old installation directory, then see the instructions below on "<a href="#Upgrading">Upgrading Workspace from a Previous Release"</a>.
-    </li>
-    <li>Java sometimes has difficulty detecting whether a file system is writable. In particular, the method java.io.File.canWrite() appears to return true in unexpected cases (e.g., using
-      Windows drive sharing where the share is a read-only Samba drive). The Eclipse runtime generally needs a writable configuration area and as a result of this problem, may erroneously detect the
-      current configuration location as writable. The net result is that Eclipse will fail to start and depending on the circumstances, may fail to write a log file with any details. To work around
-      this, we suggest users experiencing this problem set their configuration area explicitly using the <code>-configuration</code> command line argument. (bug <a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=67719">67719</a>)
-    </li>
-  </ul>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId337416"> <b>Invalid characters in install directory prevents Eclipse from starting</b>
-    </a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId337416"> Eclipse will fail to launch if installed in a directory whose path contains certain invalid characters, including :%#&lt;&gt;"!. The workaround is to install Eclipse
-      in a directory whose path does not contain invalid characters. (bugs </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=3109">3109</a> and <a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=17281">17281</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId639565">Hanging during class loading when out of permanent generation memory</a>
-  </h4>
-  <h3 id="I-Platform-Ant">
-    <a
-      class="mozTocH3"
-      name="mozTocId324774">Platform - Ant</a>
-  </h3>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId480194">Custom Ant tasks and Ant types must be separate from plug-in library JARs</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId480194"> Including the class files for custom Ant tasks or Ant types in the regular code JAR for your plug-in causes problems. These class files must be provided in a separate
-      JAR that is contributed to the <code>org.eclipse.ant.core.antTasks</code> or <code>antTypes</code> extension point (and not declared as a library in the plug-in's manifest). This ensures that
-      the Ant tasks and types are loaded by the special Ant class loader and not by a plug-in classloader. (bug
-    </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=34466">34466</a>).
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId912215">XDoclet support from within Eclipse</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId912215"> Since there are differences when running Ant from the commandline and within Eclipse, some extra steps may be needed to have XDoclet support function correctly within
-      Eclipse. Problems may occur creating XDoclet subtasks. The workarounds and full discussion can be found in bug report. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=37070">37070</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId31051">Ant Editor code completion based on Ant 1.6.x</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId31051"> Code completion provided by the Ant editor does not respect the user-specified version of org.eclipse.ant.core plug-in or ANT_HOME. Code completion proposals are mostly
-      based on Ant 1.6.x with some updates to Ant 1.8.3 (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=193046">bug 193046</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId925603">Setting build loggers not supported when debugging Ant builds</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId925603"> When debugging Ant builds within Eclipse, setting <code>-logger</code> as a program argument will be ignored.
-    </a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId669417">Renaming an External Tool builder set to run during auto-build will cause errors</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId669417"> If you rename an existing external tool builder that is configured to run during auto-builds, you will get the following error: Errors during build. Errors running
-      builder "Integrated External Tool Builder" on project &lt;PROJECT_NAME&gt;. The builder launch configuration could not be found. The workaround is to first disable the builder for auto-builds
-      and then rename the builder. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=118294">118294</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId772119">Slow typing/saving of the Ant editor with imports that define numerous macrodefs</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId772119"> The Ant editor is slow on saving with buildfiles that have &lt;import&gt; declarations of buildfiles that have numerous &lt;macrodef&gt;s. See bug </a><a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=125117">125117</a> for a possible workaround
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId715004">Ant 1.8.x reports missing libraries as build failures</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId715004"> In Ant 1.8.x, if you try to use a task that requires additional libraries and you do not have the libraries on the Ant classpath, the build will now properly report as
-      failed. In previous versions of Ant, the build would still report that it had succeeded even though it actually failed to run any of the tasks from additional bundles. See </a><a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=344518">bug 344518</a>.
-  </p>
-  <p>
-    For more information on tasks that require additional bundles please refer to the <a href="https://archive.apache.org/dist/ant/RELEASE-NOTES-apache-ant-1.8.2.html">Ant 1.8.2 release notes</a> and
-    the <a href="http://ant.apache.org/manual/install.html#optionalTasks">Optional Tasks</a> section in the Ant manual.
-  </p>
-  <h3 id="I-Platform-User-Assistance">
-    <a
-      class="mozTocH3"
-      name="mozTocId876322">Platform - User Assistance</a>
-  </h3>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId828477">Welcome page not displayed properly (Linux/Unix)</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId828477"> The default Welcome implementation is HTML-based and requires a supported browser in order to work. If no supported browser can be found, Welcome falls back to its
-      Forms-based implementation, which has a different (simpler) appearance. Consult the </a><a href="https://www.eclipse.org/swt/faq.php#browserplatforms">SWT FAQ</a> for supported browsers and setting
-    up your browser to work with eclipse.
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId26110">Help browser tool bar buttons do not work for some documents</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId26110"> The Help browser's Print, Synchronize, and Bookmark buttons do not work for pages that are not actually installed with the product. However, you can always use the
-      print command in the browser's context menu to print the page you're reading. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=44216">44216</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId324012">Help documents not displayed in a browser or very slow document loading (Windows only)</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId324012">If your LAN settings are not properly configured for local host access, your Help browser might open to a blank page or display an HTTP error instead of a help page, or
-      you may experience long delays when loading help documents. Your system administrator can configure your LAN settings so that help documents can be accessed from the local help server.</a>
-  </p>
-  <blockquote>
-    <ol>
-      <li><a
-        class="mozTocH4"
-        name="mozTocId324012">In the Control Panel, open <b>Internet Options</b>, select the <b>Connections</b> tab and choose <b>LAN Settings</b>.
-      </a></li>
-      <li><a
-        class="mozTocH4"
-        name="mozTocId324012">If your host was configured to use DHCP for IP assignment, make sure that the "Automatically detect settings" check box is cleared.</a></li>
-      <li><a
-        class="mozTocH4"
-        name="mozTocId324012">If you use a proxy server, ensure that the "Bypass proxy server for local addresses" is selected.</a></li>
-      <li><a
-        class="mozTocH4"
-        name="mozTocId324012">In "Advanced" settings for proxies, add "127.0.0.1;localhost" to the "Exceptions" if these addresses are not listed.</a></li>
-      <li><a
-        class="mozTocH4"
-        name="mozTocId324012">If you are using an automatic configuration script for proxy settings, and are not sure that the script is correct, clear the "Use automatic configuration script"
-          check box.</a></li>
-    </ol>
-  </blockquote>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId227368">Working disconnected from the network (Windows only)</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId227368"> If you are experiencing problems when not connected to the network, you must install the loopback adapter from the Windows installation CD. (bug </a><a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=831">831</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId121403">Using Internet Explorer in offline mode (Windows only)</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId121403">If you have been using Internet Explorer in Offline mode, when you access the help system you will get a message indicating that the web page you requested is not
-      available offline or a blank page will display. Click <b>Connect</b> or deselect "Work Offline" in the Internet Explorer "File" menu to return the system behavior to normal.
-    </a>
-  </p>
-  <h3 id="I-Platform-UI">
-    <a
-      class="mozTocH3"
-      name="mozTocId683637">Platform - UI</a>
-  </h3>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId348035">Dirty state not tracked properly for OLE documents (Windows only)</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId348035"> The dirty state for an OLE document is not updated properly. This causes Eclipse to prompt to save the contents of the editor when the document is closed, even if the
-      contents have already been saved. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=2564">2564</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId878052">OLE document crashes can cause Eclipse to also crash (Windows only)</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId878052">If an OLE document crashes, Eclipse can crash, or the workbench menus can become inconsistent.</a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId452707">Toolbars only containing contributed controls exhibit display errors on Mac/Linux</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId452707"> Currently there is no way on the Max or Linux platforms to define the <b>height</b> for controls contributed to toolbars, nor will those platforms respect the size
-      returned by the control's <code>computeSize</code> method. If you encounter this issue there is currently no truly viable workaround. (bug
-    </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=183003">183003</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId443682">Allocating enough memory and solving OutOfMemoryError</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId443682"> The native launcher checks the JVM but PDE launches simply use java and don't go through the native launchers. The workaround is to add the appropriate JVM arg to your
-      launch config or to the <i>Preferences &gt; Java &gt; Installed JREs</i>. (bug
-    </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=339763">339763</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId862142">Capabilities and Activities don't affect the menus and toolbars</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId862142"> Capabilities used to hide GUI elements like menu entries work for commands and individual actionSet entries, but Capabilities have not been fully implemented. (bug </a><a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=359778">359778</a>)
-  </p>
-  <h3 id="I-Platform-SWT">
-    <a
-      class="mozTocH3"
-      name="mozTocId554478">Platform - SWT</a>
-  </h3>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId565691">Support for macOS 11 (Big Sur)</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId565691">Eclipse/SWT 4.22 supports macOS 11 (Big Sur). Most of issues that were identified have been addressed in 4.22.
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId534426">Usage of swt.autoScale and GDK_SCALE flag on GTK platforms</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId534426">With new implementation of hi-dpi support we are directly working with GTK3. So the users may see non-uniform scaling when you use swt.autoScale and GDK_SCALE flags. 
-      Workaround is to set the scalefactor in display settings.</a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId554478">Non-uniform scaling of text vs. icons when using intermediate scaling factors on high-DPI displays</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId554478">Eclipse automatically scales images on high-DPI monitors based on the resolution of the monitor. However, this scaling works only with integer scaling factors like
-      100%, 200% etc by default. So, at intermediate scaling factors like 150%, 175% etc., its likely that the icons and text are scaled differently as the text scaling is handled directly by the
-      operating system.</a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId69222">Eclipse plug-in based on the SWT Browser throws exception</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId69222"> The SWT Browser widget uses a platform-specific web browser to render HTML. The org.eclipse.swt.SWTError exception ("No more handles") is thrown on platforms that don't
-      meet the requirements for running the Browser widget. Supported platforms and prerequisites are listed on the SWT FAQ item </a><a href="https://www.eclipse.org/swt/faq.php#browserplatforms">
-      "Which platforms support the SWT Browser?"</a>.
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId238090">Eclipse icon is duplicated in task-bar on Windows</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId238090"> Workaround is to pin the launched eclipse application and not the launcher, for more details, refer bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=314805">314805</a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId414883">BIDI Segments in Text controls</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId414883"> BIDI Segments in Text controls only work on Windows and GTK. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=388578">388578</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId518357">Block Selection functionality provided by StyledText is not BIDI aware</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId518357"> When the orientation of characters under the left and right edges of the block selection rectangle are not the same, the actual selection ranges (in memory) differ
-      from the visual representation of the selection. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=277929">277929</a>)
-  </p>
-  <h3 id="I-Platform-Team-CVS">
-    <a
-      class="mozTocH3"
-      name="mozTocId263012">Platform - Team - CVS</a>
-  </h3>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId263012"> The following are known problems with the CVS repository provider only, and do not apply to other repository providers. Additional information on how to use CVS from
-      Eclipse can be found in the </a><a href="https://wiki.eclipse.org/CVS_FAQ">Eclipse CVS FAQ</a>.
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId262771">CVS server compatibility</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId262771">The CVS plug-in parses messages returned from the CVS server. If the format of these messages is not as expected, some of the plug-in's functionality may be missing.
-      The CVS plug-in is compatible with all stable 1.11.X builds of the CVS server, and should be compatible with future releases in that stream unless text message formats change (the last tested
-      server was 1.11.22). As for the 1.12.X feature releases of CVS, the Eclipse CVS client has been tested with builds up to 1.12.13. However, future releases could easily break the Eclipse CVS
-      client. Basic functionality, such as Checkout, Commit, and Update, should always work, but there may be problems with more advanced commands such as Synchronizing and Browsing the repository.</a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId532855">Connection cannot be found after initially missing</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId532855"> If a connection initially fails due to a network problem, the connection may continue to fail even when the network problem is fixed. In order to establish the
-      connection you must exit and restart Eclipse. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=9295">9295</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId660590">Received broken pipe signal" error from server</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId660590"> Eclipse sometimes performs multiple commands within a single connection to the server. This may cause problems with CVS servers that are running server scripts in
-      response to certain commands. (bugs </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=23575">23575</a> and <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=23581">23581</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId971246">Terminated with fatal signal 10" error from server</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId971246"> There is a bug in the CVS server related to some compression levels. If you get this error, changing the compression level on the CVS preference page may help. (bug </a><a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=15724">15724</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId689776">error using ext connection method</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId689776"> There are a few situations that can result in an "Unknown response" error messages when using the ext connection method. One situation involves using an external
-      communications client (e.g. rsh or ssh) that adds CRs to the communications channel (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=21180">21180</a>). Another involves Eclipse not
-    properly reading the stderr output of the external communications tool. (bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=11633">11633</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId50418">A disabled CVS capability may not be auto-enabled in existing workspaces</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId50418"> New in 3.0 is the ability to disable capabilities and the CVS support in Eclipse can be disabled. However, for backwards compatibility the CVS capability is
-      auto-enabled in existing workspaces that already contain CVS projects. The auto-enabling function may not run if the team support plugin is not loaded at startup. (bug </a><a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=66977">66977</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId533799">Builder output files may appear as changed</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId533799">When folders containing build output are shared they may get improperly marked as dirty when build output is generated.</a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId253283">Enabling GNOME proxy support</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId253283"> GNOME applications can make use of proxy settings defined in this environment. If set, Eclipse will use it prior to proxy settings declared using env variables. This
-      feature is disabled by default, to enable it launch Eclipse with <code>"-Dorg.eclipse.core.net.enableGnome"</code> switch. That is,
-    </a>
-  </p>
-  <pre>
-    <a
-      class="mozTocH4"
-      name="mozTocId253283">eclipse -Dorg.eclipse.core.net.enableGnome</a>
-  </pre>
-  <h3 id="I-Platform-Install-Update">
-    <a
-      class="mozTocH3"
-      name="mozTocId805874">Platform - Install/Update</a>
-  </h3>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId914600">Manually installing features and plug-ins on a FAT file system (Windows only)</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId914600">When features and plug-ins are manually installed on top of an Eclipse-based product install located on a FAT file system that has already been run at least once, the
-      product must be explicitly restarted with -clean. That is,</a>
-  </p>
-  <pre>
-    <a
-      class="mozTocH4"
-      name="mozTocId914600">eclipse.exe -clean</a>
-  </pre>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId648565">Connecting to untrusted sites using https</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId648565">You cannot install or update software from a site using https whose certificate is not chained to a trusted root certificate in your local certificate store. This
-      typically means the server is using a self-signed certificate, or a certificate authenticated by an unknown third party.</a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId104394">Extension location is lost if the install path changes</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId104394"> A previously configured extension location may be temporarily removed if the install is moved or mounted under a different path. This only happens when the link file
-      that configures the extension location uses a relative path that points to a directory under the Eclipse install. On a second startup using the same install path, the extension location is added
-      again (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=95403">95403</a>).
-  </p>
-  <h3 id="I-JDT">
-    <a
-      class="mozTocH3"
-      name="mozTocId428861">Java development tools (JDT)</a>
-  </h3>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId577868">Cut, copy, paste not working for linked resources in views showing Java elements</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId577868"> The cut, copy, and paste actions do not work for linked files and folders appearing in views that show Java elements, including the Package Explorer. The workaround is
-      to use these actions from the Navigator view instead. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=34568">34568</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId554543">Java working sets not working correctly for elements from JRE system library container</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId554543"> Applying a working set consisting entirely of elements from the JRE System library container as a filter to the packages view might result in an empty Package
-      Explorer. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=30442">30442</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId440090">Suspend on uncaught exception overrides exception breakpoint location filters</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId440090"> Exception breakpoints can be configured with location filters (inclusive and exclusive). When an unchecked exception is configured to <b>not</b> suspend execution in a
-      specific class, execution will still suspend when the user preference to suspend on uncaught exceptions is on. (bug
-    </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=66770">66770</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId812347">Running Java programs with non-Latin-1 characters in package or class names</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId812347">You get a <code>java.lang.NoClassDefFoundError</code> when running Java programs with non-Latin characters in the package or class names. The workaround is to package
-      the class files as a JAR file and run the program out of the JAR and not from the file system directly. (bug
-    </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=4181">4181</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId638407">Cannot run or debug class in a project with GB18030 characters in project name</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId638407"> Most class libraries do not properly support the creation of a system process (via <code>java.lang.Runtime.exec(...)</code> ) when the specified command line contains
-      GB18030 characters. This limitation means the debugger cannot launch applications when the command line it generates contains GB18030 characters. (bug
-    </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=32206">32206</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId994970">Cannot detect installed JRE with GB18030 characters in path name</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId994970"> Automatic JRE detection fails when the JRE is stored in a directory containing GB18030 characters in its name. (bug </a><a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=33844">33844</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId324283">Cannot generate Javadoc for packages with GB18030 characters in the name</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId324283"> Most class libraries do not properly support the creation of a system process (via <code>java.lang.Runtime.exec(...)</code> ) when the specified command line contains
-    </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=32215">32215</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId524553">Unable to debug stack overflows</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId524553"> If a debug session suspends on a <code>java.lang.StackOverflowError</code> exception (due to an exception breakpoint), the debugger may not be able to retrieve any
-      debug information from the target JVM. As well, the debugger may not be able to reliably interact with the target JVM past this point. (bug
-    </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=19217">19217</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId162517">Evaluation limitation</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId162517"> The debugger uses threads in the target JVM to perform evaluations (both explicit evaluations that the user requests, and implicit evaluations such as <code>toString()</code>
-      invocations in the <b>Variables</b> view). The Java Debug Interface (JDI) requires that the thread in which an evaluation is performed be suspended by a user event (that is, a breakpoint or step
-      request). Evaluations cannot be performed on threads suspended by the suspend action. As well, when a breakpoint is configured to suspend the JVM rather than just the individual thread, the
-      threads which did not encounter the breakpoint are not in a valid state to perform an evaluation. When an evaluation is attempted in a thread that is not in a valid state to perform an
-      evaluation, an error message will appear to the effect of "Thread must be suspended by step or breakpoint to perform method invocation". (bug
-    </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=34440">34440</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId408387">Missing debug attributes</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId408387">The debugger requires that class files be compiled with debug attributes if it is to be able to display line numbers and local variables. Quite often, class libraries
-      (for example, " <code>rt.jar</code> ") are compiled without complete debug attributes, and thus local variables and method arguments for those classes are not visible in the debugger.
-    </a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId330034">Using Hot Code Replace</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId330034">Hot code replace is supported on JDK 1.4.x VMs, and IBM J9 VMs. The debugger will attempt to replace all class files that change in the workspace as the user edits and
-      builds source code. However, hot code replace is limited to changes that a particular virtual machine implementation supports. For example, changes within existing methods may be supported, but
-      the addition or removal of members may not be.</a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId976120">Scrapbook</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId976120">Setting a breakpoint inside a scrapbook page is not supported.</a>
-  </p>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId976120"> When a snippet is run in the scrapbook which directly or indirectly calls <code>System.exit(int)</code> , the evaluation cannot be completed, and will result in a
-      stack trace for a <code>com.sun.jdi.VMDisconnectedException</code> being displayed in the scrapbook editor.
-    </a>
-  </p>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId976120"> Terminating a scrapbook page while it is performing an evaluation results in a <code>com.sun.jdi.VMDisconnectedException</code> being displayed in the scrapbook
-      editor.
-    </a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId666507">Debugging over slow connections</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId666507">A global Java debug preference specifies the debugger timeout, which is the maximum amount of time the debugger waits for a response from the target VM after making a
-      request of that VM. Slow connections may require that this value be increased. The timeout value can be edited from the <b>Java &gt; Debug </b>preference page. Changing the timeout value only
-      affects subsequently launched VM, not VMs that are already running.
-    </a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId207158">Updating of inspected values</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId207158">When inspecting the result of an evaluated expression in the debugger, it is important to note that the result displayed is the result of that expression at the time it
-      was evaluated. For example, when inspecting a simple integer counter (primitive data type), the value displayed in the Expressions view is the value when the expression was evaluated. As the
-      counter is changed in the running program, the inspected result will not change (since the view is not displaying the value bound to a variable - it is displaying the value of an expression, and
-      the value of a primitive data type cannot change). However, if an expression results in an object, fields of that object will be updated in the inspector as they change in the running program
-      (since the value bound to fields in an object can change).</a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId821393">Stepping over native methods that perform I/O</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId821393">When the debugger steps over native methods that perform I/O to <code>System.out</code> or <code>System.err</code>, the output may not appear immediately unless the
-      native performs a flush on the output buffer.
-    </a>
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId724969">VM and process termination running on IBM 1.3 JVM on Linux (Linux only)</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId724969">Terminating a launch, debug target, or system process associated with a debug target running on the IBM 1.3 JVM on the Linux platform does not work when the associated
-      debug target has a suspended thread. To remove such debug targets from the debug UI, select <b>Terminate and Remove</b> from the debug view's pop-up menu (or use the shortcut "delete" key).
-      Associated system processes in the OS may not be properly cleaned up. If a debug target has no suspended threads, termination works properly. (bug
-    </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=1631">1631</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId188069">Java indexing encounters problems when a folder is used both as a source and a class folder</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId188069"> Java indexing encounters problems when a folder is used both as a source folder in a project and as a class folder in another project. Hence, when this peculiar setup
-      is used, the Java Search might miss matches located in such a folder. To avoid this kind of problem, it is strongly advised to use different folders for sources and binary classes. (bug </a><a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=309903">309903</a>)
-  </p>
-  <h3 id="I-PDE">
-    <a
-      class="mozTocH3"
-      name="mozTocId25456">Plug-in Development Environment (PDE)</a>
-  </h3>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId179699">Feature manifest editor does not preserve all comments</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId179699"> When a non-source page of the feature manifest editor is used, PDE will convert changes back into XML by regenerating the file. Although the overall content and most
-      of the comments are preserved, some comments may be lost. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=59502">59502</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId243421">PDE will not unzip source zips of some plug-ins</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId243421"> In the plug-in import wizard, when you choose to import plug-ins as "projects with source folders", PDE will not unzip the source for the org.apache.ant. This is
-      because the source ZIPs contains code that will not compile when unzipped as it requires additional JARs that are not part of the SDK. To avoid the creation of plug-in projects that won't
-      compile, PDE will import these plug-ins as binary and attach source, so you would still be able to read the source, you just won't be able to modify it. Also, PDE will not unzip the source for
-      the org.eclipse.swt plug-ins. In this case, it is because, when shipped, the swt code is spread across a plug-in and a fragment, and when unzipped, it will require circular dependencies between
-      the plug-in and fragment projects. These circular dependencies are at minimum marked as warnings by the JDT compiler and may result in unpredictable build behavior. Therefore, PDE always imports
-      org.eclipse.swt as binary with source attached. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=66314">66314</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId722932">Emacs key bindings do not work in manifest editor fields</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId722932"> Non-default key bindings currently do not work in fields on non-source pages of the PDE manifest editors. (bug </a><a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=19482">19482</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId828449">Export of plug-in may silently drop classes</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId828449"> When exporting a plug-in using the plug-in, feature or product wizards, some classes might be dropped from the resulting archive if their fully qualified name is too
-      long. This typical path limitation can be worked around by creating the jar of the problematic plug-in by using the Jar export wizard. (bug </a><a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=97150">97150</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId89714">Compilation errors when exporting projects not stored outside of the workspace</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId89714"> When exporting multiple plug-ins and one is stored outside of the workspace, compile errors occurs on export. To work around the problem, you can either export the
-      plug-ins one by one, or change their location. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=98579">98579</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId270371">Headless build needs to be run from a fully qualified path</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId270371"> When running a headless build using the scripts provided by pde build, the properties <code>builder</code> and <code>buildDirectory</code> must refer to a fully
-      qualified path. (bug
-    </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=139554">139554</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId73293">Importing in Eclipse application fails if plug-in exists in host workspace</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId73293"> When running an Eclipse application (self-hosting) importing plug-ins will not work correctly if the plug-in being imported exists in the host Eclipse's workspace. This
-      is because PDE modifies the target platform of the application to point at the running plug-ins from the host (target weaving). This also affects the PDE test suite. (bug </a><a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=294005">294005</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId914239">Reusing a workspace after changing architectures silently breaks PDE models</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId914239"> If a workspace is reused on a machine with a different architecture, the PDE models used to build plug-ins may silently fail. To work around this problem, delete the
-      metadata in &lt;workspace&gt;/.metadata/.plugins/org.eclipse.pde.core. (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=350172">350172</a>)
-  </p>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId624312">Missing @since tag API Tools problems on interface fields containing @noreference tag</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId624312"> The Eclipse platform 4.6 release will not allow the API Tools @noreference tag on interface fields. This was changed because all interface fields are constant fields
-      that cannot support the @noreference restriction. The tag was allowed in previous releases and this usage will now be considered an API change requiring a @since tag. It is recommended that you
-      create an API Tools filter for the missing @since tag problem. This filter can be removed as soon as the API baseline has been regenerated. (bug </a><a
-      href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=402393">402393</a>)
-  </p>
-  
-  <h2 id="RunningEclipse">
-    <a
-      class="mozTocH2"
-      name="mozTocId19817">Running Eclipse</a>
-  </h2>
-  <p>
-    <a
-      class="mozTocH2"
-      name="mozTocId19817"> After installing the Eclipse SDK in a directory, you can start the Workbench by running the Eclipse executable included with the release (you also need a Java SE 11 JRE,
-      not included with the Eclipse SDK). With Oomph users can install required JRE courtesy of <a href="https://www.eclipse.org/justj/">JustJ</a>. On Windows, the executable file is called <samp>eclipse.exe</samp> , and is located in the <code>eclipse</code> sub-directory of the install. If installed at
-      <code>c:\eclipse-SDK-4.22-win64</code> , the executable is <code>c:\eclipse-SDK-4.22-win64\eclipse\eclipse.exe</code> . <b>Note:</b> Set-up on most other operating environments is analogous.
-      Special instructions for Mac OS X are listed
-    </a><a href="#macosx">below</a>.
-  </p>
-  <h3>
-    <a
-      class="mozTocH3"
-      name="mozTocId60052">Allocating enough memory and solving OutOfMemoryErrors</a>
-  </h3>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId60052"> By default, Eclipse will allocate up to 1024 megabytes of Java heap memory. This should be ample for all typical development tasks. However, depending on the JRE that
-      you are running, the number of additional plug-ins you are using, and the number of files you will be working with, you could conceivably have to increase this amount. Eclipse allows you to pass
-      arguments directly to the Java VM using the <code>-vmargs</code> command line argument, which must follow all other Eclipse specific arguments. Thus, to increase the available heap memory, you
-      would typically use:
-    </a>
-  </p>
-  <blockquote>
-    <p>
-      <a
-        class="mozTocH3"
-        name="mozTocId60052"> <code>eclipse -vmargs -Xmx&lt;memory size&gt;</code>
-      </a>
-    </p>
-  </blockquote>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId60052"> with the <code>&lt;memory size&gt;</code> value set to greater than "1024M" (1024 megabytes -- the default).
-    </a>
-  </p>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId60052">Note that setting memory sizes to be near or larger than the amount of available physical memory on your machine will cause Java to "thrash" as it copies objects back
-      and forth to virtual memory, which will severely degrade your performance.</a>
-  </p>
-  <h3>
-    <a
-      class="mozTocH3"
-      name="mozTocId735187">Selecting a workspace</a>
-  </h3>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId735187"> When the Workbench is launched, the first thing you see is a dialog that allows you to select where the workspace will be located. The workspace is the directory where
-      your work will be stored. If you do not specify otherwise, Eclipse creates the workspace in your user directory. This workspace directory is used as the default content area for your projects as
-      well as for holding any required metadata. For shared or multi-workspace installs you must explicitly specify the location for your workspace using the dialog (or via the " <code>-data</code> "
-      command line argument).
-    </a>
-  </p>
-  <h3>
-    <a
-      class="mozTocH3"
-      name="mozTocId620725">Specifying the Java virtual machine</a>
-  </h3>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId620725">Here is a typical Eclipse command line:</a>
-  </p>
-  <blockquote>
-    <p>
-      <a
-        class="mozTocH3"
-        name="mozTocId620725"> <code>eclipse -vm c:\jdk11\bin\javaw</code>
-      </a>
-    </p>
-  </blockquote>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId620725"> <i>Tip:</i> It's generally a good idea to explicitly specify which Java VM to use when running Eclipse. This is achieved with the " <code>-vm</code> " command line
-      argument as illustrated above. If you don't use " <code>-vm</code> ", Eclipse will look on the OS path. When you install other Java-based products, they may change your path and could result in
-      a different Java VM being used when you next launch Eclipse.
-    </a>
-  </p>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId620725">To create a Windows shortcut to an installed Eclipse:</a>
-  </p>
-  <ol>
-    <li><a
-      class="mozTocH3"
-      name="mozTocId620725">Navigate to <code>eclipse.exe</code> in Windows Explorer and use Create Shortcut on the content menu.
-    </a></li>
-    <li><a
-      class="mozTocH3"
-      name="mozTocId620725">Select the shortcut and edit its Properties. In the Target: field append the command line arguments.</a></li>
-  </ol>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId620725">Opening this shortcut launches Eclipse. (You can drag the shortcut to the Windows Desktop if you want to keep it in easy reach.)</a>
-  </p>
-  <h3 id="macosx">
-    <a
-      class="mozTocH3"
-      name="mozTocId928700">Mac OS X</a>
-  </h3>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId928700"> On Mac OS X, you start Eclipse by double clicking the Eclipse application. If you need to pass arguments to Eclipse, you'll have to edit the <code>eclipse.ini</code>
-      file inside the Eclipse application bundle: select the Eclipse application bundle icon while holding down the Control Key. This will present you with a popup menu. Select "Show Package Contents"
-      in the popup menu. Locate <code>eclipse.ini</code> file in the <code>Contents/Eclipse</code> sub-folder and open it with your favorite text editor to edit the command line options.
-    </a>
-  </p>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId928700"> On MacOS X you can only launch a UI program more than once if you have separate copies of the program on disk. The reason for this behavior is that every UI
-      application on Mac can open multiple documents, so typically there is no need to open a program twice. Since Eclipse cannot open more than one workspace, this means you have to make a copy of
-      the Eclipse install if you want to open more then one workspace at the same time (bug </a><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=139319">139319</a>).
-  </p>
-  <p>If you need to launch Eclipse from the command line, you can create a symbolic link such as "eclipse". It should point to the eclipse executable inside the application bundle and takes the
-    same arguments as "eclipse.exe" on other platforms.</p>
-  <p>On Mac OS X 10.4 and later, you may notice a slow down when working with significant numbers of resources if you allow Spotlight to index your workspace. To prevent this, start System
-    Preferences, select the Spotlight icon, then the Privacy tab, then click the Add button ("+") and find your workspace directory in the dialog that appears.</p>
-  <h3 id="SharedInstall">
-    <a
-      class="mozTocH3"
-      name="mozTocId221199">Shared Install</a>
-  </h3>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId221199"> The startup speed of a shared install can be improved if proper cache information is stored in the shared install area. To achieve this, after unzipping Eclipse
-      distribution, run Eclipse once with the "-initialize" option from an account that has a write access to the install directory. See </a><a
-      href="%20https://help.eclipse.org/luna/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fmisc%2Fmulti_user_installs.html">shared installs</a> in Eclipse Help for more information.
-  </p>
-  <h2 id="Upgrading">
-    <a
-      class="mozTocH2"
-      name="mozTocId575572">Upgrading Workspace from a Previous Release</a>
-  </h2>
-  <h3>
-    <a
-      class="mozTocH3"
-      name="mozTocId401691">Users who don't use "-data"</a>
-  </h3>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId401691">If you weren't previously using "-data" to specify your workspace, follow these steps to upgrade:</a>
-  </p>
-  <ol>
-    <li><a
-      class="mozTocH3"
-      name="mozTocId401691">Find the workspace directory used by your old version of Eclipse. Typically this is located inside the directory in which Eclipse was installed in a sub-directory
-        called "<code>workspace</code>". If you are using a shortcut or script to launch Eclipse, then it will be under the current working directory of that shortcut or script in a sub-directory
-        called "workspace". For Windows users, this is specified by the "Start in:" argument in your shortcut properties.
-    </a></li>
-
-    <li><a
-      class="mozTocH3"
-      name="mozTocId401691">Copy this workspace directory to a new, empty location outside of any Eclipse install directory.</a></li>
-    <li><a
-      class="mozTocH3"
-      name="mozTocId401691">Install the new version of Eclipse in a new location, separate from any old version of Eclipse.</a></li>
-    <li><a
-      class="mozTocH3"
-      name="mozTocId401691">If you had installed additional features and plug-ins into your old Eclipse, you should re-install them in the new Eclipse.</a></li>
-    <li><a
-      class="mozTocH3"
-      name="mozTocId401691">Start this new version of Eclipse and select this location using the workspace chooser dialog at startup (or use "<code>-data</code>" command line argument to
-        pre-select the workspace location).
-    </a></li>
-  </ol>
-  <h3>
-    <a
-      class="mozTocH3"
-      name="mozTocId197750">Users who do use "-data"</a>
-  </h3>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId197750"> If you were previously using the " <code>-data</code> " argument to start Eclipse, your upgrade path is much easier:
-    </a>
-  </p>
-  <ol>
-    <li><a
-      class="mozTocH3"
-      name="mozTocId197750">Optionally copy your workspace directory to a new, empty location outside of any Eclipse install directory as a backup.</a></li>
-    <li><a
-      class="mozTocH3"
-      name="mozTocId197750">Install the new version of Eclipse in a new location, separate from any old versions of Eclipse.</a></li>
-    <li><a
-      class="mozTocH3"
-      name="mozTocId197750">If you had installed additional features and plug-ins into your old Eclipse, you should re-install them in the new Eclipse.</a></li>
-    <li><a
-      class="mozTocH3"
-      name="mozTocId197750">Start this new version of Eclipse and select this location using the workspace chooser dialog at startup (or use "<code>-data</code>" command line argument to
-        pre-select the workspace location).
-    </a></li>
-  </ol>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId197750"> <i>Note:</i> Copying your workspace is recommended because, after you've upgraded your workspace, you won't be able to use it again with an older version of Eclipse.
-      If you ever want to go "back in time" to an earlier release, you will need that backup.
-    </a>
-  </p>
-  <h3>
-    <a
-      class="mozTocH3"
-      name="mozTocId839433">Users who use User Libraries or classpath containers that contain JARs referencing other libraries via Class-Path in the MANIFEST.MF</a>
-  </h3>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId839433">If you want the referenced JAR files to be included in the classpath, you can do one of the following:</a>
-  </p>
-  <ul>
-    <li><a
-      class="mozTocH3"
-      name="mozTocId839433">Add the system property (<code>-DresolveReferencedLibrariesForContainers=true</code>) to the <code>-vmargs</code> list on start-up, or
-    </a></li>
-    <li><a
-      class="mozTocH3"
-      name="mozTocId839433">Manually add the referenced JARs to the User Library or to the project.</a></li>
-  </ul>
-  <h3>
-    <a
-      class="mozTocH3"
-      name="mozTocId623237">Dropped in bundles may not resolve after upgrade</a>
-  </h3>
-  <p>
-    <a
-      class="mozTocH3"
-      name="mozTocId623237"> If you have installed bundles by dropping them into the <code>plugins</code> or <code>dropins</code> directory, they might no longer resolve when you upgrade to a new
-      Eclipse Platform version. In each new version of the Eclipse Platform, there are new versions of bundles included in the platform, and often a small number of removed bundles. This may cause
-      your previously dropped in bundles to no longer resolve and run. It is always recommended that you install software via the <code>Help &gt; Install New Software</code> mechanism so you are made
-      aware of any install-time failure to resolve dependencies.
-    </a>
-  </p>
-  <h2 id="InteroperabilityWithPreviousReleases">
-    <a
-      class="mozTocH2"
-      name="mozTocId638978">Interoperability with Previous Releases</a>
-  </h2>
-  <h3>
-    <a
-      class="mozTocH3"
-      name="mozTocId759237">Interoperability of Release 4.22 with previous releases</a>
-  </h3>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId226004">Sharing projects between heterogeneous Eclipse 4.22 and 4.21</a>
-  </h4>
-  <p>Special care is required when a project in a team repository is being loaded and operated on by developers using Eclipse-based products based on different feature or plug-in versions. The
-    general problem is that the existence, contents, and interpretation of metadata files in the workspaces may be specific to a particular feature or plug-in version, and differ between versions. The
-    workspace compatibility guarantees only cover cases where all developers upgrade their Eclipse workspaces in lock step. In those cases there should be no problem with shared metadata. However,
-    when some developers are working in Eclipse 4.22 while others are working in Eclipse 3.x, there are no such guarantees. This section provides advice for what to do and not to do. It addresses the
-    specific issues with the Eclipse SDK.</p>
-  <p>The typical failure mode is noticed by the 4.22 user. 4.21 metadata is lost when a 4.22 user saves changes and then commits the updated metadata files to the repository. Here's how things
-    typically go awry:</p>
-  <ul>
-    <li>A user working in Eclipse 4.22 creates or modifies a project in a way that results in changes to a shared metadata file that rely on 4.22-specific information. The user then commits the
-      updated project files, including the shared metadata file, to the shared repository.</li>
-    <li><a
-      class="mozTocH4"
-      name="mozTocId226004">Another user working in Eclipse 4.21 or earlier shares this project from the same repository. The 4.22-specific information in the shared metadata file is not understood
-        by Eclipse 4.21, and is generally discarded or ignored without warning. The user modifies the project in a way that results in changes to the shared metadata file, causing the shared metadata
-        file to be rewritten without any of the 4.22-specific information. The user commits the updated project files, including the shared metadata file, to the shared repository. The user is
-        generally unaware that shared information has just been lost as a result of their actions.</a></li>
-    <li><a
-      class="mozTocH4"
-      name="mozTocId226004">A user working in Eclipse 4.22 picks up the changes to a project from the shared repository, including the updated shared metadata file. The user may be unaware that
-        they have just taken a retrograde step until later when things start to malfunction.</a></li>
-  </ul>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId226004">Here are some things to watch out for when sharing projects between Eclipse 4.22 and earlier releases:</a>
-  </p>
-  <ul>
-    <li><a
-      class="mozTocH4"
-      name="mozTocId226004"><b>Virtual folders</b> - Eclipse 4.22 supports a notion of <i>virtual folders</i> that did not exist in Eclipse 3.5 or earlier. If such virtual folders are created in
-        4.22, and the project is subsequently loaded into an Eclipse 3.5 or earlier workspace, these folders will not be recognized. Recommendation: avoid creating virtual folders where project
-        compatibility with Eclipse 3.5 or earlier is required.</a></li>
-    <li><a
-      class="mozTocH4"
-      name="mozTocId226004"><b>Resource filters</b> - Eclipse 4.22 supports a notion of <i>resource filters</i> that did not exist in Eclipse 3.5 or earlier. If such filters are added to resources
-        in 4.22, and the project is subsequently loaded into an Eclipse 3.5 or earlier workspace, these filters will not be recognized. Recommendation: avoid creating resource filters where project
-        compatibility with Eclipse 3.5 or earlier is required.</a></li>
-    <li><a
-      class="mozTocH4"
-      name="mozTocId226004"><b>Predefined path variables</b> - Eclipse 4.22 supports a set of built in path variables that can be used as the basis for linked resource locations. Such variables
-        will not be defined automatically in Eclipse 3.5 or earlier. If compatibility with 3.5 or earlier workspace is required, users on 3.5 or earlier workspaces will need to define such path
-        variables manually.</a></li>
-  </ul>
-  <h4>
-    <a
-      class="mozTocH4"
-      name="mozTocId574781">Using Eclipse 4.22 to develop plug-ins that work in Eclipse 4.21</a>
-  </h4>
-  <p>
-    <a
-      class="mozTocH4"
-      name="mozTocId574781"> It is also possible (and reasonable) to use Eclipse 4.22 to develop a plug-in intended to work in Eclipse 4.21 or earlier. Use the <b>Plug-in Development &gt; Target
-        Platform </b>preference page to locate non-workspace plug-ins in an Eclipse 4.21 install. This ensures that the code for your plug-in is being compiled and tested against Eclipse 4.21 APIs,
-      extension points, and plug-ins. (The above list of concerns do not apply since they affect the layout and interpretation of files in the plug-in <i>project</i> but none affect the actual
-      deployed form of the plug-in.)
-    </a>
-  </p>
-  <hr />
-  <p>Sun, Solaris, Java and all Java-based trademarks are trademarks of Oracle Corporation. in the United States, other countries, or both.</p>
-  <p>IBM is a trademark of International Business Machines Corporation in the United States, other countries, or both.</p>
-  <p>Microsoft, Windows, Windows NT, Vista, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both.</p>
-  <p>Apple and Mac OS are trademarks of Apple Computer, Inc., registered in the U.S. and other countries.</p>
-  <p>Other company, product, and service names may be trademarks or service marks of others.</p>
-  <p>(c) Copyright Eclipse Contributors 2009, 2021</p>
-</body>
-</html>
diff --git a/features/org.eclipse.rcp/sourceTemplateFeature/build.properties b/features/org.eclipse.rcp/sourceTemplateFeature/build.properties
deleted file mode 100644
index 51c8c9e..0000000
--- a/features/org.eclipse.rcp/sourceTemplateFeature/build.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2016 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes =\
-feature.xml,\
-feature.properties
diff --git a/features/org.eclipse.rcp/sourceTemplateFeature/feature.properties b/features/org.eclipse.rcp/sourceTemplateFeature/feature.properties
deleted file mode 100644
index d4f763d..0000000
--- a/features/org.eclipse.rcp/sourceTemplateFeature/feature.properties
+++ /dev/null
@@ -1,42 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse RCP Plug-in Developer Resources
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "description" property - description of the feature
-description=Source code zips for the Eclipse RCP.
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2000, 2013 Eclipse contributors and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n\
-\n\
-Contributors:\n\
-    IBM Corporation - initial API and implementation\n
-################ end of copyright property ####################################
\ No newline at end of file
diff --git a/features/org.eclipse.rcp/sourceTemplateFragment/build.properties b/features/org.eclipse.rcp/sourceTemplateFragment/build.properties
deleted file mode 100644
index a56a932..0000000
--- a/features/org.eclipse.rcp/sourceTemplateFragment/build.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = about.html, fragment.xml, src/**, META-INF/
-sourcePlugin = true
-
diff --git a/features/org.eclipse.sdk.examples-feature/.gitignore b/features/org.eclipse.sdk.examples-feature/.gitignore
deleted file mode 100644
index 90c39c2..0000000
--- a/features/org.eclipse.sdk.examples-feature/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-# This comment added to "touch" the project. See bug 396009.
\ No newline at end of file
diff --git a/features/org.eclipse.sdk.examples-feature/.project b/features/org.eclipse.sdk.examples-feature/.project
deleted file mode 100644
index f51ef2f..0000000
--- a/features/org.eclipse.sdk.examples-feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.sdk.examples-feature</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/features/org.eclipse.sdk.examples-feature/.settings/org.eclipse.core.resources.prefs b/features/org.eclipse.sdk.examples-feature/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/features/org.eclipse.sdk.examples-feature/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/features/org.eclipse.sdk.examples-feature/.settings/org.eclipse.core.runtime.prefs b/features/org.eclipse.sdk.examples-feature/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/features/org.eclipse.sdk.examples-feature/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/features/org.eclipse.sdk.examples-feature/build.properties b/features/org.eclipse.sdk.examples-feature/build.properties
deleted file mode 100644
index 752b2a2..0000000
--- a/features/org.eclipse.sdk.examples-feature/build.properties
+++ /dev/null
@@ -1,22 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2016 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = feature.xml,\
-feature.properties
-
-root=rootfiles
-
-# This comment added to "touch" the project. See bug 399400.
-# This comment added to "touch" the project. See bug 398711.
-# This comment added to "touch" the project. See bug 401206.
-
diff --git a/features/org.eclipse.sdk.examples-feature/feature.properties b/features/org.eclipse.sdk.examples-feature/feature.properties
deleted file mode 100644
index a629196..0000000
--- a/features/org.eclipse.sdk.examples-feature/feature.properties
+++ /dev/null
@@ -1,43 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse SDK Examples
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "description" property - description of the feature
-description=Eclipse SDK examples. Used in conjunction with Eclipse Project SDK.
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2000, 2013 IBM Corporation and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n\
-\n\
-Contributors:\n\
-    IBM Corporation - initial API and implementation\n
-################ end of copyright property ####################################
-
diff --git a/features/org.eclipse.sdk.examples-feature/feature.xml b/features/org.eclipse.sdk.examples-feature/feature.xml
deleted file mode 100644
index ada2268..0000000
--- a/features/org.eclipse.sdk.examples-feature/feature.xml
+++ /dev/null
@@ -1,161 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.sdk.examples"
-      label="%featureName"
-      version="4.23.0.qualifier"
-      provider-name="%providerName"
-      license-feature="org.eclipse.license"
-      license-feature-version="0.0.0">
-
-   <description>
-      %description
-   </description>
-
-   <copyright>
-      %copyright
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <plugin
-         id="org.eclipse.compare.examples"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.compare.examples.xml"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.debug.examples.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.debug.examples.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jface.examples.databinding"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.swt.examples"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.swt.examples.views"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.swt.examples.browser.demos"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.swt.examples.launcher"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.examples.javaeditor"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.examples.multipageeditor"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.examples.propertysheet"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.examples.readmetool"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.examples.contributions"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.examples.undo"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.examples.views.properties.tabbed.article"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.examples.fieldassist"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.team.examples.filesystem"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.swt.examples.ole.win32"
-         ws="win32"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.sdk.examples"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.genericeditor.examples"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.examples.uriSchemeHandler"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-</feature>
diff --git a/features/org.eclipse.sdk.examples-feature/forceQualifierUpdate.txt b/features/org.eclipse.sdk.examples-feature/forceQualifierUpdate.txt
deleted file mode 100644
index 56f1032..0000000
--- a/features/org.eclipse.sdk.examples-feature/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
diff --git a/features/org.eclipse.sdk.examples-feature/pom.xml b/features/org.eclipse.sdk.examples-feature/pom.xml
deleted file mode 100644
index f2bab7c..0000000
--- a/features/org.eclipse.sdk.examples-feature/pom.xml
+++ /dev/null
@@ -1,67 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.sdk.feature</groupId>
-  <artifactId>org.eclipse.sdk.examples</artifactId>
-  <name>org.eclipse.sdk.examples.feature</name>
-  <packaging>eclipse-feature</packaging>
-
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-source-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <executions>
-          <execution>
-            <phase>package</phase>
-            <id>feature-source</id>
-            <goals>
-              <goal>feature-source</goal>
-            </goals>
-            <configuration>
-              <features>
-                <feature id="org.eclipse.sdk.examples"/>
-              </features>
-              <!-- 
-              <excludes>
-                <plugin id="org.eclipse.sdk.examples"/>
-              </excludes>
-               -->
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-p2-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <executions>
-          <execution>
-            <id>attach-p2-metadata</id>
-            <phase>package</phase>
-            <goals>
-              <goal>p2-metadata</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/features/org.eclipse.sdk.examples-feature/rootfiles/.eclipseextension b/features/org.eclipse.sdk.examples-feature/rootfiles/.eclipseextension
deleted file mode 100644
index e69de29..0000000
--- a/features/org.eclipse.sdk.examples-feature/rootfiles/.eclipseextension
+++ /dev/null
diff --git a/features/org.eclipse.sdk.examples-feature/sourceTemplateFeature/build.properties b/features/org.eclipse.sdk.examples-feature/sourceTemplateFeature/build.properties
deleted file mode 100644
index 1519283..0000000
--- a/features/org.eclipse.sdk.examples-feature/sourceTemplateFeature/build.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = feature.xml,\
-feature.properties
-
-generateFeatureVersionSuffix=true
-
diff --git a/features/org.eclipse.sdk.examples-feature/sourceTemplateFeature/feature.properties b/features/org.eclipse.sdk.examples-feature/sourceTemplateFeature/feature.properties
deleted file mode 100644
index 5cee2af..0000000
--- a/features/org.eclipse.sdk.examples-feature/sourceTemplateFeature/feature.properties
+++ /dev/null
@@ -1,43 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse SDK Examples Source
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "description" property - description of the feature
-description=Eclipse SDK examples. Used in conjunction with Eclipse Project SDK.\n\
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2000, 2013 IBM Corporation and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n\
-\n\
-Contributors:\n\
-    IBM Corporation - initial API and implementation\n\
-
-################ end of copyright property ####################################
diff --git a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/about.html b/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/about.html
deleted file mode 100644
index 164f781..0000000
--- a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/about.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>About</title>
-</head>
-<body lang="EN-US">
-	<h2>About This Content</h2>
-
-	<p>November 30, 2017</p>
-	<h3>License</h3>
-
-	<p>
-		The Eclipse Foundation makes available all content in this plug-in
-		(&quot;Content&quot;). Unless otherwise indicated below, the Content
-		is provided to you under the terms and conditions of the Eclipse
-		Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
-		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
-		For purposes of the EPL, &quot;Program&quot; will mean the Content.
-	</p>
-
-	<p>
-		If you did not receive this Content directly from the Eclipse
-		Foundation, the Content is being redistributed by another party
-		(&quot;Redistributor&quot;) and different terms and conditions may
-		apply to your use of any object code in the Content. Check the
-		Redistributor's license that was provided with the Content. If no such
-		license exists, contact the Redistributor. Unless otherwise indicated
-		below, the terms and conditions of the EPL still apply to any source
-		code in the Content and such source code may be obtained at <a
-			href="http://www.eclipse.org/">http://www.eclipse.org</a>.
-	</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/about.ini b/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/about.ini
deleted file mode 100644
index 1931489..0000000
--- a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/about.ini
+++ /dev/null
@@ -1,29 +0,0 @@
-# about.ini
-# contains information about a feature
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# "%key" are externalized strings defined in about.properties
-# This file does not need to be translated.
-
-# Property "aboutText" contains blurb for "About" dialog (translated)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=eclipse32.png
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (translated)
-# needed for primary features only
-
-# Property "welcomePage" contains path to welcome page (special XML-based format)
-# optional
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
-
-
diff --git a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/about.mappings b/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/about.mappings
deleted file mode 100644
index bddaab4..0000000
--- a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings
-# contains fill-ins for about.properties
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file does not need to be translated.
-
-0=@build@
\ No newline at end of file
diff --git a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/about.properties b/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/about.properties
deleted file mode 100644
index d235ae1..0000000
--- a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/about.properties
+++ /dev/null
@@ -1,27 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-
-blurb=Eclipse SDK Examples\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright IBM Corp. and others 2000, 2007.  All rights reserved.\n\
-Visit http://www.eclipse.org/eclipse
-
diff --git a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/build.properties b/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/build.properties
deleted file mode 100644
index 511e7e5..0000000
--- a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/build.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2007 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = about.html, about.ini, about.mappings, about.properties, eclipse32.png, plugin.properties, fragment.xml, src/**,META-INF/
-sourcePlugin = true
diff --git a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/eclipse32.gif b/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/eclipse32.gif
deleted file mode 100644
index e6ad7cc..0000000
--- a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/eclipse32.gif
+++ /dev/null
Binary files differ
diff --git a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/plugin.properties b/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/plugin.properties
deleted file mode 100644
index ccd3e5f..0000000
--- a/features/org.eclipse.sdk.examples-feature/sourceTemplateFragment/plugin.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-pluginName=Eclipse Java Development Tools SDK
-providerName=Eclipse.org
diff --git a/features/org.eclipse.sdk.tests/.project b/features/org.eclipse.sdk.tests/.project
deleted file mode 100644
index e69e63b..0000000
--- a/features/org.eclipse.sdk.tests/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.sdk.tests (feature)</name>
-	<comment></comment>
-	<projects>
-	</projects>
-  <buildSpec>
-    <buildCommand>
-      <name>org.eclipse.pde.FeatureBuilder</name>
-      <arguments>
-      </arguments>
-    </buildCommand>
-  </buildSpec>
-  <natures>
-    <nature>org.eclipse.pde.FeatureNature</nature>
-  </natures>
-</projectDescription>
diff --git a/features/org.eclipse.sdk.tests/.settings/org.eclipse.core.resources.prefs b/features/org.eclipse.sdk.tests/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/features/org.eclipse.sdk.tests/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/features/org.eclipse.sdk.tests/.settings/org.eclipse.core.runtime.prefs b/features/org.eclipse.sdk.tests/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/features/org.eclipse.sdk.tests/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/features/org.eclipse.sdk.tests/build.properties b/features/org.eclipse.sdk.tests/build.properties
deleted file mode 100644
index 6230b46..0000000
--- a/features/org.eclipse.sdk.tests/build.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2021 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = feature.xml,\
-							 feature.properties					
-
-! https://bugs.eclipse.org/bugs/show_bug.cgi?id=458885
-! If there are no root files, you do *not* want to say there is. 
-! or, build will break.
-!root=rootfiles
diff --git a/features/org.eclipse.sdk.tests/feature.properties b/features/org.eclipse.sdk.tests/feature.properties
deleted file mode 100644
index a30dba6..0000000
--- a/features/org.eclipse.sdk.tests/feature.properties
+++ /dev/null
@@ -1,45 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2020 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse SDK Tests
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Eclipse SDK test plug-ins. Used in conjunction with Eclipse Project SDK.
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2000, 2021 IBM Corporation and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n\
-\n\
-Contributors:\n\
-    IBM Corporation - initial API and implementation\n
-################ end of copyright property ####################################
\ No newline at end of file
diff --git a/features/org.eclipse.sdk.tests/feature.xml b/features/org.eclipse.sdk.tests/feature.xml
deleted file mode 100644
index 27b8ab1..0000000
--- a/features/org.eclipse.sdk.tests/feature.xml
+++ /dev/null
@@ -1,552 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.sdk.tests"
-      label="%featureName"
-      version="4.23.0.qualifier"
-      provider-name="%providerName"
-      license-feature="org.eclipse.license"
-      license-feature-version="0.0.0">
-
-   <description>
-      %description
-   </description>
-
-   <copyright>
-      %copyright
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <includes
-         id="org.eclipse.test"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.sdk.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ant.tests.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ant.tests.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.compare.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.core.tests.harness"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.osgi.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.core.tests.runtime"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.core.tests.resources"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.core.tests.net"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.e4.core.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.e4.core.commands.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.e4.ui.bindings.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.e4.ui.tests.css.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.e4.ui.tests.css.swt"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.e4.ui.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.equinox.ds.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.apt.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.compiler.apt.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.apt.pluggable.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.core.tests.builder"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.core.tests.compiler"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.core.tests.model"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.compiler.tool.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.core.tests.performance"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.debug.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.ui.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.ui.tests.refactoring"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.text.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.core.expressions.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ltk.core.refactoring.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ltk.ui.refactoring.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.text.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jface.text.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jsch.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.core.filebuffers.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.debug.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.workbench.texteditor.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.editors.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.search.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.text.quicksearch.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.swt.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jface.tests.databinding"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jface.tests.databinding.conformance"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jface.examples.databinding"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ua.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ua.tests.doc"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.tests.navigator"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.tests.rcp"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.tests.forms"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.genericeditor.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.pde.ua.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-   
-   <plugin
-         id="org.eclipse.pde.ui.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.pde.ui.templates.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.pde.genericeditor.extension.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.pde.build.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.pde.ds.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.releng.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.team.tests.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.tests.harness"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.tests.performance"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.ui.tests.views.properties.tabbed"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.pde.api.tools.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.equinox.security.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.equinox.preferences.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.equinox.http.servlet.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.apache.commons.fileupload"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.commons.io"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.installer"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.tests.discovery"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.tests.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.tests.verifier"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.frameworkadmin.test"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.jdt.core.tests.binaries"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.equinox.bidi.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.hamcrest.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.hamcrest.integration"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.hamcrest.library"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-    <plugin
-         id="org.mockito.mockito-core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.objenesis"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.tests.pluginchecks"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-         
-   <plugin
-         id="org.eclipse.tests.urischeme"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.equinox.common.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-         
-	<plugin
-         id="org.eclipse.jface.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.pde.junit.runtime.tests"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-</feature>
diff --git a/features/org.eclipse.sdk.tests/forceQualifierUpdate.txt b/features/org.eclipse.sdk.tests/forceQualifierUpdate.txt
deleted file mode 100644
index 5a9b7c4..0000000
--- a/features/org.eclipse.sdk.tests/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
-
-# added third party bundle so need to force update in qualifier. 
-Bug 407833 - equinox can/should express it's own need for org.aspectj.weaver
-Bug 405911 - 3 p2 bundles don't produce (or, package) their .source
-Bug 463632 - [releng] Version of 'weaver' is old, in Platform builds? 
-Bug 467268 - Update to Orbit RC1 URL
-Bug 468331 - Update EGit/JGit compile-time dependencies to Mars level
-Bug 480835 - Failures in build due to changes not being picked up by tests
-Bug 566156 - 4.17 I-Build: I20200818-0600 - BUILD FAILED
-4.20 I-Build: I20210518-0600 - BUILD FAILED
-Bug 577522 - Update test framework dependencies
\ No newline at end of file
diff --git a/features/org.eclipse.sdk.tests/pom.xml b/features/org.eclipse.sdk.tests/pom.xml
deleted file mode 100644
index a68d975..0000000
--- a/features/org.eclipse.sdk.tests/pom.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012 Eclipse Foundation.
-  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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.sdk.feature</groupId>
-  <artifactId>org.eclipse.sdk.tests</artifactId>
-  <name>org.eclipse.sdk.tests.feature</name>
-  <packaging>eclipse-feature</packaging>
-
-</project>
diff --git a/features/org.eclipse.sdk.tests/sourceTemplateFeature/build.properties b/features/org.eclipse.sdk.tests/sourceTemplateFeature/build.properties
deleted file mode 100644
index 6543127..0000000
--- a/features/org.eclipse.sdk.tests/sourceTemplateFeature/build.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes =\
-epl-v10.html,\
-feature.xml,\
-feature.properties,\
-license.html
diff --git a/features/org.eclipse.sdk.tests/sourceTemplateFeature/feature.properties b/features/org.eclipse.sdk.tests/sourceTemplateFeature/feature.properties
deleted file mode 100644
index ef6e823..0000000
--- a/features/org.eclipse.sdk.tests/sourceTemplateFeature/feature.properties
+++ /dev/null
@@ -1,45 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse SDK Tests Source
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Eclipse SDK examples. Used in conjunction with Eclipse Project SDK.
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2000, 2013 IBM Corporation and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n\
-\n\
-Contributors:\n\
-    IBM Corporation - initial API and implementation\n
-################ end of copyright property ####################################
\ No newline at end of file
diff --git a/features/org.eclipse.sdk/.project b/features/org.eclipse.sdk/.project
deleted file mode 100644
index 2764d76..0000000
--- a/features/org.eclipse.sdk/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.sdk (feature)</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/features/org.eclipse.sdk/.settings/org.eclipse.core.resources.prefs b/features/org.eclipse.sdk/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/features/org.eclipse.sdk/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/features/org.eclipse.sdk/.settings/org.eclipse.core.runtime.prefs b/features/org.eclipse.sdk/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/features/org.eclipse.sdk/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/features/org.eclipse.sdk/build.properties b/features/org.eclipse.sdk/build.properties
deleted file mode 100644
index 99ecc20..0000000
--- a/features/org.eclipse.sdk/build.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-#  Copyright (c) 2000, 2016 IBM Corporation and others.
-#
-#  This program and the accompanying materials
-#  are made available under the terms of the Eclipse Public License 2.0
-#  which accompanies this distribution, and is available at
-#  https://www.eclipse.org/legal/epl-2.0/
-#
-#  SPDX-License-Identifier: EPL-2.0
-# 
-#  Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes=feature.xml,feature.properties,p2.inf
diff --git a/features/org.eclipse.sdk/feature.properties b/features/org.eclipse.sdk/feature.properties
deleted file mode 100644
index f025234..0000000
--- a/features/org.eclipse.sdk/feature.properties
+++ /dev/null
@@ -1,39 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2020 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Project SDK
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "description" property - description of the feature
-description=SDK for Eclipse.
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2000, 2020 Eclipse contributors and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n
-################ end of copyright property ####################################
\ No newline at end of file
diff --git a/features/org.eclipse.sdk/feature.xml b/features/org.eclipse.sdk/feature.xml
deleted file mode 100644
index 7cd2a1d..0000000
--- a/features/org.eclipse.sdk/feature.xml
+++ /dev/null
@@ -1,73 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.sdk"
-      label="%featureName"
-      version="4.23.0.qualifier"
-      provider-name="%providerName"
-      license-feature="org.eclipse.license"
-      license-feature-version="0.0.0">
-
-   <description>
-      %description
-   </description>
-
-   <copyright>
-      %copyright
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <includes
-         id="org.eclipse.platform"
-         version="0.0.0"/>
-
-   <includes
-         id="org.eclipse.platform.source"
-         version="0.0.0"/>
-
-   <includes
-         id="org.eclipse.jdt"
-         version="0.0.0"/>
-
-   <includes
-         id="org.eclipse.jdt.source"
-         version="0.0.0"/>
-
-   <includes
-         id="org.eclipse.pde"
-         version="0.0.0"/>
-
-   <includes
-         id="org.eclipse.pde.source"
-         version="0.0.0"/>
-
-   <includes
-         id="org.eclipse.help"
-         version="0.0.0"/>
-
-   <includes
-         id="org.eclipse.help.source"
-         version="0.0.0"/>
-
-   <requires>
-      <import feature="org.eclipse.emf.common.source" version="2.7.0" match="compatible"/>
-      <import feature="org.eclipse.emf.ecore.source" version="2.7.0" match="compatible"/>
-      <import feature="org.eclipse.emf.edit.source" version="2.16.0" match="compatible"/>
-      <import feature="org.eclipse.emf.databinding.source" version="1.7.0" match="compatible"/>
-      <import feature="org.eclipse.emf.databinding.edit.source" version="1.8.0" match="compatible"/>
-      <import feature="org.eclipse.ecf.core.feature.source" version="1.4.0" match="compatible"/>
-      <import feature="org.eclipse.ecf.core.ssl.feature.source" version="1.1.0" match="compatible"/>
-      <import feature="org.eclipse.ecf.filetransfer.feature.source" version="3.13.7" match="compatible"/>
-      <import feature="org.eclipse.ecf.filetransfer.httpclient5.feature.source" version="1.0.0" match="compatible"/>
-      <import feature="org.eclipse.ecf.filetransfer.ssl.feature.source" version="1.1.0" match="compatible"/>
-   </requires>
-
-   <plugin
-         id="org.eclipse.sdk"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-</feature>
diff --git a/features/org.eclipse.sdk/forceQualifierUpdate.txt b/features/org.eclipse.sdk/forceQualifierUpdate.txt
deleted file mode 100644
index c2f5f8f..0000000
--- a/features/org.eclipse.sdk/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
-Bug 467268 - Update to Orbit RC1 URL
-Bug 547901 - Prep work for 4.13 and open master for development
\ No newline at end of file
diff --git a/features/org.eclipse.sdk/p2.inf b/features/org.eclipse.sdk/p2.inf
deleted file mode 100644
index 584ddbc..0000000
--- a/features/org.eclipse.sdk/p2.inf
+++ /dev/null
@@ -1,76 +0,0 @@
-# Adds public key for platform-dev-releng@eclipse.org (signed by Eclipse Webmaster) as trusted
-properties.0.name=pgp.trustedPublicKeys
-properties.0.value=-----BEGIN PGP PUBLIC KEY BLOCK-----\n\
-\n\
-xsFNBFhaXO0BEAC8WCdwrJNF/W+C8m9FYwAhEvKBvQ7xmoGYZqgcYe2ntT8udvgZ\n\
-k+dRwZJnu1VI3a8feOLrAmeNI2MxPP0+l2kGeC55c10duXPzLvW9oHONm39FZpCM\n\
-X1m66TYkUBeu/DIttNf5l0nv54dmm4VAWjutnVmlKGf5MVmmAH4mrkmgs7UTyQRK\n\
-JKJ8B7tAt6CI1tXq2ULjzUpz9iyD1IkWal4K2gYfooSuGLayNY+SCdcT9uZkpS4B\n\
-rnHy2QeJqPSnJv+5G1SkX1fzavWelrf72vx+su8L8QzUa6JtGJatFbAHzEdXGJ98\n\
-JnK7TAQvR3hCyzj+TnVCY1hiRO6B+4zI3j/vSJVdc5wmLejvfZRqhiaQ8Vr4xDbu\n\
-w7/i+raAKwr//zVGAqp/zN6zQmyoLks+cfuI4yqHuXKGaNs5RapKCxfukC/TRB2e\n\
-fLhqCpXAbRQ8a+R+0CCBP2WYDYNQoh4FnwuqtZefnm8NVKW+2we5y3llIrXV5PQb\n\
-FFN5WOLuNvO/JOtRQSjNd4WYttwNCDP7ATpRK6ixz7qveztGNhuiCRx01HbZ2uUE\n\
-DKV0DW8mWRjALl9/akMRcdIeTayKHDVjeNq5amnWT0vZ2F422BJW6sQryTs/NIBK\n\
-XGoVVZeXms3fzL9IpztcVFZTuwmk5kk1FXXaBDMwVHlR5hC5gIuLIfLVEwARAQAB\n\
-zTpFY2xpcHNlIFBsYXRmb3JtIFByb2plY3QgPHBsYXRmb3JtLXJlbGVuZy1kZXZA\n\
-ZWNsaXBzZS5vcmc+wsF9BBMBCAAnBQJYWlztAhsvBQkJZgGABQsJCAcDBRUKCQgL\n\
-BRYCAwEAAh4BAheAAAoJELbTq5vMZBKC8SsP/3csTQk6nxtGtQ5Q5HDBZ/5yeQe1\n\
-uVMl4DXJMxjYMRI29Uzrb+uMzP7zfs8xTBXktPB+bC5CqVE7QsnBEAMdXWvqk6pw\n\
-pmbC/felj+dyoy8FAHA+f52W94PYjci0TyDYgEeWAvtnnzJ8tMTZQT5qxhYM/Kt5\n\
-9XIrRqVCXw/kh7wlW4MF5MQAI8SK2j9W4WY9wMQbW5xfaYHo23Xi/NZ6nuYOoRKb\n\
-ejtlHXa4FSHOVYSg9sqNNnSI3mEvHrGbtlSli6ApwCSG8lcLNqjtgf2/kZncB9yg\n\
-DmTNq7ivFE9CxW6w8CGl3fpCZiT4DWXNj81P/lqpNjIwjEcbrZVbvXw5pjFKi0sJ\n\
-rpbc1ClhTKXKv+/Sn5cxMHYmzrrBoQBlLXLe+ETRZNbOpY5pSBis9ALBwXp4ARq+\n\
-YydwV1L2jntUPi3rYsR6PPnDNNfi2XNOSPF3ms5opGcR6jd+DzxzAN0Q1VTgKaHk\n\
-GpR2PqPu5RTelDObzYi28y8+URyys8JoKPpTsyJqYcJtW4X0JPgd/mRS7y53n6MQ\n\
-Quy2/yDJKomEe+Nnag16eqGDIie7RrSx82TKF9cT4Wr8qEwD22UnLEuiy02TXzsR\n\
-tWyVDCZE2mDbHbOMz0uuMqcA3WCEyZrzR1vmH7TnQ1NA9K9oxzzaayNOUw7IgE02\n\
-HNwdca2ZV+Wgurj4wsFcBBABCAAGBQJYWl1CAAoJEJ+itymfUeVDJhkQAJEHg3s+\n\
-iDs1GXoh85pcAWHdrl+PXCLz/gMAYrGvj1kKtW63atTpBvu+BnELVj7eKTUnCgRM\n\
-W2w8eKfDgQo8J6bQtHRpHnYSb7bAOKpiBgz13aZJjSvz14vabzP4zWdHtJEOmoH0\n\
-U8I0xIyFmBovelQAN9tSRaD6gWcbsAqJJPCgpn43QGSueSWuFND0Zk0rnwoc/1a8\n\
-JUKf6zEjHqBRfEVe+itvigIr9fy+xdX6fA6OE6OnBl7VZlVVKO8/EVdx3aehzHLc\n\
-WxykAVmNe2iSOW1D7UvZQvYds8f1OUHQiKc+jkA3Na/xVQ0Gwuu0L7nIi7JkAWNY\n\
-dOxPk+K9kWSa4ReXlOKjhC0hmNMtohKuZ2TSOsAqaWZtpJoPZpDOqDhOvx/lwBck\n\
-cxPSUZEJB88fdHTzR9PFD07Zh8EE+oRqVp7xauIgoTLk8wrUSnnJ4dwx+Zzp2OLB\n\
-mC0vAI+gSQXHkbG06jRDsPlXXMpS5/nEb2FhcEC3M4ytP6z+u1R2KM0c3jH9WRLB\n\
-ALqSWNM3cR5TJjUeTyN8O70s13+1tKnZNm08C0XHphxGC4SMMCaKqJ0hEqGr0WCA\n\
-qLrarSprDJ44ZFf8TcURHeKV2SuFXKUGyjgF22wAGepuKZ4whUuwBBxtDNXrpIdQ\n\
-/qAjTdr9LQcjGwZD6nH45HD+eiUaFZOlANQ8zsFNBFhaXPsBEAC3bR7f5euHbpID\n\
-DTuFYHPI0+S5X0DhuqcGBUL2HSFhWMwIlfsAaO+pt7GyfXLUkTmzugwmwO+sOW2Q\n\
-mwEZQcK2z3BrcjytZophZ9AUajbAjnadSH6UXCMmfExVVnaYSfl/+Uub42szQE/r\n\
-3gCRIz6M6clVVAjpFv4G/mumfQUV/XzLoUEYXTgwTokFJ97R+hDbHvBEBrUT8M6z\n\
-HP5DhN3EBug3qb6wZVOa/+HEX3M+7k4jVT/ppNumw0acg0DDoSNQ13VsRV6sV0XE\n\
-4zr3Zfs84f8xCgXpEMs4U6DZGqs3iJVVtbRf0oL0fgcxNgRrmbCrBfbXYfrS4u+f\n\
-J0vB+Wrflv9eNA3i6TtVL6uYpZy9uO2B1olKVzfEhsgB3QrULB4jVHZjIXGe4ILn\n\
-45ndMtAeY4M91wyobgG99Xl+1vPHrxV0+2zRP66J3puyxiKE2B7gd7hib54CB3lY\n\
-yrG1S+K1kZGCI1IFKCnqmTJXY0tKoLAASS3vtDcknXenzR5RVSpWTDuxtusekfL0\n\
-Bw8pCBoz9L4Hex8Q1j//D5CZlqcg1NKFfmBZ7ta9PTuJcpOsz/LaPG/0VHYt/QAv\n\
-5o4eeZESl7iZyM4/0NFh2s/rq0R8Z9yVSSkIvvO8d8XGZ65NTm3T4NFuEihn+AEm\n\
-+zg4KiGdYBEZvs8QQoW9e1+MMN8xnwARAQABwsOEBBgBCAAPBQJYWlz7AhsCBQkJ\n\
-ZgGAAikJELbTq5vMZBKCwV0gBBkBCAAGBQJYWlz7AAoJEHAOTzm8BTZLp0sP/0kU\n\
-dbRktaQ49o6Jy6UdMD4pQqYUugDb/Pecr5YOqxxuJyouIUNCc2cYRgsJIMRJEWio\n\
-si3xIk4oRE5BdetQKiz4crxPC7kNQBvgPrVJ0fP094ChPLf5tv1LUnGcDdUBEFXP\n\
-7huzE622dp4F3x+uZN384Y8veQJyRwLMLtr4nNYcw4u+x5UKTdDt2nSblP433btU\n\
-cTRNDEbfDBRI7ExcEgVZupQ8YHGVfqo0SxkM508ixefwMgiO2eM/cR2TyhatXh86\n\
-nr4nzYqn2/Cl9trByjknZ1Qcwav1MW0+YyGzUkYQ/dRY7WQ+2esItzzrAf/UVmQZ\n\
-XQqL+GRGo5sRc8aceEQKmDkiJBKK/WbURm2blr04nuLxSLq+03+eN5hOp8SnIIBM\n\
-TaeDE8jndbHDHPaMnMx+etTk3RzgmBMqAsKRvTdh29fzA51kohyhuOdQr3axORR3\n\
-D2So6f5x1HEcP1kAt24I+knAGsuuBCguUvbVvlqfOTssr4/jO5QczsadfZxEqXwv\n\
-vn8wQEDzMbQ/BL62U8ahUicTDh/W4cwfPjBbdPLZmG+UsKGIuAvCSfsGYDXrSSiv\n\
-o9O378jFAoR/0m5AlbMzIokhIxwNipNCzFWCkvziyVO4u7WV1WidO/EBHkw8uYUs\n\
-7LrXfqK5RZEffpoK9R1IdFIGJaH03xIu2yw3kq9HqGYQAISqS95RSMGAmqLlfOM1\n\
-O81PVVisf2hx0siboimdAZYwfAGqNm48Rht9oXHRn4oobuwlVEGZiTWkYgi8gnPe\n\
-xTKjZe6rmYZT79nL6pyhLimUa44lxA6mgtJ4D9ftqNnMEqIntaLHbBkR0itXNNlS\n\
-qvMv1WsoVS19i4kVseLr4dFMnjtesYOhJg/sl7T/IQHzflqjSyCNo5dffffAQB3K\n\
-rdaq8cz7qTW6PXM4EAFQH5uTaYJ8oDI3t7XsGyxBWX0+xVYHXXSU5Iq2CrB34Ipc\n\
-ygoXyTFOoZeXHDguPMXX2LnV+R7lNc0EeJ0oTyRSzmw0ao/5bgfiY14GfN0hvUFt\n\
-HIQ/Utlm2MUB108uOMeQ4EnM2xCiGtxjvHCc9IvS9OuR0zGpT6aSxXrrMMVC0QHA\n\
-Z+ntRHqo4mFuXrPth7+arUOW/PYmm3iLAaKqsXPhkjUrM3Ryp5v/J809tRyDmSX2\n\
-YOQQysGGkayKI2GyiilZ8MULM02MANot9m+QlOo1lLpmOUJDtzCHylg4M+kHpGPL\n\
-AW5Oi8j/f/7YH/S47HmSdgw3sHZl69WHIprKXtD8103BdNqrPJev2azwqWwxFpN8\n\
-3tEPbK4SwWPgk1nSELXZZ5ClcDgqatg+/nv7orxRAQZ+sBQdLn/Ztf0y2NKwqFh5\n\
-UNmHBQdtflW5G1L5fQggWG7V\n\
-=/Asu\n\
------END PGP PUBLIC KEY BLOCK-----\n\
diff --git a/features/org.eclipse.sdk/pom.xml b/features/org.eclipse.sdk/pom.xml
deleted file mode 100644
index eeb8b87..0000000
--- a/features/org.eclipse.sdk/pom.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2014 Eclipse Foundation.
-  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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.sdk.feature</groupId>
-  <artifactId>org.eclipse.sdk</artifactId>
-  <name>org.eclipse.sdk.feature</name>
-  <packaging>eclipse-feature</packaging>
-</project>
diff --git a/features/org.eclipse.test-feature/.project b/features/org.eclipse.test-feature/.project
deleted file mode 100644
index d76bab3..0000000
--- a/features/org.eclipse.test-feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.test-feature</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/features/org.eclipse.test-feature/.settings/org.eclipse.core.resources.prefs b/features/org.eclipse.test-feature/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/features/org.eclipse.test-feature/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/features/org.eclipse.test-feature/.settings/org.eclipse.core.runtime.prefs b/features/org.eclipse.test-feature/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/features/org.eclipse.test-feature/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/features/org.eclipse.test-feature/build.properties b/features/org.eclipse.test-feature/build.properties
deleted file mode 100644
index b466375..0000000
--- a/features/org.eclipse.test-feature/build.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2015 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes =\
-feature.xml,\
-feature.properties
-
diff --git a/features/org.eclipse.test-feature/feature.properties b/features/org.eclipse.test-feature/feature.properties
deleted file mode 100644
index 3fa87e2..0000000
--- a/features/org.eclipse.test-feature/feature.properties
+++ /dev/null
@@ -1,40 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials 
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Test Framework
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "description" property - description of the feature
-description=Eclipse Test Framework. Used in conjunction with Eclipse JUnit tests.
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2000, 2021 IBM Corporation and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n\
-\n\
-Contributors:\n\
-    IBM Corporation - initial API and implementation\n
-################ end of copyright property ####################################
\ No newline at end of file
diff --git a/features/org.eclipse.test-feature/feature.xml b/features/org.eclipse.test-feature/feature.xml
deleted file mode 100644
index d8bc9ed..0000000
--- a/features/org.eclipse.test-feature/feature.xml
+++ /dev/null
@@ -1,125 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.test"
-      label="%featureName"
-      version="3.8.0.qualifier"
-      provider-name="%providerName"
-      license-feature="org.eclipse.license"
-      license-feature-version="0.0.0">
-
-   <description>
-      %description
-   </description>
-
-   <copyright>
-      %copyright
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <plugin
-         id="org.eclipse.ant.optional.junit"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.test"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.test.source"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.test.performance"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.test.performance.win32"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.junit"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.hamcrest.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.objenesis"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.mockito.mockito-core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="net.bytebuddy.byte-buddy"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="net.bytebuddy.byte-buddy-agent"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.tests.harness"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.hamcrest.library"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.junit.jupiter.api"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="assertj-core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-</feature>
diff --git a/features/org.eclipse.test-feature/forceQualifierUpdate.txt b/features/org.eclipse.test-feature/forceQualifierUpdate.txt
deleted file mode 100644
index 86c2f78..0000000
--- a/features/org.eclipse.test-feature/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
-Bug 466794 - Make Hamcrest 1.3 and Mockito 1.9.4 available for the aggregator build
-Bug 532094 - Update releng with new hamcrest and apache batik
-Update with new hamcrest library
-Bug 535258 - Update Batik to 1.10 for CVE fix
-Bug 508432 - Update hamcrest/Mockito
-Bug 539947 - Update Mockito to version 2.23 or newer for Java 11
-Bug 551174 - Comparator errors in 4.14 I build - I20190917-1800
-Bug 553238 - Unanticipated comparator errors in I20191119-1800
-Bug 561740 - Update prereqs for 4.16 M1 release: Orbit (mockito rebuild)
-Bug 574602 - Eclipse 4.21 prerequisites: Orbit
diff --git a/features/org.eclipse.test-feature/pom.xml b/features/org.eclipse.test-feature/pom.xml
deleted file mode 100644
index cf3fe04..0000000
--- a/features/org.eclipse.test-feature/pom.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012, 2019 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
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
-     David Williams - cleanup via bug 480072.
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>eclipse.platform.releng</groupId>
-    <artifactId>eclipse.platform.releng</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../../</relativePath>
-  </parent>
-  <groupId>org.eclipse.test.feature</groupId>
-  <artifactId>org.eclipse.test</artifactId>
-  <name>org.eclipse.test.feature</name>
-  <version>3.8.0-SNAPSHOT</version>
-  <packaging>eclipse-feature</packaging>
-</project>
diff --git a/pom.xml b/pom.xml
deleted file mode 100644
index 0a2a60e..0000000
--- a/pom.xml
+++ /dev/null
@@ -1,71 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012, 2013 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
-  http://www.eclipse.org/org/documents/edl-v10.php
-
-  Contributors:
-  Igor Fedorenko - initial implementation
--->
-<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">
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.eclipse</groupId>
-    <artifactId>eclipse-platform-parent</artifactId>
-    <version>4.23.0-SNAPSHOT</version>
-    <relativePath>../eclipse-platform-parent</relativePath>
-  </parent>
-
-  <groupId>eclipse.platform.releng</groupId>
-  <artifactId>eclipse.platform.releng</artifactId>
-  <packaging>pom</packaging>
-
-  <properties>
-    <tycho.scmUrl>scm:git:https://git.eclipse.org/r/platform/eclipse.platform.releng.git</tycho.scmUrl>
-  </properties>
-
-  <profiles>
-    <profile>
-      <id>build-individual-bundles</id>
-      <repositories>
-        <repository>
-          <!-- to resolve parent pom, only useful for individual builds -->
-          <releases>
-            <enabled>true</enabled>
-          </releases>
-          <snapshots>
-            <enabled>true</enabled>
-          </snapshots>
-          <id>eclipse-hosted</id>
-          <url>https://repo.eclipse.org/content/repositories/eclipse/</url>
-        </repository>
-      </repositories>
-    </profile>
-  </profiles>
-
-  <modules>
-    <module>bundles/org.eclipse.ant.optional.junit</module>
-    <module>bundles/org.eclipse.rcp</module>
-    <module>bundles/org.eclipse.releng.tests</module>
-    <module>bundles/org.eclipse.sdk.examples</module>
-    <module>bundles/org.eclipse.sdk.tests</module>
-    <module>bundles/org.eclipse.test</module>
-    <module>bundles/org.eclipse.test.performance</module>
-    <module>bundles/org.eclipse.test.performance.win32</module>
-
-    <module>features/org.eclipse.help-feature</module>
-    <module>features/org.eclipse.platform-feature</module>
-    <module>features/org.eclipse.rcp</module>
-    <module>features/org.eclipse.sdk</module>
-    <module>features/org.eclipse.sdk.examples-feature</module>
-    <module>features/org.eclipse.sdk.tests</module>
-    <module>features/org.eclipse.test-feature</module>
-  </modules>
-
-</project>
diff --git a/publish-to-maven-central/.classpath b/publish-to-maven-central/.classpath
deleted file mode 100644
index 6073fcf..0000000
--- a/publish-to-maven-central/.classpath
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/publish-to-maven-central/.project b/publish-to-maven-central/.project
deleted file mode 100644
index b2d2cc8..0000000
--- a/publish-to-maven-central/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>publish-to-maven-central</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/publish-to-maven-central/.settings/org.eclipse.jdt.core.prefs b/publish-to-maven-central/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index f2525a8..0000000
--- a/publish-to-maven-central/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,14 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=11
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=11
diff --git a/publish-to-maven-central/CBIaggregator.sh b/publish-to-maven-central/CBIaggregator.sh
deleted file mode 100644
index b379f21..0000000
--- a/publish-to-maven-central/CBIaggregator.sh
+++ /dev/null
@@ -1,383 +0,0 @@
-#!/bin/bash
-#*******************************************************************************
-# Copyright (c) 2016, 2018 GK Software SE and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     Stephan Herrmann - initial API and implementation
-#********************************************************************************
-
-#================================================================================
-#   Parameters are read from a properties file
-#================================================================================
-
-source `dirname ${0}`/properties.sh
-
-
-#================================================================================
-# Util functions
-#================================================================================
-function require_executable() {
-	if [ -x ${1} ]
-	then
-		echo "Successfully installed: ${1}"
-	else
-		echo "not executable: ${1}"
-		/bin/ls -l ${1}
-		exit 1
-	fi
-}
-
-function create_baseline() {
-	cd ${Repo}
-	for line in `find org/eclipse -name \*[0-9].jar | sort`
-	do
-		file=`basename $line`
-		name=`echo $file | sed -e 's/\(.*\)-.*/\1/' | tr '.' '_'`
-		version=`echo $file | sed -e 's/.*-\(.*\)\.jar/\1/'`
-		previous=`eval echo \\${VERSION_$name}`
-		if [ "$previous" != "" ]
-		then
-			version=${previous},${version}
-		fi
-		eval VERSION_$name=$version
-		echo VERSION_$name=$version
-	done > ${WORKSPACE}/baseline-next.txt 
-	cd -
-}	
-
-#================================================================================
-#   (1) Install and run the CBI aggregator
-#================================================================================
-echo "==== CBI aggregator ===="
-
-if [ ! -d ${LOCAL_TOOLS} ]
-then
-	/bin/mkdir ${LOCAL_TOOLS}
-fi
-
-if [ ! -x ${ECLIPSE} ]
-then
-	cd ${LOCAL_TOOLS}
-	echo "Extracting Eclipse from ${FILE_ECLIPSE} ..."
-	scp genie.releng@projects-storage.eclipse.org:${FILE_ECLIPSE} .
-	tar xf eclipse-SDK-${SDK_VERSION}-linux-gtk-x86_64.tar.gz
-	cd ${WORKSPACE}
-fi
-require_executable ${ECLIPSE}
-
-if [ ! -x ${AGGREGATOR} ]
-then
-	echo "Installing the CBI aggregator into ${LOCAL_TOOLS}/${DIR_AGGREGATOR} ..."
-	${ECLIPSE} -application ${APP_NAME_P2DIRECTOR} \
-		-r ${URL_AGG_UPDATES} \
-		-d ${LOCAL_TOOLS}/${DIR_AGGREGATOR} -p CBIProfile \
-		-installIU ${IU_AGG_PRODUCT}
-fi
-require_executable ${AGGREGATOR}
-
-RepoRaw=${WORKSPACE}/reporaw-${BUILD_NUMBER}
-Repo=${WORKSPACE}/repo-${BUILD_NUMBER}
-/bin/mkdir ${RepoRaw}
-
-echo "Running the aggregator with build model ${FILE_SDK_AGGR} ..."
-${AGGREGATOR} aggregate --buildModel ${FILE_SDK_AGGR} --action CLEAN_BUILD --buildRoot ${RepoRaw}
-if [ "$?" != "0" ]
-then
-    echo "FAILURE $?"
-    exit 1
-fi
-/bin/mv ${RepoRaw}/final ${Repo}
-/bin/rm -rf ${RepoRaw}
-
-echo "========== Repo created: =========="
-/usr/bin/du -sc ${Repo}/*
-/usr/bin/du -sc ${Repo}/org/*
-/usr/bin/du -sc ${Repo}/org/eclipse/*
-echo "==================================="
-
-
-#================================================================================
-#   (2) Remove irrelevant stuff
-#================================================================================
-# Removes from the build output of cbiAggregator everything that is not relevant for maven.
-# All removed directories / files will be logged to .logs/removed.txt
-
-echo "==== Remove irrelevant stuff ===="
-
-cd ${Repo}
-
-if [ ! -d .logs ]
-then
-	/bin/mkdir .logs
-elif [ -f .logs/removed.txt ]
-then
-	/bin/rm .logs/removed.txt
-fi
-
-#==== remove the p2 repository (not logged): ====
-
-/bin/rm -r p2.index p2.packed content.jar artifacts.jar
-
-#==== remove features: ====
-
-echo "== Features: ==" | tee >> .logs/removed.txt
-
-/usr/bin/find * -type d -name \*feature.group -print -exec /bin/rm -rf {} \; -prune >> .logs/removed.txt
-/usr/bin/find * -type d -name \*feature.jar -print -exec /bin/rm -rf {} \; -prune >> .logs/removed.txt
-
-#==== remove eclipse test plug-ins: ====
-
-echo "== Test plugins: ==" | tee >> .logs/removed.txt
-
-ls -d org/eclipse/*/*test* >> .logs/removed.txt
-/bin/rm -r org/eclipse/*/*test*
-
-#==== remove other non-artifacts: ====
-
-echo "== Other non-artifacts: ==" | tee >> .logs/removed.txt
-
-/usr/bin/find tooling -type d >> .logs/removed.txt
-/bin/rm -r tooling*
-
-# ... folders that contain only 1.2.3/foo-1.2.3.pom but no corresponding 1.2.3/foo-1.2.3.jar:
-function hasPomButNoJar() {
-		cd ${1}
-		# expect only one sub-directory, starting with a digit, plus maven-metadata.xml*:
-		other=`ls -d [!0-9]* 2> /dev/null`
-        if echo "${other}" | tr "\n" " " | egrep "^maven-metadata.xml maven-metadata.xml.md5 maven-metadata.xml.sha1 \$"
-        then
-        	: # clean -> proceed below
-        else
-        	exit 1 # unexpected content found, don't remove
-        fi
-        # scan all *.pom inside the version sub-directory
-        r=1
-        for pom in `ls [0-9]*/*.pom 2> /dev/null`
-        do
-                jar=`echo ${pom} | sed -e "s|\(.*\)\.pom|\1.jar|"`
-                if [ -f ${jar} ]
-                then
-                		# jar found, so keep it
-                        exit 1
-                fi
-                # pom without jar found, let's answer true below
-                r=0
-        done
-        exit $r
-}
-export -f hasPomButNoJar
-
-/usr/bin/find org/eclipse/{jdt,pde,platform} -type d \
-	-exec /bin/bash -c 'hasPomButNoJar "$@"' bash {} \; \
-	-print -exec /bin/rm -rf {} \; -prune >> .logs/removed.txt
-# second "bash" is used as $0 in the function
-
-cd ${WORKSPACE}
-
-echo "========== Repo reduced: =========="
-/usr/bin/du -sc ${Repo}/*
-/usr/bin/du -sc ${Repo}/org/*
-/usr/bin/du -sc ${Repo}/org/eclipse/*
-echo "==================================="
-
-#================================================================================
-#   (2) Garbage Collector
-#================================================================================
-# Removes from the build output of cbiAggregator everything that is not referenced 
-# from any pom below org/eclipse/{platform,jdt,pde}
-#
-# Log output:
-#  .logs/removedGarbage.txt	all directories during garbage collection 
-#  .logs/gc.log 			incoming dependencies of retained artifacts
-#  .logs/empty-dirs.txt		removed empty directories 
-
-echo "==== Garbage Collector ===="
-
-cd ${Repo}
-
-#==== function gc_bundle(): ====
-# Test if pom ${1} is referenced in any other pom.
-# If not, append the containing directory to the file "toremove.txt"
-function gc_bundle {
-        AID=`echo ${1} | sed -e "s|.*/\(.*\)[_-].*|\1|"`
-        DIR=`echo ${1} | sed -e "s|\(.*\)/[0-9].*|\1|"`
-        POM=`basename ${1}`
-
-        ANSWER=`find org/eclipse/{platform,jdt,pde} -name \*.pom \! -name ${POM} \
-        		 -exec /bin/grep -q "<artifactId>${AID}</artifactId>" {} \; -print -quit`
-
-        if [ "$ANSWER" == "" ]
-        then
-                echo "Will remove $DIR"
-                echo $DIR >> toremove.txt
-        else
-                echo "$1 is used by $ANSWER"
-        fi
-}
-export -f gc_bundle
-
-#==== run the garbage collector: ====
-# iterate (max 5 times) in case artifacts were used only from garbage:
-for iteration in 1 2 3 4 5
-do
-	echo "== GC iteration ${iteration} =="
-
-	# look for garbage only outside platform, jdt or pde folders:
-	find -name platform -prune -o -name jdt -prune -o -name pde -prune -o \
-		 -name \*.pom -exec /bin/bash -c 'gc_bundle "$@"' bash {} \; \
-		 > gc-${iteration}.log
-	# second "bash" is used as $0 in the function
-	
-	if [ ! -f toremove.txt ]
-	then
-		# no more garbage found
-		break
-	fi
-	cat toremove.txt >> .logs/removedGarbage.txt
-	for d in `cat toremove.txt`; do /bin/rm -r $d; done	
-	/bin/rm toremove.txt
-done
-
-# merge gc logs:
-cat gc-*.log | sort --unique > .logs/gc.log
-/bin/rm gc-*.log
-
-#==== remove all directories that have become empty: ====
-for iteration in 1 2 3 4 5 6 ; do find -type d -empty -print \
- 	-exec /bin/rmdir {} \; -prune; done \
- 	>> .logs/empty-dirs.txt
-
-echo "========== Repo reduced: =========="
-/usr/bin/du -sc ${Repo}/*
-/usr/bin/du -sc ${Repo}/org/*
-/usr/bin/du -sc ${Repo}/org/eclipse/*
-echo "==================================="
-
-cd ${WORKSPACE}
-
-#================================================================================
-#   (3) Enrich POMs
-#================================================================================
-# Add some required information to the generated poms:
-# - dynamic content (retrieved mostly from MANIFEST.MF):
-#   - name
-#   - url
-#   - scm connection, tag and url
-# - semi dynamic
-#   - developers (based on static map git-repo-base -> project leads)
-# - static content
-#   - license
-#   - organization
-#   - issue management
-
-
-echo "==== Enrich POMs ===="
-
-# build the jar:
-cd ${WORKSPACE}/work
-mkdir bin
-cd src
-javac -d ../bin/ `find * -name \*.java`
-cd ../bin
-jar cefv ${ENRICH_POMS_PACKAGE}.EnrichPoms ${ENRICH_POMS_JAR} `find * -name \*.class`
-cd ${WORKSPACE}
-/bin/ls -l ${ENRICH_POMS_JAR}
-
-cd ${Repo}
-
-echo "platform"
-java -jar ${ENRICH_POMS_JAR} `pwd`/org/eclipse/platform &> .logs/enrich-platform.txt
-echo "jdt"
-java -jar ${ENRICH_POMS_JAR} `pwd`/org/eclipse/jdt &> .logs/enrich-jdt.txt
-echo "pde"
-java -jar ${ENRICH_POMS_JAR} `pwd`/org/eclipse/pde &> .logs/enrich-pde.txt
-
-
-echo "==== Add Javadoc stubs ===="
-
-cd ${Repo}
-
-# (groupSimpleName, javadocArtifactGA)
-function createJavadocs() {
-	group=${1}
-	jar="${1}-javadoc.jar"
-	artifact=${2}
-	if [ -r ${jar} ]
-	then
-		/bin/rm ${jar}
-	fi
-	echo -e "Corresponding javadoc can be found in artifact ${artifact}\n" > README.txt
-	jar cf ${jar} README.txt
-	for pom in org/eclipse/${group}/*/*/*.pom
-	do
-		javadoc=`echo ${pom} | sed -e "s|\(.*\)\.pom|\1-javadoc.jar|"`
-		/bin/cp ${jar} ${javadoc}
-	done	
-}
-
-createJavadocs platform org.eclipse.platform:org.eclipse.platform.doc.isv
-createJavadocs jdt org.eclipse.jdt:org.eclipse.jdt.doc.isv
-createJavadocs pde org.eclipse.pde:org.eclipse.pde.doc.user
-
-echo "==== Create missing sources artifacts ===="
-
-cd ${Repo}
-
-function buildSourceJar() {
-	if [ -d assemble ]
-	then
-		/bin/rm -r assemble
-	fi
-	/bin/mkdir assemble
-	giturl=ssh://genie.releng@git.eclipse.org:29418/${1}
-	gitpath=${2}
-	gittag=${3}
-	group=${4}
-	artifact=${5}
-	version=${6}
-	git archive --remote=${giturl} \
-		${gittag} ${gitpath} \
-		| tar xv
-	/bin/mv ${gitpath}/src/* assemble/
-	/bin/mv ${gitpath}/META-INF assemble/
-	if [ -d ${gitpath}/OSGI-INF ]
-	then
-		/bin/mv ${gitpath}/OSGI-INF assemble/
-	fi
-	/bin/mv ${gitpath}/about.html assemble/
-	if [ $# > 6 ]
-	then
-		shift 6
-		for src in "$@"
-		do
-			/bin/mv "${gitpath}/${src}" assemble/ 
-		done
-	fi
-	/bin/rm -rf ${gitpath}
-	cd assemble
-	jar cf ../${group}/${artifact}/${version}/${artifact}-${version}-sources.jar *
-	cd -
-}
-
-while read line
-do
-    buildSourceJar $line 
-done < ${WORKSPACE}/work/sourceBundles.txt
-
-# copy ecj-src from build output (NB: we are mapping from SDK version (4.x) back to ECJ version (3.x)):
-scp genie.releng@projects-storage.eclipse.org:${DROPS4}/${SDK_BUILD_DIR}/ecjsrc-${SDK_VERSION}.jar org/eclipse/jdt/ecj/${ECJ_VERSION}/ecj-${ECJ_VERSION}-sources.jar
-
-echo "========== Repo completed ========="
-
-create_baseline
-
-echo "========== Next baseline created ========="
-
-cd ${WORKSPACE}
diff --git a/publish-to-maven-central/SDK4Mvn.aggr b/publish-to-maven-central/SDK4Mvn.aggr
deleted file mode 100644
index c233df3..0000000
--- a/publish-to-maven-central/SDK4Mvn.aggr
+++ /dev/null
@@ -1,72 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<aggregator:Aggregation xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aggregator="http://www.eclipse.org/cbi/p2repo/2011/aggregator/1.1.0" label="SDK4Mvn" packedStrategy="UNPACK_AS_SIBLING" type="R" mavenResult="true" versionFormat="MavenRelease">
-  <validationSets label="main">
-    <contributions label="sdk">
-      <repositories enabled="false" location="/home/data/httpd/download.eclipse.org/eclipse/updates/4.22/R-4.22-202111241800/">
-        <mapRules xsi:type="aggregator:ExclusionRule" name="org.eclipse.e4.core.tools.feature.feature.group"/>
-        <mapRules xsi:type="aggregator:ExclusionRule" name="org.eclipse.e4.core.tools.feature.source.feature.group"/>
-      </repositories>
-      <repositories enabled="false" location="/home/data/httpd/download.eclipse.org/eclipse/updates/4.22/R-4.22-202111241800/">
-        <bundles name="org.eclipse.jdt.core.compiler.batch"/>
-      </repositories>
-    </contributions>
-    <contributions label="sdk_http">
-      <repositories location="https://download.eclipse.org/eclipse/updates/4.22/R-4.22-202111241800/">
-        <mapRules xsi:type="aggregator:ExclusionRule" name="org.eclipse.e4.core.tools.feature.feature.group"/>
-        <mapRules xsi:type="aggregator:ExclusionRule" name="org.eclipse.e4.core.tools.feature.source.feature.group"/>
-      </repositories>
-      <repositories location="https://download.eclipse.org/eclipse/updates/4.22/R-4.22-202111241800/">
-        <bundles name="org.eclipse.jdt.core.compiler.batch"/>
-      </repositories>
-    </contributions>
-    <validationRepositories enabled="false" location="/home/data/httpd/download.eclipse.org/modeling/emf/emf/builds/release/2.28/"/>
-    <validationRepositories location="https://download.eclipse.org/modeling/emf/emf/builds/release/2.28/"/>
-    <validationRepositories enabled="false" location="/home/data/httpd/download.eclipse.org/tools/orbit/downloads/drops/R20211122181901/repository/"/>
-    <validationRepositories location="https://download.eclipse.org/tools/orbit/downloads/drops/R20211122181901/repository/"/>
-  </validationSets>
-  <configurations operatingSystem="linux" windowSystem="gtk" architecture="aarch64"/>
-  <configurations operatingSystem="linux" windowSystem="gtk" architecture="ppc64le"/>
-  <configurations operatingSystem="linux" windowSystem="gtk" architecture="x86_64"/>
-  <configurations operatingSystem="macosx" windowSystem="cocoa" architecture="x86_64"/>
-  <configurations operatingSystem="macosx" windowSystem="cocoa" architecture="aarch64"/>
-  <configurations architecture="x86_64"/>
-  <mavenMappings namePattern="(org\.eclipse\.jdt)\.core\.compiler\.batch" groupId="$1" artifactId="ecj"/>
-  <mavenMappings namePattern="(org\.eclipse\.jdt)(.*)" groupId="$1" artifactId="$1$2"/>
-  <mavenMappings namePattern="(org\.eclipse\.pde)(.*)" groupId="$1" artifactId="$1$2"/>
-  <mavenMappings namePattern="(org.eclipse.jetty)(.*)" groupId="$1" artifactId="$1$2"/>
-  <mavenMappings namePattern="(org.eclipse.ecf)(.*)" groupId="$1" artifactId="$1$2"/>
-  <mavenMappings namePattern="(org.eclipse.emf)(.*)" groupId="$1" artifactId="$1$2"/>
-  <mavenMappings namePattern="(org\.eclipse)(.*)$" groupId="$1.platform" artifactId="$1$2"/>
-  <mavenMappings namePattern="com\.ibm\.icu" groupId="com.ibm.icu" artifactId="icu4j" versionPattern="([^.]+)\.([^.]+)\.0(?:\..*)?" versionTemplate="$1.$2"/>
-  <mavenMappings namePattern="(com\.jcraft)\.(.*)" groupId="$1" artifactId="$2"/>
-  <mavenMappings namePattern="com\.sun\.el" groupId="org.eclipse.jetty.orbit" artifactId="com.sun.el"/>
-  <mavenMappings namePattern="javax\.annotation" groupId="jakarta.annotation" artifactId="jakarta.annotation-api"/>
-  <mavenMappings namePattern="javax\.el" groupId="javax.el" artifactId="el-api"/>
-  <mavenMappings namePattern="javax\.servlet$" groupId="javax.servlet" artifactId="javax.servlet-api"/>
-  <mavenMappings namePattern="javax\.servlet\.jsp" groupId="javax.servlet.jsp" artifactId="javax.servlet.jsp-api"/>
-  <mavenMappings namePattern="(javax.inject)" groupId="$1" artifactId="$1" versionPattern="([^.]+)\.0(?:\..*)?" versionTemplate="$1"/>
-  <mavenMappings namePattern="org\.apache\.(commons)\.([^.]+)" groupId="$1-$2" artifactId="$1-$2" versionPattern="([^.]+)\.([^.]+)\.0(?:\..*)?" versionTemplate="$1.$2"/>
-  <mavenMappings namePattern="(org\.apache\.httpcomponents)\.([^.]+)$" groupId="$1" artifactId="$2"/>
-  <mavenMappings namePattern="org\.apache\.lucene\.core" groupId="org.apache.lucene" artifactId="lucene-core"/>
-  <mavenMappings namePattern="org\.apache\.lucene\.analysis" groupId="org.apache.lucene" artifactId="lucene-analyzers"/>
-  <mavenMappings namePattern="(org\.apache\.felix)(\.gogo\.[^.]+)" groupId="$1" artifactId="$1$2"/>
-  <mavenMappings namePattern="org\.apache\.ant$" groupId="org.apache.ant" artifactId="ant"/>
-  <mavenMappings namePattern="(org.apache)\.(sshd)\.(core)" groupId="$1.$2" artifactId="$2-$3"/>
-  <mavenMappings namePattern="(org\.objectweb)\.([^.]+)$" groupId="org.ow2.asm" artifactId="$2"/>
-  <mavenMappings namePattern="(org\.objectweb)\.([^.]+)\.([^.]+)" groupId="org.ow2.asm" artifactId="$2-$3"/>
-  <mavenMappings namePattern="org.tukaani.xz" groupId="org.tukaani" artifactId="xz" versionPattern="([^.]+)\.([^.]+)\.0(?:\..*)?" versionTemplate="$1.$2"/>
-  <mavenMappings namePattern="org.hamcrest.core" groupId="org.hamcrest" artifactId="hamcrest-core"/>
-  <mavenMappings namePattern="(org\.junit)\.([^.]+)\.([^.]+)" groupId="$1.$2" artifactId="junit-$2-$3"/>
-  <mavenMappings namePattern="(org\.junit)\.([^.]+)\.([^.]+)\.([^.]+)" groupId="$1.$2" artifactId="junit-$2-$3-$4"/>
-  <mavenMappings namePattern="(org)\.(opentest4j)" groupId="$1.$2" artifactId="$2"/>
-  <mavenMappings namePattern="(org)\.(apiguardian)" groupId="$1.$2" artifactId="$2-api"/>
-  <mavenMappings namePattern="org.junit" groupId="junit" artifactId="junit" versionPattern="([^.]+)\.([^.]+)\.0(?:\..*)?" versionTemplate="$1.$2"/>
-  <mavenMappings namePattern="org\.(sat4j)\.(.*)" groupId="org.ow2.$1" artifactId="org.ow2.$1.$2"/>
-  <mavenMappings namePattern="org.w3c.css.sac" groupId="org.eclipse.birt.runtime" artifactId="org.w3c.css.sac"/>
-  <mavenMappings namePattern="org.apache.batik.css" groupId="org.apache.xmlgraphics" artifactId="batik-css" versionPattern="([^.]+)\.([^.]+)\.0(?:\..*)?" versionTemplate="$1.$2"/>
-  <mavenMappings namePattern="com.google.gson" groupId="com.google.code.gson" artifactId="gson"/>
-  <mavenMappings namePattern="com.sun.jna.platform" groupId="net.java.dev.jna" artifactId="jna-platform"/>
-  <mavenMappings namePattern="com.sun.jna" groupId="net.java.dev.jna" artifactId="jna"/>
-  <mavenMappings namePattern="^(([^.]+(?:\.[^.]+(?:\.[^.]+)?)?)(?:\.[^.]+)*)$" groupId="$2" artifactId="$1"/>
-  <mavenMappings namePattern="(.*)" groupId="p2.osgi.bundle" artifactId="$1"/>
-</aggregator:Aggregation>
diff --git a/publish-to-maven-central/baseline.txt b/publish-to-maven-central/baseline.txt
deleted file mode 100644
index c8a6b53..0000000
--- a/publish-to-maven-central/baseline.txt
+++ /dev/null
@@ -1,302 +0,0 @@
-VERSION_org_w3c_css_sac=1.3.1
-VERSION_org_eclipse_ecf=3.9.102
-VERSION_org_eclipse_ecf_filetransfer=5.1.102
-VERSION_org_eclipse_ecf_provider_filetransfer=3.2.700
-VERSION_org_eclipse_emf_databinding=1.5.0
-VERSION_org_eclipse_emf_databinding_edit=1.7.0
-VERSION_org_eclipse_emf_ecore=2.25.0
-VERSION_org_eclipse_emf_ecore_change=2.14.0
-VERSION_org_eclipse_emf_ecore_xmi=2.16.0
-VERSION_org_eclipse_emf_edit=2.16.0
-VERSION_ecj=3.28.0
-VERSION_org_eclipse_jdt=3.18.1000
-VERSION_org_eclipse_jdt_annotation=1.2.0
-VERSION_org_eclipse_jdt_annotation=1.2.0,2.2.600
-VERSION_org_eclipse_jdt_apt_core=3.7.50
-VERSION_org_eclipse_jdt_apt_pluggable_core=1.3.0
-VERSION_org_eclipse_jdt_apt_ui=3.7.0
-VERSION_org_eclipse_jdt_compiler_apt=1.4.50
-VERSION_org_eclipse_jdt_compiler_tool=1.3.50
-VERSION_org_eclipse_jdt_core=3.28.0
-VERSION_org_eclipse_jdt_core_formatterapp=1.1.0
-VERSION_org_eclipse_jdt_core_manipulation=1.15.100
-VERSION_org_eclipse_jdt_debug=3.19.0
-VERSION_org_eclipse_jdt_debug_ui=3.12.500
-VERSION_org_eclipse_jdt_doc_isv=3.14.1400
-VERSION_org_eclipse_jdt_doc_user=3.15.1200
-VERSION_org_eclipse_jdt_junit=3.13.0
-VERSION_org_eclipse_jdt_junit4_runtime=1.2.0
-VERSION_org_eclipse_jdt_junit5_runtime=1.0.1400
-VERSION_org_eclipse_jdt_junit_core=3.11.100
-VERSION_org_eclipse_jdt_junit_runtime=3.6.100
-VERSION_org_eclipse_jdt_launching=3.19.400
-VERSION_org_eclipse_jdt_launching_macosx=3.4.800
-VERSION_org_eclipse_jdt_launching_ui_macosx=1.2.900
-VERSION_org_eclipse_jdt_ui=3.25.0
-VERSION_org_eclipse_pde=3.13.1700
-VERSION_org_eclipse_pde_api_tools=1.2.700
-VERSION_org_eclipse_pde_api_tools_annotations=1.1.400
-VERSION_org_eclipse_pde_api_tools_ee_cdcfoundation10=1.1.400
-VERSION_org_eclipse_pde_api_tools_ee_cdcfoundation11=1.1.400
-VERSION_org_eclipse_pde_api_tools_ee_osgiminimum10=1.1.400
-VERSION_org_eclipse_pde_api_tools_ee_osgiminimum11=1.1.400
-VERSION_org_eclipse_pde_api_tools_ee_osgiminimum12=1.1.400
-VERSION_org_eclipse_pde_api_tools_ui=1.2.500
-VERSION_org_eclipse_pde_build=3.11.100
-VERSION_org_eclipse_pde_core=3.15.0
-VERSION_org_eclipse_pde_doc_user=3.14.1400
-VERSION_org_eclipse_pde_ds1_2_lib=1.0.500
-VERSION_org_eclipse_pde_ds_annotations=1.2.200
-VERSION_org_eclipse_pde_ds_core=1.2.300
-VERSION_org_eclipse_pde_ds_lib=1.1.500
-VERSION_org_eclipse_pde_ds_ui=1.2.100
-VERSION_org_eclipse_pde_genericeditor_extension=1.1.100
-VERSION_org_eclipse_pde_junit_runtime=3.6.100
-VERSION_org_eclipse_pde_launching=3.9.500
-VERSION_org_eclipse_pde_runtime=3.7.200
-VERSION_org_eclipse_pde_spy_core=1.0.0
-VERSION_org_eclipse_pde_spy_css=0.12.100
-VERSION_org_eclipse_pde_spy_model=0.12.100
-VERSION_org_eclipse_pde_spy_preferences=0.12.100
-VERSION_org_eclipse_pde_ua_core=1.2.300
-VERSION_org_eclipse_pde_ua_ui=1.2.200
-VERSION_org_eclipse_pde_ui=3.13.300
-VERSION_org_eclipse_pde_ui_templates=3.7.400
-VERSION_org_eclipse_ant_core=3.6.200
-VERSION_org_eclipse_ant_launching=1.3.100
-VERSION_org_eclipse_ant_optional_junit=3.3.300
-VERSION_org_eclipse_ant_ui=3.8.100
-VERSION_org_eclipse_compare=3.8.200
-VERSION_org_eclipse_compare_core=3.6.1000
-VERSION_org_eclipse_compare_examples=3.3.0
-VERSION_org_eclipse_compare_examples_xml=3.5.0
-VERSION_org_eclipse_compare_win32=1.2.800
-VERSION_org_eclipse_core_commands=3.10.100
-VERSION_org_eclipse_core_contenttype=3.8.100
-VERSION_org_eclipse_core_databinding=1.10.100
-VERSION_org_eclipse_core_databinding_beans=1.8.0
-VERSION_org_eclipse_core_databinding_observable=1.11.0
-VERSION_org_eclipse_core_databinding_property=1.9.0
-VERSION_org_eclipse_core_expressions=3.8.100
-VERSION_org_eclipse_core_externaltools=1.2.100
-VERSION_org_eclipse_core_filebuffers=3.7.100
-VERSION_org_eclipse_core_filesystem=1.9.200
-VERSION_org_eclipse_core_filesystem_linux_aarch64=1.4.100
-VERSION_org_eclipse_core_filesystem_linux_ppc64le=1.4.100
-VERSION_org_eclipse_core_filesystem_linux_x86_64=1.2.300
-VERSION_org_eclipse_core_filesystem_macosx=1.3.300
-VERSION_org_eclipse_core_filesystem_win32_x86_64=1.4.200
-VERSION_org_eclipse_core_jobs=3.12.0
-VERSION_org_eclipse_core_net=1.3.1100
-VERSION_org_eclipse_core_net_linux=1.0.0
-VERSION_org_eclipse_core_net_linux_x86_64=1.2.500
-VERSION_org_eclipse_core_net_win32_x86_64=1.1.500
-VERSION_org_eclipse_core_resources=3.16.0
-VERSION_org_eclipse_core_resources_win32_x86_64=3.5.400
-VERSION_org_eclipse_core_runtime=3.24.0
-VERSION_org_eclipse_core_variables=3.5.100
-VERSION_org_eclipse_cvs=1.4.2000
-VERSION_org_eclipse_debug_core=3.18.300
-VERSION_org_eclipse_debug_examples_core=1.5.0
-VERSION_org_eclipse_debug_examples_ui=1.7.100
-VERSION_org_eclipse_debug_ui=3.15.200
-VERSION_org_eclipse_debug_ui_launchview=1.0.2
-VERSION_org_eclipse_e4_core_commands=1.0.0
-VERSION_org_eclipse_e4_core_contexts=1.9.100
-VERSION_org_eclipse_e4_core_di=1.8.100
-VERSION_org_eclipse_e4_core_di_annotations=1.7.100
-VERSION_org_eclipse_e4_core_di_extensions=0.17.100
-VERSION_org_eclipse_e4_core_di_extensions_supplier=0.16.200
-VERSION_org_eclipse_e4_core_services=2.3.100
-VERSION_org_eclipse_e4_emf_xpath=0.3.0
-VERSION_org_eclipse_e4_tools_emf_ui=4.7.100
-VERSION_org_eclipse_e4_tools_services=4.9.0
-VERSION_org_eclipse_e4_ui_bindings=0.13.100
-VERSION_org_eclipse_e4_ui_css_core=0.13.200
-VERSION_org_eclipse_e4_ui_css_swt=0.14.400
-VERSION_org_eclipse_e4_ui_css_swt_theme=0.13.0
-VERSION_org_eclipse_e4_ui_di=1.4.0
-VERSION_org_eclipse_e4_ui_dialogs=1.3.100
-VERSION_org_eclipse_e4_ui_ide=3.16.0
-VERSION_org_eclipse_e4_ui_model_workbench=2.2.0
-VERSION_org_eclipse_e4_ui_services=1.5.0
-VERSION_org_eclipse_e4_ui_swt_gtk=1.1.100
-VERSION_org_eclipse_e4_ui_swt_win32=1.1.0
-VERSION_org_eclipse_e4_ui_widgets=1.3.0
-VERSION_org_eclipse_e4_ui_workbench=1.13.100
-VERSION_org_eclipse_e4_ui_workbench3=0.16.0
-VERSION_org_eclipse_e4_ui_workbench_addons_swt=1.4.400
-VERSION_org_eclipse_e4_ui_workbench_renderers_swt=0.15.300
-VERSION_org_eclipse_e4_ui_workbench_renderers_swt_cocoa=0.12.600
-VERSION_org_eclipse_e4_ui_workbench_swt=0.16.300
-VERSION_org_eclipse_equinox_app=1.6.100
-VERSION_org_eclipse_equinox_bidi=1.4.100
-VERSION_org_eclipse_equinox_cm=1.5.100
-VERSION_org_eclipse_equinox_common=3.15.100
-VERSION_org_eclipse_equinox_concurrent=1.2.100
-VERSION_org_eclipse_equinox_console=1.4.500
-VERSION_org_eclipse_equinox_console_jaas_fragment=1.1.100
-VERSION_org_eclipse_equinox_console_ssh=1.2.900
-VERSION_org_eclipse_equinox_coordinator=1.4.100
-VERSION_org_eclipse_equinox_device=1.1.200
-VERSION_org_eclipse_equinox_event=1.6.100
-VERSION_org_eclipse_equinox_frameworkadmin=2.2.0
-VERSION_org_eclipse_equinox_frameworkadmin_equinox=1.2.100
-VERSION_org_eclipse_equinox_http_jetty=3.8.100
-VERSION_org_eclipse_equinox_http_registry=1.3.100
-VERSION_org_eclipse_equinox_http_servlet=1.7.200
-VERSION_org_eclipse_equinox_http_servletbridge=1.2.100
-VERSION_org_eclipse_equinox_jsp_jasper=1.1.600
-VERSION_org_eclipse_equinox_jsp_jasper_registry=1.2.100
-VERSION_org_eclipse_equinox_launcher=1.6.400
-VERSION_org_eclipse_equinox_launcher_cocoa_macosx=1.2.400
-VERSION_org_eclipse_equinox_launcher_cocoa_macosx_aarch64=1.2.400
-VERSION_org_eclipse_equinox_launcher_cocoa_macosx_x86_64=1.2.400
-VERSION_org_eclipse_equinox_launcher_gtk_linux_aarch64=1.2.400
-VERSION_org_eclipse_equinox_launcher_gtk_linux_ppc64le=1.2.400
-VERSION_org_eclipse_equinox_launcher_gtk_linux_x86_64=1.2.400
-VERSION_org_eclipse_equinox_launcher_win32_win32_x86_64=1.2.400
-VERSION_org_eclipse_equinox_log_stream=1.0.400
-VERSION_org_eclipse_equinox_metatype=1.6.100
-VERSION_org_eclipse_equinox_p2_artifact_repository=1.4.300
-VERSION_org_eclipse_equinox_p2_console=1.2.0
-VERSION_org_eclipse_equinox_p2_core=2.8.100
-VERSION_org_eclipse_equinox_p2_director=2.5.100
-VERSION_org_eclipse_equinox_p2_director_app=1.2.0
-VERSION_org_eclipse_equinox_p2_directorywatcher=1.3.0
-VERSION_org_eclipse_equinox_p2_discovery=1.2.0
-VERSION_org_eclipse_equinox_p2_discovery_compatibility=1.2.100
-VERSION_org_eclipse_equinox_p2_engine=2.7.200
-VERSION_org_eclipse_equinox_p2_extensionlocation=1.4.0
-VERSION_org_eclipse_equinox_p2_garbagecollector=1.2.0
-VERSION_org_eclipse_equinox_p2_installer=1.3.200
-VERSION_org_eclipse_equinox_p2_jarprocessor=1.2.100
-VERSION_org_eclipse_equinox_p2_metadata=2.6.100
-VERSION_org_eclipse_equinox_p2_metadata_repository=1.4.0
-VERSION_org_eclipse_equinox_p2_operations=2.6.0
-VERSION_org_eclipse_equinox_p2_publisher=1.6.200
-VERSION_org_eclipse_equinox_p2_publisher_eclipse=1.4.1
-VERSION_org_eclipse_equinox_p2_reconciler_dropins=1.4.0
-VERSION_org_eclipse_equinox_p2_repository=2.5.300
-VERSION_org_eclipse_equinox_p2_repository_tools=2.3.0
-VERSION_org_eclipse_equinox_p2_touchpoint_eclipse=2.3.100
-VERSION_org_eclipse_equinox_p2_touchpoint_natives=1.4.200
-VERSION_org_eclipse_equinox_p2_transport_ecf=1.3.200
-VERSION_org_eclipse_equinox_p2_ui=2.7.300
-VERSION_org_eclipse_equinox_p2_ui_admin=1.2.0
-VERSION_org_eclipse_equinox_p2_ui_admin_rcp=1.3.100
-VERSION_org_eclipse_equinox_p2_ui_discovery=1.2.300
-VERSION_org_eclipse_equinox_p2_ui_importexport=1.3.200
-VERSION_org_eclipse_equinox_p2_ui_sdk=1.2.2
-VERSION_org_eclipse_equinox_p2_ui_sdk_scheduler=1.5.200
-VERSION_org_eclipse_equinox_p2_updatechecker=1.3.0
-VERSION_org_eclipse_equinox_p2_updatesite=1.2.200
-VERSION_org_eclipse_equinox_preferences=3.9.100
-VERSION_org_eclipse_equinox_region=1.5.200
-VERSION_org_eclipse_equinox_registry=3.11.100
-VERSION_org_eclipse_equinox_security=1.3.800
-VERSION_org_eclipse_equinox_security_linux=1.0.200
-VERSION_org_eclipse_equinox_security_macosx=1.101.400
-VERSION_org_eclipse_equinox_security_ui=1.3.100
-VERSION_org_eclipse_equinox_security_win32_x86_64=1.1.300
-VERSION_org_eclipse_equinox_servletbridge=1.6.100
-VERSION_org_eclipse_equinox_simpleconfigurator=1.4.0
-VERSION_org_eclipse_equinox_simpleconfigurator_manipulator=2.2.0
-VERSION_org_eclipse_equinox_supplement=1.10.300
-VERSION_org_eclipse_equinox_transforms_hook=1.3.100
-VERSION_org_eclipse_equinox_transforms_xslt=1.2.100
-VERSION_org_eclipse_equinox_useradmin=1.2.200
-VERSION_org_eclipse_equinox_weaving_caching=1.2.100
-VERSION_org_eclipse_equinox_weaving_caching_j9=1.2.100
-VERSION_org_eclipse_equinox_weaving_hook=1.3.100
-VERSION_org_eclipse_help=3.9.100
-VERSION_org_eclipse_help_base=4.3.500
-VERSION_org_eclipse_help_ui=4.3.200
-VERSION_org_eclipse_help_webapp=3.10.500
-VERSION_org_eclipse_jface=3.24.0
-VERSION_org_eclipse_jface_databinding=1.13.0
-VERSION_org_eclipse_jface_examples_databinding=1.2.100
-VERSION_org_eclipse_jface_notifications=0.4.0
-VERSION_org_eclipse_jface_text=3.19.0
-VERSION_org_eclipse_jsch_core=1.3.900
-VERSION_org_eclipse_jsch_ui=1.4.100
-VERSION_org_eclipse_ltk_core_refactoring=3.12.100
-VERSION_org_eclipse_ltk_ui_refactoring=3.12.0
-VERSION_org_eclipse_osgi=3.17.100
-VERSION_org_eclipse_osgi_compatibility_state=1.2.500
-VERSION_org_eclipse_osgi_services=3.10.200
-VERSION_org_eclipse_osgi_util=3.6.100
-VERSION_org_eclipse_platform=4.22.0
-VERSION_org_eclipse_platform_doc_isv=4.22.0
-VERSION_org_eclipse_platform_doc_user=4.22.0
-VERSION_org_eclipse_rcp=4.22.0
-VERSION_org_eclipse_sdk=4.22.0
-VERSION_org_eclipse_sdk_examples=4.22.0
-VERSION_org_eclipse_search=3.14.0
-VERSION_org_eclipse_swt=3.118.0
-VERSION_org_eclipse_swt_cocoa_macosx_aarch64=3.118.0
-VERSION_org_eclipse_swt_cocoa_macosx_x86_64=3.118.0
-VERSION_org_eclipse_swt_examples=3.107.100
-VERSION_org_eclipse_swt_examples_browser_demos=3.107.0
-VERSION_org_eclipse_swt_examples_launcher=3.107.0
-VERSION_org_eclipse_swt_examples_ole_win32=3.108.0
-VERSION_org_eclipse_swt_examples_views=3.107.0
-VERSION_org_eclipse_swt_gtk_linux_aarch64=3.118.0
-VERSION_org_eclipse_swt_gtk_linux_ppc64le=3.118.0
-VERSION_org_eclipse_swt_gtk_linux_x86_64=3.118.0
-VERSION_org_eclipse_swt_tools=3.109.300
-VERSION_org_eclipse_swt_tools_base=3.107.300
-VERSION_org_eclipse_swt_tools_spies=3.108.200
-VERSION_org_eclipse_swt_win32_win32_x86_64=3.118.0
-VERSION_org_eclipse_team_core=3.9.200
-VERSION_org_eclipse_team_cvs_core=3.5.0
-VERSION_org_eclipse_team_cvs_ssh2=3.4.0
-VERSION_org_eclipse_team_cvs_ui=3.5.0
-VERSION_org_eclipse_team_examples_filesystem=3.6.0
-VERSION_org_eclipse_team_genericeditor_diff_extension=1.1.0
-VERSION_org_eclipse_team_ui=3.9.100
-VERSION_org_eclipse_text=3.12.0
-VERSION_org_eclipse_text_quicksearch=1.1.200
-VERSION_org_eclipse_tips_core=0.2.0
-VERSION_org_eclipse_tips_ide=0.2.0
-VERSION_org_eclipse_tips_json=0.2.100
-VERSION_org_eclipse_tips_ui=0.2.0
-VERSION_org_eclipse_tools_layout_spy=1.1.0
-VERSION_org_eclipse_ui=3.200.0
-VERSION_org_eclipse_ui_browser=3.7.100
-VERSION_org_eclipse_ui_cheatsheets=3.7.300
-VERSION_org_eclipse_ui_cocoa=1.2.400
-VERSION_org_eclipse_ui_console=3.11.100
-VERSION_org_eclipse_ui_editors=3.14.300
-VERSION_org_eclipse_ui_examples_contributions=3.5.0
-VERSION_org_eclipse_ui_examples_fieldassist=1.2.200
-VERSION_org_eclipse_ui_examples_javaeditor=3.3.100
-VERSION_org_eclipse_ui_examples_multipageeditor=3.3.0
-VERSION_org_eclipse_ui_examples_propertysheet=3.4.0
-VERSION_org_eclipse_ui_examples_readmetool=3.6.0
-VERSION_org_eclipse_ui_examples_undo=3.4.0
-VERSION_org_eclipse_ui_examples_uriSchemeHandler=1.1.100
-VERSION_org_eclipse_ui_examples_views_properties_tabbed_article=3.3.0
-VERSION_org_eclipse_ui_externaltools=3.5.100
-VERSION_org_eclipse_ui_forms=3.11.300
-VERSION_org_eclipse_ui_genericeditor=1.2.100
-VERSION_org_eclipse_ui_genericeditor_examples=1.2.0
-VERSION_org_eclipse_ui_ide=3.18.400
-VERSION_org_eclipse_ui_ide_application=1.4.200
-VERSION_org_eclipse_ui_intro=3.6.400
-VERSION_org_eclipse_ui_intro_quicklinks=1.1.100
-VERSION_org_eclipse_ui_intro_universal=3.4.200
-VERSION_org_eclipse_ui_monitoring=1.2.0
-VERSION_org_eclipse_ui_navigator=3.10.200
-VERSION_org_eclipse_ui_navigator_resources=3.8.300
-VERSION_org_eclipse_ui_net=1.4.0
-VERSION_org_eclipse_ui_themes=1.2.1600
-VERSION_org_eclipse_ui_trace=1.2.0
-VERSION_org_eclipse_ui_views=3.11.100
-VERSION_org_eclipse_ui_views_log=1.3.100
-VERSION_org_eclipse_ui_views_properties_tabbed=3.9.100
-VERSION_org_eclipse_ui_win32=3.4.400
-VERSION_org_eclipse_ui_workbench=3.124.0
-VERSION_org_eclipse_ui_workbench_texteditor=3.16.300
-VERSION_org_eclipse_update_configurator=3.4.800
-VERSION_org_eclipse_urischeme=1.2.100
diff --git a/publish-to-maven-central/enrichPoms.jardesc b/publish-to-maven-central/enrichPoms.jardesc
deleted file mode 100644
index c44980f..0000000
--- a/publish-to-maven-central/enrichPoms.jardesc
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<jardesc>
-    <jar path="CollectPomInfo/enrichPoms.jar"/>
-    <options buildIfNeeded="true" compress="true" descriptionLocation="/CollectPomInfo/enrichPomFiles.jardesc" exportErrors="true" exportWarnings="true" includeDirectoryEntries="false" overwrite="false" saveDescription="true" storeRefactorings="false" useSourceFolders="false"/>
-    <storedRefactorings deprecationInfo="true" structuralOnly="false"/>
-    <selectedProjects/>
-    <manifest generateManifest="true" mainClassHandleIdentifier="=CollectPomInfo/src&lt;org.eclipse.cbi.p2repo.aggregator.maven.pom{EnrichPoms.java[EnrichPoms" manifestLocation="" manifestVersion="1.0" reuseManifest="false" saveManifest="false" usesManifest="true">
-        <sealing sealJar="false">
-            <packagesToSeal/>
-            <packagesToUnSeal/>
-        </sealing>
-    </manifest>
-    <selectedElements exportClassFiles="true" exportJavaFiles="false" exportOutputFolder="false">
-        <javaElement handleIdentifier="=CollectPomInfo/src"/>
-    </selectedElements>
-</jardesc>
diff --git a/publish-to-maven-central/jdt-pom.xml b/publish-to-maven-central/jdt-pom.xml
deleted file mode 100644
index eb01d73..0000000
--- a/publish-to-maven-central/jdt-pom.xml
+++ /dev/null
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>org.eclipse.cbi</groupId>
-  <artifactId>org.eclipse.jdt.publish2maven</artifactId>
-  <version>0.0.1-SNAPSHOT</version>
-  <packaging>pom</packaging>
-  
-  <properties>
-  	<gpg.key.id>B414F87E</gpg.key.id>
-  </properties>
-
-  <distributionManagement>
-    <snapshotRepository>
-      <id>ossrh</id>
-      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
-    </snapshotRepository>
-  </distributionManagement>
-
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-gpg-plugin</artifactId>
-        <version>1.6</version>
-        <configuration>
-          <gpgArguments>
-            <arg>--default-key</arg>
-            <arg>${gpg.key.id}</arg>
-          </gpgArguments>
-        </configuration>
-        <executions>
-          <execution>
-            <id>sign-artifacts</id>
-            <phase>verify</phase>
-            <goals>
-              <goal>sign</goal>
-            </goals>
-            <configuration>
-              <gpgArguments>
-                <arg>--pinentry-mode</arg>
-                <arg>loopback</arg>
-              </gpgArguments>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.sonatype.plugins</groupId>
-        <artifactId>nexus-staging-maven-plugin</artifactId>
-        <version>1.1</version>
-        <extensions>true</extensions>
-        <configuration>
-        <!-- The Base URL of Nexus instance where we want to stage -->
-          <nexusUrl>https://oss.sonatype.org/service/local/staging/deploy/maven2/</nexusUrl>
-          <!-- The server "id" element from settings to use authentication from -->
-          <serverId>ossrh</serverId>
-        </configuration>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/publish-to-maven-central/pde-pom.xml b/publish-to-maven-central/pde-pom.xml
deleted file mode 100644
index e55a638..0000000
--- a/publish-to-maven-central/pde-pom.xml
+++ /dev/null
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>org.eclipse.cbi</groupId>
-  <artifactId>org.eclipse.pde.publish2maven</artifactId>
-  <version>0.0.1-SNAPSHOT</version>
-  <packaging>pom</packaging>
-  
-  <properties>
-  	<gpg.key.id>86085154</gpg.key.id>
-  </properties>
-
-  <distributionManagement>
-    <snapshotRepository>
-      <id>ossrh</id>
-      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
-    </snapshotRepository>
-  </distributionManagement>
-
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-gpg-plugin</artifactId>
-        <version>1.6</version>
-        <configuration>
-          <gpgArguments>
-            <arg>--default-key</arg>
-            <arg>${gpg.key.id}</arg>
-          </gpgArguments>
-        </configuration>
-        <executions>
-          <execution>
-            <id>sign-artifacts</id>
-            <phase>verify</phase>
-            <goals>
-              <goal>sign</goal>
-            </goals>
-            <configuration>
-              <gpgArguments>
-                <arg>--pinentry-mode</arg>
-                <arg>loopback</arg>
-              </gpgArguments>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.sonatype.plugins</groupId>
-        <artifactId>nexus-staging-maven-plugin</artifactId>
-        <version>1.1</version>
-        <extensions>true</extensions>
-        <configuration>
-        <!-- The Base URL of Nexus instance where we want to stage -->
-          <nexusUrl>https://oss.sonatype.org/service/local/staging/deploy/maven2/</nexusUrl>
-          <!-- The server "id" element from settings to use authentication from -->
-          <serverId>ossrh</serverId>
-        </configuration>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/publish-to-maven-central/platform-pom.xml b/publish-to-maven-central/platform-pom.xml
deleted file mode 100644
index d8947b3..0000000
--- a/publish-to-maven-central/platform-pom.xml
+++ /dev/null
@@ -1,64 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<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">
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>org.eclipse.cbi</groupId>
-  <artifactId>org.eclipse.platform.publish2maven</artifactId>
-  <version>0.0.1-SNAPSHOT</version>
-  <packaging>pom</packaging>
-  
-  <properties>
-  	<gpg.key.id>CC641282</gpg.key.id>
-  </properties>
-
-  <distributionManagement>
-    <snapshotRepository>
-      <id>ossrh</id>
-      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
-    </snapshotRepository>
-  </distributionManagement>
-
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-gpg-plugin</artifactId>
-        <version>1.6</version>
-        <configuration>
-          <gpgArguments>
-            <arg>--default-key</arg>
-            <arg>${gpg.key.id}</arg>
-          </gpgArguments>
-          <retryFailedDeploymentCount>5</retryFailedDeploymentCount>
-        </configuration>
-        <executions>
-          <execution>
-            <id>sign-artifacts</id>
-            <phase>verify</phase>
-            <goals>
-              <goal>sign</goal>
-            </goals>
-            <configuration>
-              <gpgArguments>
-                <arg>--pinentry-mode</arg>
-                <arg>loopback</arg>
-              </gpgArguments>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.sonatype.plugins</groupId>
-        <artifactId>nexus-staging-maven-plugin</artifactId>
-        <version>1.1</version>
-        <extensions>true</extensions>
-        <configuration>
-        <!-- The Base URL of Nexus instance where we want to stage -->
-          <nexusUrl>https://oss.sonatype.org/service/local/staging/deploy/maven2/</nexusUrl>
-          <!-- The server "id" element from settings to use authentication from -->
-          <serverId>ossrh</serverId>
-        </configuration>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/publish-to-maven-central/properties.sh b/publish-to-maven-central/properties.sh
deleted file mode 100644
index 6c5aef2..0000000
--- a/publish-to-maven-central/properties.sh
+++ /dev/null
@@ -1,40 +0,0 @@
-#*******************************************************************************
-# Copyright (c) 2016, 2019 GK Software SE and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     Stephan Herrmann - initial API and implementation
-#********************************************************************************
-
-# ECLIPSE:
-APP_NAME_P2DIRECTOR=org.eclipse.equinox.p2.director
-DROPS4=/home/data/httpd/download.eclipse.org/eclipse/downloads/drops4
-SDK_BUILD_DIR=R-4.22-202111241800
-SDK_VERSION=4.22
-FILE_ECLIPSE=${DROPS4}/${SDK_BUILD_DIR}/eclipse-SDK-${SDK_VERSION}-linux-gtk-x86_64.tar.gz
-
-# JDT / ECJ:
-ECJ_VERSION=3.28.0
-
-# AGGREGATOR:
-IU_AGG_PRODUCT=org.eclipse.cbi.p2repo.cli.product
-URL_AGG_UPDATES=https://download.eclipse.org/cbi/updates/aggregator/headless/4.13/I20200825-1209/
-
-# LOCAL TOOLS:
-LOCAL_TOOLS=${WORKSPACE}/tools
-DIR_AGGREGATOR=aggregator
-AGGREGATOR=${LOCAL_TOOLS}/${DIR_AGGREGATOR}/cbiAggr
-ECLIPSE=${LOCAL_TOOLS}/eclipse/eclipse
-
-# ENRICH POMS tool:
-ENRICH_POMS_JAR=${WORKSPACE}/work/EnrichPoms.jar
-ENRICH_POMS_PACKAGE=org.eclipse.platform.releng.maven.pom
-
-# AGGREGATION MODEL:
-FILE_SDK_AGGR=${WORKSPACE}/work/SDK4Mvn.aggr
diff --git a/publish-to-maven-central/publishJDT.sh b/publish-to-maven-central/publishJDT.sh
deleted file mode 100644
index 153e9a1..0000000
--- a/publish-to-maven-central/publishJDT.sh
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/bin/sh
-#*******************************************************************************
-# Copyright (c) 2016, 2018 GK Software SE and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     Stephan Herrmann - initial API and implementation
-#********************************************************************************
-
-REPO_BASE=${WORKSPACE}/archive
-REPO=${REPO_BASE}/repo-${REPO_ID}
-JDT=org/eclipse/jdt
-
-# load versions from the baseline (to avoid illegal double-upload):
-source ${WORKSPACE}/baseline.txt
-
-wget https://ci.eclipse.org/releng/job/CBIaggregator/${REPO_ID}/artifact/*zip*/archive.zip
-unzip archive.zip
-
-if [ ! -d ${REPO} ]
-then
-	echo "No repo at ${REPO}"
-	exit 1
-fi
-
-echo "==== Copy artifacts from ${REPO}/${JDT} ===="
-
-if [ -d ${JDT} ]
-then
-	/bin/rm -r ${JDT}/*
-else
-	mkdir -p ${JDT}
-fi
-cp -r ${REPO}/${JDT}/* ${JDT}/
-
-
-echo "==== UPLOAD ===="
-
-URL=https://oss.sonatype.org/service/local/staging/deploy/maven2/
-REPO=ossrh
-SETTINGS=/home/jenkins/.m2/settings-deploy-ossrh-jdt.xml
-MVN=/opt/tools/apache-maven/latest/bin/mvn
-
-/bin/mkdir .log
-
-function same_as_baseline() {
-	simple=`basename $1`
-	name=`echo $simple | sed -e "s|\(.*\)-.*|\1|" | tr '.' '_'`
-	version=`echo $simple | sed -e "s|.*-\(.*\).pom|\1|"`
-	base_versions=`eval echo \\${VERSION_$name}`
-	if [ -n $base_versions ]
-	then
-		local base_single
-		while read -d "," base_single
-		do
-			if [ $base_single == $version ]; then
-				return 0
-			fi
-		done <<< "$base_versions"
-		if [ $base_single == $version ]; then
-			return 0
-		fi
-	else
-		echo "Plug-in ${name}: ${version} seems to be new"
-		return 1
-	fi
-	echo "different versions for ${name}: ${version} is not in ${base_versions}"
-	return 1
-}
-
-for pomFile in org/eclipse/jdt/*/*/*.pom
-do
-  if same_as_baseline $pomFile
-  then
-	  echo "Skipping file $pomFile which is already present in the baseline"
-  else
-	  file=`echo $pomFile | sed -e "s|\(.*\)\.pom|\1.jar|"`
-	  sourcesFile=`echo $pomFile | sed -e "s|\(.*\)\.pom|\1-sources.jar|"`
-	  javadocFile=`echo $pomFile | sed -e "s|\(.*\)\.pom|\1-javadoc.jar|"`
-	
-	  echo "${MVN} -f jdt-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file -Durl=${URL} -DrepositoryId=${REPO} -Dfile=${file} -DpomFile=${pomFile}"
-	  
-	  ${MVN} -f jdt-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file \
-	     -Durl=${URL} -DrepositoryId=${REPO} \
-	     -Dfile=${file} -DpomFile=${pomFile} \
-	     >> .log/artifact-upload.txt
-	     
-	  echo -e "\t${sourcesFile}"
-	  ${MVN} -f jdt-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file \
-	     -Durl=${URL} -DrepositoryId=${REPO} \
-	     -Dfile=${sourcesFile} -DpomFile=${pomFile} -Dclassifier=sources \
-	     >> .log/sources-upload.txt
-	  
-	  echo -e "\t${javadocFile}"
-	  ${MVN} -f jdt-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file \
-	     -Durl=${URL} -DrepositoryId=${REPO} \
-	     -Dfile=${javadocFile} -DpomFile=${pomFile} -Dclassifier=javadoc \
-	     >> .log/javadoc-upload.txt
-  fi
-done
-
-/bin/ls -la .log
-
-/bin/grep -i fail .log/*
-
diff --git a/publish-to-maven-central/publishPDE.sh b/publish-to-maven-central/publishPDE.sh
deleted file mode 100644
index 0067824..0000000
--- a/publish-to-maven-central/publishPDE.sh
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/bin/sh
-#*******************************************************************************
-# Copyright (c) 2016, 2018 GK Software SE and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     Stephan Herrmann - initial API and implementation
-#********************************************************************************
-
-REPO_BASE=${WORKSPACE}/archive
-REPO=${REPO_BASE}/repo-${REPO_ID}
-PDE=org/eclipse/pde
-
-# load versions from the baseline (to avoid illegal double-upload):
-source ${WORKSPACE}/baseline.txt
-
-wget https://ci.eclipse.org/releng/job/CBIaggregator/${REPO_ID}/artifact/*zip*/archive.zip
-unzip archive.zip
-
-if [ ! -d ${REPO} ]
-then
-	echo "No repo at ${REPO}"
-	exit 1
-fi
-
-echo "==== Copy artifacts from ${REPO}/${PDE} ===="
-
-if [ -d ${PDE} ]
-then
-	/bin/rm -r ${PDE}/*
-else
-	mkdir -p ${PDE}
-fi
-cp -r ${REPO}/${PDE}/* ${PDE}/
-
-
-echo "==== UPLOAD ===="
-
-URL=https://oss.sonatype.org/service/local/staging/deploy/maven2/
-REPO=ossrh
-SETTINGS=/home/jenkins/.m2/settings-deploy-ossrh-pde.xml
-MVN=/opt/tools/apache-maven/latest/bin/mvn
-
-/bin/mkdir .log
-
-function same_as_baseline() {
-	simple=`basename $1`
-	name=`echo $simple | sed -e "s|\(.*\)-.*|\1|" | tr '.' '_'`
-	version=`echo $simple | sed -e "s|.*-\(.*\).pom|\1|"`
-	base_versions=`eval echo \\${VERSION_$name}`
-	if [ -n $base_versions ]
-	then
-		local base_single
-		while read -d "," base_single
-		do
-			if [ $base_single == $version ]; then
-				return 0
-			fi
-		done <<< "$base_versions"
-		if [ $base_single == $version ]; then
-			return 0
-		fi
-	else
-		echo "Plug-in ${name}: ${version} seems to be new"
-		return 1
-	fi
-	echo "different versions for ${name}: ${version} is not in ${base_versions}"
-	return 1
-}
-
-for pomFile in org/eclipse/pde/*/*/*.pom
-do
-  if same_as_baseline $pomFile
-  then
-	  echo "Skipping file $pomFile which is already present in the baseline"
-  else
-	  file=`echo $pomFile | sed -e "s|\(.*\)\.pom|\1.jar|"`
-	  sourcesFile=`echo $pomFile | sed -e "s|\(.*\)\.pom|\1-sources.jar|"`
-	  javadocFile=`echo $pomFile | sed -e "s|\(.*\)\.pom|\1-javadoc.jar|"`
-	
-	  echo "${MVN} -f pde-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file -Durl=${URL} -DrepositoryId=${REPO} -Dfile=${file} -DpomFile=${pomFile}"
-	  
-	  ${MVN} -f pde-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file \
-	     -Durl=${URL} -DrepositoryId=${REPO} \
-	     -Dfile=${file} -DpomFile=${pomFile} \
-	     >> .log/artifact-upload.txt
-	     
-	  echo -e "\t${sourcesFile}"
-	  ${MVN} -f pde-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file \
-	     -Durl=${URL} -DrepositoryId=${REPO} \
-	     -Dfile=${sourcesFile} -DpomFile=${pomFile} -Dclassifier=sources \
-	     >> .log/sources-upload.txt
-	  
-	  echo -e "\t${javadocFile}"
-	  ${MVN} -f pde-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file \
-	     -Durl=${URL} -DrepositoryId=${REPO} \
-	     -Dfile=${javadocFile} -DpomFile=${pomFile} -Dclassifier=javadoc \
-	     >> .log/javadoc-upload.txt
-  fi
-done
-
-/bin/ls -la .log
-
-/bin/grep -i fail .log/*
-
diff --git a/publish-to-maven-central/publishPlatform.sh b/publish-to-maven-central/publishPlatform.sh
deleted file mode 100644
index ee4ccf5..0000000
--- a/publish-to-maven-central/publishPlatform.sh
+++ /dev/null
@@ -1,112 +0,0 @@
-#!/bin/sh
-#*******************************************************************************
-# Copyright (c) 2016, 2020 GK Software SE and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     Stephan Herrmann - initial API and implementation
-#********************************************************************************
-
-REPO_BASE=${WORKSPACE}/archive
-REPO=${REPO_BASE}/repo-${REPO_ID}
-PLATFORM=org/eclipse/platform
-
-# load versions from the baseline (to avoid illegal double-upload):
-source ${WORKSPACE}/baseline.txt
-
-wget https://ci.eclipse.org/releng/job/CBIaggregator/${REPO_ID}/artifact/*zip*/archive.zip
-unzip archive.zip
-
-if [ ! -d ${REPO} ]
-then
-	echo "No repo at ${REPO}"
-	exit 1
-fi
-
-echo "==== Copy artifacts from ${REPO}/${PLATFORM} ===="
-
-
-if [ -d ${PLATFORM} ]
-then
-	/bin/rm -r ${PLATFORM}/*
-else
-	mkdir -p ${PLATFORM}
-fi
-cp -r ${REPO}/${PLATFORM}/* ${PLATFORM}/
-
-
-echo "==== UPLOAD ===="
-
-URL=https://oss.sonatype.org/service/local/staging/deploy/maven2/
-REPO=ossrh
-SETTINGS=/home/jenkins/.m2/settings-deploy-ossrh-releng.xml
-MVN=/opt/tools/apache-maven/latest/bin/mvn
-
-/bin/mkdir .log
-
-function same_as_baseline() {
-	simple=`basename $1`
-	name=`echo $simple | sed -e "s|\(.*\)-.*|\1|" | tr '.' '_'`
-	version=`echo $simple | sed -e "s|.*-\(.*\).pom|\1|"`
-	base_versions=`eval echo \\${VERSION_$name}`
-	if [ -n $base_versions ]
-	then
-		local base_single
-		while read -d "," base_single
-		do
-			if [ $base_single == $version ]; then
-				return 0
-			fi
-		done <<< "$base_versions"
-		if [ $base_single == $version ]; then
-			return 0
-		fi
-	else
-		echo "Plug-in ${name}: ${version} seems to be new"
-		return 1
-	fi
-	echo "different versions for ${name}: ${version} is not in ${base_versions}"
-	return 1
-}
-
-for pomFile in org/eclipse/platform/*/*/*.pom
-do
-  if same_as_baseline $pomFile
-  then
-	echo "Skipping file $pomFile which is already present in the baseline"
-  else
-	file=`echo $pomFile | sed -e "s|\(.*\)\.pom|\1.jar|"`
-	sourcesFile=`echo $pomFile | sed -e "s|\(.*\)\.pom|\1-sources.jar|"`
-	javadocFile=`echo $pomFile | sed -e "s|\(.*\)\.pom|\1-javadoc.jar|"`
-	
-	echo "${MVN} -f platform-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file -Durl=${URL} -DrepositoryId=${REPO} -Dfile=${file} -DpomFile=${pomFile}"
-	
-	${MVN} -e -X -f platform-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file \
-	   -Durl=${URL} -DrepositoryId=${REPO} \
-	   -Dfile=${file} -DpomFile=${pomFile} \
-	   >> .log/artifact-upload.txt
-	   
-	echo -e "\t${sourcesFile}"
-	${MVN} -e -X -f platform-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file \
-	   -Durl=${URL} -DrepositoryId=${REPO} \
-	   -Dfile=${sourcesFile} -DpomFile=${pomFile} -Dclassifier=sources \
-	   >> .log/sources-upload.txt
-	
-	echo -e "\t${javadocFile}"
-	${MVN} -e -X -f platform-pom.xml -s ${SETTINGS} gpg:sign-and-deploy-file \
-	   -Durl=${URL} -DrepositoryId=${REPO} \
-	   -Dfile=${javadocFile} -DpomFile=${pomFile} -Dclassifier=javadoc \
-	   >> .log/javadoc-upload.txt
-  fi
-done
-
-/bin/ls -la .log
-
-/bin/grep -i fail .log/*
-
diff --git a/publish-to-maven-central/sourceBundles.txt b/publish-to-maven-central/sourceBundles.txt
deleted file mode 100644
index 369c48a..0000000
--- a/publish-to-maven-central/sourceBundles.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-platform/eclipse.platform.ui.tools.git \
-	bundles/org.eclipse.e4.tools.emf.ui \
-	R4_22 \
-	org/eclipse/platform org.eclipse.e4.tools.emf.ui 4.7.100
-platform/eclipse.platform.ui.tools.git \
-	bundles/org.eclipse.e4.tools.services \
-	R4_22 \
-	org/eclipse/platform org.eclipse.e4.tools.services 4.9.0
diff --git a/publish-to-maven-central/src/org/eclipse/platform/releng/maven/pom/ArtifactInfo.java b/publish-to-maven-central/src/org/eclipse/platform/releng/maven/pom/ArtifactInfo.java
deleted file mode 100644
index bde12ee..0000000
--- a/publish-to-maven-central/src/org/eclipse/platform/releng/maven/pom/ArtifactInfo.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/********************************************************************************
- * Copyright (c) 2016, 2018 GK Software SE and others.
- * 
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     Stephan Herrmann - initial implementation
- ********************************************************************************/
-package org.eclipse.platform.releng.maven.pom;
-
-public class ArtifactInfo {
-
-	private static final String SCM_GITROOT = "scm:git:https://git.eclipse.org/r/";
-	private static final String SCM_CGIT = "https://git.eclipse.org/c/";
-
-	private static final String SCM_TAG_START = ";tag=\""; // git tag inside Eclipse-SourceReference
-
-	private static final String INDENT = "  ";
-	
-	private static final String FRONT_MATTER =
-			"  <licenses>\n" + 
-			"    <license>\n" + 
-			"      <name>Eclipse Public License - v 2.0</name>\n" + 
-			"      <url>https://www.eclipse.org/legal/epl-2.0/</url>\n" + 
-			"      <distribution>repo</distribution>\n" + 
-			"    </license>\n" + 
-			"  </licenses>\n" + 
-			"  <organization>\n" + 
-			"    <name>Eclipse Foundation</name>\n" + 
-			"    <url>http://www.eclipse.org/</url>\n" + 
-			"  </organization>\n" + 
-			"  <issueManagement>\n" + 
-			"    <system>Bugzilla</system>\n" + 
-			"    <url>https://bugs.eclipse.org/</url>\n" + 
-			"  </issueManagement>\n";
-	
-	public static final String COPYRIGHT =
-			"<!--\n" +
-			"  Copyright (c) 2016, 2018 GK Software SE and others.\n" +
-			"\n" + 
-			"  This program and the accompanying materials\n" + 
-			"  are made available under the terms of the Eclipse Public License 2.0\n" + 
-			"  which accompanies this distribution, and is available at\n" + 
-			"  https://www.eclipse.org/legal/epl-2.0/\n" + 
-			"\n" + 
-			"  SPDX-License-Identifier: EPL-2.0\n" + 
-			"\n" + 
-			"  Contributors:\n" + 
-			"      Stephan Herrmann - initial implementation\n" + 
-			"-->\n";
-
-	public String bsn;
-	public String name;
-	public String scmConnection;
-	
-	@Override
-	public String toString() {
-		return "ArtifactInfo [bsn=" + bsn + ", name=" + name + ", scmConnection=" + scmConnection + "]";
-	}
-
-	public String toPomFragment() {
-		try {
-			fixData();
-			StringBuilder buf = new StringBuilder();
-			String indent = INDENT;
-			element("name", indent, buf, this.name);
-			element("url", indent, buf, "http://www.eclipse.org/"+getProject());
-			buf.append(FRONT_MATTER);
-			if (this.scmConnection == null) {
-				System.err.println("No scm info for "+this.bsn);
-			} else {
-				String connectionUrl = extractScmConnection();
-				String url = extractScmUrl(connectionUrl);
-				element("scm", indent, buf,
-					subElement("connection", connectionUrl),
-					subElement("tag", extractScmTag()),
-					subElement("url", url));
-				Developer.addUrlDevelopers(url, this.bsn, indent, buf);
-//				String projRepo = extractProjectRepo(url);
-//				if (projRepo != null) {
-//					Developer.addDevelopers(projRepo, this.bsn, indent, buf);
-//				} else {
-//					System.err.println("Could not determine git repo for "+this.bsn+" from "+url);
-//				}
-			}
-			return buf.toString();
-		} catch (RuntimeException e) {
-			System.err.println("Failed for "+this);
-			throw e;
-		}
-	}
-	
-	private void fixData() {
-		if (this.scmConnection == null) {
-			if (this.bsn.equals("org.eclipse.jdt.core.compiler.batch")) {
-				// not a regular OSGi bundle, scm info missing:
-				this.scmConnection = "scm:git:https://git.eclipse.org/r/jdt/eclipse.jdt.core.git;path=\"org.eclipse.jdt.core\"";
-				System.out.println("Fixed scmUrl for "+this.bsn);
-			} else if (this.bsn.startsWith("org.eclipse.emf")) {
-				this.scmConnection = "scm:git:https://git.eclipse.org/r/emf/org.eclipse.emf";
-				System.out.println("Fixed scmUrl for "+this.bsn);
-			} else if (this.bsn.startsWith("org.eclipse.ecf")) {
-				this.scmConnection = "scm:git:https://git.eclipse.org/r/ecf/org.eclipse.ecf;tag=\"R-Release_HEAD-sdk_feature-279_279\"";
-				System.out.println("Fixed scmUrl for "+this.bsn);
-			}
-		}
-		if (this.name == null || this.name.charAt(0) == '%') {
-			if (this.bsn.equals("org.eclipse.core.resources.win32.x86")
-					|| this.bsn.equals("org.eclipse.core.resources.win32.x86_64")) {
-				this.name = "Core Resource Management Win32 Fragment";
-				System.out.println("Fixed name for "+this.bsn);
-			}
-		}
-	}
-
-	String getProject() {
-		if (this.bsn.startsWith("org.eclipse.jdt"))
-			return "jdt";
-		if (this.bsn.startsWith("org.eclipse.pde"))
-			return "pde";
-		if (this.bsn.startsWith("org.eclipse.ecf"))
-			return "ecf";
-		return "platform";
-	}
-	
-	String extractScmConnection() {
-		int semi = this.scmConnection.indexOf(';');
-		if (semi == -1)
-			return this.scmConnection;
-		return this.scmConnection.substring(0, semi);
-	}
-	
-	String extractScmTag() {
-		int tagStart = this.scmConnection.indexOf(SCM_TAG_START);
-		if (tagStart == -1)
-			return null;
-		int next = this.scmConnection.indexOf("\"", tagStart+SCM_TAG_START.length());
-		if (next == -1)
-			next = this.scmConnection.length();
-		return this.scmConnection.substring(tagStart+SCM_TAG_START.length(), next);
-	}
-
-	String extractScmUrl(String connection) {
-		if (connection.startsWith(SCM_GITROOT))
-			return SCM_CGIT+connection.substring(SCM_GITROOT.length());
-		return connection.replace("eclipse.org/r", "eclipse.org/c");
-	}
-
-	String extractProjectRepo(String url) {
-		int pos = 0;
-		for (int i=0; i<5; i++) {
-			pos = url.indexOf('/', pos+1);
-			if (pos == -1)
-				return null;
-		}
-		return url.substring(0, pos);
-	}
-	
-	public static void element(String tag, String indent, StringBuilder buf, String... contents) {
-		buf.append(indent).append('<').append(tag).append('>');
-		if (contents.length == 1 && !contents[0].contains("\n")) {
-			buf.append(contents[0]);
-		} else {
-			buf.append("\n");
-			for (String content : contents)
-				if (content != null)
-					for (String line: content.split("\\n")) 
-						buf.append(indent).append(INDENT).append(line).append('\n');
-			buf.append(indent);
-		}
-		buf.append("</").append(tag).append(">\n");
-	}
-
-	public static String subElement(String tag, String content) {
-		if (content == null)
-			return null;
-		StringBuilder buf = new StringBuilder();
-		element(tag, "", buf, content);
-		return buf.toString();
-	}
-}
diff --git a/publish-to-maven-central/src/org/eclipse/platform/releng/maven/pom/Developer.java b/publish-to-maven-central/src/org/eclipse/platform/releng/maven/pom/Developer.java
deleted file mode 100644
index 2db5b54..0000000
--- a/publish-to-maven-central/src/org/eclipse/platform/releng/maven/pom/Developer.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/********************************************************************************
- * Copyright (c) 2016, 2018 GK Software SE and others.
- * 
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     Stephan Herrmann - initial implementation
- ********************************************************************************/
-package org.eclipse.platform.releng.maven.pom;
-
-import static org.eclipse.platform.releng.maven.pom.ArtifactInfo.element;
-import static org.eclipse.platform.releng.maven.pom.ArtifactInfo.subElement;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-public abstract class Developer {
-
-	static final String PLATFORM_GIT_REPO = "https://git.eclipse.org/c/platform";
-
-	static final String[] ROLE_LEAD = { "Project Lead" };
-	
-	public static final HashMap<String, List<Developer>> developersPerRepo = new HashMap<>();
-	public static final Set<String> projects = new HashSet<>();
-	static {
-		// currently unused:
-		Developer dani = new IndividualDeveloper("Dani Megert");
-		developersPerRepo.put(PLATFORM_GIT_REPO,
-				Arrays.asList(dani));
-		developersPerRepo.put("https://git.eclipse.org/c/equinox",
-				Arrays.asList(new IndividualDeveloper("Ian Bull"), new IndividualDeveloper("Pascal Rapicault"), new IndividualDeveloper("Thomas Watson")));
-		developersPerRepo.put("https://git.eclipse.org/c/jdt",
-				Arrays.asList(dani));
-		developersPerRepo.put("https://git.eclipse.org/c/pde",
-				Arrays.asList(new IndividualDeveloper("Curtis Windatt"), new IndividualDeveloper("Vikas Chandra")));
-		//
-
-		projects.add("eclipse.platform");
-		projects.add("eclipse.jdt");
-		projects.add("eclipse.pde");
-		projects.add("rt.equinox");
-	}
-
-	public static void addIndividualDevelopers(String projRepo, String bsn, String indent, StringBuilder buf) {
-		List<Developer> devs = getDevelopers(projRepo, bsn);
-		if (devs == null)
-			System.err.println("No developers for project repo "+projRepo+" ("+bsn+")");
-		else
-			element("developers", indent, buf, Developer.pomSubElements(devs));
-		
-	}
-
-	public static void addUrlDevelopers(String gitUrl, String bsn, String indent, StringBuilder buf) {
-		String whoSInvolved = gitRepoToWhoSInvolved(gitUrl);
-		if (whoSInvolved == null)
-			System.err.println("No developers for project repo "+gitUrl+" ("+bsn+")");
-		else
-			element("developers", indent, buf, Developer.pomSubElements(Collections.singletonList(new UrlDeveloper(whoSInvolved))));
-	}
-
-	private static String gitRepoToWhoSInvolved(String gitUrl) {
-		String[] tokens = gitUrl.split("/");
-		if (tokens.length >= 6) {
-			String token = tokens[5]; // https://git.eclipse.org/c/equinox/rt.equinox.framework.git => start with rt.equinox.framework
-			int end = token.endsWith(".git") ? token.length()-".git".length() : token.length();
-			String project = token.substring(0, end);
-			// Special case for e4 projects
-			if (project.contains("org.eclipse.e4")) {
-				project  = "eclipse.platform";
-			} else {
-				while (!projects.contains(project)) {
-					end = project.lastIndexOf('.');
-					if (end == -1)
-						return null;
-					project = project.substring(0, end); // cut off non-matching tail segment
-				}
-			}
-			return "https://projects.eclipse.org/projects/"+project+"/who";
-		}
-		return null;
-	}
-
-	private static List<Developer> getDevelopers(String projRepo, String bsn) {
-		// "platform" artifacts in pde repos:
-		if ("org.eclipse.ui.views.log".equals(bsn) || "org.eclipse.ui.trace".equals(bsn))
-			return developersPerRepo.get(PLATFORM_GIT_REPO);
-		// "platform" artifacts in jdt repos:
-		if ("org.eclipse.ltk.core.refactoring".equals(bsn) || "org.eclipse.ltk.ui.refactoring".equals(bsn))
-			return developersPerRepo.get(PLATFORM_GIT_REPO);
-		return developersPerRepo.get(projRepo);
-	}
-
-	private static String pomSubElements(List<Developer> devs) {
-		StringBuilder buf = new StringBuilder();
-		for (Developer developer : devs)
-			developer.toPom(buf, "");
-		return buf.toString();
-	}
-	
-	protected abstract void toPom(StringBuilder buf, String string);
-
-	/** Represent project leads as individual developers. */
-	static class IndividualDeveloper extends Developer {
-		String name;
-		String[] roles;
-		public IndividualDeveloper(String name) {
-			this.name = name;
-			this.roles = ROLE_LEAD;
-		}
-		
-		protected void toPom(StringBuilder buf, String indent) {
-			element("developer", indent, buf,
-					subElement("name", this.name),
-					getRolesElement());
-		}
-
-		String getRolesElement() {
-			StringBuilder rolesElement = new StringBuilder();
-			element("roles", "", rolesElement, String.join("\n", getRoleElements()));
-			return rolesElement.toString();
-		}
-
-		String[] getRoleElements() {
-			String[] roleElements = new String[this.roles.length];
-			for (int i = 0; i < this.roles.length; i++) {
-				StringBuilder subBuf = new StringBuilder();
-				element("role", "", subBuf, this.roles[i]);
-				roleElements[i] = subBuf.toString();
-			}
-			return roleElements;
-		}
-	}
-
-	/** Represent developers using the "Who's Involved" web page. */
-	static class UrlDeveloper extends Developer {
-		String url;
-		public UrlDeveloper(String url) {
-			this.url = url;
-		}
-		
-		protected void toPom(StringBuilder buf, String indent) {
-			element("developer", indent, buf,
-					subElement("url", this.url));
-		}
-	}
-}
diff --git a/publish-to-maven-central/src/org/eclipse/platform/releng/maven/pom/EnrichPoms.java b/publish-to-maven-central/src/org/eclipse/platform/releng/maven/pom/EnrichPoms.java
deleted file mode 100644
index 2562e91..0000000
--- a/publish-to-maven-central/src/org/eclipse/platform/releng/maven/pom/EnrichPoms.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/********************************************************************************
- * Copyright (c) 2016, 2018 GK Software SE and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     Stephan Herrmann - initial implementation
- ********************************************************************************/
-package org.eclipse.platform.releng.maven.pom;
-
-import java.io.IOException;
-import java.io.OutputStreamWriter;
-import java.nio.file.FileSystems;
-import java.nio.file.Files;
-import java.nio.file.Path;
-
-public class EnrichPoms {
-
-	private static final String DOT_POM = ".pom";
-	private static final String DOT_JAR = ".jar";
-	private static final String BAK_SUFFIX = "-bak";
-
-
-	public static void main(String[] args) throws IOException {
-		Path path = FileSystems.getDefault().getPath(args[0]);
-		if (!Files.exists(path) || !Files.isDirectory(path))
-			throw new IllegalArgumentException(path.toString()+ " is not a directory");
-		
-		Files.walk(path)
-			.filter(EnrichPoms::isArtifact)
-			.forEach(EnrichPoms::enrich);
-	}
-	
-	public static boolean isArtifact(Path path) {
-		if (Files.isDirectory(path))
-			return false;
-		if (!path.getFileName().toString().endsWith(DOT_POM))
-			return false;
-		Path jarPath = getCorrespondingJarPath(path);
-		return Files.exists(jarPath);
-	}
-
-	public static Path getCorrespondingJarPath(Path pomPath) {
-		String fileName = pomPath.getFileName().toString();
-		String jarName = fileName.substring(0, fileName.length()-DOT_POM.length())+DOT_JAR; 
-		return pomPath.resolveSibling(jarName);
-	}
-
-	public static void enrich(Path pomPath) {
-		try {
-			Path backPath = pomPath.resolveSibling(pomPath.getFileName().toString()+BAK_SUFFIX);
-			if (Files.exists(backPath)) {
-				System.out.println("Skipping (-bak exists): "+pomPath);
-				return;
-			}
-			Path jarPath = getCorrespondingJarPath(pomPath);
-			ArtifactInfo info = ManifestReader.read(jarPath);
-			Path newPom = Files.createTempFile(pomPath.getParent(), "", DOT_POM);
-			try (OutputStreamWriter out = new OutputStreamWriter(Files.newOutputStream(newPom))) {
-				boolean copyrightInserted = false;
-				boolean detailsInserted = false;
-				for (String line : Files.readAllLines(pomPath)) {
-					out.write(line);
-					out.append('\n');
-					if (!copyrightInserted) {
-						if (line.equals("<?xml version=\"1.0\" encoding=\"UTF-8\"?>")) {
-							out.append(ArtifactInfo.COPYRIGHT);
-							copyrightInserted = true;
-						}
-					}
-					if (!detailsInserted) {
-						if (line.contains("</description>")) {
-							out.append(info.toPomFragment());
-							detailsInserted = true;
-						}
-					}
-				}
-			}
-			if (!Files.exists(backPath))
-				Files.move(pomPath, backPath);
-			Files.move(newPom, pomPath);
-		} catch (IOException e) {
-			System.err.println("Failed to rewrite pom "+pomPath+": "+e.getClass()+": "+e.getMessage());
-		}
-	}
-}
diff --git a/publish-to-maven-central/src/org/eclipse/platform/releng/maven/pom/ManifestReader.java b/publish-to-maven-central/src/org/eclipse/platform/releng/maven/pom/ManifestReader.java
deleted file mode 100644
index 844c23c..0000000
--- a/publish-to-maven-central/src/org/eclipse/platform/releng/maven/pom/ManifestReader.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/********************************************************************************
- * Copyright (c) 2016, 2018 GK Software SE and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     Stephan Herrmann - initial implementation
- ********************************************************************************/
-package org.eclipse.platform.releng.maven.pom;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.nio.file.Path;
-import java.util.Map.Entry;
-import java.util.Properties;
-import java.util.jar.Attributes;
-import java.util.jar.JarFile;
-import java.util.jar.Manifest;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipFile;
-
-public class ManifestReader {
-
-	private static final String MANIFEST_MF = "META-INF/MANIFEST.MF";
-	// Eclipse headers in MANIFEST.MF:
-	private static final String BUNDLE_SYMBOLIC_NAME 		= "Bundle-SymbolicName";
-	private static final String BUNDLE_NAME 				= "Bundle-Name";
-	private static final String BUNDLE_LOCALIZATION 		= "Bundle-Localization";
-	private static final String ECLIPSE_SOURCE_REFERENCES 	= "Eclipse-SourceReferences";
-	private static final String FRAGMENT_HOST 				= "Fragment-Host";
-	
-	private static final String DOT_PROPERTIES 				= ".properties";
-	private static final String BUNDLE_PROPERTIES 			= "OSGI-INF/l10n/bundle.properties";
-
-	public static ArtifactInfo read(Path path) throws FileNotFoundException, IOException {
-		File file = path.toFile();
-		try (ZipFile zip = new ZipFile(file)) {
-			ZipEntry entry = zip.getEntry(MANIFEST_MF);
-			Manifest mf = new Manifest(zip.getInputStream(entry));
-			Attributes mainAttributes = mf.getMainAttributes();
-//			printAllMainAttributes(mainAttributes);
-
-			String localization = mainAttributes.getValue(BUNDLE_LOCALIZATION);
-			boolean isFragment = mainAttributes.getValue(FRAGMENT_HOST) != null;
-			Properties translations = getTranslations(file, localization, isFragment);
-
-			ArtifactInfo info = new ArtifactInfo();
-			info.bsn = getSymbolicName(mainAttributes);
-			info.scmConnection = mainAttributes.getValue(ECLIPSE_SOURCE_REFERENCES);
-			info.name = getBundleName(mainAttributes, translations, isFragment);
-			return info;
-		}
-	}
-
-	public static String getSymbolicName(Attributes mainAttributes) {
-		String bsn = mainAttributes.getValue(BUNDLE_SYMBOLIC_NAME);
-		int semi = bsn.indexOf(';');
-		if (semi != -1)
-			return bsn.substring(0, semi); // cut off ;singleton etc...
-		return bsn;
-	}
-
-	static Properties getTranslations(File jarFile, String propFile, boolean isFragment) throws IOException {
-		try (JarFile jf = new JarFile(jarFile)) {
-			ZipEntry zipEntry = getTranslationsEntry(jf, propFile);
-			if (zipEntry == null) {
-				if (!isFragment) { // expected for fragments :-/
-					if (propFile != null)
-						System.err.println("translations "+propFile+DOT_PROPERTIES+" missing for "+jarFile.getName());
-					else
-						System.err.println("translations "+BUNDLE_PROPERTIES+" missing for "+jarFile.getName());
-				}
-				return null;
-			}
-			Properties properties = new Properties();
-			properties.load(jf.getInputStream(zipEntry));
-			return properties;
-		}
-	}
-	
-	static ZipEntry getTranslationsEntry(JarFile jf, String propFile) {
-		ZipEntry entry = null;
-		if (propFile != null)
-			entry = jf.getEntry(propFile+DOT_PROPERTIES);
-		if (entry == null)
-			entry = jf.getEntry(BUNDLE_PROPERTIES);
-		return entry;
-	}
-
-	static String getBundleName(Attributes mainAttributes, Properties translations, boolean isFragment) {
-		String name = mainAttributes.getValue(BUNDLE_NAME);
-		if (name.charAt(0) == '%') {
-			if (translations == null) {
-				if (isFragment) { // TODO
-					System.err.println("Cannot translate fragment name "+name+" for "+getSymbolicName(mainAttributes));
-				} else {
-					System.err.println("Cannot translate bundle name "+name+" for "+getSymbolicName(mainAttributes));
-				}
-				return name;
-			}
-			String translated = translations.getProperty(name.substring(1));
-			if (translated != null)
-				return translated;
-		}
-		return name;
-	}
-
-	// debugging
-	static void printAllMainAttributes(Attributes mainAttributes) {
-		for (Entry<Object, Object> entry : mainAttributes.entrySet()) {
-			System.out.println(entry.getKey()+" -> "+entry.getValue());
-		}
-	}
-}