* Look at possibly-used-before-assignment.
* Use latest beta releases of ansible-core 2.19 for mypy and pylint.
* Look at unsupported-*.
* Look at unknown-option-value.
* Look at redefined-builtin.
* Look at superfluous-parens.
* Look at unspecified-encoding.
* Adjust to new cryptography version and to ansible-core 2.17's pylint.
* Look at super-with-arguments.
* Look at no-else-*.
* Look at try-except-raise.
* Look at inconsistent-return-statements.
* Look at redefined-outer-name.
* Look at redefined-argument-from-local.
* Look at attribute-defined-outside-init.
* Look at unused-variable.
* Look at protected-access.
* Look at raise-missing-from.
* Look at arguments-differ.
* Look at useless-suppression and use-symbolic-message-instead.
* Look at consider-using-dict-items.
* Look at consider-using-in.
* Look at consider-using-set-comprehension.
* Look at consider-using-with.
* Look at use-dict-literal.
* Move mypy/flake8/isort config files to more 'natural' places.
* Add pylint.
* Look at no-member.
* Look at pointless-* and unnecessary-pass.
* Look at useless-*.
* Lint.
* Enable basic type checking.
* Fix first errors.
* Add changelog fragment.
* Add types to module_utils and plugin_utils (without module backends).
* Add typing hints for acme_* modules.
* Add typing to X.509 certificate modules, and add more helpers.
* Add typing to remaining module backends.
* Add typing for action, filter, and lookup plugins.
* Bump ansible-core 2.19 beta requirement for typing.
* Add more typing definitions.
* Add typing to some unit tests.