What is the difference between Spring's GA, RC and M2 releases?
GA = General availability (a release); should be very stable and feature complete
RC = Release candidate; probably feature complete and should be pretty stable - problems should be relatively rare and minor, but worth reporting to try to get them fixed for release.
M = Milestone build - probably not feature complete; should be vaguely stable (i.e. it's more than just a nightly snapshot) but may still have problems.
SR = Service Release (subsequent maintenance releases that come after major -RELEASE
).
Refer to Software release life cycle on Wikipedia. The whole life cycle is described in detail.
I think:
- GA - Generally Available, or publicly allowed to brutalized and subjected to intense torture.
- RC- Hmm, these could be a good candidate to release to the public and also see if there are any critical bug remaining.
- M2- Hmm, we have reached the 2nd milestone in our project plan, let's see what the users think and gather some ideas about the bugs that may still persist.
Usually, its Milestone release, then RC releases and then a GA release.
In an Open Source project, you usually would have a public plan for releases, which can actually give you good ideas about the project's release plans. Like, what quality criteria determines a RC, GA or a Milestone release.