-
Notifications
You must be signed in to change notification settings - Fork 893
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Markduckworth/or queries #6694
Markduckworth/or queries #6694
Conversation
Add composite filters. Port of firebase/firebase-android-sdk#3290
* Support encoding and decoding Composite Filters
…kduckworth/or-queries
🦋 Changeset detectedLatest commit: 95679e3 The changes in this PR will be included in the next version bump. This PR includes changesets to release 3 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Size Report 1Affected Products
Test Logs |
Size Analysis Report 1This report is too large (800,230 characters) to be displayed here in a GitHub comment. Please use the below link to see the full report on Google Cloud Storage.Test Logs |
* Add composite filters. Port of firebase/firebase-android-sdk#3290 * Support encoding and decoding Composite Filters * Perform DNF transform * Use client-side index if we have composite filters * Update the orderBy filtering mechanism for OR queries and steps to serve OR queries from client-side index. * Update protos with OR operator. * Add compile.sh to compile proto updates. * Update stringifyFilter to support CompositeFilters
#6557) * Refactor core/target.ts, extracting classes Bound, OrderBy, and Filter (+subclasses)
…can be passed to or(...) and and(...). (#6559) Making public API changes to ensure that only QueryFilterConstraints can be passed to or(...) and and(...).
* OR Query Public API * In operator expansion
* Collapsing duplicate tests that covered with and without client side indexing into one test case that executes with both configurations. * Additional validation and additional validation tests for where(..), and(...), and or(...). * Tagging all new OR Query API members as internal until server support is offered. * Constrained the parameters of the query() function implementation. It's still compatible with the overload signatures, but the constrained parameters simplifies the implementation.
…kduckworth/or-queries
…e new way of skipping tests when persistence is not available.
@ehsannas, @hsubox76, Here's a large PR that has all of the client side changes needed to support OR queries. It was tested against the emulator. @ehsannas has reviewed all incremental changes as they were merged into this feature branch, so I'm not asking for full review of the changes. Areas that might be worth another review are: .md files, (lack of) changeset file, and package.json. |
Implementation of Firestore OR Queries without the public API. The public API will be released later. Several minor API changes are included in this release: Functions in the Firestore package that return QueryConstraints (for example: where(...), limit(...), and orderBy(...)) now return a more specific type, which extends QueryConstraint. This is a non-breaking change that will support OR Queries.
This is the implementation of Firestore OR Queries without the public API. The public API will be released later.
Several minor API changes are included in this release: Functions in the Firestore package that return QueryConstraints (for example: where(...), limit(...), and orderBy(...)) now return a more specific type, which extends QueryConstraint. This is a non-breaking change that will support OR Queries.
Minor version bumps are included for Firebase and @firebase/firestore.