Commit Graph
60 Commits
Author SHA1 Message Date
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
Maksym Malyhin 93d6c5a98b Remote Config: update API docs IID -> FIS notes (#5561) 2020-05-11 10:02:26 -04:00
dmandar 4d1d9cd7de Add support for sending CFBundleVersion along with the CFBundleShortV… (#5452)
* Add support for sending CFBundleVersion along with the CFBundleShortVersionString.

* Style fixes.
2020-04-28 09:26:13 -07:00
Maksym Malyhin 3576a305fe Revert "Revert "Migrate from using IID SDK for Remote Config to the new FIS SDK (#5096)" (#5156)" (#5367)
This reverts commit 230d56260f.
2020-04-15 17:05:21 -04:00
Maksym Malyhin 230d56260f Revert "Migrate from using IID SDK for Remote Config to the new FIS SDK (#5096)" (#5156)
This reverts commit 887ff82494.
2020-03-19 19:02:50 -04:00
887ff82494 Migrate from using IID SDK for Remote Config to the new FIS SDK (#5096)
* Update podspec to replace IID with installations SDK.

* Update sample app podfile to include installations sdk.

* Source code changes to support migration to FIS. The FIS SDK now supports multi-app FIS ids and tokens.

* Update RC test app to use FIS SDK.

* WIP: Unit tests for incorporating FIS with Remote Config.

* Remote Config: fix Installations tests (#5109)

* Fix Installations tests.

* Fix Firebase/Auth version (#5106)

* Remote Config: enable ARC for tests.

* run ./scripts/style.sh

* Fix warnings

* Remote Config: enable ARC for tests. (#5108)

* Remote Config: enable ARC for tests.

* run ./scripts/style.sh

* Fix warnings

Co-authored-by: Paul Beusterien <paulbeusterien@google.com>

* Add the installations token as an HTTP header.

* Add changelog for FIS changes.

Co-authored-by: Maksym Malyhin <mmaksym@google.com>
Co-authored-by: Paul Beusterien <paulbeusterien@google.com>
2020-03-16 18:16:12 -07:00
christibbs 8f29236b8c Ignore deprecation warnings for FIRExperimentController.updateExperiments(serviceOrigin:events:policy:lastStartTime:payloads:) (#4934) 2020-02-19 13:04:36 -05:00
dmandar 90235b5e0d Reset RC per-instance userdefaults if config database was not found. (#4896)
* Reset the RC per-instance user defaults if the config database was not found.

* Add unit test.

* Ignore the non-object arguments when stubbing the fetchWithExpirationDuration method.

* Update changelog.
2020-02-14 15:07:57 -08:00
dmandar cb9e083f92 Make sure we turn of fetchInProgress flag on any fetch completion for error scenarios. Also add UT and add UT file to podspec. (#4844) 2020-02-06 12:55:55 -08:00
dmandar 3754b7e809 Do not continue with fetch if we do not get a valid IID. (#4745)
* Do not continue with fetch if we do not get a valid IID.

* Address review changes to test file.

* Update test file based on review comments.

* Fix warnings.

* Fix build.

* Fix build.
2020-02-03 14:56:42 -08:00
dmandar f47ce4bbf3 Throw an error if the fetch response returns an error (irrespective o… (#4438)
* Throw an error if the fetch response returns an error (irrespective of status code).

* Remove duplicate metadata set call.

* Add comment.
2019-12-04 17:07:43 -08:00
dmandar 785c704d35 Internal code cleanup. (#4403)
* Minor code cleanup. Rename internal method, fix logging in test app.

* Rename fetchConfigWithExpirationDuration method in tests.

* Fix style.
2019-12-04 07:44:31 -08:00
dmandar 4041d081e2 lastFetchTime's accessor does not reference the backing ivar. Silence the corresponding CLANG warning. (#4379) 2019-11-21 15:29:03 -08:00
dmandar 3b9fd3ddf9 Do not activate if fetch returns NO_CHANGE (#4260)
* Do not activate if a new fetch call has not resulted in any data change.

* Add tests.

* Fix style.

* Persist lastETagUpdateTime in the database.
2019-11-08 11:14:57 -08:00
dmandar 6f5c203f20 The instanceID sync API is deprecated. Implement the async instanceID API (#3993)
* The instanceID sync API is deprecated. Implement the async instanceID API.

* Fix for review comments
2019-10-09 10:52:11 -07:00
dmandar 865e289614 Fix an issue around deleting records from the database. (#3926)
* Assign weakself to self.

* Add unit test.

* Style fixes.

* Address review comments.

* Review comments.
2019-09-27 23:02:42 -07:00