Commit Graph
95 Commits
Author SHA1 Message Date
Paul Beusterien 420dfc257b Comply with c99 standard (#1992)
* Trigger travis for Firestore podspec changes
2018-10-24 11:04:00 -07:00
Paul Beusterien 3fd6ec87cf Restore pod lib lint testing to public (#1958)
* AnalyticsInterop 1.1.0 is public so restore pod lib lint testing
* better if_changed checking
2018-10-16 15:03:57 -07:00
Paul Beusterien 2c30068ef3 Fix if_changed for addition of InAppMessagingDisplay (#1954) 2018-10-16 11:57:25 -07:00
Paul Beusterien 8225588a9a Fix formatting in build.sh (#1939) 2018-10-12 09:56:28 -07:00
Paul Beusterien a36367292d Add Xcode 10 travis testing (#1932) 2018-10-11 19:28:15 -07:00
Paul Beusterien 467354a58f Do Messaging's Analytics logging via Interop (#1902) 2018-10-09 16:34:06 -07:00
Gil 86dc058729 Add a lint check for const references to absl::string_view (#1915)
* Check for const absl::string_view&, which should just be absl::string_view.

* Fix uses of const absl::string_view&
2018-10-05 13:58:43 -07:00
Konstantin Varlamov 4e067e55dd gRPC: use SCNetworkReachability to quickly end connections when reachability changes (#1843)
The reachability state is not (yet) used to determine whether it's possible to reconnect; rather, the its only use is to quickly end any existing connections. The benefit is potentially quicker reaction to network being disconnected than it would take for the connection to time out.
2018-10-01 15:27:11 -04:00
Yong Mao fac0b7f4e8 turn on travis testing for in-app messaging display (#1887) 2018-09-28 09:27:45 -07:00
rsgowman f98239755a Fix building of objc protos (#1858)
All proto targets (objc, cpp, nanopb) now depend on the proto sources,
so they'll be rebuilt if the proto sources change.

Also updated Firestore/Protos/README.md to reflect recent changes.

Also update travis config to build the protos. (Previously, cpp and
nanopb were rebuilt, since they're used in the cmake build. But objc was
not since it's not actually depended on by anything in cmake.)
2018-09-21 15:33:40 -04:00
zxu f999fffbb6 fix common typo (#1833) 2018-09-17 13:00:50 -04:00
Marek Gilbert 11c84b008c Install prerequisites for generating proto sources 2018-09-07 13:54:29 -07:00
Marek Gilbert 99ccff50dc Remove pod install and xcpretty from cmake build
These are no longer used since #1531 landed.
2018-09-07 13:49:04 -07:00
rsgowman bb045a5b90 Create process to build proto sources (#1704)
* Rename nanopb/.../*.pb.c to nanopb/.../*.nanopb.c

This ensures that all generated nanopb files use the same (sub)
extension of nanopb. This matches up with nanopb's --extension
parameter (which will be enabled later in this PR.)

* Remove references to NANOPB_PROTOC_BIN

Which wasn't being used, and wasn't pointing to a valid protoc.

* Add ability to generate protos from cmake build.

Currently, it's an entirely manual process via 'generate_protos' target.
This target is not automatically run during a build.

See Firestore/Protos/build-protos.sh for expected usage.

* cleanup/update license in build-protos.sh

* Build grpc proto sources (objc only)

* Use 32bit nanopb fields (instead of 16)

To match xcode build, but also to allow google/api/annotations.proto to
compile. (A recent change to nanopb now enforces this.) This isn't
strictly necessary, since we don't make use of that proto, so we
could've simply removed it instead (and in fact, the objc protos do
exactly that) but matching the xcode build certainly seems worthwhile.

* Rebuild all proto sources

* Skip whitespace checks on protoc generated files
2018-09-04 12:26:28 -04:00
Gil 3ada7da29f Ignore dotfiles when running sync_project.rb (#1771)
* Fix typos

* Ignore dot files (like .DS_Store)

* Also avoid .orig files
2018-09-01 15:50:27 -07:00
Gil 2813ac30da Fix analyze issues in Firestore (#1763)
* Fix analyzer errors in Firestore

* Add testutil to IntegrationTests
2018-08-29 12:09:52 -07:00
Konstantin Varlamov e70eebda1a Reduce fuzz time to 25 minutes (#1755)
Should prevent timeout on Travis.
2018-08-28 11:24:00 -04:00
Paul Beusterien ec7f79659d Travis config for Storage and DB integration tests (#1751) 2018-08-27 06:48:24 -07:00
Paul Beusterien ae30dc8381 Add current version to swiftformat upgrade message (#1724) 2018-08-21 13:18:39 -07:00
Gil de64b235de Make fuzzing run in the test stage (#1716)
Stages, even when cut off early with if_cron, still take about two
minutes to run. The fuzz_test stage was waiting for all tests to
complete before starting, which was artificially adding two minutes to
every build.

Use a different method to keep this visually distinct from the rest.
2018-08-18 12:16:03 -07:00
Mina Farid b5afc6b522 Run fuzzing as a travis cron job (#1662)
* Added fuzzing script to run all fuzzing targets on cron jobs.
* Added travis fuzzing script and `FUZZING_DURATION` to control fuzzing time.
* Given a total fuzzing duration, select 1 target to run for half of
  the duration, and divide the remaining duration over the rest of
  targets equally.
2018-08-16 18:20:08 -04:00
Michael Lehenbauer ccd3a142bc Log style.sh clang-format version. (#1680) 2018-08-15 11:00:31 -07:00
Paul Beusterien 688465aac5 Add retry for travis pod lib lint (#1683) 2018-08-13 17:33:49 -07:00
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