Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 84820 - [Intro] Welcome: Stacking ConfigExtensions doesn't work.
Summary: [Intro] Welcome: Stacking ConfigExtensions doesn't work.
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: User Assistance (show other bugs)
Version: 3.0.1   Edit
Hardware: PC Windows XP
: P3 major (vote)
Target Milestone: 3.0.2   Edit
Assignee: Mazen Faraj CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 80139
  Show dependency tree
 
Reported: 2005-02-09 14:20 EST by Rich Watts CLA
Modified: 2005-10-03 11:47 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rich Watts CLA 2005-02-09 14:20:36 EST
NOTE: We need this in Eclipse V3.0.2 so we can pick it up in V6.0.0.1

The shared common install makes use of linked directories for the 
various "products" and we are having problems with some small welcome plugins 
that contribute to other contribution plugins. If we do a clean install, 
everything "works" if we install on a machine that has had other installs on 
it, we don't get our little plugins.

Example:

core welcome:			com.ibm.rational.welcome.core
contribution plugin:		com.ibm.rational.welcome.java		
	Contribute to transition page in core
contribution plugin:		com.ibm.rational.welcome.java.prod	
	Contribute to transition page in core
contribution plugin: 		com.ibm.rational.welcome.web		
	Contribute to transition page in core
contribution plugin:		com.ibm.rational.welcome.z.egl		
	Contribute to a content page in .java & .web
contribution plugin:		com.ibm.rational.welcome.z.portal	
	contribute to a content page in .java.prod

If I install all of the plugins into a single runtime workspace I see exactly 
what I would expect. Everything loads correctly, and life is good.

When we start loading the individual products into separate plugin 
directories, we start to see problems, but we have not been able to isolate 
where the problem is or how to correct it. Again, we only see these problems 
on machines where we install on a machine that had the products installed 
before.


Here is some information about the structural layout of the Atlantic Welcome 
Framework:

Using One Example, The EGL Optional Install (with RWD)

Plug-in ID	plug-in Directory Name	Extension Point	Order
com.ibm.rational.welcome.core	com.ibm.rational.welcome.core_6.0.0
	org.eclipse.ui.intro.config	1
com.ibm.rational.welcome.web	com.ibm.rational.welcome.web_6.0.0
	org.eclipse.ui.intro.configExtension	2
com.ibm.rational.welcome.web.prod	com.ibm.rational.welcome.web.prod_6.0.0
	org.eclipse.ui.intro.configExtension	3
com.ibm.rational.welcome.z.egl	com.ibm.rational.welcome.z.egl_6.0.0
	org.eclipse.ui.intro.configExtension	4


So, to summarize what you are looking at:

The root page and 6 transition pages are defined in 
com.ibm.rational.welcome.core, the links to the content are defined in 
com.ibm.rational.welcome.web.prod (unique product specific content) while the 
actual content pages are defined in com.ibm.rational.welcome.web (here is 
where the page with the egl anchor lives), and finally the egl contribution 
adds content to the egl anchor.
Comment 1 Mazen Faraj CLA 2005-02-11 23:23:32 EST
The requirement is to allow contributing to an anchor that has been 
contributed through a configExtension. ie: contributing to a contribution. 

The 3.0 design was based on performance and so, it was designed to allow only 
contribution to deterministic anchors (ie: anchors already in the intro config 
and not in config extensions). Using separate products was expected to allow 
for stacking of contributions. 

To resolve this bug, yet maintaining performance, we now perform a multi-pass 
loop to resolve all possible configExtensions. Unresolved extensions are 
recursively resolved each time a new extension is resolved. 


Richard,
can you please try the fix and let me know asap. 
Please try all various product combinations that you have. 

code is in R3_0_maintanence stream. 
Comment 2 Mazen Faraj CLA 2005-02-11 23:31:21 EST
Steve, Dejan, fyi
Comment 3 Mazen Faraj CLA 2005-02-16 10:28:34 EST
released version r301_v20050211 into 3_0_maintanence map files. 

closing defect.
Comment 4 Mazen Faraj CLA 2005-03-22 23:28:27 EST
forgot to update that new code here is merged into 3.1 stream.