Release notes#
- 1.25.0- Deprecations
- Expired deprecations
- Compatibility notes- np.padwith- mode=wrappads with strict multiples of original data
- Cython long_tandulong_tremoved
- Changed error message and type for bad axesargument toufunc
- Array-likes that define __array_ufunc__can now override ufuncs if used aswhere
- Compiling against the NumPy C API is now backwards compatible by default
 
- New Features- np.einsumnow accepts arrays with- objectdtype
- Add support for inplace matrix multiplication
- Added NPY_ENABLE_CPU_FEATURESenvironment variable
- NumPy now has an np.exceptionsnamespace
- np.linalgfunctions return NamedTuples
- String functions in np.charare compatible with NEP 42 custom dtypes
- String dtype instances can be created from the string abstract dtype classes
- Fujitsu C/C++ compiler is now supported
- SSL2 is now supported
 
- Improvements- NDArrayOperatorsMixinspecifies that it has no- __slots__
- Fix power of complex zero
- New DTypePromotionError
- np.show_config uses information from Meson
- Fix np.ma.diffnot preserving the mask when called with arguments prepend/append.
- Corrected error handling for NumPy C-API in Cython
- Ability to directly spawn random number generators
- numpy.logspacenow supports a non-scalar- baseargument
- np.ma.dot()now supports for non-2d arrays
- Explicitly show keys of .npz file in repr
- NumPy now exposes DType classes in np.dtypes
- Drop dtype metadata before saving in .npy or .npz files
- numpy.lib.recfunctions.structured_to_unstructuredreturns views in more cases
- Signed and unsigned integers always compare correctly
 
- Performance improvements and changes
- Changes
 
- 1.24.3
- 1.24.2
- 1.24.1
- 1.24.0- Deprecations
- Expired deprecations
- Compatibility notes
- New Features- New attribute symboladded to polynomial classes
- F2PY support for Fortran characterstrings
- New function np.show_runtime
- strictoption for- testing.assert_array_equal
- New parameter equal_nanadded tonp.unique
- castingand- dtypekeyword arguments for- numpy.stack
- castingand- dtypekeyword arguments for- numpy.vstack
- castingand- dtypekeyword arguments for- numpy.hstack
- The bit generator underlying the singleton RandomState can be changed
- np.voidnow has a- dtypeargument
 
- New attribute 
- Improvements
- Performance improvements and changes
- Changes
 
- 1.23.5
- 1.23.4
- 1.23.3
- 1.23.2
- 1.23.1
- 1.23.0- New functions
- Deprecations
- Expired deprecations
- New Features- crackfortran has support for operator and assignment overloading
- f2py supports reading access type attributes from derived type statements
- New parameter ndminadded togenfromtxt
- np.loadtxtnow supports quote character and single converter function
- Changing to dtype of a different size now requires contiguity of only the last axis
- Deterministic output files for F2PY
- keepdimsparameter for- average
- New parameter equal_nanadded tonp.unique
 
- Compatibility notes
- Improvements
- Performance improvements and changes
 
- 1.22.4
- 1.22.3
- 1.22.2
- 1.22.1
- 1.22.0- Expired deprecations
- Deprecations
- Compatibility notes- Distutils forces strict floating point model on clang
- Removed floor division support for complex types
- numpy.vectorizefunctions now produce the same output class as the base function
- Python 3.7 is no longer supported
- str/repr of complex dtypes now include space after punctuation
- Corrected advanceinPCG64DSXMandPCG64
- Change in generation of random 32 bit floating point variates
 
- C API changes
- New Features- NEP 49 configurable allocators
- Implementation of the NEP 47 (adopting the array API standard)
- Generate C/C++ API reference documentation from comments blocks is now possible
- Assign the platform-specific c_intpprecision via a mypy plugin
- Add NEP 47-compatible dlpack support
- keepdimsoptional argument added to- numpy.argmin,- numpy.argmax
- bit_countto compute the number of 1-bits in an integer
- The ndimandaxisattributes have been added tonumpy.AxisError
- Preliminary support for windows/arm64target
- Added support for LoongArch
- A .clang-formatfile has been added
- is_integeris now available to- numpy.floatingand- numpy.integer
- Symbolic parser for Fortran dimension specifications
- ndarray,- dtypeand- numberare now runtime-subscriptable
 
- Improvements- ctypeslib.load_librarycan now take any path-like object
- Add smallest_normalandsmallest_subnormalattributes tofinfo
- numpy.linalg.qraccepts stacked matrices as inputs
- numpy.fromregexnow accepts- os.PathLikeimplementations
- Add new methods for quantileandpercentile
- Missing parameters have been added to the nan<x>functions
- Annotating the main Numpy namespace
- Vectorize umath module using AVX-512
- OpenBLAS v0.3.18
 
 
- 1.21.6
- 1.21.5
- 1.21.4
- 1.21.3
- 1.21.2
- 1.21.1
- 1.21.0- New functions
- Expired deprecations
- Deprecations
- Expired deprecations
- Compatibility notes- Error type changes in universal functions
- __array_ufunc__argument validation
- __array_ufunc__and additional positional arguments
- Validate input values in Generator.uniform
- /usr/includeremoved from default include paths
- Changes to comparisons with dtype=...
- Changes to dtypeandsignaturearguments in ufuncs
- Ufunc signature=...anddtype=generalization andcasting
- Distutils forces strict floating point model on clang
 
- C API changes
- New Features- Added a mypy plugin for handling platform-specific numpy.numberprecisions
- Let the mypy plugin manage extended-precision numpy.numbersubclasses
- New min_digitsargument for printing float values
- f2py now recognizes Fortran abstract interface blocks
- BLAS and LAPACK configuration via environment variables
- A runtime-subcriptable alias has been added for ndarray
 
- Added a mypy plugin for handling platform-specific 
- Improvements
- Performance improvements
- Changes
 
- 1.20.3
- 1.20.2
- 1.20.1
- 1.20.0- New functions
- Deprecations- Using the aliases of builtin types like np.intis deprecated
- Passing shape=Noneto functions with a non-optional shape argument is deprecated
- Indexing errors will be reported even when index result is empty
- Inexact matches for modeandsearchsideare deprecated
- Deprecation of numpy.dual
- outerand- ufunc.outerdeprecated for matrix
- Further Numeric Style types Deprecated
- The ndincrmethod ofndindexis deprecated
- ArrayLike objects which do not define __len__and__getitem__
 
- Using the aliases of builtin types like 
- Future Changes
- Expired deprecations
- Compatibility notes- isinstance(dtype, np.dtype)and not- type(dtype) is not np.dtype
- Same kind casting in concatenate with axis=None
- NumPy Scalars are cast when assigned to arrays
- Array coercion changes when Strings and other types are mixed
- Array coercion restructure
- Writing to the result of numpy.broadcast_arrayswill export readonly buffers
- Numeric-style type names have been removed from type dictionaries
- The operator.concatfunction now raises TypeError for array arguments
- nicknameattribute removed from ABCPolyBase
- float->timedeltaand- uint64->timedeltapromotion will raise a TypeError
- numpy.genfromtxtnow correctly unpacks structured arrays
- mgrid,- r_, etc. consistently return correct outputs for non-default precision input
- Boolean array indices with mismatching shapes now properly give IndexError
- Casting errors interrupt Iteration
- f2py generated code may return unicode instead of byte strings
- The first element of the __array_interface__["data"]tuple must be an integer
- poly1d respects the dtype of all-zero argument
- The numpy.i file for swig is Python 3 only.
- Void dtype discovery in np.array
 
- C API changes
- New Features- wherekeyword argument for- numpy.alland- numpy.anyfunctions
- wherekeyword argument for- numpyfunctions- mean,- std,- var
- norm=backward,- forwardkeyword options for- numpy.fftfunctions
- NumPy is now typed
- numpy.typingis accessible at runtime
- New __f2py_numpy_version__attribute for f2py generated modules.
- mypytests can be run via runtests.py
- Negation of user defined BLAS/LAPACK detection order
- Allow passing optimizations arguments to asv build
- The NVIDIA HPC SDK nvfortran compiler is now supported
- dtypeoption for- covand- corrcoef
 
- Improvements- Improved string representation for polynomials (__str__)
- Remove the Accelerate library as a candidate LAPACK library
- Object arrays containing multi-line objects have a more readable repr
- Concatenate supports providing an output dtype
- Thread safe f2py callback functions
- numpy.core.records.fromfilenow supports file-like objects
- RPATH support on AIX added to distutils
- Use f90 compiler specified by the command line args
- Add NumPy declarations for Cython 3.0 and later
- Make the window functions exactly symmetric
 
- Improved string representation for polynomials (
- Performance improvements and changes
- Changes
 
- 1.19.5
- 1.19.4
- 1.19.3
- 1.19.2
- 1.19.1
- 1.19.0- Highlights
- Expired deprecations
- Compatibility notes- Changed random variate stream from numpy.random.Generator.dirichlet
- Scalar promotion in PyArray_ConvertToCommonType
- Fasttake and fastputmask slots are deprecated and NULL’ed
- np.ediff1dcasting behaviour with- to_endand- to_begin
- Converting of empty array-like objects to NumPy arrays
- Removed multiarray.int_asbuffer
- numpy.distutils.compathas been removed
- issubdtypeno longer interprets- floatas- np.floating
- Change output of roundon scalars to be consistent with Python
- The numpy.ndarrayconstructor no longer interpretsstrides=()asstrides=None
- C-Level string to datetime casts changed
- SeedSequencewith small seeds no longer conflicts with spawning
 
- Changed random variate stream from 
- Deprecations- Deprecate automatic dtype=objectfor ragged input
- Passing shape=0to factory functions innumpy.recis deprecated
- Deprecation of probably unused C-API functions
- Converting certain types to dtypes is Deprecated
- Deprecation of roundfornp.complexfloatingscalars
- numpy.ndarray.tostring()is deprecated in favor of- tobytes()
 
- Deprecate automatic 
- C API changes
- New Features
- Improvements
- Improve detection of CPU features
- Changes
 
- 1.18.5
- 1.18.4
- 1.18.3
- 1.18.2
- 1.18.1
- 1.18.0- Highlights
- New functions
- Deprecations
- Expired deprecations
- Compatibility notes- numpy.lib.recfunctions.drop_fieldscan no longer return None
- numpy.argmin/argmax/min/maxreturns- NaTif it exists in array
- np.can_cast(np.uint64, np.timedelta64, casting='safe')is now- False
- Changed random variate stream from numpy.random.Generator.integers
- Add more ufunc loops for datetime64,timedelta64
- Moved modules in numpy.random
 
- C API changes
- New Features
- Improvements- Different C numeric types of the same size have unique names
- argwherenow produces a consistent result on 0d arrays
- Add axisargument forrandom.permutationandrandom.shuffle
- methodkeyword argument for- np.random.multivariate_normal
- Add complex number support for numpy.fromstring
- numpy.uniquehas consistent axes order when- axisis not None
- numpy.matmulwith boolean output now converts to boolean values
- numpy.random.randintproduced incorrect value when the range was- 2**32
- Add complex number support for numpy.fromfile
- std=c99added if compiler is named- gcc
 
- Changes- NaTnow sorts to the end of arrays
- Incorrect thresholdinnp.set_printoptionsraisesTypeErrororValueError
- Warn when saving a dtype with metadata
- numpy.distutilsappend behavior changed for LDFLAGS and similar
- Remove numpy.random.entropywithout a deprecation
- Add options to quiet build configuration and build with -Werror
 
 
- 1.17.5
- 1.17.4
- 1.17.3
- 1.17.2
- 1.17.1
- 1.17.0- Highlights
- New functions
- Deprecations
- Future Changes
- Compatibility notes- float16subnormal rounding
- Signed zero when using divmod
- MaskedArray.masknow returns a view of the mask, not the mask itself
- Do not lookup __buffer__attribute innumpy.frombuffer
- outis buffered for memory overlaps in- take,- choose,- put
- Unpickling while loading requires explicit opt-in
- Potential changes to the random stream in old random module
- i0now always returns a result with the same shape as the input
- can_castno longer assumes all unsafe casting is allowed
- ndarray.flags.writeablecan be switched to true slightly more often
 
- C API changes
- New Features- New extensible numpy.randommodule with selectable random number generators
- libFLAME
- User-defined BLAS detection order
- User-defined LAPACK detection order
- ufunc.reduceand related functions now accept a- wheremask
- Timsort and radix sort have replaced mergesort for stable sorting
- packbitsand- unpackbitsaccept an- orderkeyword
- unpackbitsnow accepts a- countparameter
- linalg.svdand- linalg.pinvcan be faster on hermitian inputs
- divmod operation is now supported for two timedelta64operands
- fromfilenow takes an- offsetargument
- New mode “empty” for pad
- empty_likeand related functions now accept a- shapeargument
- Floating point scalars implement as_integer_ratioto match the builtin float
- Structured dtypeobjects can be indexed with multiple fields names
- .npyfiles support unicode field names
 
- New extensible 
- Improvements- Array comparison assertions include maximum differences
- Replacement of the fftpack based fftmodule by the pocketfft library
- Further improvements to ctypessupport innumpy.ctypeslib
- numpy.errstateis now also a function decorator
- numpy.expand- numpy.logspeed up for float32 implementation
- Improve performance of numpy.pad
- numpy.interphandles infinities more robustly
- Pathlib support for fromfile, tofile andndarray.dump
- Specialized isnan,isinf, andisfiniteufuncs for bool and int types
- isfinitesupports- datetime64and- timedelta64types
- New keywords added to nan_to_num
- MemoryErrors caused by allocated overly large arrays are more descriptive
- floor,- ceil, and- truncnow respect builtin magic methods
- quantilenow works on fraction.Fraction and- decimal.Decimalobjects
- Support of object arrays in matmul
 
- Changes- medianand- percentilefamily of functions no longer warn about- nan
- timedelta64 % 0behavior adjusted to return- NaT
- NumPy functions now always support overrides with __array_function__
- lib.recfunctions.structured_to_unstructureddoes not squeeze single-field views
- clipnow uses a ufunc under the hood
- __array_interface__offset now works as documented
- Pickle protocol in savezset to 3 forforce zip64flag
- Structured arrays indexed with non-existent fields raise KeyErrornotValueError
 
 
- 1.16.6
- 1.16.5
- 1.16.4
- 1.16.3
- 1.16.2
- 1.16.1
- 1.16.0- Highlights
- New functions
- New deprecations
- Expired deprecations
- Future changes
- Compatibility notes
- C API changes
- New Features
- Improvements- no-copy pickling of numpy arrays
- build shell independence
- np.polynomial.Polynomial classes render in LaTeX in Jupyter notebooks
- randintand- choicenow work on empty distributions
- linalg.lstsq,- linalg.qr, and- linalg.svdnow work with empty arrays
- Chain exceptions to give better error messages for invalid PEP3118 format strings
- Einsum optimization path updates and efficiency improvements
- numpy.angleand- numpy.expand_dimsnow work on- ndarraysubclasses
- NPY_NO_DEPRECATED_APIcompiler warning suppression
- np.diffAdded kwargs prepend and append
- ARM support updated
- Appending to build flags
- Generalized ufunc signatures now allow fixed-size dimensions
- Generalized ufunc signatures now allow flexible dimensions
- np.clipand the- clipmethod check for memory overlap
- New value unscaledfor optioncovinnp.polyfit
- Detailed docstrings for scalar numeric types
- __module__attribute now points to public modules
- Large allocations marked as suitable for transparent hugepages
- Alpine Linux (and other musl c library distros) support
- Speedup np.blockfor large arrays
- Speedup np.takefor read-only arrays
- Support path-like objects for more functions
- Better behaviour of ufunc identities during reductions
- Improved conversion from ctypes objects
- A new ndpointer.contentsmember
- matmulis now a- ufunc
- Start and stop arrays for linspace,logspaceandgeomspace
- CI extended with additional services
 
- Changes- Comparison ufuncs will now error rather than return NotImplemented
- Positive will now raise a deprecation warning for non-numerical arrays
- NDArrayOperatorsMixinnow implements matrix multiplication
- The scaling of the covariance matrix in np.polyfitis different
- maximumand- minimumno longer emit warnings
- Umath and multiarray c-extension modules merged into a single module
- getfieldvalidity checks extended
- NumPy functions now support overrides with __array_function__
- Arrays based off readonly buffers cannot be set writeable
 
 
- 1.15.4
- 1.15.3
- 1.15.2
- 1.15.1
- 1.15.0- Highlights
- New functions
- Deprecations
- Future Changes
- Compatibility notes- Compiled testing modules renamed and made private
- The NpzFilereturned bynp.savezis now acollections.abc.Mapping
- Under certain conditions, nditermust be used in a context manager
- Numpy has switched to using pytest instead of nose for testing
- Numpy no longer monkey-patches ctypeswith__array_interface__
- np.ma.notmasked_contiguousand- np.ma.flatnotmasked_contiguousalways return lists
- np.squeezerestores old behavior of objects that cannot handle an- axisargument
- unstructured void array’s .itemmethod now returns a bytes object
- copy.copyand- copy.deepcopyno longer turn- maskedinto an array
- Multifield Indexing of Structured Arrays will still return a copy
 
- C API changes
- New Features
- Improvements- np.einsumupdates
- np.ufunc.reduceand related functions now accept an initial value
- np.flipcan operate over multiple axes
- histogramand- histogramddfunctions have moved to- np.lib.histograms
- histogramwill accept NaN values when explicit bins are given
- histogramworks on datetime types, when explicit bin edges are given
- histogram“auto” estimator handles limited variance better
- The edges returned by histogram` and histogramddnow match the data float type
- histogramddallows explicit ranges to be given in a subset of axes
- The normed arguments of histogramddandhistogram2dhave been renamed
- np.r_works with 0d arrays, and- np.ma.mr_works with- np.ma.masked
- np.ptpaccepts a- keepdimsargument, and extended axis tuples
- MaskedArray.astypenow is identical to- ndarray.astype
- Enable AVX2/AVX512 at compile time
- nan_to_numalways returns scalars when receiving scalar or 0d inputs
- np.flatnonzeroworks on numpy-convertible types
- np.interpreturns numpy scalars rather than builtin scalars
- Allow dtype field names to be unicode in Python 2
- Comparison ufuncs accept dtype=object, overriding the defaultbool
- sortfunctions accept- kind='stable'
- Do not make temporary copies for in-place accumulation
- linalg.matrix_powercan now handle stacks of matrices
- Increased performance in random.permutationfor multidimensional arrays
- Generalized ufuncs now accept axes,axisandkeepdimsarguments
- float128 values now print correctly on ppc systems
- New np.take_along_axisandnp.put_along_axisfunctions
 
 
- 1.14.6
- 1.14.5
- 1.14.4
- 1.14.3
- 1.14.2
- 1.14.1
- 1.14.0- Highlights
- New functions
- Deprecations
- Future Changes
- Compatibility notes- The mask of a masked array view is also a view rather than a copy
- np.ma.maskedis no longer writeable
- np.mafunctions producing- fill_values have changed
- a.flat.__array__()returns non-writeable arrays when- ais non-contiguous
- np.tensordotnow returns zero array when contracting over 0-length dimension
- numpy.testingreorganized
- np.asfarrayno longer accepts non-dtypes through the- dtypeargument
- 1D np.linalg.normpreserves float input types, even for arbitrary orders
- count_nonzero(arr, axis=())now counts over no axes, not all axes
- __init__.pyfiles added to test directories
- .astype(bool)on unstructured void arrays now calls- boolon each element
- MaskedArray.squeezenever returns- np.ma.masked
- Renamed first parameter of can_castfromfromtofrom_
- isnatraises- TypeErrorwhen passed wrong type
- dtype.__getitem__raises- TypeErrorwhen passed wrong type
- User-defined types now need to implement __str__and__repr__
- Many changes to array printing, disableable with the new “legacy” printing mode
 
- C API changes
- New Features- Encoding argument for text IO functions
- External noseplugins are usable bynumpy.testing.Tester
- parametrizedecorator added to- numpy.testing
- chebinterpolatefunction added to- numpy.polynomial.chebyshev
- Support for reading lzma compressed text files in Python 3
- signoption added to- np.setprintoptionsand- np.array2string
- hermitianoption added to``np.linalg.matrix_rank``
- thresholdand- edgeitemsoptions added to- np.array2string
- concatenateand- stackgained an- outargument
- Support for PGI flang compiler on Windows
 
- Improvements- Numerator degrees of freedom in random.noncentral_fneed only be positive.
- The GIL is released for all np.einsumvariations
- The np.einsum function will use BLAS when possible and optimize by default
- f2pynow handles arrays of dimension 0
- numpy.distutilssupports using MSVC and mingw64-gfortran together
- np.linalg.pinvnow works on stacked matrices
- numpy.savealigns data to 64 bytes instead of 16
- NPZ files now can be written without using temporary files
- Better support for empty structured and string types
- Support for decimal.Decimalinnp.lib.financial
- Float printing now uses “dragon4” algorithm for shortest decimal representation
- voiddatatype elements are now printed in hex notation
- printing style for voiddatatypes is now independently customizable
- Reduced memory usage of np.loadtxt
 
- Numerator degrees of freedom in 
- Changes- Multiple-field indexing/assignment of structured arrays
- Integer and Void scalars are now unaffected by np.set_string_function
- 0d array printing changed, stylearg of array2string deprecated
- Seeding RandomStateusing an array requires a 1-d array
- MaskedArrayobjects show a more useful- repr
- The reprofnp.polynomialclasses is more explicit
 
 
- 1.13.3
- 1.13.2
- 1.13.1
- 1.13.0- Highlights
- New functions
- Deprecations
- Future Changes
- Build System Changes
- Compatibility notes
- C API changes
- New Features- __array_ufunc__added
- New positiveufunc
- New divmodufunc
- np.isnatufunc tests for NaT special datetime and timedelta values
- np.heavisideufunc computes the Heaviside function
- np.blockfunction for creating blocked arrays
- isinfunction, improving on- in1d
- Temporary elision
- axesargument for- unique
- np.gradientnow supports unevenly spaced data
- Support for returning arrays of arbitrary dimensions in apply_along_axis
- .ndimproperty added to- dtypeto complement- .shape
- Support for tracemalloc in Python 3.6
- NumPy may be built with relaxed stride checking debugging
 
- Improvements- Ufunc behavior for overlapping inputs
- Partial support for 64-bit f2py extensions with MinGW
- Performance improvements for packbitsandunpackbits
- Fix for PPC long double floating point information
- Better default repr for ndarraysubclasses
- More reliable comparisons of masked arrays
- np.matrix with booleans elements can now be created using the string syntax
- More linalgoperations now accept empty vectors and matrices
- Bundled version of LAPACK is now 3.2.2
- reduceof- np.hypot.reduceand- np.logical_xorallowed in more cases
- Better reprof object arrays
 
- Changes- argsorton masked arrays takes the same default arguments as- sort
- averagenow preserves subclasses
- array == Noneand- array != Nonedo element-wise comparison
- np.equal, np.not_equalfor object arrays ignores object identity
- Boolean indexing changes
- np.random.multivariate_normalbehavior with bad covariance matrix
- assert_array_lesscompares- np.infand- -np.infnow
- assert_array_and masked arrays- assert_equalhide less warnings
- offsetattribute value in- memmapobjects
- np.realand- np.imagreturn scalars for scalar inputs
- The polynomial convenience classes cannot be passed to ufuncs
- Output arguments to ufuncs can be tuples also for ufunc methods
 
 
- 1.12.1
- 1.12.0- Highlights
- Dropped Support
- Added Support
- Build System Changes
- Deprecations
- Future Changes
- Compatibility notes- DeprecationWarning to error
- FutureWarning to changed behavior
- powerand- **raise errors for integer to negative integer powers
- Relaxed stride checking is the default
- The np.percentile‘midpoint’ interpolation method fixed for exact indices
- keepdimskwarg is passed through to user-class methods
- bitwise_andidentity changed
- ma.median warns and returns nan when unmasked invalid values are encountered
- Greater consistency in assert_almost_equal
- NoseTesterbehaviour of warnings during testing
- assert_warnsand- deprecateddecorator more specific
- C API
 
- New Features- Writeable keyword argument for as_strided
- axeskeyword argument for- rot90
- Generalized flip
- BLIS support in numpy.distutils
- Hook in numpy/__init__.pyto run distribution-specific checks
- New nanfunctions nancumsumandnancumprodadded
- np.interpcan now interpolate complex values
- New polynomial evaluation function polyvalfromrootsadded
- New array creation function geomspaceadded
- New context manager for testing warnings
- New masked array functions ma.convolveandma.correlateadded
- New float_powerufunc
- np.loadtxtnow supports a single integer as- usecolargument
- Improved automated bin estimators for histogram
- np.rollcan now roll multiple axes at the same time
- The __complex__method has been implemented for the ndarrays
- pathlib.Pathobjects now supported
- New bitsattribute fornp.finfo
- New signatureargument tonp.vectorize
- Emit py3kwarnings for division of integer arrays
- numpy.sctypes now includes bytes on Python3 too
 
- Writeable keyword argument for 
- Improvements- bitwise_andidentity changed
- Generalized Ufuncs will now unlock the GIL
- Caches in np.fft are now bounded in total size and item count
- Improved handling of zero-width string/unicode dtypes
- Integer ufuncs vectorized with AVX2
- Order of operations optimization in np.einsum
- quicksort has been changed to an introsort
- ediff1dimproved performance and subclass handling
- Improved precision of ndarray.meanfor float16 arrays
 
- Changes
 
- 1.11.3
- 1.11.2
- 1.11.1
- 1.11.0- Highlights
- Build System Changes
- Future Changes
- Compatibility notes
- New Features
- Improvements- np.gradientnow supports an- axisargument
- np.lexsortnow supports arrays with object data-type
- np.ma.core.MaskedArraynow supports an- orderargument
- Memory and speed improvements for masked arrays
- ndarray.tofilenow uses fallocate on linux
- Optimizations for operations of the form A.T @ AandA @ A.T
- np.testing.assert_warnscan now be used as a context manager
- Speed improvement for np.random.shuffle
 
- Changes
- Deprecations
- FutureWarnings
 
- 1.10.4
- 1.10.3
- 1.10.2
- 1.10.1
- 1.10.0- Highlights
- Dropped Support
- Future Changes
- Compatibility notes- Default casting rule change
- numpy version string
- relaxed stride checking
- Concatenation of 1d arrays along any but axis=0raisesIndexError
- np.ravel, np.diagonal and np.diag now preserve subtypes
- rollaxis and swapaxes always return a view
- nonzero now returns base ndarrays
- C API
- recarray field return types
- recarray views
- ‘out’ keyword argument of ufuncs now accepts tuples of arrays
- byte-array indices now raises an IndexError
- Masked arrays containing objects with arrays
- Median warns and returns nan when invalid values are encountered
- Functions available from numpy.ma.testutils have changed
 
- New Features- Reading extra flags from site.cfg
- np.cbrt to compute cube root for real floats
- numpy.distutils now allows parallel compilation
- genfromtxt has a new max_rowsargument
- New function np.broadcast_to for invoking array broadcasting
- New context manager clear_and_catch_warnings for testing warnings
- cov has new fweightsandaweightsarguments
- Support for the ‘@’ operator in Python 3.5+
- New argument normto fft functions
 
- Improvements- np.digitize using binary search
- np.poly now casts integer inputs to float
- np.interp can now be used with periodic functions
- np.pad supports more input types for pad_widthandconstant_values
- np.argmax and np.argmin now support an outargument
- More system C99 complex functions detected and used
- np.loadtxt support for the strings produced by the float.hexmethod
- np.isclose properly handles minimal values of integer dtypes
- np.allclose uses np.isclose internally.
- np.genfromtxt now handles large integers correctly
- np.load, np.save have pickle backward compatibility flags
- MaskedArray support for more complicated base classes
 
- Changes
- Deprecations
 
- 1.9.2
- 1.9.1
- 1.9.0- Highlights
- Dropped Support
- Future Changes
- Compatibility notes- The diagonal and diag functions return readonly views.
- Special scalar float values don’t cause upcast to double anymore
- Percentile output changes
- ndarray.tofile exception type
- Invalid fill value exceptions
- Polynomial Classes no longer derived from PolyBase
- Using numpy.random.binomial may change the RNG state vs. numpy < 1.9
- Random seed enforced to be a 32 bit unsigned integer
- Argmin and argmax out argument
- Einsum
- Indexing
- Non-integer reduction axis indexes are deprecated
- promote_typesand string dtype
- can_castand string dtype
- astype and string dtype
- npyio.recfromcsv keyword arguments change
- The doc/swigdirectory moved
- The npy_3kcompat.hheader changed
- Negative indices in C-Api sq_itemandsq_ass_itemsequence methods
- NDIter
- zeros_likefor string dtypes now returns empty strings
 
- New Features- Percentile supports more interpolation options
- Generalized axis support for median and percentile
- Dtype parameter added to np.linspaceandnp.logspace
- More general np.triuandnp.trilbroadcasting
- tobytesalias for- tostringmethod
- Build system
- Compatibility to python numbersmodule
- increasingparameter added to- np.vander
- unique_countsparameter added to- np.unique
- Support for median and percentile in nanfunctions
- NumpyVersion class added
- Allow saving arrays with large number of named columns
- Full broadcasting support for np.cross
 
- Improvements- Better numerical stability for sum in some cases
- Percentile implemented in terms of np.partition
- Performance improvement for np.array
- Performance improvement for np.searchsorted
- Optional reduced verbosity for np.distutils
- Covariance check in np.random.multivariate_normal
- Polynomial Classes no longer template based
- More GIL releases
- MaskedArray support for more complicated base classes
- C-API
 
- Deprecations
 
- 1.8.2
- 1.8.1
- 1.8.0- Highlights
- Dropped Support
- Future Changes
- Compatibility notes
- New Features- Support for linear algebra on stacked arrays
- In place fancy indexing for ufuncs
- New functions partition and argpartition
- New functions nanmean, nanvar and nanstd
- New functions full and full_like
- IO compatibility with large files
- Building against OpenBLAS
- New constant
- New modes for qr
- New invert argument to in1d
- Advanced indexing using np.newaxis
- C-API
- runtests.py
 
- Improvements
- Changes
- Deprecations
- Authors
 
- 1.7.2
- 1.7.1
- 1.7.0- Highlights
- Compatibility notes
- New features- Reduction UFuncs Generalize axis= Parameter
- Reduction UFuncs New keepdims= Parameter
- Datetime support
- Custom formatter for printing arrays
- New function numpy.random.choice
- New function isclose
- Preliminary multi-dimensional support in the polynomial package
- Ability to pad rank-n arrays
- New argument to searchsorted
- Build system
- C API
 
- Changes
- Deprecations
 
- 1.6.2
- 1.6.1
- 1.6.0
- 1.5.0
- 1.4.0
- 1.3.0