Bug 317954 Version deltas file so that incompatible changes will be ignored
The deltas file needs to be versioned so that incompatible changes will be discarded allowing the workbench to be constructed as if there were no deltas in existence.
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/ui/internal/workbench/XMLModelReconciler.java
List<Position> positions = new ArrayList<Position>();
		for (int i = 0; i < userReferences.size(); i++) {
			Object user = userReferences.get(i);
			Position p = getPosition(originalReferences, userReferences, currentReferences, user, i);
			if (p != null) {
				positions.add(p);
			}
		}
		List<Object> collectedRefs = new ArrayList<Object>(currentReferences);
		for (Position position : positions) {
			Object after = position.getAfter();
			if (after != null) {
				int index = currentReferences.indexOf(after);
				collectedRefs.add(index + 1, position.getObject());
			}
			Object before = position.getBefore();
			if (before != null) {
				int index = currentReferences.indexOf(before);
				collectedRefs.add(index, position.getObject());
			}
		}
		return collectedRefs;
	}
	private static Position getPosition(List<?> originalReferences, List<?> userReferences,
			List<?> currentReferences, Object object, int originalIndex) {
		int index = originalReferences.indexOf(object);
		if (index == -1) {
			Object after = null;
			for (int i = originalIndex - 1; i > -1; i--) {
				Object afterCandidate = userReferences.get(i);