• /
  • EnglishEspañolFrançais日本語한국어Português
  • Inicia sesiónComenzar ahora

iOS agent release notesRSS

October 19
iOS agent v7.7.9

Bug fixes

  • Fixed a crash (SIGSEGV or SIGBUS in SessionAttributeManager::generateJSONObject) on the harvest thread, which could also corrupt the heap and cause crashes elsewhere. The agent copied its internal session attributes, such as memUsageMb and lastInteraction, during a harvest without holding the lock that guards them, so it could read them while another thread was updating them. This issue was present in 7.7.8 and earlier.
  • Fixed the main thread blocking, and apps being terminated by the iOS watchdog (0x8BADF00D), once the event buffer was full and the app kept making network requests. The agent held a lock while it rewrote its on-disk copy of buffered events, and threads recording events, including the main thread, waited on that lock. Events dropped from a full buffer were also never removed from that copy, so it grew and was rewritten in full for every new event. Writes now happen without holding the lock, are batched, and dropped events are removed. This issue was present in 7.7.8 and earlier.
  • Fixed events occasionally going unreported when they were recorded, for example by a network request finishing, at the same moment the agent collected buffered events for a harvest. The agent cleared the buffer a second time after releasing its lock, which discarded any event added in between before it was sent. This issue was present in 7.7.8 and earlier.
  • Fixed the agent's own JSON work being recorded as app activity. NSJSONSerialization is instrumented for interaction traces, and the agent called it directly for every log message as well as for session attributes and handled exceptions. That added the agent's internal work to interaction traces and, when the app logged heavily, could overwhelm tracing. The agent now calls the original, uninstrumented implementation. This issue was present in 7.7.8 and earlier.
  • Fixed Session Replay accessibility identifier masking rules set in Application Settings being ignored on iOS. New Relic sends these rules to iOS apps with the identifier accessibilityIdentifier, but the agent only recognized tag, so every such rule was dropped. Both values are now accepted. A malformed rule is now skipped with a warning instead of discarding every rule or crashing the agent.
  • Fixed possible crashes in Session Replay masking. Masking lists could be updated by a reconnect, or by addSessionReplayMaskedAccessibilityIdentifier: and related APIs, while a frame was being captured, without holding the lock that capture uses. Custom masking rules containing values that can't be saved to NSUserDefaults, such as null, could also stop the app when the agent saved its configuration. Rules are now cleaned before they are stored, and every update to the masking lists is locked.
  • Fixed WKWebView navigations being reported without a URL in apps built with the iOS 27 SDK. With that SDK, WKWebView.URL can still be nil when a navigation starts. The agent now falls back to the main-frame request URL from decidePolicyForNavigationAction.
  • Fixed possible EXC_BAD_ACCESS crash when using addHTTPHeaderTrackingFor.

October 6
iOS agent v7.7.8

Bug fixes

  • Fixed an issue where calling recordError under low-memory conditions could terminate the host application. Error reports are now dropped and logged, and New Relic agent frames are trimmed from the top of the recorded stack.
  • Fixed a crash in NRMALoggerBridge::log caused by a missing argument in a log format string when removing session attributes. Corrected two additional invalid format strings in the same component.
  • Fixed an issue where distributed tracing timestamps (tracestate and payload ti) were sent in seconds instead of milliseconds when using the new event system.
  • Fixed an issue where successful MobileRequest events lost all distributed tracing attributes when a cross-platform SDK passed traceHeaders.
  • Updated the native agent to prevent adding duplicate distributed traces to requests reported with traceHeaders by Flutter, React Native, or other hybrid agents. This applies to both MobileRequest and MobileRequestError in both event systems.
  • Enforced minimum and maximum boundary limits for MaxEventPoolSize and MaxEventBufferTime configuration settings (maximum buffer time capped at 600 seconds).
  • Updated recordCustomEvent to return a boolean indicating whether the event was successfully added when using the new event system, rather than always returning YES.
  • Updated React Native JavaScript error uploads to pass the correctly cased ReactNative platform value, matching the Android agent behavior.

September 8
iOS agent v7.7.7

Nueva característica

  • Se actualizó la configuración de compilación de XCFramework para apuntar a una versión de despliegue mínima de iOS 15.0 y tvOS 15.0, en consonancia con los requisitos mínimos de plataforma documentados.

Corrección de errores

  • Se resolvió un bloqueo (SIGSEGV dentro de objc_msgSend) que ocurría durante las lecturas de configuración de harvest. Ocho propiedades de objeto en NRMAHarvesterConfiguration declaradas como assign retenían punteros colgantes después del vaciado del autorelease pool de la respuesta /connect o del diccionario NSUserDefaults.

  • Se resolvió un problema en el que se descartaban todas las trazas de actividad de una sesión cuando la respuesta /connect omitía el atributo at_capture.

  • Se corrigió el valor platform reportado con errores de React Native para que se reporte como ReactNative.

  • Se corrigió el campo agentVersion en la carga de errores de JavaScript para informar con precisión la versión del agente de iOS en lugar de la versión de la plataforma del host.

  • Se actualizó la validación del atributo personalizado: pasar un objeto NSArray o NSDictionary como atributo de evento ahora registra un error explícito que identifica el tipo no compatible, reemplazando el mensaje de advertencia genérico "value must be an NSString, NSNumber, or BOOL".

August 13
iOS agent v7.7.6

Corregido en esta versión

  • Se corrigió el orden de los eventos de Session Replay antes de Meta/FullSnapshot.

  • se corrigió la posible pérdida de datos al reescribir NRMAExceptionMetaDataStore.

  • Se corrigió el script de carga de sourcemap de RN.

  • Se corrigió un posible problema de reinicio de sesión en checkAndHandleSessionTimeout.

August 7
iOS agent v7.7.5

Corregido en esta versión

  • Se corrigió un error en el que llamar a setUserId con nil siempre iniciaba una nueva sesión.

  • Se evitó que los fotogramas antiguos de Session Replay se cargaran con una nueva sesión.

  • Se cambió reachability para actualizar una devolución de llamada en caso de cambio en lugar de llamarla cada vez.

  • Se corrigió un fallo de invalidación hexadecimal.

  • Se corrigió un fallo de vendorId de setUserId.

  • Se corrigió la atomicidad en las colecciones de traza de NRMA.

  • Se corrigió setUserId para que se mantenga sincrónico.

  • Se corrigió un fallo al cambiar Session Replay de un Timer a un DispatchSourceTimer.

  • Se corrigió un fallo de NRMAMethodProfiler de CoreData.

  • Se corrigió un fallo al hacer que sessionAttributeJSONString tome una instantánea de los diccionarios.

  • Se corrigió el texto de MSR al limitar el desplazamiento de compensación de ancho del texto de SwiftUI a su contenido.

  • Se corrigió una fuga de memoria de JSErrorController.

  • Se corrigió el texto de MSR al hacer referencia al peso de fuente numérico preciso en lugar del atributo binario de negrita.

  • Se actualizaron las herramientas de carga de dSYM para agregar el parámetro appVersion a dsym-upload-tools run-symbol-tool.

  • Se corrigieron los modales de SwiftUI faltantes en MSR.

July 9
iOS agent v7.7.4

Nueva característica

Los dispositivos simuladores ahora se reportan como simulator-(deviceType).

Corregido en esta versión

  • Se eliminó la detección de KMP que estaba causando inestabilidad en 7.7.3.
  • Se corrigió un bloqueo que podía ocurrir al registrar requests web asíncronas.
  • Se corrigió un bloqueo causado por una condición de carrera en la configuración de harvest.

Copyright © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.