summaryrefslogtreecommitdiff
path: root/doc/source/reference
Commit message (Collapse)AuthorAgeFilesLines
* ENH: add a 'version' field to PyDataMem_Handlermattip2021-11-101-1/+2
|
* DOC: centralized min-max documentation under 'extrema finding' subsection in ↵Yuval Ofek2021-10-302-10/+17
| | | | mathematical functions page
* Merge pull request #20195 from WarrenWeckesser/doc-miscSebastian Berg2021-10-271-8/+14
|\ | | | | DOC: Two small changes in array.rst:
| * DOC: Two small changes in array.rst:warren2021-10-261-8/+14
| | | | | | | | | | | | * Include the return values of `PyArray_RegisterCanCast` in the description. * Correct the documentation of `PyArray_Scalar`.
* | MAINT: Only warn for transferred ownership if env variable is set (#20200)Matti Picus2021-10-273-3/+51
|/ | | | | | | | | | | | | Builds on gh-20194. Fixes breakage of SciPy in https://github.com/scipy/scipy/issues/14917 At some point we could flip the default to "warn" instead of "no warning" * make warning conditional on NUMPY_WARN_IF_NO_MEM_POLICY * add test, fix example code * fixes from review * typo
* DOC: add release note and move NEP 49 to Final (#20194)Matti Picus2021-10-261-0/+2
| | | | | | | * DOC: add release note and move NEP 49 to Final * fix link * fix release note
* [MAINT] minor grammar fix: add missing "an"bbrewington2021-10-251-1/+1
|
* [MAINT] Fix minor typobbrewington2021-10-251-1/+1
|
* ENH: Configurable allocator (#17582)Matti Picus2021-10-252-0/+120
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes gh-17467. Adds a public struct to hold memory manipulation routines PyDataMem_Handler and two new API functions PyDataMem_SetHandler to replace the current routines with the new ones, and PyDataMem_GetHandlerName to get the string name of the current routines (either globally or for a specific ndarray object). This also changes the size of the ndarray object to hold the PyDataMem_Handler active when it was created so subsequent actions on its data memory will remain consistent. Tests and documentation are included. Along the way, I found some places in the code where the current policy is inconsistent (all data memory handling should have gone through npy_*_cache not PyDataMem_*) so even if this is rejected it might improve the cache handling. The PyDataMem_Handler has fields to override memcpy, these are currently not implemented: memcpy in the code base is untouched. I think this PR is invasive enough as-is, if desired memcpy can be handled in a follow-up PR. * ENH: add and use global configurable memory routines * ENH: add tests and a way to compile c-extensions from tests * fix allocation/free exposed by tests * DOC: document the new APIs (and some old ones too) * BUG: return void from FREE, also some cleanup * MAINT: changes from review * fixes from linter * setting ndarray->descr on 0d or scalars mess with FREE * make scalar allocation more consistent wrt np_alloc_cache * change formatting for sphinx * remove memcpy variants * update to match NEP 49 * ENH: add a python-level get_handler_name * ENH: add core.multiarray.get_handler_name * Allow closure-like definition of the data mem routines * Fix incompatible pointer warnings * Note PyDataMemAllocator and PyMemAllocatorEx differentiation Co-authored-by: Matti Picus <matti.picus@gmail.com> * Redefine default allocator handling * Always allocate new arrays using the current_handler * Search for the mem_handler name of the data owner * Sub-comparisons don't need a local mem_handler * Make the default_handler a valid PyDataMem_Handler * Fix PyDataMem_SetHandler description (NEP discussion) * Pass the allocators by reference * Implement allocator context-locality * Fix documentation, make PyDataMem_GetHandler return const * remove import of setuptools==49.1.3, doesn't work on python3.10 * Fix refcount leaks * fix function signatures in test * Return early on PyDataMem_GetHandler error (VOID_compare) * Add context/thread-locality tests, allow testing custom policies * ENH: add and use global configurable memory routines * ENH: add tests and a way to compile c-extensions from tests * fix allocation/free exposed by tests * DOC: document the new APIs (and some old ones too) * BUG: return void from FREE, also some cleanup * MAINT: changes from review * fixes from linter * setting ndarray->descr on 0d or scalars mess with FREE * make scalar allocation more consistent wrt np_alloc_cache * change formatting for sphinx * remove memcpy variants * update to match NEP 49 * ENH: add a python-level get_handler_name * ENH: add core.multiarray.get_handler_name * Allow closure-like definition of the data mem routines * Fix incompatible pointer warnings * Note PyDataMemAllocator and PyMemAllocatorEx differentiation Co-authored-by: Matti Picus <matti.picus@gmail.com> * Redefine default allocator handling * Always allocate new arrays using the current_handler * Search for the mem_handler name of the data owner * Sub-comparisons don't need a local mem_handler * Make the default_handler a valid PyDataMem_Handler * Fix PyDataMem_SetHandler description (NEP discussion) * Pass the allocators by reference * remove import of setuptools==49.1.3, doesn't work on python3.10 * fix function signatures in test * try to fix cygwin extension building * YAPF mem_policy test * Less empty lines, more comments (tests) * Apply suggestions from code review (set an exception and) Co-authored-by: Matti Picus <matti.picus@gmail.com> * skip test on cygwin * update API hash for changed signature * TST: add gc.collect to make sure cycles are broken * Implement thread-locality for PyPy Co-authored-by: Sebastian Berg <sebastian@sipsolutions.net> * Update numpy/core/tests/test_mem_policy.py Co-authored-by: Sebastian Berg <sebastian@sipsolutions.net> * fixes from review * update circleci config * fix test * make the connection between OWNDATA and having a allocator handle more explicit * improve docstring, fix flake8 for tests * update PyDataMem_GetHandler() from review * Implement allocator lifetime management * update NEP and add best-effort handling of error in PyDataMem_UserFREE * ENH: fix and test for blindly taking ownership of data * Update doc/neps/nep-0049.rst Co-authored-by: Elias Koromilas <elias.koromilas@gmail.com>
* DOC: Remove double property ctypes from ndarrayPeter Tillema2021-10-141-1/+0
| | | Fix #20117
* DOC: Document the dtype comparison operationsBas van Beek2021-10-091-0/+10
|
* DOC:add-html-reference-to-some-ma-methodsSista Seetaram2021-10-061-0/+3
|
* DOC: add example showing how to convert POSIX timestamps to datetime64 (#18984)Jonathan Reichelt Gjertsen2021-10-011-3/+15
| | | | | * DOC: add example showing how to convert POSIX timestamps to datetime64 Co-authored-by: Melissa Weber Mendonça <melissawm@gmail.com>
* Merge pull request #19981 from cmarmo/npyarray-enumsMatti Picus2021-10-012-54/+75
|\ | | | | DOC: Deindent some sphinx declarations to avoid warnings.
| * Add comments to prevent revert.Chiara Marmo2021-09-302-0/+21
| |
| * Fix scope of some sphinx declarations to avoid warnings.Chiara Marmo2021-09-282-54/+54
| |
* | DOC: Copy-edit and fix typos.Warren Weckesser2021-09-291-2/+2
|/
* Merge pull request #19879 from BvB93/cls_getitemCharles Harris2021-09-253-2/+23
|\ | | | | ENH: Add `__class_getitem__` to `ndarray`, `dtype` and `number`
| * DOC: Add links to the `__class_getitem__` docsBas van Beek2021-09-163-2/+23
| |
* | DOC: Typos found by codespellDimitri Papadopoulos2021-09-218-20/+20
| |
* | Merge pull request #19844 from Mukulikaa/c-api-additionsCharles Harris2021-09-161-14/+61
|\ \ | | | | | | DOC: Added missing C-API functions
| * | Update doc/source/reference/c-api/array.rstCharles Harris2021-09-131-1/+1
| | | | | | | | | Co-authored-by: Melissa Weber Mendonça <melissawm@gmail.com>
| * | DOC: Added missing C-API functionsMukulika2021-09-081-14/+61
| |/ | | | | | | | | | | | | | | 1. PyArray_CopyObject 2. PyArray_MapIterArray 3. PyArray_MapIterSwapAxes 4. PyArray_MapIterNext 5. PyArray_MapIterArrayCopyIfOverlap
* | DOC: Moved NumPy Internals into Under-the-hood docsMukulika2021-09-134-870/+11
|/
* DOC: Replaced indexing stub doc with routinesMukulika2021-08-183-126/+66
|
* DOC: Exchanged the contents of Indexing basics and Indexing ref docsMukulika2021-08-181-696/+34
|
* DOC: Rearranged parts of the Indexing docs to consolidate contentMukulika2021-08-181-203/+364
|
* DOC: Fix trivial doc typo. (#19692)Antony Lee2021-08-171-1/+1
|
* DOC: Created fundamentals doc for explanations in `ufunc` reference doc (#19516)Mukulika2021-08-121-438/+129
| | | | | | | | | | * Created fundamentals doc for explanations in ufunc reference doc * Move explanatory material on ufuncs and broadcasting from the reference guide to the ufunc fundamentals and/or broadcasting document in the user guide * Added examples for ufunc method arguments * Reorganized broadcasting duplicate content from ufuncs doc Co-authored-by: Melissa Weber Mendonça <melissawm@gmail.com>
* Dedent list of macros.Chiara Marmo2021-08-022-327/+330
|
* Fix scope of c:macro.Chiara Marmo2021-08-012-324/+327
|
* Merge pull request #19571 from seberg/ufunc-refactor-2021-normalMatti Picus2021-07-281-3/+7
|\ | | | | MAINT: Refactor UFunc core to use NEP 43 style dispatching
| * MAINT: Use the same pattern for the floating point error checkSebastian Berg2021-07-221-3/+4
| | | | | | | | Co-authored-by: Matti Picus <matti.picus@gmail.com>
| * DOC: use deprecated rather than note and delete old docstringSebastian Berg2021-07-221-6/+2
| |
| * MAINT: Refactor UFunc core to use NEP 43 style dispatching/promotionSebastian Berg2021-07-221-0/+7
| | | | | | | | | | | | | | | | | | The first (big) chunk of a multi-step process to update all ufuncs to NEP 43 style ufuncs. This limits itself to normal ufunc calls and sets ufunc.at and all reduce-like operations to the side. These would add another level of complexity.
* | Update doc/source/reference/c-api/array.rstChiara Marmo2021-07-271-1/+1
| | | | | | Co-authored-by: Matti Picus <matti.picus@gmail.com>
* | Remove PyArray_MultiIter_SIZE definition. Tentative definition for ↵Chiara Marmo2021-07-271-4/+10
| | | | | | | | PyArray_FinalizeFunc.
* | Address some comments.Chiara Marmo2021-07-271-11/+10
| |
* | Fix sphinx warnings in c-info.beyond-basics.Chiara Marmo2021-07-271-0/+12
|/
* ENH: Add the `axis` and `ndim` attributes to `np.AxisError` (#19459)Bas van Beek2021-07-201-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This PR adds the new axis and ndim attributes to the np.AxisError class, an addition inspired by similar changes introduced to AttributeError in Python 3.10. It also provided an excuse to update the classes' documentation and tests, both of which were previously rather lacking. * ENH: Add the `axis` and `ndim` attributes to `np.AxisError` * MAINT: Let the new `AxisError` attributes survive pickling * DOC: Update the `AxisError` documentation * TST: Update the `AxisError` tests * DOC: Add a release note * MAINT: Improve the description of `AxisError`s overloaded constructor * TST: Fix a few typing test failures * DOC: Clarify a fix a few parts of the `AxisError` docstrings Co-Authored-By: Eric Wieser <425260+eric-wieser@users.noreply.github.com> * DOC: Reguide fix * DOC: Replace `versionadded` with `versionchanged` Co-authored-by: Eric Wieser <wieser.eric@gmail.com> * DOC: Mention that `AxisError` is a `ValueError` and `IndexError` subclass Co-Authored-By: Sebastian Berg <sebastian@sipsolutions.net> * ENH: Delay assembling of the error message until `__str__` is called Co-Authored-By: Eric Wieser <425260+eric-wieser@users.noreply.github.com> * DOC: Update the `AxisError` string representation in its docstring * DOC: Update `versionadded`-related information Co-Authored-By: Eric Wieser <425260+eric-wieser@users.noreply.github.com> * DOC: Fix sphinx warnings Co-authored-by: Eric Wieser <425260+eric-wieser@users.noreply.github.com> Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Sebastian Berg <sebastian@sipsolutions.net>
* DOC: Fix typosAdrian Gao2021-07-181-4/+4
|
* MAINT: Move masked strided/inner-loop code to its "final" place (#19370)Sebastian Berg2021-06-291-5/+1
| | | | | * MAINT: Move masked code 1:1 (does not work) * MAINT: Fixup code move and small follow-up fixes
* DOC: Add documentation for `np.ctypeslib.c_intp`Bas van Beek2021-06-221-0/+7
|
* DOC: NeighborhoodIterator position on creationMarco Aurelio da Costa2021-06-081-1/+7
| | | | | | Document that NeighborhoodIterator will point to the begining of the data instead of the position pointed by iter on creation in the special case where data is contiguous.
* Updated doc/source/reference/arrays.scalars.rstNick Pope2021-05-251-4/+4
| | | Fixed unsigned integer aliases.
* Merge pull request #18676 from seberg/new-promotion-partial-weak-scalarsCharles Harris2021-05-192-15/+1
|\ | | | | MAINT: Implement new style promotion for `np.result_type`, etc.
| * MAINT: Remove `NPY_USE_NEW_CASTINGIMPL`Sebastian Berg2021-05-121-14/+0
| | | | | | | | | | | | | | This doesn't serve any purpose anymore. The new code is now always used. (In very few cases this may lead to small slowdowns, this should only matter in ufuncs where it doesn't seem to matter enough to worry about it.)
| * DOC,TST: Fix documentation and add testsSebastian Berg2021-05-121-1/+1
| |
* | DOC: Use versionadded tag instead of inline comment to specify minimum ↵zoj2021-05-171-1/+3
| | | | | | | | version needed for random c-api
* | DOC: Clarify minimum numpy version needed to use random c-apizoj2021-05-171-1/+1
| |