Commit graph

1159 commits

Author SHA1 Message Date
piuvas
1af6f8c5da
backend configuring 2024-09-22 14:47:04 -03:00
dakkar
8a982c61c0 move rate-limit-exceeded error reporting, earlier
a rate-limit-exceeded error has `kind:'client'`, so the branch that
adds the `Retry-After` would never get taken
2024-09-20 09:16:44 +01:00
dakkar
3f6beb97d2 copy RateLimiterService from MisskeyIO
This implementation allocates fewer Promises, might help with the
memory leaks
2024-09-20 08:35:45 +01:00
Marie
62a81bed9b
upd: change sorting of supporters 2024-09-16 19:02:06 +02:00
Marie
2e18359dad chore: lint 2024-09-15 18:17:35 +00:00
Marie
b7815df134
upd: fetch sponsors from OC 2024-09-15 20:04:29 +02:00
dakkar
0bcc739551 remove duplicate line 2024-08-30 12:15:52 +01:00
dakkar
6151099f5b Merge remote-tracking branch 'misskey/master' into feature/misskey-2024.8 2024-08-30 12:08:31 +01:00
dakkar
9cf40ef452 merge: thunk the min/max promises (!603)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/603

Approved-by: Marie <github@yuugi.dev>
Approved-by: fEmber <acomputerdog@gmail.com>
2024-08-24 20:53:08 +00:00
dakkar
06da059dbf log deletion of user files from admin -- fixes #631 2024-08-24 20:53:58 +01:00
dakkar
17b6c1b371 tell the linter to shut up, this time 2024-08-22 13:55:22 +01:00
dakkar
1b5bedc1d0 thunk the min/max promises
this prevents generating promises we don't use, which would get logged
by the node vm and spam the logs
2024-08-19 20:38:43 +01:00
dakkar
f5560783ea merge: misskey 2024.7 (!583)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/583

Approved-by: Marie <github@yuugi.dev>
Approved-by: Julia Johannesen <julia@insertdomain.name>
2024-08-18 18:32:27 +00:00
dakkar
77144b058c make the cap of activeRateLimitRequests match the rate limit
It's trivial to have more than 128 requests in flight: open a busy
timeline, scroll a bit down, wait for many notes to arrive, scroll to
the top. The frontend will send "subscribe to note" messages for each
new note that it accumulated, all at once. We don't want to shut down
the connection in those common cases!
2024-08-18 17:57:51 +01:00
dakkar
caa0fecdc9 relax websocket rate limits
* the frontend opens 2 websockets at startup (I'm not completely clear
  why), and that `minInterval:1sec` was breaking the second connection
* as the comment says, "catching up" generates many noteSubscribe
  messages
2024-08-18 15:23:45 +01:00
dakkar
a58df8ac7c Merge branch 'develop' into feature/misskey-2024.07 2024-08-18 13:13:23 +01:00
Hazel K
9ce44b24b8
fix(backend): memory leak in memory caches (#14363)
* encapsulate `MemoryKVCache<T>`

* remove infinity caches

* encapsulate other caches

* add missing awaits to internally synchronize caches

* implement pull-through caching

* tune cache lifetimes

* optimize cache GC by stopping early

* summarize changes in CHANGELOG.md

* Fix timeout comments

Co-authored-by: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com>

* add comments about awaiting the redis write

---------

Co-authored-by: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com>
2024-08-18 13:34:01 +09:00
Julia Johannesen
3dd993a76a
Add IP and user ID to connection close message 2024-08-17 14:27:43 -04:00
Julia Johannesen
c5f7dcbb7e
Come up with better limits 2024-08-17 14:17:58 -04:00
Julia Johannesen
9c1c1e9f09
Fix logging stuff 2024-08-17 13:08:46 -04:00
syuilo
76bbc10aa1 fix(backend): 無制限にストリーミングのチャンネルに接続できる問題を修正 2024-08-17 17:54:04 +01:00
zyoshoka
fd744f44c1
enhance(backend): ページ、ギャラリー、Playのモデレーション強化 (#13523)
* enhance(backend): Page、ギャラリー、Playのモデレーション強化

* Update CHANGELOG.md

* fix: update misskey-js

* refactor(frontend): use `MkA`

* Update CHANGELOG.md

* fix(i18n): Page -> ページ
2024-08-17 15:01:08 +09:00
かっこかり
06684fe49b
fix(backend): ベースロールのポリシー変更時モデレーションログが残るように (#14418)
* fix(policies): ベースロールのポリシー変更時モデレーションログが残るように (MisskeyIO#700)

(cherry picked from commit 80389a914049f6f26237fde8da7d4e1bd41452fc)

* Update Changelog

---------

Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>
2024-08-17 12:07:00 +09:00
syuilo
ef950a345b
suspend周りの改修 (#14409)
* enhance(backend): 凍結されたアカウントのフォローリクエストを表示しないように

* Update CHANGELOG.md

* wip

* Update gen-spec.ts

* Update packages/backend/src/server/api/endpoints/admin/suspend-user.ts

Co-authored-by: Kisaragi <48310258+KisaragiEffective@users.noreply.github.com>

* owa-

* revert misskey-js related changes (#14414)

---------

Co-authored-by: Kisaragi <48310258+KisaragiEffective@users.noreply.github.com>
Co-authored-by: anatawa12 <anatawa12@icloud.com>
2024-08-17 09:57:28 +09:00
syuilo
d3cdc08802 fix(backend): 無制限にストリーミングのチャンネルに接続できる問題を修正 2024-08-17 09:30:03 +09:00
Julia Johannesen
6d3f9503ed
Limit number of rate limit requests 2024-08-16 17:13:20 -04:00
dakkar
4cd44130e0 use the correct remote address
we're doing the same thing that Fastify does in the non-streaming
ServerService
2024-08-16 18:00:50 +01:00
かっこかり
a8810af8d9
fix(backend): リバーシの設定変更が反映されないのを修正 (#14404)
* fix(backend): リバーシの設定変更が反映されないのを修正

* Update Changelog

* add bindthis
2024-08-16 21:02:12 +09:00
dakkar
311a31da58 rough rate limiting for websockets 2024-08-15 11:35:51 +01:00
syuilo
86dd4abadc Revert "enhance(backend): 凍結されたアカウントのフォローリクエストを表示しないように"
This reverts commit cd210001e6.
2024-08-14 20:29:06 +09:00
syuilo
cd210001e6 enhance(backend): 凍結されたアカウントのフォローリクエストを表示しないように 2024-08-14 18:08:51 +09:00
かっこかり
0aaf74ee22
fix(backend): InstanceEntityService.packMany に me が渡っていないのを修正 (#14360)
* fix: pass current user into `InstanceEntityService.packMany`

(cherry picked from commit 858ba18876)

* Update Changelog

* origin

* Update Changelog

---------

Co-authored-by: Hazel K <acomputerdog@gmail.com>
2024-08-11 11:28:07 +09:00
anatawa12
f50941389d
fix: readAllNotifications message not working (#14374)
* refactor: add and use isJsonObject

* fix: readNotification message without body is not working

* docs(changelog): WSの`readAllNotifications` メッセージが `body` を持たない場合に動作しない問題

* Update CHANGELOG.md

Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>

---------

Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
2024-08-09 16:04:41 +09:00
Daiki Mizukami
0d508db8a7
fix(backend): check visibility of following/followers of remote users / feat: moderators can see following/followers of all users (#14375)
* fix(backend): check visibility of following/followers of remote users

Resolves https://github.com/misskey-dev/misskey/issues/13362.

* test(backend): add tests for visibility of following/followers of remote users

* docs(changelog): update CHANGELOG.md

* feat: moderators can see following/followers of all users

* docs(changelog): update CHANGELOG.md

* refactor(backend): minor refactoring

`createPerson`と`if`の条件を統一するとともに、異常系の
処理をearly returnに追い出すための変更。

* feat(backend): moderators can see following/followers count of all users

As per https://github.com/misskey-dev/misskey/pull/14375#issuecomment-2275044908.
2024-08-09 12:10:51 +09:00
dakkar
94dceb9e15 Merge branch 'develop' into feature/misskey-2024.07 2024-08-06 17:51:51 +01:00
dakkar
4e7df7a5f2 merge: Remove infinite caches to prevent memory leak (!587)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/587

Closes #600 and #601

Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
Approved-by: Marie <marie@kaifa.ch>
2024-08-06 16:51:18 +00:00
dakkar
34c1e9ea2b Merge branch 'develop' into feature/misskey-2024.07
fixing conflicts in `package.json`
2024-08-06 10:35:14 +01:00
dakkar
712af44de4 merge: don't send real-time updates of replies to blocked users #457 #573 (!566)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/566

Approved-by: Tess K <me@thvxl.se>
Approved-by: fEmber <acomputerdog@gmail.com>
2024-08-06 09:26:40 +00:00
Hazel K
bc236a4bd2 remove infinity caches 2024-08-03 13:42:23 -04:00
dakkar
d9c23e92fd merge: fix: pass current user into InstanceEntityService.packMany (!582)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/582

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <marie@kaifa.ch>
2024-08-02 18:40:53 +00:00
dakkar
98c7b95ecc copy from global-timeline to bubble-timeline 2024-08-02 13:05:53 +01:00
dakkar
cfa9b852df Merge remote-tracking branch 'misskey/master' into feature/misskey-2024.07 2024-08-02 12:25:58 +01:00
Hazel K
858ba18876 fix: pass current user into InstanceEntityService.packMany 2024-08-01 08:24:50 -04:00
anatawa12
5c42a0e439
feat: media silence (#13842)
* feat: media silence

* fix: lint

* feat: deny creating custom emoji reaction and using custom emoji from media silenced hosts

* chore: メディアサイレンスの説明にカスタム絵文字の話を追加

* Update locales/ja-JP.yml

Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>

* chore: update index.d.ts

* docs(changelog): update changelog

---------

Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
2024-07-30 19:47:45 +09:00
anatawa12
8f40f932e4
自分のフォロワー限定投稿に対するリプライがホームタイムラインで見えないことが有る問題を修正 (#13835)
* fix: reply to my follower notes are not shown on the home timeline

* fix: reply to follower note by non-following is on social timeline

* docs: changelog

* test: add endpoint test for changes

* test(e2e): 自分のfollowers投稿に対するリプライが流れる

* test(e2e/streaming): 自分のfollowers投稿に対するリプライが流れる

* test(e2e/streaming): フォローしていないユーザによるフォロワー限定投稿に対するリプライがソーシャルタイムラインで表示されることがある問題

* test(e2e/timelines): try fixing typecheck error

---------

Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
2024-07-30 19:44:08 +09:00
Sayamame-beans
d0b7c74fd1
検索からハッシュタグのページが開けるように、users/searchに@から始まる文字列が与えられた際の処理を修正 等 (#13858)
* enhance(frontend): 検索からハッシュタグのページを開けるように

* fix(frontend): 照会で入力が`#`のみの場合は`/tags/`に遷移しないように

* docs(changelog): update changelog

* enhance(frontend): ユーザー検索からもハッシュタグのページを開けるように

* docs(changelog): update changelog

* enhance(frontend): 検索範囲等が指定されている時は照会/ハッシュタグページを開かないように

* enhance(frontend): 検索内容に空白が含まれている場合は照会/ハッシュタグページを開かないように

* docs(changelog): update changelog

* Revert "enhance(frontend): 検索範囲等が指定されている時は照会/ハッシュタグページを開かないように"

This reverts commit f84eecea964b90e9b115eac19ed6f19a603a6bbc.

* enhance(frontend): 検索から照会/ハッシュタグページを開くかどうか確認するように

* docs(changelog): update changelog

* chore: fix lint

* docs(changelog): update changelog insertion position

* enhance(frontend): 検索から`@user@host`の形式で照会出来るように

* fix(frontend): 照会で入力が`@`のみの場合に`/@`に遷移しないように

* fix(backend): `users/search`において`@`から始まるqueryに対する処理が正しくなかった問題を修正

* docs(changelog): update changelog

* chore(backend): fix lint error

* fix(backend): more improvements for users/search when query startswith `@`

* chore: unify common conditions

* docs(changelog): refine changelog

* chore(backend): fix lint error

* MkInputをpreventに対応させ、enterの意図せぬ伝搬を防ぐ

* chore(frontend/search.user): use .prevent to prevent the propagation of enter instead of setTimeout

---------

Co-authored-by: samunohito <46447427+samunohito@users.noreply.github.com>
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
Co-authored-by: taichanne30 <dev@taichan.site>
2024-07-30 19:18:43 +09:00
かっこかり
de3ddb5b44
enhance: 管理画面でアーカイブにしたお知らせを表示・編集できるように (#14286)
* enhance: 管理画面でアーカイブにしたお知らせを表示できるように

* Update Changelog
2024-07-30 13:02:03 +09:00
dakkar
ad9848acfa merge: rate limit all password checks - fixes #540 (!568)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/568

Closes #540

Approved-by: Marie <marie@kaifa.ch>
Approved-by: Tess K <me@thvxl.se>
2024-07-29 10:47:33 +00:00
syuilo
337b42bcb1 revert 5f88d56d96
バグがある(かつすぐに修正できそうにない) & まだレビュー途中で意図せずマージされたため
2024-07-20 21:33:20 +09:00
dakkar
01b10d0d3b fix drive search query
`.andWhere` does not add parentheses, so that `or` changed the whole
meaning of the query
2024-07-19 14:32:14 +01:00
anatawa12
10ce7bf3c4
kill any from streaming API Implementation (#14251)
* chore: add JsonValue type

* refactor: kill any from Connection.ts

* refactor: fix StreamEventEmitter contains undefined instead of null

* refactor: kill any from channels

* docs(changelog): Fix: Steaming APIが不正なデータを受けた場合の動作が不安定である問題

* fix license header

* fix lints
2024-07-18 20:04:23 +09:00
かっこかり
de166a8ed4
fix(backend): リノートミュートがキャッシュが切れるまで効かない問題を修正 (#14242)
* Fix: RenoteMuteがキャッシュが切れるまで効かない問題を修正

(cherry picked from commit e9601029b52e0ad43d9131b555b614e56c84ebc1)

* update changelog

* 🎨

* remove unused import

* 消したときもキャッシュを飛ばすように

* lint

---------

Co-authored-by: mattyatea <mattyacocacora0@gmail.com>
2024-07-18 08:55:36 +09:00
anatawa12
cfdad45092
fix: ソーシャルタイムラインにローカルタイムラインに表示される自分へのリプライが表示されない問題を修正 (#13978)
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
2024-07-18 02:06:31 +09:00
tamaina
5f88d56d96
perf(federation): Ed25519署名に対応する (#13464)
* 1. ed25519キーペアを発行・Personとして公開鍵を送受信

* validate additionalPublicKeys

* getAuthUserFromApIdはmainを選ぶ

* ✌️

* fix

* signatureAlgorithm

* set publicKeyCache lifetime

* refresh

* httpMessageSignatureAcceptable

* ED25519_SIGNED_ALGORITHM

* ED25519_PUBLIC_KEY_SIGNATURE_ALGORITHM

* remove sign additionalPublicKeys signature requirements

* httpMessageSignaturesSupported

* httpMessageSignaturesImplementationLevel

* httpMessageSignaturesImplementationLevel: '01'

* perf(federation): Use hint for getAuthUserFromApId (#13470)

* Hint for getAuthUserFromApId

* とどのつまりこれでいいのか?

* use @misskey-dev/node-http-message-signatures

* fix

* signedPost, signedGet

* ap-request.tsを復活させる

* remove digest prerender

* fix test?

* fix test

* add httpMessageSignaturesImplementationLevel to FederationInstance

* ManyToOne

* fetchPersonWithRenewal

* exactKey

* ✌️

* use const

* use gen-key-pair fn. from  '@misskey-dev/node-http-message-signatures'

* update node-http-message-signatures

* fix

* @misskey-dev/node-http-message-signatures@0.0.0-alpha.11

* getAuthUserFromApIdでupdatePersonの頻度を増やす

* cacheRaw.date

* use requiredInputs
https://github.com/misskey-dev/misskey/pull/13464#discussion_r1509964359

* update @misskey-dev/node-http-message-signatures

* clean up

* err msg

* fix(backend): fetchInstanceMetadataのLockが永遠に解除されない問題を修正

Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>

* fix httpMessageSignaturesImplementationLevel validation

* fix test

* fix

* comment

* comment

* improve test

* fix

* use Promise.all in genRSAAndEd25519KeyPair

* refreshAndprepareEd25519KeyPair

* refreshAndfindKey

* commetn

* refactor public keys add

* digestプリレンダを復活させる

RFC実装時にどうするか考える

* fix, async

* fix

* !== true

* use save

* Deliver update person when new key generated (not tested)
https://github.com/misskey-dev/misskey/pull/13464#issuecomment-1977049061

* 循環参照で落ちるのを解消?

* fix?

* Revert "fix?"

This reverts commit 0082f6f8e8c5d5febd14933ba9a1ac643f70ca92.

* a

* logger

* log

* change logger

* 秘密鍵の変更は、フラグではなく鍵を引き回すようにする

* addAllKnowingSharedInboxRecipe

* nanka meccha kaeta

* delivre

* キャッシュ有効チェックはロック取得前に行う

* @misskey-dev/node-http-message-signatures@0.0.3

* PrivateKeyPem

* getLocalUserPrivateKey

* fix test

* if

* fix ap-request

* update node-http-message-signatures

* fix type error

* update package

* fix type

* update package

* retry no key

* @misskey-dev/node-http-message-signatures@0.0.8

* fix type error

* log keyid

* logger

* db-resolver

* JSON.stringify

* HTTP Signatureがなかったり使えなかったりしそうな場合にLD Signatureを活用するように

* inbox-delayed use actor if no signature

* ユーザーとキーの同一性チェックはhostの一致にする

* log signature parse err

* save array

* とりあえずtryで囲っておく

* fetchPersonWithRenewalでエラーが起きたら古いデータを返す

* use transactionalEntityManager

* fix spdx

* @misskey-dev/node-http-message-signatures@0.0.10

* add comment

* fix

* publicKeyに配列が入ってもいいようにする
https://github.com/misskey-dev/misskey/pull/13950

* define additionalPublicKeys

* fix

* merge fix

* refreshAndprepareEd25519KeyPair → refreshAndPrepareEd25519KeyPair

* remove gen-key-pair.ts

* defaultMaxListeners = 512

* Revert "defaultMaxListeners = 512"

This reverts commit f2c412c18057a9300540794ccbe4dfbf6d259ed6.

* genRSAAndEd25519KeyPairではキーを直列に生成する?

* maxConcurrency: 8

* maxConcurrency: 16

* maxConcurrency: 8

* Revert "genRSAAndEd25519KeyPairではキーを直列に生成する?"

This reverts commit d0aada55c1ed5aa98f18731ec82f3ac5eb5a6c16.

* maxWorkers: '90%'

* Revert "maxWorkers: '90%'"

This reverts commit 9e0a93f110456320d6485a871f014f7cdab29b33.

* e2e/timelines.tsで個々のテストに対するtimeoutを削除, maxConcurrency: 32

* better error handling of this.userPublickeysRepository.delete

* better comment

* set result to keypairEntityCache

* deliverJobConcurrency: 16, deliverJobPerSec: 1024, inboxJobConcurrency: 4

* inboxJobPerSec: 64

* delete request.headers['host'];

* fix

* // node-fetch will generate this for us. if we keep 'Host', it won't change with redirects!

* move delete host

* modify comment

* modify comment

* fix correct → collect

* refreshAndfindKey → refreshAndFindKey

* modify comment

* modify attachLdSignature

* getApId, InboxProcessorService

* TODO

* [skip ci] add CHANGELOG

---------

Co-authored-by: MeiMei <30769358+mei23@users.noreply.github.com>
Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>
2024-07-18 01:28:17 +09:00
KevinWh0
5e65b6d01d Merge develop into feature/search-drive-via-alt-text 2024-07-16 23:02:15 +02:00
KevinWh0
f97417cfca Add stuff talked about on MR 2024-07-16 22:06:38 +02:00
Sayamame-beans
4b9c60ad21
fix(backend): ユーザーのリアクション一覧でミュート/ブロックが機能していなかった問題を修正 (#14100)
* fix: mute/block was not considered on users/reactions

* docs(changelog): update changelog

* chore: Apply suggestion from code review

Co-authored-by: zyoshoka <107108195+zyoshoka@users.noreply.github.com>

---------

Co-authored-by: zyoshoka <107108195+zyoshoka@users.noreply.github.com>
2024-07-14 20:24:29 +09:00
Sayamame-beans
7afa593d11
Feat: ユーザーのアイコン/バナーの変更可否をロールで設定可能に (#14078)
* feat: implement role policy "canUpdateBioMedia"

* docs(changelog): update changelog

* docs(changelog): update changelog

* chore: regenerate misskey-js type definitions

* chore: Apply suggestion from code review

Co-authored-by: anatawa12 <anatawa12@icloud.com>

* chore: fix unnecessarily strict inequality check

* chore: policies should be gotten only once

---------

Co-authored-by: anatawa12 <anatawa12@icloud.com>
2024-07-14 09:31:05 +09:00
dakkar
9a9570ab62 mute users when blocking them - fixes #558
we already unfollow them, and make them unfollow us, so muting them is
a very sensible thing to want

since the mute is handled separately, users can un-mute the people
they block (same as they can re-follow them)
2024-07-13 10:53:40 +01:00
おさむのひと
6cd15275bb
fix: サジェストされるユーザのリストアップ方法を見直し (#14180)
* fix: サジェストされるユーザのリストアップ方法を見直し

* fix comment

* fix CHANGELOG.md

* ノートの無いユーザ(updatedAtが無いユーザ)は含めないらしい

* fix test
2024-07-12 21:14:09 +09:00
dakkar
cced87da7f rate limit all password checks - fixes #540
all of these endpoints require the caller to already be logged in, so
it's not really much of a security problem, but it's still safer to
limit any endpoints that can be used to guess the current password
2024-07-12 11:15:58 +01:00
かっこかり
600f16d625
fix(backend): api-docをScalarに変更 (#14152)
* fix(backend): api-docをScalarに変更

* Update Changelog
2024-07-09 21:57:19 +09:00
かっこかり
9ef6c4716c
fix(backend): 名前を空白文字列だけにできる問題を修正 (#14119)
* fix(backend): 名前を空白文字列だけにできる問題を修正

* Update Changelog

* fix test

* Unicodeを含める

* fix

* ユーザー名がUnicode制御文字とスペースのみで構成される場合はnullに

* Revert "ユーザー名がUnicode制御文字とスペースのみで構成される場合はnullに"

This reverts commit 6c752a69c0d3649072e7e4ed30025183bceb48f9.

* [ci skip] changelog typo
2024-07-07 14:19:00 +09:00
dakkar
f086bc23f5 don't send real-time updates of replies to blocked users
this is in line with the behaviour of a note's detailed view, which
does not show me replies from users who blocked me
2024-07-06 11:35:52 +01:00
Kisaragi
eafae79869
test(backend): goodbye, Lenna (#14111) 2024-07-02 14:29:44 +09:00
Leah
2ebdc36c7a Add search for files in drive 2024-06-28 16:27:28 +02:00
zyoshoka
961cb6c5ee
fix(backend): fix creating reactions bugs (#13901)
* fix(backend): add fallback for empty string when creating reaction

* fix(backend): prohibit reactions to Renote

* test(backend): add some tests for `notes/reactions/create` endpoint

* Update CHANGELOG.md

* lint

* Update CHANGELOG.md

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-06-22 19:49:38 +09:00
yupix
b50eb511b0
refactor: api/*/update系の必須キーを最低限に (#13824)
* refactor: clips/updateの必須キーをclipIdのみに

* refactor: admin/roles/update の必須キーをroleIdのみに

* feat: pages/update の必須キーをpageIdのみに

* refactor: gallery/posts/update の必須キーをpostidのみに

* feat: misskey-jsの型を更新

* feat: i/webhooks/updateの必須キーをwebhookIdのみに

* feat: admin/ad/updateの必須キーをidのみに

* feat: misskey-jsの型を更新

* chore: update CHANGELOG.md

* docs: update CHANGELOG.md

* fix: secretが更新できなくなる場合がある

Co-authored-by: zyoshoka <107108195+zyoshoka@users.noreply.github.com>

* Update packages/backend/src/server/api/endpoints/gallery/posts/update.ts

---------

Co-authored-by: zyoshoka <107108195+zyoshoka@users.noreply.github.com>
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-06-22 14:52:27 +09:00
syuilo
e88f08ad7d refactor 2024-06-21 13:31:02 +09:00
syuilo
bf33382082 refactor(backend): remove unnecessary isNotNull sugar 2024-06-21 13:03:51 +09:00
Ryu jongheon
d0ee0203e1
Fix(backend): Limit antenna/webhook/list to exact amount (#14036)
... not +1
* Update antennas/clips e2e test
2024-06-18 12:18:04 +09:00
dakkar
b525c5887f add copyright text to all our files 2024-06-15 11:36:55 +01:00
anatawa12
220e112c83
fix rate limit check never ends (#13994) 2024-06-15 08:42:13 +09:00
dakkar
b2cbd507fe Merge branch 'develop' into future-2024-05-31 2024-06-13 09:06:24 +01:00
Kisaragi
dc3629e732
feat(backend): report Retry-After if client hit rate limit (#13949)
* feat(backend): report `Retry-After` if client hit rate limit

* refactor(backend): fix lint error
2024-06-13 10:56:26 +09:00
dakkar
5c311e8a28 tweak the rate limit for notes/create
while fixing #467 #468, we changed the rate limit from 300/hour to
5/minute

some people felt it was too low: they often boost notes in quick
succession

so here's a different approach: back to 300/hour, but not more than
1/second; this is the same settings that `notes/delete` has, BTW
2024-06-12 17:06:33 +01:00
dakkar
5dc8c2827c Merge branch 'develop' into future-2024-05-31 2024-06-08 16:45:53 +01:00
おさむのひと
61fae45390
feat: 通報を受けた際にメールまたはWebhookで通知を送出出来るようにする (#13758)
* feat: 通報を受けた際にメールまたはWebhookで通知を送出出来るようにする

* モデログに対応&エンドポイントを単一オブジェクトでのサポートに変更(API経由で大量に作るシチュエーションもないと思うので)

* fix spdx

* fix migration

* fix migration

* fix models

* add e2e webhook

* tweak

* fix modlog

* fix bugs

* add tests and fix bugs

* add tests and fix bugs

* add tests

* fix path

* regenerate locale

* 混入除去

* 混入除去

* add abuseReportResolved

* fix pnpm-lock.yaml

* add abuseReportResolved test

* fix bugs

* fix ui

* add tests

* fix CHANGELOG.md

* add tests

* add RoleService.getModeratorIds tests

* WebhookServiceをUserとSystemに分割

* fix CHANGELOG.md

* fix test

* insertOneを使う用に

* fix

* regenerate locales

* revert version

* separate webhook job queue

* fix

* 🎨

* Update QueueProcessorService.ts

---------

Co-authored-by: osamu <46447427+sam-osamu@users.noreply.github.com>
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-06-08 15:34:19 +09:00
Porlam Nicla
c39de769ca 配信停止したインスタンス一覧が見れなくなる問題を修正 (#13945)
* 配信停止したインスタンス一覧が見れなくなる問題を修正

* Update CHANGELOG.md
2024-06-07 22:11:13 +01:00
dakkar
079abfd713 rate limit note/reply/boost creation more tightly
5/minute is the same as 300/hour on average, and still high enough
that it shouldn't be a problem for most people
2024-06-07 15:10:16 +01:00
Porlam Nicla
e0cf5b2402
配信停止したインスタンス一覧が見れなくなる問題を修正 (#13945)
* 配信停止したインスタンス一覧が見れなくなる問題を修正

* Update CHANGELOG.md
2024-06-07 14:46:46 +09:00
syuilo
8592716139 enhance(backend): improve sentry integration 2024-06-07 13:15:37 +09:00
syuilo
ab69e113f4 enhance(backend): improve sentry integration 2024-06-06 11:20:54 +09:00
Acid Chicken
2b8056a852
fix(backend): use insertOne insteadof insert/findOneOrFail combination (#13908)
* fix(backend): use insertOne insteadof insert/findOneOrFail combination

* fix: typo

* fix(backend): inherit mainAlias?

* refactor(backend): use extend

* fix(backend): invalid entityTarget

* fix(backend): fake where

* chore: debug

* chore: debug

* test: log

* fix(backend): column names

* fix(backend): remove dummy from

* revert: log

* fix(backend): position

* fix(backend): automatic aliasing

* chore(backend): alias

* chore(backend): remove from

* fix(backend): type

* fix(backend): avoid pure name

* test(backend): fix type

* chore(backend): use cte

* fix(backend): avoid useless alias

* fix(backend): fix typo

* fix(backend): __disambiguation__

* fix(backend): quote

* chore(backend): t

* chore(backend): accessible

* chore(backend): concrete returning

* fix(backend): quote

* chore: log more

* chore: log metadata

* chore(backend): use raw

* fix(backend): returning column name

* fix(backend): transform

* build(backend): wanna logging

* build(backend): transform empty

* build(backend): build alias

* build(backend): restore name

* chore: return entity

* fix: test case

* test(backend): 204

* chore(backend): log sql

* chore(backend): assert user joined

* fix(backend): typo

* chore(backend): log long sql

* chore(backend): log join

* chore(backend): log join depth null

* chore(backend): joinAttributes

* chore(backend): override createJoinExpression

* chore: join log

* fix(backend): escape

* test(backend): log log

* chore(backend): join gonna success?

* chore(backend): relations

* chore(backend): undefined

* chore(backend): target

* chore(backend): remove log

* chore(backend): log chart update

* chore(backend): log columns

* chore(backend): check hasMetadata

* chore(backend): unshift id when not included

* chore(backend): missing select

* chore(backend): remove debug code
2024-06-01 11:16:44 +09:00
Marie
886948769e merge: fix custom emoji pagination when searching - fixes #490 (!489)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/489

Closes #490

Approved-by: fEmber <acomputerdog@gmail.com>
Approved-by: Marie <marie@kaifa.ch>
2024-05-31 18:39:01 +00:00
Marie
86ccbd9487 merge: Fix/fixing mastodon api search mfm (!532)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/532

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <marie@kaifa.ch>
2024-05-31 18:32:51 +00:00
dakkar
bf710428eb various fixes after the merge 2024-05-31 12:55:53 +01:00
dakkar
3372e0ffe1 Merge remote-tracking branch 'misskey/release/2024.5.0' into future 2024-05-31 12:26:07 +01:00
dakkar
ad8d916775 minimal fixes, thanks tests 2024-05-31 11:36:47 +01:00
dakkar
4ddee7b01e Merge branch 'develop' into future 2024-05-31 11:24:00 +01:00
KevinWh0
1656c02536 renamed toMastoHtml to toMastoApiHtml to clear up what it does 2024-05-31 12:21:25 +02:00
zyoshoka
514a65e453
perf(backend): avoid N+1 selects from user table when packing many entities (#13911)
* perf(backend): avoid N+1 selects from `user` table when packing many entities

* perf(backend): use `packMany` instead of mapping to `pack`
2024-05-31 15:32:42 +09:00
syuilo
be11fd7508 enhance: サーバーのお問い合わせ先URLを設定できるように 2024-05-31 10:12:23 +09:00
Marie
d7bd112b37 fix incorrect variable name 2024-05-30 13:03:54 +00:00
Marie
981975404d Fix Visiblity issue 2024-05-30 12:08:30 +00:00
syuilo
80f3cb96b0
feat: sentry integration (#13897)
* wip

* wip

* wip

* wip

* Update CHANGELOG.md

* Update ApiCallService.ts

* Update config.ts
2024-05-28 17:06:33 +09:00
anatawa12
4579be0f54
新着ノートをサウンドで通知する機能をdeck UIに追加 (#13867)
* feat(deck-ui): implement note notification

* chore: remove notify in antenna

* docs(changelog): 新着ノートをサウンドで通知する機能をdeck UIに追加

* fix: type error in test

* lint: key order

* fix: remove notify column

* test: remove test for notify

* chore: make sound selectable

* fix: add license header

* fix: add license header again

* Unnecessary await

Co-authored-by: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com>

* ファイルを選択してください -> ファイルが選択されていません

* fix: i18n忘れ

* fix: i18n忘れ

* pleaseSelectFile > fileNotSelected

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
Co-authored-by: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com>
2024-05-27 20:54:53 +09:00
かっこかり
805a11aadb
enhance(backend): プロフィールのリンク検証にtry-catchを追加 (#13882)
* enhance(backend): プロフィールのリンク検証にtry-catchを追加

* ✌️
2024-05-27 17:18:12 +09:00
かっこかり
3ffbf6296f
feat: 個別のお知らせにリンクで飛べるように (#13885)
* feat(announcement): 個別のお知らせにリンクで飛べるように (MisskeyIO#639)

(cherry picked from commit f6bf7f992a78e54d86a4701dbd1e4fda7ef4eb27)

* fix

Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>

* fix

Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>

* 一覧ページではお知らせpanel全体を押せるように

* お知らせバーは個別ページに飛ばすように

* Update Changelog

* spdx

* attempt to fox test

* remove unnecessary thong

* `announcement` → `announcements/show`

* リンクを押せる場所をタイトルと日付部分のみに変更

---------

Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>
2024-05-27 17:15:11 +09:00
Amelia Yukii
a9b1affdf0 merge: more timeline filters - #228 (!455)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/455

Approved-by: fEmber <acomputerdog@gmail.com>
Approved-by: Leah <kevinlukej@gmail.com>
Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
2024-05-23 21:56:28 +00:00