-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
APPLICATION_EXTENSION_API_ONLY setting #63
Comments
Hi @fortmarek, I'm not sure if this can be helpful but in the release page you can download bugfender as static library as well: https://github.com/bugfender/BugfenderSDK-iOS/releases/tag/1.10.0 or following this link |
Hi @RubenVot! Thanks for the response! We're considering integrating bugfender manually to integrate it statically, but I'd rather not do so - is there any progress on this? |
Our code actually uses UIApplication.shared, so we can not enable that flag for now. We'll need to find out if it's possible to just make some of the API unavailable to extensions. |
Hello, how does it look few months later? It is pretty annoying to have 10+ warnings in project because of a single dependency and can easily cause that we will miss some really important warning. By using the
Then Xcode will not suggest that function in extensions and will not compile if used there giving error, it is not available in app extension. Thanks. |
Hi @olejnjak, there are deep implications so it's not that easy of a change, although we're working on it. Thanks for your patience. |
Hi! 👋
We are using your framework throughout our app and now we we'd like to use in our widget, too.
Now, widgets are more restrictive in what API you could use - eg if you used
UIApplication.shared
in your widget, it'd crash.To make sure that this does not happen, it's recommended to set
APPLICATION_EXTENSION_API_ONLY
setting totrue
. With that turned on,xcodebuild
statically checks your code for whether you use API not allowed in widget. It does so for transitive dependencies, too.Since the check is done statically, it can not do that for dynamic frameworks. Thus, if you import a dynamic framework that does not have the aforementioned setting turned on, it'll warn you with a message
linking against a dylib which is not safe for use in application extensions: ...
.We integrate Bugfender via SPM - which imports libraries statically - but
BugfenderLibrary
importsBugfenderSDK
dynamically, so we get that warning anyway.As the
BugfenderSDK
framework is closed source, would it be possible to setAPPLICATION_EXTENSION_API_ONLY
totrue
?FYI: we are using the latest version,
1.10.0
The text was updated successfully, but these errors were encountered: