<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/cpython-git.git/Python/traceback.c, branch v3.7.13</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-33029: Fix signatures of getter and setter functions. (GH-10746)</title>
<updated>2018-11-27T17:58:07+00:00</updated>
<author>
<name>Miss Islington (bot)</name>
<email>31488909+miss-islington@users.noreply.github.com</email>
</author>
<published>2018-11-27T17:58:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=5ceb7018dc63fab96f81d05e62bbe704e9f10cb9'/>
<id>5ceb7018dc63fab96f81d05e62bbe704e9f10cb9</id>
<content type='text'>
Fix also return type for few other functions (clear, releasebuffer).
(cherry picked from commit d4f9cf5545d6d8844e0726552ef2e366f5cc3abd)

Co-authored-by: Serhiy Storchaka &lt;storchaka@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix also return type for few other functions (clear, releasebuffer).
(cherry picked from commit d4f9cf5545d6d8844e0726552ef2e366f5cc3abd)

Co-authored-by: Serhiy Storchaka &lt;storchaka@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-34588: Fix an off-by-one error in traceback formatting. (GH-9077)</title>
<updated>2018-09-10T16:00:08+00:00</updated>
<author>
<name>Miss Islington (bot)</name>
<email>31488909+miss-islington@users.noreply.github.com</email>
</author>
<published>2018-09-10T16:00:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=49020174305ca3dc90a811b03a05f44873297c61'/>
<id>49020174305ca3dc90a811b03a05f44873297c61</id>
<content type='text'>
The recursive frame pruning code always undercounted the number of elided frames
by one. That is, in the "[Previous line repeated N more times]" message, N would
always be one too few. Near the recursive pruning cutoff, one frame could be
silently dropped. That situation is demonstrated in the OP of the bug report.

The fix is to start the identical frame counter at 1.
(cherry picked from commit d545869d084e70d4838310e79b52a25a72a1ca56)

Co-authored-by: Benjamin Peterson &lt;benjamin@python.org&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The recursive frame pruning code always undercounted the number of elided frames
by one. That is, in the "[Previous line repeated N more times]" message, N would
always be one too few. Near the recursive pruning cutoff, one frame could be
silently dropped. That situation is demonstrated in the OP of the bug report.

The fix is to start the identical frame counter at 1.
(cherry picked from commit d545869d084e70d4838310e79b52a25a72a1ca56)

Co-authored-by: Benjamin Peterson &lt;benjamin@python.org&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-30579: Allow TracebackType creation and tb_next mutation from Python (GH-4793)</title>
<updated>2018-01-07T13:30:18+00:00</updated>
<author>
<name>Nathaniel J. Smith</name>
<email>njs@pobox.com</email>
</author>
<published>2018-01-07T13:30:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=e46a8af450210ee5c7f0459ad6beddbc626ae60f'/>
<id>e46a8af450210ee5c7f0459ad6beddbc626ae60f</id>
<content type='text'>
Third party projects may wish to hide their own internal machinery in
order to present more comprehensible tracebacks to end users
(e.g. Jinja2 and Trio both do this).

Previously such projects have had to rely on ctypes to do so:

  https://github.com/pallets/jinja/blob/fe3dadacdf4cf411d0a5b6bbd4d5234697a28af2/jinja2/debug.py#L345
  https://github.com/python-trio/trio/blob/1e86b1aee8c0c759f6f239ae53a05d0d3963c629/trio/_core/_multierror.py#L296

This provides a Python level API for creating and modifying real
Traceback objects, allowing tracebacks to be edited at runtime.

Patch by Nathaniel Smith.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Third party projects may wish to hide their own internal machinery in
order to present more comprehensible tracebacks to end users
(e.g. Jinja2 and Trio both do this).

Previously such projects have had to rely on ctypes to do so:

  https://github.com/pallets/jinja/blob/fe3dadacdf4cf411d0a5b6bbd4d5234697a28af2/jinja2/debug.py#L345
  https://github.com/python-trio/trio/blob/1e86b1aee8c0c759f6f239ae53a05d0d3963c629/trio/_core/_multierror.py#L296

This provides a Python level API for creating and modifying real
Traceback objects, allowing tracebacks to be edited at runtime.

Patch by Nathaniel Smith.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-31949: Fixed several issues in printing tracebacks (PyTraceBack_Print()). (#4289)</title>
<updated>2017-11-15T15:38:52+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2017-11-15T15:38:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=edad8eebeee3c99e324a7f1ac5073167c2b0b54d'/>
<id>edad8eebeee3c99e324a7f1ac5073167c2b0b54d</id>
<content type='text'>
* Setting sys.tracebacklimit to 0 or less now suppresses printing tracebacks.
* Setting sys.tracebacklimit to None now causes using the default limit.
* Setting sys.tracebacklimit to an integer larger than LONG_MAX now means using
  the limit LONG_MAX rather than the default limit.
* Fixed integer overflows in the case of more than 2**31 traceback items on
  Windows.
* Fixed output errors handling.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Setting sys.tracebacklimit to 0 or less now suppresses printing tracebacks.
* Setting sys.tracebacklimit to None now causes using the default limit.
* Setting sys.tracebacklimit to an integer larger than LONG_MAX now means using
  the limit LONG_MAX rather than the default limit.
* Fixed integer overflows in the case of more than 2**31 traceback items on
  Windows.
* Fixed output errors handling.
</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://git.baserock.org/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-30860: Consolidate stateful runtime globals. (#3397)</title>
<updated>2017-09-08T05:51:28+00:00</updated>
<author>
<name>Eric Snow</name>
<email>ericsnowcurrently@gmail.com</email>
</author>
<published>2017-09-08T05:51:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=2ebc5ce42a8a9e047e790aefbf9a94811569b2b6'/>
<id>2ebc5ce42a8a9e047e790aefbf9a94811569b2b6</id>
<content type='text'>
* group the (stateful) runtime globals into various topical structs
* consolidate the topical structs under a single top-level _PyRuntimeState struct
* add a check-c-globals.py script that helps identify runtime globals

Other globals are excluded (see globals.txt and check-c-globals.py).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* group the (stateful) runtime globals into various topical structs
* consolidate the topical structs under a single top-level _PyRuntimeState struct
* add a check-c-globals.py script that helps identify runtime globals

Other globals are excluded (see globals.txt and check-c-globals.py).</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-31370: Remove support for threads-less builds (#3385)</title>
<updated>2017-09-07T16:56:24+00:00</updated>
<author>
<name>Antoine Pitrou</name>
<email>pitrou@free.fr</email>
</author>
<published>2017-09-07T16:56:24+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=a6a4dc816d68df04a7d592e0b6af8c7ecc4d4344'/>
<id>a6a4dc816d68df04a7d592e0b6af8c7ecc4d4344</id>
<content type='text'>
* Remove Setup.config
* Always define WITH_THREAD for compatibility.

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Remove Setup.config
* Always define WITH_THREAD for compatibility.

</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-6532: Make the thread id an unsigned integer. (#781)</title>
<updated>2017-03-23T13:48:39+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2017-03-23T13:48:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=aefa7ebf0ff0f73feee7ab24f4cdcb2014d83ee5'/>
<id>aefa7ebf0ff0f73feee7ab24f4cdcb2014d83ee5</id>
<content type='text'>
* bpo-6532: Make the thread id an unsigned integer.

From C API side the type of results of PyThread_start_new_thread() and
PyThread_get_thread_ident(), the id parameter of
PyThreadState_SetAsyncExc(), and the thread_id field of PyThreadState
changed from "long" to "unsigned long".

* Restore a check in thread_get_ident().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* bpo-6532: Make the thread id an unsigned integer.

From C API side the type of results of PyThread_start_new_thread() and
PyThread_get_thread_ident(), the id parameter of
PyThreadState_SetAsyncExc(), and the thread_id field of PyThreadState
changed from "long" to "unsigned long".

* Restore a check in thread_get_ident().
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #23782: Fixed possible memory leak in _PyTraceback_Add() and exception</title>
<updated>2016-10-18T10:26:25+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2016-10-18T10:26:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=df0fd74ae8fa204aab51c35e10870fd99101e99c'/>
<id>df0fd74ae8fa204aab51c35e10870fd99101e99c</id>
<content type='text'>
loss in PyTraceBack_Here().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
loss in PyTraceBack_Here().
</pre>
</div>
</content>
</entry>
<entry>
<title>Issue #23782: Fixed possible memory leak in _PyTraceback_Add() and exception</title>
<updated>2016-10-18T10:23:18+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2016-10-18T10:23:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=04eb7772794a11bdb7ed7cd132adebb2ae527191'/>
<id>04eb7772794a11bdb7ed7cd132adebb2ae527191</id>
<content type='text'>
loss in PyTraceBack_Here().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
loss in PyTraceBack_Here().
</pre>
</div>
</content>
</entry>
</feed>
