Commit Graph
33 Commits
Author SHA1 Message Date
Paul Beusterien f2bcd5d82b Make all GoogleUtilities APIs public (#6588) 2020-09-29 07:26:10 -07:00
Maksym Malyhin 2f778ee5d2 CoreDiagnostics changelog (#6465) 2020-09-15 13:03:39 -04:00
Maksym Malyhin 0dcd986282 FirebaseCoreDiagnostics: add a dummy public header to define other as internal (#6442)
* FirebaseCoreDiagnostics: add a dummy public header to define other as internal

* Version bump

* new line
2020-09-11 13:45:08 -04:00
manjanac 33d7334900 Delete references to on-device APIs (#6296)
* Restores ML Pods after M77.

* Delete references to on-device APIs, which have moved to a standalone MLKit.
2020-08-19 10:33:35 -04:00
Paul Beusterien 1ccb1e801d M78 Changelogs - SwiftPM and watchOS updates (#6292) 2020-08-18 10:03:53 -07:00
f33276f530 Update nanopb py3 0.3.9.5 -> 0.3.9.6 (#6214)
* update nanopb from 0.3.9.5 to 0.3.9.6

This fixes issues building firestore SDK with Python3.
Interestingly, latest version 0.4.2 still errors during the build
but 0.3.9.6 works. The git commit for this fix in nanopb
https://github.com/nanopb/nanopb/commit/63f8e5e4946a5f8f0211b454bd37187871c3d023

* Update generated sources

* updating just nanopb dependency version

nanopb updated from 0.3.9.5 to 0.3.9.6
(pod version 1.30905.0 to 1.30906.0)

* Add missing source specifier

* Generated files for protos using nanopb 0.3.9.6

* removed unnecessary whitespaces in files generated by protoc

* using more qualified relative paths for header includes

* Changelog

Co-authored-by: Marek Gilbert <mcg@google.com>
Co-authored-by: Paul Beusterien <paulbeusterien@google.com>
2020-08-14 14:13:01 -07:00
Paul Beusterien a220ab1363 Add SPM support for CoreDiagnostics (#6233) 2020-08-10 07:46:19 -07:00
Paul Beusterien 5a5914da7e GDT Repo-relative imports and SPM (#5909) 2020-06-24 17:50:15 -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 8e1be65b2f Verifies nanopb 0.3.9.5 update does not change generation (#5455) 2020-04-27 17:08:36 -07:00
Michael Haney b6bda076e6 Update CHANGELOGs and GDT versions and dependencies (#5354)
* Update CHANGELOGs and GDT versions and dependencies

* Update FIRCD CHANGELOG as well

* remove unreleased section from changelogs
2020-04-13 17:04:41 -07:00
Michael Haney 1f55b92732 getByte into the actual buffer, not into the byte array struct (#5227)
Also:
- add a test, confirmed failing without these changes
- rename variable to better represent what it is
2020-03-30 12:55:00 -07:00
Michael Haney 096fc678c1 Fix calloc calls, which had the argument order reversed (#5218)
Also, maybe I should resign from software engineering
2020-03-28 14:30:43 -07:00
Michael Haney 7747b58aea Update GDT associated CHANGELOGs (#5194)
* Update GDT associated CHANGELOGs

* Update CHANGELOG.md
2020-03-25 13:58:15 -07:00
Michael Haney d575edea31 Revert "Revert "Address a few potential security issues (#5059)" (#5121) (#5193)
* Revert "Revert "Address a few potential security issues (#5059)" (#5121)"

This reverts commit b41410d149.

* Update CHANGELOG.md
2020-03-25 13:12:42 -07:00
Michael Haney b41410d149 Revert "Address a few potential security issues (#5059)" (#5121)
This reverts commit 86189f762e.
2020-03-16 16:58:30 -07:00
Michael Haney 86189f762e Address a few potential security issues (#5059)
* Address a few potential security issues

Eliminates use of memcpy and malloc

* Update CHANGELOG
2020-03-10 14:46:13 -07:00
Michael Haney 30e1ff345e Fix checking the result of malloc (#4878)
* Fix checking the result of malloc

Also make FIRCoreDiagnostics project generable again

* Fix compilation error

* Update CHANGELOGs
2020-02-10 12:54:27 -08:00
Michael Haney 0f6cea250e Set mutable data ref lengths, otherwise iOS will 0 out the buffer (#4849)
* Set mutable data ref lengths, otherwise iOS will 0 out the buffer

* Same change in FIRCoreDiagnostics

* Add a unit test

* Update changelogs and a comment
2020-02-06 19:17:09 -08:00
Michael Haney 33ec39abf7 Update FIRCD, GDT, and GDTCCT CHANGELOGs (#4360)
* Update FIRCD CHANGELOG

* Update GDT CHANGELOG

* Update GDTCCT's CHANGELOG

* Update CHANGELOG.md

* Update CHANGELOG.md
2019-11-19 11:35:48 -08:00
Michael Haney efbf9bdf1d Send diagnostic data to the FLL backend instead of the CCT backend (#4196)
* Send diagnostic data to the FLL backend instead of the CCT backend

* Handle FLL redirects and set the User-Agent

The podspec now surfaces the SDK version.

* Add unit tests for handling redirects
2019-11-15 01:30:19 -08:00
Vinay Guthal be17ade458 add heartbeat feature for ios sdks (#4098)
* add heartbeat feature

* fix client logtype

* make class functions

* add subspec changes

* remove test file

* add heartbeat  tests

* use FileDataStorage instead of Storage

* add style

* use file data storage instead of storage

* fix test location

* add tests

* address comments

* update storage heartbeat with the new api

* update format

* update formatting and use correct enums

* rename

* update storage

* fix heartbeat

* update heartbeat tests

* fix styling

* Revert change

* heartbeat storage

* add comments

* update storage

* address comments

* add comments

* address comments

* fix style

* add style

* add style

* move heartbeat date storage

* move to environment

* update tests

* add tests

* small change

* add google utilities

* delete the header file

* update tests

* remove headers

* fix comment

* gul heartbeat date storage

* Update versions for heartbeat PR (#4311)

* update podfile

* Fix Firestore build under CMake

GoogleUtilities must now build SecureCoding
2019-11-14 15:22:20 -05:00
Michael Haney 6ac5b7d3a5 Update nanopb from 0.3.9.2 to 0.3.9.3 (#3977)
No appreciable change.
2019-10-02 13:29:10 -07:00
Michael Haney 1671040a1f Update CHANGELOGs (#3810)
* Update CHANGELOGs

* Additional changes to CHANGELOGs
2019-09-09 16:07:04 -07:00
Michael Haney 18e2721c1d Rename GDT core libraries to GDTCOR (#3808) 2019-09-09 15:21:29 -07:00
Michael Haney 9776ee54ba Fix CHANGELOGs for everything GDT and FIRCD related (#3583)
* Fix CHANGELOGs for everything GDT and FIRCD related

* Adjust order

* Use github issue notation, hopefully.

* Format like FirebaseCore.
2019-08-14 08:45:36 -07:00
Michael Haney f84ab548ae Remove fields that are currently unused. (#3528)
None of these fields were collecting information, but they shouldn't be in the proto until they're used.
2019-08-08 12:09:19 -07:00
Michael Haney 5a2e88d6dc Remove asserts and replace with GDTLogs (#3535)
* Remove asserts and replace with GDTLogs

Should infrequently log to the console in !NDEBUG builds instead of asserting.

* Remove tests that check for assertions.
2019-08-08 11:34:52 -07:00
Morgan Chen 3188760398 Clean up changelogs (#3462)
* Clean up changelogs
2019-07-30 14:07:28 -07:00
Maksym Malyhin f1d0ecc8dc CoreDiagnostics: set missing flag has_sdk_name for heartbeats. (#3422)
* CoreDiagnostics: set missing flag `has_sdk_name` for heartbeats.

* Validate `has_sdk_name` in tests.
2019-07-24 13:49:39 -04:00
Michael Haney 310864290f Cherry pick some bug and analyzer fixes (#3396)
* Don't upload if there's no network.

* Explicitly compare a pointer to nil

* Address a memory leak

NSTimer would never be invalidated if the package were not completed.

* Address some analyzer issues

* Fix the upload timer test.
2019-07-19 21:36:50 -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