There are 2 interfaces that were changed in cdt.core and that cause breaking API changes as reported by API tooling. Both interfaces are presumable of internal kind but not marked currently as such:- org.eclipse.cdt.core.settings.model.ICDescriptionDelta
- org.eclipse.cdt.core.settings.model.ICSettingEntry
I marked both as @noextend/@noimplement which is breaking by itself.
ICDescriptionDelta is to create a delta for event notification which is done internally in the model. I do not believe users should be allowed to implement it.
I am less convinced about ICSettingEntry but we had some discussion about it earlier and James was of the opinion that it should be marked as internal. I would concur unless somebody provide a good reason for extending.
So, on sd90 branch I marked them as @noextend/@noimplement and added to API filters which allowes not to increase the major version of cdt.core. Would it be appropriate to do in this case?
This also brings up a question what is the next version of CDT itself, is it CDT 9.0 or CDT 8.1 ?
+1 for 9.0. The changes (not the API, but the scanner discovery in general) are large enough to warrant a new major version.