Hello everyone,

During the DTS working group meeting, we discussed that it would be useful to have some automated tooling to help assist the maintainers. These tools must produce machine-readable output. There are a few categories that we would like to include.

1. Formatter

The formatter should be capable of a strict reformatting to PEP8.

2. Linter

We must be able to customize the output or suppress individual instances of an issue.

3. Misc Static Analysis

Any other static analysis tools that may be useful.

My personal recommendations:

1. black

Black has the ability to parse the file before and after formatting and diff the ASTs, to ensure that no semantic changes occurred during formatting. This would probably be our safest bet since we can be confident that it won't break anything. 

2. pylama

This tool runs a superset of the analyzers run by Flake8

I'd like to start by getting a list of candidates, then we can narrow down tools until we reach a final set of tools to run in CI for DTS. 

Owen Hilyard