Fix false positive with calling .register() on KeysView subclass (#9348)

* Revert "`Collection` is `Sized` (#8977)"

This reverts commit 5bbba5d008.

* Revert "typing: remove metaclass from Sized (#9058)"

This reverts commit a3ce512095.

* Add regression test for issue 9296.
This commit is contained in:
Joshua Bronson
2022-12-10 13:09:28 -05:00
committed by GitHub
parent a74df38df0
commit 1ba0c9815e
2 changed files with 21 additions and 2 deletions

View File

@@ -0,0 +1,16 @@
from __future__ import annotations
import typing as t
KT = t.TypeVar("KT")
class MyKeysView(t.KeysView[KT]):
pass
d: dict[t.Any, t.Any] = {}
dict_keys = type(d.keys())
# This should not cause an error like `Member "register" is unknown`:
MyKeysView.register(dict_keys)