<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/cpython-git.git/Include/cpython/pystate.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-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-40421: Add pyframe.h header file (GH-19755)</title>
<updated>2020-04-28T14:32:48+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-04-28T14:32:48+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=7c59d7c9860cdbaf4a9c26c9142aebd3259d046e'/>
<id>7c59d7c9860cdbaf4a9c26c9142aebd3259d046e</id>
<content type='text'>
Add a new separated pyframe.h header file of the PyFrame public C
API: it is included by Python.h.

Add PyFrame_GetLineNumber() to the limited C API.

Replace "struct _frame" with "PyFrameObject" in header files.
PyFrameObject is now defined as struct _frame by pyframe.h which is
included early enough in Python.h.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add a new separated pyframe.h header file of the PyFrame public C
API: it is included by Python.h.

Add PyFrame_GetLineNumber() to the limited C API.

Replace "struct _frame" with "PyFrameObject" in header files.
PyFrameObject is now defined as struct _frame by pyframe.h which is
included early enough in Python.h.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-40268: Rename _PyInterpreterState_GET_UNSAFE() (GH-19509)</title>
<updated>2020-04-14T13:14:01+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-04-14T13:14:01+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=81a7be3fa22c983209cc0ffb3537b92b0370f83c'/>
<id>81a7be3fa22c983209cc0ffb3537b92b0370f83c</id>
<content type='text'>
Rename _PyInterpreterState_GET_UNSAFE() to _PyInterpreterState_GET()
for consistency with _PyThreadState_GET() and to have a shorter name
(help to fit into 80 columns).

Add also "assert(tstate != NULL);" to the function.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Rename _PyInterpreterState_GET_UNSAFE() to _PyInterpreterState_GET()
for consistency with _PyThreadState_GET() and to have a shorter name
(help to fit into 80 columns).

Add also "assert(tstate != NULL);" to the function.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-40268: Add _PyInterpreterState_GetConfig() (GH-19492)</title>
<updated>2020-04-13T01:04:28+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-04-13T01:04:28+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=da7933ecc30e37b119756cb02b89a6ad99db22e0'/>
<id>da7933ecc30e37b119756cb02b89a6ad99db22e0</id>
<content type='text'>
Don't access PyInterpreterState.config member directly anymore, but
use new functions:

* _PyInterpreterState_GetConfig()
* _PyInterpreterState_SetConfig()
* _Py_GetConfig()</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Don't access PyInterpreterState.config member directly anymore, but
use new functions:

* _PyInterpreterState_GetConfig()
* _PyInterpreterState_SetConfig()
* _Py_GetConfig()</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39947: Add _PyThreadState_GetDict() function (GH-19160)</title>
<updated>2020-03-25T20:22:55+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-03-25T20:22:55+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=0e427c6d159e86f17270770cd8dc37372e3c4004'/>
<id>0e427c6d159e86f17270770cd8dc37372e3c4004</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-20526: Fix PyThreadState_Clear(): don't decref frame (GH-19120)</title>
<updated>2020-03-24T15:32:26+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-03-24T15:32:26+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=5804f878e779712e803be927ca8a6df389d82cdf'/>
<id>5804f878e779712e803be927ca8a6df389d82cdf</id>
<content type='text'>
PyThreadState.frame is a borrowed reference, not a strong reference:
PyThreadState_Clear() must not call Py_CLEAR(tstate-&gt;frame).

Remove test_threading.test_warnings_at_exit(): we cannot warranty
that the Python thread state of daemon threads is cleared in a
reliable way during Python shutdown.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
PyThreadState.frame is a borrowed reference, not a strong reference:
PyThreadState_Clear() must not call Py_CLEAR(tstate-&gt;frame).

Remove test_threading.test_warnings_at_exit(): we cannot warranty
that the Python thread state of daemon threads is cleared in a
reliable way during Python shutdown.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39946: Remove _PyThreadState_GetFrame (GH-19094)</title>
<updated>2020-03-20T16:46:56+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-03-20T16:46:56+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=6723e933c4d90a408cf3818362a0e4de6d84c932'/>
<id>6723e933c4d90a408cf3818362a0e4de6d84c932</id>
<content type='text'>
Remove _PyRuntime.getframe hook and remove _PyThreadState_GetFrame
macro which was an alias to _PyRuntime.getframe. They were only
exposed by the internal C API. Remove also PyThreadFrameGetter type.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove _PyRuntime.getframe hook and remove _PyThreadState_GetFrame
macro which was an alias to _PyRuntime.getframe. They were only
exposed by the internal C API. Remove also PyThreadFrameGetter type.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39947: Add PyInterpreterState_Get() function (GH-18979)</title>
<updated>2020-03-13T17:15:33+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-03-13T17:15:33+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=be79373a78c0d75fc715ab64253c9b757987a848'/>
<id>be79373a78c0d75fc715ab64253c9b757987a848</id>
<content type='text'>
* Rename _PyInterpreterState_Get() to PyInterpreterState_Get() and
  move it the limited C API.
* Add _PyInterpreterState_Get() alias to PyInterpreterState_Get() for
  backward compatibility with Python 3.8.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Rename _PyInterpreterState_Get() to PyInterpreterState_Get() and
  move it the limited C API.
* Add _PyInterpreterState_Get() alias to PyInterpreterState_Get() for
  backward compatibility with Python 3.8.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-38500: Add _PyInterpreterState_SetEvalFrameFunc() (GH-17340)</title>
<updated>2020-03-12T22:18:39+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2020-03-12T22:18:39+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=0b72b23fb0c130279f65f3bcd23521acf4a98c88'/>
<id>0b72b23fb0c130279f65f3bcd23521acf4a98c88</id>
<content type='text'>
PyInterpreterState.eval_frame function now requires a tstate (Python
thread state) parameter.

Add private functions to the C API to get and set the frame
evaluation function:

* Add tstate parameter to _PyFrameEvalFunction function type.
* Add _PyInterpreterState_GetEvalFrameFunc() and
  _PyInterpreterState_SetEvalFrameFunc() functions.
* Add tstate parameter to _PyEval_EvalFrameDefault().</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
PyInterpreterState.eval_frame function now requires a tstate (Python
thread state) parameter.

Add private functions to the C API to get and set the frame
evaluation function:

* Add tstate parameter to _PyFrameEvalFunction function type.
* Add _PyInterpreterState_GetEvalFrameFunc() and
  _PyInterpreterState_SetEvalFrameFunc() functions.
* Add tstate parameter to _PyEval_EvalFrameDefault().</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-38858: _PyImport_FixupExtensionObject() handles subinterpreters (GH-17350)</title>
<updated>2019-11-22T17:52:27+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2019-11-22T17:52:27+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=82c83bd907409c287a5bd0d0f4598f2c0538f34d'/>
<id>82c83bd907409c287a5bd0d0f4598f2c0538f34d</id>
<content type='text'>
If _PyImport_FixupExtensionObject() is called from a subinterpreter,
leave extensions unchanged and don't copy the module dictionary
into def-&gt;m_base.m_copy.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If _PyImport_FixupExtensionObject() is called from a subinterpreter,
leave extensions unchanged and don't copy the module dictionary
into def-&gt;m_base.m_copy.</pre>
</div>
</content>
</entry>
</feed>
