changes:
Version 23.1 August 2003
[unreported] fixed assignment to matrix.
[unreported] added check so that non-character array cannot be interpreted
as a character buffer.
[unreported] array([m,m,m]) when m is a rank-0 array now works as expected.
Patches:
[ 782001 ] Add true and floor divide to MA
[ 781215 ] true_divide bug
[ 776991 ] multiplying small UINT values gives random results
[ 776467 ] remove string exceptions
Important notice:
Two packages have been removed from optional ones: PropertiedClasses, kinds.
MA has been rewritten to use standard property and will not work for
ancient Pythons. (Pre 2.1, I think). Use the MA / Propertied Classes
from Numeric 22 if you can't use this one.
The kinds package (subject of PEP-0242) will be released as a separate
package shortly. PEP-0242 was withdrawn because this facility did not seem
to be worth putting in the standard library, but kinds is correct as is.
Other changes are bugfixes.
Fixed bugs:
[ #482603 ] Memory leak in MA/Numeric/Python
Reported by Reggie Dugard. Turned out to be
*two* memory leaks in one case in a routine in Numeric,
array_objectype. (Dubois)
[ none ] if vals was a null-array array([]) putmask and put would
crash. Fixed with check.
[ #469951 ] n = n1[0] gives array which shares dimension of n1 array.
This causes bugs if shape of n1 is changed (n didn't used
to have it's own dimensions array (Travis Oliphant)
[ #514588 ] MLab.cov(x,x) != MLab.cov(x) (Travis Oliphant)
[ #518702 ] segfault when invalid typecode for asarray (Travis Oliphant)
[ #497530 ] MA __getitem__ prevents 0 len arrays (Reggie Duggard)
[ #508363 ] outerproduct of noncontiguous arrays (Martin Wiechert)
[ #513010 ] memory leak in comparisons (Byran Nollett)
[ #512223 ] Character typecode not defined (Jochen Kupper)
[ #500784 ] MLab.py diff error (anonymous, fixed by Dubois)
[ #503741 ] accuracy of MLab.std(x) (Katsunori Waragai)
[ #507568 ] overlapping copy a[2:5] = a[3:6]
Change uses of memcpy to memmove which allows overlaps.
[ numpy-Patches-499722 ] size of buffer created from array is bad (Michel Sanner).
[ #502186 ] a BUG in RandomArray.normal (introduced by last bug fix in 20.3)
(Katsunori Waragai).
Fixed errors for Mac (Jack Jensen).
Make rpm's properly, better Windows installers. (Gerard Vermeulen)
Added files setup.cfg; setup calculates rpm_install.sh to use current Python.
New setup.py, eliminate setup_all.py. Use os.path.join everywhere. Revision
in b6 added file README.RPM, further improvements.
Implement true division operations for Python 2.2. (Bruce Sherwood)
Note: true division of all integer types results in an array of floats,
not doubles. This decision is arbitrary and there are arguments either way,
so users of this new feature should be aware that the decision may
change in the future.
New functions in Numeric; they work on any sequence a that can be converted to a
Numeric array. Similar change to average in MA. (Dubois)
def rank (a):
"Get the rank of a (the number of dimensions, not a matrix rank)"
def shape (a):
"Get the shape of a"
def size (a, axis=None):
"Get the number of elements in a, or along a certain axis."
def average (a, axis=0, weights=None, returned = 0):
Computes average along indicated axis.
extension Makefile fragments, because they really don't have anything to
do with the buildlink[12] frameworks. Change all the Makefiles that use
application.buildlink.mk and extension.buildlink.mk to use application.mk
and extension.mk instead.
changes:
Please note that the __future__ options wrt integer division in Python 2.2
are NOT available in Numeric at this time.
Incompatible change to functions sum and product in MA.
See Packages/MA/changes.txt.
Fixed memory leak in divmod [#470058] thanks Reggie Dugard.
Added argmax, argmin for byte, unsigned byte [#474241]
Fixed bug in RandomArray.normal for default shape. [#482046]
To fix bug and correctly accept keyword args, changed fromstring interface
to: fromstring(string, typecode="l", count=-1)
Applied patch #[ #468068 ] Speedups for small matrices by Gary Bishop.
Removed newlines in comment in multiarray.
Fixed uninitalized variable in asinh on Windows.
Optimization: Moved array_range to C (T. Oliphant)
Add coding to setup.py for the BeOs5. (patch #466187, not applied as given)
Removed a couple of warning errors in the sea of same produced by gcc's
warnall.
Fixed bug in arrayfns.histogram (bug #462813)
Optional Package Properties 2.2
Allow external handlers in Properties. No check is made any more that
the handler is an unbound method of the class. Must have the correct
signature, however.
USE_PYTHON (as a testcase, more or less)
-update to 20.2.1, Changes:
-bugfixes
-Lapack update
-Implemented equality and inequality testing for arrays of characters,
complex numbers, and objects (T. Oliphant)
-In RandomArray.py, improved implementation of internal routine
_build_random_array
-Removed tabs from MLab.py and RandomArray.py
-Improved test in RandomArray
Changes:
Version 20.1
MA and kinds rebased on new package Properties (which grew out of the
old activeattr.py file previously in MA). Masked arrays can now be
pickled.
Properties provides a easy-to-use method to have a name act
as if it is a attribute of the class but be able to control reading,
writing, and deleting of that attribute via methods of the class.
Applied patch that fixes errors when Python is pymalloc-enabled (dmcooke).
Applied patch to add new support in LinearAlgebra for symmetrical
eigenvalue problems. (Allesandro Mirone)
Applied patch to fix comparisons to None in MLab.py (jbmoody).
Found and fixed another one in RandomArray.py.
Applied suggested fix by Mark Hadfield to let setup_all.py work on
systems where Python is installed in a directory path that contains
a space.
Version 20.0
Redo setup.py so that binary windows installers for Numeric, FFT, MA,
etc. can be made automatically. Packages LALITE and RANLIB merged back
to top level. Adjustment for BLAS in setup.py.
Documentation of Numeric module made more compatible with pydoc.
argmin/argmax/argsort/sort errors with axis specs fixed (bug #233805)
-- also made them capable of handling args that can be converted to
arrays by adding an array(a, copy=0) at the start.
Fixes sum, product, cumsum, cumproduct, alltrue, sometrue to deal with
zero shape and to take arguments that can be converted to arrays.
MA: See changes.txt file in MA for bug fixes and improvements.
New option for average to return sum of weights.
Fix bug in putmask so that it handles targets of type object.
Because of reference counting issues this is done in Python, not C,
and would not be more efficient than doing your own loop, but we
include it for completeness.
In Packages add draft implementation for PEP 0242, Numerical Kinds.
Add PyArray_CopyArray to the API (Thanks to Dave Grote).
Add defines for cygwin.
In arrayobject.h, add static declaration to importing API pointer.
May solve OS X problems.
Fix bug in FFT packages, added new test. (Thanks to Warren Focke)
Added __deepcopy__ method equal to __copy__ method. Throws an exception
if the target is an array of type 'O'. But this at least allows non-object
type arrays to be copy.deepcopied. If someone has time they can do this case.
For a changelog, I didn't find more than:
Numeric 17.3.0 is intended to be the last release before adding
capabilities supported by Python 2.1. This is a routine catch-up to CVS
release.
The announcement:
Release 17.2.0 is available in source form. It contains the functions put and
putmask, and a performance enhancement. The previous release of this
performance enhancement did not compile on certain platforms; this should
be fixed now. Also included is a substantial update to the masked array
package, MA.
- New, optional Makefile variable HOMEPAGE, specifies a URL for
the home page of the software if it has one.
- The value of HOMEPAGE is used to add a link from the
README.html files.
- pkglint updated to know about it. The "correct" location for
HOMEPAGE in the Makefile is after MAINTAINER, in that same
section.