Compatibility list

Flake8-AAA is compatible with the following software. Future versions will maintain this compatibility as closely as possible.

Python

Works with Python 3.

Flake8-AAA is fully compatible and tested against the active versions of Python 3 as listed on the python.org downloads page.

See also…

See full list of previously supported Python versions for links to the last supported packages and documentation.

Flake8

Requires Flake8 version 3 and later. All integration tests run with the latest version of Flake8 for the active version of Python.

We use the newer plugin system implemented in Flake8 v3.

Check that Flake8-AAA was installed correctly by asking flake8 for its version signature:

flake8 --version
6.1.0 (flake8-aaa: 0.17.0, mccabe: 0.7.0, pycodestyle: 2.11.1, pyflakes: 3.1.0) CPython 3.11.6 on Linux

The flake8-aaa: 0.17.0 part of that output tells you Flake8 found this plugin.

Yapf

Yapf is used to format Flake8-AAA code and tests. It is the primary formatter focused on for compatibility.

Black

Flake8-AAA is compatible with tests formatted with Black.

Black version 23.1.0 changed how it managed blank lines by default. Set “large” Act block style option or configuration when running via Flake8 for best compatibility with Black:

flake8 --aaa-act-block-style=large

See also Black formatted example tests in Flake8-AAA’s test suite.

Pytest

Pytest is fully supported.

To pin this compatibility we use the latest version of Pytest in the Flake8-AAA test suite and lint that test suite with Flake8-AAA (aka. dog fooding).

Unittest

Python unittest style is supported.

To pin this compatibility we include unittest-style tests in the examples/good directory.

Previous Python versions

The following versions of Python are no longer supported:

Python 3.7

Python 3.7 was supported up to v0.15.0

Python 3.6

Python 3.6 was supported up to v0.12.1

Python 3.5

Python 3.5 was supported up to v0.7.2

Python 2

Python 2 was supported up to v0.4.0