<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/cpython-git.git/Python/marshal.c, branch enum-lost-fixes</title>
<subtitle>github.com: python/cpython.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/'/>
<entry>
<title>bpo-41180: Replace marshal code.__new__ audit event with marshal.load[s] and marshal.dumps (GH-26970)</title>
<updated>2021-06-30T17:52:25+00:00</updated>
<author>
<name>Steve Dower</name>
<email>steve.dower@python.org</email>
</author>
<published>2021-06-30T17:52:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=a5764d3d96341441d3f70fb5c96a82610a3f4842'/>
<id>a5764d3d96341441d3f70fb5c96a82610a3f4842</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-42519: Replace PyMem_MALLOC() with PyMem_Malloc() (GH-23586)</title>
<updated>2020-12-01T08:56:42+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-12-01T08:56:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=00d7abd7ef588fc4ff0571c8579ab4aba8ada1c0'/>
<id>00d7abd7ef588fc4ff0571c8579ab4aba8ada1c0</id>
<content type='text'>
No longer use deprecated aliases to functions:

* Replace PyMem_MALLOC() with PyMem_Malloc()
* Replace PyMem_REALLOC() with PyMem_Realloc()
* Replace PyMem_FREE() with PyMem_Free()
* Replace PyMem_Del() with PyMem_Free()
* Replace PyMem_DEL() with PyMem_Free()

Modify also the PyMem_DEL() macro to use directly PyMem_Free().</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
No longer use deprecated aliases to functions:

* Replace PyMem_MALLOC() with PyMem_Malloc()
* Replace PyMem_REALLOC() with PyMem_Realloc()
* Replace PyMem_FREE() with PyMem_Free()
* Replace PyMem_Del() with PyMem_Free()
* Replace PyMem_DEL() with PyMem_Free()

Modify also the PyMem_DEL() macro to use directly PyMem_Free().</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-42246: Partial implementation of PEP 626. (GH-23113)</title>
<updated>2020-11-12T09:43:29+00:00</updated>
<author>
<name>Mark Shannon</name>
<email>mark@hotpy.org</email>
</author>
<published>2020-11-12T09:43:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=877df851c3ecdb55306840e247596e7b7805a60a'/>
<id>877df851c3ecdb55306840e247596e7b7805a60a</id>
<content type='text'>
* Implement new line number table format, as defined in PEP 626.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Implement new line number table format, as defined in PEP 626.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-1635741: Port mashal module to multi-phase init (#22149)</title>
<updated>2020-09-08T13:33:52+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-09-08T13:33:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=f315142ddc61e54a59028db562aec5f62db783e1'/>
<id>f315142ddc61e54a59028db562aec5f62db783e1</id>
<content type='text'>
Port the 'mashal' extension module to the multi-phase initialization
API (PEP 489).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Port the 'mashal' extension module to the multi-phase initialization
API (PEP 489).</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-41180: Audit code.__new__ when unmarshalling (GH-21271)</title>
<updated>2020-07-03T20:56:30+00:00</updated>
<author>
<name>tkmikan</name>
<email>36260601+tkmikan@users.noreply.github.com</email>
</author>
<published>2020-07-03T20:56:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=d160e0f8e283d0a8737644588b38e8c6a07c134f'/>
<id>d160e0f8e283d0a8737644588b38e8c6a07c134f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-40602: Write unit tests for _Py_hashtable_t (GH-20091)</title>
<updated>2020-05-14T19:55:47+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-05-14T19:55:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=a482dc500b6ec4889f6a126ba08cbad6c11e37bc'/>
<id>a482dc500b6ec4889f6a126ba08cbad6c11e37bc</id>
<content type='text'>
Cleanup also hashtable.c.
Rename _Py_hashtable_t members:

* Rename entries to nentries
* Rename num_buckets to nbuckets</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Cleanup also hashtable.c.
Rename _Py_hashtable_t members:

* Rename entries to nentries
* Rename num_buckets to nbuckets</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-40609: _Py_hashtable_t values become void* (GH-20065)</title>
<updated>2020-05-13T02:40:30+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-05-13T02:40:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=5b0a30354d8a8bb39a05ce10ca4f5c78b729f25b'/>
<id>5b0a30354d8a8bb39a05ce10ca4f5c78b729f25b</id>
<content type='text'>
_Py_hashtable_t values become regular "void *" pointers.

* Add _Py_hashtable_entry_t.data member
* Remove _Py_hashtable_t.data_size member
* Remove _Py_hashtable_t.get_func member. It is no longer needed
  to specialize _Py_hashtable_get() for a specific value size, since
  all entries now have the same size (void*).
* Remove the following macros:

  * _Py_HASHTABLE_GET()
  * _Py_HASHTABLE_SET()
  * _Py_HASHTABLE_SET_NODATA()
  * _Py_HASHTABLE_POP()

* Rename _Py_hashtable_pop() to _Py_hashtable_steal()
* _Py_hashtable_foreach() callback now gets key and value rather than
  entry.
* Remove _Py_hashtable_value_destroy_func type. value_destroy_func
  callback now only has a single parameter: data (void*).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
_Py_hashtable_t values become regular "void *" pointers.

* Add _Py_hashtable_entry_t.data member
* Remove _Py_hashtable_t.data_size member
* Remove _Py_hashtable_t.get_func member. It is no longer needed
  to specialize _Py_hashtable_get() for a specific value size, since
  all entries now have the same size (void*).
* Remove the following macros:

  * _Py_HASHTABLE_GET()
  * _Py_HASHTABLE_SET()
  * _Py_HASHTABLE_SET_NODATA()
  * _Py_HASHTABLE_POP()

* Rename _Py_hashtable_pop() to _Py_hashtable_steal()
* _Py_hashtable_foreach() callback now gets key and value rather than
  entry.
* Remove _Py_hashtable_value_destroy_func type. value_destroy_func
  callback now only has a single parameter: data (void*).</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-40609: Add destroy functions to _Py_hashtable (GH-20062)</title>
<updated>2020-05-13T00:50:18+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-05-13T00:50:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=2d0a3d682f699cce8db6e30981d41d9125318726'/>
<id>2d0a3d682f699cce8db6e30981d41d9125318726</id>
<content type='text'>
Add key_destroy_func and value_destroy_func parameters to
_Py_hashtable_new_full().

marshal.c and _tracemalloc.c use these destroy functions.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add key_destroy_func and value_destroy_func parameters to
_Py_hashtable_new_full().

marshal.c and _tracemalloc.c use these destroy functions.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-40609: Remove _Py_hashtable_t.key_size (GH-20060)</title>
<updated>2020-05-13T00:26:02+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-05-13T00:26:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=f9b3b582b86b9cce8d69ec7d03d716ec81c8264a'/>
<id>f9b3b582b86b9cce8d69ec7d03d716ec81c8264a</id>
<content type='text'>
Rewrite _Py_hashtable_t type to always store the key as
a "const void *" pointer. Add an explicit "key" member to
_Py_hashtable_entry_t.

Remove _Py_hashtable_t.key_size member.

hash and compare functions drop their hash table parameter, and their
'key' parameter type becomes "const void *".</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Rewrite _Py_hashtable_t type to always store the key as
a "const void *" pointer. Add an explicit "key" member to
_Py_hashtable_entry_t.

Remove _Py_hashtable_t.key_size member.

hash and compare functions drop their hash table parameter, and their
'key' parameter type becomes "const void *".</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-40602: Rename hashtable.h to pycore_hashtable.h (GH-20044)</title>
<updated>2020-05-12T00:42:19+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-05-12T00:42:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=b617993b7c0b0f6f679ef7003a62d0318b6d6af9'/>
<id>b617993b7c0b0f6f679ef7003a62d0318b6d6af9</id>
<content type='text'>
* Move Modules/hashtable.h to Include/internal/pycore_hashtable.h
* Move Modules/hashtable.c to Python/hashtable.c
* Python is now linked to hashtable.c. _tracemalloc is no longer
  linked to hashtable.c. Previously, marshal.c got hashtable.c via
  _tracemalloc.c which is built as a builtin module.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Move Modules/hashtable.h to Include/internal/pycore_hashtable.h
* Move Modules/hashtable.c to Python/hashtable.c
* Python is now linked to hashtable.c. _tracemalloc is no longer
  linked to hashtable.c. Previously, marshal.c got hashtable.c via
  _tracemalloc.c which is built as a builtin module.</pre>
</div>
</content>
</entry>
</feed>
