tree d39d97ab999e2837b29e65f8ea1f7621741055de
parent e63dcc62a5a791fa5a50fffab93cf673131ead21
author Monty Taylor <mordred@inaugust.com> 1501177294 -0500
committer Monty Taylor <mordred@inaugust.com> 1501184047 -0500
gpgsig -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABCAAGBQJZekAvAAoJEHuulLxxQaWU6/sP/18AaQ9FQMM/gvX3UyUfu1a6
 ne9LQO56N507dRxWlGbkJNMZGdOy10CzzSY+Bdu7ZrzTNzr1xngHWGMm1YcrrSpT
 VHWr7kLCsNDKXXzp74u3HUue+e1plR7m6jDgzOATcba7Em0kglqk5rUGeGa355+C
 qOU07yOjTddm5WIPmyGuLStuOVeJiMVLGR6TLYlT52W9XKvhZyyR6xgyJ5tp+n5x
 ooNaC8jXbf1LUBU4g1YiUVhxiwncvD6Y3fgQTFz6P6EiPmzVttZeQ0pQbpHDn3IT
 Z3qKiHo9j+jeTO9tq+vZty7B8VvrZEQ0EZzzR+qZLRPC2kJp0cQLtGZ/uj3A+Li/
 Ibpo81/P0azLrlw+Snai1ac0upKqL6cFP308HKxnqv4Afxed+yfjLD69ZY+jOWMB
 NnT1Fr5N8hTVmTLzg6Z7+4/x7HRi0oxaJIh/9KS8huFC8A9k66u4D6PJQXS3Ih+x
 PV5mfbvkdrKJ5+jaos1y4ymYUPvizDM7JUR5jBA3Ot8eeAAxLAGEeL4OzqQFz7HY
 Qh0pl2jseVt0cJ26D7+6BCarGX4cd9Lk0NHs+0kl3kfncQ58pMEe6kBTOdnZ2kh+
 tD8V+USE4NH6WH9tqpQX30yFLXclhVvOBgy7xifSHROztN6v7/04PoJcp8HfbWx/
 /6DUZ+IOTBCz+eugeFjO
 =SnZF
 -----END PGP SIGNATURE-----

Use mypy to do static type checking

python3 includes support for optional type annotations which can be used by
static analysis tools to perform type checking. The mypy tool is a
static type checking tool that can also infer type information in many
cases, but which will use explicit type information if it is present.

Add mypy to test-requirements and to the pep8 job so that our pep8 job
can do more analysis work and less with the code style.

To support this, there were a few places in the current codebase that
needed an explicit type hint. For variables/attributes in 3.5 this is done via
comments. There is a conditional import that was confusion that just got
marked with an 'ignore'.

Our ansible action and lookup plugins confuse mypi with the way they
import the ansible base classes. That's ok - they confuse us with that
too. The .pyi files are 'typeshed' files, which are a way that one can
provide static type annotations without putting the information into the
file itself. mypy will always prefer a .pyi file over a .py file (since
the point of them is to be external annotion/interface description) So
in order to get mypy to not barf on the ansible import weirdness, just
add a corresponding empty .pyi file. We could potentially actually put
interface descriptions in them - but I don't think there is very much
value in that.

It should be amusing to at least someone that we have to flake8: noqa
an import from typing that was done to provide a type hint in a comment.

Change-Id: I6c4ac3dcfc6fd990e6c6886749de147ad28389d1
