* watchOS support for FirebaseAuth.
This is a redo of #5585, which was a re-implementation of #4632. This
ignores any changes to GoogleUtilities, those will be done in a later
PR to create a common KeyedArchiver utility.
Co-authored-by: Harri Hohteri <harri.hohteri@gmail.com>
* Fixed lint errors, added GHA tests.
* Enabled GHA for PRs as well.
Co-authored-by: Harri Hohteri <harri.hohteri@gmail.com>
* Update versions for Release 6.23.0
* Add FIAM to release manifest (#5383)
* Don't leak upload packages or deadlock on lifecycle events (#5382) (#5384)
* Don't leak upload packages or deadlock on lifecycle events
GDTCORUploadPackages would call targetToStorage in -initWithTarget. When this method was running during app terminate, this would cause a deadlock because calling targetToStorage is re-entrant while GDTCORRegistrar is sending lifecycle events to all the instances it's tracking.
NSTimer's invalidate method is also called whenever a package is completed, retried, or expired, without regard to the presence of a package handler.
A unit test is added to ensure that GDTCORUploadPackage's are not leaked by a retain
TSAN caught no issues
* Don't mark GDTCORUploadPackage -init as unavailable
Co-authored-by: Michael Haney <mikehaney24@users.noreply.github.com>
* FIAM bump podspec version to 0.19.3 (#5386)
* M69: add FIS. (#5412)
* M69: add FIS.
* Bump FIS version to 1.2.0
Co-authored-by: Michael Haney <mikehaney24@users.noreply.github.com>
* Update versions for Release 6.21.0
* Libraries should save state if a completion block is requested (#5147) (#5148)
* Libraries should save state if a completion block is requested
Currently, the onComplete block of sendXEvent:onComplete: is invoked when the event bytes are written to disk. However, if the app crashes before a lifecycle event occurs (trigger GDTCORStorage to serialize to disk), that event if effectively lost because the metadata has all been lost. This change triggers the saving of state of GDTCORStorage and prioritizers (if they implement it) if an onComplete block has been given.
* Remove RC from M67 (#5157)
* Revert "Migrate from using IID SDK for Remote Config to the new FIS SDK (#5096)" (#5156) (#5159)
This reverts commit 887ff82494.
* Only delete events when package was successfully delivered (#5172) (#5173)
* Only delete events when package was successfully delivered
* Add unit test to check that retrying a package delivery doesn't delete an event file
Co-authored-by: Michael Haney <mikehaney24@users.noreply.github.com>
Co-authored-by: Maksym Malyhin <mmaksym@google.com>
* Update versions for Release 6.15.0
* Update podspec dependencies for M62 (#4640)
* Cherry-picks for M62. (#4650)
* Include GoogleUtilities in the release manifest.
* Crashlytics fix header import ordering issue (#4649)
Co-authored-by: Sam Edson <samedson@google.com>
Co-authored-by: Ryan Wilson <wilsonryan@google.com>
* Update versions for Release 6.10.0
* Cherrypick #3983 and include Database in release. (#3986)
* Remove log argument that causes SocketRocket crash (#3983)
* Add FirebaseDatabase to release.
* Update CHANGELOG with version.
* Cherrypick for #3984 along with CHANGELOG update. (#3988)
* Fix race condition in FIRComponentContainer instance creation (#3984)
* Fix race condition in FIRComponentContainer instance creation
Reported in #3967. Users sometimes seeing a crash when multiple threads
concurrently try to create Firestore instances. By inspection I found
that there's a race here where two threads can check for presence in the
cache, see nothing, proceed to creation, both store a value in the cache,
and both return their copies. This would lead to two Firestores being
created for a single App.
This replaces `dispatch_sync` on a serial queue with good old
`@synchronized` blocks. `dispatch_sync` will self-deadlock if called
from a thread already on the queue while `@synchronized` allows
recursion.
No new tests are added because several tests like
`testDependencyDoesntBlock` already cover this case.
* format
* Update Core CHANGELOG
* Update Core CHANGELOG again
* Fix merge from CHANGELOG
* Update versions for Release 6.3.0
* Revert "Raise exception when log into Facebook using OAuth. (#3138)" (#3208) (#3209)
This reverts commit 393d060710.
* Update versions for Release 6.1.0
* Release 6.1.0 - cherry pick of #3007 (#3011)
* 6.1.0 manifest updated. FirebaseInAppMessaging bumped to 0.14.1
* Early return from sending analytics events in instance ID is nil (#3007)
* Update versions for Release 6.0.0
* Update FirebaseSDKs.textproto with new fields. (#2818) (#2834)
* Update FirebaseSDKs.textproto with new fields.
* Update message about strip_32bits flag.
* GULAppDelegateSwizzler - proxy APNS methods separately (#2835) (#2858)
* Cherry-picks for M47 RC5 (#2882)
* fix race condition checkin is deleted before writing during app start (#2860)
* GoogleUtilities min ios version from 6 to 8 (#2876)
* Put secret and oauth credentials into the private headers for now. (#2916) (#2919)
* Add missing Messaging weak_framework dep (#2921) (#2930)
* Update versions for Release 5.17.0
* Fix the tag in the FIAM podspec.
* Update dependencies for FIAM.
* Updated the FirebaseCore version.
* Fix FIROptions version.
* Temporarily remove FIAM version deps for pod linting.
* Create umbrella header for FIAM (#2392)
This causes an issue when building the zip file - similar to #1857
* Remove FIAM from 5.17.0 release.
* Update versions for Release 5.15.0
* Create 5.15.0.json
* Update CHANGELOG for Firestore v0.16.1 (#2164)
* Update the name of certificates bundle (#2171)
To accommodate for release 5.14.0.
* Fix format string in FSTRemoteStore error logging (#2172)
* Update CHANGELOG.md
* Update 5.15.0.json
* Update versions for Release 5.12.0
* Add missing nanopb flag
* Isolate Firestore nanopb messages in C++ namespaces (#2046)
* Add C++ namespaces and use C++ linkage for nanopb-generated sources.
* Regenerate nanopb sources as C++
* Add generated C++ nanopb sources to the podspec