Community
Participate
Working Groups
In M4 we refactored Eclipse registry in a stand-alone module. As a part of the process, new registry interfaces were created in the org.eclipse.equinox.registry package. To ensure backward compatibility registry users who expose registry interfaces through APIs, generally speaking, would have to duplicate those APIs. Drawbacks: 1. Some highly visible classes will be affected - IWorkbench, WorkbenchPart being good examples 2. Additional work pushed onto other teams at the end of the development cycle 3. Inability to remove dependency from the org.eclipse.core.runtime plugin in future With this in mind runtime team decided to rename the new org.eclipse.equinox.registry.* interfaces back to the org.eclipse.core.runtime. This decision means that we will have a split org.eclipse.core.runtime package and that naming of the packages in the registry plugin would reflect the past, not the present state. However, it eliminates the need for the migration. Note that all the new APIs and the facility to create your own registries are kept around. Further, the registry functionality is still in the new org.eclipse.equinox.registry bundle.
Created attachment 34084 [details] Patch that combines org.eclipse.core.runtime and org.eclipse.equinox.registry interfaces The patch affects the following plugins: org.eclipse.core.contenttype org.eclipse.core.filesystem org.eclipse.core.runtime org.eclipse.core.test.harness org.eclipse.equinox.preferences org.eclipse.equinox.registry Additional work to be done: - PDE needs to be updated to use classpath during the build in the IDE - Default osgi.bundles line has to be modified to be: osgi.bundles=org.eclipse.equinox.common@2:start, org.eclipse.core.jobs@2:start, org.eclipse.core.runtime.compatibility.registry, org.eclipse.equinox.registry@2:start, org.eclipse.equinox.preferences, org.eclipse.core.contenttype, org.eclipse.core.runtime@2:start, org.eclipse.update.configurator@3:start - Note that the new compatibility fragment should not be JARed by the build
Created attachment 34085 [details] New compatibility fragment for the Eclipse registry
I have reverted the filesystem plugin to use the org.eclipse.core.runtime APIs. This way people with the filesystem plugin in their workspace won't be broken when the patch is applied. Once the new RegistryFactory class is available in a build, I can switch to using it.
The patches have been released in HEAD. Before it has been applied, the following projects have been tagged as pre_126344 org.eclipse.core.contenttype org.eclipse.core.runtime org.eclipse.core.test.harness org.eclipse.equinox.preferences org.eclipse.equinox.registry A new project named org.eclipse.core.runtime.compatibility.registry (bug #126284) has been created. After integration, the projects have been tagged post_126344. A test build is now running.
Can this be closed now?
Closing - fix verified in the HEAD.