Yakov Manshin
c590762053
[ #13326 ] App Check Tests ( #13327 )
2024-07-22 08:32:30 -07:00
Nick Cooke
bee45d0e4a
[AppCheck] Remove unused Promises dependency ( #13315 )
2024-07-19 13:24:34 -04:00
Andrew Heard
64fd5c2021
Remove FIRAppCheckProtocol from FirebaseAppCheckInterop SDK ( #13263 )
2024-07-10 16:51:16 -04:00
Andrew Heard
f3ce673e62
Add FIRAppCheckTokenProtocol for use in FIRAppCheckProtocol ( #13035 )
2024-06-11 16:44:20 -04:00
Sheikh Bayazid
e8a12e04c2
Improve/use shorthand syntax for unwrapping optionals and fix typos ( #12369 )
2024-05-03 08:50:20 -07:00
Nick Cooke
b6e5270f75
[AppCheck] Migrate to GoogleUtilities's storage container ( #12773 )
2024-04-12 13:46:29 -04:00
Andrew Heard
7db032cbfb
Update async/await availability comments to "iOS 13+" ( #12261 )
2024-01-10 14:38:36 -05:00
Paul Beusterien
0fe8385fe6
Remove unnecessary compiler checks for Concurrency support ( #12232 )
2024-01-03 07:04:02 -08:00
Paul Beusterien
4d2b60dc75
Updated to SwiftFormat 0.52.10 ( #12125 )
2023-11-21 12:12:05 -08:00
Andrew Heard
a83297908d
[App Check] Implement FirebaseAppCheck as a shim of AppCheckCore ( #12067 )
2023-11-07 18:54:45 -05:00
Andrew Heard
88d1530d30
Replace FIRDeviceCheckAPIServiceE2ETests with AppCheckE2ETests ( #12031 )
2023-11-01 10:38:57 -04:00
Andrew Heard
1317f08326
[App Check] Reset App Attest key state if attestKey fails ( #11986 )
2023-10-24 13:30:40 -04:00
Andrew Heard
f73ca9532c
[App Check] Add failure reasons for App Attest error cases ( #11956 )
2023-10-19 17:28:38 -04:00
Andrew Heard and Nick Cooke
f3a14c249e
Add FirebaseAppCheckInterop umbrella header ( #11860 )
...
Co-authored-by: Nick Cooke <36927374+ncooke3@users.noreply.github.com >
2023-10-11 18:39:18 -04:00
Andrew Heard
a885d5e023
[App Check] Remove usages of FIR_*_SUPPORTED_TARGETS macros ( #11831 )
2023-09-20 12:07:42 -04:00
Andrew Heard
00fd7c0829
Enable FIRAppCheckTests on CI ( #11827 )
2023-09-20 10:59:14 -04:00
Andrew Heard
a471cc8120
Add FIRAppCheckProtocol to FirebaseAppCheckInterop SDK ( #11660 )
2023-09-14 17:11:28 -04:00
Andrew Heard
77fa63da55
[App Check] Add DeviceCheck isSupported check ( #11663 )
...
Added a DeviceCheck isSupported check and return a FIRAppCheckErrorCodeUnsupported error when not supported (e.g., when running on the simulator or older Macs). This was done to match the behaviour of the FIRAppAttestProvider.
2023-08-09 13:45:38 -04:00
Andrew Heard
4b9cbf6155
[App Check] Fix App Attest and DeviceCheck API availability ( #11662 )
...
- Updated the FIR_DEVICE_CHECK_PROVIDER_AVAILABILITY and FIR_APP_ATTEST_PROVIDER_AVAILABILITY API availability macros to reflect the set of supported platforms for DeviceCheck (iOS 11+, macOS 10.15+, macCatalyst 13+, tvOS 11+, watchOS 9+) and App Attest (iOS 14+, macOS 11.3+, macCatalyst 14.5+, tvOS 15+, watchOS 9+).
- Removed the extraneous check for the watchOS 9 SDK now that Xcode 14 is the minimum supported by Firebase.
Removed the #if TARGET_OS_IOS compiler directive in AppCheckAPITests.swift since TARGET_OS_IOS is only available in Objective-C and was always false.
2023-08-08 17:26:09 -04:00
Nick Cooke
1e040186a6
[Infra] Remove HeartbeatLoggingTestUtils.podspec ( #11370 )
...
* [Infra] Remove HeartbeatLoggingTestUtils.podspec
* Review
2023-06-01 13:31:39 -04:00
Yvonne Cheng and Andrew Heard
87b07e2d36
Add limited use token to FirAppeCheck Interface ( #11086 )
...
* Add limited use token to FirAppeCheck Interface
* revise some naming
* remove extra promise and clean the logic for limitedUseToken
* ADD UNIT tests
* suppress style error
* style the file
* Fixed comments and still need to add one more test
* change testLimitedUseToken to uncached test and add error test too
* test in FIRAppCheckTestFile to make sure limited-use token is working
* style the file to pass checks
* style swift file to pass checks
* style swift file to pass checks
* style swift file to pass checks
* style swift file to pass checks
* Run scripts/style.sh to format AppDelegate.swift
Script updated in https://github.com/firebase/firebase-ios-sdk/pull/11097
* comments typo fixed
* Fixed typos and add desciption to changelog.md
* solve comments
* remove extra space
* add a spce in the title
---------
Co-authored-by: Andrew Heard <andrewheard@google.com >
2023-04-17 13:55:59 -07:00
Nick Cooke
f233d5b6a5
[Cleanup] Follow-up to #10259 ( #10262 )
...
* [Cleanup] Follow-up to 10259
* [skip ci] Resolve TODO
In an effort to resolve this TODO, I marked the protocol as @optional to clean
up some of the duplicate test code. While it cleaned up the test code, it did
clutter up the actual usage of the API so I decided against doing so.
2022-09-26 19:04:16 -04:00
Nick Cooke
16304ea7eb
[AppCheck] Disable tests that use keychain ( #10146 )
2022-08-26 23:39:56 -04:00
Nick Cooke
62c77523de
[AppCheck] DeviceCheck provider is supported by watchOS 9.0+ ( #10094 )
...
* [AppCheck] DeviceCheck provider is supported by watchOS 9.0+
* Update CHANGELOG
* trailing whitespace
* Review
2022-08-12 00:49:32 -04:00
Nick Cooke
2f3bc9b8ae
Update response parsing logic and endpoint baseURL ( #9580 )
2022-04-05 16:50:32 -04: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
73279db127
Enable async/await APIs for iOS 13, etc. ( #9540 )
...
* Enable async/await APIs for iOS 13, etc.
This bumps the required compiler version to 5.5.2 which was included in
Xcode 13.2, where backporting was first introduced.
This breaks less developers and enables developers who aren't using
these APIs to still compile using Xcode 13.0 and 13.1.
As far as I can tell, the only breakage this includes now is developers
who are using Xcode 13.0 or 13.1, targeting iOS 15 and using one of
these 7 APIs. It will result in a compiler error and they'll have to
either use the completion handler version or upgrade to Xcode 13.2+ to
fix the compilation error.
* Missed checks, CHANGELOG
* Fixed avialability, added watchOS for RTDB
* Moved to watchOS 7 for all async/await APIs to match platform support
2022-04-01 09:56:33 -04:00
Nick Cooke
3d4b0f429e
[Heartbeat Logging] Migrate AppCheck from using FIRHeartbeatInfo to FIRHeartbeatLogger ( #9530 )
...
* Integrate AppCheck with FIRHeartbeatLogger
* Fix comment typo
* Fix CI
* [will revert] debug why HeartbeatLoggingTestUtils.podspec is linted?
* Revert "[will revert] debug why HeartbeatLoggingTestUtils.podspec is linted?"
This reverts commit 25a79874d8 .
* Change visibility of shim class
* Fix CI
* [skip ci] Review
2022-03-30 16:18:41 -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
Paul Beusterien
e748d16594
AppCheckInterop for Swift dependents ( #9299 )
2022-03-23 06:07:17 -07:00
Paul Beusterien
4f793064da
Set up Core Internal for SPM ( #9298 )
2022-03-23 06:07:17 -07:00
Paul Beusterien
eaaa0a69d1
Fix SPM AppCheck build for watchOS ( #9226 )
2022-01-19 09:25:10 -08:00
Nick Cooke
d6e7bb7d38
Update async-related directives in Swift build tests ( #9063 )
...
* Update directives in Swift build tests
* Fix CoreAPITests
* Fix CoreAPITests 2
* Fix installations and style
2021-12-09 14:30:43 -05:00
Paul Beusterien
7aebb8f597
Fix AppCheckAPITests for Xcode 13.0 macos/Catalyst ( #8848 )
2021-10-21 14:08:16 -07:00
Maksym Malyhin
b88646e713
Move FIRAppCheckBackoffWrapperFake to a separate folder ( #8805 )
...
* Move FIRAppCheckBackoffWrapperFake to a separate folder
* Add AppCheckBackoffWrapperFake to App Check podspec
2021-10-14 12:22:27 -04:00
Maksym Malyhin
58e73bac24
App Check: error handling with backoff ( #8798 )
...
* AppCheck: backoff wrapper implementation draft (#8748 )
* FIRAppCheckBackoffWrapper draft
* style
* FIRAppCheckBackoffWrapper implementation draft
* FIRAppCheckBackoffWrapperTests
* 1d backoff implementation
* Fix tests
* WIP FIRAppCheckBackoffWrapperFake
* FIRAppCheckBackoffWrapperFake implementation
* FIRDeviceCheckProviderTests + backoff
* TODOs
* rename
* Docs, typos, names and minor refactoring
* App Check: error handling with backoff (#8794 )
* Exponential backoff with jitter
* modify random to arc4random_uniform
* Error handling WIP
* Default backoff strategy for backend errors
* Default error handler implementation and tests
* Exponential backoff tests and fixes
* Exponential becoff recovery tests
* style
* App Attest backoff integration and tests
* More tests and style
* FIRDeviceCheckProviderTests: default error handler tests
* test fixes
* FIRAppAttestProviderTests: backoff error handler tests
* Providers tests: test backoff case
* Better API docs
* Remove `resetBackoff`
* More docs and comment fixes
* FIRAppAttestProviderTests fixes and cleanup
* Higlight 503 error
* comment fix
* Changelog
* More details in changelog
2021-10-13 16:48:17 -04:00
Nick Cooke
a5fbb0a352
[AppCheck] Add support for bundle ID-based API Key Restrictions ( #8678 )
...
* Add X-Ios-Bundle-Identifier to AC SDK
* Update CHANGELOG
* Update CHANGELOG 2
2021-09-21 13:46:30 -04:00
Paul Beusterien
c0df01d5f0
Fix Xcode 13 beta 3 build issues ( #8405 )
2021-07-19 07:18:36 -07:00
Maksym Malyhin
85c42dc2c5
Make App Check core availability for all supported platforms ( #8388 )
...
* Update App Check availability to match Core
* AppAttest availability update
* Fix watchOS
* watchOS
* style
* fix import
* Fix Xcode support before 12.5
* changelog
* Comments
* Use week linking for DeviceCheck framework
* Fix mac catalyts version
2021-07-15 16:41:46 -04:00
Nick Cooke
a2972042db
Update swift API tests ( #8383 )
2021-07-13 15:32:15 -04:00
Nick Cooke
2ab4bd743f
AppCheck Swift API build tests ( #8331 )
...
* Initial AppAttest API build tests
* AppCheck Swift API build tests
* Fix CI
* Test @available(swift 5.5)
* Review
* Explicit availability checks
2021-07-01 19:57:10 -04:00
Nick Cooke
1803b00e84
App Check: Token API for 3P use ( #8266 )
...
* Initial API implementation
* Update CHANGELOG
* Update test imports
* Make API async/await friendly by default
* Make API async friendly by default 2
* Fix CI
* Remove async/await example to fix CI
* Edit comment spacing
* Keychain error handling
* API rename and tests
* Add comments to tests
* Add public errors to umbrella header
* Refactor remaining test logic
* Remove newline
* Review
* Fix import style
* Fix import style 2
2021-06-23 13:01:42 -04:00
Maksym Malyhin and Nick Cooke
2ec4dbdae4
App Check: optimize auto-refresh ( #8232 )
...
* App Attest provider: attestation sequence (#7971 )
* App Attest provider: attestation sequence (#761 )
* App Attest draft WIP
* FIRAppAttestProvider initializers
* ./scripts/style.sh
* FIRAppAttestProvider implementation draft
* Basic FIRAppAttestProviderTests and fixes
* style
* testGetTokenWhenAppAttestIsNotSupported
* More FIRAppAttestProviderTests
* Cleanup
* Remove unused file
* Availability annotations on DCAppAttestService category.
* Guard FIRAppAttestProvider with #if TARGET_OS_IOS
* Formatting
* Fix SPM
* app_check.yaml: Add diagnostics SPM builds
* fix yaml
* Fix Firebase-Package scheme bad merge
* Fix typo
* FIRAppAttestProvider: hide default init
* FIRAppAttestKeyIDStorage: methods placeholders
* Comments
* Fix updated block definition
* Implement app attest key ID storage (#8014 )
* Implement FIRAppAttestKeyIDStorage
* Add FIRAppAttestKeyIDStorageTests
* Review [Draft]
* Style
* Docs updates
* Docs updates 2
* Review [Draft] 2
* Improve tests
* Improve test readability
* Improve test readability 2
* App Check App Attest workflow updates: initial handshake (#8032 )
* Handshake adjustments (WIP)
* Introduce FIRAppAttestProviderState
* WIP: calculate attestation state
* WIP: calculate attestation state 2
* formatting
* Comments and moving code around
* Fix init in tests
* Fix state calculation flow
* Cleanup state calculation and fix tests.
* Cleanup and fixes.
* Comments
* formatting
* Fix import
* Typo fixes and additional comments
* FIRAppAttestInitialHandshakeResponse API
* Cleanup state calculation using FBLPromiseAwait
* Cleanup
* style
* FIRAppAttestArtifactStorage implementation and tests (#8041 )
* Update comments
* FIRAppAttestArtifactStorage implementation and tests
* Fix init
* API docs
* Clean up storage in tests
* Comments
* Disable Keychain dependent tests for SPM
* Implement App Attest `getRandomChallenge` (#8033 )
* Initial implementation
* Parse response body for challenge and stub test cases
* Review [Draft]
* Avoid encoding challenge again
* Add tests
* Revert "Avoid encoding challenge again" and add TODO
This reverts commit 69eb00dfe2 .
* Document tests; Add test
* Tests: Add URL validation check
* Review
* Define Exchange AppAttest Assertion for FAC token API (#8058 )
* App Check App Attest: attestation request (#8059 )
* App Attest provider API integration WIP
* update tests
* Draft attestation response parsing
* Attestation request draft
* style
* AppAttest Attestation API tests draft
* Error cases tests
* style
* Cleanup and API docs
* Merge fix
* Fix OCMock imports
* Fix nullability modifier
* Formatting
* comments
* App Check App Attest initial handshake adjustments (#8067 )
* calculatre sha256 of random challenge for attestation
* Test app adjustments
* cleanup
* use trailing closures in the test app
* Implement API for ExchangeAppAttestAssertionRequest endpoint (#8065 )
* Implement assertion exchange
* Tweak existing tests
* Add tests
* Rename JSON to better match gRPC message
* Add HTTPBody helper
* Review
* Review 2
* Review 3
* App Check App Attest assertion flow (#8083 )
* App Attest assertion workflow draft
* send request
* assertion flow tests
* style
* App Check: store App Attest artifact per key ID (#8097 )
* Update artifact storage API and tests
* Artifact storage implementation update
* Save artifact for a key ID
* Style
* typos
* App Check: prevent concurrent token requests (#8117 )
* App Attest multiple get token method invocation tests
* Ensure a single App Attest handshake sequence at the time
* FIRAppCheckTests: get token request merging tests
* FIRAppCheck: Ensure a single get token operation at the time
* formatting
* Test new request after merged requests
* Release finished operation promise
* Style
* Typos
* typo
* Request merging tests for error cases
* formatting
* Changelog
* App Check App Attest: handle attestation rejection (#8170 )
* Remove/update outdated TODOs
* [WIP] Attestation rejection handling draft
* style
* retry tests draft
* reset key ID before retry
* Reset attestation
* test error and fixes
* style
* More details in the name
* Some debug logging
* style
* Use specific codes for log messages
* style
* Add FIRAppAttestProvider.h the umbrella header
* Add receivedAtDate property to the FAC token
* Update tests to check receivedAtDate field where important
* [WIP] Use FIRAppCheckTokenRefreshResult instead in the refresher API
* [WIP] Fix refgresher usage
* Update tests with new API, keep old logic
* Update tests with new logic
* WIP
* WIP
* Initial refresh tests and fixes.
* Add #import <TargetConditionals.h> where needed.
* Formatting
* Cleanup and test updates
* style
* Comments
* Cleanup and comments
* Fix catalyst
* Changelog
* Changelog version fix
* Typo
* Cleanup
* Typo
* Imports order
Co-authored-by: Nick Cooke <36927374+ncooke3@users.noreply.github.com >
2021-06-11 17:35:37 -04:00
Paul Beusterien
1d9bb05997
Fix AppCheck Catalyst build on Xcode 12.4 ( #8184 )
2021-06-03 09:35:13 -07:00
Maksym Malyhin and Nick Cooke
302f91e1ed
App Check: App Attest provider ( #8133 )
...
* App Attest provider: attestation sequence (#7971 )
* App Attest provider: attestation sequence (#761 )
* App Attest draft WIP
* FIRAppAttestProvider initializers
* ./scripts/style.sh
* FIRAppAttestProvider implementation draft
* Basic FIRAppAttestProviderTests and fixes
* style
* testGetTokenWhenAppAttestIsNotSupported
* More FIRAppAttestProviderTests
* Cleanup
* Remove unused file
* Availability annotations on DCAppAttestService category.
* Guard FIRAppAttestProvider with #if TARGET_OS_IOS
* Formatting
* Fix SPM
* app_check.yaml: Add diagnostics SPM builds
* fix yaml
* Fix Firebase-Package scheme bad merge
* Fix typo
* FIRAppAttestProvider: hide default init
* FIRAppAttestKeyIDStorage: methods placeholders
* Comments
* Fix updated block definition
* Implement app attest key ID storage (#8014 )
* Implement FIRAppAttestKeyIDStorage
* Add FIRAppAttestKeyIDStorageTests
* Review [Draft]
* Style
* Docs updates
* Docs updates 2
* Review [Draft] 2
* Improve tests
* Improve test readability
* Improve test readability 2
* App Check App Attest workflow updates: initial handshake (#8032 )
* Handshake adjustments (WIP)
* Introduce FIRAppAttestProviderState
* WIP: calculate attestation state
* WIP: calculate attestation state 2
* formatting
* Comments and moving code around
* Fix init in tests
* Fix state calculation flow
* Cleanup state calculation and fix tests.
* Cleanup and fixes.
* Comments
* formatting
* Fix import
* Typo fixes and additional comments
* FIRAppAttestInitialHandshakeResponse API
* Cleanup state calculation using FBLPromiseAwait
* Cleanup
* style
* FIRAppAttestArtifactStorage implementation and tests (#8041 )
* Update comments
* FIRAppAttestArtifactStorage implementation and tests
* Fix init
* API docs
* Clean up storage in tests
* Comments
* Disable Keychain dependent tests for SPM
* Implement App Attest `getRandomChallenge` (#8033 )
* Initial implementation
* Parse response body for challenge and stub test cases
* Review [Draft]
* Avoid encoding challenge again
* Add tests
* Revert "Avoid encoding challenge again" and add TODO
This reverts commit 69eb00dfe2 .
* Document tests; Add test
* Tests: Add URL validation check
* Review
* Define Exchange AppAttest Assertion for FAC token API (#8058 )
* App Check App Attest: attestation request (#8059 )
* App Attest provider API integration WIP
* update tests
* Draft attestation response parsing
* Attestation request draft
* style
* AppAttest Attestation API tests draft
* Error cases tests
* style
* Cleanup and API docs
* Merge fix
* Fix OCMock imports
* Fix nullability modifier
* Formatting
* comments
* App Check App Attest initial handshake adjustments (#8067 )
* calculatre sha256 of random challenge for attestation
* Test app adjustments
* cleanup
* use trailing closures in the test app
* Implement API for ExchangeAppAttestAssertionRequest endpoint (#8065 )
* Implement assertion exchange
* Tweak existing tests
* Add tests
* Rename JSON to better match gRPC message
* Add HTTPBody helper
* Review
* Review 2
* Review 3
* App Check App Attest assertion flow (#8083 )
* App Attest assertion workflow draft
* send request
* assertion flow tests
* style
* App Check: store App Attest artifact per key ID (#8097 )
* Update artifact storage API and tests
* Artifact storage implementation update
* Save artifact for a key ID
* Style
* typos
* App Check: prevent concurrent token requests (#8117 )
* App Attest multiple get token method invocation tests
* Ensure a single App Attest handshake sequence at the time
* FIRAppCheckTests: get token request merging tests
* FIRAppCheck: Ensure a single get token operation at the time
* formatting
* Test new request after merged requests
* Release finished operation promise
* Style
* Typos
* typo
* Request merging tests for error cases
* formatting
* Changelog
* App Check App Attest: handle attestation rejection (#8170 )
* Remove/update outdated TODOs
* [WIP] Attestation rejection handling draft
* style
* retry tests draft
* reset key ID before retry
* Reset attestation
* test error and fixes
* style
* More details in the name
* Some debug logging
* style
* Use specific codes for log messages
* style
* Add FIRAppAttestProvider.h the umbrella header
Co-authored-by: Nick Cooke <36927374+ncooke3@users.noreply.github.com >
2021-06-01 10:47:57 -04:00
Paul Beusterien
fd36167c8c
Migrate back to unforked OCMock for SPM ( #8042 )
2021-05-11 11:39:55 -07:00
Nick Cooke
8c10bd5578
Reenable platform logging ( #7948 )
2021-04-23 12:44:23 -04:00
Maksym Malyhin
fc6284ca2e
Integrate App Check with Firebase umbrella pod ( #7937 )
...
* App Check: add to Firebase pod
* Dangerfile: add App Check
* Add App Check to Firebase.h
* Add App Check to FirebaseManifest.swift
* AppCheck: use Firebase version
* style
* Fix App Check swift tests for --use-libraries
* Fix copyright
* Revert unecessary changes
* Disable tests on CI for pod lib lint with --use-libraries and --use-modular-headers
2021-04-22 16:28:18 -04:00
47e0a982fb
App check and storage, functions and RTDB support ( #7928 )
...
* AppAttestation initial public API
* Run ./scripts/style.sh
* Copyright
* Cleanup
* Cleanup
* Get token forcing refresh method
* Formatting
* Forcing refresh samples
* Interop introduced
* Code samples for Interop
* Run ./scripts/style.sh
* Cleanup
* TODOs and Copirights
* Fix build
* Supported iOS versions
* Remove unnecessary bridging header
* Run ./scripts/style.sh
* [WIP] DeviceCheckAttestationProvider as a subspec
* cleanup
* Add memory attributes to readonly properties
* Move FIRDeviceCheckAttestationProvider.h to private headers
* TODO for `FirebaseAppAttestation/Core` name
* Remove memory attributes from FIRAppAttestationToken properties
* FIRAppAttestationTests.testSetAttestationProviderFactory introduced
* FIRAppAttestationToken initializer
* Basic FIRLibrary implementation and FIRAppAttestationProviderFactory ingestion.
* Fix
* FIRAppAttestationToken+Interop.h
* TODOs
* Tests: reset FIRApps
* GHA for App Attestation
* Run ./scripts/style.sh
* Style fixes.
* Run ./scripts/style.sh
* TODO
* Nullable initializer and type annpotations
* TODOs
* TODOs
* TODO
* Fix spec and allow warnings
* AppAttestation initial public API
* Run ./scripts/style.sh
* Copyright
* Cleanup
* Cleanup
* Get token forcing refresh method
* Formatting
* Forcing refresh samples
* Interop introduced
* Code samples for Interop
* Run ./scripts/style.sh
* Cleanup
* TODOs and Copirights
* Fix build
* Supported iOS versions
* Remove unnecessary bridging header
* Run ./scripts/style.sh
* [WIP] DeviceCheckAttestationProvider as a subspec
* cleanup
* Add memory attributes to readonly properties
* Move FIRDeviceCheckAttestationProvider.h to private headers
* TODO for `FirebaseAppAttestation/Core` name
* Remove memory attributes from FIRAppAttestationToken properties
* FIRAppAttestationTests.testSetAttestationProviderFactory introduced
* FIRAppAttestationToken initializer
* Basic FIRLibrary implementation and FIRAppAttestationProviderFactory ingestion.
* Fix
* FIRAppAttestationToken+Interop.h
* TODOs
* Tests: reset FIRApps
* Run ./scripts/style.sh
* Style fixes.
* Run ./scripts/style.sh
* TODO
* Nullable initializer and type annpotations
* TODOs
* TODOs
* TODO
* Revert FirestoreDecoder.swift formatting.
* Basic implementation of FIRDeviceCheckAttestationProvider and tests (#626 )
* DeviceCheck attestation provider sceleton
* DeviceCheck attestation provider sceleton
* Basic FIRDeviceCheckAttestationProviderTests
* Run ./scripts/style.sh
* FIRAppAttestStorage implementation and tests (#627 )
* FIRDeviceCheckAttestationProvider designated init
* FIRAppAttestStorage API and basic tests.
* FIRAppAttestStoredToken: NSSecureCoding implementation
* WIP Storage
* Add `accessGroup` param to `FIRAppAttestStorage`
* FIRAppAttestStorage implementation
* Use constants
* FIRAppAttestStorage API doc
* Coding style and typos.
* Code formatting
* Attestation Token caching (#630 )
* Storage instance and looging
* AppAttestation caching
* Tests and cleanup
* Cleanup
* Rename App Attestation -> App Check (#631 )
* Rename App Attestation -> App Check
* Run ./scripts/style.sh
* Update GHA
* Default Custom Provider (#633 )
* AppCheck: remove not unnecessary public API (#634 )
* AppCheck: remove not unnecessary public API
* Run ./scripts/style.sh
* AppCheck: DeviceCheck token server API (#635 )
* Generic HTTP request handling
* [draft] AppCheck: device check HTTP API and simple tests
* Parse response
* Cleanup
* AppCheck: API errors and tests (#636 )
* AppCheck errors
* API service tests and fixes
* Cleanup
* Run ./scripts/style.sh
* Naming
* AppCheck: Register device check provider factory as a default (#637 )
* AppCheck errors
* API service tests and fixes
* Cleanup
* Run ./scripts/style.sh
* AppCheck: register FIRDeviceCheckProvider as a component
* Naming
* Registre device check provider factory as a default
* FIRDeviceCheckProvider tests
* AppCheck: API communication common for all providers moved to FIRAppCheckAPIService (#640 )
* FIRAppCheckAPIService introduced
* Move URL seession stub to FIRURLSessionOCMockStub
* Run ./scripts/style.sh
* Move approximate date comparing to FIRDateTestUtils
* compose request in FIRAppCheckAPIService
* FIRAppCheckAPIServiceTests
* Use FIRAppCheckAPIService in FIRDeviceCheckProvider
* Cleanup
* DeviceCheck mock server integration and tests (#686 )
* DeviceCheck mock server integration and tests
* TODO
* Update FIROptions.h import
* Temporary add FirebaseAppCheck to skip import validation
* TestUtilities moved to SharedTestUtilities
* FirebaseAppCheck.podspec: TestUtilities->SharedTestUtilities
* SwiftPM: add OCMock dependency to SharedTestUtilities
* FIRURLSessionOCMockStub: #import "OCMock.h"
* App Check: Firebase 7 fixes (#715 )
* AppCheck Firebase 7
* FirebaseCore repo-relative imports
* Fix FIRAppCheckStorage.m compilation
* Repo relative imports
* linebreak
* AppCheck: debug FAC token provider (#716 )
* AppCheck Firebase 7
* FirebaseCore repo-relative imports
* Fix FIRAppCheckStorage.m compilation
* Repo relative imports
* linebreak
* Remove FIRAppCheckDefaultCustomProvider
* FIRAppCheckDebugProvider introduced
* FIRAppCheckDebugProviderTests
* style
* Print locally generated debug token to console
* Fix imports
* mullability and line breaks
* typo
* Comments
* TODO
* AppCheck: merge into single spec (package) (#717 )
* Standard package folder structure
* Move interop header into AppCheck sources folder
* Combine public headers in the standard dir
* Private headers to internal
* Podspec
* Headers import udpdate
* style
* Fix header imports
* Enable check_imports.swift and fix imports
* AppCheck: server request adjustments (#718 )
* Wrap DeviceCheck token into JSON
* AppChek - remove static_framework requirement
* WIP
* Update default base URL
* Set content-type header
* Check for empty response data
* Fix tests
* Style and formatting
* Podspec - revert wrong change and remove static_framework
* Assign error to error pointer safely.
* AppCheck: primitive test app (#719 )
* Remove static_framework requirement
* WIP: FIRAppCheckTestApp introduced
* Delete .plist
* Copyright
* Remove empty test targets
* pod deintegrate
* Remove test targets from Podfile
* formatting
* Storage: integration with AppCheck (#720 )
* Storage: add AppCheck interop dependency
* Inject AppCheck into FIRStorageTokenAuthorizer
* initial AppCheck integration
* Introduce AppCheck fake
* AppCheck fake implementation
* FIRStorageTokenAuthorizer tests and fixes
* @"Authorization" header constant
* Log AppCheck error.
* Cleanup
* FIRStorageTokenAuthorizerTests: helpers
* TODO
* Cleanup
* AppCheck: separate 2P and 3P API (#724 )
* FIRAppCheckInterop: remove a convenience method.
* Rename: FIRAppCheckTokenInterop->FIRAppCheckTokenResultInterop
* FIRAppCheckTokenResult introduced
* Update FIRAppCheckTokenHandlerInterop, FIRAppCheckTokenResultInterop and tests
* style
* Update token result
* Update storage integration
* Adjust check_imports.swift for test files
* Don't use internal AppCheck classes in Storage tests
* style
* Rename token to tokenResult in 2P API
* Add private Core headers to app check sources
* Fix storage log message code format
* token clarification comments in API docs
* Rename token->tokenResult
* AppCheck cleanup (#737 )
* Fix public headers import
* Cleanup imported test utils
* FirebaseAppCheck podspec: revert git URL
* AppCheck: Debug token to AppCheck token exchange API (#739 )
* GUL: make NSURLSession promise extension public
* Use NSURLSession+GULPromises to send requests
* style
* Move FIRAppCheckToken+APIResponse to Core dir
* rename
* FIRAppCheckDebugProviderAPIService introduced
* Move async token parsing API to FIRAppCheckToken extension
* Move token exchange response handling to FIRAppCheckAPIService. Tests WIP.
* Move API response parsing tests to FIRAppCheckAPIServiceTests
* FIRAppCheckDebugProviderAPIServiceTests
* Cleanup
* style
* App Check debug provider: integrate with exchange API (#743 )
* Move FIROption validation to FIRAppCheckValidator
* FIRAppCheckDebugProvider token exchange and tests
* Fix FIRAppCheckDebugProviderFactoryTests
* style
* App Check test app debug provider fix (#747 )
* App Check: minor touchups (#750 )
* Update dummy token value
* Print local debug token to logs
* Require GoogleUtilities v7.2 and above
* Print debug token on init
* Don't print debug token again
* App Check: use prod environment (#751 )
* App Check: use prod backend by default.
* Update token expiration threshold
* App Check SwiftPM support (#753 )
* AppCheck SwiftPM package definition
* Promise header import fix
* OCMock header fix
* Fix fixture dependent tests
* Exclude Keychain dependent tests
* License
* ./scripts/style.sh
* Cleanup
* Format with proper SwiftFormat version
* `.process` resources.
* Swift tests target
* Cleanup and code formatting
* App Check: token auto-refresh (#754 )
* FIRAppCheckTokenRefresher API defined
* FIRAppCheckTokenRefresher implementation draft
* [WIP] Token refresher integration
* Token refresher integration
* FIRAppCheckTests: token refresher tests
* FIRAppCheckTests: additional tests cases
* FIRAppCheckTimer introduced
* FIRAppCheckTokenRefresher: use FIRAppCheckTimer instead of the dispatch timer.
* FIRFakeTimer
* FIRAppCheckTokenRefresherTests testInitialRefresh
* FIRAppCheckTokenRefresherTests: testNextRefreshOnRefreshSuccess
* ./scripts/style.sh
* Exponential backoff
* Style and comments
* Move token refresh files to a separate folder
* FIRAppCheckTimerTests
* FIRAppCheck: use expicit class in init
* FIRAppCheckDebugProviderFactory Swift name
* FIRAppCheckTokenRefresher: Increment/decrement directly
* App Check fixes (#755 )
* Fix backoff: no backoff for the initial request
* Use eager initialization
* FIRAppCheckTokenRefresher: don't refresh until handler set
* FIRAppCheckIntegrationTests: disable token refresher
* Fix testInitialRefresh test
* style
* FIRAppCheckIntegrationTests fix
* Temporary exclude App Check from platfrom logging (#756 )
* App Check: send app check SDK version only in the header (#757 )
* App Check: store FAC token per app ID (#758 )
* App Check: store FAC token per app ID
* update podspec
* API docs
* FIRAppCheck initWithApp tests
* AppCheckCustomProvideApp (#760 )
* Functions: App Check integration (#762 )
* Functions: app check API added to FUNContextProvider
* FUNContextProviderTests
* FUNContextProvider app check support
* ./scripts/style.sh
* FIRFunctions: pass FAC token as HTTP header
* Fix SPM
* Fix Firebase-Package scheme bad merge
* Cleanup
* RTDB: pass FAC token to web socket (#763 )
* RTDB: pass FAC token to web socket
* FIRAppCheckFake default init
* Rename FAuthTokenProvider to FIRDatabaseConnectionContext; integrate with App Check
* Pass App Check token in the HTTP header
* Rename
* Fix existing tests
* TODO
* ./scripts/style.sh
* Context provider: assume separate FAC token change listener
* FIRDatabaseConnectionContextProviderTests
* Remove unused files
* Copy NSMutableURLRequest
* Cleanup
* ./scripts/style.sh
* FIRDatabaseConnectionContextProvider: sync callback when no auth or app check
* Cleanup
* Rename "authToken" leftovers to "context"
* Fix renaming
* Pass missing headers to NSURLSessionWebSocketTask
* Cleanup
* add a name to TODO
* App Check: token update notifications (#764 )
* AppCheck: token did change API and tests
* notification implementation and fixes
* Run ./scripts/style.sh
* Update comments
* RTDB: send app check token updates to keep connection open (#765 )
* Pass AppCheck instance as an object into the the FAC token update notification
* FIRDatabaseConnectionContext: add FAC token change listener API
* formatting
* Send FAC token updates to open connection
* More informative empty response message
* refreshAppCheckToken fixes
* Remove assertion
* Don't modify state
* forceTokensRefresh -> forceTokenRefreshes
* Call listeners on [FIRDatabaseQuery sharedQueue]
* App Check API cleanup and docs (#766 )
* AppCheck public API and docs cleanup
* More API docs
* Fix compilation errors
* typos and wording
* Make summary different from description (pod lib lint warning)
* port app check workflow changes from another branch
* pod lib lint: remove --allow-warnings
* App Check cleanup (#767 )
* Cleanup debug code and outdated TODOs
* Fix FIRDeviceCheckProvider availablility for SPM
* Fix availability in tests
* Fix availability in tests
* Make sure os requirements are consistent for tests specs
* Migrate v1alpha URLs to v1beta
* Migrate v1alpha URLs to v1beta
* Run ./scripts/style.sh
* Functions tests: fix Xcode 11 warnings (#7931 )
* Functions tests: fix Xcode 11 warnings
* style
* App Check: token auto-refresh opt-out API (#769 )
* FIRAppCheckSettings introduced (WIP)
* FIRAppCheckSettingsTests
* Style
* Make FIRAppCheckSettings instance per-app.
* FIRAppCheckTokenRefresher: use FIRAppCheckSettings.isTokenAutoRefreshEnabled (WIP)
* Tests
* Add public instance getters
* Fix analyzer warnings
* Fix testspec OS versions
* FIRAppCheckTokenRefresher expiration date update; tests
* FIRAppCheck.isTokenAutoRefreshEnabled implementation and tests
* style
* FIRAppCheck: Use specific types for variables in the default init
* More precise comments
* missing symbol
* FIRAppCheckSettings: remove defensive conditions from init.
Co-authored-by: Nick Cooke <nickcooke@google.com >
Co-authored-by: Nick Cooke <36927374+ncooke3@users.noreply.github.com >
2021-04-21 21:01:11 -04:00