Skip to main content

A highly opinionated flake8 plugin for Trio-related problems.

Project description

flake8-trio

A highly opinionated flake8 plugin for Trio-related problems.

This can include anything from outright bugs, to pointless/dead code, to likely performance issues, to minor points of idiom that might signal a misunderstanding.

It may well be too noisy for anyone with different opinions, that's OK.

Pairs well with flake8-async and flake8-bugbear.

Installation

pip install flake8-trio

List of warnings

  • TRIO100: a with trio.fail_after(...): or with trio.move_on_after(...): context does not contain any await statements. This makes it pointless, as the timeout can only be triggered by a checkpoint.
  • TRIO101 yield inside a nursery or cancel scope is only safe when implementing a context manager - otherwise, it breaks exception handling.

Changelog

CalVer, YY.month.patch

22.7.2

  • Avoid TRIO100 false-alarms on cancel scopes containing async for or async with.

22.7.1

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flake8-trio-22.7.2.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

flake8_trio-22.7.2-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

Details for the file flake8-trio-22.7.2.tar.gz.

File metadata

  • Download URL: flake8-trio-22.7.2.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.5

File hashes

Hashes for flake8-trio-22.7.2.tar.gz
Algorithm Hash digest
SHA256 da64d6dd198f2791a56ba70f05f150c666889be3fbd7758b08e0e831af24a2d4
MD5 23ba909e5b8343d2c5cb846f7dcc9be4
BLAKE2b-256 38d99fcb6345b7465a39cc1808e18962b64e1a46e17600dd6a4b26a4c60c54f3

See more details on using hashes here.

Provenance

File details

Details for the file flake8_trio-22.7.2-py3-none-any.whl.

File metadata

File hashes

Hashes for flake8_trio-22.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 48aec4590594aff8eaf08ed02f68ade496cfcc69b5897021b0c5c1ecf8ad23f8
MD5 61d2272c73ffb43537c34ad514d259bb
BLAKE2b-256 78860a1c6aae3fd6f1fd7e4992737bb6cd4558ff7a963c178fc1dec2921076ee

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page