gearheads
/
mastodon
Archived
2
0
Fork 0
Commit Graph

345 Commits (d15a9df6fefd515e8c655b1a03f08d2a95675d97)

Author SHA1 Message Date
Claire 0c9eac80d8
Fix unbounded recursion in post discovery ()
* Add a limit to how many posts can get fetched as a result of a single request

* Add tests

* Always pass `request_id` when processing `Announce` activities

---------

Co-authored-by: nametoolong <nametoolong@users.noreply.github.com>
2023-02-10 22:16:37 +01:00
Nick Schonning cec005068f
Apply Rubocop Performance/RedundantBlockCall () 2023-02-08 00:58:18 +01:00
Nick Schonning ed570050c6
Autofix Rails/EagerEvaluationLogMessage ()
* Autofix Rails/EagerEvaluationLogMessage

* Update spec for debug block syntax
2023-02-07 03:44:36 +01:00
Claire 9edefc779f
Fix `UserCleanupScheduler` crash when an unconfirmed account has a moderation note ()
* Fix `UserCleanupScheduler` crash when an unconfirmed account has a moderation note

* Add tests
2023-02-07 01:14:44 +01:00
luzpaz 596923da4a
Fix typos in source documentation ()
Fixed 2 source comment/documentation typos
2022-12-15 15:57:26 +01:00
Eugen Rochko f8e8e622e5
Change incoming activity processing to happen in `ingress` queue () 2022-11-10 14:21:51 +01:00
Claire 5333447be0
Change account deletion requests to spread out over time () 2022-11-09 14:08:19 +01:00
Eugen Rochko e98833748e
Fix being able to spoof link verification ()
- Change verification to happen in `default` queue
- Change verification worker to only be queued if there's something to do
- Add `link` tags from metadata fields to page header of profiles
2022-11-09 08:24:21 +01:00
Claire 5925a31b78
Fix followers count not being updated when migrating follows ()
Fixes 
2022-11-07 15:38:55 +01:00
Eugen Rochko d0c9ac3919
Fix indexing scheduler trying to index when Elasticsearch is disabled ()
Fix 
2022-11-05 22:31:52 +01:00
Eugen Rochko 5f9e47be34
Add caching for payload serialization during fan-out () 2022-11-04 13:21:06 +01:00
Claire 6804228fdf
Fix N+1 on mentions in PushUpdateWorker () 2022-11-01 16:03:51 +01:00
Claire 03d9618595
Fix UserCleanupScheduler crash when an unconfirmed account has a moderation note ()
Fixes 
2022-11-01 12:59:23 +01:00
Eugen Rochko bf0ab3e0fa
Fix vacuum scheduler missing lock, locks never expiring ()
Remove vacuuming of orphaned preview cards
2022-10-26 12:10:48 +02:00
Takeshi Umeda 74ead7d106
Change featured tag updates to add/remove activity ()
* Change featured tag updates to add/remove activity

* Fix to check for the existence of feature tag

* Rename service and worker

* Merge AddHashtagSerializer with AddSerializer

* Undo removal of sidekiq_options
2022-10-22 18:30:55 +02:00
Takeshi Umeda b0e3f0312c
Add synchronization of remote featured tags ()
* Add LIMIT of featured tag to instance API response

* Add featured_tags_collection_url to Account

* Add synchronization of remote featured tags

* Deliver update activity when updating featured tag

* Remove featured_tags_collection_url

* Revert "Add featured_tags_collection_url to Account"

This reverts commit cff349fc27b104ded2df6bb5665132dc24dab09c.

* Add hashtag sync from featured collections

* Fix tag name normalize

* Add target option to fetch featured collection

* Refactor fetch_featured_tags_collection_service

* Add LIMIT of featured tag to v1/instance API response
2022-10-20 09:15:52 +02:00
Eugen Rochko 5c9abdeff1
Add retention policy for cached content and media () 2022-09-27 03:08:19 +02:00
Claire 8cf7006d4e
Refactor ActivityPub handling to prepare for non-Account actors ()
* Move ActivityPub::FetchRemoteAccountService to ActivityPub::FetchRemoteActorService

ActivityPub::FetchRemoteAccountService is kept as a wrapper for when the actor is
specifically required to be an Account

* Refactor SignatureVerification to allow non-Account actors

* fixup! Move ActivityPub::FetchRemoteAccountService to ActivityPub::FetchRemoteActorService

* Refactor ActivityPub::FetchRemoteKeyService to potentially return non-Account actors

* Refactor inbound ActivityPub payload processing to accept non-Account actors

* Refactor inbound ActivityPub processing to accept activities relayed through non-Account

* Refactor how Account key URIs are built

* Refactor Request and drop unused key_id_format parameter

* Rename ActivityPub::Dereferencer `signature_account` to `signature_actor`
2022-09-21 22:45:57 +02:00
Eugen Rochko 50948b46aa
Add ability to filter followed accounts' posts by language () 2022-09-20 23:51:21 +02:00
Eugen Rochko 0b3e4fd5de
Remove digest e-mails ()
* Remove digest e-mails

* Remove digest-related code
2022-08-25 23:38:22 +02:00
Eugen Rochko c3f0621a59
Add ability to follow hashtags () 2022-07-17 13:49:29 +02:00
Jeremy Kescher 25e076505e
ip_cleanup_scheduler: Make IP and session retention configurable () 2022-07-07 03:14:28 +02:00
Eugen Rochko a2871cd747
Add administrative webhooks ()
* Add administrative webhooks

* Fix error when webhook is deleted before delivery worker runs
2022-06-09 21:57:36 +02:00
Jeong Arm fed7380e9f
Prevent use locale with empty string ()
Somehow user's locale could be an empty string, And empty string itself
are treated as true value.
2022-05-28 14:32:08 +02:00
Eugen Rochko 679b7158e3
Change search indexing to use batches to minimize resource usage () 2022-05-18 23:29:14 +02:00
Eugen Rochko 6cf57c6765
Refactor how Redis locks are created ()
* Refactor how Redis locks are created

* Fix autorelease duration on account deletion lock
2022-05-13 00:02:35 +02:00
Eugen Rochko f6d35ed57d
Remove IP matching from e-mail domain blocks ()
Clear out e-mail domain blocks created from automatically resolved DNS records
2022-04-29 23:27:03 +02:00
Eugen Rochko 3917353645
Fix single Redis connection being used across all threads ()
* Fix single Redis connection being used across all Sidekiq threads

* Fix tests
2022-04-28 17:47:34 +02:00
Jeong Arm 3349cbeb3e
Fix clean_discarded_statuses () 2022-03-19 09:24:08 +01:00
Eugen Rochko bd53dd5210
Change design of federation pages in admin UI ()
* Change design of federation pages in admin UI

* Fix query performance in instance media attachments measure

* Fix reblogs being included in instance languages dimension
2022-03-09 08:52:32 +01:00
Eugen Rochko 2ea754b861
Fix duplicate notifications being possible after poll expiration () 2022-03-04 01:06:33 +01:00
Eugen Rochko 50ea54b3ed
Change authorized applications page ()
* Change authorized applications page

* Hide revoke button for superapps and suspended accounts

* Clean up db/schema.rb
2022-03-01 16:48:58 +01:00
Claire 3d60708508
Fix crash in EmailDomainBlockRefreshScheduler () 2022-02-26 16:28:28 +01:00
Eugen Rochko 27965ce5ed
Add trending statuses ()
* Add trending statuses

* Fix dangling items with stale scores in localized sets

* Various fixes and improvements

- Change approve_all/reject_all to approve_accounts/reject_accounts
- Change Trends::Query methods to not mutate the original query
- Change Trends::Query#skip to offset
- Change follow recommendations to be refreshed in a transaction

* Add tests for trending statuses filtering behaviour

* Fix not applying filtering scope in controller
2022-02-25 00:34:14 +01:00
Eugen Rochko a29a982eaa
Change e-mail domain blocks to block IPs dynamically ()
* Change e-mail domain blocks to block IPs dynamically

* Update app/workers/scheduler/email_domain_block_refresh_scheduler.rb

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>

* Update app/workers/scheduler/email_domain_block_refresh_scheduler.rb

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>

Co-authored-by: Yamagishi Kazutoshi <ykzts@desire.sh>
2022-02-24 17:28:23 +01:00
Eugen Rochko 8f03b7a2fb
Add notifications when a reblogged status has been updated ()
* Add notifications when a reblogged status has been updated

* Change wording to say "edit" instead of "update" and add missing controls

* Replace previous update notifications with the most up-to-date one
2022-02-11 22:20:19 +01:00
Claire da91b18a8b
Fix NoMethodError in StatusUpdateDistributionWorker ()
* Add tests

* Fix NoMethodError in StatusUpdateDistributionWorker

* Fix tests
2022-02-10 14:57:10 +01:00
Eugen Rochko 63002cde03
Add editing for published statuses ()
* Add editing for published statuses

* Fix change of multiple-choice boolean in poll not resetting votes

* Remove the ability to update existing media attachments for now
2022-02-10 00:15:30 +01:00
Eugen Rochko 35850f8195
Fix localization of cold-start follow recommendations () 2022-02-08 01:53:49 +01:00
Claire 52c1b86964
Fix Ruby 2.5 incompatibility () 2022-02-07 19:57:06 +01:00
Claire 0d2cf3cd4a
Fix errors when multiple Delete are received for a given actor () 2022-02-07 13:14:48 +01:00
Claire 03d59340da
Fix Sidekiq warnings about JSON serialization ()
* Fix Sidekiq warnings about JSON serialization

This occurs on every symbol argument we pass, and every symbol key in hashes,
because Sidekiq expects strings instead.

See https://github.com/mperham/sidekiq/pull/5071

We do not need to change how workers parse their arguments because this has
not changed and we were already converting to symbols adequately or using
`with_indifferent_access`.

* Set Sidekiq to raise on unsafe arguments in test mode

In order to more easily catch issues that would produce warnings in production
code.
2022-01-28 00:43:56 +01:00
Eugen Rochko 9eb775a9d1
Fix error when using raw distribution worker ()
Regression from 
2022-01-19 23:05:59 +01:00
Eugen Rochko 1060666c58
Add support for editing for published statuses ()
* Add support for editing for published statuses

* Fix references to stripped-out code

* Various fixes and improvements

* Further fixes and improvements

* Fix updates being potentially sent to unauthorized recipients

* Various fixes and improvements

* Fix wrong words in test

* Fix notifying accounts that were tagged but were not in the audience

* Fix mistake
2022-01-19 22:37:27 +01:00
Eugen Rochko 14f436c457
Add notifications for statuses deleted by moderators () 2022-01-17 09:41:33 +01:00
Claire d5c9feb7b7
Add support for private pinned posts ()
* Add support for private pinned toots

* Allow local user to pin private toots

* Change wording to avoid "direct message"
2022-01-17 00:49:55 +01:00
Eugen Rochko 8e84ebf0cb
Remove IP tracking columns from users table () 2022-01-16 13:23:50 +01:00
Claire 7f803c41e2
Add ability to purge undeliverable domains from admin interface ()
* Add ability to purge undeliverable domains from admin interface

* Add tests
2021-12-17 23:01:21 +01:00
Takeshi Umeda bda8e4f815
Fix follow recommendation biased towards older accounts () 2021-12-13 23:21:14 +01:00
Eugen Rochko 6e50134a42
Add trending links ()
* Add trending links

* Add overriding specific links trendability

* Add link type to preview cards and only trend articles

Change trends review notifications from being sent every 5 minutes to being sent every 2 hours

Change threshold from 5 unique accounts to 15 unique accounts

* Fix tests
2021-11-25 13:07:38 +01:00