Commit Graph
75 Commits
Author SHA1 Message Date
karenyz 217a348448 Fix RC db flags (#8897)
* Fix RC db flags

* Add changelog
2021-11-02 16:54:49 -07:00
Paul Beusterien c7c0149351 Update to clang-format@13 (#8739) 2021-10-04 07:52:21 -07:00
Paul Beusterien 5a7c348596 Fix typo (#8690) 2021-09-22 14:50:52 -07:00
Artem VolkovandArtem Volkov 56be86ed23 Fix RemoteConfig multithreading (#8626)
* Fix RemoteConfig multithreading

* RCNConfigContent multithreading tests

av/rc-fix-threads-stuck

* RCNConfigContent test style

av/rc-fix-threads-stuck

* RCNConfigContent test more asserts

av/rc-fix-threads-stuck

Additional info: it seems safe to put XCTAssert in non-main queue.
Apple example: https://developer.apple.com/documentation/xctest/asynchronous_tests_and_expectations/testing_asynchronous_operations_with_expectations?language=objc
Callback in example "is executed on the delegate queue" https://developer.apple.com/documentation/foundation/nsurlsession/1410330-datataskwithurl?language=objc

Co-authored-by: Artem Volkov <artem.volkov@aliexpress.ru>
2021-09-20 11:08:48 -07:00
Wipoo Shinsirikul 4046281e64 Typo fixed (#8656) 2021-09-14 16:04:34 -04:00
Paul Beusterien 0d90f2f12d Update to clang-format 12.0.1 (#8397) 2021-07-16 11:40:42 -07:00
karenyz be2729afd1 Block calls to get config until DB load completes (#7975)
* Block calls to get config until DB load completes

* Add changelog

* Add TODO for refactoring
2021-04-27 14:26:48 -07:00
karenyz a1732dae3d Only update fetch throttle interval for server errors (#7901) 2021-04-15 12:11:12 -07:00
Ryan Wilson a978896540 Use private header import for FIRVersion.h (#7896)
* Use direct import for public FirebaseCore header.

This is an exception mentioned in https://github.com/firebase/firebase-ios-sdk/blob/master/HeadersImports.md#imports---for-header-file-consumers

* Fix import path.

The exception only applies to public headers *from other public headers*.
2021-04-14 10:10:20 -04:00
karenyz ebfd37010f Return FirebaseVersion as FIRRemoteConfigPodVersion (#7892) 2021-04-13 14:53:43 -07:00
karenyz 6e11684c2a Throw exception when projectID is missing from FIROptions (#7725) 2021-03-19 09:48:40 -07:00
karenyz a67da04b64 Only update experiments for firebase namespace (#7604)
* Only update experiments for firebase namespace

* Update tests

* Add changelog
2021-02-25 16:52:17 -08:00
karenyz 32922df544 Store and update config metadata entries by namespace (#7373)
* Insert and load config metadata by namespace

* Deprecate existing metadata table name

* Update tests

* Fix delete method and update naming

* Add test for writing metadate for multiple namespaces
2021-02-22 10:21:41 -08:00
Paul Beusterien ae306788c5 Fixed build warnings introduced with Xcode 12.5 (#7432) 2021-02-02 18:26:05 -08:00
vic-flair 899b562685 Standardize support for Firebase products that integrate with Remote Config. (#7094) 2021-01-19 19:25:40 -08:00
christibbs a764d00d25 Remote Config: Revert to previous nil check on experiment JSON (#7269)
* Revert to previous nil check on experiment JSON

* Update CHANGELOG
2021-01-08 15:57:13 -05:00
vic-flair 95cf1d3508 Add support for other Firebase products to integrate with Remote Config. (#6692) 2020-10-22 17:19:47 -07:00
karenyz e587d7dcd5 Minor RC cleanup (#6722)
* Cleanup developer mode variables

* Fix README link

* Use fully qualified namespace in test to avoid errors

* Fix whitespace
2020-10-13 16:27:08 -07:00
karenyz 2cd0c6e420 Use completion handler when updating experiments after activation (#6711)
* Use completion handler when updating experiments after activation

* Fix Travis

* Add changelog

* Fix whitespace

* Nonnull initializers
2020-10-12 12:26:19 -07:00
karenyz 409a3ccade Update API documentation referencing removed methods (#6667)
* Update API documentation to remove references to removed methods

* Add changelog

* Address comments
2020-10-08 12:09:54 -07:00
Ryan Wilson 19159a4b25 Fix tvOS storage issues. (#6658)
* 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
2020-10-08 11:28:41 -04:00
karenyz b1ebf80d10 Call fetchAndActivate completion handler on main thread (#6665)
* Call fetchAndActivate completion handler on main thread

* Add changelog

* Update changelog to use issue number
2020-10-05 17:35:50 -07:00
Paul Beusterien 83e898ab5c One Firebase version (#6634) 2020-10-02 12:26:22 -07:00
karenyz f56afe9ba1 Remove deprecated RC APIs (#6637)
* Remove deprecated method declarations and implementations
2020-10-01 16:11:16 -07:00
karenyz 4f7a88b68b Change numberValue to be nonnull (#6623)
* Change numberValue to be nonnull

* Add changelog
2020-10-01 09:30:28 -07:00
Paul Beusterien 5d0a1c8ccb Merge remote-tracking branch 'origin/firebase7-main' into pb-merge-firebase7 2020-09-30 14:23:40 -07:00
christibbs 416fb43748 Remove deprecated method in ABT public header (#6602)
* Remove deprecated method, implementation

* Replace call to deprecated method in RC, fix tests

* Update changelogs
2020-09-29 15:29:43 -04:00
Paul Beusterien f2bcd5d82b Make all GoogleUtilities APIs public (#6588) 2020-09-29 07:26:10 -07:00
karenyz 5546f9681a Change lastFetchTime to be readonly (#6567)
* Change lastFetchTime to be readonly

* Add changelog
2020-09-25 13:33:48 -07:00
Paul Beusterien f8b6e8fcfd Fix a rare RC crash (#6556) 2020-09-24 09:01:31 -07:00
Paul Beusterien 0a87c3142e Remove unnecessary Core private headers (#6439) 2020-09-17 15:31:33 -07:00
Maksym Malyhin ad06c605bf RCNConfigFetch: fix weakSelf/strongSelf usage (#6133)
* RCNConfigFetch: fix weakSelf/strongSelf usage

* self->strongSelf

* Style

* Changelog

* Another self to strongSelf

* Rename file to match class name and corresponding header RCNFetch.m -> RCNConfigFetch.m
2020-07-29 13:55:32 -04:00
Paul Beusterien 40b805bccd Fix RemoteConfig sample (#6113) 2020-07-23 10:01:02 -07:00
Paul Beusterien 97e9eb32bf Fix internal ABT imports (#6108) 2020-07-22 11:17:56 -07:00
Paul Beusterien 19b65ead65 RC: Repo-relative imports and SwiftPM (#6015) 2020-07-10 14:25:05 -07:00
Paul Beusterien 2660d49c7d ABTesting - Repo-relative imports and SwiftPM (#6013) 2020-07-09 15:48:47 -07:00
Paul Beusterien d882c230ee ABT Path fixes and RC Maltese bug fix (#5980) 2020-07-06 15:18:02 -07:00
christibbsandPaul Beusterien 9b484519f2 Remove Protobuf from the ABT SDK (#5890)
* Remove Protobuf dependency, add struct-ish class that mimics ABTExperimentPayload

* Remove a lot of the compiler errors, but not all of them. We need to figure out how RC serializes the NSData objects passed to FIRExperimentController in updateExperimentsWithServiceOrigin:

* Add ABTExperimentPayload class that replaces generated proto, refactor classes that depend on it

* Add unit testing class for ABTExperimentPayload

* Updates to ABTExperimentPayload API, tests for ABTConditionalUserPropertyTest, add tests for ABTExperimentPayload

* Update podspec to pull in testing resources

* Add utility class for parsing test files. Use it in ABTExperimentPayloadTests

* Fix FIRExperimentController tests

* Better documentation

* Run scripts/styles.sh

* Fix whitespace

* Remove protobuf imports

* Bump pod spec version for ABT SDK, depend on new ABT SDK in RC. Fix up RemoteConfigExperiment to use new ABTExperimentPayload object

* scripts/style.sh

* Update In-app messaging to use new ABTExperimentPayload class, which involves extending the ABTExperimentPayload initializer to accept different values for overflowPolicy and experimentStartTime

* Delete test payload

* Revert scripts/check_imports.swift

* Better initialization tags for ABTExperimentLite

* Update CHANGELOGs

* Remove private headers in podspec, use integerValue to parse integers

* Refactor ABTExperimentPayload header into Private headers. Fix integer types for millisecond metadata

* scripts/styles.sh

* Fix integer parsing

* Fix copyrights

* Fix CHANGELOG typo:

* Add private_header_files to public_header_files

* Try just using NSInteger for experimentStartTimeMillis

* Bump FIAM dependency on ABTesting

* Use long long for milli parameters (32-bit apps)

* Use longlong in test timestamps

* Don't cast to nsnumber in tests

* Use in64_t

* Fix Test Overflow

* Bump major version on ABT SDK

* Bump ABTesting version in Firebase.podspec

Co-authored-by: Paul Beusterien <paulbeusterien@google.com>
2020-07-06 13:06:39 -04:00
Paul Beusterien 01bf549253 Update formatters (#5933) 2020-06-26 14:34:27 -07:00
Paul Beusterien c07c89ee75 Repo-relative imports for Installations (#5832) 2020-06-17 07:26:40 -07:00
Paul Beusterien 3f556ddb9e Update GoogleUtilities' clients with repo-relative imports (#5824) 2020-06-16 09:05:29 -07:00
Paul Beusterien e15724a436 Migrate from interop pods to source_files header access (#5760) 2020-06-09 06:09:27 -07:00
Paul Beusterien d4621a636f Use preserve_paths instead of CocoaPods private (#5758) 2020-06-09 05:21:28 -07:00
Paul Beusterien dbe9007749 Better Swift API completion usability (#5748) 2020-06-04 18:38:18 -07:00
karenyz 7477e80f48 Send pod SDK version instead of hardcoded value in RC fetch request (#5737)
* Use FIRRemoteConfigPodVersion instead of FIRRemoteConfigSDKVersion

* Clean up FIRRemoteConfigSDKVersion
2020-06-03 15:09:22 -07:00
Paul Beusterien 2affb24d4a Better completion callback for activate (#5646) 2020-05-26 18:01:04 -07:00
Paul Beusterien cc233d68d8 Fake Remote Config console for testing (#5633) 2020-05-26 16:14:24 -07:00
Paul Beusterien 349608b6df Remove unused source file (#5639) 2020-05-19 17:37:43 -07:00
Paul Beusterien 4dcf65953d Migrate FetchAndActivate from deprecated implementation (#5617) 2020-05-15 16:46:53 -07:00
Paul Beusterien d0c9ded72f Fix race condition between setting developer mode and config fetch (#5600) 2020-05-13 10:36:45 -07:00