aboutsummaryrefslogtreecommitdiffhomepage
path: root/Firestore/Example
Commit message (Collapse)AuthorAge
...
* | Firestore C++: compile ExecutorLibdispatch in Objective-C++ mode (#1237)Gravatar Konstantin Varlamov2018-05-08
| | | | | | | | | | | | | | | | 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.
* | Backport array contains / transform improvements from Web. (#1242)Gravatar Michael Lehenbauer2018-05-08
| |
* | mergeGravatar Paul Beusterien2018-05-08
|\|
* | C++ migration: add AsyncQueue, the C++ version of FSTDispatchQueue (#1176)Gravatar Konstantin Varlamov2018-05-07
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Migrate FSTDocumentVersionDictionary to C++ DocumentVersionMap (#1231)Gravatar Gil2018-05-05
| |
* | 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
| * Disable pre-release repos (#1228)Gravatar Paul Beusterien2018-05-04
| |
* | 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
* | 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.
* | Adding mergeFields support (#1141)Gravatar Sebastian Schmidt2018-05-02
| |
* | 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
| * Firestore Podfile 5.0.0 updateGravatar Paul Beusterien2018-04-25
|/
* Array Contains Queries (not added to public headers yet). (#1138)Gravatar Michael Lehenbauer2018-04-23
|
* 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
* 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
* 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
|
* 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 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
* 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.
* 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
* Merge pull request #1102 from firebase/release-4.13.0Gravatar Ryan Wilson2018-04-13
|\ | | | | Release 4.13.0
* | Array Transforms public API and parsingGravatar Michael Lehenbauer2018-04-13
| | | | | | | | | | This includes the new FIRFieldValue sentinels, the FSTUserDataConverter code to parse them into internal ArrayTransform operations for use in an FSTTransformMutation, and some sanity testing in FSTMutationTests. I still need to implement FSTTransformMutation support for local application and serialization (and then integration tests).
| * Rename version 4.12.1 to 4.13 (#1092)Gravatar Paul Beusterien2018-04-13
| |
* | Port `Precondition` to C++ (#1040)Gravatar zxu2018-04-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * port FieldMask to C++ * address changes * address changes * fix test * address change * Port transform operations (FSTTransformOperation, FSTServerTimestampTransform) to C++ * address changes * address changes * address changes * implement `FieldTransform` in C++ * port `FieldTransform` * make `fieldTransforms` shared inside `context` * Implement Precondition in C++ w/o test yet * add unit test for `Precondition` * port `Precondition` * address changes * address changes * fix bugs for integration test * address changes * fix lint * address changes * address changes
* | Small cleanup to UserDataConverter / FieldValue sentinel code to make adding ↵Gravatar Michael Lehenbauer2018-04-12
| | | | | | | | | | more FieldValue sentinels easier. (#1077) Port of https://github.com/firebase/firebase-js-sdk/commit/b14678002bf6e8cc9ebd7561efbafe29315ceb8e and https://github.com/firebase/firebase-js-sdk/commit/b14678002bf6e8cc9ebd7561efbafe29315ceb8e.
| * Update component versions for 4.12.1Gravatar Paul Beusterien2018-04-11
| |
* | Merge pull request #1067 from firebase/release-4.12.0Gravatar Paul Beusterien2018-04-10
|\| | | | | Release 4.12.0
* | Port FieldTransform to C++ (#1033)Gravatar zxu2018-04-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * port FieldMask to C++ * address changes * address changes * fix test * address change * Port transform operations (FSTTransformOperation, FSTServerTimestampTransform) to C++ * address changes * address changes * address changes * implement `FieldTransform` in C++ * port `FieldTransform` * make `fieldTransforms` shared inside `context` * address changes * fix lint * address changes
* | Add lint checking for Objective-C++ sources (#1048)Gravatar Gil2018-04-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lint.sh now lints Objective-C++ too * cpplint checks system-style includes that should be user-style This prevents it from recognizing project sources as if they were C system headers and then complaining that they're in the wrong place. * cpplint checks #imports and #includes * cpplint checks that C++ system headers aren't #imported * cpplint checks for C system headers that could be C++ system headers * cpplint checks that Objective-C sources include their headers
* | Port transform operations to C++ (#1020)Gravatar zxu2018-04-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * port FieldMask to C++ * address changes * address changes * fix test * address change * Port transform operations (FSTTransformOperation, FSTServerTimestampTransform) to C++ * address changes * address changes * address changes * address change
* | port FieldMask to C++ (#998)Gravatar zxu2018-04-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * port FieldMask to C++ * address changes * address changes * fix test * address change * fix lint * address changes * Revert "address changes" This reverts commit c75bb42851b785ab0838bb23679f87dfad9df4bb.
| * Update component versions for 4.12.0 (#1024)Gravatar Ryan Wilson2018-04-04
|/
* Drop FSTRemoteDocumentChangeBuffer (#1013)Gravatar Greg Soltis2018-04-02
|
* Add a flag to control whether DocumentSnapshots return Dates or Timestamps ↵Gravatar Konstantin Varlamov2018-03-30
| | | | | | | | for timestamp fields (#831) * add a new property `timestampsInSnapshotsEnabled` to `FirestoreSettings`, `false` by default; * add a verbose warning message urging users to opt into the new behavior; * set `timestampsInSnapshotsEnabled` to true in the integration tests to reduce the verbose console spam during the test run and make sure the flag won't break anything once it's flipped.