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 latest versions of Python 3. Currently that’s 3.6, 3.7, 3.8 and 3.9.
The following versions of Python are no longer supported:
Flake8¶
Works with Flake8 version 3 and later.
We use the newer plugin system implemented in Flake8 v3. This dependency is not
specified in setup.py
because users may only want to use the command line
interface.
Check that Flake8-AAA was installed correctly by asking flake8
for its
version signature:
$ flake8 --version
3.8.2 (aaa: 0.10.0, mccabe: 0.6.1, pycodestyle: 2.6.0, pyflakes: 2.2.0) CPython 3.6.10 on Linux
The aaa: 0.10.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.
The coding style used by Black can be viewed as a strict subset of PEP8.
The AAA pattern is PEP8 compatible so it makes sense that Flake8-AAA should work with PEP8 compatible formatters.
This compatibility is pinned by the test examples in the examples/good/black directory. These tests are formatted with the latest version of Black in default mode. They are then checked to pass Flake8-AAA’s linting.
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 -