A more important scenario is as follows: let's assume we do allow
breaking the ABI every 1.X release, meaning that an ABI incompatible
change happens every ~ 6 months at the current pace (using the last 2-3
years as history).

If the issue is having too many releases that are .X releases, then let's just slow that down. We are going to have to be able to break ABI compatibility at some point. I agree it should not be taken lightly. But, we have to allow it to happen.

For example, there has been a change I've wanted to see in the NumPy data structure ever since 1.0 that I did not make precisely to avoid breaking ABI compatibility. The 'hasobject' field in the PyArray_Descr structure is too small and should be renamed. There is a comment in the code stating that this field needs to change as soon as we are willing to break ABI compatibility (and the field still hasn't changed). The comment is still there. Obviously I have been cautious about ABI compatibility. I just never had the opinion that we would *never* change the ABI.

I don't think there is any disagreement in the general idea that the ABI should remain stable for a long time. I think the problem is that in this particular instance, we had different opinions about the importance of ABI compatibility for the 1.4 release. I did not think it was possible, and was surprised when it was attempted. I should have voiced those concerns more loudly.

What about the idea of making a 1.3.1 release that maintains ABI compatibility with previous releases. This would basically allow for 1.X releases where .X is even to break ABI compatibility (not saying they always will, but might). The odd releases never do.

I will help make the 1.3.1 release if this is an agreeable solution. This pattern would certainly help create stability while still allowing change to happen in a reasonable way.

-Travis

--
Travis Oliphant
Enthought Inc.
1-512-536-1057
http://www.enthought.com
oliph...@enthought.com





_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to