aboutsummaryrefslogtreecommitdiffhomepage
path: root/Firestore/Source/Remote
Commit message (Collapse)AuthorAge
...
* replacing Auth/FSTUser by C++ auth implementation (#804)Gravatar zxu2018-02-15
| | | | | | * replacing Auth/FSTUser by C++ auth implementation * address changes
* Actually ignore events on inactive streams, rather than just logging that ↵Gravatar Greg Soltis2018-02-13
| | | | we're going to. (#790)
* Implement Firestore DatabaseInfo and port both Database{Id,Info} C++ to the ↵Gravatar zxu2018-02-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | iOS code (#738) * implement Firestore DatabaseInfo in C++ * temporary stash changes; blocking on the massive renaming of .m to .mm * add database_info_test to project * finish port DatabaseId and fix style, modular fixing DatabaseInfo * port DatabaseInfo * remove FSTDatabase{ID,Info} and their tests from project * fix unit test * use namespace alias * use namespace alias, leftover * address more changes * refactoring to use raw pointer instead of value for property * address changes * remove self-> * fix style * remove the name suffix Alloc * fix a bug
* Move all Firestore Objective-C to Objective-C++ (#734)Gravatar Gil2018-01-31
| | | | | | | | | | | | | | * Move all Firestore files to Objective-C++ * Update project file references * Don't use module imports from Objective-C++ * Use extern "C" for C-accessible globals * Work around more stringent type checking in Objective-C++ * NSMutableDictionary ivars aren't implicitly casted to NSDictionary * FSTMaybeDocument callback can't be passed a function that accepts FSTDocument * NSComparisonResult can't be multiplied by -1 without casting * Add a #include <inttypes.h> where needed * Avoid using C++ keywords as variables * Remove #if __cplusplus guards
* Listen sequence numbers (#675)Gravatar Greg Soltis2018-01-17
| | | | | | | | | | | | * Generate and save sequence numbers for listens * Add documentation * Fix include path * Fix unavailable comment * Review feedback
* Remove over-aggressive closeWithFinalState: delegate assert. (#656)Gravatar Michael Lehenbauer2018-01-11
| | | | | | | | | Fixes #596. closeWithFinalState: asserted delegate != nil, but that is not true if when startWithdelegate: was called we entered backoff (performBackoffWithDelegate:) and so self.delegate did not get assigned yet. We could rework the code to make the assertion hold, but per offline discussion this assert doesn't represent an invariant that we care about maintaining and so I'm just removing it.
* Log pending writes when we disable the network (#604)Gravatar Greg Soltis2018-01-02
| | | | | | | | * Log pending writes when we disable the network * Fix formatting * Formatting
* Rename all the onlineStateChanged methods to applyChangedOnlineState. (#574)Gravatar Michael Lehenbauer2017-12-19
|
* Firestore `isEqual()` on Public Types (#569)Gravatar zxu2017-12-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add bone code for new isEqual and unit test for old isEqual * add bone code for `FIRCollectionReference`, `FIRDocumentSnapshot`, `FIRFieldValue`, `FIRQuerySnapshot`, `FIRSnapshotMetadata`; * change inconsistenciness of `FIRFieldPath.isEqual` implementation; * add unit test (and file) for `FIRDocumentReferenceTest.m`, `FIRFieldPathTest.m`, `FIRQueryTests.testEquals`; `FIRGeoPoint` already has test and Blob is internal type. * Implement isEqual for FIRCollectionReference adding the working code and unit test. * implement isEqual for FIRSnapshotMetadata * Implement isEqual for FIRDocumentSnapshot * Implement isEqual for FIRQuerySnapshot * (un)implement `isEqual` for `FIRFieldValue` Since `FIRFieldValue` both types are singleton, we do not need override `isEqual`. Add test to test the default `NSObject` `isEqual` works just fine. * fix style with `scripts/style.sh` * Implement hash for those with overridden isEqual without hash yet. * refactor to use test helper functions -- FSTTestFirestore, FSTTestPath, FSTTestDocKey * refactor using test helper `FSTTestDocSnapshot`, `FSTTestFieldPath`, `FSTTestQuery`, `FSTTestDoc` * refactoring to use test helper method `FSTTestQuerySnapshot`, * remove unneccessary nil-check, check isKindOfClass instead of isEqual * refactoring: adding `FSTAPIHelpers.{h,m}`, `FSTTest{Collection,Document}Ref`, better naming and style fix * a file forgot in last commit * mainly clean up import and some minor refactoring * fix style via style.sh * minor style fix * add pragma ignored -Wnonnull
* Expose network management (#566)Gravatar Greg Soltis2017-12-18
| | | | | | | | | | | | | | | | | | * Expose network management in public API * Clean up a few more references to the internal access of network management * Move test * Update comments * Swap _Nullable for nullable * Fix comment * Add tests, including swift * Styling
* Test cleanup: Adds a helper for waiting for FSTVoidErrorBlock callbacks.Gravatar Michael Lehenbauer2017-12-18
| | | | | | | * Add helper for waiting for FSTVoidErrorBlock callbacks. * Remove errorEventHandler from FSTEventAccumulator.h too. * Add synchronous enableNetwork / disableNetwork helpers. * Workaround for batch writes test flakiness.
* b/68276665: Raise isFromCache=true events when offline (#567)Gravatar Michael Lehenbauer2017-12-15
| | | | | | | | | | | | | | | | * Plumbs FSTOnlineState changes through to views. * View sets this.current to false on FSTOnlineStateFailed, triggering isFromCache=true events. It will automatically be returned to true once the listen is reestablished and we get a new CURRENT message. * Updated tests (and added one new one) to verify behavior. * Unifies setOnlineStateToUnknown, setOnlineStateToHealthy, and updateAndBroadcastOnlineState into a single updateOnlineState method. * Split disableNetwork into (public) disableNetwork and (private) disableNetworkWithTargetOnlineState methods.. * Some miscellaneous comment cleanup. * Add missing comment per CR feedback.
* Merge pull request #514 from firebase/zxu/logofflineGravatar zxu2017-12-07
|\ | | | | Warn user if we raise with empty while not online
| * refactoring the condition when to warn offlineGravatar zxu1232017-12-06
| |
| * implement log warning for offline statusGravatar zxu1232017-12-05
| | | | | | | | | | * Move the logic from FSTEventManager to FSTRemoteStore. Pros: per query vs per stream. * Since state can go into unknown normally (e.g. no listener is registered and nobody care the status), we only warns when status is actually offline to avoid confusion.
* | Standardize cross module imports with angle bracket syntax (#526)Gravatar Paul Beusterien2017-12-04
|/ | | | Qualify all cross-pod imports of FirebaseCore headers
* Merge pull request #522 from firebase/mrschmidt-crashGravatar Sebastian Schmidt2017-12-01
|\ | | | | Ignoring stream messages for closed streams
| * Ignoring stream messages for closed streamsGravatar Sebastian Schmidt2017-12-01
| |
* | Merge pull request #510 from firebase/mrschmidt-crashGravatar Sebastian Schmidt2017-12-01
|\| | | | | Fixing race in FSTWriteStream
| * Checking for stream close in handleStreamCloseGravatar Sebastian Schmidt2017-11-30
| |
* | Move sources into firebase::firestore and internal namespaces (#494)Gravatar Gil2017-11-30
| | | | | | | | | | | | | | * Move sources into firebase::firestore and internal namespaces Combine support and core/util packages; this distinction wasn't really paying its freight.
| * Fixing testsGravatar Sebastian Schmidt2017-11-29
| |
| * Merge branch 'master' into mrschmidt-crashGravatar Sebastian Schmidt2017-11-29
| |\ | |/ |/|
| * Fixing race in FSTWriteStreamGravatar Sebastian Schmidt2017-11-29
| |
* | Change FSTExponentialBackoff to use firestore::SecureRandom directly (#492)Gravatar Gil2017-11-27
| | | | | | | | | | * Migrate FSTExponentialBackoff to Objective-C++ * Change FSTExponentialBackoff to use firestore::SecureRandom directly
* | Use fully qualified imports in Firestore (#467)Gravatar Gil2017-11-16
|/ | | | | | | | | This simplifies the import process back into google3 and allows us to add additional directories to the project without needing to update the project files for each directory we add. This shows up most clearly in the change to Firestore/Example/Firestore.xcodeproj/project.pbxproj: this no longer needs to list essentially every directory in the project as a header search path. * Clang-format configuration for C++ files * Add support C++-only sources to the podspec * Podspec support for fully qualified imports * xcodeproj changes for fully-qualified imports * Use fully-qualified imports in Firestore sources
* Sending an empty write request before tearing down the stream (#438)Gravatar Sebastian Schmidt2017-11-08
|
* Moving the Stream class to their own file (#418)Gravatar Sebastian Schmidt2017-10-31
|
* Closing the write and watch stream after 60s of idleness (#388)Gravatar Sebastian Schmidt2017-10-30
|
* b/67423356: Exponential backoff on writes should back off until the first ↵Gravatar Michael Lehenbauer2017-10-26
| | | | | successful write (#408) Port the logic from Android / web to delay backoff reset until the first successful write on the stream.
* Moving the StreamTest to integration tests (#391)Gravatar Sebastian Schmidt2017-10-24
|
* Port of fix for b/67042460 (retry more often before considering client ↵Gravatar Michael Lehenbauer2017-10-23
| | | | | | offline) (#403) This ensures FSTRemoteStore always tries to connect at least twice before surfacing an FSTOnlineStateFailed event to external code (which may trigger gets to fail, cached data to be surfaced, etc.).
* Adding goOnline/goOffline to the RemoteStore (#347)Gravatar Sebastian Schmidt2017-10-11
|
* Fix warnings exposed by Xcode 9.1 in Firestore source (#354)Gravatar Paul Beusterien2017-10-09
|
* Release 4.3.0 (#327)Gravatar Gil2017-10-03
Initial release of Firestore at 0.8.0 Bump FirebaseCommunity to 0.1.3