Numarray is an array processing package designed to efficiently manipulate large multi-dimensional arrays. Numarray is modelled after Numeric and features c-code generated from python template scripts, the capacity to operate directly on arrays in files, arrays of heterogeneous records, string arrays, and in-place operation on memory mapped files. Numarray has been superceded by the 3rd generation array package numpy. This release is intended to ease the process of transition for existing users. New users should investigate numpy. ========================================================================= Release Notes for numarray-1.5.2 I. Comments This is a very modest release which primarily consists of bug fixes to numarray's implementation of the numpy array interface. II. Related Source Forge Tracker Items 1545988 Added numpy ndim attribute 1469418 Array interface fails on views 1545971 Array interface memory leak 1540639 Added __array_struct__ to masked arrays 1495660 numarray: segfault in rich compare 1492157 bug in choose in recent numarray versions 1488863 Two bugs in memap 1484133 putmask byteswapped array 1476288 Problems with initialization of 1-element string fields See http://sourceforge.net/tracker/?atid=450446&group_id=1369&func=browse for more details. III. CAUTIONS Switch to numpy. ========================================================================= Release Notes for numarray-1.5.1 I. Comments 1. NumArray Operator Optimization Bug numarray-1.4.0 moved all NumArray operator "hooks" from Python down into C to make operators (e.g. +) as fast as ufuncs (e.g. add()). A number of users doing numarray applications in C or using pickling reported problems. This bug has been fixed and is the predominant motivator for this release. 2. Better NumPy dtype Support. I refined numarray's support for numpy-style numerical dtypes and added the new dtype attribute: >>> a = arange(10, dtype='i') >>> a = arange(10, dtype='i4') >>> a = arange(10, dtype='int32') >>> a = arange(10, dtype='>> a = arange(10, dtype=numarray.dtype.int32) >>> a.dtype.char # i.e. int32 'i' >>> a.dtype.kind # i.e. integer 'i' >>> a.dtype.itemsize 4 >>> a.dtype.byteorder # little endian '<' >>> a.dtype.str '>> a.dtype.type Int32 >>> a.dtype.isbuiltin True >>> a.dtype.isnative True This is still pretty superficial support for dtype and omits specification of records, strings, and objects. Although numarray's dtype instances record byteorder, only native byteorder arrays can be constructed at present. II. Related Source Forge Tracker Items 1396372 UInt32 AMD64 crash 1412737 NumarrayType enumeration problem 1395938 AMD64 Clipping, casting, and maximum values 1396742 Slow performance in array protocol with string arrays 1397667 Add scipy newcore numpy .dtype attribute 1386807 sum(a boolean array) returns a negative value 1387438 UFunc disease spreads (C operator hook bug) See http://sourceforge.net/tracker/?atid=450446&group_id=1369&func=browse for more details. III. CAUTIONS This release should be binary compatible with numarray-1.3.x. New extensions compiled against 1.5.1 may not work with 1.4.x or earlier versions of numarray. ========================================================================= Release Notes for numarray-1.5.0 I. ENHANCEMENTS 1. Implementation of scipy newcore array interface and __array_struct__ support (supplying and consuming) for numarray. This should facilitate better interoperability with scipy newcore and Numeric. This protocol is documented here: http://numeric.scipy.org/array_interface.html but also in numarray's source code in Include/numarray/arrayif.h. Thanks to everyone who gave feedback on 1.4.1 and particularly to Francesc Altet for his diligent testing (and doctest) of Numeric<->numarray data interchange. II. BUGS FIXED / CLOSED 1365121 Definition of PyObject* operator conflicts with C++ 1350954 nummacro.h:27: error: expected type-specifier before ';' tok 1346470 Please document more of what byteswap and byteswapped do 1364215 Cannot combine array and masked array (e.g. via divide) 1363723 my_array = +my_other_array uncovers a bug 1364811 Infinite loop converting empty CharArrays to lists 1364815 Strange behaviour when creating empty Int32 arrays 1340983 Fix __get_array_data__ 1346480 byteswapped doesn't match doc string 1346425 Please document if copy "fixes" byte order 1346426 Please document what array does with numarray arrays See http://sourceforge.net/tracker/?atid=450446&group_id=1369&func=browse for more details. III. CAUTIONS This release should be binary compatible with numarray-1.3.x. New extensions compiled against 1.5.0 may not work with prior versions of numarray. WHERE ----------- Numarray-1.5.0 windows executable installers, source code, and manual is here: http://sourceforge.net/project/showfiles.php?group_id=1369 Numarray is hosted by Source Forge in the same project which hosts Numeric: http://sourceforge.net/projects/numpy/ The web page for Numarray information is at: http://www.stsci.edu/resources/software_hardware/numarray Trackers for Numarray Bugs, Feature Requests, Support, and Patches are at the Source Forge project for NumPy at: http://sourceforge.net/tracker/?group_id=1369 REQUIREMENTS ------------------------------ numarray-1.5.0 requires Python 2.2.3 or greater. AUTHORS, LICENSE ------------------------------ Numarray was written by Perry Greenfield, Rick White, Todd Miller, JC Hsu, Paul Barrett, Phil Hodge at the Space Telescope Science Institute. We'd like to acknowledge the assitance of Francesc Alted, Paul Dubois, Sebastian Haase, Chuck Harris, Tim Hochberg, Nadav Horesh, Edward C. Jones, Eric Jones, Jochen Kuepper, Travis Oliphant, Pearu Peterson, Peter Verveer, Colin Williams, Rory Yorke, and everyone else who has contributed with comments and feedback. Numarray is made available under a BSD-style License. See LICENSE.txt in the source distribution for details. -- Todd Miller jmiller@stsci.edu