mirror of
https://github.com/glitch-soc/mastodon.git
synced 2026-03-29 03:00:33 +02:00
Use with_index iterator in backup service (#38264)
This commit is contained in:
@@ -25,13 +25,11 @@ class BackupService < BaseService
|
||||
skeleton[:orderedItems] = ['!PLACEHOLDER!']
|
||||
skeleton = JSON.generate(skeleton)
|
||||
prepend, append = skeleton.split('"!PLACEHOLDER!"')
|
||||
add_comma = false
|
||||
|
||||
file.write(prepend)
|
||||
|
||||
account.statuses.with_includes.reorder(nil).find_in_batches do |statuses|
|
||||
file.write(',') if add_comma
|
||||
add_comma = true
|
||||
account.statuses.with_includes.reorder(nil).find_in_batches.with_index do |statuses, batch|
|
||||
file.write(',') unless batch.zero?
|
||||
|
||||
file.write(statuses.map do |status|
|
||||
serializer = status.reblog? ? ActivityPub::AnnounceNoteSerializer : ActivityPub::CreateNoteSerializer
|
||||
@@ -124,11 +122,8 @@ class BackupService < BaseService
|
||||
zipfile.get_output_stream('likes.json') do |io|
|
||||
io.write(prepend)
|
||||
|
||||
add_comma = false
|
||||
|
||||
Status.reorder(nil).joins(:favourites).includes(:account).merge(account.favourites).find_in_batches do |statuses|
|
||||
io.write(',') if add_comma
|
||||
add_comma = true
|
||||
Status.reorder(nil).joins(:favourites).includes(:account).merge(account.favourites).find_in_batches.with_index do |statuses, batch|
|
||||
io.write(',') unless batch.zero?
|
||||
|
||||
io.write(statuses.map do |status|
|
||||
JSON.generate(ActivityPub::TagManager.instance.uri_for(status))
|
||||
@@ -151,10 +146,8 @@ class BackupService < BaseService
|
||||
zipfile.get_output_stream('bookmarks.json') do |io|
|
||||
io.write(prepend)
|
||||
|
||||
add_comma = false
|
||||
Status.reorder(nil).joins(:bookmarks).includes(:account).merge(account.bookmarks).find_in_batches do |statuses|
|
||||
io.write(',') if add_comma
|
||||
add_comma = true
|
||||
Status.reorder(nil).joins(:bookmarks).includes(:account).merge(account.bookmarks).find_in_batches.with_index do |statuses, batch|
|
||||
io.write(',') unless batch.zero?
|
||||
|
||||
io.write(statuses.map do |status|
|
||||
JSON.generate(ActivityPub::TagManager.instance.uri_for(status))
|
||||
|
||||
Reference in New Issue
Block a user