devel-versioning.rst
changeset 955 e9a167ac98f3
parent 950 06221010c81d
child 1003 4b8b3daac0db
equal deleted inserted replaced
954:887fa4aff71f 955:e9a167ac98f3
     1 =================
     1 =================
     2  Version format.
     2  Version format.
     3 =================
     3 =================
     4 .. contents::
     4 .. contents::
       
     5 
       
     6 Release build version data.
       
     7 ===========================
       
     8 
       
     9  * Build number.
       
    10  * Build date.
       
    11  * Build version.
       
    12  * Branch-tag used.
       
    13  * Overnight build (Y/N).
       
    14  * QA tested (Y/N).
       
    15  * QA test results (Pass/Fail).
       
    16  * Location of full logs.
       
    17 
       
    18 Order formula.
       
    19 ==============
       
    20 
       
    21 if (A.major != B.major) return A.major > B.major;
       
    22 if (A.minor != B.minor) return A.minor > B.minor;
       
    23 if (A.patch != B.patch) return A.patch > B.patch;
       
    24 if (A.special == B.special) return 0;
       
    25 if (A.special == "") return 1;
       
    26 if (B.special == "") return -1;
       
    27 return A.special > B.special;
       
    28 
       
    29 **NOTE** Accoding to this definition 1.0.1rc1 < 1.0.1rc10 < 1.0.1rc2 which is
       
    30 non meaningful.
       
    31 
       
    32 Compatibility formula.
       
    33 ======================
       
    34 
       
    35 Assume that app linked with new version of lib. Thus::
       
    36 
       
    37   is_compatible_with_old(old, new) {
       
    38     if (old.major != new.major) return 0;
       
    39     if (old.minor > new.minor) return 0;
       
    40     return 1;
       
    41   }
       
    42 
       
    43 Assume that app linked with old version of lib. Thus::
       
    44 
       
    45   is_compatible_with_new(old, new) {
       
    46     if (old.major != new.major) return 0;
       
    47     return 1;
       
    48   }
     5 
    49 
     6 Reference.
    50 Reference.
     7 ==========
    51 ==========
     8 
    52 
     9   https://developer.mozilla.org/en/toolkit_version_format
    53   https://developer.mozilla.org/en/toolkit_version_format
    10                 Toolkit version format
    54                 Toolkit version format
       
    55   http://apr.apache.org/versioning.html
       
    56                 APR's Version Numbering
       
    57   http://semver.org/
       
    58                 Semantic Versioning
    11 
    59