Repository navigation
feat: error reporting #39
- Adds
Aptabase.shared.trackError(error)andtrackError(error, fatal: true). Reports include the error type, message, stack trace, severity and how the error was captured, and appear on the Errors page of your dashboard. Error reporting is in beta. - Reports are sent immediately and retried on network failures. Errors count against a separate monthly error quota.
- Uncaught exceptions and crashes are not reported automatically yet. Call
trackErrorfrom your own error handling.
do {
try someFailingFunction()
} catch {
Aptabase.shared.trackError(error) // severity: error
}
Aptabase.shared.trackError(error, fatal: true) // severity: fatalfixes
- Fix a crash in
ConcurrentQueue(Array replace: subrange extends past the end) when two flushes overlapped, for example the timer flush and an app lifecycle flush #38 EventDispatcheris now an actor, preventing concurrent mutation of the event queue (fixes #23 and #25) #33- Adds an
asyncvariant ofAptabase.shared.flush()that returns after the events have been sent (fixes #29) #31 - Event delivery now starts at initialization, so macOS File Provider extensions and clients initialized after app activation no longer queue events indefinitely while waiting for a foreground notification #40
- Builds on Xcode 16 again #41
- CI runs on
macos-15with Xcode 16
Thanks to @The-Wolfson, @aswyer, @Kevin-4Spaces and @mrosberghaus for the contributions.