diff options
author | Thibaut Girka <thib@sitedethib.com> | 2019-07-17 21:54:03 +0200 |
---|---|---|
committer | ThibG <thib@sitedethib.com> | 2019-07-18 13:34:54 +0200 |
commit | 20520e6158aaa732c6166ec8e6461d08a081e7c6 (patch) | |
tree | e4ebcb16faef1d51b3bcc14d0a7a03ec6c140a32 | |
parent | 6ff285d948cd8b19a01f183af25498c3b0d5bea4 (diff) |
When cleaning up remote statuses, keep bookmarked ones
-rw-r--r-- | lib/mastodon/statuses_cli.rb | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/mastodon/statuses_cli.rb b/lib/mastodon/statuses_cli.rb index 7f2fbfa85..6271c99df 100644 --- a/lib/mastodon/statuses_cli.rb +++ b/lib/mastodon/statuses_cli.rb @@ -41,6 +41,7 @@ module Mastodon .where('id NOT IN (SELECT status_pins.status_id FROM status_pins WHERE statuses.id = status_id)') # Skip statuses that are pinned on profiles .where('id NOT IN (SELECT mentions.status_id FROM mentions WHERE statuses.id = mentions.status_id AND mentions.account_id IN (SELECT accounts.id FROM accounts WHERE domain IS NULL))') # Skip statuses that mention local accounts .where('id NOT IN (SELECT statuses1.in_reply_to_id FROM statuses AS statuses1 WHERE statuses.id = statuses1.in_reply_to_id)') # Skip statuses favourited by local accounts + .where('id NOT IN (SELECT bookmarks.status_id FROM bookmarks WHERE statuses.id = bookmarks.status_id') # Skip statuses bookmarked by local users .where('id NOT IN (SELECT statuses1.reblog_of_id FROM statuses AS statuses1 WHERE statuses.id = statuses1.reblog_of_id AND statuses1.account_id IN (SELECT accounts.id FROM accounts WHERE accounts.domain IS NULL))') # Skip statuses reblogged by local accounts .where('account_id NOT IN (SELECT follows.target_account_id FROM follows WHERE statuses.account_id = follows.target_account_id)') # Skip accounts followed by local accounts .in_batches |