| Commit message (Collapse) | Author | Age |
... | |
| |\
| | |
| | | |
Eliminate duplicate symbol in CocoaPods -all_load build (#1223)
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Was using google_firestore_v1beta1_MapValue_FieldsEntry_key_tag to tag
the key/value pair. (But that tag should be used for the *key* of the
key/value pair, not the pair itself.) Switched to using
google_firestore_v1beta1_MapValue_fields_tag.
This previously worked anyways by coincidence. These two values happen
to be the same. (But it caused me all sorts of confusion as I adapted
this for Document contents.)
|
| |/ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
* 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
|
| |
| |
| |
| |
| | |
FSTDispatchQueue now doesn't contain any logic of its own and instead
just passes through all method calls to AsyncQueue (backed by an
ExecutorLibdispatch).
|
| |
| |
| |
| |
| | |
Moved Tag, Reader, Writer from serializer.cc's anon namespace to firebase::firestore::nanopb
This should be bug-for-bug compatible. No changes were made to the moved methods.
|
| |
| |
| |
| |
| |
| |
| | |
FSTDispatchQueue enforces serial execution, which is inappropriate for
user queue, because a user may configure usage of a concurrent queue in
settings, breaking FSTDispatchQueue invariants. Instead, use C++
ExecutorLibdispatch directly.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* 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
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Fix order of project elements
* Add immutable container tests to the Firestore project
* Fix style problems in TransformOperations
* Method names should have an initial upper case character (except
getters/setters)
* Pointers bind to the type not the name in C++
* Fix unsigned/signed comparison warning
* Make transform_operations.h Objective-C++ only
It turns out that you can't conditionally define virtual methods. This
causes multiple versions of the vtable to be emitted and when the linker
resolves all the vtable definitions for a class it picks one arbitrarily
causing failures for callers that expect some of the conditional methods
to be present.
* Add precondition_test and field_mask_test to the project
* Add field_transform_test and transform_operations_test to the project
* Clean up missing newline/excess comments
* Use braced initialization to avoid linter false positive on std::transform
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
This should prevent weird bugs due to system time readjustments. Because
operations are scheduled relative to now, the fact that the resulting
timepoint isn't in Unix epoch shouldn't matter.
|
| |
| |
| |
| |
| |
| |
| |
| | |
dispatch_queue_t is defined differently in libdispatch depending on
whether the library header is being include from Objective-C (or
Objective-C++) code, or else from C or C++ code. Make sure that all
source files in Firestore that include executor_libdispatch.h are
compiled in the same mode (Objective-C++) to avoid linker errors.
|
| | |
|
|\| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Bump sequence number on resume token refresh
* Style
* Fix comment formatting
* Add FSTReferenceDelegate definition and documentation
* Add methods to return nil for delegates, wire up inMemoryPins
* Add hook for removing a reference
* Start work on reference delegates
* Fix up tests to support adding documents at a sequence number
* Implement removing references
* Remove from target when dropped from local view
* Fix warning
* Add hooks for removal from mutation queue
* Add hooks for limbo document updates
* Style
* Drop commented-out code
* Fixup after merging master
* Drop sequence number plumbing
* Style
* Drop errant semicolon
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
AsyncQueue is a queue that executes given operations asynchronously,
enforcing that only a single operation is executing at any given time,
and that in-progress operations don't spawn more operations. The actual
execution is delegated to a platform-specific executor. Executor is an
interface for a FIFO queue that executes given operations serially. Two
implementations of Executor, one using libdispatch and the other using
C++11 standard library, are provided.
AsyncQueue is not used anywhere in the code base at this point.
|
| |
| |
| |
| |
| | |
Remove BasePath.Hash() Objective-C compatibility method
Make DocumentKey's hasher use BasePath's segment-based hash code.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Define a Comparator for DocumentKey
* Automated migration from FSTDocumentKeySet to DocumentKeySet
* Manual fixups for DocumentKeySet
* Delete FSTDocumentKeySet
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Remove spurious dependencies on other project targets in the integration tests
* Integration tests don't depend on OCMock
... and shouldn't
* Integration tests don't directly depend upon leveldb either
* Flatten Firestore example Podfile
Make the targets independent in Firestore/Example/Podfile and add a
workaround to deduplicate dependencies.
* Project file output from running pod update
|
| |
| |
| |
| |
| |
| | |
method definition for 'filterUpdatesUsingExistingKeys:' not found
There are no abstract methods in Objective-C so the base class needs an
implementation.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
* Bump sequence number on resume token refresh
* Style
* Fix comment formatting
|
| |
| |
| |
| |
| | |
time-of-day. (#1213)
micros could underflow or overflow if the test was run at the wrong time... Replaced with hardcoded timestamps as I don't think making it time-dependent gains us interesting additional coverage.
|
| |
| |
| |
| |
| |
| |
| | |
* Add SortedSet
* Add document_key_set.h
* Add equality to SortedSet
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
This is more interesting than the serializing case, as we should expect
to see occasional corruption of our input byte vector.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* remove conversions in `Local` and `Remote`
* replace `FSTSnapshotVersion` in `Model`
* replace `FSTSnapshotVersion` in the rest
* let test check equal with C++ equal
* fix newly added code
* address changes
|
| |
| |
| |
| |
| | |
This is good enough to make it possible for the new C++ code to
interoperate with existing Objective-C code where `-hash` is required if
you override `-isEqual:`.
|
| |
| |
| |
| |
| |
| | |
* Port the feedback from the port
* Fix comment grammar
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Filter out document updates from target association changes
* Move remote-event-modifying methods onto remote event
* Style
* keep limbo docs in remote event
* Implement identification of limbo document updates
* Refactor a bit to handle removes as well
* Drop newline
* Handle synthesized limbo deletes
* Response to feedback
* Appease the style gods
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* no-brainer replace FSTSnapshotVersion by SnapshotVersion in `Remote`
* delete `FSTSnapshotVersion` in `Remote`
* fix test
* partially revert RemoteEvent
* Revert "partially revert RemoteEvent"
This reverts commit 67e35bb6c11eaf79608df8d02a60788a40331d0f.
* fix a bug
* fix integration
* address changes
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* no-brainer replace `FSTSnapshotVersion` with `SnapshotVersion`
* refresh code
* fix LocalStore
* fix LocalStore (partial revert 78e6c38)
* address changes
|
|/ |
|
|
|
|
|
|
| |
* Add a simple range adapter.
* Add SortedMap::keys
* Add SortedMap::keys_from
* Add SortedMap::keys_in
|
| |
|
|
|
|
| |
* Add SortedMap::min
* Add SortedMap::erase
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* update FieldValue for Mutation implementation
* address changes
* address changes
* address change
|