Platform/Core Component Planning Details

Remove Dependancy on Xerces (bugs 37696, 36112)

Checklist:

  • Create new XML plug-in containing the XML Pull APIs.
  • Remove plug-in dependancies from org.eclipse.core.runtime and org.eclipse.core.resources.
  • Add new dependancy to new XML plug-in.
  • Replace org.eclipse.core.internal.plugins.PluginParser with a new parser using the new APIs.
  • Replace org.eclipse.core.internal.resources.WorkspaceDescriptionReader with new reader based on new APIs.
  • Replace org.eclipse.core.internal.resources.ProjectDescriptionReader with new reader based on new APIs.
  • Determine interaction with bootstrap process. Things to consider include creating the bootstrap classloader, update/install, and org.eclipes.core.internal.boot.PlatformConfiguration.
  • Check test suites.
  • Verify new work by completely removing the Xerces plug-in from the environment. (is this possible with the other plug-ins' dependancies?
  • Educate Platform/UI and other teams in SDK who rely on Xerces with knowledge of new APIs. Note that most teams have updated the bug report with explanations of their usage.

Milestone Plan (3.0 M2) - July 18, 2003

  • Goal is to complete all of the above work.
  • We don't envision having all teams converted to new APIs but should at least be educated on how to convert their code. It is up to the individual teams to 1) determine whether or not they want to convert their code and 2) to actually change their code.
  • Note that although all plug-ins in the SDK are not required to convert their parsing, it is necessary that at least the plug-ins defined to be a part of the Rich Client Platform (RCP) perform this transformation. Reducing the size of the XML plug-in shipped with the RCP (3M for Xerces vs 25K for XmlPull) is a big big win.