[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [equinox-dev] P2 and installHandlers

David, it looks like you have correctly surmised the level of support in p2 for install handlers. P2 cannot install features that use install handlers because it cannot precisely produce the same runtime environment under which install handlers ran in Update Manager. Our solution for 3.4 is to defer installation of such features to classic update manager. The intent is for users of install handlers to migrate over time to using p2 touchpoints instead, which should have richer capabilities than install handlers in 3.5.


Sent by: equinox-dev-bounces@xxxxxxxxxxx

06/06/2008 12:51 PM

Please respond to
Equinox development mailing list <equinox-dev@xxxxxxxxxxx>

[equinox-dev] P2 and installHandlers

Hi Folks,
What is the current plan (if any) w.r.t. feature installHandlers and P2?

We are currently using installHandlers to install and update our product.
The installHandler is responsible for extracting non-Eclipse files (e.g.
compilers, headers and libraries) to the product installation directory.
By using the installHandler, we have a single package that can be used in
the installer, but also can be posted to an update site to deliver updated
tools along with our Eclipse plug-in updates.

We are currently investigating migrating the entire setup to use P2 and
touchpoints, but have encountered a number of challenges, one of which is
time. As a short term solution, we considered simply generating the P2
metadata for our update site, then using the P2 console to install our
features (instead of the old update manager command-line interface), and
deploying the P2 metadata to our update site so that P2 could also handle
the updates. In the short term, we would simply keep the existing
structure for our Eclipse plug-ins and features, including the existing

I can generate the P2 metadata for our update site successfully. The
metadata even includes the references to the installHandlers, so obviously
some portion of P2 is aware of their existence.

I run into problems when I try to install the features:

If I use the GUI, it displays the following error:
A feature that you have selected uses install procedures that are not
compatible with the current installation support. This feature can only be
installed by the older Update Manager. Do you want to launch the older
Update Manager?
I can launch the older Update Manager, and it runs and installs the
feature correctly, including executing the installHandler. Once installed,
P2 is aware that the feature is present, but is unable to manage it
(uninstall). I would need to launch the "Manage Configuration..." dialog,
but that menu item is gone.

If I use the P2 director app to install the feature, it runs without error
and correctly installs the features and plug-ins, but does not run the
installHandler at all, and does not indicate that this has not run.

I recall reading information on the wiki indicating that P2 would be
backward compatible with update sites, and would support installHandlers
with "some restrictions".

Question: Are there any plans to support installHandlers directly in P2
for the Eclipse 3.4 release, or ever?

If not, then it looks like we will need to migrate our entire installation
plan to P2, and I have many more questions about that. Given time
constraints, we will likely disable P2 on our next product release, even
though we have moved to Eclipse 3.4.


David Kennedy
Senior Member of Technical Staff, Software Tools Development
Medical Division
ON Semiconductor
+1 519 884 9696 ext 2289 | office
+1 519 884 0228 | fax
equinox-dev mailing list