ellar icon indicating copy to clipboard operation
ellar copied to clipboard

when use starlette's SessionMiddleware, an error occured

Open ockan opened this issue 3 months ago • 0 comments

from starlette.middleware.sessions import SessionMiddleware
from ellar.core.middleware import Middleware

class AppConfig(Config):
    SECRET_KEY = secret_key    
    MIDDLEWARE = [Middleware(SessionMiddleware, max_age=14 * 24 * 60 * 60)]

got

INFO:     Started server process [20168]
INFO:     Waiting for application startup.
--- Logging error ---
Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 168, in get_binding
    return super().get_binding(interface)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\injector\__init__.py", line 659, in get_binding
    raise UnsatisfiedRequirement(None, interface)
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 163, in build_middleware_stack
    app = cls(app, *args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 56, in __call__
    return self.create_object(**kwargs, app=app)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 47, in create_object
    _result[k] = current_injector.get(annotation)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\ellar_injector.py", line 120, in get
    binding, binder = self.container.get_binding(interface)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 190, in get_binding
    raise UnsatisfiedRequirement(None, interface) from uex
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 1110, in emit
    msg = self.format(record)
          ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 953, in format
    return fmt.format(record)
           ^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 687, in format
    record.message = record.getMessage()
                     ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 377, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
TypeError: not all arguments converted during string formatting
Call stack:
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\__main__.py", line 4, in <module>
    uvicorn.main()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 412, in main
    run(
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 579, in run
    server.run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 65, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 640, in run_until_complete
    self.run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\windows_events.py", line 321, in run_forever
    super().run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 607, in run_forever
    self._run_once()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 1922, in _run_once
    handle._run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\lifespan\on.py", line 86, in main
    await app(scope, self.receive, self.send)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 29, in __call__
    return await self.app(scope, receive, send)
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 198, in __call__
    self.middleware_stack = self.build_middleware_stack()
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 165, in build_middleware_stack
    logger.exception(ex, f"Unable to setup middleware='{cls}'")
Message: UnsatisfiedRequirement(None, typing.Union[starlette.datastructures.Secret, str])
Arguments: ("Unable to setup middleware='EllarMiddleware(SessionMiddleware, max_age=1209600)'",)
--- Logging error ---
Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 168, in get_binding
    return super().get_binding(interface)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\injector\__init__.py", line 659, in get_binding
    raise UnsatisfiedRequirement(None, interface)
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 163, in build_middleware_stack
    app = cls(app, *args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 56, in __call__
    return self.create_object(**kwargs, app=app)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 47, in create_object
    _result[k] = current_injector.get(annotation)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\ellar_injector.py", line 120, in get
    binding, binder = self.container.get_binding(interface)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 190, in get_binding
    raise UnsatisfiedRequirement(None, interface) from uex
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 1110, in emit
    msg = self.format(record)
          ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 953, in format
    return fmt.format(record)
           ^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 687, in format
    record.message = record.getMessage()
                     ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 377, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
TypeError: not all arguments converted during string formatting
Call stack:
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\__main__.py", line 4, in <module>
    uvicorn.main()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 412, in main
    run(
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 579, in run
    server.run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 65, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 640, in run_until_complete
    self.run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\windows_events.py", line 321, in run_forever
    super().run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 607, in run_forever
    self._run_once()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 1922, in _run_once
    handle._run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\lifespan\on.py", line 86, in main
    await app(scope, self.receive, self.send)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 29, in __call__
    return await self.app(scope, receive, send)
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 198, in __call__
    self.middleware_stack = self.build_middleware_stack()
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 165, in build_middleware_stack
    logger.exception(ex, f"Unable to setup middleware='{cls}'")
Message: UnsatisfiedRequirement(None, typing.Union[starlette.datastructures.Secret, str])
Arguments: ("Unable to setup middleware='EllarMiddleware(SessionMiddleware, max_age=1209600)'",)
INFO:     ASGI 'lifespan' protocol appears unsupported.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
--- Logging error ---
Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 168, in get_binding
    return super().get_binding(interface)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\injector\__init__.py", line 659, in get_binding
    raise UnsatisfiedRequirement(None, interface)
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 163, in build_middleware_stack
    app = cls(app, *args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 56, in __call__
    return self.create_object(**kwargs, app=app)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 47, in create_object
    _result[k] = current_injector.get(annotation)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\ellar_injector.py", line 120, in get
    binding, binder = self.container.get_binding(interface)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 190, in get_binding
    raise UnsatisfiedRequirement(None, interface) from uex
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 1110, in emit
    msg = self.format(record)
          ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 953, in format
    return fmt.format(record)
           ^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 687, in format
    record.message = record.getMessage()
                     ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 377, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
TypeError: not all arguments converted during string formatting
Call stack:
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\__main__.py", line 4, in <module>
    uvicorn.main()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 412, in main
    run(
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 579, in run
    server.run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 65, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 640, in run_until_complete
    self.run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\windows_events.py", line 321, in run_forever
    super().run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 607, in run_forever
    self._run_once()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 1922, in _run_once
    handle._run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 60, in __call__
    return await self.app(scope, receive, send)
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 198, in __call__
    self.middleware_stack = self.build_middleware_stack()
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 165, in build_middleware_stack
    logger.exception(ex, f"Unable to setup middleware='{cls}'")
Message: UnsatisfiedRequirement(None, typing.Union[starlette.datastructures.Secret, str])
Arguments: ("Unable to setup middleware='EllarMiddleware(SessionMiddleware, max_age=1209600)'",)
--- Logging error ---
Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 168, in get_binding
    return super().get_binding(interface)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\injector\__init__.py", line 659, in get_binding
    raise UnsatisfiedRequirement(None, interface)
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 163, in build_middleware_stack
    app = cls(app, *args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 56, in __call__
    return self.create_object(**kwargs, app=app)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 47, in create_object
    _result[k] = current_injector.get(annotation)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\ellar_injector.py", line 120, in get
    binding, binder = self.container.get_binding(interface)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 190, in get_binding
    raise UnsatisfiedRequirement(None, interface) from uex
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 1110, in emit
    msg = self.format(record)
          ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 953, in format
    return fmt.format(record)
           ^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 687, in format
    record.message = record.getMessage()
                     ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 377, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
TypeError: not all arguments converted during string formatting
Call stack:
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\__main__.py", line 4, in <module>
    uvicorn.main()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 412, in main
    run(
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 579, in run
    server.run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 65, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 640, in run_until_complete
    self.run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\windows_events.py", line 321, in run_forever
    super().run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 607, in run_forever
    self._run_once()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 1922, in _run_once
    handle._run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 60, in __call__
    return await self.app(scope, receive, send)
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 198, in __call__
    self.middleware_stack = self.build_middleware_stack()
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 165, in build_middleware_stack
    logger.exception(ex, f"Unable to setup middleware='{cls}'")
Message: UnsatisfiedRequirement(None, typing.Union[starlette.datastructures.Secret, str])
Arguments: ("Unable to setup middleware='EllarMiddleware(SessionMiddleware, max_age=1209600)'",)
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 168, in get_binding
    return super().get_binding(interface)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\injector\__init__.py", line 659, in get_binding
    raise UnsatisfiedRequirement(None, interface)
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 60, in __call__
    return await self.app(scope, receive, send)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 198, in __call__
    self.middleware_stack = self.build_middleware_stack()
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 166, in build_middleware_stack
    raise ex
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 163, in build_middleware_stack
    app = cls(app, *args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 56, in __call__
    return self.create_object(**kwargs, app=app)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 47, in create_object
    _result[k] = current_injector.get(annotation)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\ellar_injector.py", line 120, in get
    binding, binder = self.container.get_binding(interface)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 190, in get_binding
    raise UnsatisfiedRequirement(None, interface) from uex
injector.UnsatisfiedRequirement: unsatisfied requirement on Union
INFO:     127.0.0.1:58858 - "GET / HTTP/1.1" 500 Internal Server Error
--- Logging error ---
Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 168, in get_binding
    return super().get_binding(interface)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\injector\__init__.py", line 659, in get_binding
    raise UnsatisfiedRequirement(None, interface)
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 163, in build_middleware_stack
    app = cls(app, *args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 56, in __call__
    return self.create_object(**kwargs, app=app)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 47, in create_object
    _result[k] = current_injector.get(annotation)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\ellar_injector.py", line 120, in get
    binding, binder = self.container.get_binding(interface)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 190, in get_binding
    raise UnsatisfiedRequirement(None, interface) from uex
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 1110, in emit
    msg = self.format(record)
          ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 953, in format
    return fmt.format(record)
           ^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 687, in format
    record.message = record.getMessage()
                     ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 377, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
TypeError: not all arguments converted during string formatting
Call stack:
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\__main__.py", line 4, in <module>
    uvicorn.main()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 412, in main
    run(
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 579, in run
    server.run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 65, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 640, in run_until_complete
    self.run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\windows_events.py", line 321, in run_forever
    super().run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 607, in run_forever
    self._run_once()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 1922, in _run_once
    handle._run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 60, in __call__
    return await self.app(scope, receive, send)
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 198, in __call__
    self.middleware_stack = self.build_middleware_stack()
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 165, in build_middleware_stack
    logger.exception(ex, f"Unable to setup middleware='{cls}'")
Message: UnsatisfiedRequirement(None, typing.Union[starlette.datastructures.Secret, str])
Arguments: ("Unable to setup middleware='EllarMiddleware(SessionMiddleware, max_age=1209600)'",)
--- Logging error ---
Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 168, in get_binding
    return super().get_binding(interface)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\injector\__init__.py", line 659, in get_binding
    raise UnsatisfiedRequirement(None, interface)
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 163, in build_middleware_stack
    app = cls(app, *args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 56, in __call__
    return self.create_object(**kwargs, app=app)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 47, in create_object
    _result[k] = current_injector.get(annotation)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\ellar_injector.py", line 120, in get
    binding, binder = self.container.get_binding(interface)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 190, in get_binding
    raise UnsatisfiedRequirement(None, interface) from uex
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 1110, in emit
    msg = self.format(record)
          ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 953, in format
    return fmt.format(record)
           ^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 687, in format
    record.message = record.getMessage()
                     ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 377, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
TypeError: not all arguments converted during string formatting
Call stack:
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\__main__.py", line 4, in <module>
    uvicorn.main()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 412, in main
    run(
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 579, in run
    server.run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 65, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 640, in run_until_complete
    self.run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\windows_events.py", line 321, in run_forever
    super().run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 607, in run_forever
    self._run_once()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 1922, in _run_once
    handle._run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 60, in __call__
    return await self.app(scope, receive, send)
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 198, in __call__
    self.middleware_stack = self.build_middleware_stack()
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 165, in build_middleware_stack
    logger.exception(ex, f"Unable to setup middleware='{cls}'")
Message: UnsatisfiedRequirement(None, typing.Union[starlette.datastructures.Secret, str])
Arguments: ("Unable to setup middleware='EllarMiddleware(SessionMiddleware, max_age=1209600)'",)
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 168, in get_binding
    return super().get_binding(interface)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\injector\__init__.py", line 659, in get_binding
    raise UnsatisfiedRequirement(None, interface)
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 60, in __call__
    return await self.app(scope, receive, send)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 198, in __call__
    self.middleware_stack = self.build_middleware_stack()
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 166, in build_middleware_stack
    raise ex
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 163, in build_middleware_stack
    app = cls(app, *args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 56, in __call__
    return self.create_object(**kwargs, app=app)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 47, in create_object
    _result[k] = current_injector.get(annotation)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\ellar_injector.py", line 120, in get
    binding, binder = self.container.get_binding(interface)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 190, in get_binding
    raise UnsatisfiedRequirement(None, interface) from uex
injector.UnsatisfiedRequirement: unsatisfied requirement on Union
INFO:     127.0.0.1:58860 - "GET / HTTP/1.1" 500 Internal Server Error
--- Logging error ---
Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 168, in get_binding
    return super().get_binding(interface)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\injector\__init__.py", line 659, in get_binding
    raise UnsatisfiedRequirement(None, interface)
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 163, in build_middleware_stack
    app = cls(app, *args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 56, in __call__
    return self.create_object(**kwargs, app=app)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 47, in create_object
    _result[k] = current_injector.get(annotation)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\ellar_injector.py", line 120, in get
    binding, binder = self.container.get_binding(interface)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 190, in get_binding
    raise UnsatisfiedRequirement(None, interface) from uex
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 1110, in emit
    msg = self.format(record)
          ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 953, in format
    return fmt.format(record)
           ^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 687, in format
    record.message = record.getMessage()
                     ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 377, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
TypeError: not all arguments converted during string formatting
Call stack:
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\__main__.py", line 4, in <module>
    uvicorn.main()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 412, in main
    run(
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 579, in run
    server.run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 65, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 640, in run_until_complete
    self.run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\windows_events.py", line 321, in run_forever
    super().run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 607, in run_forever
    self._run_once()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 1922, in _run_once
    handle._run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 60, in __call__
    return await self.app(scope, receive, send)
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 198, in __call__
    self.middleware_stack = self.build_middleware_stack()
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 165, in build_middleware_stack
    logger.exception(ex, f"Unable to setup middleware='{cls}'")
Message: UnsatisfiedRequirement(None, typing.Union[starlette.datastructures.Secret, str])
Arguments: ("Unable to setup middleware='EllarMiddleware(SessionMiddleware, max_age=1209600)'",)
--- Logging error ---
Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 168, in get_binding
    return super().get_binding(interface)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\injector\__init__.py", line 659, in get_binding
    raise UnsatisfiedRequirement(None, interface)
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 163, in build_middleware_stack
    app = cls(app, *args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 56, in __call__
    return self.create_object(**kwargs, app=app)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 47, in create_object
    _result[k] = current_injector.get(annotation)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\ellar_injector.py", line 120, in get
    binding, binder = self.container.get_binding(interface)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 190, in get_binding
    raise UnsatisfiedRequirement(None, interface) from uex
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 1110, in emit
    msg = self.format(record)
          ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 953, in format
    return fmt.format(record)
           ^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 687, in format
    record.message = record.getMessage()
                     ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\logging\__init__.py", line 377, in getMessage
    msg = msg % self.args
          ~~~~^~~~~~~~~~~
TypeError: not all arguments converted during string formatting
Call stack:
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\__main__.py", line 4, in <module>
    uvicorn.main()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 412, in main
    run(
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\main.py", line 579, in run
    server.run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 65, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 640, in run_until_complete
    self.run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\windows_events.py", line 321, in run_forever
    super().run_forever()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 607, in run_forever
    self._run_once()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 1922, in _run_once
    handle._run()
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\asyncio\events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 60, in __call__
    return await self.app(scope, receive, send)
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 198, in __call__
    self.middleware_stack = self.build_middleware_stack()
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 165, in build_middleware_stack
    logger.exception(ex, f"Unable to setup middleware='{cls}'")
Message: UnsatisfiedRequirement(None, typing.Union[starlette.datastructures.Secret, str])
Arguments: ("Unable to setup middleware='EllarMiddleware(SessionMiddleware, max_age=1209600)'",)
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 168, in get_binding
    return super().get_binding(interface)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\injector\__init__.py", line 659, in get_binding
    raise UnsatisfiedRequirement(None, interface)
injector.UnsatisfiedRequirement: unsatisfied requirement on Union

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 406, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\gengh\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 60, in __call__
    return await self.app(scope, receive, send)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 198, in __call__
    self.middleware_stack = self.build_middleware_stack()
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 166, in build_middleware_stack
    raise ex
  File "D:\py\ellar\env\Lib\site-packages\ellar\app\main.py", line 163, in build_middleware_stack
    app = cls(app, *args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 56, in __call__
    return self.create_object(**kwargs, app=app)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\core\middleware\middleware.py", line 47, in create_object
    _result[k] = current_injector.get(annotation)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\ellar_injector.py", line 120, in get
    binding, binder = self.container.get_binding(interface)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\py\ellar\env\Lib\site-packages\ellar\di\injector\container.py", line 190, in get_binding
    raise UnsatisfiedRequirement(None, interface) from uex
injector.UnsatisfiedRequirement: unsatisfied requirement on Union
INFO:     127.0.0.1:58861 - "GET /favicon.ico HTTP/1.1" 500 Internal Server Error

ockan avatar Oct 16 '25 01:10 ockan