[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
RE: [cdt-dev] API changes in IOption (cdt.managedbuilder.core)
|
Hi Andrew,
I had a quick look at the patch and I don't think that this
requires a breaking change.
The additional attribute is optional, so you can define a
new extension interface which all
internal implementations of IOption (Option,
OptionReference) implement.
On the other hand, IOption looks
like it is not meant to be implemented by clients,
therefore it should have the "@noimplement" tag which
allows you to add methods
without breaking the API. Adding the
"@noimplement" is a breaking change in itself,
though.
In other words, if you are going to increment the major
version number, I'd recommend
to tag public interfaces which are not meant to be
implemented by clients with "@noimplement"
and thus avoid breaking changes later
on.
Cheers,
Toni
Hi,
There a new contribution
bug
300707 to Build Settings UI to allow an integrator to specify a
file-extension filter for FileListControl when browseType 'file' is used for
an option (one example is C++ Linker->Misc->Other objects).
The request makes sense, however it breaks API adding new methods to
IOption interface. Since we decided in favor of CDT 7.0 it is legitimate.
However it is a core interface for MBS and I suppose some existing
integrations may be broken. Is there any reservations against making these
breaking changes in IOption for CDT 7.0?
Andrew