On Wed, Jan 23, 2013 at 9:56 PM, Stas Malyshev <smalys...@sugarcrm.com>wrote:
> Hi! > > > I asked many native speakers and all understood it as "when 5.5.0 stable > > release will be announced". > > I didn't even think it may mean anything else until I've read this > thread. I don't think any significant number of voters understood it > this way, it's sound kind of weird - why would we want to keep releasing > 5.3 a year after we stopped releasing 5.5? > -- > Stanislav Malyshev, Software Architect > SugarCRM: http://www.sugarcrm.com/ > (408)454-6900 ext. 227 Long answer: The terms "final" and "terminal" tend to be very loosely defined in the general sense. You have to look at it in the context of a given project to see how they're using each. Context isn't unique to English, of course. This particular question seems to break down into two parts: 1. In the case of PHP core, "final" has always (as far as I'm aware, at least) referred to the production release immediately following the release candidates. It does not in any way imply that it will be the last (or "terminal") release for its parent increment. For example, "5.3.3 final" means that it's the production release of 5.3.3; it does not mean that it's the last increment of 5.3. 2. When a new minor increment is released (i.e. [major].[minor].[build]), we tend to leave off the ".0" at the end on this project. Therefore, when somebody refers to "5.5 final", what they're really saying is "5.5.0 final", which refers to the production release of 5.5.0. This doesn't cause any confusion because we're consistent on this; i.e. if we were doing something like "5.2" followed immediately by "5.3.0" then "5.3.1", that would pose a problem. But since "[major].[minor]" on this project always refers to "[major].[minor].0", it's not an issue. In other words, what we're saying is it's the final (i.e. production/post-RC) release of 5.5.0, not 5.5. Our production releases are tethered to the build increment, not minor. As I understand it, "final" refers to an increment corresponding to an actual release while "terminal" refers to an increment that merely serves as the parent of releases but is not a release in and of itself. Make sense? Therefore, if we say "5.5 final", we're referring to the production release of 5.5.0. If we say "5.5 terminal", we're referring to the last build increment release of 5.5 (for example, if 5.5.12 was the last build of 5.5, then "5.5 terminal" would refer to it while "5.5 final" would still refer to 5.5.0). Short answer: The terminology context is well enough established here that nobody should have been confused as to this RFC's intent. So long as the RFC's wording conforms to these known standards, which I believe this one does, then it's the responsibility of the person voting on it to make sure they know what they mean before casting their vote. --Kris