rfc:peclversioning
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
rfc:peclversioning [2008/04/02 15:22] – pajoye | rfc:peclversioning [2008/04/02 15:51] – old revision restored sfox | ||
---|---|---|---|
Line 37: | Line 37: | ||
=== Optional Extras === | === Optional Extras === | ||
- | The cvs $Revision$ or $Id$ placeholder | + | The cvs $Revision$ or $Id$ placeholder may be used in PHP_MINFO(), |
=== Version Naming === | === Version Naming === | ||
Line 48: | Line 48: | ||
The vast majority of PECL packages fall into the ' | The vast majority of PECL packages fall into the ' | ||
- | * A version string **must** include a major, a minor and a patch level number (x.y.z) Please note that all are version numbers are mandatory. | + | * A version string **must** include a major, a minor and a patch level number (x.x.x) |
- | * A package version has a " | + | * The status of the package may be described |
- | * The state should always be added as a suffix unless the state is " | + | * //Note that the PEAR installer cannot recognize hyphens in a package version string// |
- | * //Note that the PEAR installer cannot recognize hyphens in a package version string// | + | * In package.xml, |
- | * In package.xml, | + | |
- | + | ||
- | The following points can be added to extend this RFC to fit some basic needs requested by our users or 3rd party. The main goal is to define when a package can break the backward compatibility, | + | |
- | + | ||
- | //Please note that these points are subject to discussions as some developers may not like to be forced to use a given version number. Please mention your preference in your vote or feedbacks/ | + | |
- | + | ||
- | * A backwards-compatability break may include feature additions | + | |
- | * A feature addition may include bug fixes | + | |
- | * The version name is always computed on the version name of the release, on which the new release is based, if one exists. | + | |
- | * The version number must be greater or equal than 0.1.0 | + | |
- | * All initial releases of a package with states " | + | |
- | * The first release with state " | + | |
- | * BC may only be broken in releases that have a version number of " | + | |
- | * Features may only be added in releases that have a version number of " | + | |
- | * For releases that only fix bugs the version number should be " | + | |
- | * The state should always be added as a suffix unless the state is " | + | |
- | * In the lifecycle of a package each major version increase it is only once (once from major version number 0 to 1, from 1 to 2 etc.). | + | |
- | + | ||
- | == Example: Lifecycle of a package == | + | |
- | ^ Release type ^ Changes ^ Version ^ Notes ^ | + | |
- | | development release | initial release | 0.1.0a1 | initial version | | + | |
- | | development release | features added | 0.2.0a1 | BC break allowed | | + | |
- | | alpha release | features added | 0.9.0a1 | BC break allowed - but discouraged | | + | |
- | | beta release | bug fixes | 0.9.0b1 | BC break allowed - but discouraged | | + | |
- | | beta release | bug fixes | 0.9.0b2 | BC break allowed - but discouraged | | + | |
- | | RC release | bug fixes | 1.0.0RC1 | BC break allowed - but heavily discouraged | | + | |
- | | stable release | no changes | 1.0.0 | BC break is not allowed | | + | |
- | | stable release | bug fixes | 1.0.1 | BC break is not allowed | | + | |
- | | development release | features added | 1.1.0a1 BC break is not allowed | | + | |
- | | beta release | bug fixes | 1.1.0b1 | BC break is not allowed | | + | |
- | | stable release | bug fixes | 1.1.0 | BC break is not allowed | | + | |
- | | stable release | features added | 1.2.0 | BC break is not allowed | | + | |
- | | development release | major changes | 2.0.0a1 | BC break is allowed | | + | |
- | | alpha release | major changes | 2.0.0a1 | BC break is allowed - but discouraged | | + | |
- | | beta release | bug fixes | 2.0.0b1 | BC break is allowed - but discouraged | | + | |
- | | RC release | features added | 2.0.0RC1 | BC break is allowed - but heavily discouraged | | + | |
- | | RC release | bug fixes | 2.0.0RC2 | BC break is allowed - but heavily discouraged | | + | |
- | | stable release | bug fixes | 2.0.0 | BC break is not allowed | | + | |
- | | stable release | bug fixes | 2.0.1 | BC break is not allowed | | + | |
+ | If you need further guidance, please refer to the extensive PEAR version naming rules at [[http:// | ||
=== Core Modules in PECL === | === Core Modules in PECL === |
rfc/peclversioning.txt · Last modified: 2017/09/22 13:28 by 127.0.0.1