[Numpy-discussion] Heads up and macro deprecation.
Charles R Harris
Thu Feb 2 11:36:51 CST 2012
On Thu, Feb 2, 2012 at 9:58 AM, Bruce Southey <firstname.lastname@example.org> wrote:
> On 02/01/2012 02:53 PM, Charles R Harris wrote:
> Hi All,
> Two things here.
> 1) Some macros for threading and the iterator now require a trailing
> semicolon. This change will be reverted before the 1.7 release so that
> scipy 0.10 will compile, but because it is desirable in the long term it
> would be helpful if folks maintaining c extensions using numpy would try
> compiling them against current development and adding the semicolon where
> needed. The added semicolon will be backward compatible with earlier
> versions of numpy.
> Why do the changes need to "be reverted before the 1.7 release'?
> Scipy 0.10 was released nearly three months ago so we should be moving
> forward. I think this is not the first time a released scipy would not
> build with the 'future' numpy. But most of the scipy 0.10 downloads are
> binaries so I presume that this change should not affect those users. But
> if this is such a major downstream problem, just have a very, very minor
> bug-fix very much restricted to this issue. If the changes do not affect
> binary users then perhaps just a re-release of the source archives would be
> needed rather than a full bug release.
That was Ralph's preference.
> 2) It is proposed to deprecate all of the macros in the old_defines.h file
> and require the use of their replacements. Numpy itself will have made this
> change after pull-189 <https://github.com/numpy/numpy/pull/189> is merged
> and getting rid of the surplus macros will help clean up the historical
> detritus that has built up over the years, easing maintenance, clarifying
> code, and making the eventual transition to 2.0 a bit easier. There is a
> sed script in the tools directory as part of the pull request that can be
> used to make the needed substitutions.
> Isn't this just formalizing the name changes that has been happening for
> some time in 'core/include/numpy/old_defines.h'?
> That is people have really been using the 'new macros' for ages, just that
> these have been 'called' with the old names. If so, I would be support an
> aggressive stance for those changes are just renaming and the slow
> depreciation cycle for other cases.
Yes, the macro functionality is the same, just the names have changed.
I'm also going to update all the noprefix macro uses in numpy in a separate
pull request. I expect that will be more disruptive.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the NumPy-Discussion