
On 04/01/15 21:55, Sturla Molden wrote:
On 03/01/15 20:49, Nathaniel Smith wrote:
OTOH the big problem that motivated his post was that his code is all written against the APIs of the ancient and long-abandoned Numeric project, and he finds the costs of transitioning them to the "new" numpy APIs to be prohibitively expensive, i.e. this big-bang transition broke his code.
Given that a big-bang transition broke his code everywhere, I don't really see why he wants more of them.
I am not asking for "big-bang transitions" as such. I am asking for breaking changes to go along with a clearly visible and clearly announced change in the API name and/or major version. A change as important as dropping support for an API that has been around for 20 years shouldn't happen as one point in the change list from version 1.8 to 1.9. It can happen in the transition from "numpy" to "numpy2", which ideally should be done in a way that permits users to install both "numpy" and "numpy2" in parallel to ease the transition. There is a tacit convention in computing that "higher" version numbers of a package indicate improvements and extensions but not reduction in functionality. This convention also underlies most of today's package management systems. Major breaking changes violate this tacit convention.
The question of reproducible research is orthogonal to this, I think.
Indeed. My blog post addresses two distinct issues, whose common point is that they relate to the evolution of NumPy. Konrad.