dominate
dominate copied to clipboard
Add type stubs
Adds type information to aid Mypy, Pyright and other type checkers. (Addresses #191)
I chose .pyi interface files so as not to interfere with the considerable effort I observed making the codebase compatible with early python versions.
I unfortunately omitted using typing for decorator use when uninitialised, as mypy is erroneously opinionated about overriding new with different return types. As a result, the following example case still raises a type error:
@div
def greeting(name):
p('Hello %s' % name)
print(greeting('Bob'))
Happy to make modifications to the implementation if requested!
How can this be tested/maintained?