<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/numpy.git/tools/lint_diff.ini, branch meson</title>
<subtitle>github.com: numpy/numpy.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/numpy.git/'/>
<entry>
<title>MAINT: Don't include "dirty" in versioneer generated versions.</title>
<updated>2022-10-15T20:19:58+00:00</updated>
<author>
<name>Charles Harris</name>
<email>charlesr.harris@gmail.com</email>
</author>
<published>2020-12-10T15:52:35+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/numpy.git/commit/?id=2145d9ec97771001bf205e5f36f7609c1682e010'/>
<id>2145d9ec97771001bf205e5f36f7609c1682e010</id>
<content type='text'>
We patch the LICENSE file for both sdist and wheel releases, making them
all "dirty", i.e., containing files that have not been committed. Having
"dirty" in the product name is bad marketing and the versioneer tool
does not have an option or style that will omit that bit of information,
so patch the versioneer files to make that tag an empty string.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We patch the LICENSE file for both sdist and wheel releases, making them
all "dirty", i.e., containing files that have not been committed. Having
"dirty" in the product name is bad marketing and the versioneer tool
does not have an option or style that will omit that bit of information,
so patch the versioneer files to make that tag an empty string.
</pre>
</div>
</content>
</entry>
<entry>
<title>ENH: Configurable allocator (#17582)</title>
<updated>2021-10-25T18:53:48+00:00</updated>
<author>
<name>Matti Picus</name>
<email>matti.picus@gmail.com</email>
</author>
<published>2021-10-25T18:53:48+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/numpy.git/commit/?id=84e0707afa587e7655410561324ac36085db2b95'/>
<id>84e0707afa587e7655410561324ac36085db2b95</id>
<content type='text'>
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-&gt;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 &lt;matti.picus@gmail.com&gt;

* 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-&gt;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 &lt;matti.picus@gmail.com&gt;

* 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 &lt;matti.picus@gmail.com&gt;

* 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 &lt;sebastian@sipsolutions.net&gt;

* Update numpy/core/tests/test_mem_policy.py

Co-authored-by: Sebastian Berg &lt;sebastian@sipsolutions.net&gt;

* 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 &lt;elias.koromilas@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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-&gt;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 &lt;matti.picus@gmail.com&gt;

* 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-&gt;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 &lt;matti.picus@gmail.com&gt;

* 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 &lt;matti.picus@gmail.com&gt;

* 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 &lt;sebastian@sipsolutions.net&gt;

* Update numpy/core/tests/test_mem_policy.py

Co-authored-by: Sebastian Berg &lt;sebastian@sipsolutions.net&gt;

* 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 &lt;elias.koromilas@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>TST: Exclude to-be ignored files when computing the diff</title>
<updated>2021-05-08T17:22:35+00:00</updated>
<author>
<name>Bas van Beek</name>
<email>b.f.van.beek@vu.nl</email>
</author>
<published>2021-05-08T17:02:27+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/numpy.git/commit/?id=e377d071ea502f396a7da299633bad74922c04eb'/>
<id>e377d071ea502f396a7da299633bad74922c04eb</id>
<content type='text'>
The `diff` and `exclude` options of pycodestyle seem to be incompatible,
so instead just ignore the necessary files when computing the diff itself.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The `diff` and `exclude` options of pycodestyle seem to be incompatible,
so instead just ignore the necessary files when computing the diff itself.
</pre>
</div>
</content>
</entry>
<entry>
<title>TST: Ignore the E704 pycodestyle error code</title>
<updated>2021-05-02T19:13:43+00:00</updated>
<author>
<name>Bas van Beek</name>
<email>b.f.van.beek@vu.nl</email>
</author>
<published>2021-05-02T19:13:43+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/numpy.git/commit/?id=6fa34d432722faaaf54f27fb9cb3b1b9e197e9fe'/>
<id>6fa34d432722faaaf54f27fb9cb3b1b9e197e9fe</id>
<content type='text'>
E704 (multiple statements on one line (def)) is a style rule not prescribed by PEP8. Furthermore, because it demands a function body it is needlessly inconvenient for static type checking, i.e. situation where this is no function body.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
E704 (multiple statements on one line (def)) is a style rule not prescribed by PEP8. Furthermore, because it demands a function body it is needlessly inconvenient for static type checking, i.e. situation where this is no function body.
</pre>
</div>
</content>
</entry>
<entry>
<title>TST: Ignore lint-checking in the `numpy/typing/tests/data` directory</title>
<updated>2021-05-02T19:10:25+00:00</updated>
<author>
<name>Bas van Beek</name>
<email>b.f.van.beek@vu.nl</email>
</author>
<published>2021-05-02T19:10:25+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/numpy.git/commit/?id=15420c82f7ef2f91bc8cd18dd6eba25204873c16'/>
<id>15420c82f7ef2f91bc8cd18dd6eba25204873c16</id>
<content type='text'>
With the current tests system we cannot reasonably enforce E501 (maximum line length)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With the current tests system we cannot reasonably enforce E501 (maximum line length)
</pre>
</div>
</content>
</entry>
<entry>
<title>ENH: Added Linter script</title>
<updated>2021-03-07T05:48:23+00:00</updated>
<author>
<name>Ganesh Kathiresan</name>
<email>ganesh3597@gmail.com</email>
</author>
<published>2021-02-16T07:50:59+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/numpy.git/commit/?id=0e1fea2fb3cf33b25f57e71c4390a01d1c134780'/>
<id>0e1fea2fb3cf33b25f57e71c4390a01d1c134780</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
