Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix typo in multiprocessing.pool.AsyncResult.successful doc. #17932

Merged
merged 1 commit into from
Jan 15, 2020

Conversation

awecx
Copy link
Contributor

@awecx awecx commented Jan 9, 2020

Since 3.7 successful raises a ValueError as explained in the next text block from the documentation:

Changed in version 3.7: If the result is not ready, ValueError is raised instead of AssertionError.

No issue associated with this PR.
Should be backported in 3.7 and 3.8.

Automerge-Triggered-By: @pitrou

Copy link
Contributor

@aeros aeros left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR @awecx.

I confirmed from the source code that AsyncResult.successful() does indeed raise a ValueError instead of an AssertionError:

def successful(self):
if not self.ready():
raise ValueError("{0!r} not ready".format(self))
return self._success

LGTM. This is also present in the 3.8 and 3.7 branches, so this PR should be backported to those versions as well.

@aeros
Copy link
Contributor

aeros commented Jan 9, 2020

Added @pitrou as a reviewer for the PR, since he's an active expert for the multiprocessing module.

@awecx
Copy link
Contributor Author

awecx commented Jan 10, 2020

Thanks for the PR @awecx.

I confirmed from the source code that AsyncResult.successful() does indeed raise a ValueError instead of an AssertionError:

def successful(self):
if not self.ready():
raise ValueError("{0!r} not ready".format(self))
return self._success

LGTM. This is also present in the 3.8 and 3.7 branches, so this PR should be backported to those versions as well.

Thanks @aeros for the clarification. Indeed I should have proven the typo claim more clearly:
@pitrou if double check is necessary, you can run the following snippet:

from multiprocessing import Pool
from time import sleep

with Pool(processes=1) as pool:
    result = pool.apply_async(sleep, (10000,))
    result.successful()

Copy link
Member

@pitrou pitrou left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

@miss-islington
Copy link
Contributor

Thanks @awecx for the PR 🌮🎉.. I'm working now to backport this PR to: 3.7, 3.8.
🐍🍒⛏🤖

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Jan 15, 2020
…H-17932)

Since 3.7 `successful` raises a `ValueError` as explained in the next text block from the documentation:

_Changed in version 3.7: If the result is not ready, ValueError is raised instead of AssertionError._

No issue associated with this PR.
Should be backported in 3.7 and 3.8.
(cherry picked from commit dc0284e)

Co-authored-by: Antoine <43954001+awecx@users.noreply.github.com>
@bedevere-bot
Copy link

GH-18015 is a backport of this pull request to the 3.8 branch.

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Jan 15, 2020
…H-17932)

Since 3.7 `successful` raises a `ValueError` as explained in the next text block from the documentation:

_Changed in version 3.7: If the result is not ready, ValueError is raised instead of AssertionError._

No issue associated with this PR.
Should be backported in 3.7 and 3.8.
(cherry picked from commit dc0284e)

Co-authored-by: Antoine <43954001+awecx@users.noreply.github.com>
@bedevere-bot
Copy link

GH-18016 is a backport of this pull request to the 3.7 branch.

miss-islington added a commit that referenced this pull request Jan 15, 2020
…H-17932) (GH-18015)

Since 3.7 `successful` raises a `ValueError` as explained in the next text block from the documentation:

_Changed in version 3.7: If the result is not ready, ValueError is raised instead of AssertionError._

No issue associated with this PR.
Should be backported in 3.7 and 3.8.
(cherry picked from commit dc0284e)


Co-authored-by: Antoine <43954001+awecx@users.noreply.github.com>

Automerge-Triggered-By: @pitrou
miss-islington added a commit that referenced this pull request Jan 15, 2020
…H-17932) (GH-18016)

Since 3.7 `successful` raises a `ValueError` as explained in the next text block from the documentation:

_Changed in version 3.7: If the result is not ready, ValueError is raised instead of AssertionError._

No issue associated with this PR.
Should be backported in 3.7 and 3.8.
(cherry picked from commit dc0284e)


Co-authored-by: Antoine <43954001+awecx@users.noreply.github.com>

Automerge-Triggered-By: @pitrou
sthagen added a commit to sthagen/python-cpython that referenced this pull request Jan 15, 2020
Fix typo in multiprocessing.pool.AsyncResult.successful doc. (pythonGH-17932)
shihai1991 pushed a commit to shihai1991/cpython that referenced this pull request Jan 31, 2020
…H-17932)

Since 3.7 `successful` raises a `ValueError` as explained in the next text block from the documentation:

_Changed in version 3.7: If the result is not ready, ValueError is raised instead of AssertionError._

No issue associated with this PR.
Should be backported in 3.7 and 3.8.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Documentation in the Doc dir skip issue skip news
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants