<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/cpython-git.git/Include/cpython, branch master</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>Fix typos in the Include directory (GH-28745)</title>
<updated>2021-10-06T18:32:38+00:00</updated>
<author>
<name>Christian Clauss</name>
<email>cclauss@me.com</email>
</author>
<published>2021-10-06T18:32:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=8e8f7522171ef82f2f5049940f815e00e38c6f42'/>
<id>8e8f7522171ef82f2f5049940f815e00e38c6f42</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-40116: Add insertion order bit-vector to dict values to allow dicts to share keys more freely. (GH-28520)</title>
<updated>2021-10-06T12:19:53+00:00</updated>
<author>
<name>Mark Shannon</name>
<email>mark@hotpy.org</email>
</author>
<published>2021-10-06T12:19:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=a7252f88d3fa33036bdd6036b8c97bc785ed6f17'/>
<id>a7252f88d3fa33036bdd6036b8c97bc785ed6f17</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-41710: Add private _PyDeadline_Get() function (GH-28674)</title>
<updated>2021-10-01T11:29:25+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2021-10-01T11:29:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=833fdf126c8fe77fd17e8a8ffbc5c571b3bf64bd'/>
<id>833fdf126c8fe77fd17e8a8ffbc5c571b3bf64bd</id>
<content type='text'>
Add a private C API for deadlines: add _PyDeadline_Init() and
_PyDeadline_Get() functions.

* Add _PyTime_Add() and _PyTime_Mul() functions which compute t1+t2
  and t1*t2 and clamp the result on overflow.
* _PyTime_MulDiv() now uses _PyTime_Add() and _PyTime_Mul().</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add a private C API for deadlines: add _PyDeadline_Init() and
_PyDeadline_Get() functions.

* Add _PyTime_Add() and _PyTime_Mul() functions which compute t1+t2
  and t1*t2 and clamp the result on overflow.
* _PyTime_MulDiv() now uses _PyTime_Add() and _PyTime_Mul().</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-41710: Document _PyTime_t API in pytime.h (GH-28647)</title>
<updated>2021-09-30T09:23:03+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2021-09-30T09:23:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=b34dd58fee707b8044beaf878962a6fa12b304dc'/>
<id>b34dd58fee707b8044beaf878962a6fa12b304dc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-41710: PyThread_acquire_lock_timed() clamps the timout (GH-28643)</title>
<updated>2021-09-30T08:16:51+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2021-09-30T08:16:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=37b8294d6295ca12553fd7c98778be71d24f4b24'/>
<id>37b8294d6295ca12553fd7c98778be71d24f4b24</id>
<content type='text'>
PyThread_acquire_lock_timed() now clamps the timeout into the
[_PyTime_MIN; _PyTime_MAX] range (_PyTime_t type) if it is too large,
rather than calling Py_FatalError() which aborts the process.

PyThread_acquire_lock_timed() no longer uses
MICROSECONDS_TO_TIMESPEC() to compute sem_timedwait() argument, but
_PyTime_GetSystemClock() and _PyTime_AsTimespec_truncate().

Fix _thread.TIMEOUT_MAX value on Windows: the maximum timeout is
0x7FFFFFFF milliseconds (around 24.9 days), not 0xFFFFFFFF
milliseconds (around 49.7 days).

Set PY_TIMEOUT_MAX to 0x7FFFFFFF milliseconds, rather than 0xFFFFFFFF
milliseconds.

Fix PY_TIMEOUT_MAX overflow test: replace (us &gt;= PY_TIMEOUT_MAX) with
(us &gt; PY_TIMEOUT_MAX).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
PyThread_acquire_lock_timed() now clamps the timeout into the
[_PyTime_MIN; _PyTime_MAX] range (_PyTime_t type) if it is too large,
rather than calling Py_FatalError() which aborts the process.

PyThread_acquire_lock_timed() no longer uses
MICROSECONDS_TO_TIMESPEC() to compute sem_timedwait() argument, but
_PyTime_GetSystemClock() and _PyTime_AsTimespec_truncate().

Fix _thread.TIMEOUT_MAX value on Windows: the maximum timeout is
0x7FFFFFFF milliseconds (around 24.9 days), not 0xFFFFFFFF
milliseconds (around 49.7 days).

Set PY_TIMEOUT_MAX to 0x7FFFFFFF milliseconds, rather than 0xFFFFFFFF
milliseconds.

Fix PY_TIMEOUT_MAX overflow test: replace (us &gt;= PY_TIMEOUT_MAX) with
(us &gt; PY_TIMEOUT_MAX).</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-41710: Add pytime_add() and pytime_mul() (GH-28642)</title>
<updated>2021-09-30T01:07:11+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2021-09-30T01:07:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=d62d925823b005c33b432e527562b573a3a89635'/>
<id>d62d925823b005c33b432e527562b573a3a89635</id>
<content type='text'>
Add pytime_add() and pytime_mul() functions to pytime.c to compute
t+t2 and t*k with clamping to [_PyTime_MIN; _PyTime_MAX].

Fix pytime.h: _PyTime_FromTimeval() is not implemented on Windows.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add pytime_add() and pytime_mul() functions to pytime.c to compute
t+t2 and t*k with clamping to [_PyTime_MIN; _PyTime_MAX].

Fix pytime.h: _PyTime_FromTimeval() is not implemented on Windows.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-41710: Add _PyTime_AsTimespec_clamp() (GH-28629)</title>
<updated>2021-09-30T00:11:41+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2021-09-30T00:11:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=09796f2f142fdb1214f34a3ca917959ecb32a88b'/>
<id>09796f2f142fdb1214f34a3ca917959ecb32a88b</id>
<content type='text'>
Add the _PyTime_AsTimespec_clamp() function: similar to
_PyTime_AsTimespec(), but clamp to _PyTime_t min/max and don't raise
an exception.

PyThread_acquire_lock_timed() now uses _PyTime_AsTimespec_clamp() to
remove the Py_UNREACHABLE() code path.

* Add _PyTime_AsTime_t() function.
* Add PY_TIME_T_MIN and PY_TIME_T_MAX constants.
* Replace _PyTime_AsTimeval_noraise() with _PyTime_AsTimeval_clamp().
* Add pytime_divide_round_up() function.
* Fix integer overflow in pytime_divide().
* Add pytime_divmod() function.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add the _PyTime_AsTimespec_clamp() function: similar to
_PyTime_AsTimespec(), but clamp to _PyTime_t min/max and don't raise
an exception.

PyThread_acquire_lock_timed() now uses _PyTime_AsTimespec_clamp() to
remove the Py_UNREACHABLE() code path.

* Add _PyTime_AsTime_t() function.
* Add PY_TIME_T_MIN and PY_TIME_T_MAX constants.
* Replace _PyTime_AsTimeval_noraise() with _PyTime_AsTimeval_clamp().
* Add pytime_divide_round_up() function.
* Fix integer overflow in pytime_divide().
* Add pytime_divmod() function.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-45211: Remember the stdlib dir during startup. (gh-28586)</title>
<updated>2021-09-28T18:18:28+00:00</updated>
<author>
<name>Eric Snow</name>
<email>ericsnowcurrently@gmail.com</email>
</author>
<published>2021-09-28T18:18:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=0c50b8c0b8274d54d6b71ed7bd21057d3642f138'/>
<id>0c50b8c0b8274d54d6b71ed7bd21057d3642f138</id>
<content type='text'>
During runtime startup we figure out the stdlib dir but currently throw that information away. This change preserves it and exposes it via PyConfig.stdlib_dir, _Py_GetStdlibDir(), and sys._stdlib_dir.

https://bugs.python.org/issue45211</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
During runtime startup we figure out the stdlib dir but currently throw that information away. This change preserves it and exposes it via PyConfig.stdlib_dir, _Py_GetStdlibDir(), and sys._stdlib_dir.

https://bugs.python.org/issue45211</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-21302: time.sleep() uses waitable timer on Windows (GH-28483)</title>
<updated>2021-09-22T14:09:30+00:00</updated>
<author>
<name>Victor Stinner</name>
<email>vstinner@python.org</email>
</author>
<published>2021-09-22T14:09:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=58f8adfda3c2b42f654a55500e8e3a6433cb95f2'/>
<id>58f8adfda3c2b42f654a55500e8e3a6433cb95f2</id>
<content type='text'>
On Windows, time.sleep() now uses a waitable timer which has a
resolution of 100 ns (10^-7 sec). Previously, it had a solution of 1
ms (10^-3 sec).

* On Windows, time.sleep() now calls PyErr_CheckSignals() before
  resetting the SIGINT event.
* Add _PyTime_As100Nanoseconds() function.
* Complete and update time.sleep() documentation.

Co-authored-by: Livius &lt;egyszeregy@freemail.hu&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
On Windows, time.sleep() now uses a waitable timer which has a
resolution of 100 ns (10^-7 sec). Previously, it had a solution of 1
ms (10^-3 sec).

* On Windows, time.sleep() now calls PyErr_CheckSignals() before
  resetting the SIGINT event.
* Add _PyTime_As100Nanoseconds() function.
* Complete and update time.sleep() documentation.

Co-authored-by: Livius &lt;egyszeregy@freemail.hu&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[codemod] Fix non-matching bracket pairs (GH-28473)</title>
<updated>2021-09-21T23:09:00+00:00</updated>
<author>
<name>Mohamad Mansour</name>
<email>66031317+mohamadmansourX@users.noreply.github.com</email>
</author>
<published>2021-09-21T23:09:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=8f943ca25732d548cf9f0b0393ba8d582fb93e29'/>
<id>8f943ca25732d548cf9f0b0393ba8d582fb93e29</id>
<content type='text'>
Co-authored-by: Terry Jan Reedy &lt;tjreedy@udel.edu&gt;
Co-authored-by: Serhiy Storchaka &lt;storchaka@gmail.com&gt;
Co-authored-by: Łukasz Langa &lt;lukasz@langa.pl&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-authored-by: Terry Jan Reedy &lt;tjreedy@udel.edu&gt;
Co-authored-by: Serhiy Storchaka &lt;storchaka@gmail.com&gt;
Co-authored-by: Łukasz Langa &lt;lukasz@langa.pl&gt;</pre>
</div>
</content>
</entry>
</feed>
