Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

add pagination to GET /api/v1/find endpoint #1699

Merged
merged 1 commit into from
Dec 12, 2024

Conversation

paskal
Copy link
Collaborator

@paskal paskal commented Nov 18, 2023

format=tree pagination provides top-level comments with all replies and returns the last top-level comment as last_comment to be used as offset for the next page. If comments and replies overflow the limit, the one stepping out of the limit will not be returned. If the first comment and its replies after the given offset overflow the limit, it will be returned with all the replies.

format=plain pagination works by providing all comments and returning the last comment as last_comment to be used as offset for the next page.

Requires #1685 to be merged first. Backend part for #782.

Copy link

github-actions bot commented Nov 18, 2023

Pull Request Test Coverage Report for Build 7512258238

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage decreased (-0.5%) to 84.281%

Totals Coverage Status
Change from base Build 7495000583: -0.5%
Covered Lines: 5946
Relevant Lines: 7055

💛 - Coveralls

@paskal paskal force-pushed the paskal/comments_pagination branch from 33b4f77 to 09ee26d Compare January 13, 2024 11:56
@paskal paskal force-pushed the paskal/comments_pagination branch 3 times, most recently from f7f18c8 to d099924 Compare February 22, 2024 17:13
@paskal paskal force-pushed the paskal/comments_pagination branch from d099924 to 4bbb980 Compare March 4, 2024 22:12
@paskal paskal force-pushed the paskal/comments_pagination branch from 4bbb980 to 162a2da Compare December 9, 2024 01:59
Copy link
Owner

@umputun umputun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

few minor things. I have not checked the tree part of this, and asked for some tests to make sure everyting is working as designed.

if offsetID != "" {
for i, comment := range c {
if comment.ID == offsetID {
c = c[i+1:]
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is confusing and even scary a bit. Generally, the idea of changing the slice we are ranging over inside the loop feels wrong to me. Probably it is safe to do now, as we are breaking right away, but someday, as we add code to this function, it may not be the case. I'd rather add a new lcs variable for the result slice.

`format=tree` pagination provides top-level comments with all replies
and returns the last top-level comment as `last_comment` to be used
as `offset` for the next page. If comments and replies overflow
the limit, the one stepping out of the limit will not be returned.
 If the first comment and its replies after the given offset overflow
 the limit, it will be returned with all the replies.

`format=plain` pagination works by providing all comments and returning
the last comment as `last_comment` to be used as `offset`
for the next page.
@paskal paskal force-pushed the paskal/comments_pagination branch from 162a2da to 82a0888 Compare December 10, 2024 21:55
@coveralls
Copy link

Pull Request Test Coverage Report for Build 12265398108

Details

  • 40 of 88 (45.45%) changed or added relevant lines in 2 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage decreased (-0.5%) to 84.509%

Changes Missing Coverage Covered Lines Changed/Added Lines %
backend/app/store/service/tree.go 6 54 11.11%
Totals Coverage Status
Change from base Build 12247852346: -0.5%
Covered Lines: 6050
Relevant Lines: 7159

💛 - Coveralls

@umputun umputun merged commit c3ba55b into master Dec 12, 2024
3 checks passed
@umputun umputun deleted the paskal/comments_pagination branch December 12, 2024 02:17
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants