summaryrefslogtreecommitdiff
path: root/doc/release
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #10308 from eric-wieser/mask-attr-is-viewMatti Picus2019-05-121-0/+10
|\ | | | | API: Make MaskedArray.mask return a view, rather than the underlying mask
| * API: Make MaskedArray.mask return a view, rather than the underlying maskEric Wieser2019-05-111-0/+10
| | | | | | | | | | | | | | | | This prevents consumers from reshaping the mask in place, which breaks things As a result, `x.mask is x.mask` returns `False`, but this was already true of `x.data is x.data`. May also be related to gh-10270
* | Merge pull request #12962 from mattip/unpackbitsCharles Harris2019-05-111-0/+5
|\ \ | | | | | | ENH: Add 'bitorder' keyword to packbits, unpackbits
| * | ENH: add 'order' keyword to packbits, unpackbitsmattip2019-05-111-0/+5
| |/
* | Merge pull request #12586 from hameerabbasi/radix-sortCharles Harris2019-05-111-0/+11
|\ \ | | | | | | ENH: Implement radix sort
| * | ENH: Radix sortHameer Abbasi2019-05-111-0/+11
| |/
* | BUG: Proect generators from log(0.0)Kevin Sheppard2019-04-291-0/+11
|/ | | | Ensure log(0.0) doesn't produce inf/nan values when generating random values
* Merge pull request #13306 from bmakos/Fix#13225Matti Picus2019-04-251-6/+12
|\ | | | | MAINT: better MemoryError message (#13225)
| * DOC: add release notemattip2019-04-251-6/+12
| |
* | Merge pull request #13390 from eric-wieser/quantile-fractionMatti Picus2019-04-251-0/+5
|\ \ | | | | | | ENH: Add support for Fraction to percentile and quantile
| * | ENH: Add support for Fraction to percentile and quantileEric Wieser2019-04-231-0/+5
| | | | | | | | | | | | With true division available, using `.0` to convert integers to floats offers no value, and harms compatibility with precise rational types.
* | | Merge pull request #13334 from eric-wieser/fix-1-field-unstructuredMatti Picus2019-04-251-0/+8
|\ \ \ | | | | | | | | BUG: Fix structured_to_unstructured on single-field types
| * | | DOC: Add 1.17 release noteEric Wieser2019-04-231-0/+8
| |/ /
* | | ENH: Add shape to *_like() array creation (#13046)Peter Andreas Entschev2019-04-251-0/+10
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ENH: Added shape argument to *_like() array creation functions * ENH: C backend adjustments for shape argument on *_like() * TST: Added test for shape argument in *_like() functions * ENH: Added PyArray_NewLikeArrayWithShape() This change maintains backwards compatibility, rather than passing new arguments to PyArray_NewLikeArray(). * BUG: Fix for PyArray_NewLikeArrayWithShape strides and ndim == 0 Arrays created with new shapes should not take into consideration the original array's stride, and ndim == 0 should not be a case to ignore a new shape, as the caller may request a 0d array. * REL: Updates for C-API, version 1.17.x * Add comments to cversions.txt (new PyArray_NewLikeArrayWithShape function) * Increment C_API_VERSION to 1.17 in setup_common.py * Revert "REL: Updates for C-API, version 1.17.x" This reverts commit 807f512ebeb7797ad374d845e41015948afcc708. * Revert exposing PyArray_NewLikeArrayWithShape on C-API * DOC: fix versionadded for *_like() shape argument * STY: add missing spaces in array initializers * ENH: empty_like raises ValueError This occurs when shape is defined and number of dimensions match but order is 'K'. * TST: test for exception of *_like() functions * DOC: release note for shape argument in *_like() functions * DOC: fix *_like() documentation on raises * BUG: *_like() raises for non-C/F-layout arrays * TST: change *_like() shapes to prevent NPY_RELAXED_STRIDE_DEBUG=1 failure * Move empty_like() exception to C implementation * Update *_like() ValueError documentation * Rearrange stride computation for *_like() if new shape and order='K' * Change handling of order= for *_like() - If order='K' try to keep, otherwise, order='C' is implied - Do not raise ValueError anymore * Fix *_like() tests
* | Merge pull request #13371 from eric-wieser/__floor__-and-__ceil__Charles Harris2019-04-221-0/+6
|\ \ | | | | | | BUG/ENH: Make floor, ceil, and trunc call the matching special methods
| * | BUG/ENH: Make floor, ceil, and trunc call the matching special methodsEric Wieser2019-04-191-0/+6
| |/ | | | | | | | | | | | | | | | | | | Previously `np.ceil` would call `o.ceil()` on each element of an object array. This is inconsistent with the builtin python way of handling this, calling `o.__ceil__()`. This changes these three functions to use the corresponding functions in the `math` module, which do the special method lookup. As a result, they now work on arrays of `Fraction` and `Decimal` objects.
* | MAINT, DOC: Post 1.16.3 release updates.Charles Harris2019-04-211-0/+46
| | | | | | | | | | | | - Add 1.16.3 release notes - Add 1.16.3 changelog - Update mailmap
* | DOC: adding release notes for 1.17.0Raghuveer Devulapalli2019-04-191-0/+6
| |
* | Merge pull request #10741 from eric-wieser/as_integer_ratioTyler Reddy2019-04-181-0/+6
|\ \ | | | | | | ENH: Implement `np.floating.as_integer_ratio`
| * | ENH: Implement `np.floating.as_integer_ratio`Eric Wieser2019-04-101-0/+6
| | | | | | | | | | | | This matches the builtin `float.as_integer_ratio` and (in recent python versions) `int.as_integer_ratio`.
* | | Merge pull request #13218 from debsankha/isfinite-datetimeCharles Harris2019-04-181-0/+5
|\ \ \ | |_|/ |/| | ENH: `isfinite` support for `datetime64` and `timedelta64`
| * | Merge branch 'master' into isfinite-datetimeMatti Picus2019-04-101-2/+9
| |\ \ | | |/
| * | DOC: added release note for `isfinite` support forDebsankha Manik2019-04-071-0/+4
| | | | | | | | | | | | `datetime64` and `timedelta64`
* | | BUG: load fails when using pickle without allow_pickle=TruePaul Ivanov2019-04-161-0/+5
| | | | | | | | | | | | | | | | | | a partial mitigation of #12759. see also https://nvd.nist.gov/vuln/detail/CVE-2019-6446
* | | DOC: Add as_ctypes_type to the documentationEric Wieser2019-04-152-4/+4
| |/ |/| | | | | | | | | | | | | This is mentioned in the release notes, so probably should be discoverable. Change those mentions to links. Fix the docstring to not cause sphinx to emit warnings.
* | fix (``code``s) sphinx parse warningkikocorreoso2019-04-031-1/+1
| |
* | Update release noteskikocorreoso2019-04-031-0/+6
|/ | | Update release notes to include "nan_to_num" information.
* Merge pull request #12988 from qwhelan/bool_ufuncEric Wieser2019-03-281-0/+6
|\ | | | | ENH: Create boolean and integer ufuncs for isnan, isinf, and isfinite.
| * ENH: Create boolean and integer ufuncs for isnan, isinf, and isfinite.Christopher Whelan2019-03-091-0/+6
| | | | | | | | | | | | | | | | Previously, boolean values would be routed through the half implementations of these functions, which added considerable overhead. Creating specialized ufuncs improves performance by ~250x Additionally, enable autovectorization of new isnan, isinf, and isfinite ufuncs.
* | MAINT: add overlap checks to choose, take, put, putmask (#13182)Allan Haldane2019-03-271-0/+5
| | | | | | Fixes #9293, #6272
* | MAINT: Rewrite numpy.pad without concatenate (gh-11358)Lars Grueter2019-03-251-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ENH: Add support for constant, edge, linear_ramp to new numpy.pad Passes unit tests: - TestConstant - TestEdge - TestZeroPadWidth - TestLegacyVectorFunction - TestNdarrayPadWidth - TestUnicodeInput - TestLinearRamp * MAINT: Simplify diff / change order of functions * MAINT: Revert to old handling of keyword-only arguments * ENH: Add support for stat modes * ENH: Add support for "reflect" mode * MAINT: Remove _slice_column * ENH: Add support for "symmetric" mode * MAINT: Simplify mode "linear_ramp" Creating the linear ramp as an array with 1-sized dimensions except for the one given by `axis` allows implicit broadcasting to the needed shape. This seems to be even a little bit faster that doing this by hand and allows the simplicifaction of the algorithm. Note: Profiling and optimization will be done again at a later stage. * MAINT: Reorder arguments of a sum and fix typo Addresses feedback raised in PR. * ENH: Add support for "wrap" mode This completes the first draft of the complete rewrite meaning all unit tests should pass from this commit onwards. * MAINT: Merge functions for "reflect" and "symmetric" mode The set functions were nearly the same, apart from some index offsets. Merging them reduces code duplication. * TST: Add regression test for gh-11216 The rewrite in past commits fixed this bug. * BUG: Fix edge case for _set_wrap_both when pad_amt contains 0. And include test to protect against regression. * MAINT: Simplify and optimize pad modes Major changes & goals: Don't deal with pad area in the front and back separately. This modularity isn't needed and makes handling of the right edge more awkward. All modes now deal with the left and right side at the same time. Move the creation of the linear ramps fully to its own function which behaves like a vectorized version of linspace. Separate calculation and application of the pad area where possible. This means that _get_edges can be reused for _get_linear_ramps. Combine _normalize_shape and _validate_lengths in a single function which should handles common cases faster. Add new mode "empty" which leaves the padded areas undefined. Add documentation where it was missing. * TST: Don't use np.empty in unit tests * MAINT: Reorder workflow in numpy.pad and deal with empty dimensions Only modes "constant" and "empty" can extend dimensions of size 0. Deal with this edge case gracefully for all other modes either fail or return empty array with padded non-zero dimensions. Handle default values closer to their actual usage. And validate keyword arguments that must be numbers. * MAINT: Add small tweaks to control flow and documentation * BUG: Ensure wrap mode works if right_pad is 0 * ENH: Use reduced region of interest for iterative padding When padding multiple dimensions iteratively corner values are unnecessarily overwritten multiple times. This function reduces the working area for the first dimensions so that corners are excluded. * MAINT: Restore original argument order in _slice_at_axis * MAINT: Keep original error message of broadcast_to * MAINT: Restore old behavior for non-number end_values. * BENCH: Make the pad benchmark pagefault in setup * ENH/TST: Preserve memory layout (order) of the input array and add appropriate unit test. * STY: Revert cosmetical changes to reduce diff * MAINT: Pin dtype to float64 for np.pad's benchmarks * MAINT: Remove redundant code path in _view_roi * MAINT/TST: Provide proper error message for unsupported modes and add appropriate unit test. * STY: Keep docstrings consistent and fix typo. * MAINT: Simplify logical workflow in pad * MAINT: Remove dtype argument from _linear_ramp The responsibility of rounding (but without type conversion) is not really need in _linear_ramp and only makes it a little bit harder to reason about. * DOC: Add version tag to new argument "empty" * MAINT: Default to C-order for padded arrays unless the input is F-contiguous. * MAINT: Name slice of original area consistently for all arguments describing the same thing. * STY: Reduce vertical space * MAINT: Remove shape argument from _slice_at_axis Simplifies calls to this function and the function itself. Using `(...,)` instead should keep this unambiguous. This change is not compatible with Python 2.7 which doesn't support this syntax outside sequence slicing. If that is wanted one could use `(Ellipsis,)` instead. * TST: Test if end_values of linear_ramp are exact which was not given in the old implementation `_arange_ndarray`. * DOC: Improve comments and wrap long line * MAINT: Refactor index_pair to width_pair Calling the right value an index is just plain wrong as it can't be used as such. * MAINT: Make _linear_ramp compatible with size=0 * MAINT: Don't rely on negative indices for slicing Calculating the proper positive index of the start of the right pad area makes it possible to omit the extra code paths for a width of 0. This should make the code easier to reason about. * MAINT: Skip calculation of right_stat if identical If the input area for both sides is the same we don't need to calculate it twice. * TST: Adapt tests from gh-12789 to rewrite of pad * TST: Add tests for mode "empty" * TST: Test dtype persistence for all modes * TST: Test exception for unsupported modes * TST: Test repeated wrapping for each side individually. Reaches some only partially covered if-statments in _set_wrap_both. * TST: Test padding of empty dimension with constant * TST: Test if end_values of linear_ramp are exact which was not given in the old implementation `_arange_ndarray`. (Was accidentally overwritten during the last merge). * TST: Test persistence of memory layout Adapted from an older commit 3ac4d2a1b9b258d65f8d2b5f8f25f88e3a0e8f58 which was accidentally overwritten during the last merge. * MAINT: Simplify branching in _set_reflect_both Reduce branching and try to make the calculation of the various indices easier to understand. * TST: Parametrize TestConditionalShortcuts class * TST: Test empty dimension padding for all modes * TST: Keep test parametrization ordered Keep parametrization ordered, otherwise pytest-xdist might believe that different tests were collected during parallelization causing test failures. * DOC: Describe performance improvement of np.pad as well as the new mode "empty" in release notes (see gh-11358). * DOC: Remove outdated / misleading notes These notes are badly worded or actually misleading. For a better explanation on how these functions work have a look at the context and comments just above the lines calling these functions.
* | DOC, BUILD: fail the devdoc build if there are warningsmattip2019-03-211-5/+5
| |
* | Merge branch 'master' into deprecate-float-orderEric Wieser2019-03-161-4/+17
|\ \
| * | DOC: Tidy 1.17.0 release note newlinesEric Wieser2019-03-141-6/+2
| | | | | | | | | | | | | | | | | | I've found that automatic merges seem to go better if there are no blank lines between headers and the content below them. This is consistent with the older release notes anyway
| * | DOC: add release notemattip2019-03-131-0/+7
| |/
| * Merge pull request #13036 from mattip/array-interface-offsetCharles Harris2019-03-041-1/+4
| |\ | | | | | | BUG: __array_interface__ offset was always ignored
| | * BUG: __array_interface__ offset was always ignoredmattip2019-02-251-1/+4
| | |
| * | Merge pull request #13049 from mattip/remove-buffer-checkCharles Harris2019-03-041-0/+7
| |\ \ | | | | | | | | MAINT: remove undocumented __buffer__ attribute lookup
| | * | MAINT: remove undocumented __buffer__ attribute lookupmattip2019-03-031-0/+7
| | | |
* | | | DEP: polynomial: Be stricter about integral argumentsEric Wieser2019-03-161-0/+9
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changes the behavior for: * The `deg` and `axis` arguments of `<type>der` * The `deg` and `axis` arguments of `<type>int` * The `deg` argument of `<type>gauss` * The `deg` argument of `<type>vander2d` * The `deg` argument of `<type>vander3d` The old behavior was: * Raise `ValueError` if the argument is a float, but not an integral one * Allow a float like `1.0` to mean `1`. This is inconsistent with most other integer-accepting APIs in numpy, which require these to be actual integers, and raise TypeError when they are not. The new behavior is: * Raise `TypeError` if the argument is a float, but not an integral one * Emit a `DeprecationWarning` if a float like `1.0` is passed, continuing to allow it its old meaning.
* | | DOC: reduce warnings when building, reword, tweak doc buildingmattip2019-02-281-2/+2
| | |
* | | DOC: Post NumPy 1.16.2 release update.Charles Harris2019-02-271-0/+70
|/ / | | | | | | | | | | | | - add 1.16.2-changelog.rst - add 1.16.2-notes.rst - update mailmap - update release.rst
* | Merge pull request #10855 from madphysicist/unpack-countSebastian Berg2019-02-251-0/+10
|\ \ | | | | | | ENH: Adding a count parameter to np.unpackbits
| * | ENH: Added count parameter to unpackbitsJoseph Fox-Rabinovitz2019-02-251-0/+10
| |/ | | | | | | | | | | | | | | Tests are included. Couple of minor fixes: - Fixed packbits/unpackbits docs to reflect proper keyword names - Added .pytest_cache to .gitignore
* | Merge pull request #12989 from eric-wieser/inter-inf-alternativeSebastian Berg2019-02-251-0/+6
|\ \ | |/ |/| ENH: Correct handling of infinities in np.interp (option B)
| * ENH: Improve handling of infinities in np.interpEric Wieser2019-02-241-0/+6
| | | | | | | | | | | | | | Alternative to gh-12978, using a method that does not need a lot of special cases. This is likely more robust in the face of overflow Fixes gh-12951.
* | BUG: fix signed zero behavior in npy_divmodtlatorre2019-02-181-0/+14
|/ | | | | | | | | | | | | | | | | | | | | Previously when doing floor division numpy would sometimes return an incorrect signed zero. For example: >>> np.zeros(10)//1 array([-0., -0., -0., -0., -0., -0., -0., -0., -0., -0.]) >>> np.remainder(-1.0,1.0) -0.0 The reason for this is that whenever div or mod were zero the code was using the following to pick the sign of zero: floordiv = (a / b > 0) ? 0.0@c@ : -0.0@c@; This commit updates these lines to instead use the copysign function which is how cpython does floor division. Fixes #12841.
* DOC: Update sorting documention.Charles Harris2019-02-081-8/+9
| | | | | | | | Update the sorting documentation to reflect the reality that 'mergesort' and 'stable' are aliases and may refer to any of several stable sorting algorithms depending on data type. [ci skip]
* DOC: Update master following 1.16.1 release.Charles Harris2019-01-311-0/+107
| | | | | | | | - add 1.16.1-changelog.rst - add 1.16.1-notes.rst - update mailmap [skip ci]
* Merge pull request #12418 from liwt31/timsort-devMatti Picus2019-01-311-0/+9
|\ | | | | ENH: Add timsort to npysort