Commit graph

67 commits

Author SHA1 Message Date
Alexander Nordin
3964f97489
gh-137026: Add an explainer guide for asyncio (GH-137215)
* - Add an explainer guide (aka HOWTO, not how-to) for asyncio.

* Fix linter errors.

* - Enforce max line length of roughly 79 chars.
- Start sentences on new lines to minimize disruption of diffs.

* Add reference to subinterpreters.

* - Significantly reduce article size. Remove both example sections & "Which concurrency do I want" section.

* Align section-header lengths with section names.

* - Remove reference to deleted section.

* - Fix a variety of rote style guide items like title-alignment, use of ie and $, and so forth.
- Add links to other parts of the docs for keywords and objects like await, coro, task, future, etc.

* - One last title alignment.

* - Style nit.

* - Rework a variety of I statements.

* Lint fix.

* - Firm up commentary on yield from in corotuines.

* Update language comparing await and yield from.

* - Remove await-ing Tasks and futures section

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* - Address comments related to style & writing flow.

* per-thread event loop note.

* Add section describing coroutines roots in generators.

* Phrasing tweak.

* Use asyncio.create_task instead of asyncio.Task

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* small phrasing.

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* phrasing nit.

* style nits

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* phrasing nit

* Fix misnaming of async generator.

* phrasing nits.

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* consistent spacing

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* phrasing nits

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* add conclusion

* nits

* - Variety of style & grammar improvements thanks to ZeroIntensity's comments.

* - Make all directives start with a 3 space indent. Then 4 thereafter.

* - Use :linenos: instead of manually writing the line numbers.

* - Fix label typo for article.

* fix label link.

* Apply suggestions from code review

Co-authored-by: 🇺🇦 Sviatoslav Sydorenko (Святослав Сидоренко) <wk.cvs.github@sydorenko.org.ua>
Co-authored-by: Carol Willing <carolcode@willingconsulting.com>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* - introduce async-sleep name

* Phrasing

* nit

* ungendered octopus

* teammates

* jobs

* rework fella to penguin

* - remove byline; add seealso

* Change ref from asyncio to use seealso block.

* Remove typehints. Fix indentation in one code example.

* Slight rephrase for clarity.

* Make references point to asyncio. Wrap some long lines.

* - Variety of style/phrasing improvements based on PR feedback.

* phrasing.

* phrasing nit.

* Apply suggestions from code review

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Carol Willing <carolcode@willingconsulting.com>

* nit

* Apply suggestions from code review

Co-authored-by: Carol Willing <carolcode@willingconsulting.com>

* fix backticks.

* nits

* nit

* add section on asyncio.run

* title change under the hood.

* modify task coro example.

* howtos article link.

* prefer await without backticks.

* phrasing tweak.

* Rework phrasing around how await tasks pauses and returns control in the await section.

* move code block to beforfe explanation in coroutine under the hood.

* phrasing.

* link to yield from.

* style nits

* nit

* - Modify language re: event-loop cycling endlessly.
- Discuss why await was designed to not yield for coros.

* - Add a note about debug=True on asyncio.run to await coro section.

* clarity nit

* - Add two other references in seealso block.

* nit

* Language simplification

* Apply suggestions from code review

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>

* nit

* grammar fix.

* fix

* worker bees

* rework event loop paragraph to significantly deemphasize queues

* remove all references to queue besides the initial analogy.

* add note about garbage collection of tasks

* add practical note re: garbage collection

* phrasing nits

* re arrange note on task gc.

* line wrap nit

* Update Doc/howto/a-conceptual-overview-of-asyncio.rst

Co-authored-by: Kumar Aditya <kumaraditya@python.org>

* link to debug mode docs.

* readd part2 prefix.

* simplify title.

* fix titles. tihnk I messed this up earlier.

* avoid idiom in title.

* fix titles once agian.

* Apply suggestions from code review

Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>

* rework task gc example.

* phrasing tweak.

* tewak.

* nit

* nit

* nit

* nit

---------

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
Co-authored-by: 🇺🇦 Sviatoslav Sydorenko (Святослав Сидоренко) <wk.cvs.github@sydorenko.org.ua>
Co-authored-by: Carol Willing <carolcode@willingconsulting.com>
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
2025-08-08 22:29:51 -07:00
Yury Selivanov
188598851d
GH-91048: Add utils for capturing async call stack for asyncio programs and enable profiling (#124640)
Signed-off-by: Pablo Galindo <pablogsal@gmail.com>
Co-authored-by: Pablo Galindo <pablogsal@gmail.com>
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Savannah Ostrowski <savannahostrowski@gmail.com>
Co-authored-by: Jacob Coffee <jacob@z7x.org>
Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
2025-01-22 17:25:29 +01:00
Łukasz Langa
dc93d1125f
gh-121957: Emit audit events for python -i and python -m asyncio (GH-121958)
Relatedly, emit the `cpython.run_startup` event from the Python version of
`PYTHONSTARTUP` handling.
2024-07-22 13:04:08 +02:00
Ned Batchelder
bcb435ee8f
docs: module page titles should not start with a link to themselves (#117099) 2024-05-08 20:34:40 +01:00
InSync
1198076447
gh-111151: Convert monospaced directives to :ref: (#111152) 2023-10-24 08:22:08 -07:00
Victor Stinner
59f32a785f
gh-109435: Add Doc/library/cmdline.rst (#109436)
Document modules providing a command-line interface (CLI).
2023-09-19 13:57:28 +02:00
Carlton Gibson
5d868efde9
Added asyncio REPL example to docs. (#101243)
Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
2023-01-23 17:01:13 +05:30
Christian Heimes
e3b6ff19aa
gh-95451: Update docs for wasm32-emscripten and -wasi platforms (GH-95452)
Co-authored-by: Éric <merwok@netwok.org>
Co-authored-by: Michael Droettboom <mdboom@gmail.com>
Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com>
Co-authored-by: CAM Gerlach <CAM.Gerlach@Gerlach.CAM>
2022-08-02 21:00:41 +02:00
Alex Waygood
f4e317b304
gh-92417: asyncio docs: asyncio.run() is available on all supported Python versions (GH-92419) 2022-05-08 16:16:19 +03:00
Andrew Svetlov
ab89ccff3c
bpo-45099: Document asyncio internal API (GH-32166) 2022-04-01 00:06:07 +03:00
Andrew Svetlov
4119d2d7c9
bpo-47062: Implement asyncio.Runner context manager (GH-31799)
Co-authored-by: Zachary Ware <zach@python.org>
2022-03-24 21:51:16 +02:00
Kyle Stanley
f900064ac4 docs: Add asyncio source code links (GH-16640) 2019-10-10 19:18:46 -04:00
Yury Selivanov
471503954a
bpo-33649: Add a high-level section about Futures; few quick fixes (GH-9403)
Co-authored-by: Elvis Pranskevichus <elvis@magic.io>
2018-09-18 17:55:44 -04:00
Yury Selivanov
b042cf10c6
bpo-33649: Fix markup; add another note that asyncio.run is 3.7+ (GH-9389) 2018-09-18 02:47:54 -04:00
Elvis Pranskevichus
1fa2ec49be bpo-33649: A copy-editing pass on asyncio documentation (GH-9376) 2018-09-17 19:16:44 -04:00
Yury Selivanov
3085534c39
bpo-33649: Add a hello world example to asyncio.rst (GH-9374) 2018-09-17 18:41:59 -04:00
Yury Selivanov
394374e30c
bpo-33649: Add low-level APIs index. (GH-9364) 2018-09-17 15:35:24 -04:00
Yury Selivanov
805e27eff6
bpo-33649: Fix asyncio-dev (GH-9324) 2018-09-14 16:57:11 -07:00
Yury Selivanov
7372c3bbef
bpo-33649: Add high-level APIs cheat-sheet (GH-9319) 2018-09-14 15:11:24 -07:00
Yury Selivanov
6c7316439d
bpo-33649: Refresh asyncio docs landing page (GH-9322) 2018-09-14 14:57:39 -07:00
Yury Selivanov
3faaa8857a bpo-33649: Refresh Tasks and Futures pages (#9314)
* bpo-33649: Refresh Tasks and Futures pages

* Fixes

* Fix markup
2018-09-14 13:32:07 -07:00
Yury Selivanov
7c7605ff11
bpo-33649: First asyncio docs improvement pass (GH-9142)
Rewritten/updated sections:

* Event Loop APIs
* Transports & Protocols
* Streams
* Exceptions
* Policies
* Queues
* Subprocesses
* Platforms
2018-09-11 09:54:40 -07:00
Yury Selivanov
6db7a4b81a docs: asyncio is no longer provisional 2016-12-15 18:58:19 -05:00
Serhiy Storchaka
29b0a26822 Fixed double hyphens that are rendered to literal en-dashes in the documenation. 2016-12-04 10:20:55 +02:00
Terry Jan Reedy
fa089b9b0b Issue #22558: Add remaining doc links to source code for Python-coded modules.
Reformat header above separator line (added if missing) to a common format.
Patch by Yoni Lavi.
2016-06-11 15:02:54 -04:00
Yury Selivanov
c52e41d6b9 Make asyncio provisional 2015-08-31 11:42:31 -04:00
Guido van Rossum
75ead2b578 Remove warning about asyncio being provisional (it's not in 3.5 and up). 2015-08-02 15:50:27 +02:00
Victor Stinner
532c69a428 asyncio doc: begin with warnings on asyncio traps 2015-02-25 14:23:51 +01:00
Victor Stinner
615a58eaab asyncio doc: move queues to a new page 2015-02-25 13:55:43 +01:00
Georg Brandl
b7354a65ce Fixing broken links in doc, part 4: some more breaks and redirects 2014-10-29 10:57:37 +01:00
Nick Coghlan
af117ed3d7 Issue #22346: also include asyncio PEP 411 notice in 3.4 2014-09-06 19:43:06 +10:00
Terry Jan Reedy
9ff41803af Asyncio doc fixes: spelling, grammar, duplication. 2014-07-24 02:59:02 -04:00
Victor Stinner
aea82293be Issue #21680: Document asyncio event loops 2014-07-08 23:42:38 +02:00
Eli Bendersky
b73c83318d Various formatting & grammar fixes in asyncio* docs. 2014-02-09 06:07:47 -08:00
Brian Curtin
a1afeec9aa Spelling corrections. Submitted to python-dev by python@mrabarnett.plus.com 2014-02-08 18:36:14 -06:00
Victor Stinner
084443809f asyncio: document the new asyncio.subprocess module 2014-02-02 22:43:39 +01:00
Victor Stinner
9592edb834 asyncio doc: add "asyncio-" prefix to references 2014-02-02 15:03:02 +01:00
Victor Stinner
24f8ebf4c5 asyncio doc: Move streams to their own dedicated page 2014-01-23 11:05:01 +01:00
Victor Stinner
db39a0da0c asyncio: add a new "Develop with asyncio" section to the documentation 2014-01-16 18:58:01 +01:00
Georg Brandl
fa5a765506 Fix minor markup bug: sub-toctrees should not have :numbered: 2014-01-11 19:52:17 +01:00
Victor Stinner
99c2ab4b83 asyncio doc: oh, asyncio module has its own Future class
Improve also wait() documentation: mention that the first parameter is a
sequence
2013-12-03 19:17:25 +01:00
Victor Stinner
85a2be7da7 ayncio: replace the disclamer with a seealso section 2013-12-03 15:04:36 +01:00
Victor Stinner
ea3183f5b8 Split asyncio documentation into subfiles 2013-12-03 01:08:00 +01:00
Victor Stinner
fa2ce78a21 asyncio doc: change level of titles
Remove also a duplicated Protocols section!
2013-12-03 00:56:27 +01:00
Victor Stinner
b3be72cac3 asyncio doc: reorder sections 2013-12-03 00:49:26 +01:00
Victor Stinner
34d8df5171 asyncio: document wait() function 2013-12-03 00:42:59 +01:00
Victor Stinner
dd339a248c asyncio doc
* complete create_connection() prototype
* link to Server
* document get_extra_info() keys
2013-12-03 00:32:48 +01:00
Victor Stinner
0c924b83ee asyncio: sort some methods 2013-12-02 17:52:31 +01:00
Victor Stinner
b09f9b33d2 asyncio doc: group transport method by classes
Declare classes because they are mentionned in documentation of other functions
2013-12-02 17:46:04 +01:00
Victor Stinner
e91f180efe asyncio: more documentation 2013-12-02 17:40:48 +01:00