Comments (4)
Fixed in 1.0.1
from dd-sdk-ios.
Hey @lmramirez 👋. Thanks for details, this pretty much narrows the issue to one particular place in the SDK. We will work on this with the highest priority and see what's possible to solve this issue.
As a side note - this unfortunately comes from Apple's FileHandle
API limitation. Here's verbose a comment we left in our code:
dd-sdk-ios/Sources/Datadog/Core/Persistence/Files/File.swift
Lines 51 to 64 in 7a7766e
We'll try to install additional checks around to mitigate this as much as possible.
from dd-sdk-ios.
@ncreated thank you!
I'm familiar with the same issue since we actually ran into it in our application. For what it's worth, we ended up implementing an objective-c method to catch the exceptions. Not super pretty, but seems wo work well. Posting here in case it's helpful:
#import "ObjCExceptions.h"
@implementation ObjCExceptions
+ (BOOL)catchException:(void(^)(void))tryBlock error:(__autoreleasing NSError **)error {
@try {
tryBlock();
return YES;
}
@catch (NSException *exception) {
*error = [[NSError alloc] initWithDomain:exception.name code:0 userInfo:exception.userInfo];
return NO;
}
}
@end
There is probably a nicer way to do this using a function instead of a static method too.
from dd-sdk-ios.
Thank you @lmramirez 💪. This might be tricky as SPM doesn't allow mixing Obj-C with Swift code inside single package, and separating packages will not work easily for Cocoa Pods, but we'll have a look and fix this ASAP.
from dd-sdk-ios.
Related Issues (20)
- Can we use Head-based sampling on iOS? HOT 3
- iOS Kotlin Multiplatform hang after crash when using DatadogCrashReporting as a result of PLCrashReporter HOT 1
- If consent is not granted, I can't send any traces, even those without any user information. HOT 4
- Unable to use swift-api-digester when Datadog is a dependency HOT 4
- crash in KronosNTPPacket.prepareToSend(transmitTime:) HOT 1
- is NOT allowed to set HSTS for main doc HOT 2
- Sessions remaining pending after crash, how can I close them? HOT 10
- 2.7.1 - RUM not delivered, reporting internet connection offline when connected to wifi HOT 2
- Version 2.8.0 HOT 1
- Swift Package Manager warning: No rule to process file Datadog.modulemap HOT 2
- Is it safe to call enable multiple times? HOT 2
- Update Apple Privacy Manifest - add NSPrivacyAccessedAPICategorySystemBootTime HOT 6
- Missing crash report context HOT 5
- False `NSPrivacyAccessedAPICategoryFileTimestamp` API usage detection? (Privacy Manifest) HOT 7
- "Connect RUM and Traces" - documentation outdated? HOT 2
- Datadog RUM - swizzle() - main thread UI responsiveness issue HOT 5
- How do all SampleRates work on iOS? HOT 7
- Image render in session replay HOT 2
- Trace support for Apollo client SDK on iOS. HOT 9
- No logs with the v2.7.0 HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dd-sdk-ios.