P2 has surely seen a lot of improvement in Eclipse 3.5, but some functionality that was actually somewhat acceptable in the old Update Manager is still lacking awesomeness. I’m trying to install VE into Galileo (Eclipse for Java + M2Eclipse + Subclipse + Scala IDE).
There are two usability issues with this. The first is that after selecting the “Visual Editor” feature from the site, I don’t have a “select dependencies” option. But from past usage of VE I remember that it requires Java EMF Model. So I select that too. A new user would not know to select this. I’ll have to navigate to the next page to find out if there are unresolved dependencies. And then we come to the second problem, which is this screen:

Am I really supposed to decipher this text and take action based on that? No thanks, I’ll just skip installing VE this time, I don’t have actual need for it right now.
June 26, 2009 at 10:58 pm |
You don’t need to select dependencies at all using p2. Dependencies are computed and installed automatically. It’s only because you’re accustomed to the old UI that (unreasonably) required the user to manually figure out and select dependencies. Just don’t select EMF at all and it should work.
The root of the error message is on the fifth line, “Only one of the following can be installed at once”. You are trying to install something that is incompatible with what you have installed (they require different versions of the bundle org.eclipse.jem.util, but there can only be one version of that bundle installed at any given time). If you think this is still unclear please enter a bug report. p2 is just enforcing the constraints defined by the authors of these features.
June 26, 2009 at 11:21 pm |
I just think this information should be presented in a more readable form. I’ll file a report when I come up with a good suggestion.
June 27, 2009 at 1:21 am |
[...] This post was Twitted by planet_lang [...]
June 27, 2009 at 5:15 am |
Erkki,
Yes, I agree that a more readable form would be good. However, this is very difficult using a pseudo boolean solver. In p2 dependencies are calculated by running a variety of optimization functions through SAT4J, and if a solution is available, it will find it. If not, this is a different can of worms. Researchers at Université d’Artois have done a lot of work to improve the error reporting in 3.5, but more is needed. I know they are looking for help (research funding, research, etc…).
June 27, 2009 at 3:38 pm |
So P2 gets this message simply as text from the solver? Or is it more structured? Even separating the “software being installed” and “software already installed” from the actual unsolved constraints would be progress, IMHO.
June 30, 2009 at 11:06 am |
Hi Erkki,
p2 gets a semi-structured explanation from SAT4J, not plain text.
Please fill a bug report if you feel that a simplified explanation should be shown first (just the first lines of the explanation for instance).