0
0
Fork 0

Support min_id-based pagination in REST API (#8736)

* Allow min_id pagination in Feed#get

* Add min_id pagination to home and list timeline APIs

* Add min_id pagination to account statuses, public and tag APIs

* Remove unused stub in reports API

* Use min_id pagination in notifications, favourites, and fix order

* Fix HomeFeed#from_database not using paginate_by_id
This commit is contained in:
Eugen Rochko 2018-09-28 02:23:45 +02:00 committed by GitHub
parent 3d7f68c273
commit f0fff3eb10
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
15 changed files with 49 additions and 51 deletions

View file

@ -7,9 +7,9 @@ class HomeFeed < Feed
@account = account
end
def get(limit, max_id = nil, since_id = nil)
def get(limit, max_id = nil, since_id = nil, min_id = nil)
if redis.exists("account:#{@account.id}:regeneration")
from_database(limit, max_id, since_id)
from_database(limit, max_id, since_id, min_id)
else
super
end
@ -17,9 +17,9 @@ class HomeFeed < Feed
private
def from_database(limit, max_id, since_id)
def from_database(limit, max_id, since_id, min_id)
Status.as_home_timeline(@account)
.paginate_by_max_id(limit, max_id, since_id)
.paginate_by_id(limit, max_id: max_id, since_id: since_id, min_id: min_id)
.reject { |status| FeedManager.instance.filter?(:home, status, @account.id) }
end
end