Type hints are not very useful if they are not checked.
Breaking change: Invalid.path and Invalid.error_message are no longer writable (properties). Because they are propertis in subclass MultipleInvalid and subclass can't override writable as read only.
Fix definition of Schemable. Extra is not a type but Callable and Callable is already there. For NoneType just None should be used.
Add mypy to run with tox.
Fix flake8 warnings regarding using isinstance instead of direct comparison.
Type hints are not very useful if they are not checked.
Invalid.path
andInvalid.error_message
are no longer writable (properties). Because they are propertis in subclassMultipleInvalid
and subclass can't override writable as read only.Schemable
.Extra
is not a type butCallable
andCallable
is already there. ForNoneType
justNone
should be used.isinstance
instead of direct comparison.