* Refactor GULSwizzledObject to ARC to unblock SwiftPM transition.
* run ./scripts/style.sh
* Assert a single swizzler per swizzled object.
* testMultiSwizzling: fix iOS 10 tests
* Changelog
* Cleanup
* Fix tvOS storage issues.
On tvOS devices, the ApplicationSupport directory cannot be used.
Unfortunately this doesn't come up in simulator testing, only on device.
This hasn't been fully tested on device but given that any writes to the
ApplicationSupport directory fail on tvOS, this change can't break much.
Fixes#6612
@defagos can you please give this a test?
* Fixed changed dir name for RC
* Fixed test naming, too.
* Fix the documentation comment for GoogleUtilities.
* Updated changelog.
* Review feedback
* Fix previously unknown warnings
These become visible once flags are handled uniformly across all
Firestore targets in an upcoming build change.
* Stop using built-in CMake Framework support
CMake has built-in support for building Framework bundles (briefly:
bundles of libraries, associated headers, and resources) but this
doesn't work well for our needs.
1. In CMake 3.5.1 (our earliest supported CMake version) it doesn't copy
headers properly at build time.
2. Even up to CMake 3.15.5, CMake doesn't handle link-line multiplicity
correctly. CMake passes the static library location within the framework
and this seems to cause the linker to mishandle Objective-C metaclass
information resulting in duplicate symbols. Building with `-framework`
flags works correctly.
Previously we partially worked around the latter problem by building
some frameworks as shared instead of static frameworks, but this is
problematic because this mode of operation isn't actually intended and
is unsupported as far as the rest of Firebase is concerned. This turned
out to be fragile though and while refactoring libraries this workaround
broke.
Rather than piling on additional workarounds, this change converts the
frameworks to simple library targets and emulates framework imports
through include paths.
Additionally, this starts refactoring our cmake helper functions to make
them more like built-in functions. This makes it possible to freely use
different CMake features that were made difficult by trying to wrap
everything up in a single CMake command.
* style.sh generated changes
* Review feedback
* More review feedback
* FIRSecureStorage -> GULKeychainStorage: renamed and moved to GoogleUtilities
* FIS updated to GULKeychainStorage
* Run ./scripts/style.sh
* Headers order
* GULKeychainUtils API docs
* GULKeychainStorage: require Keychain service name
* Use early exit in objc_framework CMakeLists.txt
* Clean up objc_framework CMakeLists.txt
* Use `version` consistently
* Use `firebase_ios_version` for the repo-level version
* Remove INCLUDE directories that are no longer needed
* Sort dependencies
* Simplify Example/App/CMakeLists.txt
* Add `OBJC_FLAGS` directly, avoiding a separate `sources` variable.
* Add resources directly
* Rename test host app to firebase_firestore_example_app
* Add a firebase_ios prefix to functions and variables
This reduces the chance of collision with other projects.
* Simplify compiler_setup
Now that compiler_setup.cmake no longer has side-effects, fold
compiler_id.cmake and archive_options.cmake into it and move
the include of compiler_setup up to the top of the main build.
* Add support for building for iOS
* Make building benchmarks optional
* Disable protoc-based source generators when cross-compiling
* Make downloading googletest optional
* Add DISABLE_STRICT_WARNINGS mode to cc_rules
This makes it possible to build non-Firestore components in the CMake
build to a lower standard than that to which we hold ourselves without
sacrificing the utility of the various build rules that we have.
* Use early exit in objc_framework CMakeLists.txt
* Clean up objc_framework CMakeLists.txt
* Use `version` consistently
* Use `firebase_ios_version` for the repo-level version
* Remove INCLUDE directories that are no longer needed
* Sort dependencies
* Simplify Example/App/CMakeLists.txt
* Add `OBJC_FLAGS` directly, avoiding a separate `sources` variable.
* Add resources directly
* Rename test host app to firebase_firestore_example_app
* Add a firebase_ios prefix to functions and variables
This reduces the chance of collision with other projects.
* Simplify compiler_setup
Now that compiler_setup.cmake no longer has side-effects, fold
compiler_id.cmake and archive_options.cmake into it and move
the include of compiler_setup up to the top of the main build.
* Add GULSceneDelegateSwizzler
* Comments updated
* Fix build issue on xcode 10.*
* Remove empty methods
* Format
* Fix pr issues
* Format
* Fix build issue
* Fix build issue
* Fix build issue
* Reuse plist keys for scene delegate swizzler
* Add tests for the NSNotificationCenter related code
* Fix pr issues
* Make proxyOriginalSceneDelegate and isSceneDelegateProxyEnabled callable before ios 13
* Keep interceptors iOS 13+ only
* Revert "Make proxyOriginalSceneDelegate and isSceneDelegateProxyEnabled callable before ios 13"
This reverts commit 9927c06855.
* Fix a issue when the header is compiled but the implementation is not
This reverts commit a316673a69.
* Format
* Reuse [GULAppDelegateSwizzler isAppDelegateProxyEnabled]
* Fix build issue
* Revert to last green build
* Reuse [GULAppDelegateSwizzler isAppDelegateProxyEnabled] and fix other comments
* Make proxyOriginalSceneDelegate callable before ios 13
* Fix pr issues
* Move component container to GoogleUtilities.
This will allow non-Firebase SDKs to take advantage of the component
system. Note: Firebase Core will eventually move over to use this, but
more investigation is needed about how this can be done with the least
amount of churn for other SDKs.
* Fix dependency on Logger.
* Add CHANGELOG entry.
* Fix selector name.
* Move ComponentContainer subspec to new pod.
* Rename to GoogleUtilitiesComponents.
* Style, make public headers.
* Update travis with new name.
* Add project to if_changed.sh
* Review comments.
* Enabled static framework, changed homepage.
* Fix missing quote.
* Fix Networking to receive data for POST requests
Currently, GULNetworking doesn't receive the data when sending a POST request.
Tracked internally at b/141712804
* Added unit tests.
* Update to handle the small data increments.
* Update versions for Release 6.9.0
* Fix unbalanced background task creation in GDTCCTUploader (#3838) (#3839)
* Add Manifest
* dependency version update
* Cherry picks for 6.9.0 (#3871)
* fixed "expiclitlySet" typo. (#3853)
* Mark unused variables (#3854)
* Mute FCM deprecated warnings with Xcode 11 and min iOS >= 10 (#3857)
* Add a third slash to make sure generated docs include these comments.b/13812238 (#3846)