Community
Participate
Working Groups
The baseline has to be set per workspace. When using API tooling in a team everyone on the team needs to set the same baseline. Otherwise warnings/errors reported will differ from workspace to workspace. If it is technically a problem to share the baseline on a per-project basis, it would be nice to have a means of requiring a baseline for a plugin-project that contains a specific versions of the plugin. For example after API-freeze a project must use a different baseline than before API freeze. It would be nice if I can enforce that by means of a shared project preference.
Agree, this would be useful.
I also agree this would be a valuable addition, as Markus mentioned it would allow one person to make the baseline update and all others would get it for "free".
I think we should allow to set a baseline per target definition in PDE as well. When you change your target platform, you also change your API baseline - the two go together. I could imageine a way to associate a baseline with a target on the target platform preference page.
(In reply to comment #3) > I think we should allow to set a baseline per target definition in PDE as well. This would also be handy > When you change your target platform, you also change your API baseline - the > two go together. This is not entirely true, the two are related concepts but changing your target platform does not mean you have to change your baseline. On the other hand I could envision some guidance to the user that if they change their target to a new version of Eclipse we could "suggest" they update their baseline infos as well.
>When you change your target platform, you also change your API baseline Not necessarily: I for example only use it to import stuff and I might have 3.4 and 3.5 plug-ins in my workspace with different API baselines. I'd definitely prefer to have it directly on the project for two reasons: 1. the baseline needs to be changed only by one person the others get it for free 2. I can have different projects with different baselines in my workspace
I agree it makes sense to have per-project baselines - just as it makes senese to have per-project target platforms. PDE would like to move towards a model that allows per-project settings (there are efficiency issues to overcome on the implementation side). Generally, many projects in the workspace share the same target/baseline. Another issue is how to represent the target/baseline in a classpath file (i.e. the PDE classpath container could reference it, but having a "handle" representation of a target/baseline has not yet been solved). Is it a URI that points to a target definition file? is it a workspace relative path? etc. Currently there is no mechanism for this.
+1 on baselines per project. I inadvertantly lost my baselines when I started a fresh workspace for 3.6 development. I'm so used to "getting what the team defines" from the project settings that I didn't think to define a new baseline for 3.5, etc....
*** Bug 285406 has been marked as a duplicate of this bug. ***
Not planned for 3.6
Having more than one project open in the workspace with the same plugin-id causes erroneous behavior when using API Tools: https://bugs.eclipse.org/bugs/show_bug.cgi?id=312388 Implementing per-project baselines would (likely) render the above bug report obsolete.