mastodon/app/services
Claire 1145dbd327
Improve error reporting and logging when processing remote accounts (#15605)
* Add a more descriptive PrivateNetworkAddressError exception class

* Remove unnecessary exception class to rescue clause

* Remove unnecessary include to JsonLdHelper

* Give more neutral error message when too many webfinger redirects

* Remove unnecessary guard condition

* Rework how “ActivityPub::FetchRemoteAccountService” handles errors

Add “suppress_errors” keyword argument to avoid raising errors in
ActivityPub::FetchRemoteAccountService#call (default/previous behavior).

* Rework how “ActivityPub::FetchRemoteKeyService” handles errors

Add “suppress_errors” keyword argument to avoid raising errors in
ActivityPub::FetchRemoteKeyService#call (default/previous behavior).

* Fix Webfinger::RedirectError not being a subclass of Webfinger::Error

* Add suppress_errors option to ResolveAccountService

Defaults to true (to preserve previous behavior). If set to false,
errors will be raised instead of caught, allowing the caller to be
informed of what went wrong.

* Return more precise error when failing to fetch account signing AP payloads

* Add tests

* Fixes

* Refactor error handling a bit

* Fix various issues

* Add specific error when provided Digest is not 256 bits of base64-encoded data

* Please CodeClimate

* Improve webfinger error reporting
2022-09-20 23:30:26 +02:00
..
activitypub Improve error reporting and logging when processing remote accounts (#15605) 2022-09-20 23:30:26 +02:00
concerns Fix deletes not being signed in authorized fetch mode (#17484) 2022-02-11 14:52:45 +01:00
keys Fix rubocop config and warnings (#15503) 2021-01-07 09:40:55 +01:00
account_search_service.rb Add customizable user roles (#18641) 2022-07-05 02:41:40 +02:00
account_statuses_cleanup_service.rb Fix Sidekiq warnings about JSON serialization (#17381) 2022-01-28 00:43:56 +01: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 ability to block sign-ups from IP (#19037) 2022-08-24 19:00:37 +02:00
appeal_service.rb Add customizable user roles (#18641) 2022-07-05 02:41:40 +02:00
approve_appeal_service.rb Fix moderator leak in undo_mark_statuses_as_sensitive (#18525) 2022-05-26 22:04:16 +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 Add administrative webhooks (#18510) 2022-06-09 21:57:36 +02:00
batched_remove_status_service.rb Bump chewy from 5.2.0 to 7.2.3 (supports Elasticsearch 7.x) (#16915) 2021-11-18 22:02:08 +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 Add customizable user roles (#18641) 2022-07-05 02:41:40 +02:00
clear_domain_media_service.rb Fix incorrect and slow cache invalidation in ClearDomainMediaService (#19062) 2022-08-27 00:45:54 +02:00
delete_account_service.rb Add trending statuses (#17431) 2022-02-25 00:34:14 +01:00
deliver_to_device_service.rb Add E2EE API (#13820) 2020-06-02 19:24:53 +02:00
fan_out_on_write_service.rb Add ability to follow hashtags (#18809) 2022-07-17 13:49:29 +02:00
favourite_service.rb Fix duplicate notifications being possible after poll expiration (#17697) 2022-03-04 01:06:33 +01:00
fetch_link_card_service.rb Refactor how Redis locks are created (#18400) 2022-05-13 00:02:35 +02:00
fetch_oembed_service.rb Fix some link previews being incorrectly generated from other prior links (#16885) 2021-10-21 20:39:35 +02: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 Sidekiq warnings about JSON serialization (#17381) 2022-01-28 00:43:56 +01:00
import_service.rb Fix Sidekiq warnings about JSON serialization (#17381) 2022-01-28 00:43:56 +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 customizable user roles (#18641) 2022-07-05 02:41:40 +02:00
post_status_service.rb Change how changes to media attachments are stored for edits (#17696) 2022-03-09 09:06:17 +01:00
precompute_feed_service.rb Fix single Redis connection being used across all threads (#18135) 2022-04-28 17:47:34 +02:00
process_hashtags_service.rb Add editing for published statuses (#17320) 2022-02-10 00:15:30 +01:00
process_mentions_service.rb Change unapproved and unconfirmed account to not be accessible in the REST API (#17530) 2022-05-26 15:50:33 +02:00
purge_domain_service.rb Remove custom emojis on domain purge (#17210) 2021-12-30 08:41:09 +01:00
reblog_service.rb Add trending statuses (#17431) 2022-02-25 00:34:14 +01:00
reject_follow_service.rb Remove Salmon and PubSubHubbub (#11205) 2019-07-06 23:26:16 +02:00
remove_from_followers_service.rb Add remove from followers api (#16864) 2021-10-18 12:02:35 +02:00
remove_status_service.rb Refactor how Redis locks are created (#18400) 2022-05-13 00:02:35 +02:00
report_service.rb Add customizable user roles (#18641) 2022-07-05 02:41:40 +02:00
resolve_account_service.rb Improve error reporting and logging when processing remote accounts (#15605) 2022-09-20 23:30:26 +02:00
resolve_url_service.rb Fix temporary network/remote server error prevent from interactions with remote accounts (#18161) 2022-04-28 20:19:10 +02: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 concurrent unfollowing decrementing follower count more than once (#18527) 2022-05-26 22:14:47 +02:00
unmute_service.rb Fix #231 - Muting 2017-03-02 18:49:32 +01:00
unsuspend_account_service.rb Fix remotely-suspended accounts' toots being merged back into timelines (#16628) 2021-08-20 07:40:33 +01:00
update_account_service.rb Bump rubocop from 0.86.0 to 0.88.0 (#14412) 2020-09-01 03:04:00 +02:00
update_status_service.rb Fix edits with no actual changes being allowed (#17843) 2022-03-26 00:38:44 +01:00
verify_link_service.rb Allow VerifyLinkService to accept backlinks with differing case (#18320) 2022-05-06 00:41:42 +02:00
vote_service.rb Fix empty votes arbitrarily increasing voters count in polls (#18526) 2022-05-26 22:06:10 +02:00
webhook_service.rb Add administrative webhooks (#18510) 2022-06-09 21:57:36 +02:00