<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/cpython-git.git/Include/objimpl.h, 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-33597: Reduce PyGC_Head size (GH-7043)</title>
<updated>2018-07-10T08:19:53+00:00</updated>
<author>
<name>INADA Naoki</name>
<email>methane@users.noreply.github.com</email>
</author>
<published>2018-07-10T08:19:53+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=5ac9e6eee5ed18172d70d28cf438df0be4e3b83d'/>
<id>5ac9e6eee5ed18172d70d28cf438df0be4e3b83d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<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>Fix typo in Include/objimpl.h, the word "has" was missing (GH-5568)</title>
<updated>2018-02-06T23:07:30+00:00</updated>
<author>
<name>Alexey</name>
<email>forestbiiird@gmail.com</email>
</author>
<published>2018-02-06T23:07:30+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=517da1e58f4c489d4b31579852cde5f7113da08e'/>
<id>517da1e58f4c489d4b31579852cde5f7113da08e</id>
<content type='text'>
It now reads: ...be aware that Python has no control over...</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It now reads: ...be aware that Python has no control over...</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-32030: Add pymain_get_global_config() (#4735)</title>
<updated>2017-12-06T16:26:10+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>victor.stinner@gmail.com</email>
</author>
<published>2017-12-06T16:26:10+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=6bf992a1ac6f3f4d0f83ead9c6403a76afdbe6eb'/>
<id>6bf992a1ac6f3f4d0f83ead9c6403a76afdbe6eb</id>
<content type='text'>
* Py_Main() now starts by reading Py_xxx configuration variables to
  only work on its own private structure, and then later writes back
  the configuration into these variables.
* Replace Py_GETENV() with pymain_get_env_var() which ignores empty
  variables.
* Add _PyCoreConfig.dump_refs
* Add _PyCoreConfig.malloc_stats
* _PyObject_DebugMallocStats() is now responsible to check if debug
  hooks are installed. The function returns 1 if stats were written,
  or 0 if the hooks are disabled. Mark _PyMem_PymallocEnabled() as
  static.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Py_Main() now starts by reading Py_xxx configuration variables to
  only work on its own private structure, and then later writes back
  the configuration into these variables.
* Replace Py_GETENV() with pymain_get_env_var() which ignores empty
  variables.
* Add _PyCoreConfig.dump_refs
* Add _PyCoreConfig.malloc_stats
* _PyObject_DebugMallocStats() is now responsible to check if debug
  hooks are installed. The function returns 1 if stats were written,
  or 0 if the hooks are disabled. Mark _PyMem_PymallocEnabled() as
  static.</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #29058: All stable API extensions added after Python 3.2 are now</title>
<updated>2016-12-27T12:57:39+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2016-12-27T12:57:39+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=34d0ac8027e23609e24588735b37b8d5a55f7223'/>
<id>34d0ac8027e23609e24588735b37b8d5a55f7223</id>
<content type='text'>
available only when Py_LIMITED_API is set to the PY_VERSION_HEX value of
the minimum Python version supporting this API.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
available only when Py_LIMITED_API is set to the PY_VERSION_HEX value of
the minimum Python version supporting this API.
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #26900: Excluded underscored names and other private API from limited API.</title>
<updated>2016-09-11T08:03:14+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2016-09-11T08:03:14+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=9fab79bcb5b83dc0247ce4cd60486341c73e7fd5'/>
<id>9fab79bcb5b83dc0247ce4cd60486341c73e7fd5</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't run garbage collection on interpreter exit if it was explicitly disabled</title>
<updated>2016-09-10T04:47:46+00:00</updated>
<author>
<name>Łukasz Langa</name>
<email>lukasz@langa.pl</email>
</author>
<published>2016-09-10T04:47:46+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=fef7e94fa12f21c09997bd02809e677830966646'/>
<id>fef7e94fa12f21c09997bd02809e677830966646</id>
<content type='text'>
by the user.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
by the user.
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #21233: Add new C functions: PyMem_RawCalloc(), PyMem_Calloc(),</title>
<updated>2014-05-02T20:31:14+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>victor.stinner@gmail.com</email>
</author>
<published>2014-05-02T20:31:14+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=db067af12a5ebb889874e47d8177f9c4a3dc9a68'/>
<id>db067af12a5ebb889874e47d8177f9c4a3dc9a68</id>
<content type='text'>
PyObject_Calloc(), _PyObject_GC_Calloc(). bytes(int) and bytearray(int) are now
using ``calloc()`` instead of ``malloc()`` for large objects which is faster
and use less memory (until the bytearray buffer is filled with data).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
PyObject_Calloc(), _PyObject_GC_Calloc(). bytes(int) and bytearray(int) are now
using ``calloc()`` instead of ``malloc()`` for large objects which is faster
and use less memory (until the bytearray buffer is filled with data).
</pre>
</div>
</content>
</entry>
<entry>
<title>cast negative numbers to size_t before shifting them (#20929)</title>
<updated>2014-03-15T01:15:29+00:00</updated>
<author>
<name>Benjamin Peterson</name>
<email>benjamin@python.org</email>
</author>
<published>2014-03-15T01:15:29+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=bdc4b02985e5d50301c554cb58b7f0ad24b1f68b'/>
<id>bdc4b02985e5d50301c554cb58b7f0ad24b1f68b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #18783: Removed existing mentions of Python long type in docstrings,</title>
<updated>2013-08-27T17:17:03+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2013-08-27T17:17:03+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/cpython-git.git/commit/?id=46e1ce214b5711e8dae63a1b5a0a7aafb371baf0'/>
<id>46e1ce214b5711e8dae63a1b5a0a7aafb371baf0</id>
<content type='text'>
error messages and comments.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
error messages and comments.
</pre>
</div>
</content>
</entry>
</feed>
