Commit Graph
64 Commits
Author SHA1 Message Date
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
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
Paul Beusterien 7b946765ec Remove slashes from log messages (#9391) 2022-04-06 14:19:47 -07:00
Paul Beusterien 99275370a2 Merge remote-tracking branch 'origin/master' into v9b 2022-04-06 09:56:33 -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
Nick Cooke 6b6498ce2a [Heartbeat Logging] Migrate Installations from using FIRHeartbeatInfo to FIRHeartbeatLogger (#9543)
* Integrate FIS with FIRHeartbeatLogger

* Add env var to fis workflow

* Fix env var to fis workflow

* Add integration tests for heartbeat integration

* [skip ci] Review

* [skip ci] Review
2022-04-01 10:01:02 -04:00
Morgan Chen 7a273e7bae fix returns typo (#9541) 2022-03-31 11:37:45 -07:00
Nick Cooke 1a5399a230 [Infra] Bump clang-format to v14 (#9527) (#9531)
* Bump clang-format

* Review
2022-03-28 18:53:08 -04:00
Nick Cooke 0336856b9f [Infra] Bump clang-format to v14 (#9527)
* Bump clang-format

* Review
2022-03-28 13:14:45 -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
Ryan Wilson e002709d2c Mark ObjC typedefs as unavailable in Swift. (#9387)
* Mark ObjC typedefs as unavailable in Swift.

This is part of the larger Swift API improvements effort. These reduce
visibility in autocomplete, and we've mostly migrated away from them
already. This hides the unused type from the API surface to avoid
cluttering the list of types avialable.

* Revert FDL Test

* Fix CombineSwift tests

* Fixed Firestore tests

* Revert unneeded changes for FDL internal headers.
2022-03-23 06:08:14 -07:00
Paul Beusterien 13c19a5e8c Swiftify symbol name for Swift (#9481) 2022-03-23 06:08:14 -07:00
Yakov Manshin 856852884d [#9275] Added Swift Name to kFirebaseInstallationsErrorDomain (#9395) 2022-03-23 06:08:14 -07:00
Paul Beusterien 4f793064da Set up Core Internal for SPM (#9298) 2022-03-23 06:07:17 -07:00
Nick Cooke 89f237ae78 Swift first exception messages (#8295)
* Swift first exception messages

* Review

* Minor edit

* Minor edit 2
2021-06-25 11:25:23 -04:00
Paul Beusterien 5abd0c8afa Update FIS IID error message (#8279) 2021-06-21 10:06:38 -07:00
Paul Beusterien c4e994c7c4 Update to clang-format 12 (#7909) 2021-04-16 09:17:41 -07:00
Maksym Malyhin 57285802ad FIS API docs: use term "installation auth token" consistently. (#6014)
* FIS API docs: use term "Installation auth token" consistently.

* Changelog

* Capitalize

* Use lowercase

* SHA1 usage explanation

* missed upper case

* a -> an
2020-10-13 16:59:05 -04:00
Ryan WilsonandPaul Beusterien fb4612f54a Remove the FIR prefix from notification constants. (#6645)
* Remove the `FIR` prefix from notification constants.

* Enable Firebase 7 path in quickstart test

Co-authored-by: Paul Beusterien <paulbeusterien@google.com>
2020-10-09 17:52:09 -07:00
Paul Beusterien 672256e11e C API for Firebase Version (#6690) 2020-10-07 15:03:20 -07:00
Maksym Malyhin a3a59c1bfc FIS: require projectID and valid API Key format (#6678)
* FIRInstallations validation: remove GCMSenderID fallback for missing projectID

* FIRInstallationsIDController: remove GCMSenderID fallback for  missing projectID

* Add API Key validation

* Changelog

* changelog

* Constant for API key lenght

* array] -> alloc] init]

* typo

* message

* ./scripts/style.sh

* Fix dummy API key in integration tests

* Update dummy API Keys to match the expected format

* debug test quickstart with no xcpretty

* fix debug

* Use debug QS repo branch

* print debug

* Add missing allowed characters `-`, `_`

* Nicer dummy API Keys

* Comment

* Revert "Use debug QS repo branch"

This reverts commit 69739dd6ae.

* Revert "fix debug"

This reverts commit 84fcbc7543.

* Revert "debug test quickstart with no xcpretty"

This reverts commit 1fa21ed62a.
2020-10-07 17:25:03 -04:00
Paul Beusterien 83e898ab5c One Firebase version (#6634) 2020-10-02 12:26:22 -07:00
Maksym Malyhin f84d094f06 FIS: don't log anything on success validation (#6635) (#6636) 2020-10-01 15:07:21 -04:00
Paul Beusterien 5d0a1c8ccb Merge remote-tracking branch 'origin/firebase7-main' into pb-merge-firebase7 2020-09-30 14:23:40 -07:00
Maksym Malyhin d26b543572 FIS: Additional FIRInstallationsItem validation (#6570)
* FIS API tests for no FID in response

* FIRInstallationsIDControllerTests: test names

* FIRInstallationsIDControllerTests: corrupted storage tests

* FIRInstallationsItem validation

* Fix FIRInstallationsItem.IIDDefaultToken copy

* Improve error description.

* FIRInstallationsItem validation error

* FIRInstallationsItem validation tests

* ./scripts/style.sh

* FIRInstallationsIDController: validate stored installation

* FIRInstallationsAPIService installation validation

* Changelog
2020-09-30 14:02:03 -04:00
Paul Beusterien f2bcd5d82b Make all GoogleUtilities APIs public (#6588) 2020-09-29 07:26:10 -07:00
Maksym Malyhin 7895478eba FirebaseInstallations: API requests backoff (#6232)
* FirebaseInstallations: API requests backoff (#6207)

* FIRInstallationsBackoffController introduced

* FIRCurrentDateProvider introduced

* FIRInstallationsBackoffControllerTests

* style

* FIRInstallationsBackoffController implementation

* WIP: tests

* Response to backoff event mapping

* FIRInstallationsIDController: integration with FIRInstallationsBackoffController

* Remove not existing error code.

* FIRInstallationsIDController: integration with FIRInstallationsBackoffController

* FIRInstallationsIDController: depend on FIRInstallationsBackoffControllerProtocol

* FIRInstallationsIDControllerTests: supplement tests with backoff validation

* TODOs

* TODO

* API docs

* Header import fixed

* FIS backoff adjustments and tests (#6230)

* Maximum backoff interval 30 min

* Errors adjusted

* Tests updated

* Exclude 401 and 404 from backoff as autorecoverable

* comments

* FIS 1.6.0 changelog (#6234)

* Change log version fixed
2020-08-10 09:36:04 -04:00
Maksym Malyhin abc8283e03 FirebaseInstallations: use ephemeral NSURLSession to prevent caching of request/response (#6226)
* FirebaseInstallations: use ephemeral NSURLSession to prevent caching of request/response

* Changelog
2020-08-07 11:35:25 -04:00
Paul Beusterien ebe6365ceb Installations - new public header structure (#6174) 2020-07-31 07:40:55 -07:00
Paul Beusterien 42e89d3e66 Initial check imports script (#5843) 2020-06-18 12:12:37 -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 d4621a636f Use preserve_paths instead of CocoaPods private (#5758) 2020-06-09 05:21:28 -07:00
Maksym Malyhin aa14b5cdcb FIS: disable Auth token auto fetch (#5656)
* FIS: disable Auth token auto fetch

* Punctuation

* Changelog

* Don't fail tests when no default app was created

* style
2020-05-20 17:26:10 -04:00
Maksym Malyhin e5a1360e2c FIS - make server error logs more readable (#5654)
* FIS - make server error logs more readable

* Changelog
2020-05-20 12:48:16 -04:00
Maksym Malyhin de3b856cf2 Mac OS FIS: use Firebase App ID as a suffix to Keychain service name Mac OS (#5603)
* FIS: use bundle ID as a prefix to Keychain service name on Mac OS

* Remove "storage" from var name

* Run ./scripts/style.sh

* Use Firebase App ID as a suffix to Keychain service name on Mac OS
2020-05-15 08:55:43 -04:00
Maksym Malyhin 7bd8faaaa4 Move FIRSecureStorage to GoogleUtilities (#5329)
* 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
2020-04-09 17:06:41 -04:00
Maksym Malyhin dd70b46370 Installations: access FIRHeartbeatInfo from a background thread (#5114)
* FIS: assert heartbeat storage is not accessed in main thread.

* FIS: Access hearbeat storage from a background queue.
2020-03-16 17:29:11 -04:00
Maksym Malyhin 1bc3255436 Firebase Installations: validation of FIROptions parameters (#4683)
* FIS: Throw exception on incomplete Firebase config.

* API docs updated.

* FirebaseInstallations bump minor version: 1.1.0

* Fix tests

* Text fixed

* Make exception message more informative

* Fix Remote Config tests.

* Tests updated to use GCMSenderID if projectID is not available.

* Use `GCMSenderID` when `projectID` is not available.

* ./scripts/style.sh

* Comments

* GCMSenderID and projectID validation updated.

* Comment

* FirebaseInstallations: version bump to 1.0.1.

* FIS changelog

* FirebaseInstallations: version bump to 1.1.0

* FIS and Core changelogs.

* Changelogs remove GCMSenderID

* Typo

* Typo

* fix link

* Revert Core changelog

* FIS changelog fix.
2020-01-16 16:13:49 -05:00
Maksym Malyhin 6004f9c490 Revert "FitebaseInstallations: fix create FID race condition (#4576)" (#4598)
This reverts commit 89bd10ff8e.
2020-01-06 19:02:56 -05:00
Maksym Malyhin 89bd10ff8e FitebaseInstallations: fix create FID race condition (#4576)
* FIS: test duplicated Create FID API requests.

* Fix getInstallationItem race condition.
2020-01-02 17:02:23 -05:00
Chen Liang e4456c011b Enables Firebase Messaging push notification function on watch only and independent watch app (#4016) 2019-12-23 16:45:19 -08:00
Maksym Malyhin e118f2c5e6 Apply static analyzer issue fix (cl/284637845) (#4544) 2019-12-23 11:41:47 -05:00
Maksym Malyhin 7b63ce904b FirebaseInstallations - extensions support (#4495)
* FIS - use shared user defaults if `accessGroup` is set.

* Use `FIROptions.appGroupID` to set keychain `accessGroup`

* ./scripts/style.sh
2019-12-13 17:06:07 -05:00
Vinay Guthal bc071a88d0 Add fis heartbeat support (#4353)
* installapiservice

* insallations api test

* update tests

* add mock tests

* add installations api
2019-11-25 11:21:32 -08:00
Maksym Malyhin f6e1eea53c FIS: IID incompatible version exception. (#4258)
* FIS: IID incompatible version exception.

* FirebaseInstallations.podspec: set preprocessor flags based on env vars.

* FIS Travis: set required env vars

* /scripts/style.sh

* FIS: FIRInstantiationTimingEagerInDefaultApp

* FIS: FIRInstantiationTimingAlwaysEager
2019-11-07 13:26:52 -05:00
Maksym Malyhin 76b47085c9 FIS: Use IID auth token to authorize IID migration. (#4224)
* `FIRInstallationsIIDTokenStore` introduced. `FIRInstallationsIIDCheckinStore` removed.

* FIRInstallationsIIDTokenStoreTests

* Run ./scripts/style.sh

* FIRInstallationsIIDTokenStore implementation.

* ./scripts/style.sh

* Fix tvOS and macOS availability.

* Rename IIDAuthToken -> IIDDefaultToken

* FIRInstallationsIIDTokenStoreTests: fix flaky IID token removal

* ./scripts/style.sh
2019-11-04 11:45:17 -05:00
ChaoqunCHEN a507b40f17 Add bundle id http header to FIS requests (#4194)
* Add bundle id http header to FIS requests

* Add bundle id http header to FIS requests
2019-10-31 08:50:07 -07:00
Maksym Malyhin 48a2a9e0fe Keychain: use kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly instead of deprecated since iOS 13 kSecAttrAccessibleAlwaysThisDeviceOnly. (#4169) 2019-10-25 17:14:02 -04:00
Maksym Malyhin a34540f9cb FIS: race condition (#4148)
* FIRInstallationsSingleOperationPromiseCache: a failing test for race condition added.

* ./scripts/style.sh

* FIRInstallationsSingleOperationPromiseCache: synchronize entire code blocks not relying on `atomic` property. The atomic property synchronization was insufficient to synchronize `newOperationHandler()`.

* ./scripts/style.sh
2019-10-23 20:32:23 -04:00