Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Plugin Development Environment (PDE) » [3.6.1][P2] How to allow a product update ?
[3.6.1][P2] How to allow a product update ? [message #631801] Fri, 08 October 2010 15:53 Go to next message
Christophe Fondacci is currently offline Christophe Fondacci
Messages: 95
Registered: July 2009
Location: Paris
Member
Hello all,

I have recently migrated to 3.6.1, coming from 3.5.2. Since P2 has been released in 1.0, I switched the update mechanism of my RCP product to P2 since the UpdateUI is deprecated since 1992 Wink

After some hard work to understand the API concepts (P2 bundles, trackers, installable units, metadata repos, etc.) now I can :
* Export my product with metadata (OK)
* Trigger updates from my RCP product
* Generate update sites (same as before)

It works fine, except that my product could not get updated anymore ! (this is the only reason I use p2 : to update my product...) :

1. Check for updates leads to a "No update found"
2. Install new software sees my feature updates (as new software). Selecting it leads to error messages "Conflicting dependency". The weirdest thing to me is the first lines of the message :
'Your original request has been modified. 
"my feature name" is already installed, so an update will be performed instead.


Browsed the web, found some articles from Andrew Niefer on the topic from 2009, don't know if they still are up to date.
From what I understood (please correct me) :
* exported products define a fixed feature release compiled at export time, that's why another feature release is not allowed (conflicting dependency)
* product is the only root "Installable Unit", that's why no update is found since only the feature is published to the update site that's why they couldn't be updated.

And now I am a bit lost. So here are my questions :
* I got no problem with updating the product instead of the feature (it's roughly the same in my case : my product is based on one feature containing everything), as long as I can do this with P2 through "Check for updates". Is there any way to publish a product update to an update site instead of a feature ?
* Is there any way to make the feature updatable from the PDE export UI or do I need to go for headless PDE builds, config files, ant scripts, etc ?
* I do not want to allow my users to make a "Install new software" so I need P2 to find UPDATES, is it possible ?

I am sure I am missing something, because I cannot imagine that it is that complex to get a simple product export which is updatable with P2.

Any help, idea, suggestion, article, comment, would help me a lot...
Thank you all,
Christophe Fondacci
http://www.nextep-softwares.com
Re: [3.6.1][P2] How to allow a product update ? [message #631812 is a reply to message #631801] Fri, 08 October 2010 16:57 Go to previous message
Christophe Fondacci is currently offline Christophe Fondacci
Messages: 95
Registered: July 2009
Location: Paris
Member
I did it : it works !
Thanks to the page here :
http://www.toedter.com/blog/?p=27

To make it work I had to use the metadata repository generated by the PDE export as the update site. This allows to publish meta information on a product update !

A few remarks / questions :
* Wouldn't it be possible to upgrade "Update site projects" so that we could publish "product updates" ? (for simple common RCP needs this would be very (very) helpful)
Right now, the only option I have is to make an export of my product and then push my metadata repository to my update site server... So the update site project is useless... unless someone tell me how to make my feature a "root" installable unit ?

* I needed to include the "touchpoint" p2 plugins : I don't understand what it is, it is not referenced as dependencies, it make the update fails when they are not there...

* When an update of the product is found, the first dialog displaying the update looks ugly : it only lists one line with the product ID and release number, with a vertical empty scrollbar. Is there anyway to improve this (should I fill some specific information that would be displayed in this dialog ?)

Thank you,
Christophe.
http://www.nextep-softwares.com
Previous Topic:Open View via Context Menu Action
Next Topic:Start an mwe workflow from a plugin: IOException unable to resolve plugin
Goto Forum:
  


Current Time: Tue Jul 29 13:16:03 EDT 2014

Powered by FUDForum. Page generated in 0.10900 seconds