Jump to: navigation, search

Difference between revisions of "Version Numbering Europa Update"

(When to increment the service segment)
(Guidelines for exported plug-ins)
Line 16: Line 16:
  
 
== Correction of feature versioning example ==
 
== Correction of feature versioning example ==
 +
 +
== Guidelines for format of qualifier segment ==
  
 
== Guidelines for exported plug-ins ==
 
== Guidelines for exported plug-ins ==

Revision as of 16:42, 2 November 2006

As more projects have begun using the Eclipse project Version Numbering Guidelines, further clarification is required to capture the development processes of different projects. To this end, a number of updates have been made for the Europa Simultaneous Release since the initial guidelines were written. This document describes the changes, along with the motivation for the change.

When to increment the service segment

The initial guidelines stated that the service segment must be incremented when there is a "bug fix". This criterion is unclear, because the kind of change that constitutes a "bug fix" is open to interpretation. For example, is a documentation change or a change to compiler settings considered a bug fix? The answer is yes. The guidelines have been revised to state:

  The service segment number must be incremented whenever there have been changes to a           
  plug-in between releases that are not visible in its API. For example, a bug has been 
  fixed in the code, the plug-in manifest has changed, documentation has changed, 
  compiler settings have changed, etc.

In other words, if the bits on disk have changed, then at least your service segment must also change. This guideline ensures that the builds prior to a release can be distinguished from builds made to a maintenance stream after a release. This also ensures that the update manager and OSGi resolver will always correctly pick the version of the plug-in from the most recent release. Relying on the lexigraphical order of the qualifier segment for this task is error prone, since a simple typo when tagging a project for a build could result the wrong version being chosen (for example changing from "v20060601" to "V20060602", or "v20060601" to "I20060602", or "v20051231" to "v20050101", to give just three examples of mistakes that have been made).

Managing multiple maintenance branches

Minor version changes in a maintenance branch

Correction of feature versioning example

Guidelines for format of qualifier segment

Guidelines for exported plug-ins