* Firebase Installations: Instance ID now uses FIS under the hood. (#3398)
* Fix merge errors
* Use modular import for FIRInstanceID_Private.h
* Use modular imports for FirebaseInstanceID.h (#3509)
* Changes missing during the fix.
* Changes missing during merge.
* Fix header import.
* ./scripts/style.sh
* Fix FCM tests. (#3888)
* Fix IID FCM token check.
* FirebaseInstallation: merge master into FIS integration branch (#4076)
* Fix IID FCM token check.
* Unused constant deleted.
* FCM tests: fix bad merge.
* Remote Config test app: use local IID and FIS. (#4089)
* token request should pass through if token is not fresh (#4104)
* Merge errors fix.
* IID with FIS: send FIS auth token with IID token request (#4152)
* FIRInstanceIDTokenOperation: add FIS auth token to the IID token request.
* IID tests: don't use FIS private headers.
* IID: indication of compatibility with FIS (#4262)
* FIS: IID incompatible version exception.
* FirebaseInstallations.podspec: set preprocessor flags based on env vars.
* FIS Travis: set required env vars
* /scripts/style.sh
* IID: method to indicate FIS usege added.
* FIS: FIRInstantiationTimingEagerInDefaultApp
* FIS: FIRInstantiationTimingAlwaysEager
* IID: make compatibility method static.
* Make -[FIRInstanceID appInstanceID:] safe to be called from any thread (#4482)
* IID: use a cached value of FID for -[FIRInstanceID appInstanceID:]
* TODO comment
* TODO updated
* FirebaseInstallations: prepare IID with FIS dependency for release (#4522)
* Bump FIrebaseInstallations to 1.0.0
* Travis: remove mm/fis-integration-master branch
* Travis: if_changed script updated to reflect IID dependency on FIS.
* Revert "Travis: remove mm/fis-integration-master branch"
This reverts commit 534dff990a.
* Travis: remove mm/fis-integration-master branch (#4526)
* Formatting and spelling.
* Firebase example proj: pod deintegrate
Co-authored-by: Chen Liang <chliang@google.com>
* Fix container instantiation timing, IID startup.
The container instantiation could happen at the wrong time, before all
components have been added to the container. This fixes it, and also
moves IID to use the proper instantiation timing instead of relying on
the `configureWithApp:` call. This is part continuation of #3147, where
I'll be fixing the rest of the SDKs in follow up PRs.
* Typo
* Further work on instantiation timing.
This moves the instantiation of components to after the FirebaseApp is
completely configured and assigned, as it should be. This also exposed
a recursive issue with IID calling the Messaging singleton, which in
turn called IID and instantiated multiple instances.
A change was made to break the cycle: the Messaging `isAutoInitEnabled`
call was changed to a static method vs an instance method, allowing IID
to call it during initialization without instantiating the Messaging
instance (since it doesn't have a direct dependency on it).
* Revert unintentional formatting of entire FIRMessaging file.
* Fix tests.
* Format InstanceID.m
* Remove unused import.
* Fix ComponentContainer test.
* Minor PR feedback.
* Ensure Messaging instance is usable after FIRApp's `delete`
This fixes#3411. Test fails before the code change, and succeeds
afterwards.
* Update CHANGELOG.md
* Use Bug number instead of PR number
* Prevent Messaging and IID singleton usage during tests.
* Remove other uses of static Messaging instance.
* Removed usages of messagingForTests.
* Remove unused imports, unify testing code.
* Use local import path instead of framework import.
* Addition of global data collection switch.
* Added Messaging conformance to data switch.
Also formatted code.
* Move data collection flag internal until all SDKs conform to it.
* Formatting in response to code review.
* Migrate Firebase off @import statements
* - Migrate tests and test utils from @import to #import.
- Update Xcode projects for tests to explicitly link in framework deps.
- Update check_no_module_imports.sh to look for @imports in tests/test utils/
integration tests.
* Ensure check_no_module_imports.sh explicitly exits with code 0 on success.
* Remove mostly unused code from FIRMessagingLogger
This cleans up some left-over old logging logic from before we moved to FIRLogger in Firebase Core. We no longer need this logging functionality.
* Delete FIRMessagingConfig.{h,m}
We no longer need a config class to store an unused log level filter (that filter is no longer needed).