Ross Gardler wrote:
Cyriaque Dupoirieux wrote:

...

Projects can select their implementations :
   If a project specifies project.required.plugins=C, A, it's OK,
If a project specifies project.required.plugins=C, B, it's OK too - but with a different behaviour or rendering,


There you go, you just wound up at the Eclipse definition of a Feature.

Just to be clear. The reason we decided (in the past) not to allow plugins to have dependencies in this way is because it requires the user to have a deep understanding of what plugins work with what other plugins. Even worse, they need to know which versions of plugins will play happily.

By requiring the user to know this we will end up with user support questions, which in turn will result in us having to maintain documentation, which in turn will get out of synch with the reality of development, which will result in more user confusion.

So, my proposal is to document what plays with what in a feature definition file as described in the previous email. We can generate documentation from this file and it removes the need for the user to worry about version numbers of plugins.

Ross