Hello!
I suggest adding a feature that will force users to write typing. It must check in runtime that all class attributes have a specified type and raise a Runtime-like error if they do not.
This feature must NOT be turned on by default.
class Features(enum.Flag):
...
FORCE_ATTRS_TYPING = enum.auto()
...
If we have something like this, it should go down with exception:
class MyAwesomeError(Error):
...
some_attr # without type