Debugging tips

Even if you cannot have it on by default when checking your whole
codebase (because of legacy unannotated code), it's usually helpful to
add the --disallow-untyped-calls and --disallow-untyped-defs
flags when calling mypy.

Especially I find it useful as apparently I keep forgetting that mypy
will not typecheck a function without an explicit return type,
even if that's just None.

For example, mypy won't catch the type error here:

defhello(a:int)->int:returnadefmain():hello('not an int')

But it definitely does if we remember to specify the function's return
type explicitly: