From 5942ce0bf68bec0c6bb89064f1114deb2f61945b Mon Sep 17 00:00:00 2001 From: Joshua Horton Date: Wed, 21 May 2025 09:07:08 +0700 Subject: [PATCH] change(ios): revert temp dev-changes to display "force error" option Also adds minor documentation to new SentryManager.swift additions Fixes: KEYMAN-IOS-MJ This error was manually triggered to validate this PR's actual changes, given that the aim is to enhance error logging. --- .../KMEI/KeymanEngine/Classes/Errors/SentryManager.swift | 8 ++++++-- .../KeymanEngine/Classes/SettingsViewController.swift | 4 ++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/ios/engine/KMEI/KeymanEngine/Classes/Errors/SentryManager.swift b/ios/engine/KMEI/KeymanEngine/Classes/Errors/SentryManager.swift index 0bb910bdcd..aac335227b 100644 --- a/ios/engine/KMEI/KeymanEngine/Classes/Errors/SentryManager.swift +++ b/ios/engine/KMEI/KeymanEngine/Classes/Errors/SentryManager.swift @@ -16,12 +16,17 @@ import os.log */ public class SentryManager { private static var _started: Bool = false + + // Set once Manager.shared is fully initialized and safe to reference. private static var engineHasInitialized: Bool = false public static var hasStarted: Bool { return _started } + /** + This method should be called once Manager.shared is fully initialized and safe to reference - a precondition needed to enable engine-state logging, such as current keyboard, etc when errors occur. + */ public static func setEngineInitialized() { engineHasInitialized = true } @@ -183,7 +188,6 @@ public class SentryManager { public static func forceError() { SentrySDK.addBreadcrumb(Sentry.Breadcrumb(level: .info, category: "Deliberate testing error")) - capture("Deliberate testing error", sentryLevel: .error) -// SentrySDK.crash() + SentrySDK.crash() } } diff --git a/ios/engine/KMEI/KeymanEngine/Classes/SettingsViewController.swift b/ios/engine/KMEI/KeymanEngine/Classes/SettingsViewController.swift index bb6b14ee1b..750b5d4c1c 100644 --- a/ios/engine/KMEI/KeymanEngine/Classes/SettingsViewController.swift +++ b/ios/engine/KMEI/KeymanEngine/Classes/SettingsViewController.swift @@ -111,13 +111,13 @@ open class SettingsViewController: UITableViewController { "reuseid" : "installfile" ]) -// #if DEBUG && !NO_SENTRY + #if DEBUG && !NO_SENTRY itemsArray.append([ "title": "Force a crash", "subtitle": "Test Sentry error-reporting integration", "reuseid" : "forcederror" ]) -// #endif + #endif _ = view }