Commit Graph
46 Commits
Author SHA1 Message Date
Paul Beusterien 83e898ab5c One Firebase version (#6634) 2020-10-02 12:26:22 -07:00
Maksym Malyhin 3d0bab754e Functions changelog corrections (#6467) 2020-09-15 16:28:41 -04:00
Maksym Malyhin 02fd66d4e1 Functions: replace InstanceID by Messaging (master) (#6395)
* FIRMessagingInterop introduced

* Typo fix

* Use FIRMessagingInterop in functions

* Functions tests fix

* Delete FUNInstanceIDProxy

* InstanceID cleanup

* ./scripts/style.sh

* Reduce FIRMessagingInterop to required minimum

* Cleanup

* Functions changelog

* Fix FIRMessagingInteropFake.h import

* Update integration tests

* Fix start.sh script

* GHA: add FCM interop to funstions paths
2020-09-03 14:45:56 -04:00
Paul Beusterien 67c333e4cc Functions - new public header structure (#6193) 2020-08-03 16:28:14 -07:00
Paul Beusterien 87a1b7de5e M74 changelogs (#5921) 2020-06-25 16:34:03 -07:00
Paul Beusterien 0f5f455913 Delete unused host app (#5859) 2020-06-22 07:17:30 -07:00
Paul Beusterien 9cf6a243e6 Functions: Repo-relative headers and SPM (#5858) 2020-06-19 12:14:22 -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 abaf801ca2 Remove deprecated Functions xcodeproject (#4591) 2020-01-06 07:00:13 -08:00
Ryan Wilson 2cac1f520e Only assign errors if parameter is non-NULL. (#4168)
* Only assign errors if parameter is non-NULL.

This fixes #4164.

* Remove unnecessary commenting.

* Remove other unnecessary comment.
2019-10-29 09:17:15 -04:00
Morgan Chen 3188760398 Clean up changelogs (#3462)
* Clean up changelogs
2019-07-30 14:07:28 -07:00
Michael Haney 783ee5b126 Implement Firebase CoreDiagnostics (#3129)
* Implement CoreDiagnostics interop

For use by FirebaseCore.

Please pay special attention to the changes in FIRApp, I've replaced passing FIRApp in the notification with a data object that will eventually replace the same information that FIRDiagnostics extracted.

* Add CoreDiagnosticsInterop to the Example Podfile

* Style and xcodeproj updates

* Update Podfiles that dep on FirebaseCore

So that they also have a dep on FirebaseCoreDiagnosticsInterop

* ran pod deintegrate to remove unintended xcodeproj changes

* Fix Podfile paths

* Add FCD to if_changed and travis.yml

* Fix building with Firestore

* Style

* Whitespace

* Fix a changed internal API

* Make pod paths consistent

* Restore connectivity_monitor_noop.cc style

* Remove logging prior to [FIRApp configure]

Also remove sendLogsWithServiceName:version:

* style

* Remove nil checks from diagnostics data

* Put back some deleted symbols

* Restore the sendLogsWithServiceName:version: method, but as a no-op

* Restore the original version of sendLogs...

* Allow an unused parameter

* Remove obsolete nsnotificationcenter related stuff

* Whoops, missed the header change.

* Final changes to support FIRCoreDiagnostics

These changes are necessary because FIRCore has a hard dep on FIRCoreDiagnostics (FIRCD) and FIRCoreDiagnosticsInterop.

Components can't be used because FIRCD would need to have a hard dep on FIRCore to get access to FIRLibrary, FIRComponent, FIRComponentContainer, and FIRComponentCreationBlock and this would create a dep cycle. So, an extern has been put into the interop lib and the variable is implemented in the connector class inside of FIRCore, but it's unset. FIRCD actually sets that variable in +load, allowing use of FIRCD.

FIRCD can also be removed as a dependency with no ill effect by end users setting the environment variable DISABLE_FIREBASE_DIAGNOSTICS=1

* Add nanopb and project generation infrastructure

* Convert FIRCoreDiagnostics to canonical nanopb, and move to OSS.

* Remove custom build steps for CoreDiagnostics

* Addressing review comments

* Update versions, tags, and port the relevant unit tests for FIRCD

* Version and platform fixes

* Fix podspec expected tags

* A hack to solve a chicken-and-egg problem with pod lib linting.

* Heartbeat implementation

* FIRDiagnosticsDateFileStorageTests

* Fix tests for non-iOS platforms

* Heartbeat tests

* Fix initialization.

* Cleanup Installation ID.

* Fix testProtoPopulation.

* Merge conflict fix

* Typo fix.

* Remove FIRCore dep from FIRCD unit tests and move symbols to interop

* Run ./scripts/style.sh

* Typo

* #ifdef comment

* File license header.

* Import FIRDiagnosticsDateFileStorage.h using relative path.

* FIRDiagnostics -> FIRCoreDiagnostics

* Docs syntax

* Docs

* Docs typo

* Add shared variables to the interop lib

I know this goes against the convention, but it's actually the only way to resolve this very unique problem.

* Fix comment

* Style

* Removed lib version passing.

* Remove env checking for conditional deps

* Style

* Address whitespace issues

* Add copyright notice

* Add new deps to Podfiles

* Fix trailing space

* Some changes to fix working in an extension.

* Fix type in Podfile

* GDT: begin/end background task only for iOS and TVOS applications.

* Fix typo

* Style

* Stop sharing kFIRService strings across pods

* Travis test

* Change all TARGET_OS_TVOS macros to TARGET_OS_TV

TARGET_OS_TVOS doesn't exist.

Also macro out a UIApplication reference.

* style

* Update all Podfiles with deps on FIRCore

* Fix trailing whitespace

* Update Firestore cmake

* Fix FIAM build break (#3254)

* Additional cmake changes

* Fix linker issue with deprecated CoreDiagnostics (#3257)

* Adding more deps to cmake

* Fix linker error (#3266)

* Rerun only IAM tests

* whitespace

* No xcpretty or frameworks run

* Fix typo

* Revert "No xcpretty or frameworks run"

This reverts commit afc1abba37.

* Revert "whitespace"

This reverts commit fd06955a56.

* Revert "Rerun only IAM tests"

This reverts commit 98ce07600f.

* Run travis on this branch

* Add support for expanding PODS_TARGET_SRCROOT in CMake (#3267)

* Fix a few things that should have been splatted but weren't

* Define PODS_TARGET_SRCROOT in CMake for compatibility with CocoaPods

* Compile pods we depend upon with looser settings

* Rename the nanopb dependency to match what CMake actually has

* Make #include <nanopb/pb.h> work

Remove the old way of #include <pb.h> once we change the Firestore
nanopb generator to match.

* Fix warnings that fail the build

* Remove typed enum and fix a comment.

* Fix an import

* Change a line so it's not altered by Copybara

* More changes to stop copybara from altering the wrong sources

* Remove trailing whitespace

* Fix copybara modifying python.

* Add additional field in firebasecore.proto (#3273)

* Remove the dependency on interop to populate a shared variable.

* style

* Create travis jobs for FirebaseCoreDiagnostics (#3245)

* Create travis jobs for FirebaseCoreDiagnostics

And update the pod lib lints for GDT.

Remove the mph-master branch before merging to master.

* Add support for FIRCD to if_changed.sh

* Adjust tests

* Unavailable init methods should not be nullable (#3276)

* Allow firestore api to work with Codable objects + ExplicitNull + Integration tests (#3261)

* Convinience api for codables

* Integration Tests

* ExplicitNull implementation

* Update to CocoaPods 1.7.3 (#3280)

* Import GULLoggerLevel.h via public framework header (#3277)

* Put the need to include Firestore/Source/Public in the podspec (#3288)

This removes the need to munge the pods project after the fact and makes
it so that customers can click through to our headers too.

* Ensure Storage initializer doesn't get called (#3294)

* FIROptions.appGroupID introduced (#3293)

* Use a consistent set of dependencies on all platforms (#3289)

* Use a consistent set of dependencies on all platforms

* pod install for uniform dependencies

* Store the coerced base value in the BaseMutation (#3292)

* In card message: set the text color on the body text view (#3286)

* In card message: set the text color on the body text view

* Fix bug where card messages in test app were showing up with two of the same buttons

* Revert change to text color

* [docs] add missing semicolon (#3305)

Add missing semicolon to code example

* Add explicit Foundation import. (#3309)

This is causing issues when building an XCFramework.

* Pass the correct compiler flag for CoreDiagnostics. (#3312)

* Pass the correct compiler flag for CoreDiagnostics.

When CoreDiagnostics is open sourced, we'll need to ensure that the
right compiler flag is passed. This doesn't add support for Carthage yet
but allows the frameworkbuilder to pass the flag for carthage as well.
An update to the zipbuilder to allow for carthage will follow shortly.

* Remove accidental change.

* Fix and rewrite sync_project.rb (#3296)

* Fix and rewrite sync_project.rb

Ever since we added multiple platforms, removing a file has been broken.
This fixes that issue.

Also, rewrite target synchronization to make more sense. Essentially now
there's one diff between the filesystem and the groups and then an
explicit diff is done between project files and target contents.

* Run sync_project.rb on post-install

* pod lib linting should output something every minute while running

* DEBUG: This commit should be reverted

* DEBUG: This commit should be reverted

* DEBUG: This commit should be reverted

* Remove mph-master from travis

* Fix constant name conflic between old and new diagnostics (#3329)

* Rename kFIRDiagnosticsHeartbeatDateFileName -> kFIRCoreDiagnosticsHeartbeatDateFileName to avoid conflicts with FIRDiagnostics.

* Travis: temporary add `mph-master` to run tests.

* Rempve mph-master again

* Fix imports in FIRCDConnector

* Fix another import

* Fix yet another import

* Attempt to read crashing test logs from disk

* Implement printing of failed/crashed test logs.

* Print only crashed tests, rmdir between runs

* Revert reading crashing log changes

* Write CHANGELOG for all new FIRCD associated libraries

* Change all GUL deps to >= 6.2

* Revert ZipBuilder changes and do some last bits of cleanup

* Remove an assertion and populate an error instead
2019-07-18 09:54:06 -07:00
Gil 9e0d8f4a4f Update required CocoaPods version in READMEs (#3339) 2019-07-11 14:41:00 -07:00
Jason Hu 59a42fa4f2 Fix XCode Analysis Issues for XCode 10.1 (#3014) 2019-05-17 09:01:35 -04:00
Bryan Klimt c453664f1c Change Functions test app to allow testing against prod, using a GoogleService-Info.plist (#2869)
* Add a GoogleService-Info.plist and use it.
2019-04-19 14:06:21 -07:00
Bryan Klimt 41d2f1263a Tweak Functions error messages to be consistent with Android and C++. (#2841)
* Tweak Functions error messages to be consistent with Android and C++.
* Fix style errors.
2019-04-17 17:01:09 -07:00
Maksym Malyhin 55814996a1 Cocoapods 1.7.0 multiproject support (b/128794527) (#2751) 2019-04-08 22:38:51 -04:00
Paul Beusterien c2f6b78c14 Add community supported tvOS and macOS for Functions (#2506) 2019-03-11 13:07:20 -07:00
Paul Beusterien ee10c4edb0 Use test specs for Functions unit tests (#1864) 2019-03-07 16:38:31 -08:00
Bryan Klimt 55a3ac6e51 Update release notes for Functions. (#2475) 2019-03-06 16:32:36 -08:00
Paul Beusterien b5ff928de1 Fix Functions IntegrationTests for 32bit architectures (#2480) 2019-03-06 11:07:21 -08:00
Paul Beusterien 3ccbdcdc65 Fix Functions unit tests for 32bit targets (#2468)
* Compatible value for ll testing on 32 and 64 bit targets
2019-03-04 14:30:31 -08:00
Bryan Klimt 075e586c9a Add ability to set a timeout on Functions. (#2329)
Changes the default timeout for FirebaseFunctions to 70s and adds an API to override that timeout on a per-function basis.
2019-02-25 10:10:20 -08:00
Ryan Wilson fa2aa4f301 Allow Functions to be called without Auth. (#2298)
* Allow Functions to be called without Auth.

This was a regression from previous functionality, but is reverted
mostly to the old functionality. Previously `context` would be `nil` in
the completion handler if no Auth was available, but now `context` still
contains `instanceIDToken` but no `authToken`.

Also cover unit tests for the three states: no auth, auth error, and
valid auth.

* Style fixes.

* Cast Auth fake to prevent warning.
2019-01-22 14:09:48 -05:00
Paul Beusterien 7c53489e03 Travis to Xcode 10.1 and clang-format to 8.0.0 (tags/google/stable/2018-08-24) (#2222)
* Travis to Xcode 10.1
* Update to clang-format 8
* Update clang-format homebrew link
* Work around space in filename style.sh issue
2019-01-02 09:27:31 -08:00
Paul Beusterien 943141e0cd Use registerLibrary for pods in Firebase workspace (#2137)
* Add versioning to Functions and convert to FIRLibrary
* Convert Firestore to FIRLibrary
* Point travis to FirebaseCore pre-release for its deps
* Update user agent strings to match spec
2018-12-13 08:36:08 -08:00
Benoit St-Pierre 87a206e0c1 Functions Interop (#2113)
* Functions Interop

Convert Firebase Functions to use the Auth Interop pod

* Style FIxes

* Style fixes (from clang-format 7)

* Attempt to fix Travis Build

* Add Firebase/Core/Private to header search path

* Switch to using non-internal header

* Add Firebase Core private headers to search path

* Change Podfile to use Interop pods

I also removed a doubly-defined `FRAMEWORK_SEARCH_PATHS`

* Add Private Headers to search path

I also cleaned up some more project settings

* PR Feedback

* Looking for container headers

* PR Feedback

I also attempted moving the FakeApp class to the test targets and further simplified the project file.

* Re-add -all_load

* Set test target headers

I also moved the Podfile pods to the app target rather than the top-level

* Whitespace

* Re-add FirebaseFunctions to search path

* Revert project file back to origin/master

* Found the headers!

- Remove `FUNFakeApp` from app target
+ Add `FUNFakeApp` to test targets
+ Add `$(inherited)` to `HEADER_SEARCH_PATH` as per CocoaPods warning
+ Add `$(SRCROOT)/../../Firebase/Core/Private` to find `FIRComponentContainerInternal` header
~ Change import from frameworks import to regular import

* Revert xcsheme to previous version

* Update FIRFunctions.m

* CL Feedback

- Delete `FUNFakeApp`
+ Add `FIRAuthInteropFake` to test targets
~ Update initializer to use projectID instead of app

* Style fixes

* CL Feedback

* Fix Integration tests

* Set the region to the expected value
* Update node package.json to latest versions
2018-12-06 13:30:08 -05:00
Paul Beusterien b6b3597cc8 Remove a non-existent, unneeded file from xcode project (#1863) 2018-09-24 06:37:11 -07:00
Paul Beusterien 0ea024468e Fix analyze of FirebaseFunctions (#1742) 2018-08-27 15:26:05 -07:00
Michael Lehenbauer b88f95c44f Reformat using 'clang-format version 7.0.0 (tags/google/stable/2018-04-24)' (#1681)
This is the version of clang-format that travis is currently using.
2018-08-13 14:18:02 -07:00
Paul Beusterien 98b6eef71e Split GoogleUtilities from FirebaseCore (#1370) 2018-07-06 09:37:23 -07:00
Bryan Klimt f08edbb85c Add a couple of new small Functions APIs. (#1434)
* Add a Functions constructor that allows setting a region.
* Add a method to set an emulator origin to use.
* Update the changelog
2018-06-21 15:25:13 -04:00
Paul Beusterien d158e420c6 Add Development section to Functions README (#1230) 2018-05-04 13:34:17 -07:00
Paul Beusterien adc514a894 Check in deintegrated Functions Xcode project file (#1227)
* Add -all_load (See PR #1226)
2018-05-04 10:45:30 -07:00
Paul Beusterien a7b4479bce Add explicit Functions umbrella (#1187) 2018-04-26 06:41:18 -07:00
Paul Beusterien ede57f84bb Add missing copyright and licenses (#1152) 2018-04-20 11:54:53 -07:00
Bryan Klimt 3c871d7a58 Update the version number to 2.0.0. 2018-04-16 10:27:48 -07:00
Bryan Klimt cd997f0a78 Update CHANGELOG with most recent changes. 2018-04-16 10:14:38 -07:00
Ryan Wilson 6102886354 [BREAKING] Remove FIR prefix on FIRFunctionsErrorCode (#955)
[THIS IS A BREAKING CHANGE]
2018-04-09 16:50:52 -07:00
Ben Hamilton (Ben Gertzfield) cb1f65dfcf Migrate Firebase off ObjC module @import statements (#992)
* Migrate Firebase off @import statements

* - Migrate tests and test utils from @import to #import.
  - Update Xcode projects for tests to explicitly link in framework deps.
  - Update check_no_module_imports.sh to look for @imports in tests/test utils/
    integration tests.

* Ensure check_no_module_imports.sh explicitly exits with code 0 on success.
2018-03-29 08:44:48 -07:00
Bryan Klimt e78f9d41d3 Fix some formatting issues. 2018-03-27 16:50:32 -07:00
Paul Beusterien 51ffae2650 Run Functions Unit Tests on travis (#954) 2018-03-21 08:16:26 -07:00
Paul Beusterien 03275eb249 Fix Functions copyrights (#951) 2018-03-20 14:01:32 -07:00
Paul Beusterien b841009ea1 Run scripts/style.sh on Functions (#949) 2018-03-20 12:52:11 -07:00
Paul Beusterien b7f35a0b76 Initial Firebase Functions (#948) 2018-03-20 11:59:03 -07:00