v1.8.5

24 de julio de 2026

Hotfix: corrige el fallo de inicio introducido en 1.8.4 (EXC_BREAKPOINT desde libdispatch: trying to lock recursively), añadiendo una salvaguarda contra la reentrada del token dispatch_once del static let en AppSettingsCache cuando LoggerService se inicializa durante la primera carga de SwiftData.

Destacados

  • Arreglo del fallo de inicio: AppSettingsCache ahora replica el patrón de protección de reentrada que ya usa LoggerService.initDepth. Las lecturas devuelven su valor predeterminado y las escrituras se descartan mientras loadFromSwiftData() se está ejecutando, por lo que el ciclo LocalizationManager → AppSettingsCache → SwiftDataContainer → LoggerService → LogManager → AppSettingsCache ya no puede reentrar el mismo token de dispatch_once. Afecta a todas las configuraciones de compilación (Debug y Release).

Cambios detallados

  • Añadir el contador AppSettingsCache.initDepth y aplicarlo como guarda en todos los accesores públicos get*/set*/remove
  • Incrementar initDepth dentro de ensureLoaded() mientras se ejecuta loadFromSwiftData(), de modo que las llamadas transitivas de vuelta a AppSettingsCache.shared durante la cadena de inicialización al arrancar se traten como no-op
  • Subir la versión de marketing a 1.8.5 y el número de build a 28 en project.yml, los dos Info.plist y docs/_config.yml