Acceleo/API Policy

From Eclipsepedia

< Acceleo
Revision as of 05:59, 2 June 2010 by Laurent.goubet.obeo.fr (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Acceleo API Policy

Declared API

Declared API is public API that the Acceleo team will support for the time being. It is comprised of every class/interface declared "public" and contained in an exported package.

In subsequent releases, declared API may sometimes be deprecated due to the normal evolution of the project. Deprecated methods will always be appropriately commented with information on how to accomplish the same with either existing or new API methods. Deprecated API will not be removed from the codebase until the next major release, and even major releases may see deprecated API maintained. In any event, the community will be notified of the deletion of any deprecated API through the usual communications channels (newsgroup, mailing list, etc).

Internal API

Any class that is not located in an exported package or is declared as "private" or "package" is considered internal. Non API classes are usually located in a package named "internal". Internal API may and will be modified at any time, without prior notice. We also use API Tooling specific javadoc tags in order to enforce "internal" aspects on some of the Declared API classes, "@noImplements", "@noextends", "@noOverrides", etc... denote interface, classes and methods on which some aspects are not authorized by the team and may be broken without notice.

Adopters requiring the use of internal code should open bugzilla enhancement requests for API. These bugs will be analyzed and will help drive the creation of new API when possible.