This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Incorrect TimeoutError referenced in concurrent.futures documentation
Type: Stage: resolved
Components: Documentation Versions: Python 3.6, Python 3.5
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: orsenthil Nosy List: bquinlan, docs@python, gumblex, martin.panter, orsenthil, python-dev, ryder.lewis
Priority: normal Keywords: patch

Created on 2015-04-15 03:33 by ryder.lewis, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
issue23962.patch ryder.lewis, 2015-04-15 03:37 review
Messages (5)
msg241074 - (view) Author: Ryder Lewis (ryder.lewis) * Date: 2015-04-15 03:33
The documentation at https://docs.python.org/3/library/concurrent.futures.html has several functions that case raise a TimeoutError. The hyperlink generated for TimeoutError links to the built-in exception https://docs.python.org/3/library/exceptions.html#TimeoutError. However, the exception raised is a concurrent.futures._base.TimeoutError exception instead, which is undocumented.
msg241076 - (view) Author: Ryder Lewis (ryder.lewis) * Date: 2015-04-15 03:37
I attached a small patch that fixes the documentation, and also documents the other missing exceptions from concurrent.futures documentation.
msg255990 - (view) Author: Martin Panter (martin.panter) * (Python committer) Date: 2015-12-05 23:05
A similar problem used to exist with asyncio.TimeoutError: Issue 21376.

There is no class called concurrent.future.Error, so I would remove that bit. Otherwise, the rest of the patch looks worthwhile.

With asyncio and multiprocessing, the exception name is spelt out in full, including the module prefix. Maybe it could also be done here to be less ambiguous. When reading it with an ordinary web browser, you don’t get to see the target of the hyperlinks. On the other hand, a full “concurrent.futures.TimeoutError” is rather long and unwieldy. I’m not sure.
msg258568 - (view) Author: Roundup Robot (python-dev) (Python triager) Date: 2016-01-19 02:46
New changeset 673d1ccea050 by Senthil Kumaran in branch '3.5':
issue23962 - Reference the correct TimeoutError in concurrent.futures documentation.
https://hg.python.org/cpython/rev/673d1ccea050

New changeset 2b0c7b67eca5 by Senthil Kumaran in branch 'default':
merge from 3.5
https://hg.python.org/cpython/rev/2b0c7b67eca5
msg258569 - (view) Author: Senthil Kumaran (orsenthil) * (Python committer) Date: 2016-01-19 02:47
Thanks for the report and the patch. I have fixed that in 3.5 and 3.6 docs. I found it reasonable to include the full module path for TimeoutError makeing it consist with asyncio and multiprocessing TimeoutError.

Also, Error exception is not exposed via __all__ so, left this out in the documentation.
History
Date User Action Args
2022-04-11 14:58:15adminsetgithub: 68150
2016-01-19 02:47:40orsenthilsetstatus: open -> closed

assignee: docs@python -> orsenthil
versions: + Python 3.6, - Python 3.4
nosy: + orsenthil

messages: + msg258569
resolution: fixed
stage: patch review -> resolved
2016-01-19 02:46:03python-devsetnosy: + python-dev
messages: + msg258568
2015-12-05 23:05:17martin.pantersetnosy: + martin.panter
messages: + msg255990
2015-12-05 13:09:22gumblexsetnosy: + gumblex
2015-04-15 04:51:17ned.deilysetnosy: + bquinlan

stage: patch review
2015-04-15 03:37:53ryder.lewissetfiles: + issue23962.patch
keywords: + patch
messages: + msg241076
2015-04-15 03:33:52ryder.lewiscreate