| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
* implement `TargetIdGenerator`
* address changes
|
|
|
|
| |
* refactoring string_util
* port string_util to iOS
|
|
|
|
|
|
|
|
|
|
|
|
| |
* implement FieldValue for null and boolean.
* Implement number and string FieldValue.
* Implement object FieldValue.
* implement timestamp FieldValue.
* Implement number and string FieldValue.
* implement public type `Blob` and `GeoPoint`
* implement Blob FieldValue
* Implement GeoPoint FieldValue
* refactoring `Blob`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reimplements our comparison functions as C++ Comparators and then provides compatibility shims for interoperating with existing Objective-C usage.
A few specialized comparators aren't suitable for porting but only have a single usage (e.g. CompareBytes for comparing NSData * instances). In these cases I've moved them into the caller.
* Use int32_t for typeof(ID) in FSTDocumentReference
* Migrate callers of FSTComparison.h to Objective-C++
* Port comparison to C++
* Migrate usages of FSTComparison.h to C++ equivalents
* Remove FSTComparison
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add CMake platform detection logic for SecureRandom
Now only builds secure_random_arc4random.cc if available.
Remove firebase/firestore/base/port.h. Nothing else was in that
directory.
* Add a SecureRandom implementation that uses OpenSSL
This is usable on Linux, Windows, and Android
* Properly check return from RAND_bytes
|
|
|
|
|
|
|
| |
Fixes these cpplint warnings:
Firestore/core/src/firebase/firestore/model/field_value.cc:162: Semicolon defining empty statement. Use {} instead. [whitespace/semicolon] [5]
Firestore/core/src/firebase/firestore/model/field_value.cc:170: Semicolon defining empty statement. Use {} instead. [whitespace/semicolon] [5]
Firestore/core/src/firebase/firestore/model/field_value.cc:126: Add #include <utility> for swap [build/include_what_you_use] [4]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Rewrite cc_test to take named arguments
Cut down on build file verbosity by having cc_test take SOURCES and
DEPENDS. The separate invocation of target_link_libraries is no longer
necessary.
* Add a cc_library rule to parallel cc_test
This cuts down on build file verbosity.
* Automatically add OBJC_FLAGS to cc_libraries if applicable
* Exclude platform-specific libraries from 'all'
This is makes it possible to declare this kind of library
unconditionally. Usage within a test or as a dependency will actually
trigger building.
* Restore secure_random_test.cc; clean-up comments
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* implement FieldValue for null and boolean.
* refactoring to use union type instead of poly
* refactor using union design intead of poly
* refactoring to use anonymous union and fix styles
* small fix
* add field_value_test to the project
* fix warning of cmake and fix style
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Misc style.sh fixes
* Allow test-only to use a revision; to check your changes since
master:
./scripts/style.sh test-only master
* Avoid diffing deleted files
* 80 columns
* Fix C++ lint errors
|
|
|
|
|
|
| |
* Enable warnings when building with GCC or clang
* Fix warnings
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Clean up quoting and other minor issues
* Reorganize CMake build output
Make it clearer which parts of the output pertain to external projects.
* Use a consistent ordering of ExternalProject arguments
* Prevent the top-level build from running in parallel
This prevents spurious failures when running make -j.
* Actually parse arguments in the xcodebuild function
* Use ExternalProject features when available
* submodule limits from CMake 3.0
* shallow clones from CMake 3.6
* git progress output from CMake 3.8
* Only build the parts of leveldb we need
Skip building the tools and other libraries
* Avoid installing ExternalProjects
Consume build output directly so that we can build just the targets we
need. Installing causes all targets to be built.
This doesn't matter as much for these targets but the gRPC build
includes a ton of stuff we don't need so it's worth adopting this as a
general strategy.
* Define an external build for grpc
* Test that grpc can link successfully.
* Add a FindGRPC CMake module
* Actually comment ExternalProjext_GitSource
|
|
|
|
|
|
|
|
|
| |
* implement C++ assert (stdio, apple)
* Update tests for firebase_firestore_util renames
* renaming `assert.h` to `firebase_assert.h`
* refactoring to a common `WrapNSStringNoCopy()`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Port StringPrintf from //base.
Prefer this to approaches based on variadic templates. While the variadic
template mechanisms are strictly safer, they result in binary bloat we
can't afford.
This is essentially the same StringPrintf previously open sourced as a
part of protobuf, though updated for C++11 which saves a copy and a
temporary buffer on the heap.
* Add abseil as a subdirectory of Firestore
This saves having to redefine all the libraries that abseil defines as
imported libraries.
* Rename firebase_firesture_util_log_* targets
Cut the log out of the name to reflect that these will get more
components besides just logging.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Rename FIREBASE_BINARY_DIR to FIREBASE_INSTALL_DIR
Make this consistent with the outer superbuild and also make the
association with CMAKE_INSTALL_PREFIX more obvious.
* Build and test log_stdio separate from the rest of util
This is in preparation for adding a test for log_apple
* Build and test log_apple under CMake
Also add notes about how FIRLogger's debug mode can break this test
* Refactor log_apple to cut down duplicate switch statements
There's also a slight reduction in final binary size.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* implement logger, apple impl and other impl, with test.
* some minor fixes
* re-organize cmake build rules;
* fix bugs in log_apple.mm;
* style fix by style.sh
* Complete removal of LogAssert
|
| |
|
|
* Move sources into firebase::firestore and internal namespaces
Combine support and core/util packages; this distinction wasn't really
paying its freight.
|