devel-versioning.rst
changeset 949 57b995de80b5
parent 948 23cb71bb2b5d
child 950 06221010c81d
equal deleted inserted replaced
948:23cb71bb2b5d 949:57b995de80b5
    13  * Overnight build (Y/N).
    13  * Overnight build (Y/N).
    14  * QA tested (Y/N).
    14  * QA tested (Y/N).
    15  * QA test results (Pass/Fail).
    15  * QA test results (Pass/Fail).
    16  * Location of full logs.
    16  * Location of full logs.
    17 
    17 
    18 Versioning formula.
    18 Order formula.
    19 ===================
    19 ==============
    20 
    20 
    21 if (A.major != B.major) return A.major > B.major;
    21 if (A.major != B.major) return A.major > B.major;
    22 if (A.minor != B.minor) return A.minor > B.minor;
    22 if (A.minor != B.minor) return A.minor > B.minor;
    23 if (A.patch != B.patch) return A.patch > B.patch;
    23 if (A.patch != B.patch) return A.patch > B.patch;
    24 if (A.special == B.special) return 0;
    24 if (A.special == B.special) return 0;
    25 if (A.special == "") return 1;
    25 if (A.special == "") return 1;
    26 if (B.special == "") return -1;
    26 if (B.special == "") return -1;
    27 return A.special > B.special;
    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 }
    28 
    49 
    29 Reference.
    50 Reference.
    30 ==========
    51 ==========
    31 
    52 
    32   https://developer.mozilla.org/en/toolkit_version_format
    53   https://developer.mozilla.org/en/toolkit_version_format