perf(): filter by path when loading collection from github backend #6898
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
When using the beta "path" option on collections, Github backend was loading all entries in the folder and then filtering them on frontend. On a large use case (4-5 collections in the same parent folder with a lot of entries) this starts to affect performance especially when requests are not cached yet.
This PR adds a filter that will consider the path and i18n language (if this is enabled) before requesting files from backend, therefore significantly decrease the number of xhr requests.
We have been using this on our fork in a large production app for a year now and found no issues so far.
Test plan
To test this, you need to set up collections separated by path, connect straight to the Github backend and observe the number of requests between master branch and this.
Checklist
Please add a
x
inside each checkbox:A picture of a cute animal (not mandatory but encouraged)