| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
| |
This is a pretty close port of `FSTExponentialBackoff`. The changes are pretty minor:
* delay is calculated using <chrono> duration types, not plain numbers, which should be a little more type-safe;
* split a piece of code into a ClampDelay function, because it's reasonably close to std::clamp;
* rephrased the class-level comment to make it clearer that the first attempt always has delay = 0;
* added simple tests (other platforms don't have tests for this).
Also make sure that canceling a DelayedOperation is always valid.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
Also add FindGMock to Find gmock after installation
|
|
|
| |
Rather than decoding the type, and then the contents, decode them both at once.
|
|
|
| |
Were showing up in xcode build (but not cmake build)
|
| |
|
|
|
| |
Added a single, basic test as a motivator.
|
|\ |
|
| |
| |
| |
| |
| | |
* A substream should not be closed if pb_make_string_substream() failed to create it and returned false.
* Fixed a potential wrong error message.
|
| |
| |
| |
| |
| |
| | |
* Add leveldb_transaction* to the CMake build
* Use std::unique_ptr for leveldb::DB pointers
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Add a portable interface to strerror
* Add Status::FromErrno
* Add strerror_test.cc to the Xcode project
* Use glibc feature selection macros instead of return-type overloads
* Fix tensorflow references
|
| |\
| |/
|/| |
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Also "fixed" BadFieldValueTagWithOtherValidTagsPresent test by changing
'false' to 'true'. Details: Depending on the version of nanopb, nanopb
would explicitly encode 'false', which shouldn't be done in proto3. When
it's explicitly encoded, the test worked properly. But when it was
(properly) dropped, the invalid tag is the only field that's actually
encoded, thus violating the assumptions of the test, leading to a test
failure. s/false/true fixes it, as now the boolean_value field is
(properly) encoded regardless of version.
|
| | |
| | |
| | | |
"Unauthenticated" is presumed to mean that token is expired (which might happen if local clock is wrong) and retried, subject to the usual backoff logic.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Make it possible to run style.sh on Linux
Needs clang-format in a nonstandard location, but can be made to work.
* Fix lint.sh on Linux
* Fix multiline comment error
|
| | |
| | |
| | |
| | |
| | | |
PB_LAST_FIELD is required by nanopb, but was missed in the test. Without
this, undefined behaviour results. (Either manifesting itself as fine
(i.e. if there's zeros following) or segfaults.)
|
| |/
|/| |
|
| |
| |
| |
| | |
(#1377)
|
| |
| |
| |
| |
| |
| | |
* Remove extraneous firebase_firestore_util_async_queue target
* Remove unimplemented declaration in string_util.h
|
| | |
|
| |
| |
| |
| |
| | |
This avoids a collision with the libprotobuf generated files.
Also removes the "well-known" cpp protos, relying on libprotobuf to supply these instead.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Don't rely on specialization failure to determine when std::hash is unavailable.
Instead manually declare the conditions under which std::hash should be
defined.
* Fix detection of Objective-C classes in Xcode < 9.2
std::is_base_of<NSObject, NSString>{} is false there so the overloads
defined for Objective-C types weren't getting enabled.
* Add explicit tests for StringFormat using Objective-C objects
* Add explicit tests for HasStdHash
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Normally, this would be unexpected, as only a single entry in the Value
proto *should* be present. However, the proto docs state that parsers
should be able to handle repeated fields. (In the case of repeated
fields, the last one "wins".)
|
| |
| |
| |
| | |
... where neither 'found' nor 'missing' fields set.
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 198063502 Address comment upstream. by zxu <zxu>
- 197942352 Fix style upstream and fix destination depot in copybara. by zxu <zxu>
- 197925542 Fix headers with change from GitHub, see the current diff... by zxu <zxu>
- 197922012 Implement ListenerRegistration::Remove(). by zxu <zxu>
- 197713382 Implement more on listener class and implement ListenerRe... by zxu <zxu>
- 196551381 Implement more on listener class and implement the Docume... by zxu <zxu>
- 196276752 Implement the SnapshotMetadata with inline methods and (n... by zxu <zxu>
- 195841793 Implement the wrapper class for callback (EventListener). by zxu <zxu>
- 194112388 Add Android-Wrapper for DocumentReference's non-callback ... by zxu <zxu>
- 192445183 Add Android-Wrapper for Firestore's remaining methods. by zxu <zxu>
- 190986604 Manually import the public portion of by mcg <mcg>
- 189013767 Add Android-Wrapper for Firestore's method that does not ... by zxu <zxu>
- 188809445 Import of firebase-ios-sdk from Github. by mcg <mcg>
- 187049498 Import of firebase-ios-sdk from Github. by mcg <mcg>
- 184568931 Import of firebase-ios-sdk from Github. by mcg <mcg>
ORIGINAL_AUTHOR=Firebase <firebase-noreply>
PiperOrigin-RevId: 198063502
|
|
|
|
|
|
|
|
| |
* Migrate FSTFail to HARD_FAIL
* FSTCFail -> HARD_FAIL
* FSTCAssert -> HARD_ASSERT
* FSTAssert -> HARD_ASSERT
* Replace FSTAssert with NSAssert in dead Objective-C code
* Remove FSTAssert.h
|
| |
|
|
|
|
|
|
| |
Note that it isn't possible to *serialize* NoDocuments.
Still TODO:
- Error handling
|
|
|
|
|
|
|
| |
* Add direct support for formatting Objective-C objects
* Rewrite log.h
* Convert FSTWarn to LOG_WARN
* Convert FSTLog to LOG_DEBUG
* Remove FSTLogger
|
| |
|
|
|
|
|
|
| |
* Add HARD_ASSERT
* Use HARD_ASSERT
* Remove FIREBASE_ASSERT
* Remove StringPrintf
|
|
|
| |
Roughly s/google::firebase::v1beta1/v1beta1/g
|
|
|
|
|
|
| |
* Move GoogleTest.podspec out of the Tests tree
* Rename GoogleTests to CoreTests
* Move CoreTests to the top-level
* Move FSTGoogleTestTests.mm into core/test
|
|
|
|
|
|
|
| |
* [De]serialize non-empty Document instances
Still TODO:
- NoDocument
- ErrorHandling
|
|
|
|
|
|
| |
* fix "target of using declaration conflicts with declaration already in scope"
* fix "call to implicitly-deleted copy constructor of *unique_ptr*"
|
|
|
|
| |
* Add StringFormat
* Use StringFormat
|
|
|
|
|
|
| |
* fix lint to run copybara
* address changes
|
|
|
|
| |
Mostly to make existing methods a bit more general to support followup
PR (which will allow encoding/decoding documents with contents.)
|
|
|
|
|
|
|
|
|
| |
* [De]serialize empty Document instances
Still TODO:
- non-empty
- NoDocument
- ErrorHandling
|
|
|
|
|
|
|
|
|
|
|
| |
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.)
|
|
|
|
|
| |
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.
|
| |
|
| |
|