Jump to: navigation, search

LTS/LTS Ready

The following are the minimum required in order for a project to be considered Long Term Support (LTS) ready:

Code Repository

  • A distributed version control system capable of pushing branches from repository to repository. This repository should be one that is supported at the Eclipse Foundation. (e.g. Git)

Build

A build that

  1. Can be cloned/checked out with one step
  2. Is documented
  3. Is version controlled
  4. Is automated
  5. Is deterministic given the same source code and third party libraries
  6. Is easily reproducible on suitably-configured systems TODO: Can we define this a little better? suggestion:
    1. has git >=1.7
    2. has java >=6.0
    3. has maven 3.0.3
    4. does it even need an eclipse SDK install? If so, I'd suggest Indigo as a baseline
  7. Can refer to compilers and other tools from a configurable location suggestion:
    1. must be able to supply JRE locations for 1.4-1.7 We also compile against the following libraries Foundation 1.0, Foundation 1.1, OSGi Minimum 1.1, OSGi Minimum 1.2 See the execution environment on a per bundle basis in the project plan.
    2. to support the next requirement, must be able to supply local mirrors of required p2 repositories (orbit, indigo/juno, etc)
    3. signing at eclipse.org needs to be optional but configurable?
  8. Capable of building without needing an active Internet connection question:
    1. does maven/tycho cache the bundles it needs from p2 repos in the local maven repo, so having run once you don't need your connection anymore?
  9. Capable of pulling dependencies from a known controlled source (e.g. Orbit, Maven, eclipse.org, etc.)
  10. Adheres to Eclipse IP policies (esp. with regards to third party code)

Testing

An test suite that

  1. Is version controlled
  2. Is automated Andrew => is this so in all cases? can and should manual test cases be provided too?
  3. Documented

Bug Tracking

  • Bugs managed in Bugzilla, and possible to have appropriate meta data to manage and track bugs routed to each LTS release version

Release Management

  • Was released as part of the annual simultaneous release