Commit Graph
7 Commits
Author SHA1 Message Date
Brian Chen 04b038eb21 add protos for != and NOT_IN (#6381) 2020-09-02 11:37:57 -05:00
Gil 1df5574c4f Upgrade gRPC-C++ to 1.28.0 (#4312)
This unblocks nanopb changes proposed in #4264.

This upgrades everything in the gRPC constellation of dependencies to match gRPC at 1.28:

  * gRPC to 1.28.0 (note that gRPC 1.28.1, while released, is a fix for just the python binding and there's no gRPC-C++ CocoaPod at that version)
  * Abseil to 20200225 (as of gRPC 1.27 this is now a gRPC dependency too; there's a later patch but gRPC doesn't use it yet)
  * Protobuf C++ to 3.11.4 (only used for testing in Firestore)
  * C-Ares to 1.15.0
  * BoringSSL to match (no change between gRPC 1.27.0 and 1.28.0)

Also, this disables CFStream-based transport on Apple platforms. This works around b/133182964, wherein CFStream will occasionally fail to raise a has-bytes-available events, causing Firestore to appear to hang.
2020-04-22 14:03:34 -07:00
Gil 12fb9f61d2 Upgrade gRPC to 1.24.3; upgrade protobuf to 3.9.2 (#4252)
* Upgrade gRPC to 1.24.3

* Upgrade C++ Protobuf to 3.9.2

Disable -Wunreachable-code in protobuf-generated code

* Regenerate C++ protos with protobuf 3.9.2

* Generate objc protos with Protobuf 3.9.2
2019-11-07 15:23:14 -08:00
Gil 3c6721c0fe Get Windows and Linux builds to compile again (#4256)
* Rename IN to IN_ for compatibility with Windows

windows.h defines IN and INOUT macros that indicate the directionality
of parameters in the Windows API.

* Rename DeleteFile to DeleteSingleFile

This avoids a conflict with the Win32 macro, which expands to either
DeleteFileA or DeleteFileW, based on the Unicode mode of the build.

* Avoid using declarations of non-types outside classes

VS2017 doesn't accept these even though clang does.

* Avoid relying on default construction of type traits

This is a C++14 extension that VS2017 does not expose in C++11 mode.

* Add missing dependencies

* Define LevelDbPersistence::AppDataDirectory on Windows.

* Make Container a top-level type

This avoids a GCC error:

error: typedef ‘using value_type = int’ locally defined but not used [-Werror=unused-local-typedefs]

Removing value_type isn't actually possible because it is actually used,
but indirectly via template.
2019-11-07 12:02:10 -08:00
Brian Chen 2c86f3a4d7 Update protos to include IN and ARRAY_CONTAINS_ANY (#3510) 2019-08-06 13:33:16 -07:00
Brian Chen 86b09fa469 Add IN and ARRAY_CONTAINS_ANY (not publicly exposed) (#3492) 2019-08-05 11:47:06 -07:00
Gil 6af931d4e8 Migrate Firestore to the v1 protocol (#2200)
* Use python executable directly

  * python2 is not guaranteed to exist
  * scripts aren't directly executable on Windows

* Add Firestore v1 protos

* Point cmake at Firestore v1 protos

* Regenerate protobuf-related sources

* Make local protos refer to v1 protos

* fixup! Regenerate protobuf-related sources

* Remove v1beta1 protos

* s/v1beta1/v1/g in source.

* s/v1beta1/v1/ in the Xcode project

* Remove stale bug comments.

This was fixed by adding an explicit FieldPath API rather than exposing
escaping to the end user.
2018-12-21 11:28:48 -08:00