-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
README: add section about using Firebase from a framework #5181
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great! Thanks Maksym!
I think this is big enough for its own page with a link from the main README
Consider adding a section about the recommended way to modularize.
This is awesome Maksym, thank you! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I might not be fully understanding the pictures.
For me, it would be most illustrative to show before and after linking for both cases. In the static after case, everything is in the app box. In the dynamic case there is a copy of the static library both in the app and the dynamic library that will be loaded later at runtime.
docs/firebase_in_libraries.md
Outdated
use both the dynamic framework and one of its static dependencies directly in your app or another framework. In this case if you attempt to link | ||
the same static framework/library to both the app and the dynamic framework you will end up with the static framework symbols added to both the app and the dynamic framework binaries. It means that when you app launches | ||
it will have two copy of the static framework symbols. This leads to undefined behavior (especially when | ||
different versions of the static framework are linking to the app and the dynamic framework). For example, a `dispatch_once` may or may not do the right initialization since there are now two entities to initialize. Here are couple more examples of issues related to this undefined behavior: #4315, #5152, etc. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like GitHub links don't work from markdown. Please make into markdown links.
Also keep line lengths < 100 so the md file is readable in code editors
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @maksymmalyhin !
I'm going to merge this PR as is, but feel free to provide feedback to be addressed in the followup PRs. |
* [WIP] README: add section about using Firebase from a framework. * Typos, wording and examples * Move to a separate file * Add diagrams * Errors and issues examples. Cleanup. * Formatting * Issue links
* [WIP] README: add section about using Firebase from a framework. * Typos, wording and examples * Move to a separate file * Add diagrams * Errors and issues examples. Cleanup. * Formatting * Issue links
A README section to address the confusing related to using Firebase from a framework/library. This should help developers with issues like firebase/quickstart-ios#936, #5152, #4315, etc.
#no-changelog