Bug 21351 - Separation of feature containment (includes) & updating needed
Summary: Separation of feature containment (includes) & updating needed
Status: RESOLVED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Update (deprecated - use Eclipse>Equinox>p2) (show other bugs)
Version: 2.0   Edit
Hardware: PC Windows 2000
: P1 blocker (vote)
Target Milestone: 2.0.2   Edit
Assignee: Christophe Elek CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 22879 (view as bug list)
Depends on:
Blocks:
 
Reported: 2002-07-08 12:05 EDT by Greg Adams CLA
Modified: 2002-10-11 15:45 EDT (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Greg Adams CLA 2002-07-08 12:05:22 EDT
It should be possible for a product to provide a root feature that bundles 
together many features and yet still allow those contained features to be 
separately updated. 

Currently the orthogonal issues of how to update, vs. how to bundle have 
incorrectly been tied together.

This allows the feature to look like a product, yet still allow its bundled 
elements to be updated. This is also important in the product upgrade scenarios.
Comment 1 Vlad Klicnik CLA 2002-07-18 23:08:36 EDT
I have put together a design note with a proposed 2.0.1 approach for this and 
several related defects. See the doc below (have to paste the split line 
together to get the whole url).

http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-update-
home/doc/feature_extensions.html
Comment 2 Vlad Klicnik CLA 2002-07-18 23:14:00 EDT
Sorry, got the url wrong

http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-update-
home/doc/working/feature_extensions.html
Comment 3 Dejan Glozic CLA 2002-09-05 20:26:53 EDT
Let us assume that we allow an additional attribute 'match' to be specified in 
the 'includes' element. This attribute would follow similar referencing rules 
used by dependent plug-ins (equivalent, compatible, greatedOrEqual etc.). In 
theory, this relaxation of the cross-feature referencing would allow us to 
update child features without breaking the parent reference (as long as the 
upgraded version still resolves according to the 'match' attribute).

What this solution implies is that the root-level feature that allows 
some 'wiggle' space to its children to upgrade individually may not be able to 
guarantee that they all work together. With each member feature individually 
updatable, possible combinations of versions may result in inability of the 
original suite provider to guarantee anything and therefore deletage any 
conflict resolution to providers of the child features (products in the suite). 

We are seeking feedback on the following: if each individual feature (product) 
in a suite can be independenly updated (possibly from its own update site), 
what expectations (if any) can be had regarding the stability of the suite as 
it randomly evolves through upgrades of the constituting products. Does a suite 
version make any sense (since it is invalidated as soon as the first member 
product is upgraded under it)?
Comment 4 Christophe Elek CLA 2002-09-23 07:35:32 EDT
Attribute 'match' has been added. Code for reconciliation has been changed.
released in 2.0.2 dev stream
Comment 5 Dejan Glozic CLA 2002-09-24 19:51:04 EDT
The problem will be addressed as specified in the following document:

http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-update-
home/doc/working/feature_extensions.html
Comment 6 Dejan Glozic CLA 2002-09-24 19:51:31 EDT
Correction:

http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-update-
home/doc/working/feature_extensions_2.html
Comment 7 Dejan Glozic CLA 2002-09-29 23:17:07 EDT
*** Bug 22879 has been marked as a duplicate of this bug. ***
Comment 8 Dejan Glozic CLA 2002-10-04 17:38:51 EDT
Implemented - ready to test.
Comment 9 Dejan Glozic CLA 2002-10-11 15:45:37 EDT
Tested