I have a few questions about CQs, especially in the context of Maven dependencies. I'm working on a guideline which I will publish in the project wiki and which other committers of the project can use if they want to add new dependencies.
I would love to get your feedback about whether the following assumptions are correct.
- If the dependency is "test"-scoped, it is always a Test and Build dependency and therefore treated as a workswith.
- If the dependency is "provided"-scoped, it is only used at build-time but not really "distributed" in any way. Instead, it must be provided by the environment in which the corresponding Eclipse project is used in. Such dependencies are therefore also workswith.
- Dependencies which are "compile"-scoped are usually prereq dependencies. However, if the dependency is part of some kind of "optional addon module" of the Eclipse project and not part of the "core functionality", it is workswith.
- Maven plugins are usually workswith.
- You can update to newer patch releases of a third-party dependency without filing a new CQ. So in most cases it is fine to update from something like 1.2.4 to 1.2.9, but not to 1.3.0. Of course this only works the license of the dependency didn't change.
I would love to hear your thoughts.