devel-versioning.rst
changeset 1008 4ddb673763e6
parent 1007 f7a62b2027ea
child 1009 be52d3742472
equal deleted inserted replaced
1007:f7a62b2027ea 1008:4ddb673763e6
   159 
   159 
   160 Who use:
   160 Who use:
   161 
   161 
   162   GLib GTK+ Gimp GNOME Kaffe
   162   GLib GTK+ Gimp GNOME Kaffe
   163 
   163 
       
   164 Forms of compatibility.
       
   165 =======================
       
   166 
       
   167 Runtime of binary compatibility mean that binary can be swaped with another
       
   168 version without breaking.
       
   169 
       
   170 Compile time or source compatibility mean that supplied header/interfaces allow
       
   171 successful compiling/linking.
       
   172 
       
   173 Example:
       
   174 
       
   175  * Change type of argument in method to more generic take source compatibility
       
   176    but break binary compatibility.
       
   177  * Adding new mothod to abstract class take binary compatibility but break
       
   178    compilation (unimplement method error).
       
   179 
   164 Compatibility formula.
   180 Compatibility formula.
   165 ======================
   181 ======================
   166 
   182 
   167 Assume that app linked with new version of lib. Thus::
   183 Assume that app linked with new version of lib. Thus::
   168 
   184