Commit Graph
72 Commits
Author SHA1 Message Date
Mina Farid 21913920b0 Travis to avoid fuzz tests with tsan (#1621) 2018-08-01 23:04:49 -04:00
Mina Farid 6739dea3b1 Add Fuzz Test to travis Firestore-iOS-xcodebuild (#1617)
* Does not run any fuzz targets, but ensures that the fuzzing code compiles and is still compatible with our APIs.
2018-08-01 14:53:44 -04:00
zxu 098f93c5ed fix import pattern (#1604)
* fix import pattern

* fix style

* move check into cpplint.py

* replace than with rather than
2018-07-31 10:30:49 -04:00
Gil 579f76ce43 Make Firestore CMake a self-contained build (#1587)
* Make Firestore CMake a self-contained build

Now shell out to a sub-CMake to prepare depenencies without needing an
explciit superbuild structure. This makes the Visual Studio and CLion
projects driven from the CMake configuration actually usable.

* Move third-party dependencies to the top-level
2018-07-26 09:44:03 -07:00
Gil a2d38c5679 Implement a CMake build for FirebaseAuthInterop (#1532)
* Add a CMake build for FirebaseAuthInterop

* Avoid cluttering the symbol table

* Trigger Firestore-cmake checks on cmake script changes
2018-07-17 11:36:56 -07:00
Gil e963b606f3 Migrate contents of SwiftBuildTest to Firestore_SwiftTests_iOS (#1524)
* Move main.swift to BasicCompileTests.swift

* Remove SwiftBuildTest from the Podfile, Xcode project, build.sh

Add Firestore_SwiftTests_iOS, but only if building with Xcode 9 or
better.
2018-07-15 10:44:01 -07:00
Paul Beusterien c586dc8747 Separate Xcode project and tests for GoogleUtilities (#1521) 2018-07-12 12:03:50 -07:00
Gil 09c75c4fb8 Fix Firestore when compiled with Xcode 8.3 (#1519)
* Add a travis stage that tests building Firestore with Xcode 8.3.

* Simulate on a device available in Xcode 8

* Fix compile errors under Xcode 8.3.3

* Remove Firestore_SwiftTests_iOS from the Firestore_Tests_iOS Scheme

I'll create a new target for this but in another PR.

* Add an entry to CHANGELOG.md
2018-07-11 19:21:48 -07:00
Konstantin Varlamov ff95ffc61b In FSTLocalDocumentsView, search for all batches affecting a set of keys in one go (#1505)
This uses the newly-added allMutationBatchesAffectingDocumentKeys to find/deserialize all such batches in one go and then reuse the batches while processing a set of keys.
2018-07-10 13:59:25 -04:00
Gil f23e21ce96 Check CMake files for copyrights (#1509)
* Check CMake files for copyrights

* Add missing copyright
2018-07-10 09:05:11 -07:00
rsgowman 93bfbdf475 Hookup serializer_test.cc to the xcode based test suite (#1343) 2018-06-18 15:35:38 -04:00
Marek Gilbert 914542d7bf Remove exclusions for serializer_test.cc 2018-06-15 16:07:58 -07:00
Paul Beusterien 063d1e9105 Automate release version updating (#1414) 2018-06-15 17:51:59 -04:00
Rich Gowman f92829fa75 Remove Protos/cpp/google/protobuf from sync_project.rb ...
... and run sync_project.rb
2018-06-13 10:48:37 -04:00
Rich Gowman 86cdae83a0 Merge remote-tracking branch 'origin/master' into rsgowman/protobuf_cpp 2018-06-12 10:50:07 -04:00
Rich Gowman cf2899a085 Merge remote-tracking branch 'origin/master' into rsgowman/protobuf_cpp
Also "fixed" BadFieldValueTagWithOtherValidTagsPresent test by changing
'false' to 'true'. Details: Depending on the version of nanopb, nanopb
would explicitly encode 'false', which shouldn't be done in proto3. When
it's explicitly encoded, the test worked properly. But when it was
(properly) dropped, the invalid tag is the only field that's actually
encoded, thus violating the assumptions of the test, leading to a test
failure. s/false/true fixes it, as now the boolean_value field is
(properly) encoded regardless of version.
2018-06-12 10:27:17 -04:00
davidair 3973b6499a Merge branch 'release-5.2.0' into master 2018-06-06 17:29:10 -04:00
Gil 7dbf5caa5f Fix support scripts on Linux (#1385)
* Make it possible to run style.sh on Linux

Needs clang-format in a nonstandard location, but can be made to work.

* Fix lint.sh on Linux

* Fix multiline comment error
2018-06-06 12:31:37 -07:00
rsgowman ce61f4e0e6 Rename nanopb generated headers from foo.pb.h to foo.nanopb.h (#1371)
This avoids a collision with the libprotobuf generated files.

Also removes the "well-known" cpp protos, relying on libprotobuf to supply these instead.
2018-06-04 13:02:31 -04:00
Paul Beusterien 196f5d28cc Add Auth 5.0.1 to Firebase 5.2.0 2018-05-30 18:04:54 -07:00
davidair ed5c3217e8 Fixing Messaging version, script (#1356) 2018-05-30 14:21:58 -04:00
davidair 4713ddf8df Version updates for 5.2.0 (#1355) 2018-05-30 11:53:51 -04:00
Rich Gowman 1597765af8 Add CoreTestsProtos to scripts/sync_project.rb (and run it) 2018-05-29 17:49:12 -04:00
Ryan Wilson 6099fa115a Merge pull request #1350 from firebase/release-5.1.0
Release 5.1.0
2018-05-29 16:22:35 -04:00
Gil d3e9819275 Add a test synchronization script (#1303)
* Add a project sync script
* Give an error if the configuration references a group that doesn't exist
* Fix hard_assert_test reference
* Run sync_project to sort all project elements
2018-05-23 11:42:17 -07:00
Ryan Wilson 21c17dd188 Bump version numbers for 5.1.0 (#1320)
* Bump version numbers for 5.1.0

* Update push pods script for releasing SDKs.

* Fix Core library version string.
2018-05-23 10:31:30 -04:00
Paul Beusterien f855450b5d merge 2018-05-15 15:23:35 -07:00
Paul Beusterien 8bdafd9f14 Version updates for 5.0.1 (#1272) 2018-05-14 07:14:22 -07:00
Paul Beusterien 97dc3a3f67 Update travis to use CocoaPods 1.5.2 (#1103)
* Update travis to use CocoaPods 1.5.2
* CODE_SIGNING_ALLOWED=YES
* Remove workaround and iPhone 8
* Remove #1210 static library Podfile workaround
* Add -all_load to Firestore Example so all C++ is available for tests
2018-05-13 19:10:35 -07:00
Paul Beusterien 604de8e947 Add static library pod linting (#1259)
* add if_cron script
2018-05-11 18:24:00 -07:00
Gil 602c262c6b Add remaining tests to Xcode (#1256)
* Add classes in testutil and util to the project

  * Exclude util/iterator_adaptors_test which requires gmock
  * Exclude remote/serializer_test which is missing some paths

* Add iterator_adaptors_test and add gmock support

  * Add gmock support to the GoogleTest podspec we vendor
  * Add iterator_adaptors_test.cc to the Xcode project

* Add a script that verifies all tests are referenced in the project

* Add a travis check that all tests are referenced in the project

* Review feedback

* Moar feedback
2018-05-10 10:22:38 -07:00
Paul Beusterien 53b8664439 Add back pod spec lint checking (#1252)
* Add back pod spec lint checking
* Separate pod lib lint to stages
* order unit tests before lints
* add lint to install_prereqs and remove default
* consolidate pod_install and install_prereqs scripts
* workaround travis 10 minute timeout for Firestore lint
2018-05-09 19:23:38 -07:00
Paul Beusterien bb8c87a028 merge 2018-05-08 10:59:19 -07:00
Gil a080e481b5 Port FSTDocumentKeySet to C++ DocumentKeySet (#1229)
* Define a Comparator for DocumentKey

* Automated migration from FSTDocumentKeySet to DocumentKeySet

* Manual fixups for DocumentKeySet

* Delete FSTDocumentKeySet
2018-05-05 08:10:51 -07:00
Gil 0e598bbba2 Build Firestore integration tests (#1211)
We can't necessarily run them yet, but at least verify they build
2018-05-03 15:21:07 -07:00
Paul Beusterien 7dd3ee0272 Add Firebase version tag (#1205) 2018-05-01 07:21:15 -07:00
Paul Beusterien 7707f37c77 Updates for push-pods script (#1184) 2018-04-25 12:26:47 -07:00
Paul Beusterien a19773b9f3 pod lib lint status (#1160) 2018-04-25 08:34:10 -07:00
Paul Beusterien fbd5acb785 Temporary 5.0.0 release management scripts (#1133) 2018-04-25 08:34:10 -07:00
rsgowman 6dfc142888 Adjust serializer test to verify via libprotobuf. (#1039)
Previously, the tests would compare serialization results against a
precomputed (via protoc) array of bytes. Now they serialize via our
nanopb based class and deserialize via libprotobuf (and vice versa) and
then ensure the result is the same as the input
2018-04-24 11:31:58 -04:00
Konstantin Varlamov 758b29aec4 Firestore Travis: add test runs using sanitizers (#1128)
Also move most of `before_install` actions from Travis config into scripts to reduce duplication.
2018-04-23 14:11:27 -04:00
Paul Beusterien ede57f84bb Add missing copyright and licenses (#1152) 2018-04-20 11:54:53 -07:00
Gil 83a309df0a Rename iOS-specific targets with iOS-specific names (#1150)
* Rename targets:
  * Firestore_Example to Firestore_Example_iOS
  * Firestore_Tests to Firestore_Tests_iOS
  * Firestore_IntegrationTests to Firestore_IntegrationTests_iOS
  * AllTests to AllTests_iOS

* Rename associated schemes the same way

* Update Podfile to reference the new targets
2018-04-20 09:57:31 -07:00
Konstantin Varlamov 2320ba4837 Firestore Travis: ensure CTest outputs the log on failure. (#1118)
In CMake build of Firestore, configure CTest so that upon failure, it
prints out the full log of the failing test(s).
2018-04-18 12:52:43 -04:00
Konstantin Varlamov 257d833efc Travis: trigger rebuild if Travis config or build scripts have changed. (#1121) 2018-04-16 21:54:51 -04:00
Gil 33701fbc9c Fix the build and travis change detection (#1117)
* Fix typo in main.swift

* Fix change detection for Firestore in Travis
2018-04-16 14:46:03 -07:00
Gil 0a66187053 Add lint checking for Objective-C++ sources (#1048)
* lint.sh now lints Objective-C++ too

* cpplint checks system-style includes that should be user-style

This prevents it from recognizing project sources as if they were C
system headers and then complaining that they're in the wrong place.

* cpplint checks #imports and #includes

* cpplint checks that C++ system headers aren't #imported

* cpplint checks for C system headers that could be C++ system headers

* cpplint checks that Objective-C sources include their headers
2018-04-09 11:54:39 -07:00
Paul Beusterien 42bc113754 Travis static library testing (#1047)
* Add Objective C example app for Messaging
* Travis static library testing
* static lib build fixes
2018-04-09 09:11:21 -07:00
Gil 45e68a352d Clean up usages of std::make_unique that crept in (#996)
* Add std::make_unique rule

* Clean up usages of std::make_unique that crept in

This fails to build under Xcode 8.2
2018-03-29 13:23:41 -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