From cae99da84f9a7bf5c2ca6b243240e904cd96a62f Mon Sep 17 00:00:00 2001 From: Roman Mogylatov Date: Fri, 18 Sep 2020 22:09:48 -0400 Subject: [PATCH] Add Python 3.6 spike --- src/dependency_injector/wiring.py | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/src/dependency_injector/wiring.py b/src/dependency_injector/wiring.py index a0e408c6..ff4912f9 100644 --- a/src/dependency_injector/wiring.py +++ b/src/dependency_injector/wiring.py @@ -10,7 +10,7 @@ from typing import Optional, Iterable, Callable, Any, Type, Dict, Generic, TypeV if sys.version_info < (3, 7): from typing import GenericMeta else: - class GenericMeta: + class GenericMeta(type): ... @@ -151,18 +151,14 @@ def _patch_with_injections(fn, injections): return _patched -class ClassGetItemMeta(type): +class ClassGetItemMeta(GenericMeta): def __getitem__(cls, item): # Spike for Python 3.6 return cls(item) -class GenericClassGetItemMeta(GenericMeta, ClassGetItemMeta): - pass +class _Marker(Generic[T], metaclass=ClassGetItemMeta): - - -class _Marker(Generic[T], metaclass=GenericClassGetItemMeta): def __init__(self, provider: providers.Provider) -> None: self.provider = provider