mastodon/app/services
Claire 4ac78e2a06
Add feature to automatically delete old toots (#16529)
* Add account statuses cleanup policy model

* Record last inspected toot to delete to speed up successive calls to statuses_to_delete

* Add service to cleanup a given account's statuses within a budget

* Add worker to go through account policies and delete old toots

* Fix last inspected status id logic

All existing statuses older or equal to last inspected status id must be
kept by the current policy. This is an invariant that must be kept so that
resuming deletion from the last inspected status remains sound.

* Add tests

* Refactor scheduler and add tests

* Add user interface

* Add support for discriminating based on boosts/favs

* Add UI support for min_reblogs and min_favs, rework UI

* Address first round of review comments

* Replace Snowflake#id_at_start with with_random parameter

* Add tests

* Add tests for StatusesCleanupController

* Rework settings page

* Adjust load-avoiding mechanisms

* Please CodeClimate
2021-08-09 23:11:50 +02:00
..
activitypub Fix some RedisLocks auto-releasing too fast (#16276) 2021-05-19 23:52:08 +02:00
concerns Fix activity not being signed (#13948) 2020-06-03 08:33:30 +02:00
keys Fix rubocop config and warnings (#15503) 2021-01-07 09:40:55 +01:00
account_search_service.rb Optimize some regex matching (#15528) 2021-01-22 10:09:08 +01:00
account_statuses_cleanup_service.rb Add feature to automatically delete old toots (#16529) 2021-08-09 23:11:50 +02:00
after_block_domain_from_account_service.rb Fix account domain block not properly unfollowing accounts from domain (#14304) 2020-07-13 19:33:10 +02:00
after_block_service.rb Fix blocking someone not clearing up list feeds (#16205) 2021-05-10 17:31:55 +02:00
after_unallow_domain_service.rb Change account suspensions to be reversible by default (#14726) 2020-09-15 14:37:58 +02:00
app_sign_up_service.rb Add IP-based rules (#14963) 2020-10-12 16:33:49 +02:00
authorize_follow_service.rb Remove Salmon and PubSubHubbub (#11205) 2019-07-06 23:26:16 +02:00
backup_service.rb Add logging of S3-related errors (#16381) 2021-07-21 18:34:39 +02:00
base_service.rb Remove unused AtomBuilderHelper (#1364) 2017-04-11 19:31:22 +02:00
batched_remove_status_service.rb Fix undefined method error when batch-removing statuses with ElasticSearch on (#15421) 2020-12-24 15:53:26 +01:00
block_domain_service.rb Add support for reversible suspensions through ActivityPub (#14989) 2020-11-08 00:28:39 +01:00
block_service.rb Fix BlockService trying to reject incorrect follow request (#11288) 2019-07-11 14:50:27 +02:00
bootstrap_timeline_service.rb Change auto-following admin-selected accounts, show in recommendations (#16078) 2021-04-24 17:01:43 +02:00
clear_domain_media_service.rb Make domain block/silence/reject-media code more robust (#13424) 2020-06-09 10:32:00 +02:00
delete_account_service.rb Fix owned account notes not being deleted when an account is deleted (#16579) 2021-08-08 15:29:57 +02:00
deliver_to_device_service.rb Add E2EE API (#13820) 2020-06-02 19:24:53 +02:00
fan_out_on_write_service.rb Fix DMs not appearing into timelines (#15182) 2020-11-19 00:23:46 +01:00
favourite_service.rb Add option to be notified when a followed user posts (#13546) 2020-09-18 17:26:45 +02:00
fetch_link_card_service.rb Fix some RedisLocks auto-releasing too fast (#16276) 2021-05-19 23:52:08 +02:00
fetch_oembed_service.rb Fix YouTube embeds failing due to YouTube serving wrong OEmbed URLs (#15716) 2021-02-12 05:45:38 +01:00
fetch_remote_status_service.rb Fix an error when ActivityPub::FetchRemoteStatusService url is called with nil (#12652) 2019-12-18 16:54:03 +01:00
fetch_resource_service.rb Fix not being able to resolve public resources in development environment (#13505) 2020-04-25 22:01:08 +02:00
follow_service.rb Fix empty home feed before first follow has finished processing (#16152) 2021-05-04 04:45:08 +02:00
import_service.rb Update Mastodon to Rails 6.1 (#15910) 2021-03-24 10:44:31 +01:00
move_service.rb Fix account migration not affecting followers on origin server (#11980) 2019-09-29 16:23:13 +02:00
mute_service.rb Add duration parameter to muting. (#13831) 2020-10-13 01:01:14 +02:00
notify_service.rb Add option to be notified when a followed user posts (#13546) 2020-09-18 17:26:45 +02:00
post_status_service.rb Fix media not being marked sensitive when client sets a CW but no text (#13277) 2020-03-25 22:40:58 +01:00
precompute_feed_service.rb Refactor feed manager (#14761) 2020-09-08 03:41:16 +02:00
process_hashtags_service.rb Change trending hashtags to be affected be reblogs (#16164) 2021-05-07 14:33:43 +02:00
process_mentions_service.rb Remove spam check and dependency on nilsimsa gem (#16011) 2021-04-11 11:22:50 +02:00
reblog_service.rb Change trending hashtags to be affected be reblogs (#16164) 2021-05-07 14:33:43 +02:00
reject_follow_service.rb Remove Salmon and PubSubHubbub (#11205) 2019-07-06 23:26:16 +02:00
remove_status_service.rb Fix scoped order warning in RemoveStatusService (#16531) 2021-07-24 14:41:46 +02:00
report_service.rb Fix reports of already suspended accounts being recorded (#16047) 2021-04-16 22:01:05 +02:00
resolve_account_service.rb Fix some RedisLocks auto-releasing too fast (#16276) 2021-05-19 23:52:08 +02:00
resolve_url_service.rb Improve searching for private toots from URL (#14856) 2020-12-17 06:51:49 +01:00
search_service.rb Optimize some regex matching (#15528) 2021-01-22 10:09:08 +01:00
suspend_account_service.rb Fix remote reporters not receiving suspend/unsuspend activities (#16050) 2021-04-17 14:55:46 +02:00
tag_search_service.rb Add exclude_unreviewed param to GET /api/v2/search REST API (#11977) 2019-09-28 01:02:21 +02:00
unallow_domain_service.rb Fix removing allowed domains being done synchronously (#14302) 2020-07-15 21:08:19 +02:00
unblock_domain_service.rb Add support for reversible suspensions through ActivityPub (#14989) 2020-11-08 00:28:39 +01:00
unblock_service.rb Remove Salmon and PubSubHubbub (#11205) 2019-07-06 23:26:16 +02:00
unfavourite_service.rb Remove Salmon and PubSubHubbub (#11205) 2019-07-06 23:26:16 +02:00
unfollow_service.rb Fix Move handler queuing jobs that will fail if account is suspended (#11864) 2019-09-17 08:44:45 +02:00
unmute_service.rb Fix #231 - Muting 2017-03-02 18:49:32 +01:00
unsuspend_account_service.rb Fix remote reporters not receiving suspend/unsuspend activities (#16050) 2021-04-17 14:55:46 +02:00
update_account_service.rb Bump rubocop from 0.86.0 to 0.88.0 (#14412) 2020-09-01 03:04:00 +02:00
verify_link_service.rb Rescue SSL error in verify link service (#9914) 2019-01-24 15:38:18 +01:00
vote_service.rb Fix invalid votes from the API being accepted (#12601) 2020-01-12 14:17:03 +01:00