Browse Source

bpo-41521, typing: Rename _PROTO_WHITELIST to _PROTO_ALLOWLIST (#21825)

pull/21844/head
Victor Stinner 6 years ago
committed by GitHub
parent
commit
0e95bbf085
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 6
      Lib/typing.py

6
Lib/typing.py

@ -1021,7 +1021,7 @@ def _allow_reckless_class_cheks():
return True
_PROTO_WHITELIST = {
_PROTO_ALLOWLIST = {
'collections.abc': [
'Callable', 'Awaitable', 'Iterable', 'Iterator', 'AsyncIterable',
'Hashable', 'Sized', 'Container', 'Collection', 'Reversible',
@ -1140,8 +1140,8 @@ class Protocol(Generic, metaclass=_ProtocolMeta):
# ... otherwise check consistency of bases, and prohibit instantiation.
for base in cls.__bases__:
if not (base in (object, Generic) or
base.__module__ in _PROTO_WHITELIST and
base.__name__ in _PROTO_WHITELIST[base.__module__] or
base.__module__ in _PROTO_ALLOWLIST and
base.__name__ in _PROTO_ALLOWLIST[base.__module__] or
issubclass(base, Generic) and base._is_protocol):
raise TypeError('Protocols can only inherit from other'
' protocols, got %r' % base)

Loading…
Cancel
Save