Commit graph

96 commits

Author SHA1 Message Date
KMY(雪あすか)
bea82f2279 Fix: #284 FetchInstanceInfoWorkerが原因でSidekiqのJobが詰まる問題 (#342)
* Fix: #284 `FetchInstanceInfoWorker`が原因でSidekiqのJobが詰まる問題

* Fix: InstanceInfoを取得するタイミング

* Fix test

* Fix test

* Fix: HTTPコード

* 調整
2023-12-12 09:52:37 +09:00
KMY(雪あすか)
76f2f2ed0c
Add: #87 フォロワーのみに購読を許可する設定 (#239)
* Wip: マイグレーション、設定など一式

* Fix test

* Fix test

* Fix: マスター用の設定を他サーバーに送信しないよう修正

* DTL、外部サーバーの情報受け入れのテストを追加

* スペルミスを修正

* Web画面に設定項目追加

* 既存の`master_settings`を上書きしないよう修正
2023-11-08 17:51:36 +09:00
KMY
0a91a3165d Fix: #78 検索許可のas:Limitedkmyblue:Limitedに変更 2023-10-10 21:43:49 +09:00
KMY
2f21aa5193 #15 Add misskey fork indexable support 2023-09-25 19:39:05 +09:00
KMY
a8f02d0245 Remove firefish as misskey fork #16 2023-09-24 12:29:52 +09:00
KMY
adfa3524fc Merge remote-tracking branch 'parent/main' into kb_migration 2023-08-24 09:58:54 +09:00
Robert R George
cf6f70799b
Add support for federating memorial attribute (#26583) 2023-08-23 08:27:24 +02:00
KMY
993bced956 Merge commit '90ec88d58b' into kb_migration 2023-08-15 18:20:19 +09:00
Claire
90ec88d58b
Add support for indexable attribute on remote actors (#26485)
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com>
2023-08-14 18:54:51 +02:00
KMY
15d0117b3b Add fetch_instance_info_worker_spec 2023-08-11 14:03:04 +09:00
KMY
114bd48c4b Add searchability account/status.compute_searchability test 2023-08-08 18:28:58 +09:00
KMY
c29ba8649d Remove checking detect_invalid_subscription when process misskey posts 2023-08-07 22:06:41 +09:00
KMY
ae8fb95cfc Fix activitypub account default searchability 2023-08-05 09:38:06 +09:00
KMY
cd94790633 Fix find_by method 2023-08-05 09:15:05 +09:00
KMY
d29b71bfd9 Add instance info support 2023-08-05 09:10:55 +09:00
KMY
176124954e Fix activitypub account default searchability 2023-08-04 15:21:10 +09:00
KMY
5da511ad8b Fix account bio tag text 2023-08-04 14:59:29 +09:00
KMY
753ef0f8e0 Add misskey searchability support 2023-08-04 13:54:55 +09:00
KMY
bfdc7c41f2 Block account bio with ng_words 2023-07-31 10:00:10 +09:00
KMY
152b8eb4e6 Merge commit '42698b4c5c' into kb_migration 2023-07-21 18:40:40 +09:00
Claire
1e3b19230a
Add stricter protocol fields validation for accounts (#25937) 2023-07-20 18:23:48 +02:00
KMY
f18fa97f0c Merge commit '71db616fed' into kb_migration 2023-07-14 12:43:55 +09:00
Claire
999c343946
Fix remote accounts being possibly persisted to database with incomplete protocol values (#25886) 2023-07-10 18:42:19 +02:00
KMY
32e18efd19 Fix account searchability 2023-05-25 14:57:25 +09:00
KMY
629594ffc3 Add custom_emoji sensitive,license from account name or updated status 2023-05-23 08:40:19 +09:00
KMY
9818f6a0e1 Add fedibird hide followers count support 2023-05-14 12:44:41 +09:00
KMY
32f0e619f0 Merge commit 'f877aa9d70' into kb_migration 2023-05-07 14:50:12 +09:00
Matt Jankowski
f1c1dd0118
Rename with_lock to with_redis_lock to avoid confusion with ActiveRecord's method (#24741) 2023-05-02 18:16:07 +02:00
KMY
3a1a6ba39e Merge commit '15fd712464' into kb_migration 2023-05-01 15:05:34 +09:00
KMY
2fef21664b Add antenna and bio-searchability support 2023-04-24 10:06:25 +09:00
KMY
b18268a0a0 Wip: Fix error 2023-04-06 20:07:53 +09:00
KMY
78b7dc258f Fix account searchability nil error 2023-04-06 15:09:24 +09:00
KMY
2420259db1 Wip: change searchability 2023-04-06 13:27:27 +09:00
KMY
af20b1d2aa Add searchability support 2023-04-06 04:27:52 +09:00
Nick Schonning
717683d1c3
Autofix Rubocop remaining Layout rules (#23679) 2023-02-20 06:58:28 +01:00
Claire
c8849d6cee
Fix unbounded recursion in account discovery (#22025)
* Fix trying to fetch posts from other users when fetching featured posts

* Rate-limit discovery of new subdomains

* Put a limit on recursively discovering new accounts
2022-12-07 00:15:24 +01:00
Eugen Rochko
e98833748e
Fix being able to spoof link verification (#20217)
- 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
Takeshi Umeda
b0e3f0312c
Add synchronization of remote featured tags (#19380)
* 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
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
Jeong Arm
6aa83b13ba
Properly delete remote account's avatar/header when fetch/update (#18973) 2022-08-15 20:32:21 +02:00
Eugen Rochko
6cf57c6765
Refactor how Redis locks are created (#18400)
* Refactor how Redis locks are created

* Fix autorelease duration on account deletion lock
2022-05-13 00:02:35 +02:00
Eugen Rochko
3917353645
Fix single Redis connection being used across all threads (#18135)
* Fix single Redis connection being used across all Sidekiq threads

* Fix tests
2022-04-28 17:47:34 +02:00
Eugen Rochko
7de0ee7aba
Remove Keybase integration (#17045) 2021-11-26 05:58:18 +01:00
Claire
9a19227f17
Fix some RedisLocks auto-releasing too fast (#16276)
* Fix Delete and Create-related locks expiring too fast

Fixes #16238

By default, RedisLock expires after 10 seconds, which may not be enough to
process statuses, especially when those have attached media files.

This commit extends those 10 seconds to 15 minutes, which should be plenty
enough to handle any status, while being short enough to not waste many
sidekiq job retries in the exceedingly rare case in which a sidekiq process
would crash when processing a `Create` or `Delete`.

* Fix other RedisLock autorelease durations

Fixes #15645

- things that only perform a few simple database queries (e.g. finding and
  saving a record) have been left unchanged, so they'll still use the default
  10s duration
- things that perform significantly more complex database queries have been
  changed to a 5 minutes timeout
- things that perform multiple HTTP queries have been changed to a 15 minutes
  timeout
2021-05-19 23:52:08 +02:00
Takeshi Umeda
c403c3695b
Fix to be able to redownload avatar and header (#16190)
* Fix to reset if header and avatar download fails

* Add RedownloadAvatarWorker and RedownloadHeaderWorker
2021-05-11 14:19:22 +02:00
Eugen Rochko
2c77d97e0d
Add joined date to profiles in web UI (#16169) 2021-05-07 14:33:19 +02:00
ThibG
a60d9335d8
Fix resolving accounts sometimes creating duplicate records for a given AP id (#15364)
* Fix ResolveAccountService accepting mismatching acct: URI

* Set attributes that should be updated regardless of suspension

* Fix key fetching

* Automatically merge remote accounts with duplicate `uri`

* Add tests

* Add "tootctl accounts fix-duplicates"

Finds duplicate accounts sharing a same ActivityPub `id`, re-fetch them and
merge them under the canonical `acct:` URI.

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
2020-12-18 23:26:26 +01:00
Eugen Rochko
3134691948
Add support for reversible suspensions through ActivityPub (#14989) 2020-11-08 00:28:39 +01:00
ThibG
fb586584f2
Fix account processing failing because of large collections (#15027)
Fixes #15025
2020-10-23 14:21:31 +02:00
Eugen Rochko
64aac30733
Add customizable thumbnails for audio and video attachments (#14145)
- Change audio files to not be stripped of metadata
- Automatically extract cover art from audio if it exists
- Add `thumbnail` parameter to `POST /api/v1/media`, `POST /api/v2/media` and `PUT /api/v1/media/:id`
- Add `icon` to represent it in attachments in ActivityPub
- Fix `preview_url` containing URL of missing missing image when there is no thumbnail instead of null
- Fix duration of audio not being displayed on public pages until the file is loaded
2020-06-29 13:56:55 +02:00