aboutsummaryrefslogtreecommitdiffhomepage
path: root/Firestore
Commit message (Collapse)AuthorAge
* Port FSTDocumentKeySet to C++ DocumentKeySet (#1229)Gravatar Gil2018-05-05
| | | | | | | | | * Define a Comparator for DocumentKey * Automated migration from FSTDocumentKeySet to DocumentKeySet * Manual fixups for DocumentKeySet * Delete FSTDocumentKeySet
* [De]serialize DocumentKeys via the remote Serializer (#1212)Gravatar rsgowman2018-05-04
|
* Eliminate duplicate symbol in CocoaPods -all_load build (#1223)Gravatar Paul Beusterien2018-05-03
|
* Prepare Firestore for use as a static library (#1210)Gravatar Gil2018-05-03
| | | | | | | | | | | | | | | | * 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
* Fix warning on FSTTargetMapping mentioned in #1210 (#1218)Gravatar Gil2018-05-03
| | | | | | method definition for 'filterUpdatesUsingExistingKeys:' not found There are no abstract methods in Objective-C so the base class needs an implementation.
* Fix Firestore style issue. (#1220)Gravatar Ryan Wilson2018-05-03
|
* Bump sequence numbers when receiving a new resume token (#1214)Gravatar Greg Soltis2018-05-03
| | | | | | | | * Bump sequence number on resume token refresh * Style * Fix comment formatting
* b/78539022: Fix test at risk of range violation errors depending on ↵Gravatar Michael Lehenbauer2018-05-02
| | | | | 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 Immutable SortedSet in C++ (#1206)Gravatar Gil2018-05-02
| | | | | | | * Add SortedSet * Add document_key_set.h * Add equality to SortedSet
* Minor test naming fixup (#1209)Gravatar rsgowman2018-05-02
|
* Adding mergeFields support (#1141)Gravatar Sebastian Schmidt2018-05-02
|
* Add error handler for serializer (for deserializing cases) (#1181)Gravatar rsgowman2018-05-01
| | | | | This is more interesting than the serializing case, as we should expect to see occasional corruption of our input byte vector.
* Port `SnapshotVersion` for the rest Firestore modulo (#1185)Gravatar zxu2018-05-01
| | | | | | | | | | | | | | * 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
* Define a general hashing utility in C++ (#1195)Gravatar Gil2018-05-01
| | | | | 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 Java port (#1199)Gravatar Greg Soltis2018-04-30
| | | | | | * Port the feedback from the port * Fix comment grammar
* Identify limbo-only document updates (#1167)Gravatar Greg Soltis2018-04-25
| | | | | | | | | | | | | | | | | | | | | | * 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
* Port `SnapshotVersion` for `Remote` (#1174)Gravatar zxu2018-04-25
| | | | | | | | | | | | | | | | | | | | * 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
* Port `SnapshotVersion` for `Local` (#1182)Gravatar zxu2018-04-25
| | | | | | | | | | | | * no-brainer replace `FSTSnapshotVersion` with `SnapshotVersion` * refresh code * fix LocalStore * fix LocalStore (partial revert 78e6c38) * address changes
* Add key-only projections to immutable C++ maps (#1166)Gravatar Gil2018-04-24
| | | | | | * Add a simple range adapter. * Add SortedMap::keys * Add SortedMap::keys_from * Add SortedMap::keys_in
* fix a bug caught by asan failure (#1173)Gravatar zxu2018-04-24
|
* Implement erase in C++ immutable maps (#1158)Gravatar Gil2018-04-24
| | | | * Add SortedMap::min * Add SortedMap::erase
* Adjust serializer test to verify via libprotobuf. (#1039)Gravatar rsgowman2018-04-24
| | | | | | 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
* Array Contains Queries (not added to public headers yet). (#1138)Gravatar Michael Lehenbauer2018-04-23
|
* Update `FieldValue` For Porting `Mutation`s to C++ (#1144)Gravatar zxu2018-04-23
| | | | | | | | | | * update FieldValue for Mutation implementation * address changes * address changes * address change
* Move array transforms to internal header pending backend support. (#1139)Gravatar Michael Lehenbauer2018-04-20
|
* Filter out document updates from target association changes (#1122)Gravatar Greg Soltis2018-04-20
| | | | | | | | * Filter out document updates from target association changes * Move remote-event-modifying methods onto remote event * Style
* Implement find-related methods on C++ immutable maps (#1145)Gravatar Gil2018-04-20
| | | | | | * Standardize method ordering across sorted maps * Add SortedMap::find * Add SortedMap::find_index * Add SortedMap::contains
* Rename iOS-specific targets with iOS-specific names (#1150)Gravatar Gil2018-04-20
| | | | | | | | | | | * 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
* Fix build breakages under linux (gcc) (#1154)Gravatar rsgowman2018-04-20
| | | | * fix multiline comments by subst /* ... */ for // * fix unreachable case in a switch statement
* Prep Firestore Podfile for multiple platforms (#1148)Gravatar Gil2018-04-19
|
* Update project for CocoaPods 1.5.0. (#1147)Gravatar Gil2018-04-19
|
* Clean up warnings in Firestore (#1146)Gravatar Gil2018-04-19
|
* Implement iterators for our immutable maps (#1132)Gravatar Gil2018-04-19
| | | | | | | | | | * Add a minimal LlrbNodeIterator * Remove fixed_size type parameter from FixedArray The parameter wasn't that useful and caused problems in trying to define dependent iterator types. * Add begin()/end() to SortedMap.
* fix integration test (#1134)Gravatar zxu2018-04-18
|
* Add GetOptions for controlling offline get behaviour (#655)Gravatar rsgowman2018-04-18
| | | | Add option to allow the user to control where DocumentReference.getDocument() and CollectionReference.getDocuments() fetches from. By default, it fetches from the server (if possible) and falls back to the local cache. It's now possible to alternatively fetch from the local cache only, or to fetch from the server only (though in the server only case, latency compensation is still enabled).
* Integration tests, changelog, and minor fixes for array transforms. (#1108)Gravatar Michael Lehenbauer2018-04-17
|
* Serialize array transform mutations. (#1107)Gravatar Michael Lehenbauer2018-04-17
| | | | * Serialize array transform mutations. * Improve ArrayTransform constructor to avoid extra copying.
* Implement TreeSortedMap::insert (#1081)Gravatar Gil2018-04-17
| | | | | | | | | * Make LlrbNode Rep more explicit, share empty node * SortedMap::insert converts implementations * Implement LlrbNode::insert * Remove TestPolicy<SortedMap>
* Merge pull request #1112 from firebase/wilhuff/abseil-mergeGravatar Gil2018-04-17
|\ | | | | Merge updated abseil to master
* | Implement local and server application of arrayUnion and arrayRemove ↵Gravatar Michael Lehenbauer2018-04-16
| | | | | | | | transforms. (#1101)
* | Fix the build and travis change detection (#1117)Gravatar Gil2018-04-16
| | | | | | | | | | | | * Fix typo in main.swift * Fix change detection for Firestore in Travis
* | Replace the `SnapshotOptions` object with the behavior enum. (#1109)Gravatar Gil2018-04-16
| | | | | | | | | | | | | | | | | | Instead of calling `get(field, SnapshotOptions.serverTimestampBehavior(.estimate))` call `get(field, serverTimestampBehavior: .estimate)`
* | Rewrite some LocalStore tests (#1114)Gravatar Greg Soltis2018-04-16
| | | | | | | | | | | | | | | | * Pull localstore tests from other branch * Fix up the couple of tests that expected the assertion * Style
* | Fix iteration past end in LevelDBTransaction::Iterator (#1105)Gravatar Gil2018-04-16
| | | | | | | | | | | | | | | | | | | | | | Change Next() to avoid advancing past the end of either iterator by only advancing if !advanced and if the iterator is still valid. If Next() is called after the last entry is deleted, SyncToTransaction() returns false indicating it hasn't advanced but at that point is_valid_ is false. Previously Next() would then attempt to advance one of the underlying iterators and if it was the mutations_iter_ would advance past the end, which would cause the next UpdateCurrent() to dereference random memory.
* | Replace `QueryListenOptions` with simple booleans (#1106)Gravatar Gil2018-04-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Replace `QueryListenOptions` with simple booleans Instead of calling addSnapshotListener( options:QueryListenOptions.includeQueryMetadataChanges() .includeDocumentMetadataChanges()) call addSnapshotListener(includeMetadataChanges:true) Also change `QuerySnapshot.documentChanges()` into a method which optionally takes `includeMetadataChanges:true`. By default even when listening to a query with `inlcudeMetadataChanges:true` metadata-only document changes are suppressed because they're confusing. * Revert QuerySnapshot.documentChanges back to a property Add usage.
| * Make abseil-cpp buildable on masterGravatar Marek Gilbert2018-04-15
| |
| * Merge branch 'abseil-update' into abseil-mergeGravatar Marek Gilbert2018-04-15
|/|
| * Update abseil-cpp to a new upstreamGravatar Marek Gilbert2018-04-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Actually update to bf7fc9986e20f664958fc227547fd8d2fdcf863e Change #754 didn't completely do this. This makes the rest of the sources match optional, which was imported at this change in #1083. Also add: absl/types/optional_test.cc absl/types/CMakeLists.txt absl/utility/CMakeLists.txt
* | Replace the `SetOptions` object with a simple boolean. (#1098)Gravatar Gil2018-04-15
| | | | | | | | | | | | | | | | | | Instead of calling `setData(["a": "b"], options: SetOptions.merge())` call `setData(["a": "b"], merge: true)`
* | Replace `DocumentListenOptions` with a simple boolean. (#1099)Gravatar Gil2018-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Replace `DocumentListenOptions` with a simple boolean. Instead of calling `addSnapshotListener(options: DocumentListenOptions.includeMetadataChanges(true))` call `addSnapshotListener(includeMetadataChanges:true)` * Style