Add rudimentary mypy type checking

Add a very lax mypy configuration, add it to tox -e linting, and
fix/ignore the few errors that come up. The idea is to get it running
before diving in too much.

This enables:

- Progressively adding type annotations and enabling more strict
  options, which will improve the codebase (IMO).

- Annotating the public API in-line, and eventually exposing it to
  library users who use type checkers (with a py.typed file).

Though, none of this is done yet.

Refs https://github.com/pytest-dev/pytest/issues/3342.
This commit is contained in:
Ran Benita
2019-07-08 10:04:19 +03:00
parent 60a358fa2d
commit c1167ac552
30 changed files with 104 additions and 45 deletions

View File

@@ -44,7 +44,8 @@ class Source:
return str(self) == other
return False
__hash__ = None
# Ignore type because of https://github.com/python/mypy/issues/4266.
__hash__ = None # type: ignore
def __getitem__(self, key):
if isinstance(key, int):