Commit Graph
264 Commits
Author SHA1 Message Date
Tom Andersen f2194c8a3c Allow initializing FIRLocalCacheSettings with unlimited size. (#11405)
* Allow initializing FIRLocalCacheSettings with unlimited size.

* Add changelog.

* Add test

* Fix bug

* Add import

* Add import

* Exercise db with CacheSizeUnlimited

* Fix
2023-06-07 19:53:52 -04:00
Tom Andersen 9099f7fba6 Expose MultiDb API (#11365)
* Expose MultiDb API

* Changelog for MultiDb

* Expose MultiDB API

* Pretty

* Add preview comment
2023-06-02 13:55:57 -04:00
Mark Duckworth 52ebbbf19d Sum and average (#11108)
This is implementation but not public release of sum and average. The sum/avg API is not made public. There are no API changes in this PR.
2023-05-12 13:56:16 -06:00
wu-hui 15a38d32c8 Lru Memory GC (#10905)
Adds LRU gc for memory cache.
2023-04-18 13:00:05 -04:00
wu-hui 7c8becdbba New Cache Config API (#11057) 2023-04-13 20:52:14 -04:00
Nick Cooke 867697b8f3 [Infra] Upgrade to clang-format16 (#10973) 2023-03-20 12:47:43 -04:00
Nick Cooke 3b8e5553b5 [Firestore] Programmatically link un-linked symbols (#10896)
* [Firestore] Force link un-linked symbols

* Style
2023-03-10 12:48:44 -05:00
cherylEnkiduandEhsan Nasiri c0e6ac1cf2 Add Public API for Or Query (#10352)
* Add Public API for Or Query

* Add Or query swift tests

* Add Swift tests for IN

* Adding back FIRFirestore+Internal as include file

* Add Documentation

* Address feedback

* Update the changelog.

---------

Co-authored-by: Ehsan Nasiri <ehsann@google.com>
2023-03-06 09:43:06 -08:00
cherylEnkidu 10295bad6b Fix double free bug inside IN Filter (#10535) 2022-11-30 12:52:59 -08:00
Tom Andersen 68628ef4e3 Implement MultiDB Support and Tests (#10465) 2022-11-24 10:52:38 -05:00
cherylEnkidu da7f1dd986 Replace OrderByList by std::vector<OrderBy> (#10402)
* Replace OrderByList by std::vector<OrderBy>

* Remove unordered_set

* Revert "Remove unordered_set"

This reverts commit f9df4691ef62897e48ec6ce80761396e7bdc12ca.
2022-10-26 21:24:29 -04:00
cherylEnkidu 36cbf43300 Support DNF transform for Or Query Support (#10290)
* Support DNF transform

* Replace with actual proto

* Address feedback
2022-10-11 19:17:24 -04:00
4232ac1d2e Public count (#10254)
* Revert "Revert "Public count (#10246)" (#10252)"

This reverts commit b695d99e91.

* Firestore: Re-write API docs for COUNT API (#10258)

* Add isEqual and hash for aggregate classes (#10261)

Co-authored-by: Denver Coneybeare <dconeybe@google.com>
Co-authored-by: Ehsan <ehsannas@gmail.com>
2022-09-27 18:01:22 -07:00
wu-hui b695d99e91 Revert "Public count (#10246)" (#10252)
This reverts commit 8aae6bee27.
2022-09-23 11:22:05 -04:00
wu-hui 8aae6bee27 Public count (#10246)
* Public Count

* Swift Test Commit

* Swift Format

* No extra whitespace

* Hopefully formatted.

* Change log and feedback.
2022-09-23 11:06:06 -04:00
Denver Coneybeare 5e832e5d40 FIRFirestoreSettings.mm: remove unnecessary extern "C" (#10221) 2022-09-15 15:13:03 -04:00
wu-hui 84a8b5030c Count from server (#10193)
* Proto serialization

* Wire up api

* End to end functional

* Linting

* Add aggregate source

* Fix cmake and style

* Comments, emulators and lints

* Feedback.

* More feedback.
2022-09-14 15:43:35 -07:00
cherylEnkidu 3512851cf6 Implement the Composite Filter class (#9734)
* Implement the Composite Filter class

* Polish code

* add tests for composite filter

* fix broken test

* Improve the implementation of flattern filters

* change the flatten_filters implementation with some other things

* Change the implementation of Filter in Composite Filter

* Address feedback

* Match Android Tests
2022-08-19 14:44:00 -04:00
cherylEnkiduandWu-Hui cc9c626501 Add setIndexConfiguration for client side indexing (#10090)
* Add setIndexConfiguration for client side indexing

* Address feedback

* Templates in headers

Co-authored-by: Wu-Hui <wu.hui.github@gmail.com>
2022-08-18 10:51:08 -04:00
Denver Coneybeare 8467858fc4 Firestore: Fix build warnings in FIRFirestore.mm and set_util.h (#9987) 2022-07-07 11:37:13 -04:00
Denver Coneybeare 585b4c83db Firestore TransactionOptions added, to specify maxAttempts (#9838) 2022-05-30 12:41:09 -04:00
wu-hui d8bd124e06 Add indexing support to Target (#9519) 2022-04-07 17:02:43 -04:00
Nick Cooke 1a5399a230 [Infra] Bump clang-format to v14 (#9527) (#9531)
* Bump clang-format

* Review
2022-03-28 18:53:08 -04:00
Nick Cooke a09083f9d0 [v9] Reorganize FirebaseCore* modules (#9482)
* [skip ci] [will revert] Add debug printing to `pod_lib_lint.rb`

* Reorganize FirebaseCore libraries for SPM and CP

* [skip ci] Revert "[skip ci] [will revert] Add debug printing to `pod_lib_lint.rb`"

This reverts commit 2a837e39708c21b0a324743ab226bd6c01047de7.

* Review and fix CI

* Remove `heartbeat_logging.yml` and add `core_internal.yml`

* Remove trailing whitespace

* Fix more whitespace 😞

* Fix `core_internal.yml` scheme name

* Update `check_imports.swift` and TODO

* Review

* Add FirebaseCoreInternal pod to Firestore example's Podfile

* [skip ci] Review - remove TODOs

* [skip ci] Remove duplicate `XCTest` import
2022-03-23 06:08:14 -07:00
Paul Beusterien a1cb5656fc Auth and Messaging Interop for Swift (#9314) 2022-03-23 06:08:13 -07:00
Paul Beusterien 6361347a22 Podspecs for CoreInternal and AppCheckInterop (#9300) 2022-03-23 06:08:03 -07:00
Paul Beusterien e748d16594 AppCheckInterop for Swift dependents (#9299) 2022-03-23 06:07:17 -07:00
Paul Beusterien 4f793064da Set up Core Internal for SPM (#9298) 2022-03-23 06:07:17 -07:00
cherylEnkidu e6d18641e3 Create FIRFilter in API folder (#9456) 2022-03-18 18:19:16 -04:00
Denver Coneybeare fa6dae2233 Remove unused 'using' declarations (#8919) 2021-11-02 22:31:20 -04:00
Denver Coneybeare f5eef15da5 FSTUserDataWriter.mm: Fix imports (#8915) 2021-11-02 16:24:48 -04:00
Sebastian Schmidt 63c1673255 Add plumbing for AppCheck provider (#8765) 2021-10-11 12:00:23 -06:00
Paul Beusterien 1b5640e380 Fix three build warnings (#8763) 2021-10-08 18:31:50 -07:00
Sebastian Schmidt 697730ff12 Add AppCheck Interop for Firestore (#8749) 2021-10-08 08:58:08 -06:00
Sebastian Schmidt 03a1ed5778 Rename the Auth package to Credentials (#8753) 2021-10-07 14:16:58 -06:00
Konstantin Varlamov f243335a25 Don't define a util namespace alias in the global namespace. (#8527)
This would conflict with any definition of a `util` namespace imported from a header. While this applies to other aliases as well, `util` is the one most likely to clash and the one that has actually caused problems.

#no-changelog
2021-09-24 09:11:41 -06:00
Sebastian Schmidt 78ef3c8f40 Clean up FieldValue port (#8435) 2021-07-30 12:56:17 -06:00
Sebastian Schmidt e8f419baf2 Migrate FieldValue to Protobuf (#8124) 2021-07-22 12:44:17 -06:00
Konstantin Varlamov 633fa5561f Explicitly check that document and collection IDs given to the public API aren't empty (#8248)
Currently, the error would look like `Document references must have an even number of segments, but has 0`.

Fixes #8218.
2021-06-14 18:23:11 -04:00
wu-hui e6dfb106c6 Remove absl::optional from firestore::api (#8225) 2021-06-10 20:22:52 -04:00
Ehsan acc2d15b29 Fix warnings generated by Clang-Tidy (#8181)
* Remove unused namespace alias.

* Remove unused 'using' statements.

* Remove more unused 'using' and namspace aliases.

* Prefer absl::StrContains over comparing `find` result with `npos`.

* Remove more unused things.

* Prefer usage of `empty()` over `size()` when possible.

* Remove more unused things.

* Address code review.

* Address code review.

* More fixes to query_core.cc

* comment should match parameter name.

* Pre-allocate container capacity for better performance.

* More fixes.

* Fix inconsistent declaration parameter name.

* Fix inconsistent declaration parameter name.

* Fix inconsistent declaration parameter name.

* Address bugprone-inaccurate-erase (inappropriate `erase` overload was used).

* Fix return type of move and copy constructor.

* Fix bugprone use after move.

* Fix formatting.

* Reflect the param name change in the doc.
2021-06-04 10:33:43 -05:00
Konstantin Varlamov edb839e24a Minor error handling improvements (#8061)
* Throw more specific exceptions when the error is due to bad input (backport of cr/359824564) (note that this only applies to the Unity build);
* Always log exceptions to make sure they make it into the log (regardless of exception handling by the user and any potential issues with the exception propagation mechanism).

#no-changelog
2021-05-12 15:27:58 -04:00
wu-hui fbdca9590a Release Firestore bundles (#7717)
* Introduce new bundle.proto (#7283)

* Create leveldb "table"s for bundles (#7303)


* Add bundle cache (#7320)

* Bundle json parsing (#7356)

* BundleSerializer complete. (#7454)

* Bundles LocalStore change (#7466)

* Implement bundle reader to parse a bundle inputstream (#7527)

* Implement BundleLoader (#7536)

* Add public API for bundles and integration tests (#7621)

* Json parser as a hard copy (#7678)

* fix asan errors (#7686)

* Changelog entry

* Add public comments for bundles (#7694)

* Should 7.9.0

* API amendment
2021-03-16 17:07:47 -04:00
Davis Gossage 3d84b99852 Support NSPredicate CONTAINS and IN with new filter queries (#7203) 2021-01-08 11:53:58 -08:00
Morgan ChenandPaul Beusterien 90d3600c56 Implement unified emulator settings API proposal (#5916)
* Add header for API proposal

* Fix some bugs and add implmentation

* Fix header import

* Fix umbrella header

* Add ways to modify settings object

* Remove unnecessary nodoc

* Update with new API

* Add implementations for Firestore and RTDB

* Revert emulator settings class

* fix style

* Remove bad import and assertion on override

* Prevent database emu from being set after repo init

* Add unified emu to functions

* Add tests

* update header comment

* fix test failures

* remove unused variable

* fix database test

* cast NSInteger to long

* fix style

* Fix functions test in travis

* Remove valueForKeyPath in tests

* fix style

* update comments and remove explicit scheme

* save progress

* Implement reference validation for RTDB

* Add tests

* Add changelog entries

* Remove test logs

* Fix line lengths

* remove underlyingHost

* fix functions tests

* fix integration warnings in functions test

* fix functions test

* Fix infinite loop exposed in integration tests (#6912)

Co-authored-by: Paul Beusterien <paulbeusterien@google.com>
2020-11-06 10:37:06 -08:00
Brian Chen 763735f262 Remove unused options parameter (#6872) 2020-10-29 16:39:48 -07:00
Gil 885b07be6a Remove support for setting timestampsInSnapshotsEnabled (#6622)
Snapshots will now always include `FIRTimestamp` values. Use
`[FIRTimestamp dateValue]` to convert to `NSDate` if required.

`timestampsInSnapshotsEnabled` was deprecated in Firebase 5.16.0
(January 22, 2019) and has defaulted to true since then.

Projects that have not enabled `timestampsInSnapshotsEnabled` have
logged a warning since Firebase 4.12.0 (April 10, 2018).
2020-10-13 13:05:33 -07:00
Paul Beusterien 83e898ab5c One Firebase version (#6634) 2020-10-02 12:26:22 -07:00
Konstantin Varlamov 2311c36dbc Integrate Firestore with Firebase platform logging (#6507)
The sample user agent string I'm getting in XCode is `apple-platform/ios apple-sdk/17E8258 fire-fst/1.17.1 fire-ios/6.10.2 swift/true xcode/11E503a`.
2020-09-25 15:47:20 -04:00
Brian Chen 21921e9851 Add != and notIn support (#6418) 2020-09-15 16:12:44 -05:00