Skip to content

Commit 505127f

Browse files
committed
Merge branch 'main' of https://github.com/CarlosEduR/cpython into fix-issue-137696
2 parents a56b6e4 + 3706ef6 commit 505127f

File tree

120 files changed

+1610
-945
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

120 files changed

+1610
-945
lines changed

Doc/howto/remote_debugging.rst

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -374,13 +374,13 @@ To locate a thread:
374374
reliable thread to target.
375375

376376
3. Optionally, use the offset ``interpreter_state.threads_head`` to iterate
377-
through the linked list of all thread states. Each ``PyThreadState`` structure
378-
contains a ``native_thread_id`` field, which may be compared to a target thread
379-
ID to find a specific thread.
377+
through the linked list of all thread states. Each ``PyThreadState``
378+
structure contains a ``native_thread_id`` field, which may be compared to
379+
a target thread ID to find a specific thread.
380380

381-
1. Once a valid ``PyThreadState`` has been found, its address can be used in
382-
later steps of the protocol, such as writing debugger control fields and
383-
scheduling execution.
381+
4. Once a valid ``PyThreadState`` has been found, its address can be used in
382+
later steps of the protocol, such as writing debugger control fields and
383+
scheduling execution.
384384

385385
The following is an example implementation that locates the main thread state::
386386

@@ -454,15 +454,15 @@ its fields are defined by the ``_Py_DebugOffsets`` structure and include the
454454
following:
455455

456456
- ``debugger_script_path``: A fixed-size buffer that holds the full path to a
457-
Python source file (``.py``). This file must be accessible and readable by
458-
the target process when execution is triggered.
457+
Python source file (``.py``). This file must be accessible and readable by
458+
the target process when execution is triggered.
459459

460460
- ``debugger_pending_call``: An integer flag. Setting this to ``1`` tells the
461-
interpreter that a script is ready to be executed.
461+
interpreter that a script is ready to be executed.
462462

463463
- ``eval_breaker``: A field checked by the interpreter during execution.
464-
Setting bit 5 (``_PY_EVAL_PLEASE_STOP_BIT``, value ``1U << 5``) in this
465-
field causes the interpreter to pause and check for debugger activity.
464+
Setting bit 5 (``_PY_EVAL_PLEASE_STOP_BIT``, value ``1U << 5``) in this
465+
field causes the interpreter to pause and check for debugger activity.
466466

467467
To complete the injection, the debugger must perform the following steps:
468468

Doc/library/asyncio-eventloop.rst

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,6 +304,12 @@ clocks to track time.
304304
custom :class:`contextvars.Context` for the *callback* to run in.
305305
The current context is used when no *context* is provided.
306306

307+
.. note::
308+
309+
For performance, callbacks scheduled with :meth:`loop.call_later`
310+
may run up to one clock-resolution early (see
311+
``time.get_clock_info('monotonic').resolution``).
312+
307313
.. versionchanged:: 3.7
308314
The *context* keyword-only parameter was added. See :pep:`567`
309315
for more details.
@@ -324,6 +330,12 @@ clocks to track time.
324330
An instance of :class:`asyncio.TimerHandle` is returned which can
325331
be used to cancel the callback.
326332

333+
.. note::
334+
335+
For performance, callbacks scheduled with :meth:`loop.call_at`
336+
may run up to one clock-resolution early (see
337+
``time.get_clock_info('monotonic').resolution``).
338+
327339
.. versionchanged:: 3.7
328340
The *context* keyword-only parameter was added. See :pep:`567`
329341
for more details.

Doc/library/asyncio-stream.rst

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -321,6 +321,9 @@ StreamWriter
321321
stream.write(data)
322322
await stream.drain()
323323

324+
.. note::
325+
The *data* buffer should be a C contiguous one-dimensional :term:`bytes-like object <bytes-like object>`.
326+
324327
.. method:: writelines(data)
325328

326329
The method writes a list (or any iterable) of bytes to the underlying socket

0 commit comments

Comments
 (0)