[Numpy-discussion] Removing datetime support for 1.4.x series ?
Tue Feb 2 21:29:26 CST 2010
On Tue, Feb 2, 2010 at 9:23 PM, Neil Martinsen-Burrell <email@example.com> wrote:
> On 2010-02-02 19:53 , David Cournapeau wrote:
>> Travis Oliphant wrote:
>>> I think we just signal the breakage in 1.4.1 and move forward. The
>>> datetime is useful as a place-holder for data. Math on date-time arrays
>>> just doesn't work yet. I don't think removing it is the right
>>> approach. It would be better to spend the time on fleshing out the
>>> ufuncs and conversion functions for date-time support.
>> Just so that there is no confusion: it is only about removing it for
>> 1.4.x, not about removing datetime altogether. It seems that datetime in
>> 1.4.x has few users, whereas breaking ABI is a nuisance for many more
>> people. In particular, people who update NumPy 1.4.0 cannot use scipy or
>> matplotlib unless they build it by themselves as well - we are talking
>> about thousand of people at least assuming sourceforge numbers are accurate.
>> More fundamentally though, what is your opinion about ABI ? Am I right
>> to understand you don't consider is as significant ?
> In previous discussions about compatibility-breaking, particularly in
> instances where compatibility has been broken, we have heard vociferous
> complaints from users on this list about NumPy's inability to maintain
> compatibility within minor releases. The silent majority of people who
> just use NumPy and don't follow our development process are not here to
> express their displeasure. Even the small number of people who are
> reporting import errors after upgrading their NumPy installations should
> be an indication to the developers that this *is* in fact a problem.
> I don't understand Travis's comment that "datetime is just a
> place-holder for data". We have heard from a number of people that the
> current state of the datetime work is not sufficiently advanced to be
> useful for them.
I'd like to clarify this bit since I don't think this is accurate. My
view is that the state of the datetime
code is perfectly acceptable for developers, able to get the source,
compile the code and react appropriately
to the small glitches that inevitably occur with new code.
On the other hand, I don't see the documentation and the functionality
to be ready yet for distribution to a wider audience (read binary
distribution users) who are likely to feel frustration toward
compilation and compatibility issues.
In that sense, the proposition from David C. seems to strike a nice balance.
What is the place that needs holding here? What
> difference does it make if that code is simply developed on a branch
> which will be incorporated into an ABI-breaking x.y release when
> datetime support is at a useful point in its development? What's the
> particular benefit for NumPy users or developers in including a
> half-working feature in a release? If we simply want the feature to
> start getting exercised by developers, then we should make a long-lived
> publicly available branch for those who would like to try it out.
> (Insert distributed version control plug here.)
> NumPy has become in the past 3-5 years a critical low-level library that
> supports a large number of Python projects. As a library, the balance
> between compatibility and new features has to shift in favor of
> compatibility. This is a change from the days when Travis O. owned the
> NumPy source tree and features were added at will (and we are all glad
> that they were added).
> As a simple user, I vote in favor of considering 1.4.0 as a buggy
> release of NumPy, removing datetime support (it's just one 4000 line
> commit, right?) and releasing an ABI compatible 1.4.1. That should
> probably be accompanied by a roadmap hashed out at this year's SciPy
> conference that takes us up through adding datetime, Python 3 and a
> possible major rewrite (that will add the indirection necessary to make
> future ABI breaks unneccessary).
> NumPy-Discussion mailing list
More information about the NumPy-Discussion