Commit Graph
183 Commits
Author SHA1 Message Date
Seyed Mojtaba Hosseini Zeidabadi 7a640ac0ca Review FirebaseRemoteConfig Tests Swift files (#13366) 2024-07-24 07:09:51 -07:00
Seyed Mojtaba Hosseini Zeidabadi 7575016354 Review FirebaseRemoteConfig Tests Unit files (#13364) 2024-07-24 06:40:33 -07:00
Seyed Mojtaba Hosseini Zeidabadi 97ee26691d Review FirebaseRemoteConfig Tests SampleApp (#13365) 2024-07-24 06:40:21 -07:00
Seyed Mojtaba Hosseini Zeidabadi 78f4ea22a1 Review FirebaseRemoteConfig Sources (#13367) 2024-07-24 06:40:10 -07:00
Nick Cooke 6bbd7d1499 [Config] Wait for installations token before starting realtime connection (#13275) 2024-07-12 17:37:50 -04:00
Paul Beusterien ad8bac4915 Update repo Podfiles to iOS 13 minimum (#13250) 2024-07-09 08:05:22 -07:00
Nick Cooke 856e201e5d [NFC] Updating changelogs for Swift extension deletion (#13244) 2024-07-08 15:41:36 -04:00
Nick Cooke 09432fd164 [v11] Add changelog entries for Swift extension removal (#13086) 2024-06-06 17:16:34 -04:00
Nick Cooke 1674a6b9b4 [Config] Remove ConfigSwift (#13076) 2024-06-06 12:44:20 -04:00
Paul Beusterien 059b921122 [v11] RC stringValue is now nonull (#13065) 2024-06-05 07:48:28 -07:00
Paul Beusterien 7d7cbad7bd [v11] Update minimum platform versions for 11.0.0 (#13066) 2024-06-05 07:39:36 -07:00
Paul Beusterien f5309bf45b [v11] Remove unused FIRDependency class (#13053) 2024-06-04 06:56:50 -07:00
Andrew HeardandNick Cooke c9d013b624 Update unreleased changelog entries for 10.25.0 (#12839)
Co-authored-by: Nick Cooke <36927374+ncooke3@users.noreply.github.com>
2024-04-23 15:19:02 -04:00
Nick Cooke 14178e2fd4 [Release] Add changelog entry for #12548 (#12830) 2024-04-22 13:47:28 -04:00
Christopher Prince d5b35192d7 Make use of SQLITE_OPEN_FILEPROTECTION_COMPLETEUNTILFIRSTUSERAUTHENTICATION conditional. (#12548) 2024-04-22 13:03:44 -04:00
themiswang ca737359db fix unit tests (#12553) 2024-03-14 14:05:44 -04:00
Paul Beusterien 370385c42a Changelog updates for 10.23.0 (#12533) 2024-03-12 09:50:06 -07:00
themiswang 90c33e404f [Rollouts] Feature rollouts merge to main (#12410) 2024-03-11 16:13:04 -04:00
Paul BeusterienandNick Cooke 3539c2b691 Privacy Manifests for named Firebase SDKs (#12407)
Co-authored-by: Nick Cooke <nickcooke@google.com>
2024-02-23 15:08:29 -08:00
Paul Beusterien 4d2b60dc75 Updated to SwiftFormat 0.52.10 (#12125) 2023-11-21 12:12:05 -08:00
Nick Cooke 85cfe574bb [Release] Update CHANGELOGs for 10.17.0 (#11963) 2023-10-18 14:26:29 -04:00
Nick Cooke 85f4f03c1c [Config] Consolidate Config and ConfigSwift (#11808) 2023-10-13 14:53:47 -04:00
Nick Cooke acfd28c8af [Config] Revert merge of ConfigSwift into Config (#11769) 2023-09-01 16:12:54 -04:00
Nick Cooke d12eb34fb3 [Config] Lock down no-op API's availability for Swift clients (#11764) 2023-08-31 16:08:30 -04:00
Nick Cooke 1dc90cdd61 [Config] Refactor Swift sources out of FirebaseRemoteConfigSwift (#11747) 2023-08-29 17:49:41 -04:00
Quan PhamandNick Cooke 0da255f1ee Add changelog entry for Remote Config (#11500)
* Set FID in realtime request

* Update request method naming

* Update test

* Fix tests

* Fix test

* Mention changes in changelog

* Update FirebaseRemoteConfig/CHANGELOG.md

Co-authored-by: Nick Cooke <36927374+ncooke3@users.noreply.github.com>

---------

Co-authored-by: Nick Cooke <36927374+ncooke3@users.noreply.github.com>
2023-06-30 14:48:03 -07:00
Quan Pham d459655d5a Add FID into real-time RC requests (#11485)
* Set FID in realtime request

* Update request method naming

* Update test

* Fix tests

* Fix test
2023-06-29 15:20:28 -07:00
Quan Pham 7061b008c3 Remove isFetchInProgress check for real-time initiated Fetches (#11465)
* cast listener with __block so that it can be altered within block

* Increase fetch attempt

* Remove isFetchInProgress check for real-time initiated fetches

* Update changeling

* update changelog to be more specific
2023-06-28 07:18:31 -07:00
Quan Pham 0e4aa6d4bd cast listener with __block so that it can be altered within block (#11461) 2023-06-20 16:38:49 -07:00
Mike Hardy 671c87953a fix duplicated period in realtime remote config error (#11456) 2023-06-19 10:28:36 -07:00
Quan Pham d74dae0c31 Save activated ExperimentsDescriptions in DB (#11259)
* Add activated experiment metadata and payload keys to experiments table

* Call updateActivatedExperiments in activation method

* Update key name for experiments table

* Update test to include activation call

* Update DB manager for Active experiments payload and metadata

* Fix metadata naming

* add comment

* Don't save experiments metadata b/c it isn't required to diff experiments

* Add extra assertion for test

* Address PR comments
2023-05-26 10:11:15 -07:00
Paul Beusterien 8e49c486de Fix Xcode 14.3 RC warnings (#11194) 2023-04-27 08:42:02 -07:00
Guglielmo Faglioni 2c58866979 [RemoteConfig] Expose NSUnderlyingError to client (#11102) 2023-04-12 14:04:38 -07:00
Dana Silver af727e3c08 Specify real-time APIs don't affect fetch and activate. (#10986)
* Specify real-time APIs don't affect fetch and activate.

* Remove trailing whitespace.

* Use swift refdocs.
2023-03-22 18:23:53 -07:00
Quan Pham 7a95f0bd08 Update Remote Config real-time config update ref-docs (#10962)
* Update ref-doc comments

* Update ref-doc comments

* Remove word

* Replace words in comments

* Update comments

* Update comment
2023-03-20 10:58:17 -07:00
Nick Cooke 867697b8f3 [Infra] Upgrade to clang-format16 (#10973) 2023-03-20 12:47:43 -04:00
4e5b83f2d9 Merge Realtime into Remote Config (#10060)
* Realtime rc dev (#9807)

* Remove commits from non-CLA account. Move TypeDef to private RCNRealtimeConfig file.

* Remove completion handler typedef

* Format file

* Update listener registration description

* Realtime rc dev (#9835)

* Remove commits from non-CLA account. Move TypeDef to private RCNRealtimeConfig file.

* Remove completion handler typedef

* Format file

* Update listener registration description

* Add http streaming and auto fetch. Also add template version number to cache for autofetch.

* Format file.

* Add unit tests

* Format files

* fix test

* update test and header file

* Change templateVersionNumber to ivar

* Fix async tests and update NSDictionary changes

* Format file

* Update fetch time

* remove define header

* Wrap auto fetch in async queue

* Add auto fetch test

* Change template version extraction check.

* Change realtime error code to start at 8001

* Realtime rc dev (#9914)

* Remove commits from non-CLA account. Move TypeDef to private RCNRealtimeConfig file.

* Remove completion handler typedef

* Format file

* Update listener registration description

* Add http streaming and auto fetch. Also add template version number to cache for autofetch.

* Format file.

* Add unit tests

* Format files

* fix test

* update test and header file

* Change templateVersionNumber to ivar

* Fix async tests and update NSDictionary changes

* Format file

* Update fetch time

* remove define header

* Add http stream retry and background change listener.

* Wrap auto fetch in async queue

* Expose realtime method in public

* Update comments

* Add auto fetch test

* Change template version extraction check.

* Change realtime error code to start at 8001

* Change from NSTimer to dispatch. Add flag to guard against retrying.

* Format and add comments.

* Update tests

* Qdpham13 patch 1 (#9913)

* Delete .SecondApp-GoogleService-Info.plist

* Delete SecondApp-GoogleService-Info.plist

* Delete GoogleService-Info.plist

* Delete SecondApp-GoogleService-Info.plist

* Update ViewController.m

* Delete clang-format directory

* format

* Change to NSExtensionHostWillEnterForegroundNotification

* Change to UIApplicationWillEnterForegroundNotification

* add import

* Remove import, use string literal instead of UIKit enum

* add test for new public method

* Update template version number retrieval function and update delay

* Fix test

* Fix test

* Update retry seconds and fetch interval seconds

* Update ddos to DDoS

* Update variable according to style guide.

* Replace NSLog with kFIRLoggerRemoteConfig (#10062)

* Replace NSLog with kFIRLoggerRemoteConfig

* Remove logs and change others from info to debug.

* update log messages.

* Format files

* Realtime rc failsafe (#10067)

* Add failsafe logic to request, response and application logic.

* Update flag name and conditions.

* Format file

* Add check for template version number

* Format files

* Changes based on PR comments

* move response parsing logic to separate function and add test for failsafe flag

* Update based on PR comments and add method to propagate error to listeners in queue.

* Realtime rc merge patch v1 (#10089)

* Fix foreground reconnection naming, add background check and flag, add check to see if fetch is currently in progress.

* Add check so fetches come only when the template version is greater than the current one.

* Format file changes

* Add debug log

* Make changes based on PR comments.

* Resolve failsafe changes

* Updating instance var names

* change template version check for auto fetch from >= to >

* Cherry-pick #10123 into Firebase 9.5.0

* [RC] Fix retry logic to respect max retry count (#10143)

* Fix retry logic to respect max retry count

* Rename to isRequestInProgress

* Save template version in settings (#10162)

* Save template version in settings

* Format files

* set last template version to 0

* Store template version in userDefaults instead of deviceContents

* return nil for unsuccessful fetches

* fix typo

* Realtime rc no change (#10188)

* Save template version in settings

* Format files

* set last template version to 0

* Store template version in userDefaults instead of deviceContents

* return nil for unsuccessful fetches

* fix typo

* put addEtagToHeader flag to fetch and propagate it to surrounding functions

* Add excludeEtagHeaderForRealtime flag to RCNConfigFetch

* Update mocks for Swift test

* Fix flag

* Add commentting

* reconcile master branch merge conflicts

* Revert "Realtime rc no change (#10188)" (#10346)

This reverts commit abe7939602.
In part of implementing a different solution.

* Add Http status check to Realtime stream (#10406)

* Check status code before retrying

* Change time out to 5 and a half minutes

* Throw exception if unable to establish connection due to non-retryable status code

* Format file

* Replace old realtime exceptions with new exceptions (#10482)

* Replace old realtime exceptions with new exceptions

* Fix word type

* Realtime RC Fetch ID (#10499)

* Add Realtime specific fetch method and fetch type header changes

* Add test

* Add comments and format

* Fix tests

* Update fetch header name

* Update tests and edit realtime fetch name and params

* refactor remainingAttempts var

* Realtime rc backoff (#10483)

* Change Realtime back off to use same system as Fetch and persist backoff state

* format and fix merge conflict

* Save retry count along with other throttling metadata

* Update var name

* Fix naming

* Return ConfigUpdate to realtime listeners (#10578)

* diff fetched and active config on realtime fetch

* Some refactoring and added tests

* Revert some unrelated changes to fetch

* Fix formatting

* Update branch and fix swift tests

* Rename updatedParams to updatedKeys (#10683)

* Update Realtime RC service URL. (#10713)

* Compare p13n metadata values as dictionaries. (#10756)

* Realtime RC 1P Bug Fix: Add checks for retryHttpConnection method (#10770)

* Add checks to retry method

* Move background check to beginning of retry

* Capitalize FetchType header (#10774)

* Remove Fetch Duplicate error and fix API misuse error (#10814)

* Remove fetch duplicate error

* Move completionHandler to bottom of didReceiveData

* Remove unused var

* Return Server produced error if Http status code is 403  (#10844)

* Add API message to enable Realtime

* Update error message parsing to return error message from backend

* Format file

* Add comment and remove unnecessary string

* Format and update error checks

* Change matcher string

* Update matcher string

* Address PR comments (#10845)

* Address PR comments

* Add Realtime Swift mocks

* Remove unnecessary mocks

* Format files

* Format tests

* Add Realtime mock

* Add missing quote

* Fix bugs

* Remove import

* Update import

* Change import

* Don't make connection call for Realtime mock

* Move around import of RCNConfigSettings

* Fix andDo

* Update test

* Add mockedRealtime flags

* trigger integration test

* Add integration and unit test

* change constant value

* Add new RC key

* Update update

* Remove deleted item

* Add registration removal

* Fix and format files

* remove semicolon

* Update error check

* remove space

* Update capitalization

* Add space

* Remove spaces

* remove more spaces

* Remove comment and add swift name

* format

* Add tests and sampleApp changes for updatedKeys (#10879)

* Update tests and sample app

* change key name

* remove unused var

* Add comment

* update sampleApp comments

* Update comments for public methods

* Update backoff commenting

* Add changelog entry for real-time updates. (#10942)

* Add changelog entry for RC real time updates.

* Hyphenation.

* Change doc references to hyphenate real-time (#10948)

* Change doc references to hyphenate real-time

* Run formatter.

* Re-word real-time paragraph to flow better.

---------

Co-authored-by: Andrew Heard <andrew@wizheard.com>
Co-authored-by: karenyz <58443706+karenyz@users.noreply.github.com>
Co-authored-by: Karen Zeng <karenzeng@google.com>
Co-authored-by: Dana Silver <dsilver1221@gmail.com>
Co-authored-by: Dana Silver <danasilver@google.com>
2023-03-13 16:02:56 -07:00
Nick Cooke 96d07fe973 [Infra] Favor SWIFTPM_MODULE_BUNDLE macro over C function across repo (#10625)
* [Infra] Favor SWIFTPM_MODULE_BUNDLE in RC unit tests

* Favor across repo
2022-12-29 18:23:29 -05:00
Guglielmo Faglioni 0dd5b06304 pass NSUnderlyingError to client (#10453) 2022-11-07 18:14:00 -08:00
Nick Cooke 43c62f0526 [Infra] Remove CoreDiagnostics library and references (#10259)
* [Infra] Remove CoreDiagnostics library and references

* Style localize_podfile.swift

* Add GDT to SharedTestUtils

* Update GoogleUtilities.cmake config

* Run all CI

* Update GoogleUtilities.cmake config (2)

* Resolve FIRApp.m TODO

* [skip ci] Revert Gemfile
2022-09-26 00:03:55 -04:00
Charlotte Liang f804aba0e2 Remote Config Dynamic Property Wrapper (#10155) 2022-09-22 20:01:17 -07:00
karenyz d5637c4cd7 Modify activate path to only update experiments for firebase namespace (#9972)
* Modify activate path to only update experiments for firebase namespace

* Add changelog
2022-07-01 08:21:58 -07:00
Paul Beusterien e2542c7932 Changelog update for 8307 (#9969) 2022-06-30 11:12:08 -07:00
Jake Krog a23a476ee5 Support array / dictionary values in Remote Config defaults (#8307) 2022-06-30 10:38:32 -07:00
Nick Cooke ced8b554a0 [Infra] Standardize CHANGELOG header format (#9777) 2022-05-10 17:54:58 -04:00
karenyz b58ae5344b Send first open time in Remote Config fetch request (#9663)
* Extract first open time from analytics user properties

* Add tests

* Address comments

* Update tests
2022-04-18 16:12:19 -07:00
Morgan Chen 9f2a3132fa Use Swift syntax in reference documentation (#9594)
* fix returns typo

* change some headers

* style

* the rest of the header comments

* revert changes to FIRStorageReference
2022-04-08 14:50:22 -07:00
Ryan Wilson 2258c07ecb Swift Error Improvements (#9512)
* Firebase Messaging enum

* Add tests for App Check errors

* App Distribution Error

* Installations error improvements

* Remote Config errors

* Firestore error handling

* Formatting

* Silly import error

* Consistency for App Check tests.

* Typo fix
2022-04-04 10:36:38 -04:00
Ryan Wilson 500e1822c4 Fix Remote Config pre-configure access. (#9551)
* Fix Remote Config pre-configure access.

Currently, when `RemoteConfig.remoteConfig()` is called before
`FirebaseApp.configure()` is called, Similar to Database, AppCheck, and
others we'll now throw an ObjC exception. We're not going to make it
nullable or throw a Swift compatible error since it'd affect the
callsite of every usage (either a `?` or `try`) and this is deemed a
programming error: `configure()` has to be called first.

Fixes #8640

* CHANGELOG
2022-03-31 16:43:29 -04:00
Nick Cooke a09083f9d0 [v9] Reorganize FirebaseCore* modules (#9482)
* [skip ci] [will revert] Add debug printing to `pod_lib_lint.rb`

* Reorganize FirebaseCore libraries for SPM and CP

* [skip ci] Revert "[skip ci] [will revert] Add debug printing to `pod_lib_lint.rb`"

This reverts commit 2a837e39708c21b0a324743ab226bd6c01047de7.

* Review and fix CI

* Remove `heartbeat_logging.yml` and add `core_internal.yml`

* Remove trailing whitespace

* Fix more whitespace 😞

* Fix `core_internal.yml` scheme name

* Update `check_imports.swift` and TODO

* Review

* Add FirebaseCoreInternal pod to Firestore example's Podfile

* [skip ci] Review - remove TODOs

* [skip ci] Remove duplicate `XCTest` import
2022-03-23 06:08:14 -07:00