Title: asyncio.Lock documentation in Py3.8 lacks parts presented in documentation in Py3.6
Type: enhancement Stage: resolved
Components: asyncio, Documentation Versions: Python 3.8
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: docs@python Nosy List: asvetlov, docs@python, germn, hniksic, matrixise, miss-islington, yselivanov
Priority: normal Keywords: patch

Created on 2019-05-04 14:20 by germn, last changed 2019-05-29 18:24 by miss-islington. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 13082 merged python-dev, 2019-05-04 17:47
PR 13659 merged miss-islington, 2019-05-29 17:30
Messages (11)
msg341385 - (view) Author: Mikhail Gerasimov (germn) Date: 2019-05-04 14:20

First version is much more detailed.
It allows to avoid confusions like one with unlocking order:
msg341394 - (view) Author: Hrvoje Nikšić (hniksic) * Date: 2019-05-04 17:39
Also, the docstring of asyncio.Lock still states:

    When more than one coroutine is blocked in acquire() waiting for
    the state to turn to unlocked, only one coroutine proceeds when a
    release() call resets the state to unlocked; first coroutine which
    is blocked in acquire() is being processed.
msg341720 - (view) Author: Stéphane Wirtel (matrixise) * (Python committer) Date: 2019-05-07 13:13
Hi hniksic,

Could you add your Github Account to your BPO account, without that, we can't work on your PR, and you need to sign the CLA.

Thank you
msg341735 - (view) Author: Hrvoje Nikšić (hniksic) * Date: 2019-05-07 14:35
How do I connect the accounts?

Please note that I've previously submitted PRs which have been accepted, e.g. and
msg341741 - (view) Author: Hrvoje Nikšić (hniksic) * Date: 2019-05-07 14:54
Ok, found it, and I've now updated the github name on my bpo account. I'll gladly sign the CLA if needed, I thought it wasn't necessary for small changes based on previous experience. Please advise whether it's necessary here.
msg341744 - (view) Author: Stéphane Wirtel (matrixise) * (Python committer) Date: 2019-05-07 15:06
If I read the Licensing section into the devguide, a contributor (me, your, etc..) has to sign the CLA.

"To accept your change we must have your formal approval for distributing your work under the PSF license."

the verb is must -> required!

Thank you
msg341758 - (view) Author: Andrew Svetlov (asvetlov) * (Python committer) Date: 2019-05-07 15:48
I would say that unblock order is an implementation detail (which is unlikely be changed though).

I'm biased how should we document it.
Yuri, your opinion is very welcome.
msg342195 - (view) Author: Hrvoje Nikšić (hniksic) * Date: 2019-05-11 14:59
@matrixise I've signed the CLA in the meantime, and it's now confirmed by

Thanks for the pointer.
msg342207 - (view) Author: Stéphane Wirtel (matrixise) * (Python committer) Date: 2019-05-11 16:37
Hi Hrvoje Nikšić,

Thank you for the CLA, now, we need the opinion from Yury and their approval, I am not an expert of the asyncio.

Thank you,
msg343901 - (view) Author: miss-islington (miss-islington) Date: 2019-05-29 17:08
New changeset 34f4f5efea730504216ee19f237734e0bb0104ee by Miss Islington (bot) (Hrvoje Nikšić) in branch 'master':
bpo-36794: Document that Lock.acquire is fair. (GH-13082)
msg343907 - (view) Author: miss-islington (miss-islington) Date: 2019-05-29 18:24
New changeset 4e1e887203ef069bf293ecabd945f7567d6a4879 by Miss Islington (bot) in branch '3.7':
bpo-36794: Document that Lock.acquire is fair. (GH-13082)
Date User Action Args
2019-05-29 18:24:40miss-islingtonsetmessages: + msg343907
2019-05-29 17:30:46miss-islingtonsetpull_requests: + pull_request13551
2019-05-29 17:11:21asvetlovsetstatus: open -> closed
resolution: fixed
stage: patch review -> resolved
2019-05-29 17:08:20miss-islingtonsetnosy: + miss-islington
messages: + msg343901
2019-05-11 16:37:08matrixisesetmessages: + msg342207
2019-05-11 14:59:05hniksicsetmessages: + msg342195
2019-05-07 15:48:17asvetlovsetmessages: + msg341758
2019-05-07 15:06:54matrixisesetmessages: + msg341744
2019-05-07 14:54:16hniksicsetmessages: + msg341741
2019-05-07 14:35:02hniksicsetmessages: + msg341735
2019-05-07 13:13:11matrixisesetnosy: + matrixise
messages: + msg341720
2019-05-04 17:47:37python-devsetkeywords: + patch
stage: patch review
pull_requests: + pull_request12997
2019-05-04 17:39:18hniksicsetnosy: + hniksic
messages: + msg341394
2019-05-04 14:20:06germncreate