Jelle Zijlstra <jelle.zijls...@gmail.com> added the comment:
Regardless of mypy's behavior (which isn't impacted by what typing.py does), there's a legitimate complaint here about the runtime behavior: any `__init__` method defined in a Protocol gets silently replaced. >>> from typing import Protocol >>> class X(Protocol): ... def __init__(self, x, y): pass ... >>> X.__init__ <function _no_init_or_replace_init at 0x10de4e5c0> Fixing that won't be easy though, unless we give up on making it impossible to instantiate a Protocol. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue44807> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com