Files
Mutual_Fund/logs/error.log
T
2026-09-11 09:50:04 +08:00

1557 lines
109 KiB
Plaintext

2026-09-08 17:26:52,160 ERROR [-] api: unhandled error on /api/auth/login
Traceback (most recent call last):
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Projects\py\Memory_demo\utils\request_id.py", line 28, in dispatch
response: Response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\routing.py", line 670, in __call__
await self.middleware_stack(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 2734, in app
await route.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1791, in _handle_selected
await route.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1800, in _handle_selected
await original_route.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1279, in handle
await app(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 158, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 144, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 481, in app
solved_result = await solve_dependencies(
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\dependencies\utils.py", line 668, in solve_dependencies
solved = await _solve_generator(
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\dependencies\utils.py", line 574, in _solve_generator
return await stack.enter_async_context(cm)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\contextlib.py", line 647, in enter_async_context
result = await _enter(cm)
^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\contextlib.py", line 204, in __aenter__
return await anext(self.gen)
^^^^^^^^^^^^^^^^^^^^^
File "D:\Projects\py\Memory_demo\config\deps.py", line 7, in get_db
async with mysql.get_session_factory() as session:
TypeError: 'async_sessionmaker' object does not support the asynchronous context manager protocol
2026-09-08 17:26:52,230 ERROR [-] sqlalchemy.pool.impl.AsyncAdaptedQueuePool: Exception closing connection <AdaptedConnection <aiomysql.connection.Connection object at 0x00000125D3027140>>
Traceback (most recent call last):
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\pool\base.py", line 375, in _close_connection
self._dialect.do_close(connection)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\engine\default.py", line 721, in do_close
dbapi_connection.close()
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 114, in close
self.await_(self._connection.ensure_closed())
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\aiomysql\connection.py", line 349, in ensure_closed
self._writer.write(send_data)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\streams.py", line 331, in write
self._transport.write(data)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\proactor_events.py", line 366, in write
self._loop_writing(data=bytes(data))
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\proactor_events.py", line 402, in _loop_writing
self._write_fut = self._loop._proactor.send(self._sock, data)
^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'send'
2026-09-08 17:27:10,975 ERROR [7920a7ecec5e4f8b] sqlalchemy.pool.impl.AsyncAdaptedQueuePool: Exception terminating connection <AdaptedConnection <aiomysql.connection.Connection object at 0x00000200B4996BA0>>
Traceback (most recent call last):
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\pool\base.py", line 373, in _close_connection
self._dialect.do_terminate(connection)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 242, in do_terminate
dbapi_connection.terminate()
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\connectors\asyncio.py", line 402, in terminate
self.await_(asyncio.shield(self._terminate_graceful_close())) # type: ignore[attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 117, in _terminate_graceful_close
await self._connection.ensure_closed()
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\aiomysql\connection.py", line 349, in ensure_closed
self._writer.write(send_data)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\streams.py", line 331, in write
self._transport.write(data)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\proactor_events.py", line 366, in write
self._loop_writing(data=bytes(data))
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\proactor_events.py", line 402, in _loop_writing
self._write_fut = self._loop._proactor.send(self._sock, data)
^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'send'
2026-09-08 17:27:11,025 ERROR [-] api: unhandled error on /api/auth/login
Traceback (most recent call last):
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Projects\py\Memory_demo\utils\request_id.py", line 28, in dispatch
response: Response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\routing.py", line 670, in __call__
await self.middleware_stack(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 2734, in app
await route.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1791, in _handle_selected
await route.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1800, in _handle_selected
await original_route.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1279, in handle
await app(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 158, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 144, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 706, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 352, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Projects\py\Memory_demo\api\routers\auth.py", line 35, in login
user = await SysUserRepo(db).get_by_username(body.username)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Projects\py\Memory_demo\repositories\sys_user.py", line 14, in get_by_username
return await self.db.scalar(select(SysUser).where(SysUser.username == username))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 504, in scalar
return await greenlet_spawn(
^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\orm\session.py", line 2421, in scalar
return self._execute_internal(
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\orm\session.py", line 2261, in _execute_internal
conn = self._connection_for_bind(bind)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\orm\session.py", line 2113, in _connection_for_bind
return trans._connection_for_bind(engine, execution_options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<string>", line 2, in _connection_for_bind
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\orm\state_changes.py", line 137, in _go
ret_value = fn(self, *arg, **kw)
^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\orm\session.py", line 1191, in _connection_for_bind
conn = bind.connect()
^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\engine\base.py", line 3295, in connect
return self._connection_cls(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\engine\base.py", line 144, in __init__
self._dbapi_connection = engine.raw_connection()
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\engine\base.py", line 3319, in raw_connection
return self.pool.connect()
^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\pool\base.py", line 448, in connect
return _ConnectionFairy._checkout(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\pool\base.py", line 1371, in _checkout
with util.safe_reraise():
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\pool\base.py", line 1309, in _checkout
result = pool._dialect._do_ping_w_event(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\engine\default.py", line 729, in _do_ping_w_event
return self.do_ping(dbapi_connection)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\dialects\mysql\pymysql.py", line 144, in do_ping
dbapi_connection.ping()
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 100, in ping
self.await_(self._connection.ping(reconnect=False))
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\aiomysql\connection.py", line 493, in ping
await self._execute_command(COMMAND.COM_PING, "")
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\aiomysql\connection.py", line 724, in _execute_command
self._write_bytes(prelude + sql[:chunk_size - 1])
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\aiomysql\connection.py", line 669, in _write_bytes
return self._writer.write(data)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\streams.py", line 331, in write
self._transport.write(data)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\proactor_events.py", line 366, in write
self._loop_writing(data=bytes(data))
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\proactor_events.py", line 402, in _loop_writing
self._write_fut = self._loop._proactor.send(self._sock, data)
^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'send'
2026-09-08 17:27:39,262 ERROR [c744544f6e564c1a] sqlalchemy.pool.impl.AsyncAdaptedQueuePool: Exception terminating connection <AdaptedConnection <aiomysql.connection.Connection object at 0x000002271D806F00>>
Traceback (most recent call last):
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\pool\base.py", line 373, in _close_connection
self._dialect.do_terminate(connection)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 242, in do_terminate
dbapi_connection.terminate()
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\connectors\asyncio.py", line 402, in terminate
self.await_(asyncio.shield(self._terminate_graceful_close())) # type: ignore[attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 117, in _terminate_graceful_close
await self._connection.ensure_closed()
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\aiomysql\connection.py", line 349, in ensure_closed
self._writer.write(send_data)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\streams.py", line 331, in write
self._transport.write(data)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\proactor_events.py", line 366, in write
self._loop_writing(data=bytes(data))
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\proactor_events.py", line 402, in _loop_writing
self._write_fut = self._loop._proactor.send(self._sock, data)
^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'send'
2026-09-08 17:27:39,266 ERROR [-] api: unhandled error on /api/auth/login
Traceback (most recent call last):
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Projects\py\Memory_demo\utils\request_id.py", line 28, in dispatch
response: Response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\routing.py", line 670, in __call__
await self.middleware_stack(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 2734, in app
await route.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1791, in _handle_selected
await route.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1800, in _handle_selected
await original_route.handle(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 1279, in handle
await app(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 158, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 144, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 706, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\fastapi\routing.py", line 352, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Projects\py\Memory_demo\api\routers\auth.py", line 35, in login
user = await SysUserRepo(db).get_by_username(body.username)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Projects\py\Memory_demo\repositories\sys_user.py", line 14, in get_by_username
return await self.db.scalar(select(SysUser).where(SysUser.username == username))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 504, in scalar
return await greenlet_spawn(
^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\orm\session.py", line 2421, in scalar
return self._execute_internal(
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\orm\session.py", line 2261, in _execute_internal
conn = self._connection_for_bind(bind)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\orm\session.py", line 2113, in _connection_for_bind
return trans._connection_for_bind(engine, execution_options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<string>", line 2, in _connection_for_bind
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\orm\state_changes.py", line 137, in _go
ret_value = fn(self, *arg, **kw)
^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\orm\session.py", line 1191, in _connection_for_bind
conn = bind.connect()
^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\engine\base.py", line 3295, in connect
return self._connection_cls(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\engine\base.py", line 144, in __init__
self._dbapi_connection = engine.raw_connection()
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\engine\base.py", line 3319, in raw_connection
return self.pool.connect()
^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\pool\base.py", line 448, in connect
return _ConnectionFairy._checkout(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\pool\base.py", line 1371, in _checkout
with util.safe_reraise():
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\pool\base.py", line 1309, in _checkout
result = pool._dialect._do_ping_w_event(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\engine\default.py", line 729, in _do_ping_w_event
return self.do_ping(dbapi_connection)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\dialects\mysql\pymysql.py", line 144, in do_ping
dbapi_connection.ping()
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 100, in ping
self.await_(self._connection.ping(reconnect=False))
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\aiomysql\connection.py", line 493, in ping
await self._execute_command(COMMAND.COM_PING, "")
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\aiomysql\connection.py", line 724, in _execute_command
self._write_bytes(prelude + sql[:chunk_size - 1])
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\site-packages\aiomysql\connection.py", line 669, in _write_bytes
return self._writer.write(data)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\streams.py", line 331, in write
self._transport.write(data)
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\proactor_events.py", line 366, in write
self._loop_writing(data=bytes(data))
File "C:\Users\24434\AppData\Local\Programs\Python\Python312\Lib\asyncio\proactor_events.py", line 402, in _loop_writing
self._write_fut = self._loop._proactor.send(self._sock, data)
^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'send'
2026-09-10 19:55:57,028 ERROR [-] api: unhandled error on /api/auth/login
Traceback (most recent call last):
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\utils\request_id.py", line 28, in dispatch
response: Response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\routing.py", line 670, in __call__
await self.middleware_stack(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 2734, in app
await route.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1791, in _handle_selected
await route.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1800, in _handle_selected
await original_route.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1279, in handle
await app(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 158, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 144, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 706, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 352, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\api\routers\auth.py", line 18, in login
return success(await auth_login(db, body.username, body.password))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\service\auth.py", line 68, in login
user = await SysUserRepo(db).get_by_username(username)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\repositories\sys_user.py", line 14, in get_by_username
return await self.db.scalar(select(SysUser).where(SysUser.username == username))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 504, in scalar
return await greenlet_spawn(
^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 2421, in scalar
return self._execute_internal(
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 2261, in _execute_internal
conn = self._connection_for_bind(bind)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 2113, in _connection_for_bind
return trans._connection_for_bind(engine, execution_options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<string>", line 2, in _connection_for_bind
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\state_changes.py", line 137, in _go
ret_value = fn(self, *arg, **kw)
^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 1191, in _connection_for_bind
conn = bind.connect()
^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\base.py", line 3295, in connect
return self._connection_cls(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\base.py", line 144, in __init__
self._dbapi_connection = engine.raw_connection()
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\base.py", line 3319, in raw_connection
return self.pool.connect()
^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 448, in connect
return _ConnectionFairy._checkout(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 1272, in _checkout
fairy = _ConnectionRecord.checkout(pool)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 712, in checkout
rec = pool._do_get()
^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\impl.py", line 178, in _do_get
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\impl.py", line 176, in _do_get
return self._create_connection()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 389, in _create_connection
return _ConnectionRecord(self)
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 674, in __init__
self.__connect()
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 900, in __connect
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 896, in __connect
self.dbapi_connection = connection = pool._invoke_creator(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\create.py", line 667, in connect
return dialect.connect(*cargs_tup, **cparams)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\default.py", line 630, in connect
return self.loaded_dbapi.connect(*cargs, **cparams) # type: ignore[no-any-return] # NOQA: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 176, in connect
await_only(creator_fn(*arg, **kw)),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 74, in _connect
await conn._connect()
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 540, in _connect
await self._request_authentication()
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 865, in _request_authentication
await self.caching_sha2_password_auth(auth_packet)
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 984, in caching_sha2_password_auth
data = _auth.sha2_rsa_encrypt(
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\pymysql\_auth.py", line 144, in sha2_rsa_encrypt
raise RuntimeError(
RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods
2026-09-10 19:56:15,991 ERROR [-] api: unhandled error on /api/auth/login
Traceback (most recent call last):
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\utils\request_id.py", line 28, in dispatch
response: Response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\routing.py", line 670, in __call__
await self.middleware_stack(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 2734, in app
await route.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1791, in _handle_selected
await route.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1800, in _handle_selected
await original_route.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1279, in handle
await app(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 158, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 144, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 706, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 352, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\api\routers\auth.py", line 18, in login
return success(await auth_login(db, body.username, body.password))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\service\auth.py", line 68, in login
user = await SysUserRepo(db).get_by_username(username)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\repositories\sys_user.py", line 14, in get_by_username
return await self.db.scalar(select(SysUser).where(SysUser.username == username))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 504, in scalar
return await greenlet_spawn(
^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 2421, in scalar
return self._execute_internal(
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 2261, in _execute_internal
conn = self._connection_for_bind(bind)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 2113, in _connection_for_bind
return trans._connection_for_bind(engine, execution_options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<string>", line 2, in _connection_for_bind
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\state_changes.py", line 137, in _go
ret_value = fn(self, *arg, **kw)
^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 1191, in _connection_for_bind
conn = bind.connect()
^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\base.py", line 3295, in connect
return self._connection_cls(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\base.py", line 144, in __init__
self._dbapi_connection = engine.raw_connection()
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\base.py", line 3319, in raw_connection
return self.pool.connect()
^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 448, in connect
return _ConnectionFairy._checkout(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 1272, in _checkout
fairy = _ConnectionRecord.checkout(pool)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 712, in checkout
rec = pool._do_get()
^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\impl.py", line 178, in _do_get
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\impl.py", line 176, in _do_get
return self._create_connection()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 389, in _create_connection
return _ConnectionRecord(self)
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 674, in __init__
self.__connect()
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 900, in __connect
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 896, in __connect
self.dbapi_connection = connection = pool._invoke_creator(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\create.py", line 667, in connect
return dialect.connect(*cargs_tup, **cparams)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\default.py", line 630, in connect
return self.loaded_dbapi.connect(*cargs, **cparams) # type: ignore[no-any-return] # NOQA: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 176, in connect
await_only(creator_fn(*arg, **kw)),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 74, in _connect
await conn._connect()
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 540, in _connect
await self._request_authentication()
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 865, in _request_authentication
await self.caching_sha2_password_auth(auth_packet)
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 984, in caching_sha2_password_auth
data = _auth.sha2_rsa_encrypt(
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\pymysql\_auth.py", line 144, in sha2_rsa_encrypt
raise RuntimeError(
RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods
2026-09-10 20:06:46,339 ERROR [-] api: unhandled error on /api/auth/login
Traceback (most recent call last):
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\utils\request_id.py", line 28, in dispatch
response: Response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\routing.py", line 660, in __call__
await self.middleware_stack(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 2531, in app
await route.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1700, in handle
await self.original_router.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 2586, in handle
await included_router._handle_selected(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1711, in _handle_selected
await route.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1700, in handle
await self.original_router.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 2586, in handle
await included_router._handle_selected(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1720, in _handle_selected
await original_route.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1239, in handle
await app(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 150, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 136, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 690, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 344, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\api\routers\auth.py", line 18, in login
return success(await auth_login(db, body.username, body.password))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\service\auth.py", line 68, in login
user = await SysUserRepo(db).get_by_username(username)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\repositories\sys_user.py", line 14, in get_by_username
return await self.db.scalar(select(SysUser).where(SysUser.username == username))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 504, in scalar
return await greenlet_spawn(
^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 2421, in scalar
return self._execute_internal(
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 2261, in _execute_internal
conn = self._connection_for_bind(bind)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 2113, in _connection_for_bind
return trans._connection_for_bind(engine, execution_options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<string>", line 2, in _connection_for_bind
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\state_changes.py", line 137, in _go
ret_value = fn(self, *arg, **kw)
^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 1191, in _connection_for_bind
conn = bind.connect()
^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\base.py", line 3295, in connect
return self._connection_cls(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\base.py", line 144, in __init__
self._dbapi_connection = engine.raw_connection()
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\base.py", line 3319, in raw_connection
return self.pool.connect()
^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 448, in connect
return _ConnectionFairy._checkout(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 1272, in _checkout
fairy = _ConnectionRecord.checkout(pool)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 712, in checkout
rec = pool._do_get()
^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\impl.py", line 178, in _do_get
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\impl.py", line 176, in _do_get
return self._create_connection()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 389, in _create_connection
return _ConnectionRecord(self)
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 674, in __init__
self.__connect()
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 900, in __connect
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 896, in __connect
self.dbapi_connection = connection = pool._invoke_creator(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\create.py", line 667, in connect
return dialect.connect(*cargs_tup, **cparams)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\default.py", line 630, in connect
return self.loaded_dbapi.connect(*cargs, **cparams) # type: ignore[no-any-return] # NOQA: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 176, in connect
await_only(creator_fn(*arg, **kw)),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 74, in _connect
await conn._connect()
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 540, in _connect
await self._request_authentication()
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 865, in _request_authentication
await self.caching_sha2_password_auth(auth_packet)
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 984, in caching_sha2_password_auth
data = _auth.sha2_rsa_encrypt(
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\pymysql\_auth.py", line 144, in sha2_rsa_encrypt
raise RuntimeError(
RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods
2026-09-10 20:06:54,037 ERROR [-] api: unhandled error on /api/auth/login
Traceback (most recent call last):
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\utils\request_id.py", line 28, in dispatch
response: Response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\routing.py", line 660, in __call__
await self.middleware_stack(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 2531, in app
await route.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1700, in handle
await self.original_router.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 2586, in handle
await included_router._handle_selected(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1711, in _handle_selected
await route.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1700, in handle
await self.original_router.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 2586, in handle
await included_router._handle_selected(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1720, in _handle_selected
await original_route.handle(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 1239, in handle
await app(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 150, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "D:\cocnd\envs\fund\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 136, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 690, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\fastapi\routing.py", line 344, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\api\routers\auth.py", line 18, in login
return success(await auth_login(db, body.username, body.password))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\service\auth.py", line 68, in login
user = await SysUserRepo(db).get_by_username(username)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\repositories\sys_user.py", line 14, in get_by_username
return await self.db.scalar(select(SysUser).where(SysUser.username == username))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 504, in scalar
return await greenlet_spawn(
^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 2421, in scalar
return self._execute_internal(
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 2261, in _execute_internal
conn = self._connection_for_bind(bind)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 2113, in _connection_for_bind
return trans._connection_for_bind(engine, execution_options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<string>", line 2, in _connection_for_bind
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\state_changes.py", line 137, in _go
ret_value = fn(self, *arg, **kw)
^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\orm\session.py", line 1191, in _connection_for_bind
conn = bind.connect()
^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\base.py", line 3295, in connect
return self._connection_cls(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\base.py", line 144, in __init__
self._dbapi_connection = engine.raw_connection()
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\base.py", line 3319, in raw_connection
return self.pool.connect()
^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 448, in connect
return _ConnectionFairy._checkout(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 1272, in _checkout
fairy = _ConnectionRecord.checkout(pool)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 712, in checkout
rec = pool._do_get()
^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\impl.py", line 178, in _do_get
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\impl.py", line 176, in _do_get
return self._create_connection()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 389, in _create_connection
return _ConnectionRecord(self)
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 674, in __init__
self.__connect()
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 900, in __connect
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\pool\base.py", line 896, in __connect
self.dbapi_connection = connection = pool._invoke_creator(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\create.py", line 667, in connect
return dialect.connect(*cargs_tup, **cparams)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\engine\default.py", line 630, in connect
return self.loaded_dbapi.connect(*cargs, **cparams) # type: ignore[no-any-return] # NOQA: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 176, in connect
await_only(creator_fn(*arg, **kw)),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 74, in _connect
await conn._connect()
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 540, in _connect
await self._request_authentication()
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 865, in _request_authentication
await self.caching_sha2_password_auth(auth_packet)
File "D:\cocnd\envs\fund\Lib\site-packages\aiomysql\connection.py", line 984, in caching_sha2_password_auth
data = _auth.sha2_rsa_encrypt(
^^^^^^^^^^^^^^^^^^^^^^^
File "D:\cocnd\envs\fund\Lib\site-packages\pymysql\_auth.py", line 144, in sha2_rsa_encrypt
raise RuntimeError(
RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods
2026-09-10 20:15:28,098 ERROR [-] api: unhandled error on /api/auth/login
Traceback (most recent call last):
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\utils\request_id.py", line 28, in dispatch
response: Response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\routing.py", line 670, in __call__
await self.middleware_stack(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 2734, in app
await route.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1791, in _handle_selected
await route.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1800, in _handle_selected
await original_route.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1279, in handle
await app(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 158, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 144, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 481, in app
solved_result = await solve_dependencies(
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\dependencies\utils.py", line 668, in solve_dependencies
solved = await _solve_generator(
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\dependencies\utils.py", line 574, in _solve_generator
return await stack.enter_async_context(cm)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\AppData\Roaming\uv\python\cpython-3.12.14-windows-x86_64-none\Lib\contextlib.py", line 659, in enter_async_context
result = await _enter(cm)
^^^^^^^^^^^^^^^^
File "C:\Users\Windows\AppData\Roaming\uv\python\cpython-3.12.14-windows-x86_64-none\Lib\contextlib.py", line 210, in __aenter__
return await anext(self.gen)
^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\config\deps.py", line 7, in get_db
async with mysql.get_session_factory()() as session:
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\config\database\mysql.py", line 32, in get_session_factory
_sessionmaker = async_sessionmaker(bind=get_engine(), expire_on_commit=False)
^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\config\database\mysql.py", line 17, in get_engine
_engine = create_async_engine(
^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\ext\asyncio\engine.py", line 120, in create_async_engine
sync_engine = _create_engine(url, **kw)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "<string>", line 2, in create_engine
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\deprecations.py", line 281, in warned
return fn(*args, **kwargs) # type: ignore[no-any-return]
^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\create.py", line 617, in create_engine
dbapi = dbapi_meth(**dbapi_args)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 229, in import_dbapi
__import__("aiomysql"), __import__("pymysql")
^^^^^^^^^^^^^^^^^^^^^^
ModuleNotFoundError: No module named 'aiomysql'
2026-09-10 20:15:47,067 ERROR [-] api: unhandled error on /api/auth/login
Traceback (most recent call last):
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\utils\request_id.py", line 28, in dispatch
response: Response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\routing.py", line 670, in __call__
await self.middleware_stack(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 2734, in app
await route.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1791, in _handle_selected
await route.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1800, in _handle_selected
await original_route.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1279, in handle
await app(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 158, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 144, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 706, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 352, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\api\routers\auth.py", line 18, in login
return success(await auth_login(db, body.username, body.password))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\service\auth.py", line 68, in login
user = await SysUserRepo(db).get_by_username(username)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\repositories\sys_user.py", line 14, in get_by_username
return await self.db.scalar(select(SysUser).where(SysUser.username == username))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 504, in scalar
return await greenlet_spawn(
^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2421, in scalar
return self._execute_internal(
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2261, in _execute_internal
conn = self._connection_for_bind(bind)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2113, in _connection_for_bind
return trans._connection_for_bind(engine, execution_options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<string>", line 2, in _connection_for_bind
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\state_changes.py", line 137, in _go
ret_value = fn(self, *arg, **kw)
^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\session.py", line 1191, in _connection_for_bind
conn = bind.connect()
^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 3295, in connect
return self._connection_cls(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 144, in __init__
self._dbapi_connection = engine.raw_connection()
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 3319, in raw_connection
return self.pool.connect()
^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 448, in connect
return _ConnectionFairy._checkout(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 1272, in _checkout
fairy = _ConnectionRecord.checkout(pool)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 712, in checkout
rec = pool._do_get()
^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\impl.py", line 178, in _do_get
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\impl.py", line 176, in _do_get
return self._create_connection()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 389, in _create_connection
return _ConnectionRecord(self)
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 674, in __init__
self.__connect()
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 900, in __connect
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 896, in __connect
self.dbapi_connection = connection = pool._invoke_creator(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\create.py", line 667, in connect
return dialect.connect(*cargs_tup, **cparams)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\default.py", line 630, in connect
return self.loaded_dbapi.connect(*cargs, **cparams) # type: ignore[no-any-return] # NOQA: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 176, in connect
await_only(creator_fn(*arg, **kw)),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\aiomysql\connection.py", line 74, in _connect
await conn._connect()
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\aiomysql\connection.py", line 540, in _connect
await self._request_authentication()
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\aiomysql\connection.py", line 865, in _request_authentication
await self.caching_sha2_password_auth(auth_packet)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\aiomysql\connection.py", line 984, in caching_sha2_password_auth
data = _auth.sha2_rsa_encrypt(
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\pymysql\_auth.py", line 144, in sha2_rsa_encrypt
raise RuntimeError(
RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods
2026-09-10 20:18:52,269 ERROR [-] api: unhandled error on /api/auth/login
Traceback (most recent call last):
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\utils\request_id.py", line 28, in dispatch
response: Response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\routing.py", line 670, in __call__
await self.middleware_stack(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 2734, in app
await route.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1791, in _handle_selected
await route.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1800, in _handle_selected
await original_route.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1279, in handle
await app(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 158, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 144, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 706, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 352, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\api\routers\auth.py", line 18, in login
return success(await auth_login(db, body.username, body.password))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\service\auth.py", line 68, in login
user = await SysUserRepo(db).get_by_username(username)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\repositories\sys_user.py", line 14, in get_by_username
return await self.db.scalar(select(SysUser).where(SysUser.username == username))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 504, in scalar
return await greenlet_spawn(
^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2421, in scalar
return self._execute_internal(
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2261, in _execute_internal
conn = self._connection_for_bind(bind)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2113, in _connection_for_bind
return trans._connection_for_bind(engine, execution_options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<string>", line 2, in _connection_for_bind
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\state_changes.py", line 137, in _go
ret_value = fn(self, *arg, **kw)
^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\session.py", line 1191, in _connection_for_bind
conn = bind.connect()
^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 3295, in connect
return self._connection_cls(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 144, in __init__
self._dbapi_connection = engine.raw_connection()
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 3319, in raw_connection
return self.pool.connect()
^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 448, in connect
return _ConnectionFairy._checkout(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 1272, in _checkout
fairy = _ConnectionRecord.checkout(pool)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 712, in checkout
rec = pool._do_get()
^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\impl.py", line 178, in _do_get
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\impl.py", line 176, in _do_get
return self._create_connection()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 389, in _create_connection
return _ConnectionRecord(self)
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 674, in __init__
self.__connect()
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 900, in __connect
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 896, in __connect
self.dbapi_connection = connection = pool._invoke_creator(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\create.py", line 667, in connect
return dialect.connect(*cargs_tup, **cparams)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\default.py", line 630, in connect
return self.loaded_dbapi.connect(*cargs, **cparams) # type: ignore[no-any-return] # NOQA: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 176, in connect
await_only(creator_fn(*arg, **kw)),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\aiomysql\connection.py", line 74, in _connect
await conn._connect()
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\aiomysql\connection.py", line 540, in _connect
await self._request_authentication()
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\aiomysql\connection.py", line 865, in _request_authentication
await self.caching_sha2_password_auth(auth_packet)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\aiomysql\connection.py", line 984, in caching_sha2_password_auth
data = _auth.sha2_rsa_encrypt(
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\pymysql\_auth.py", line 144, in sha2_rsa_encrypt
raise RuntimeError(
RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods
2026-09-10 20:26:43,171 ERROR [-] api: unhandled error on /api/auth/login
Traceback (most recent call last):
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\utils\request_id.py", line 28, in dispatch
response: Response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\routing.py", line 670, in __call__
await self.middleware_stack(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 2734, in app
await route.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1791, in _handle_selected
await route.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1780, in handle
await self.original_router.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 2789, in handle
await included_router._handle_selected(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1800, in _handle_selected
await original_route.handle(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 1279, in handle
await app(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 158, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 144, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 706, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\fastapi\routing.py", line 352, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\api\routers\auth.py", line 18, in login
return success(await auth_login(db, body.username, body.password))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\service\auth.py", line 68, in login
user = await SysUserRepo(db).get_by_username(username)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\repositories\sys_user.py", line 14, in get_by_username
return await self.db.scalar(select(SysUser).where(SysUser.username == username))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 504, in scalar
return await greenlet_spawn(
^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2421, in scalar
return self._execute_internal(
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2261, in _execute_internal
conn = self._connection_for_bind(bind)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2113, in _connection_for_bind
return trans._connection_for_bind(engine, execution_options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<string>", line 2, in _connection_for_bind
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\state_changes.py", line 137, in _go
ret_value = fn(self, *arg, **kw)
^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\orm\session.py", line 1191, in _connection_for_bind
conn = bind.connect()
^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 3295, in connect
return self._connection_cls(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 144, in __init__
self._dbapi_connection = engine.raw_connection()
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\base.py", line 3319, in raw_connection
return self.pool.connect()
^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 448, in connect
return _ConnectionFairy._checkout(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 1272, in _checkout
fairy = _ConnectionRecord.checkout(pool)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 712, in checkout
rec = pool._do_get()
^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\impl.py", line 178, in _do_get
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\impl.py", line 176, in _do_get
return self._create_connection()
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 389, in _create_connection
return _ConnectionRecord(self)
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 674, in __init__
self.__connect()
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 900, in __connect
with util.safe_reraise():
^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\langhelpers.py", line 122, in __exit__
raise exc_value.with_traceback(exc_tb)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\pool\base.py", line 896, in __connect
self.dbapi_connection = connection = pool._invoke_creator(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\create.py", line 667, in connect
return dialect.connect(*cargs_tup, **cparams)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\engine\default.py", line 630, in connect
return self.loaded_dbapi.connect(*cargs, **cparams) # type: ignore[no-any-return] # NOQA: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\dialects\mysql\aiomysql.py", line 176, in connect
await_only(creator_fn(*arg, **kw)),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\aiomysql\connection.py", line 74, in _connect
await conn._connect()
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\aiomysql\connection.py", line 540, in _connect
await self._request_authentication()
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\aiomysql\connection.py", line 865, in _request_authentication
await self.caching_sha2_password_auth(auth_packet)
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\aiomysql\connection.py", line 984, in caching_sha2_password_auth
data = _auth.sha2_rsa_encrypt(
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Windows\Desktop\fund\venv\Lib\site-packages\pymysql\_auth.py", line 144, in sha2_rsa_encrypt
raise RuntimeError(
RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods