
On Sat, May 9, 2009 at 12:50, Duncan Coutts
Allow compatible API additions
If the change is compatible then it does not break any existing programs, so it should be allowed. Any program that works with a platform particular release will continue to work with subsequent minor versions. This is standard backwards compatibility policy.
Isn't this false, though? Some existing program could easily break. Suppose a library exports functions f and g, but in the next minor revision starts exporting h. Some code that uses the library uses f and g, and defines its own (unrelated) function called h in the module that imports the library unqualified. When the library gets updated, the code now has an ambiguous reference to h. Please correct me if I'm wrong. Denis