aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Drop FSTWriteGroup (#986)Gravatar Greg Soltis2018-03-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Drop write group from remote document change buffer * Unwind some group dependendencies in local store * Write group dropped from local store * Drop write group from mutation queue tests * Drop write group usage from query cache tests * Drop write groups from remote document cache tests * Drop write groups from remote document change buffer tests * Drop write groups and the write group tracker * Style * Put the action in transaction * Merge master, fix test * Fix some compiler warnings but mostly trigger travis * Responses to feedback
* Custom claims client api (#1004)Gravatar Zsika Phillip2018-03-29
| | | | | | | | | | | | | | | | * Adds custom claims API to client * Ammends branch Adds: - Deprecation messages - Fixes auth result keys - Ammends sample app - Adds unit tests * fixes typo switches “to” to “so”
* C++ migration: refactor Timestamp logic checking for overflow. (#1000)Gravatar Konstantin Varlamov2018-03-29
| | | | | Rewrite manual checks using `<chrono>` min()/max() functions and duration_cast. This is cleaner and avoids including <limits>.
* Add Logger Service for Swizzler (#1002)Gravatar Paul Beusterien2018-03-29
|
* C++ migration: fix some Timestamp tests failing on Linux. (#999)Gravatar Konstantin Varlamov2018-03-29
| | | | | | | | | | | | Some Timestamp tests check that constructor fails if given values beyond the supported (pretty wide) range. In case Timestamp is created from chrono::time_point, the time_point's underlying duration is implementation-defined and may overflow when tests try to set it to a value beyond Timestamp supported range. To work around this, make these tests not run if time_point cannot represent boundary values on this platform. For example, on OS X, time_point has microseconds precision, so the tests may run, but on Linux, time_point has nanoseconds precision, which would overflow.
* Clean up usages of std::make_unique that crept in (#996)Gravatar Gil2018-03-29
| | | | | | | | * Add std::make_unique rule * Clean up usages of std::make_unique that crept in This fails to build under Xcode 8.2
* Remove unused shutdown methods (#993)Gravatar Greg Soltis2018-03-29
| | | | | | | | | | | | * Drop mutation queue shutdown * Drop query cache shutdown * Drop remote document cache shutdown * Drop local store shutdown * drop newline
* Remove some usages of FSTWriteGroup (#983)Gravatar Greg Soltis2018-03-29
| | | | | | | | | | | | | | | | | | * FSTMutationQueue no longer needs groups * Remove write group from mutation queue entirely * Remove write group from query cache * Mark groups unused in remote document cache * Drop write group entirely from remote document cache * style * Drop commented-out code * Drop commented-out code
* Migrate Firebase off ObjC module @import statements (#992)Gravatar Ben Hamilton (Ben Gertzfield)2018-03-29
| | | | | | | | | | | * Migrate Firebase off @import statements * - Migrate tests and test utils from @import to #import. - Update Xcode projects for tests to explicitly link in framework deps. - Update check_no_module_imports.sh to look for @imports in tests/test utils/ integration tests. * Ensure check_no_module_imports.sh explicitly exits with code 0 on success.
* Initial TreeSortedMap and SortedMap in C++ (#980)Gravatar Gil2018-03-29
| | | | | | | | | | * Prepare for TreeSortedMap * Factor out SortedMapBase * Move ArraySortedMap to impl * Factor out SortedMap testing utilities * Add a minimal TreeSortedMap * Add the public SortedMap type
* Merge pull request #985 from firebase/downlaodurldeprecationGravatar Sebastian Schmidt2018-03-28
|\ | | | | Deprecate StorageMetadata.downloadURLs
* \ Merge pull request #987 from firebase/klimt-fix-formatGravatar Bryan Klimt2018-03-28
|\ \ | | | | | | Fix some formatting issues.
* \ \ Merge pull request #984 from morganchen12/iid-proxyGravatar Morgan Chen2018-03-28
|\ \ \ | | | | | | | | Remove FIRMessagingInstanceIDProxy
| | * | Fix some formatting issues.Gravatar Bryan Klimt2018-03-27
| |/ / |/| |
| | * Clang formatGravatar Sebastian Schmidt2018-03-27
| | |
| | * Deprecate StorageMetadata.downloadURLsGravatar Sebastian Schmidt2018-03-27
| |/ |/|
* | Add ObjectValue::Map alias (#967)Gravatar rsgowman2018-03-27
| |
| * Remove FIRMessagingInstanceIDProxyGravatar Morgan Chen2018-03-27
|/
* port C++ DocumentKey to the rest of Firestore code (#977)Gravatar zxu2018-03-27
| | | | | | | | | | * port C++ DocumentKey to API's and Core's * address changes * address changes * fix Hash return types
* Only add nanopb proto headers to the -I path when depending on the nanopb ↵Gravatar rsgowman2018-03-27
| | | | | | protos. (#982) This is motivated by wanting to use libprotobuf in the project too, but it's also sensible by itself.
* C++ migration: make Timestamp class a part of public API (#944)Gravatar Konstantin Varlamov2018-03-27
| | | | | | | | | | | * move Timestamp from model/ to the root directory; * move Timestamp to top-level firebase namespace and update all references; * add conversions to and from native date types; * add a specialization of std::hash; * add comments to public member functions; * rename nanos -> nanoseconds; * add public headers, including Timestamp, to CMake; * increase test coverage.
* Add missing license file (#981)Gravatar rsgowman2018-03-26
|
* Merge pull request #979 from firebase/morganchen12-patch-1Gravatar Morgan Chen2018-03-26
|\ | | | | backtick-escape code block
* | Running a transaction (#969)Gravatar Greg Soltis2018-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Start work on leveldb transactions * Style * Working API. Not plumbed in yet * Move files into correct place * Wrangling file locations and associations * Tests pass * Add some comments * style * Fix copyright * Rewrite iterator internals to handle deletion-while-iterating. Also add tests for same * Switch to strings instead of slices * Style * More style fixes * Start switching writegroup over * Swap out write group tracking for transaction usage * Style * Response to feedback before updating docs * Style * Add comment * Initialize version_ * Satisfy the linter * Start switching writegroup over * Swap out write group tracking for transaction usage * Style * Checkpoint before implementing BatchDescription * Style * Initial plumbing for leveldb local parts * Add model::BatchId * Port leveldb_key.{h,cc} * Add string StartsWith * Add leveldb_key_test.cc to the project * Revert back to using leveldb::Slice for read/describe These operations universally operate on keys obtained from leveldb so it's actually unhelpful to force all the callers to make absl::string_views from them. * Everything passing * Drop unused function * Style * STart work on reads * Swap reads in queryCache to use transactions * Fix up tests of querycache * Drop commented out code * Cleanup * Style * Fix up for passing tests * style * Renaming * Style * Start work on ToString for transactions * Add ToString() method to LevelDbTransaction * Style * lint * Fix includes, drop runTransaction * current_transaction -> currentTransaction * LevelDbTransaction::NewIterator now returns a unique_ptr * Style * Revert addition of util::StartsWith * Add log line * Style * Add log line * Style * Add debug log line for commits, drop unused BatchDescription * STart work on reads * Swap reads in queryCache to use transactions * Start on remote documents * Transition mutation queue and remote documents to use transactions * Style * Make everything pass * Make everything pass * Make it compile * Style * Style * Revert name change, use DefaultReadOptions() * Style * Example of running a transaction with a lambda * Drop errant typo * Drop duplicate method declarations * replace usage of auto w/ decltype * Drop an unnecessary _Nullable. Add some nullability warning suppression * use absl::make_unique, handle void return type * Style * Wrap backing persistence and expectation of backing persistence for transaction runner into a method * More comments, trigger CI
| * backtick-escape code blockGravatar Morgan Chen2018-03-26
|/
* Fix issue that could cause offline get()s to wait up to 10 seconds. (#978)Gravatar Michael Lehenbauer2018-03-26
| | | | | | | | | Port of https://github.com/firebase/firebase-js-sdk/pull/592 FSTOnlineStateTracker was reverting to OnlineState Unknown on every stream attempt rather than remaining Offline once the offline heuristic had been met (i.e. 2 stream failures or 10 seconds). This means that getDocument() requests made while offline could be delayed up to 10 seconds each time (or until the next backoff attempt failed).
* Switch LevelDB MutationQueue and RemoteDocumentCache to use transactions (#968)Gravatar Greg Soltis2018-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Start work on leveldb transactions * Style * Working API. Not plumbed in yet * Move files into correct place * Wrangling file locations and associations * Tests pass * Add some comments * style * Fix copyright * Rewrite iterator internals to handle deletion-while-iterating. Also add tests for same * Switch to strings instead of slices * Style * More style fixes * Start switching writegroup over * Swap out write group tracking for transaction usage * Style * Response to feedback before updating docs * Style * Add comment * Initialize version_ * Satisfy the linter * Start switching writegroup over * Swap out write group tracking for transaction usage * Style * Checkpoint before implementing BatchDescription * Style * Initial plumbing for leveldb local parts * Add model::BatchId * Port leveldb_key.{h,cc} * Add string StartsWith * Add leveldb_key_test.cc to the project * Revert back to using leveldb::Slice for read/describe These operations universally operate on keys obtained from leveldb so it's actually unhelpful to force all the callers to make absl::string_views from them. * Everything passing * Drop unused function * Style * STart work on reads * Swap reads in queryCache to use transactions * Fix up tests of querycache * Drop commented out code * Cleanup * Style * Fix up for passing tests * style * Renaming * Style * Start work on ToString for transactions * Add ToString() method to LevelDbTransaction * Style * lint * Fix includes, drop runTransaction * current_transaction -> currentTransaction * LevelDbTransaction::NewIterator now returns a unique_ptr * Style * Revert addition of util::StartsWith * Add log line * Style * Add log line * Style * Add debug log line for commits, drop unused BatchDescription * STart work on reads * Swap reads in queryCache to use transactions * Start on remote documents * Transition mutation queue and remote documents to use transactions * Style * Make everything pass * Make everything pass * Make it compile * Style * Style * Revert name change, use DefaultReadOptions() * Style * Handle iterators returning bad statuses
* Improve macOS/tvOS installation instructions (#972)Gravatar Paul Beusterien2018-03-25
| | | | * And provide prescriptive source pod instructions
* Rewrite leveldb_key to use a Reader/Writer class (#960)Gravatar Gil2018-03-24
|
* port C++ `DocumentKey` to `Remote/*` (#965)Gravatar zxu2018-03-24
| | | | | | | | | | | | * port C++ DocumentKey to Remote's * port C++ DocumentKey to Remote's * address changes * address changes * address changes
* fix a typo (#970)Gravatar zxu2018-03-23
| | | fix a typo caused in the merge a2a109b (https://github.com/firebase/firebase-ios-sdk/commit/0ccfd6a3dc77fb733626bc8911b5925ad9475c2e)
* port C++ `DocumentKey` to `Local/*` (#963)Gravatar zxu2018-03-23
| | | | | | * port C++ DocumentKey to Local's * address changes
* nit to work with Jazzy doc style (#952)Gravatar Ibrahim Ulukaya2018-03-23
|
* Renames in serializer to reflect recent changes (#957)Gravatar rsgowman2018-03-23
| | | | | | | * Rename Writer::Encode* methods to Writer::Write* * Rename: s/stream/writer/ (approximately) but only where it applies to Writer (rather than pb_ostream_t).
* Switch FSTLevelDBQueryCache to use transactions (#942)Gravatar Greg Soltis2018-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Start work on leveldb transactions * Style * Working API. Not plumbed in yet * Move files into correct place * Wrangling file locations and associations * Tests pass * Add some comments * style * Fix copyright * Rewrite iterator internals to handle deletion-while-iterating. Also add tests for same * Switch to strings instead of slices * Style * More style fixes * Start switching writegroup over * Swap out write group tracking for transaction usage * Style * Response to feedback before updating docs * Style * Add comment * Initialize version_ * Satisfy the linter * Start switching writegroup over * Swap out write group tracking for transaction usage * Style * Checkpoint before implementing BatchDescription * Style * Initial plumbing for leveldb local parts * Add model::BatchId * Port leveldb_key.{h,cc} * Add string StartsWith * Add leveldb_key_test.cc to the project * Revert back to using leveldb::Slice for read/describe These operations universally operate on keys obtained from leveldb so it's actually unhelpful to force all the callers to make absl::string_views from them. * Everything passing * Drop unused function * Style * STart work on reads * Swap reads in queryCache to use transactions * Fix up tests of querycache * Drop commented out code * Cleanup * Style * Fix up for passing tests * style * Renaming * Style * Start work on ToString for transactions * Add ToString() method to LevelDbTransaction * Style * lint * Fix includes, drop runTransaction * current_transaction -> currentTransaction * LevelDbTransaction::NewIterator now returns a unique_ptr * Style * Revert addition of util::StartsWith * Add log line * Style * Add log line * Style * Add debug log line for commits, drop unused BatchDescription * Fix an include, but mostly try to trigger a travis build
* fix style.sh (#966)Gravatar zxu2018-03-22
|
* Change write groups to use transactions (#912)Gravatar Greg Soltis2018-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Start work on leveldb transactions * Style * Working API. Not plumbed in yet * Move files into correct place * Wrangling file locations and associations * Tests pass * Add some comments * style * Fix copyright * Rewrite iterator internals to handle deletion-while-iterating. Also add tests for same * Switch to strings instead of slices * Style * More style fixes * Start switching writegroup over * Swap out write group tracking for transaction usage * Style * Response to feedback before updating docs * Style * Add comment * Initialize version_ * Satisfy the linter * Start switching writegroup over * Swap out write group tracking for transaction usage * Style * Checkpoint before implementing BatchDescription * Style * Everything passing * Drop unused function * Style * Renaming * Style * Add log line * Style * Add debug log line for commits, drop unused BatchDescription
* Delete legacy module map (#964)Gravatar Paul Beusterien2018-03-22
|
* Add `ToString()` to `LevelDbTransaction` (#946)Gravatar Greg Soltis2018-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Initial plumbing for leveldb local parts * Add model::BatchId * Port leveldb_key.{h,cc} * Add string StartsWith * Add leveldb_key_test.cc to the project * Revert back to using leveldb::Slice for read/describe These operations universally operate on keys obtained from leveldb so it's actually unhelpful to force all the callers to make absl::string_views from them. * Start work on ToString for transactions * Add ToString() method to LevelDbTransaction * Style * lint * Revert addition of util::StartsWith
* Port FSTLevelDBKey to C++ (#937)Gravatar Gil2018-03-21
|
* Fix for b/74749605: Cancel pending backoff operations when closing streams. ↵Gravatar Michael Lehenbauer2018-03-21
| | | | | (#958) Port of https://github.com/firebase/firebase-js-sdk/pull/564.
* Add file I/O usage to Core documentation. (#959)Gravatar Ryan Wilson2018-03-21
| | | | | | | | * Add file I/O usage to documentation. * Update defaultOptions message. * Fix grammatical error.
* Run Functions Unit Tests on travis (#954)Gravatar Paul Beusterien2018-03-21
|
* Change CredentialsProvider::TokenListener to use StatusOr<Token> (#945)Gravatar rsgowman2018-03-21
| | | | | | | | | | | | | * Change CredentialsProvider::TokenListener to use StatusOr Rather than a token plus error code/msg. * Eliminate the concept of an invalid Token Instead, we'll just use StatusOr<Token>. Note that unauthenticated tokens are handled as a special case; they're created via: Token::Unauthenticated() and are otherwise "valid", though attempting to retrieve the raw token on one of these tokens will cause an assertion failure.
* Fix FSTTimerID strings in spec tests to match constants used in web. (#953)Gravatar Michael Lehenbauer2018-03-20
|
* Merge pull request #950 from firebase/release-4.11.0Gravatar Paul Beusterien2018-03-20
|\ | | | | Release 4.11.0
| * Fix Functions copyrights (#951)Gravatar Paul Beusterien2018-03-20
| |
| * Run scripts/style.sh on Functions (#949)Gravatar Paul Beusterien2018-03-20
| |
| * Initial Firebase Functions (#948)Gravatar Paul Beusterien2018-03-20
| |
* | Add Status and StatusOr (#935)Gravatar rsgowman2018-03-19
| | | | | | | | * Pull in status files from tensorflow * Add missing dependency to immutable library