Uno/API Deprecation

From Apache OpenOffice Wiki
< Uno
Jump to: navigation, search

If/How to Deprecate/Change/Remove UNO API

Discussion has been going on for years what to do with known-stale/badly designed/un-used UNO IDL types. Here's an attempt to collect some ideas.

Random ideas:

  • decide on rules when published types may be removed or changed:
    • number of clients in OOo
    • (estimated) use outside OOo project (i.e. people that don't read interface-announce)
    • how "bad" is the API - i.e. if everybody agrees it plainly sucks, remove anyway despite points above
  • deprecate in one feature release (add a suitable warning mechanism when using such API)
  • remove in the following feature release
  • limit impact considerations to non-ABI-dependent UNO bindings (i.e. the assumption is that c++ components break randomly anyway for every other release, so they shouldn't block API changes)

Kill file

List of problematic API that should be considered for deprecation/change/removal:

  • css::document::XDocumentInfo User:mst
  • css::beans::StringPair - there's the generic beans::Pair<> type now User:thorsten
  • css::util::Time and DateTime lack a timezone field. Just adding that would be less work than defining new structs. User:mst
Personal tools