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
[face-detector] Make Firebase pods version customisable, so it can be used with bare projects #7141
Conversation
1144653
to
8656166
Compare
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.
LGTM! 👌 Would you also, please, reinstall pods in bare-expo
? 🙏
This makes the firebase pod version overridable so that this package can be used in bare projects, together with other firebase packages. When Firebase versions differ accross multiple packages, pod install will fail. This follows the `$FirebaseSDKVersion` constants also used by react-native-firebase to maximize interop and make it easier for users to configure. [face-detector] Remove explicit FirebaseMLVision dependencies [face-detector] Update changelog Update packages/expo-face-detector/CHANGELOG.md Co-authored-by: Stanisław Chmiela <sjchmiela@users.noreply.github.com>
9f3034b
to
61f169a
Compare
@sjchmiela Rebased on master and re-installed pods 👍 |
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.
LGTM! Let's merge it! 👌
Co-authored-by: Stanisław Chmiela <sjchmiela@users.noreply.github.com>
Why
This PR makes the Firebase Pods version for
expo-face-detector
customisable through aFirebaseSDKVersion
constant. This allows for using this package in bare projects side by side with other packages such asreact-native-firebase
orexpo-firebase-analytics
, that possibly specify a different version in their Pod file.How
This adds the optional use of a constant called
FirebaseSDKVersion
to your podfile. When existent, it uses the firebase version as defined in the constant. Otherwise it uses the default version. This constant is the same as defined inreact-native-firebase
making interop & configuration easier.This PR also removes the explicit pod references to
FirebaseMLVision
andFirebaseMLCommon
, which are imported implicitly byFirebase/MLVision
and were added in #5685. Explicitly defining these kinds of implicit dependencies seems like a bad strategy and gives only partial guarantees. If you would want a full guarantee, then you would need to explicitly define every implicitly imported Pod dependency, which is not a feasible thing to do (imo).Test Plan
expo-face-detector
and@react-native-firebase/app
to a bare projectcd ios && pod install
)$FirebaseSDKVersion = 'x.x.x'
at the top of the Podfilecd ios && pod install
)