<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/cpython-git.git/Include/cpython/object.h, branch faster-bytes-iter</title>
<subtitle>github.com: python/cpython.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/'/>
<entry>
<title>bpo-40989: Make _PyTraceMalloc_NewReference() internal (GH-20915)</title>
<updated>2020-06-16T15:29:50+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-06-16T15:29:50+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=fcc60e40bbfe8a229b8b83f1d1ee77fd4bf870d1'/>
<id>fcc60e40bbfe8a229b8b83f1d1ee77fd4bf870d1</id>
<content type='text'>
Make the _PyTraceMalloc_NewReference() function fully internal:
remove it from the public C API and don't export it anymore.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make the _PyTraceMalloc_NewReference() function fully internal:
remove it from the public C API and don't export it anymore.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39583: Remove superfluous "extern C" bits from Include/cpython/*.h (GH-18413)</title>
<updated>2020-06-01T18:35:56+00:00</updated>
<author>
<name>Skip Montanaro</name>
<email>skip.montanaro@gmail.com</email>
</author>
<published>2020-06-01T18:35:56+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=b4d5a5cca29426a282e8f1e64b2271fdd1f0a23e'/>
<id>b4d5a5cca29426a282e8f1e64b2271fdd1f0a23e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39465: Remove _PyUnicode_ClearStaticStrings() from C API (GH-20078)</title>
<updated>2020-05-13T23:11:54+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-05-13T23:11:54+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=d6fb53fe42d83a10f1372dd92ffaa6a01d2feffb'/>
<id>d6fb53fe42d83a10f1372dd92ffaa6a01d2feffb</id>
<content type='text'>
Remove the _PyUnicode_ClearStaticStrings() function from the C API.
Make the function fully private (declare it with "static").</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove the _PyUnicode_ClearStaticStrings() function from the C API.
Make the function fully private (declare it with "static").</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-38787: C API for module state access from extension methods (PEP 573) (GH-19936)</title>
<updated>2020-05-07T13:39:59+00:00</updated>
<author>
<name>Petr Viktorin</name>
<email>encukou@gmail.com</email>
</author>
<published>2020-05-07T13:39:59+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=e1becf46b4e3ba6d7d32ebf4bbd3e0804766a423'/>
<id>e1becf46b4e3ba6d7d32ebf4bbd3e0804766a423</id>
<content type='text'>
Module C state is now accessible from C-defined heap type methods (PEP 573).
Patch by Marcel Plch and Petr Viktorin.

Co-authored-by: Marcel Plch &lt;mplch@redhat.com&gt;
Co-authored-by: Victor Stinner &lt;vstinner@python.org&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Module C state is now accessible from C-defined heap type methods (PEP 573).
Patch by Marcel Plch and Petr Viktorin.

Co-authored-by: Marcel Plch &lt;mplch@redhat.com&gt;
Co-authored-by: Victor Stinner &lt;vstinner@python.org&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39947: Hide implementation detail of trashcan macros (GH-18971)</title>
<updated>2020-03-13T15:51:52+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-03-13T15:51:52+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=38965ec5411da60d312b59be281f3510d58e0cf1'/>
<id>38965ec5411da60d312b59be281f3510d58e0cf1</id>
<content type='text'>
Py_TRASHCAN_BEGIN_CONDITION and Py_TRASHCAN_END macro no longer
access PyThreadState attributes, but call new private
_PyTrash_begin() and _PyTrash_end() functions which hide
implementation details.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Py_TRASHCAN_BEGIN_CONDITION and Py_TRASHCAN_END macro no longer
access PyThreadState attributes, but call new private
_PyTrash_begin() and _PyTrash_end() functions which hide
implementation details.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39571: Fix clang warning on PyTypeObject typedef (GH-18385)</title>
<updated>2020-02-07T00:43:25+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-02-07T00:43:25+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=f95cd199b4bc16775c8c48641bd85416b17742e7'/>
<id>f95cd199b4bc16775c8c48641bd85416b17742e7</id>
<content type='text'>
Only define PyTypeObject type once.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Only define PyTypeObject type once.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39542: Convert PyType_Check() to static inline function (GH-18364)</title>
<updated>2020-02-05T13:24:17+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-02-05T13:24:17+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=509dd90f4684e40af3105dd3e754fa4b9c1530c1'/>
<id>509dd90f4684e40af3105dd3e754fa4b9c1530c1</id>
<content type='text'>
Convert PyType_HasFeature(), PyType_Check() and PyType_CheckExact()
macros to static inline functions.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Convert PyType_HasFeature(), PyType_Check() and PyType_CheckExact()
macros to static inline functions.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39542: Make PyObject_INIT() opaque in limited C API (GH-18363)</title>
<updated>2020-02-05T12:12:19+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-02-05T12:12:19+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=f58bd7c1693fe041f7296a5778d0a11287895648'/>
<id>f58bd7c1693fe041f7296a5778d0a11287895648</id>
<content type='text'>
In the limited C API, PyObject_INIT() and PyObject_INIT_VAR() are now
defined as aliases to PyObject_Init() and PyObject_InitVar() to make
their implementation opaque. It avoids to leak implementation details
in the limited C API.

Exclude the following functions from the limited C API, move them
from object.h to cpython/object.h:

* _Py_NewReference()
* _Py_ForgetReference()
* _PyTraceMalloc_NewReference()
* _Py_GetRefTotal()</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In the limited C API, PyObject_INIT() and PyObject_INIT_VAR() are now
defined as aliases to PyObject_Init() and PyObject_InitVar() to make
their implementation opaque. It avoids to leak implementation details
in the limited C API.

Exclude the following functions from the limited C API, move them
from object.h to cpython/object.h:

* _Py_NewReference()
* _Py_ForgetReference()
* _PyTraceMalloc_NewReference()
* _Py_GetRefTotal()</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39542: Exclude trashcan from the limited C API (GH-18362)</title>
<updated>2020-02-05T11:23:27+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-02-05T11:23:27+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=0fa4f43db086ac3459811cca4ec5201ffbee694a'/>
<id>0fa4f43db086ac3459811cca4ec5201ffbee694a</id>
<content type='text'>
Exclude trashcan mechanism from the limited C API: it requires access to
PyTypeObject and PyThreadState structure fields, whereas these structures
are opaque in the limited C API.

The trashcan mechanism never worked with the limited C API. Move it
from object.h to cpython/object.h.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Exclude trashcan mechanism from the limited C API: it requires access to
PyTypeObject and PyThreadState structure fields, whereas these structures
are opaque in the limited C API.

The trashcan mechanism never worked with the limited C API. Move it
from object.h to cpython/object.h.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39543: Remove unused _Py_Dealloc() macro (GH-18361)</title>
<updated>2020-02-05T11:18:28+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-02-05T11:18:28+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=f16433a73138f279642e581074135694ddcfe965'/>
<id>f16433a73138f279642e581074135694ddcfe965</id>
<content type='text'>
The macro is defined after Py_DECREF() and so is no longer used by
Py_DECREF().

Moving _Py_Dealloc() macro back from cpython/object.h to object.h
would require to move a lot of definitions as well: PyTypeObject and
many related types used by PyTypeObject.

Keep _Py_Dealloc() as an opaque function call to avoid leaking
implementation details in the limited C API (object.h): remove
_Py_Dealloc() macro from cpython/object.h.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The macro is defined after Py_DECREF() and so is no longer used by
Py_DECREF().

Moving _Py_Dealloc() macro back from cpython/object.h to object.h
would require to move a lot of definitions as well: PyTypeObject and
many related types used by PyTypeObject.

Keep _Py_Dealloc() as an opaque function call to avoid leaking
implementation details in the limited C API (object.h): remove
_Py_Dealloc() macro from cpython/object.h.</pre>
</div>
</content>
</entry>
</feed>
