Implement pagination for /api/project/list and /api/users/list
#3489
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.
Closes #3487
This PR implements cursor-based pagination for endpoints
/api/project/listand/api/users/listsimilar to other paginated endpoints.Max and default
limitis currently set to 2000 to avoid breaking the UI. The UI should switch to the new API for performance.Notes:
return_total_countparam to includetotal_countin response so that the UI can still show the number of projects/users without getting all of them.name_patternto be able to filter projects/users by name substring on the server side. The UI can also use this to get project and user names for filters, e.g. by requesting one page.