Commit Graph

2743 Commits

Author SHA1 Message Date
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
taichan
b359e3c95b
Fix condition of noteSearchableScope (#14325) 2024-07-30 16:51:50 +09:00
かっこかり
6bd46e790b
refactor(backend): remove unrelated comments 2024-07-30 16:18:18 +09:00
taichan
bff813042e
feat: このユーザーのノートを検索, クエリに基づく検索の初期値 & ノート検索のUI改善 (#14128)
* refactor(frontend): noteSearchAvailableをaccountsに移動

* feat: searchページでのクエリの受取りとtypeによる表示タブの変更

* user検索でsearchの親から受け取った値を基に入力値を初期化

* feat(frontend): ノート検索で親(search)からの情報を基にユーザー情報を取得

* feat(frontend): ユーザーのノートを検索するページに遷移するボタン

* feat(frontend): ノート検索にホスト名指定のオプション追加
also 🎨

* style: ただ照会部分を囲っただけ(可読性確保のために)

* refactor: remove unneed import
defineProps and withDefaults are compiler micro when using `<script setup>`
FYI: https://vuejs.org/api/sfc-script-setup.html#defineprops-defineemits:~:text=defineProps%20and%20defineEmits%20are%20compiler%20macros%20only%20usable%20inside%20%3Cscript%20setup%3E.%20They%20do%20not%20need%20to%20be%20imported%2C%20and%20are%20compiled%20away%20when%20%3Cscript%20setup%3E%20is%20processed.

* Update CHANGELOG

* Fix: ノート検索の初期値が常にホスト指定になってしまう

* notesSearchAvailableをaccountに持たせるのをやめる

* SDPX-Licence-Identifier

* Fix: Vitest fails due to instance.policies being undefined

* Add Storybook for search

* Fix(storybook): ノート検索が利用できないと出てしまう問題

* storybookでユーザー選択ができないのを修正

* feat: ノート検索で自分を選択可能に
& 🎨

* feat(background): api/metaで検索可能なノートのスコープを参照できるように

* globalのノートが検索不可能な場合、検索オプションを表示しないように

* Update CHANGELOG.md

* config.meilisearch.scopeがstring[]を取ることがあるので修正

* meilisearchを利用かつscopeがlocalの場合、リモートユーザーのメニューで「このユーザーのノートを検索」を出さないように

* hostが空文字の時の挙動を修正

* ローカルのみしかノートがインデックスされていない場合、リモートユーザーも選択できなくした
2024-07-30 15:51:08 +09:00
taichan
7e9c38d6fb
Fix(backend): ドライブのファイルのurl, uri, src の上限引き上げ (#14323)
* enhance: ドライブurlの上限文字数を引き上げ

* Fix: おそらくフォーク独自の変更のように見える部分(metaに関する変更部分)を削除

* UPDATE changelog

* Add SPDX prefixes

* Fix: インデックスの張り直しを消した

---------

Co-authored-by: slofp <phy.public@gmail.com>
2024-07-30 15:29:24 +09:00
かっこかり
de3ddb5b44
enhance: 管理画面でアーカイブにしたお知らせを表示・編集できるように (#14286)
* enhance: 管理画面でアーカイブにしたお知らせを表示できるように

* Update Changelog
2024-07-30 13:02:03 +09:00
Sayamame-beans
b44313fe3c
fix(backend): type(schema) of reactionAcceptance was wrong (#14317) 2024-07-30 12:32:03 +09:00
おさむのひと
72bc789746
feature: ユーザ作成時にSystemWebhookを発信できるようにする (#14321)
* feature: ユーザ作成時にSystemWebhookを発信できるようにする

* fix CHANGELOG.md
2024-07-29 21:31:32 +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
Sayamame-beans
61f4a03e6c
Fix(frontend): 下書き/削除して編集で保持されない項目があった問題を修正 (#14285)
* chore(frontend): reorder assignments

* fix(frontend): visibleUserIds is not kept when deleteAndEdit

* fix(frontend): quoteId is not kept on draft

* fix(frontend): reactionAcceptance is not kept for draft/deleteAndEdit

* docs(changelog): update changelog
2024-07-28 11:19:32 +09:00
syuilo
085b3abf26
update deps (#14312) 2024-07-28 11:14:31 +09:00
かっこかり
46d96c7412
fix(build): autogen生成時にbackendを2度buildしているのを修正 (#14309)
* fix(build): autogen生成時にbackendを2度buildしているのを修正

* fix

* fix
2024-07-27 18:09:15 +09:00
Hazel K
378408226b tweak wording 2024-07-26 22:45:07 -04:00
Hazel K
916509dd6a revert more import changes 2024-07-26 10:17:02 -04:00
Hazel K
fecdff7fa0 revert import changes 2024-07-26 09:42:49 -04:00
Hazel K
32872181dd feat: implement attachLdSignatureForRelays to control signing of Relayed activities 2024-07-25 10:37:23 -04:00
zyoshoka
befa8e4a7f
fix(backend): avoid caching remote user's HTL when receiving Note (#13772)
* fix(backend): avoid caching remote user's HTL when receiving Note

* test(backend): add test for FFT

* Update CHANGELOG.md

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-07-25 16:37:46 +09:00
zyoshoka
fc71bcc98e
fix(backend): avoid notifying to remote users on local (#13774)
* fix(backend): avoid notifying to remote users on local

* Update CHANGELOG.md

* refactor: check before calling method

---------

Co-authored-by: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com>
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-07-25 16:32:07 +09:00
dakkar
f18f30cb79 ignore cpuCount when it's 0 - fixes #586
seems more useful this way
2024-07-21 13:29:54 +01:00
dakkar
3eff85a3d3 error out when we can't spawn workers - fixes #586
Setting `clusterLimit` to 0 means no workers are started, which
usually breaks things. Also, some "hardening" things may prevent node
from seeing how many CPUs the machine has, which has the same effect.

With this commit we provide hopefully-useful error messages.
2024-07-21 11:32:39 +01:00
dakkar
6e1e3bc0ea pass redis config as-is to postgres cache
also, explicitly state that `path` is a valid config option for
redis (tells `ioredis` to connect via UNIX socked instead of TCP
socket)
2024-07-21 11:02:46 +01: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
woxtu
6920f0fa7e
Disable ESLint for migration files (#14262) 2024-07-19 10:05:34 +09: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
Kisaragi
ce39c3a2fb
chore(backend): registed -> registered (#14213)
* chore(backend): registed -> registered

* Update CHANGELOG.md
2024-07-15 14:58:48 +09:00
dakkar
4d0a340620 merge: [feat] port fetching host-meta before the webfinger endpoint from iceshrimp - fixes #539 (!567)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/567

Closes #539

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <marie@kaifa.ch>
2024-07-14 14:10:54 +00:00
slonkazoid
2232f65410
use more concise syntax for env var checking 2024-07-14 16:11:11 +03:00
slonkazoid
1fa92ad763
rename fetchHostMeta to fetchWebFingerTemplateFromHostMeta 2024-07-14 16:11:02 +03:00
Souma
1b84760c19
enhance(backend): Load settings via environment variables (#14179)
* feat(backend): Load settings via environment variables

If they're not loaded from the config file.

* chore(docker): Add hints for environment variables

It supports users to know about them.

* docs(changelog): Add the description about this change

Users can notice what's changed by this PR.

* style(backend): Fix code syntax

To pass the linter.
2024-07-14 21:33:22 +09:00
Kisaragi
f0b9d70720
ci: cache eslint (#14204)
* ci: cache eslint

* dummy commit to trigger

* fix syntax error
2024-07-14 21:30:57 +09: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
syuilo
c5607d8633 enhance(backend): configにsignToActivityPubGetの指定が無い場合trueと見做すように
trueの方が望ましいため
2024-07-14 20:14:43 +09:00
Kisaragi
31e82fc29a
test(backend): kill many any in backend test (partial) (#14054)
* kill any on utils:api

* kill any on timeline test

* use optional chain to kill TS2532 on timeline test
変更前: 該当ノートが見つからなければundefinedに対するプロパティアクセスとしてテストがクラッシュ
変更後: 該当ノートが見つからなければoptional chainがundefinedとして評価されるが、strictEqualの右辺がnon-nullableなためアサーションに失敗しテストがクラッシュ

* kill `as any` for ApMfmService

* kill argument any for api-visibility

* kill argument any across a few tests

* do not return value that has yielded from `await`-ing `Promise<void>`

* force cast

* runtime non-null assertion to coerce

* rewrite `assert.notEqual(expr, null)` to `assert.ok(expr)`
こうすることでassertion type扱いになり、non-nullableになる

* change return type of `failedApiCall` to `void`
戻り値がどこにも使われていない

* split bindings for exports.ts
型が合わなくて文句を言ってくるので適切に分割

* runtime non-null assertion

* runtime non-null assertion

* 何故かうまく行かないので、とりあえずXORしてみる

* Revert "何故かうまく行かないので、とりあえずXORしてみる"

This reverts commit 48cf32c930924840d0892af92d71b9437acb5844.

* castAsErrorで安全ではないキャストを隠蔽

* 型アサーションの追加

* 型アサーションの追加

* 型アサーションの追加

* voidで値を返さない

* castAsError

* assert.ok => kill nullability

* もはや明示的な型の指定は必要ない

* castAsError

* castAsError

* 型アサーションの追加

* nullableを一旦抑止

* 変数を分離して型エラーを排除

* 不要なプロパティを削除する処理を隠蔽してanyを排除

* Repository type

* simple type

* assert.ok => kill nullability

* revert `as any` drop
reverts fe95c05b3f53266108128680d9358a3796844232 partialy

* test: fix invalid assertion
partially revert b99b7b5392d9d20c81dfee1346ba8b33ff9e1fbb

* test: 52d8a54fc7 により型が合うようになった部分の`as any`を除去

* format

* test: apply https://github.com/misskey-dev/misskey/pull/14054#discussion_r1672369526 (part 1)

* test: use non-null assertion to suppress too many error

* Update packages/backend/test/utils.ts

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

---------

Co-authored-by: anatawa12 <anatawa12@icloud.com>
2024-07-14 09:33:16 +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
かっこかり
58c596cacf
fix(backend): 一般ユーザーから見たユーザーのバッジの一覧に公開されていないものが含まれることがある問題を修正 (#14195)
* enhance(backend): 公開バッジのみをpackするように (MisskeyIO#652)

(cherry picked from commit b8a90659f35fef49d1d00fb2f9b152226c97643c)

* Update Changelog

* fix

* Update UserEntityService.ts

---------

Co-authored-by: CyberRex <26585194+CyberRex0@users.noreply.github.com>
2024-07-14 09:26:25 +09:00
Gianni Ceccarelli
c83c831c53
parse notRespondingSince from redis instance cache (#14079)
if we don't do this, we'll get a string, and `DeliverProcessorService`
will error out `i.notRespondingSince.getTime is not a function`
2024-07-13 20:26:48 +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
syuilo
91de35ecdf fix(backend): デフォルトテーマに無効なテーマコードを入力するとUIが使用できなくなる問題を修正
Fix #13955
2024-07-13 10:30:28 +09:00
slonkazoid
d81aadfe23
replace useHttp with defaultProtocol 2024-07-12 15:46:23 +03:00
slonkazoid
6fa6f1ba45
i re-read the code several times but oh well 2024-07-12 15:28:05 +03:00
おさむのひと
6cd15275bb
fix: サジェストされるユーザのリストアップ方法を見直し (#14180)
* fix: サジェストされるユーザのリストアップ方法を見直し

* fix comment

* fix CHANGELOG.md

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

* fix test
2024-07-12 21:14:09 +09:00
slonkazoid
0b6fb394c0
apply fixes from review 2024-07-12 14:28:19 +03: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
slonkazoid
7a62e1be31
implement fetching host-meta before the webfinger endpoint
code ported from iceshrimp: c3e685a925/packages/backend/src/remote/webfinger.ts
2024-07-09 05:45:41 +03: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
かっこかり
984d582796
fix(frontend): サーバーサイドbootでエラー画面の描画時にDOMが初期化できていないことがあるのを修正 (#14139) 2024-07-07 09:56:09 +09:00
おさむのひと
fe852920c3
fix(backend): parse5関係の型のimport方法を変更 (#14146) 2024-07-07 09:55:06 +09:00
syuilo
8e1d94c6c7 fix import path 2024-07-06 21:46:19 +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
anatawa12
5d03efa1bb
dev: fix pnpm dev is broken (#14123)
* dev: pnpm dev is broken

* dev: fix crash pnpm dev because of unhandled promise
2024-07-03 06:40:31 +09:00
woxtu
de1fe7cc5a
Use built-in API (#14095) 2024-07-02 14:47:07 +09:00
Kisaragi
eafae79869
test(backend): goodbye, Lenna (#14111) 2024-07-02 14:29:44 +09:00
syuilo
427648c4b8
update deps (#14057)
* wip

* locales/index.jsのymlファイル取得ロジックを調節

* regenerate pnpm-lock.yaml

* fix(backend): typecheck fails

* chore(deps): bump ip-cidr from 4.0.0 to 4.0.1 in /packages/backend

* chore: migrate ESLint configs to flat config (#14094)

* chore: migrate ESLint configs to flat config

* fix: update paths

* fix: frontend lint fails

* refactor(misskey-js): lint build.js

* update deps

---------

Co-authored-by: samunohito <46447427+samunohito@users.noreply.github.com>
Co-authored-by: zyoshoka <root@zyoshoka.com>
Co-authored-by: zyoshoka <107108195+zyoshoka@users.noreply.github.com>
2024-07-02 11:38:34 +09:00
dakkar
320db585e3 pass all the options to the cache constructor 2024-06-30 11:08:21 +01:00
dakkar
8cdea537e9 cache URL previews on the server
we already tell browsers to cache the preview for 7 days, but each
browser will ask the server, and the server will talk to the network,
hammering the poor site that got mentioned on fedi

let's instead cache the preview on the server!
2024-06-30 10:55:13 +01:00
Leah
2ebdc36c7a Add search for files in drive 2024-06-28 16:27:28 +02:00
ぬるきゃっと
a6edd50a5d
chore(docker-compose): 推奨の名前にする (#14096)
* chore(docker-compose): 推奨の名前にする

5c18e329d5/spec.md (compose-file)

* yaml to yml

* fix

* fix
2024-06-28 11:16:12 +09:00
anatawa12
0e5a52c678 fix: notRespondingSinceが実装される前に不通になったインスタンスが自動的に配信停止にならない (#14059)
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-06-23 10:59:43 +01:00
dakkar
3c3485e8a8 parse notRespondingSince from redis instance cache
if we don't do this, we'll get a string, and `DeliverProcessorService`
will error out `i.notRespondingSince.getTime is not a function`
2024-06-23 10:57:05 +01: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
woxtu
00b213373b
Remove @types/node-fetch (#13948) 2024-06-22 19:46:29 +09:00
Kisaragi
9368eb3038
refactor: say bye to the weird groupBy friends (#13975)
* refactor(frontend): say bye to the weird groupBy friends

* refactor(backend): say bye to the weird groupBy friends
2024-06-22 19:40:55 +09:00
かっこかり
7c22a64b8c
fix(backend): 自分以外のクリップ内のノート個数が見えるのを修正 (#14065)
* fix(backend): 自分以外のクリップ内のノート個数が見えることがあるのを修正

* Update Changelog

* fix
2024-06-22 16:52:27 +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
Kisaragi
ac12ab8629
fix(backend): フィードのノートのMFMはHTMLにレンダーしてから返す (#14006)
* fix(backend): フィードのノートのMFMはHTMLにレンダーしてから返す (test wip)

* chore: beforeEachを使う?

* fix: プレーンテキストにフォールバックしてMFMが含まれていないか調べる方針を実装

* fix: application/jsonだとパースされるのでその作用をキャンセル

* build: fix lint error

* docs: update CHANGELOG.md

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-06-22 12:51:02 +09:00
anatawa12
1e78ef1cb8
fix: notRespondingSinceが実装される前に不通になったインスタンスが自動的に配信停止にならない (#14059)
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-06-22 12:44:01 +09:00
zyoshoka
8a9de081f1
fix(backend): fallback if sinceId is older than the oldest in cache when using FTT (#14061)
* fix(backend): fallback if `sinceId` is older than the oldest in cache when using FTT

* Update CHANGELOG.md

* chore: fix description of test
2024-06-22 12:43:03 +09:00
syuilo
e88f08ad7d refactor 2024-06-21 13:31:02 +09:00
syuilo
1d6ccd9781 remove unused files 2024-06-21 13:21:27 +09:00
syuilo
811ffbf3a4 remove unused file 2024-06-21 13:18:19 +09:00
syuilo
bf33382082 refactor(backend): remove unnecessary isNotNull sugar 2024-06-21 13:03:51 +09:00
syuilo
1df90cef4c update typescript 2024-06-21 13:03:00 +09:00
dakkar
6d1b1df1aa cache-bursting for stylesheets and fonts
adding `?version=…` makes sure browsers get the latest files, and it
looks like they honour the caching headers we send back
2024-06-19 17:04:49 +01:00
dakkar
16ecc2e406 merge: Revert "fix: start only one instance of ChartManagementService scheduled job" (!555)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/555

Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
Approved-by: fEmber <acomputerdog@gmail.com>
2024-06-18 14:26:51 +00:00
dakkar
91cd995fb2 Revert "fix: start only one instance of ChartManagementService scheduled job"
This reverts commit 2532fea702.
2024-06-18 15:20:09 +01: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
Acid Chicken
1a82a41f92
refactor(backend): get column names from metadata (#13943)
* ci: enable

* chore: stop when generated column found

* chore: get column names from metadata

* ci: disable
2024-06-15 10:28:57 +09: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
syuilo
c73d739bd6 node 22 support 2024-06-13 10:40:20 +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
Marie
4a9260a432 upd: seperate H2/H3 into own case 2024-06-08 18:53:42 +00:00
Marie
0c3690a8ba upd: bold some Header tags 2024-06-08 18:00:29 +00:00
dakkar
11af7e6587 fix indents 2024-06-08 16:57:17 +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
taichan
00157864e9
fix(backend): チャート生成時にinstance.isSuspendedが読まれてしまう問題の修正 (#13951)
* fix(backend): use sustensionState instead of isSuspended

* Update CHANGELOG.md
2024-06-07 09:00:01 +09:00
syuilo
8f833d742f enhance(backend): improve sentry integration 2024-06-06 11:51:31 +09:00
syuilo
d55e638a23 lint fixes 2024-06-06 11:40:11 +09:00
syuilo
a697a7f97b enhance(backend): improve sentry integration 2024-06-06 11:38:34 +09:00
syuilo
ab69e113f4 enhance(backend): improve sentry integration 2024-06-06 11:20:54 +09:00
syuilo
65d19279a2 fix 2024-06-06 10:11:43 +09:00
syuilo
dbf9e1194b refactor(backend): remove unused logger option 2024-06-06 10:01:50 +09:00
syuilo
d4a8c63264 enhance(backend): sentry integration for job queues 2024-06-06 09:32:04 +09:00
Marie
b2088e60b7 merge: use the current resolver for quotes - #524 (!536)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/536

Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
Approved-by: Marie <marie@kaifa.ch>
2024-06-03 16:54:51 +00:00
Amelia Yukii
23b1c29a0b merge: allow setting separate timeout / max size for imports - fixes #479 (!519)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/519

Closes #479

Approved-by: Marie <marie@kaifa.ch>
Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
2024-06-03 16:29:19 +00:00
dakkar
082e1d1afb allow setting separate timeout / max size for imports - fixes #479 2024-06-03 16:29:19 +00: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
11bd8e9571 merge: escape \ character in sqlLikeEscape (!529)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/529

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <marie@kaifa.ch>
2024-05-31 18:38:04 +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
38ff7fa3e5 *probably* fix FederationChart re: suspended instances
this is a misskey bug, they'll probably fix it soon, hopefully the
same way
2024-05-31 13:31:49 +01:00
dakkar
43d15506aa add sentry options to env overrides 2024-05-31 13:10:02 +01:00
dakkar
e045652c80 lint config.ts 2024-05-31 13:00:59 +01:00
dakkar
1c2bb90ac5 fix types in my test 2024-05-31 12:59:32 +01:00
dakkar
bf710428eb various fixes after the merge 2024-05-31 12:55:53 +01:00
dakkar
326b2c254a copy upstream NoteCreateService changes to NoteEditService 2024-05-31 12:32:31 +01:00
dakkar
3372e0ffe1 Merge remote-tracking branch 'misskey/release/2024.5.0' into future 2024-05-31 12:26:07 +01:00
dakkar
7b630b48b5 Merge branch 'develop' into future 2024-05-31 11:43:09 +01:00
dakkar
11aac8253d merge: look inside url when checking activity origin - #512 (!521)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/521

Closes #512

Approved-by: Marie <marie@kaifa.ch>
Approved-by: fEmber <acomputerdog@gmail.com>
2024-05-31 10:37:54 +00:00
dakkar
ad8d916775 minimal fixes, thanks tests 2024-05-31 11:36:47 +01:00
dakkar
4f346ebe0c merge: fix types in config.ts (!520)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/520

Approved-by: Marie <marie@kaifa.ch>
Approved-by: fEmber <acomputerdog@gmail.com>
2024-05-31 10:36:20 +00: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
KevinWh0
145c4ba132 fixed the search url 2024-05-31 12:19:18 +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
97be1a53ad Update 1717117195275-inquiryUrl.js 2024-05-31 14:59:02 +09:00
syuilo
eaa85f5aa3 fix test 2024-05-31 13:28:11 +09:00
syuilo
5b8f8e7087 fix(backend): fix backward compatibility of antenna 2024-05-31 11:24:17 +09:00
syuilo
be11fd7508 enhance: サーバーのお問い合わせ先URLを設定できるように 2024-05-31 10:12:23 +09:00
Marie
9bde071f42 merge: feat: send edit events to servers that interacted (!515)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/515

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <marie@kaifa.ch>
Approved-by: Leah <kevinlukej@gmail.com>
Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
2024-05-30 19:16:10 +00:00
Amelia Yukii
55fc2879f3 merge: set the correct "marked an NSFW" when loading admin-user (!483)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/483

Approved-by: Marie <marie@kaifa.ch>
Approved-by: fEmber <acomputerdog@gmail.com>
2024-05-30 14:22:00 +00:00
dakkar
3050dcbef7 set the correct "marked an NSFW" when loading admin-user 2024-05-30 14:22:00 +00:00
Sugar
189c26aa25 escape \ character in sqlLikeEscape 2024-05-30 16:01:29 +02:00
fEmber
da764d3541 merge: fix: start only one instance of ChartManagementService scheduled job (!514)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/514

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <marie@kaifa.ch>
2024-05-30 13:18:44 +00:00
fEmber
2532fea702 fix: start only one instance of ChartManagementService scheduled job 2024-05-30 13:18:44 +00:00
fEmber
d0be6ca332 merge: fix: don't create duplicate workers when clustering is disabled (!508)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/508

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <marie@kaifa.ch>
2024-05-30 13:17:52 +00:00
fEmber
cebad801e2 fix: don't create duplicate workers when clustering is disabled 2024-05-30 13:17:51 +00: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
dakkar
38d98e5048 nicer type for alwaysStrings, thanks Marie 2024-05-30 11:29:31 +01:00
dakkar
dc0bd3c2ee merge: feat: allow using wildcards in antenna (!114)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/114

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Leah <kevinlukej@gmail.com>
2024-05-30 09:14:21 +00:00
Kisaragi
cf670e8a3d
refactor(backend): avoid as any on CustomEmojiService.ts (#13903) 2024-05-29 07:12:50 +09:00
Kisaragi
e57ce4fa0f
chore(backend): rename local variable (#13904)
much -> matched
2024-05-29 07:12:20 +09:00
Kisaragi
44cafbb9f2
refactor: avoid as any[] on FetchInstanceMetadataService.ts (#13905)
* refactor: avoid `as any[]` on FetchInstanceMetadataService.ts

* apply suggestion

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-05-29 07:11:29 +09: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
tamaina
89b27d8587
fix(federation): InboxにきたCreate, AnnounceのobjectがBearcaps urlだった際はスキップするように (#13610)
* fix(federation): AnnounceのobjectがLike出なかったらキューにためない
Fix https://github.com/misskey-dev/misskey/issues/13552

* revert

* better reason handlings

* result

* improve announce handling

* skip bearcaps

* also announce
2024-05-28 14:36:06 +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
anatawa12
a7a8dc4dbb
もともとセンシティブではないと連合されていたファイルがセンシティブとして連合された場合にセンシティブとしてそのファイルを扱うように (#13879)
* feat(backend): mark an file as sensitive if the file was newly federated as sensitive

* docs(changelog): もともとセンシティブではないと連合されていたファイルがセンシティブとして連合された場合にセンシティブとしてそのファイルを扱うように

* fix: change way to update federated image

* Update packages/backend/src/core/DriveService.ts

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

* update isSensitive of existing record object

---------

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

* ✌️
2024-05-27 17:18:12 +09:00
かっこかり
1df8ea824e
fix(backend): /@ にアクセスするとサーバーエラーが発生する問題を修正 (#13884) 2024-05-27 17:15:42 +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
dakkar
d27ce442ea more timeline filters - #228 2024-05-23 21:56:28 +00:00
かっこかり
e0b47999fa
fix(backend): read:admin:show-userread:admin:show-users を統合 (#13798)
* fix(frontend): 同じdisplayNameの権限があるのを修正

* read:admin:show-user と read:admin:show-users を統合

* Update Changelog
2024-05-23 17:29:59 +09:00
anatawa12
83a9aa4533
feat: suspend instance improvements (#13861)
* feat(backend): dead instance detection

* feat(backend): suspend type detection

* feat(frontend): show suspend reason on frontend

* feat(backend): resume federation automatically if the server is automatically suspended

* docs(changelog): 配信停止まわりの改善

* lint: fix lint errors

* Update packages/frontend/src/pages/instance-info.vue

* lint: fix lint error

* chore: suspendedState => suspensionState

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-05-23 15:55:47 +09:00
Acid Chicken
611e303bab
feat(backend): add /healthz endpoint (#13834)
* feat(backend): add /healthz endpoint

* feat(backend): also check meilisearch status if available

* style: header

* chore: no-store

* chore: healthcheck.sh

* style: format
2024-05-23 15:19:52 +09:00
syuilo
20c0bd9ddb happy-domにメモリリークがありそう 2024-05-21 17:29:02 +09:00
anatawa12
7bde630820
/tags/user-tags が検索エンジンにインデックスされないように (#13847)
* chore(backend): noindex for tag search pages

* docs(changelog): `/tags` と `/user-tags` が検索エンジンにインデックスされないように

* chore: base.pug内でフラグでコントロールするように
2024-05-21 11:19:33 +09:00
anatawa12
5836bd85df
fix: 複数idを指定するusers/showが関係ないユーザを返すことがある問題を修正 (#13765)
* fix: 複数idを指定する`users/show`が関係ないユーザを返すことがある問題を修正

* test: fix misskey js test

* chore: user/showがnullを返さないように

* chore: pass lambda instead of pushVisibleUser
2024-05-20 19:25:50 +09:00
anatawa12
f6df94070b
Exclude channel notes from featured polls (#13838)
* feat(backend): add `channelId` to `MiPoll` as a Denormalized field

* feat(backend): option to exclude polls in channels

* chore: exclude channel notes from featured polls

* docs(changelog): みつけるのアンケート欄にてチャンネルのアンケートが含まれてしまう問題を修正

* fix: missing license header
2024-05-20 18:08:20 +09:00
anatawa12
4d0db37d2e
fix notification limit with exclude/include types (#13836)
* fix: /i/notificationsがsinceIdのみのときに正しく動かない問題

Fix #10902 again

* chore: use exclusive range to fetch data

* fix: フィルタによって通知が0件だった場合でもリトライするように

* docs(changelog): `/i/notifications`に includeTypes`か`excludeTypes`を指定しているとき、通知が存在するのに空配列を返すことがある問題を修正
2024-05-20 18:05:46 +09:00
anatawa12
acf84a2516
FTTが有効かつsinceIdのみを指定した場合に帰って来るレスポンスが逆順である問題を修正 (#13837)
* fix: FTTが有効かつsinceIdのみを指定した場合に帰って来るレスポンスが逆順である問題

* docs(changelog): FTTが有効かつsinceIdのみを指定した場合に帰って来るレスポンスが逆順である問題を修正
2024-05-20 08:28:28 +09:00
dakkar
c05cc63e24 look inside url when checking activity origin - #512
The previous assertion that:

> if it's a complicated thing and the `activity.id` doesn't match, I
> think we're fine rejecting the activity

was wrong: at least peertube sends activities that have `url` as an
array of objects.

Notice that this does *not*, in fact, fix #512: the peertube activity
does not contain its short URL (`https://example.com/w/someid`), so
there's no way to confirm that it is the activity we requested.
2024-05-18 16:48:10 +01:00
dakkar
aa7271469e fix types in config.ts
my recent changes to allow overrides from the environment had bad types
2024-05-18 15:56:21 +01:00
dakkar
95ec40d3c8 merge: allow overriding all string config values via env - fixes #465 (!476)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/476

Closes #465

Approved-by: Marie <marie@kaifa.ch>
Approved-by: Luna <her@mint.lgbt>
2024-05-17 16:46:02 +00:00
dakkar
2d89b08a08 use the current resolver for quotes - #524
this might solve the loop problem, if the protection already in place
for replies was enough
2024-05-15 16:47:06 +01:00
dakkar
42d9da161b first basic protection - #524 2024-05-14 16:58:06 +01:00
dakkar
8732668372 lint 2024-05-11 14:31:56 +01:00
dakkar
4e28004d0e copy changes from createNote to updateNote 2024-05-11 14:21:17 +01:00
dakkar
451b0ecc9b Merge remote-tracking branch 'misskey/release/2024.5.0' into future-2024-04-25-post 2024-05-11 14:13:07 +01:00
dakkar
a81be17d69 make the linter happy 2024-05-11 13:40:28 +01:00
dakkar
30bd7768d6 Merge branch 'develop' into future-2024-04-25-post 2024-05-11 13:11:07 +01:00
dakkar
91ef2ceed7 port changes from global timeline to bubble timeline 2024-05-11 12:38:01 +01:00
Sugar
194d8a5527 feat: send edit events to servers that interacted
a server replied to, renoted or reacted to a note knows about a note,
and as such it should get notified about it being edited.

this matches similar logic in mastodon.
2024-05-11 09:44:03 +02:00
おさむのひと
f6af6d9679
fix(backend): UserEntityService.getRelationsの取得処理を軽量化 (#13811)
* fix(backend): UserEntityService.getRelationsの取得処理を軽量化

* rollback
2024-05-10 15:33:25 +09:00
おさむのひと
b298897bde
fix(backend): 不要なUserProfileの取得を修正 (#13812)
* fix(backend): 不要なuserProfileの取得を修正

* fix: pnpm@9.0.6 to pnpm@9.1.0

* Revert "fix: pnpm@9.0.6 to pnpm@9.1.0"

This reverts commit eaf265ec2cf255cadeaa516d5b668134bc397211.
2024-05-10 15:32:23 +09:00
dakkar
9d91196344 allow offset in admin/emoji/list - #490
also, use `skip` + `take` instead of `limit` (the TypeORM docs say so
https://github.com/typeorm/typeorm/blob/master/docs/select-query-builder.md#adding-limit-expression )
2024-05-09 21:02:34 +01:00
dakkar
cd5686f9ab fix spacing 2024-05-09 17:37:22 +01:00
dakkar
f1d96b8ae8 merge: fix: incorrect type for quote property (!480)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/480

Closes #401

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Tess K <me@thvxl.se>
2024-05-09 09:05:16 +00:00
dakkar
01256af028 merge: Rework cache clearing to be fault tolerant (!497)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/497

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <marie@kaifa.ch>
2024-05-09 08:01:18 +00:00
dakkar
89f412c696 merge: Send default reactions as Like activities to Iceshrimp.NET instances (!505)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/505

Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <marie@kaifa.ch>
2024-05-09 07:59:46 +00:00
Ember
ed91663672 merge: don't count "system" local accounts in user chart - fixes #451 (!500)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/500

Closes #451

Approved-by: Ember <acomputerdog@gmail.com>
Approved-by: Marie <marie@kaifa.ch>
2024-05-07 20:17:54 +00:00
dakkar
89f4f0e5f4 don't count "system" local accounts in user chart - fixes #451 2024-05-07 20:17:53 +00:00
Ember
58ff225c4e merge: really edit notes in more cases - fixes #424 (!504)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/504

Closes #424

Approved-by: Leah <kevinlukej@gmail.com>
Approved-by: Ember <acomputerdog@gmail.com>
2024-05-07 20:16:39 +00:00
dakkar
eab690a5e3 really edit notes in more cases - fixes #424 2024-05-07 20:16:38 +00:00
Tess K
5e20de45d7 merge: Compact LD-signed activities against well-known context (!503)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/503

Approved-by: Marie <marie@kaifa.ch>
Approved-by: Tess K <me@thvxl.se>
2024-05-04 17:19:42 +00:00
syuilo
2b21c19362
update deps (#13624)
* update deps

* Update package.json

* update deps

* build: pass --strip-leading-paths to restore 0.2.x behavior (#13684)

* ✌️

* ✌️

* pureimageの代わりに@napi-rs/canvasを使う (#13748)

* pureimageの代わりに@napi-rs/canvasを使う

* remove writestream

* remove createtemp

* wip

* Update ClientServerService.ts

* update pnpm to 9.x

* update deps

* re: update pnpm to 9.x

* update node

* ✌️

---------

Co-authored-by: anatawa12 <anatawa12@icloud.com>
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2024-05-04 20:56:14 +09:00
Essem
f843bf6c17
fix: Add unicode flag to custom emoji regexes 2024-05-03 11:48:00 -05:00
dakkar
d0a2708f91 merge: handle non-ASCII emoji names (!464)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/464

Approved-by: Leah <kevinlukej@gmail.com>
Approved-by: Ember <acomputerdog@gmail.com>
Approved-by: Marie <marie@kaifa.ch>
2024-05-02 21:06:10 +00:00
ShittyKopper
e333283905 Send default reactions as Like activities to Iceshrimp.NET instances 2024-05-02 02:37:59 +03:00
dakkar
45182c17e2 fix imports 2024-05-01 17:41:33 +01:00
Kisaragi
c530a46e54
enhance(backend): ドライブのファイルがNSFWかどうか個別に連合されるように (#13756)
* fix(backend): ノートのattachmentにおいて、attach.sensitiveが元から存在する場合はそれを尊重する

* docs: update changelog (per misskey-dev#13756)

* feat(backend,apub): renderDocumentがsensitiveを連合するようにする
per https://github.com/misskey-dev/misskey/issues/13755#issuecomment-2081303014

* chore(backend): 追加したコメントを削除

* docs: changelogをより丁寧にする

* docs: changelogの項目名をPRに合わせる

* docs: tweak

apply suggestion from mei23
2024-05-01 17:13:20 +09:00
Daiki Mizukami
d2a5bb39e3
Merge pull request from GHSA-2vxv-pv3m-3wvj
* fix: normalize incoming signed activities

* Tweak style

* Update CHANGELOG.md

* Log compacted activity as well

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-05-01 16:33:58 +09:00
dakkar
6ae01e28aa Compact LD-signed activities against well-known context
This should defend against some spoofing attacks, see also
https://nvd.nist.gov/vuln/detail/CVE-2022-24307 for Mastodon,
febb499fcb
from Iceshrimp and
e790d6be90
for Firefish

Thanks to @tesaguri@fedibird.com for reporting and providing the patch.
2024-04-30 10:16:57 +01:00