Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 126344 - Simplify the new registry migration process
Summary: Simplify the new registry migration process
Status: RESOLVED FIXED
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: Compendium (show other bugs)
Version: 3.2   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: equinox.compendium-inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-02-03 09:59 EST by Oleg Besedin CLA
Modified: 2006-02-13 10:50 EST (History)
3 users (show)

See Also:


Attachments
Patch that combines org.eclipse.core.runtime and org.eclipse.equinox.registry interfaces (372.98 KB, patch)
2006-02-03 11:11 EST, Oleg Besedin CLA
no flags Details | Diff
New compatibility fragment for the Eclipse registry (29.14 KB, application/x-zip-compressed)
2006-02-03 11:12 EST, Oleg Besedin CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Oleg Besedin CLA 2006-02-03 09:59:27 EST
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.
Comment 1 Oleg Besedin CLA 2006-02-03 11:11:16 EST
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
Comment 2 Oleg Besedin CLA 2006-02-03 11:12:29 EST
Created attachment 34085 [details]
New compatibility fragment for the Eclipse registry
Comment 3 John Arthorne CLA 2006-02-03 12:00:43 EST
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.
Comment 4 Pascal Rapicault CLA 2006-02-03 13:45:12 EST
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.
Comment 5 DJ Houghton CLA 2006-02-13 10:44:32 EST
Can this be closed now?
Comment 6 Oleg Besedin CLA 2006-02-13 10:50:16 EST
Closing - fix verified in the HEAD.