cancel-scope-no-checkpoint (ASYNC100)
Added in v0.0.269 · Related issues · View source
Derived from the flake8-async linter.
What it does
Checks for timeout context managers which do not contain a checkpoint.
For the purposes of this check, yield is considered a checkpoint,
since checkpoints may occur in the caller to which we yield.
Why is this bad?
Some asynchronous context managers, such as asyncio.timeout and
trio.move_on_after, have no effect unless they contain a checkpoint.
The use of such context managers without an await, async with or
async for statement is likely a mistake.
Example
Use instead: