<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/cpython-git.git/PC/python3.def, branch benjamin-interp-initialize</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-33738: Fix macros which contradict PEP 384 (GH-7477)</title>
<updated>2018-06-09T18:32:25+00:00</updated>
<author>
<name>Christian Tismer</name>
<email>tismer@stackless.com</email>
</author>
<published>2018-06-09T18:32:25+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=ea62ce7f4fefc66bc0adba16bcd7666d5bbd5b44'/>
<id>ea62ce7f4fefc66bc0adba16bcd7666d5bbd5b44</id>
<content type='text'>
During development of the limited API support for PySide,
we saw an error in a macro that accessed a type field.

This patch fixes the 7 errors in the Python headers.
Macros which were not written as capitals were implemented
as function.

To do the necessary analysis again, a script was included that
parses all headers and looks for "-&gt;tp_" in serctions which can
be reached with active limited API.

It is easily possible to call this script as a test.

Error listing:

../../Include/objimpl.h:243
#define PyObject_IS_GC(o) (PyType_IS_GC(Py_TYPE(o)) &amp;&amp; \
    (Py_TYPE(o)-&gt;tp_is_gc == NULL || Py_TYPE(o)-&gt;tp_is_gc(o)))
Action: commented only

../../Include/objimpl.h:362
#define PyType_SUPPORTS_WEAKREFS(t) ((t)-&gt;tp_weaklistoffset &gt; 0)
Action: commented only

../../Include/objimpl.h:364
#define PyObject_GET_WEAKREFS_LISTPTR(o) \
    ((PyObject **) (((char *) (o)) + Py_TYPE(o)-&gt;tp_weaklistoffset))
Action: commented only

../../Include/pyerrors.h:143
#define PyExceptionClass_Name(x) \
     ((char *)(((PyTypeObject*)(x))-&gt;tp_name))
Action: implemented function

../../Include/abstract.h:593
#define PyIter_Check(obj) \
    ((obj)-&gt;ob_type-&gt;tp_iternext != NULL &amp;&amp; \
     (obj)-&gt;ob_type-&gt;tp_iternext != &amp;_PyObject_NextNotImplemented)
Action: implemented function

../../Include/abstract.h:713
#define PyIndex_Check(obj)                              \
    ((obj)-&gt;ob_type-&gt;tp_as_number != NULL &amp;&amp;            \
     (obj)-&gt;ob_type-&gt;tp_as_number-&gt;nb_index != NULL)
Action: implemented function

../../Include/abstract.h:924
#define PySequence_ITEM(o, i)\
    ( Py_TYPE(o)-&gt;tp_as_sequence-&gt;sq_item(o, i) )
Action: commented only
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
During development of the limited API support for PySide,
we saw an error in a macro that accessed a type field.

This patch fixes the 7 errors in the Python headers.
Macros which were not written as capitals were implemented
as function.

To do the necessary analysis again, a script was included that
parses all headers and looks for "-&gt;tp_" in serctions which can
be reached with active limited API.

It is easily possible to call this script as a test.

Error listing:

../../Include/objimpl.h:243
#define PyObject_IS_GC(o) (PyType_IS_GC(Py_TYPE(o)) &amp;&amp; \
    (Py_TYPE(o)-&gt;tp_is_gc == NULL || Py_TYPE(o)-&gt;tp_is_gc(o)))
Action: commented only

../../Include/objimpl.h:362
#define PyType_SUPPORTS_WEAKREFS(t) ((t)-&gt;tp_weaklistoffset &gt; 0)
Action: commented only

../../Include/objimpl.h:364
#define PyObject_GET_WEAKREFS_LISTPTR(o) \
    ((PyObject **) (((char *) (o)) + Py_TYPE(o)-&gt;tp_weaklistoffset))
Action: commented only

../../Include/pyerrors.h:143
#define PyExceptionClass_Name(x) \
     ((char *)(((PyTypeObject*)(x))-&gt;tp_name))
Action: implemented function

../../Include/abstract.h:593
#define PyIter_Check(obj) \
    ((obj)-&gt;ob_type-&gt;tp_iternext != NULL &amp;&amp; \
     (obj)-&gt;ob_type-&gt;tp_iternext != &amp;_PyObject_NextNotImplemented)
Action: implemented function

../../Include/abstract.h:713
#define PyIndex_Check(obj)                              \
    ((obj)-&gt;ob_type-&gt;tp_as_number != NULL &amp;&amp;            \
     (obj)-&gt;ob_type-&gt;tp_as_number-&gt;nb_index != NULL)
Action: implemented function

../../Include/abstract.h:924
#define PySequence_ITEM(o, i)\
    ( Py_TYPE(o)-&gt;tp_as_sequence-&gt;sq_item(o, i) )
Action: commented only
</pre>
</div>
</content>
</entry>
<entry>
<title>Add missed details of the C API introduced in 3.7. (GH-7047)</title>
<updated>2018-05-22T17:59:42+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2018-05-22T17:59:42+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=4e29f566e8821c09d8274eadcdd355e8b1284b8b'/>
<id>4e29f566e8821c09d8274eadcdd355e8b1284b8b</id>
<content type='text'>
* Set the limited API version for PyImport_GetModule and PyOS_*Fork
  functions.
* Add PyImport_GetModule and Py_UTF8Mode in PC/python3.def.
* Add several functions in Doc/data/refcounts.dat.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Set the limited API version for PyImport_GetModule and PyOS_*Fork
  functions.
* Add PyImport_GetModule and Py_UTF8Mode in PC/python3.def.
* Add several functions in Doc/data/refcounts.dat.</pre>
</div>
</content>
</entry>
<entry>
<title>Start of 3.8.0a0</title>
<updated>2018-01-31T22:44:09+00:00</updated>
<author>
<name>Ned Deily</name>
<email>nad@python.org</email>
</author>
<published>2018-01-31T22:44:09+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=5489bdad5143050b8bb89b648b3c00d951b72d4f'/>
<id>5489bdad5143050b8bb89b648b3c00d951b72d4f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-30697: Fix PyErr_NormalizeException() when no memory (GH-2327)</title>
<updated>2017-10-26T13:09:06+00:00</updated>
<author>
<name>xdegaye</name>
<email>xdegaye@gmail.com</email>
</author>
<published>2017-10-26T13:09:06+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=56d1f5ca32892c7643eb8cee49c40c1644f1abfe'/>
<id>56d1f5ca32892c7643eb8cee49c40c1644f1abfe</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-25658: Implement PEP 539 for Thread Specific Storage (TSS) API (GH-1362)</title>
<updated>2017-10-06T10:41:34+00:00</updated>
<author>
<name>Masayuki Yamamoto</name>
<email>ma3yuki.8mamo10@gmail.com</email>
</author>
<published>2017-10-06T10:41:34+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=731e18901484c75b60167a06a0ba0719a6d4827d'/>
<id>731e18901484c75b60167a06a0ba0719a6d4827d</id>
<content type='text'>
See PEP 539 for details.

Highlights of changes:

- Add Thread Specific Storage (TSS) API
- Document the Thread Local Storage (TLS) API as deprecated
- Update code that used TLS API to use TSS API</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
See PEP 539 for details.

Highlights of changes:

- Add Thread Specific Storage (TSS) API
- Document the Thread Local Storage (TLS) API as deprecated
- Update code that used TLS API to use TSS API</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-29102: Add a unique ID to PyInterpreterState. (#1639)</title>
<updated>2017-05-23T02:46:40+00:00</updated>
<author>
<name>Eric Snow</name>
<email>ericsnowcurrently@gmail.com</email>
</author>
<published>2017-05-23T02:46:40+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=e377416c10eb0bf055b0728cdcdc4488fdfd3b5f'/>
<id>e377416c10eb0bf055b0728cdcdc4488fdfd3b5f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #27867: Function PySlice_GetIndicesEx() is deprecated and replaced with</title>
<updated>2017-01-25T11:27:44+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2017-01-25T11:27:44+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=6e08baf12da60950561d50273799df93d120c127'/>
<id>6e08baf12da60950561d50273799df93d120c127</id>
<content type='text'>
a macro if Py_LIMITED_API is not set or set to the value between 0x03050400
and 0x03060000 (not including) or 0x03060100 or higher.  Added functions
PySlice_Unpack() and PySlice_AdjustIndices().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
a macro if Py_LIMITED_API is not set or set to the value between 0x03050400
and 0x03060000 (not including) or 0x03060100 or higher.  Added functions
PySlice_Unpack() and PySlice_AdjustIndices().
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #27867: Function PySlice_GetIndicesEx() is replaced with a macro if</title>
<updated>2017-01-25T11:25:52+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2017-01-25T11:25:52+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=512c57cb72e108d0f68ceecbc88dfe3b2eb56371'/>
<id>512c57cb72e108d0f68ceecbc88dfe3b2eb56371</id>
<content type='text'>
Py_LIMITED_API is not set or set to the value between 0x03050400
and 0x03060000 (not including) or 0x03060100 or higher.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Py_LIMITED_API is not set or set to the value between 0x03050400
and 0x03060000 (not including) or 0x03060100 or higher.
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #27867: Function PySlice_GetIndicesEx() is replaced with a macro if</title>
<updated>2017-01-25T11:23:05+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2017-01-25T11:23:05+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=b2a5be0763ee572bed431335eb4712fac94f5a7b'/>
<id>b2a5be0763ee572bed431335eb4712fac94f5a7b</id>
<content type='text'>
Py_LIMITED_API is not set or set to the value between 0x03050400
and 0x03060000 (not including) or 0x03060100 or higher.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Py_LIMITED_API is not set or set to the value between 0x03050400
and 0x03060000 (not including) or 0x03060100 or higher.
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #23903: Added missed Windows-specific names to PC/python3.def.</title>
<updated>2016-12-27T15:44:18+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2016-12-27T15:44:18+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=683cb8347a0b92172545ce7fac53937a1958e74c'/>
<id>683cb8347a0b92172545ce7fac53937a1958e74c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
