devel-versioning.rst
changeset 1009 be52d3742472
parent 1008 4ddb673763e6
child 1032 4decc3e00bb6
equal deleted inserted replaced
1008:4ddb673763e6 1009:be52d3742472
   168 version without breaking.
   168 version without breaking.
   169 
   169 
   170 Compile time or source compatibility mean that supplied header/interfaces allow
   170 Compile time or source compatibility mean that supplied header/interfaces allow
   171 successful compiling/linking.
   171 successful compiling/linking.
   172 
   172 
   173 Example:
   173 Examples:
   174 
   174 
   175  * Change type of argument in method to more generic take source compatibility
   175  * Change type of argument in method to more generic take source compatibility
   176    but break binary compatibility.
   176    but break binary compatibility.
   177  * Adding new mothod to abstract class take binary compatibility but break
   177  * Adding new mothod to abstract class take binary compatibility but break
   178    compilation (unimplement method error).
   178    compilation (unimplement method error).
       
   179 
       
   180 File format compatibility.
       
   181 
       
   182 Protocol compatibility.
   179 
   183 
   180 Compatibility formula.
   184 Compatibility formula.
   181 ======================
   185 ======================
   182 
   186 
   183 Assume that app linked with new version of lib. Thus::
   187 Assume that app linked with new version of lib. Thus::