Repository navigation
2.3.0
[V 2.3.0]
Breaking
- DIContainer 동기화 변경
- DIContainer.getAutoGeneratedGraph(), getOptimizedTypes(), getDetectedCircularDependencies(), getUsageStatistics(), isAutoOptimized(_:)가 동기 함수로 변경됨. 호출부의 await 제거 필요. 파일: Sources/Core/Container/DIContainer.swift:536
- UnifiedDI 동기화 변경
- UnifiedDI.autoGraph(), optimizedTypes(), circularDependencies(), stats(), isOptimized(_:)가 동기 함수로 변경됨. 호출부의 await 제거 필요. 파일: Sources/Core/API/UnifiedDI.swift:318
Added
- 동기 접근용 로깅 레벨 프로퍼티 추가: UnifiedDI.logLevel. 파일: Sources/Core/API/UnifiedDI.swift:393
- 그래프 시각화에 “등록된 노드(타입)” 출력 추가. 파일: Sources/Core/Auto/AutoDIOptimizer.swift:270
Changed
- AutoDIOptimizer 스레드 안전화
- NSLock 기반 내부 상태 보호 및 스냅샷 접근 도입(등록/해결/그래프/통계/순환 탐지). 파일: Sources/Core/Auto/AutoDIOptimizer.swift:31
- getCurrentLogLevel()이 실제 설정 값을 반환하도록 수정. 파일: Sources/Core/Auto/AutoDIOptimizer.swift:100
- trackResolution(_:)가 최적화 비활성화 상태에서도 사용 통계를 항상 집계하도록 변경(최적화 제안만 비활성화). 파일: Sources/Core/Auto/AutoDIOptimizer.swift:63
Fixed
- 동시성 접근 시 간헐적 크래시(EXC_BAD_ACCESS) 해결: AutoDIOptimizer 내부 데이터 경쟁 제거. 파일: Sources/Core/Auto/AutoDIOptimizer.swift
- “No 'async' operations occur within 'await' expression” 경고 제거: 동기 함수로 시그니처 정리. 파일: Sources/Core/Container/DIContainer.swift:536, Sources/Core/API/UnifiedDI.swift:318
- “Result of call to 'registerIf' is unused” 경고 제거: @discardableResult 추가. 파일: Sources/Core/API/UnifiedDI.swift:302