Frank Schönheit - Sun Microsystems Germany wrote: > Hi Thomas, > >> *Description* >> ------------- >> The com::sun::star::sheet::FilterOperator2 constants extend the >> com::sun::star::sheet::FilterOperator enum > > Since we recently reached an agreement that incompatible UNO API changes > are not bad by definition (but only if done improperly), wouldn't this > be a good chance to stress this new freedom, and extend the > FilterOperator enum, instead of this somewhat strange construct of > extending the /enum/ with a /constants group/ FilterOperator2?
To my knowledge we still didn't agree on doing incompatible changes before 4.0. BTW: while changing enums currently is impossible without getting bitten by our API compatibility watch dog, IIRC it tolerates extensions of constant groups. Please correct me if I'm wrong. But in practice, constant groups and enums are equally prone to compatibility problems. If code is confronted with an unknown constant - in the firm belief that this can't happen as it wasn't specified at the time when the code was written - bad things can happen. Wouldn't it make sense to specify that constant groups are extensible per se, so that each code dealing with them must be able to handle unknown values? Perhaps with giving hints or specifying how unknown values of a particular group should be treated? So constant groups could be changed at any time with good confidence, without considering this to be "incompatible". Without this explicit declaration adding constants to groups actually is incompatible, though we didn't AFAIK consider it to be so when we already added numerous constants to several groups. Regards, Mathias -- Mathias Bauer (mba) - Project Lead OpenOffice.org Writer OpenOffice.org Engineering at Sun: http://blogs.sun.com/GullFOSS Please don't reply to "[email protected]". I use it for the OOo lists and only rarely read other mails sent to it. --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
