From bc126148bb775c9dff7dfb43648829836a664b19 Mon Sep 17 00:00:00 2001 From: Bedram Tamang Date: Fri, 24 Jul 2026 17:09:37 -0700 Subject: [PATCH] fix(typing): widen Container.bind name param to str | type simple() binds a class object as the container key (mirroring make()'s class-key support at 'elif inspect.isclass(name)'). The str-only signature from #197 was too narrow, producing a pyright error at container.py:92: 'Argument of type type[object] | Unknown cannot be assigned to parameter name of type str'. Widen name to str | type to match the keys make() accepts. Typing-only change; bind still returns None. --- fastapi_startkit/src/fastapi_startkit/container/container.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/fastapi_startkit/src/fastapi_startkit/container/container.py b/fastapi_startkit/src/fastapi_startkit/container/container.py index 61335703..0ec26652 100644 --- a/fastapi_startkit/src/fastapi_startkit/container/container.py +++ b/fastapi_startkit/src/fastapi_startkit/container/container.py @@ -43,11 +43,12 @@ def __init__(self): self.swaps = {} self._remembered = {} - def bind(self, name: str, class_obj: Any) -> None: + def bind(self, name: str | type, class_obj: Any) -> None: """Bind classes into the container with a key value pair. Arguments: - name {string} -- Name of the key you want to bind the object to + name {string | type} -- Key to bind the object to; a class object is + accepted for class-keyed bindings (mirrors make()'s class-key support) class_obj {object} -- The object you want to bind """ if inspect.ismodule(class_obj):