aiteamutils 0.2.46__tar.gz → 0.2.47__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aiteamutils
3
- Version: 0.2.46
3
+ Version: 0.2.47
4
4
  Summary: AI Team Utilities
5
5
  Project-URL: Homepage, https://github.com/yourusername/aiteamutils
6
6
  Project-URL: Issues, https://github.com/yourusername/aiteamutils/issues
@@ -1020,6 +1020,7 @@ async def get_db() -> AsyncGenerator[AsyncSession, None]:
1020
1020
  source_function="get_db"
1021
1021
  )
1022
1022
 
1023
+ session = None
1023
1024
  try:
1024
1025
  async with db_service.get_session() as session:
1025
1026
  if session is None:
@@ -1042,6 +1043,8 @@ async def get_db() -> AsyncGenerator[AsyncSession, None]:
1042
1043
 
1043
1044
  yield session
1044
1045
  except Exception as e:
1046
+ if isinstance(e, CustomException):
1047
+ raise e
1045
1048
  raise CustomException(
1046
1049
  ErrorCode.DB_CONNECTION_ERROR,
1047
1050
  detail=f"Failed to get database session: {str(e)}",
@@ -1049,7 +1052,7 @@ async def get_db() -> AsyncGenerator[AsyncSession, None]:
1049
1052
  original_error=e
1050
1053
  )
1051
1054
  finally:
1052
- if 'session' in locals() and session is not None:
1055
+ if session:
1053
1056
  await session.close()
1054
1057
 
1055
1058
  async def get_database_service() -> DatabaseService:
@@ -56,13 +56,23 @@ def get_service(name: str):
56
56
  Returns:
57
57
  Callable: 서비스 인스턴스를 반환하는 의존성 함수
58
58
  """
59
- async def _get_service(db_service = Depends(get_database_service), session = Depends(get_db)):
59
+ async def _get_service(db_service = Depends(get_database_service)):
60
60
  try:
61
61
  repository_class, service_class = service_registry.get(name)
62
62
  repository = repository_class(db_service)
63
63
  service = service_class(repository, db_service)
64
- service.session = session
65
- return service
64
+
65
+ # 세션 생성 및 설정
66
+ async with db_service.get_session() as session:
67
+ if session is None:
68
+ raise CustomException(
69
+ ErrorCode.DB_CONNECTION_ERROR,
70
+ detail="Failed to create database session",
71
+ source_function="dependencies.get_service"
72
+ )
73
+ service.session = session
74
+ return service
75
+
66
76
  except CustomException as e:
67
77
  raise e
68
78
  except Exception as e:
@@ -0,0 +1,2 @@
1
+ """버전 정보"""
2
+ __version__ = "0.2.47"
@@ -1,2 +0,0 @@
1
- """버전 정보"""
2
- __version__ = "0.2.46"
File without changes
File without changes
File without changes
File without changes