November 21, 2014
iOS agent v4.139
Notes
Improvements
- Improved logging to identify when crash reporting is disabled during debugging.
- You can now disable the capture of the HTTP response body for requests by calling the
disableFeature
method and passing the flagNRMAFeatureFlag_httpResponseCapture
. - Added support for the armv7s architecture as it is not available in Xcode 6.
- The SDK was updated to accept the HTTP method in the signature of the
[NewRelic noticeNetworkRequestForURL]
and[NewRelic noticeNetworkFailureForURL]
methods allowing more detailed information to be collected. - The version of the New Relic iOS agent was added to the comments in NewRelic.h for convenience.
Fixes
- Corrected a potentially crashing situation when calling
[NewRelic noticeNetworkRequestForURL]
. - Updated SDK to include iOS agent symbols in crash reports that may include New Relic code.
- Removed potential deadlock on main thread for reachability requests by moving reachability flags off the main thread.
- Resolves a crashing issue with Swift related to cases where
class_getSuperClass()
was called with the root Swift class.
October 8, 2014
iOS agent v4.8.3
Notes
Improvements
- Crash reporting
- This release introduces crash reporting for mobile apps. Crash reporting supports capture and reporting of unhandled Objective-C runtime exceptions as well as native crashes like segfaults and bus errors.
- Crashes include Interaction trails: a history of automatically instrumented actions that occurred during the app session leading up to the crashing event. No breadcrumbs needed.
- The SDK includes a
[NewRelic crashNow]
method to trigger a test crash quickly and easily. - When an app is built for release, the debugging symbols are sent to New Relic (via a dSYM file) to automatically provide human-readable crash reports in the UI.
- Swift app compatibility
- This release can be safely included in Swift applications. While we do not yet support instrumentation of Swift code, the New Relic SDK is now capable of instrumenting the Objective-C code included in your Swift app.
- More configuration options
- An expanded runtime configuration API now supports disabling of crash reporting and interaction tracing, as well as enabling experimental Swift instrumentation for dynamically invoked methods.
September 12, 2014
iOS agent v3.412
Notes
Fixes
- Fixed minor memory leak caused by network instrumentation.
- Fixed a bug where network data was missing from interaction traces.
September 3, 2014
iOS agent v3.406
Notes
Fixes
- Corrected edge case that caused network requests to fail in a 400 error.
- Corrected issue causing New Relic Cross Application Tracing to fail.
August 27, 2014
iOS agent v3.398
Fixes
- Stability improvements: Certain application design patterns could trigger a concurrency problem in the New Relic SDK that caused app instability. This version properly handles those edge cases.
August 19, 2014
iOS agent v3.396
Notes
Fixes
- Stability improvements: Certain application design patterns could trigger a concurrency problem in the New Relic SDK that caused app instability. This version properly handles those edge cases.
- A memory leak in NRMATraceMachine has been removed.
August 5, 2014
iOS agent v3.380
Notes
Fixes
- Resolved issue that corrupted New Relic interaction trace data, and resulted in a "ThreadLocalTrace is not parentTrace" log message.
July 24, 2014
iOS agent v3.378
Notes
Improvements
- Fixed build errors in NewRelicFeatureFlags.h that occurred if NewRelic.h was imported before foundation.h in the prefix.pch file.
- Interaction traces period is more discrete. An interaction will only record traces until a new interaction is started, rather than combining the data into one interaction.
- The method
+[NRTaskQueue dequeue]
will no longer fire on the UI thread. - Interaction traces now have more easily identifiable names. Instead of “ViewController#Method” they will now be named “Display ViewController”.
- The healthy interaction timer will no longer fire repeatedly over very short intervals.
- The agent will no longer crash if the instrumented method:;
[NSURLConnection sendAsynchronousRequest:queue:completionHandler:]
is passed a nil completionHandler.
Fixes
- Default interaction traces can now be renamed by adding
@protocol NewRelicCustomInteractionInterface
( (defined in NewRelic.h) to the traced view controller. - Added new method for starting a custom interaction trace +startInteractionWithName: (defined in NewRelic.h)
- Deprecated the following methods in NewRelic.h :
+startInterationFromMethodName:object:
,+startInterationFromMethodName:object:customizedName
, and+startInterationFromMethodName:object:cancelRunningTrace:
. Use+startInteractionWithName:
instead. - Added method
+stopCurrentInteraction:
to NewRelic.h. Allows user to stop a custom interaction trace manually.
June 16, 2014
iOS agent v3.343
Notes
Fixes
- Fixed [AFURLSessionManager disposition]: unrecognized selector crash.
- Crashes in NRURLProtocol client call backs should no longer occur.
- Fixed C++ compilation error caused by the New Relic Agent feature flags.
Improvements
- Added new flag for NRFeatureFlags: NRFeatureFlag_ExperimentalNetworkingInstrumentation. This forces all network traffic to run through the NRURLProtocol, normally only traffic on UIWebViews are routed through the NRURLProtocol. It is not recommended to enable this flag.
May 16, 2014
iOS agent v3.324
Notes
Fixes
- Fixed crash: BAD_ACCESS in +[NRThreadLocalStore currentThreadDictionary]
- Resolves a warning from Veracode SAST about an unchecked return from a malloc call