Milestone 1.2.0

Completed 17 months ago (09/25/08 18:45:07)

100%

Closed tickets:
69
Active tickets:
0
/ Total tickets:
69
Other

40 / 40

numpy.core

12 / 12

numpy.distutils

2 / 2

numpy.f2py

1 / 1

numpy.lib

6 / 6

numpy.ma

6 / 6

numpy.testing

2 / 2

This minor release comes almost four months after the 1.1.0 release. The major features of this release are a new testing framework and huge amount of documentation work. It also includes a some minor API breakage scheduled in the 1.1 release.

Please note that NumPy 1.2.0 requires Python 2.4 or greater.

Major documentation improvements

This summer saw the first NumPy Documentation Marathon, during which many thousands of lines of documentation were written. In addition, a web framework was developed which allows the community to contribute docstrings in a wiki-like fashion, without needing access to the source repository. The new reference guide, which is based on these contributions, was built using the popular Sphinx tool. While the documentation coverage is now better than ever, there is still a lot of work to be done, and we encourage interested parties to register and contribute further.

New testing framework

The NumPy test framework now relies on the nose testing framework version 0.10 or later. Much of the work on the testing framework was carried out as part of a Google Summer of Code project.

Buffered iterator

Roberto de Almeida's buffered iterator has been added as "numpy.lib.Arrayterator". The buffered iterator reads large arrays in small blocks, allowing operations over very large data-sets while maintaining a small memory footprint. Any object that supports multidimensional slices can be used, including variables from NetCDF, pynetcdf and ndarrays.

Median

This release is the second step in adding 'axis' support for numpy.median(); the first step was included in the 1.1 release. This is not just useful on its own, but it is also makes median() consistent with mean(), min(), max(), var(), std(), sum(), prod(), etc.

The new call signature is:

def median(a, axis=None, out=None, overwrite_input=False)

This returns the median of the array elements taken over a flattened version of the array by default, otherwise over the specified axis.

Histogram

The semantics of histogram has been modified to fix long-standing issues with outliers handling. The main changes concern

  1. the definition of the bin edges, now including the rightmost edge, and
  2. the handling of upper outliers, now ignored rather than tallied in the rightmost bin.

The previous behavior is still accessible using new=False, but is scheduled to be deprecated in the next release (1.3).

Random number generator improvements

Several improvements and bug-fixes to random number generator distributions. The negative binomial generator now accepts floating point arguments. The Zipf generator now handles an integer wraparound problem. Fixed a scaling factor for the F distribution. The logarithmic series now rejects out of bounds results due to integer conversions.

Set operations

unique1d will now return reverse indices, i.e., the indices required to build the input array from the output set.

Optimizations

Numpy import times have been heavily optimized, and should now be at least twice faster on most platforms.

Bug-fixes

#117
bdist_rpm and config_fc don't work together
#164
Patch to build numpy-0.9.8 on Windows X64 (AMD64) with MSVS2005
#195
Non-critical Valgrind issues
#228
Backward compatibility plan
#390
repr() on recarray failure
#392
histogram reverse indicies
#539
config parameters are not passed on to build
#576
numpy installation doesn't detect gfortran or g95
#605
Incorrect behaviour of numpy.histogram
#666
Sort memcpy reminder
#698
segfault float96 + None
#701
The returned keyword in average looks useless.
#707
numpy.array failes if the input is a list of matrixes
#730
long doubles display differently than the other float types
#750
Swig interface - Bug in FORTRAN-ordering support
#771
Valgrind warning when running test for ticket #658
#785
Error in linalg.norm()
#795
How to document classes, methods, attributes?
#796
Fake ticket to test Trac's ability to send notification emails
#798
`piecewise` exposes raw memory
#801
load_library cannot load libraries with extensions in the name:
#805
PyArray_FromDims should use intp instead of int type for the dims on 64-bit machines
#806
Conversion of masked arrays from one dtype to another fails because of fill_value
#807
massked_array_value /= scalar_value -> mask and data must be same size
#810
Verbose argument not effective for ndarrays in assert_equal
#812
numpy.sum, numpy.std, numpy.var fail on masked arrays
#813
_zerofill has a path with no return value
#814
self test failuers on Sun Solaris 10 System, version 1.2.0.dev5255
#815
self test failuers on RHE 4/32-bit, version 1.2.0.dev5255
#816
Constructing numpy.object_ causes a crash
#818
floats cast to integer overwrites two entries in a numpy integer matrix
#820
numpy.ma.array ignores mask when asembling masked array inputs
#822
Segfault deallocating long chains of views
#825
SIGBUS in UNICODE_getatter on Sparc Linux
#828
npy file format test failures on open solaris (x86, 32 bits)
#829
SEGFAULT when attempting to use arrays as indices into multi-dimensional arrays
#831
numpy.float64*poly1d = array
#832
numpy.ndarray relational operators do not (seem to) respect array priority
#833
No array function equivalent to matrix ** [PATCH]
#834
numpy.sort sometimes doesn't handle strings right
#835
bus error from numpy self tests on Solaris
#837
Infinite loop in fromfile & fromstring
#838
Improving numpy import time
#839
DataSource tests require network access
#843
Reference count error in PyArray_CanCoerceScalar
#845
deepcopy not identical to source
#846
Topical documentation as `numpy.doc`
#847
Warnings on printing pointers during compilation
#848
Another ref count leak using PyArray_DescrFromType
#849
Possible reference to deallocated object
#850
Memory leak in `_strings_richcompare`
#854
Non-standard branch cuts
#863
Regression in #658 ? (valgrind warning)
#865
Recent C99 changes (complex functions) break tests on windows
#869
defer 'import tempfile'
#874
quicker 'import numpy' time
#877
Segfault when using recarray 'O' entries
#878
np.fix does not work properly for negative integers
#881
Segmentation fault with numpy.object0
#882
Segmentation fault in array.choose with empty list as argument
#888
Incorrect value returned by numpy.array.max
#889
Incorrect value returned by numpy.array.max
#893
Numpy incompatible with python -OO
#895
Import error for matplotlib
#899
NumPy test suite fails to run with Python 2.6b3 and nose 0.10.3
#900
Compiler warnings
#903
Compilation fails on Cygwin
#905
numpy.loadtxt usecols argument no longer accepts numpy arrays
#906
Deepcopy does not copy _mask attribute of a masked array object

Note: See TracRoadmap for help on using the roadmap.