Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[babel-dev] Fwd: [Bug 256430] Fragments with no host jeopardize Eclipse installation

Some good news. We are not completely doomed!

---------- Forwarded message ----------
From: <bugzilla-daemon@xxxxxxxxxxx>
Date: Fri, Dec 5, 2008 at 8:49 PM
Subject: [Bug 256430] Fragments with no host jeopardize Eclipse installation
To: antoine@xxxxxxxxxxxxxxx


Product/Component: Babel / Plugins

Pascal Rapicault <pascal_rapicault@xxxxxxxxxx> changed:

          What    |Removed                     |Added
----------------------------------------------------------------------------
                CC|                            |pascal_rapicault@xxxxxxxxxx
        AssignedTo|equinox.p2-inbox@xxxxxxxxxxx|babel.core-inbox@xxxxxxxxxxx
         Component|p2                          |Plugins
           Product|Equinox                     |Babel




--- Comment #6 from Pascal Rapicault <pascal_rapicault@xxxxxxxxxx>  2008-12-05 14:49:07 -0400 ---
The problem comes from the fact that the "default" metadata generated by p2
behind the scene when it connects to the legacy update site of  babel update
does not represent the intent of what is made available.
Let me detail here:
When p2 generates metadata for the babel feature (or for any other feature),
the relationship between the feature and the plug-in is "strict" (in that it
can only be satisfied), which means that all the plug-ins have to be installed
or none. And then the metadata generated for the fragment also result in a
strict and greedy dependency on the host. This explains the behavior you are
experiencing, since when you are trying to install the feature p2 will try to
satisfy all the dependencies which will result in installing more than what you
want (installing actual code instead of just the translation).

The solution for the Babel project is to create p2 metadata to have the feature
optionally requires the plug-ins it includes and for each fragment to have a
non greedy dependency on its host. With this structure one will be able to
install the "French" language and only get the translation for the plug-ins
that are installed. Even better, with this it becomes possible to have only one
feature for all the projects (so there would be no more modeling feature,
eclipse feature, webtools feature). For the user this has the nice advantage
that if he wants one language he does not have to worry about where it is
coming from.

Now as for generating this metadata, you have two ways: write your own metadata
generator reusing the code from p2 (should be relatively straightforward) or
write an XSLT transform that tweaks the metadata resulting from a typical p2
metadata generator invocation
(http://help.eclipse.org/ganymede/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/p2_metadata_generator.html)


--
Configure bugmail: https://bugs.eclipse.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You reported the bug.



--
http://www.lunar-ocean.com/blog


Back to the top