- New: the xcframework is now digitally signed.
- Breaking update: removed Bitcode, since now Apple rejects builds with Bitcode.
- Breaking update: built with Xcode 15, which means you will need Xcode 15 or newer to build your application.
- Breaking update: supports iOS version 12.0 and newer (iOS deployment target)
- Breaking update: drop static library and dynamic framework builds.
- Note there’s no functionality change vs prior version (1.13.2)
- Update: remove KSCrash logs to console output (there are benign error messages)
- Bugfix: replace ID generation function that lead to sporadically missing logs when processing a high volume in a short time
- Bugfix: bfsdk_ksfu_readEntireFile reimplementation regression introduced in 1.13.0
- Update: add PrivacyInfo.xcprivacy to automatically recognize "other diagnostic data" is being collected, with no tracking and no association with the user identity
- Update: declare accepted usage of NSUserDefaults in PrivacyInfo.xcprivacy
- Update: replace some API calls that would "require a reason" -- whilst the reason is not tracking, Apple has not yet listed a suitable accepted reason item. we have removed them to prevent warnings or other issues because of BugfenderSDK usage
- Bugfix: race condition when setting device key-values that may lead to a crash
- This release fixes problems with Cocoapods and static library in the previous release.
- Feature: Add
enableNSLogLogging
&enableNSLogLoggingWithInterceptor
method that allows to automatically capture logs written via NSLog or OSLog. - Internal: Changes on library initialization.
- Feature: Add
enableUIEventLoggingWithIgnoredViewTags
method that allows to avoid generating logs for some views - Changed
setMaximumLocalStorageSize
to not throw an Exception if the value provided is out of range.
- Fix: Possible crash due to corrupted crash log
- Feature: iOS device name is not gathered anymore, it has been replaced by the device model.
- Fix: upload symbols script was not working properly
- Add upload symbols script to Bugfender Pod
- Bugfix: user feedback dialog navigation bar sometimes not styling properly
- Bugfix: crashes sometimes reported in the wrong session when the application crashes multiple times in a row
- Bugfix: fixed potential crash when setting custom device data
- Bugfix: fixed potential crash or missing logs when app is in background mode in combination with protected data classes
- More efficient API calls
- Bugfender was compiled with Xcode 12 and is SPM compatible now
- Additionally dynamic framework and static libraries without simulator arm slice are provided for retrocompatiblity but they should be avoided
- Feature: added a new overrideDeviceName(String) that allows to customize the name of the device.
- Fix: returning URLs from device/issue/session missing path segment
- Support for CocoaPods 1.9.0 and xcframework
- Added xcframework to support Project Catalyst
- Bugfender is now a dynamic library and swift files are included inside. No need to manually add the swift bridge anymore
- Bugfender will return a specific -1004 error when trying to send logs to an app that was deleted in the server
- Fixed an issue in which retrieving the session identifier right after activateLogger might result in a null identifier under certain conditions and this could provocate a crash in swift projects
- Changed pulic api so URL dependant identifiers are nullable properties now
- Added new log levels
- The device identifier, the session identifier and sending an issue (issue, crash or user feedback) will return now URLs to the Bugfender's Dashboard. This can be used to create automations and to integrate BugfenderSDK with third party tools
- Fixed race condition that may prevent some crashes to be correctly displayed in the Bugfender's Dashboard
- Added new method allowing developers to manually send crash reports to Bugfender
- Fixed an async task that may block a background thread
- Improved how user defined key-values synchronize with the server
- Fixed race condition that may lead to a heap corruption in low connectivity conditions
- Fixed threading issue that may lead to a crash under stress conditions
- Improved the memory footprint of BugfenderSDK. The SDK, in general, will need less memory to perform normal operations
- Improved the behaviour of the SDK heartbeat for apps which are never fully closed
- Fixed crash when a device was trying to send an abnormally big amount of logs to the server
- Logs have been limited to 32000 characters in order to avoid memory issues in devices with low resources available
- Updated docs regarding to the ussage of the tags
- Other minor performance issues
- Fixed crash when using the Bugfender User Feedback in Swift
- Improved return key type in the User Feedback textfields
- Featuring the new Bugfender User Feedback. A fast and easy way to gather feedback from the users
- Fixed swift bridges sending the full path of the files instead the filename
- Fixed an issue in which gap logs were reporting wrong begin/end dates
- Addressing an issue in which access to the iOS keychain in the background may cause a crash
- Fixed SDK sending wrong timestamp in crash
- Fixed when receiving a big number of logs per seconds the SDK may use a lot of RAM and the app may crash. New implementation will ignore new Log operations if it receives a memory warning until the Log queue is reduced.
- Fixed issue with some crashes was not sent.
- Implement refresh device status
- Fixed issue with the device key-values
- Improved efficiency of background cleanup process
- Added crash reporting
- Added information when deleting logs unsent to the server
- Added exponential back off if the server is not reachable
- Added method for setting API endpoint
- Fixed crash when sendIssues is called with nil parameters.
- Adding some other parameter validations.
- Fixed minor issues.
- Fixed minor issues.
- Added method to get the session identifier.
- Now send issue method returns the issue identifier.
- Fixed issue with the latest release.
- Improvements with the CPU consumption.
- Stability update: fixed crash in very rare circumstances.
- Improvements when the sdk is deleting the old logs because the max storage size is reached.
- Fixing CocoaPods when using static libraries in Objective-C
- Now compatible with Swift 2.3, 3.0 and 3.1
- Fixing appledoc, fixToConsole default setting wrongly documented
- Fixing appledoc, some argument names were wrong
- Printing an empty line on BFLog(nil);
- Declared the framework as a Clang module, so that the framework can be used in Swift without bridging headers
- Removed redundant and outdated method calls to make the SDK docs/API cleaner
- Published helper file for Swift projects
- Stability update: fixed crash in very rare circumstances.
- Improved networking code, smaller and more efficient
- Fixed conflict with AFNetworking library
- enableNSLogLogging is now marked as deprecated, not working since iOS 10
- Dropping support for iOS 7
- Improvements on the networking code
- Better formatting of the automated user interaction logging
- Fixing missing some NSLogs at the beginning and end of the session, especially on iOS 10
- Fixing documentation warnings raised by Xcode 8
- Fixing duplicated logs from NSLog when DEBUG macro is defined when using BFLog
- Fixing bug that sends empty sessions to the server
- Fixing a bug that reports wrong app version information when the build number contains the dot character
- Fixing wake lock to avoid applications dying faster in the background
- Bug fix: date formatting in devices in Arabic
- Improves: format for UI events
- fixing nil dereference exceptions (rarely seen)
- Fixes synchronization of device details set with setDevice*
- Allows the change of the API endpoint via environment variable for Bugfender preproduction tests
- Fixes #11, crash when using Bugfender with CocoaLumberjack and empty log message
- Fixes timestamp estimation and some UIEvents without timestamp.
- Better description for topmost view controller and UIEvents
- Recompiled with Xcode 7, supports Bitcode
- Fixed crash on iOS7 when NSLog logging is enabled
- Added documentation about issues
- Added issues
- Option to send logs from the app
- Added device detail key-value storage
- Fixed a crash when device disk was full
- Efficiency and stability improvements
- Automated logging of NSLog
- Automated UIEvent logging
- Efficiency and stability improvements