Commit graph

586 commits

Author SHA1 Message Date
かっこかり 59cc101752
fix(backend): プロフィールの自己紹介欄のMFMを連合するように (#12184)
* (fix) federate user description mfm

* fix

* Update Changelog
2023-10-29 19:33:35 +09:00
taichan 8a2309ba7d
fix(backend): ハッシュタグのランキングの問い合わせ結果がないときのエラー修正 (#12145)
* fix(backend): undefined result error

* Update Changelog

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

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-10-27 18:37:17 +09:00
おさむのひと a8ee67cace
Fix: チャンネルのフォロー・アンフォローの反映速度を改善 (#12149)
* チャンネルのフォロー・アンフォローの反映速度を改善

* fix lint

* userFollowingChannelsCacheの場所をCacheServiceからChannelFollowingServiceに移動

---------

Co-authored-by: osamu <46447427+sam-osamu@users.noreply.github.com>
2023-10-27 18:34:02 +09:00
atsuchan 9d0648ed35
enhance(server): Improve user block (Renote Part) (#12089) 2023-10-23 16:42:26 +09:00
syuilo e6c54de814 enhance(backend): RedisへのTLのキャッシュをオフにできるように 2023-10-23 15:17:25 +09:00
syuilo 5a39c1a8eb fix type 2023-10-23 11:07:27 +09:00
syuilo c9ae5d0e51 fix type 2023-10-23 09:24:13 +09:00
syuilo 9221cbf42b fix(backend): fix i/signin-history response 2023-10-23 08:59:05 +09:00
syuilo 4eaa02d25f enhance: improve avatar decoration 2023-10-22 13:02:24 +09:00
syuilo 72327716ca fix(backend): リストTLに自分のフォロワー限定投稿が含まれない問題を修正
Fix #12110
2023-10-22 10:40:53 +09:00
syuilo 2c0a139da6
feat: Avatar decoration (#12096)
* wip

* Update ja-JP.yml

* Update profile.vue

* .js

* Update home.test.ts
2023-10-21 18:38:07 +09:00
shiosyakeyakini 6d6ddbc35e
fix(backend) api/iの未読のお知らせにcreatedAtを追加するように修正 (#12092)
Co-authored-by: sorairo <sorairo@shiosyakeyakini.info>
2023-10-21 07:53:57 +09:00
syuilo b394328eb1 fix(backend): フォロ限へのリプのリプ元が(非公開)の表示のまま
Fix #12083
2023-10-20 11:58:09 +09:00
syuilo 6ff5bfd2bc clean up 2023-10-20 07:48:31 +09:00
syuilo 30efd932a5 enhance: nyaizeはクライアントで表示時に行うように
Resolve #12030
2023-10-19 11:42:17 +09:00
syuilo ec45db7870 refactor and perf tweak 2023-10-19 11:19:42 +09:00
syuilo f9549e1f1b fix(backend): fix of 1671575d5d 2023-10-19 11:17:59 +09:00
syuilo 1671575d5d perf(backend): ノートのリアクション情報をキャッシュすることでDBへのクエリを削減 2023-10-19 09:20:19 +09:00
syuilo 4d1d25e02f perf(backend): improve my reaction population performance 2023-10-19 08:07:22 +09:00
syuilo fcc4864080 perf(backend): reduce needless populateMyReaction calls 2023-10-19 07:56:25 +09:00
syuilo 6cc02fee99 enhance(backend): improve fanout tl
Resolve #11958
Resolve #12061
2023-10-18 12:26:16 +09:00
syuilo 2a88d8ee2d refactor(backend): rename service 2023-10-18 12:07:18 +09:00
woxtu 0bddd0ceae
Remove unnecessary nullish coalescing (#12058) 2023-10-18 09:54:18 +09:00
anatawa12 5a3c6575dd
新規にフォローした人のwithRepliesをtrueにする機能を追加 (#12048)
* feat: add defaultWithReplies to MiUser

* feat: use defaultWithReplies when creating MiFollowing

* feat: update defaultWithReplies from API

* feat: return defaultWithReplies as a part of $i

* feat(frontend): configure defaultWithReplies

* docs(changelog): 新規にフォローした人のをデフォルトでTL二追加できるように

* fix: typo

* style: fix lint failure

* chore: improve UI text

* chore: make optional params of  UserFollowingService.follow() object

* chore: UserFollowingService.follow() accept withReplies

* chore: add withReplies to MiFollowRequest

* chore: process withReplies for follow request

* feat: accept withReplies on 'following/create' endpoint

* feat: store defaultWithReplies in client store

* Revert "feat: return defaultWithReplies as a part of $i"

This reverts commit f2cc4fe6

* Revert "feat: update defaultWithReplies from API"

This reverts commit 95e3cee6

* Revert "feat: add defaultWithReplies to MiUser"

This reverts commit 9f5ab14d7063532de2b049bc2ed40a15658168f5.

* feat: configuring withReplies in import-following

* feat(frontend): configure withReplies

* fix(frontend): incorrectly showRepliesToOthersInTimeline can be shown

* fix(backend): withReplies of following/create not working

* fix(frontend): importFollowing error

* fix: withReplies is not working with follow import

* fix(frontend): use v-model

* style: fix lint

---------

Co-authored-by: Sayamame-beans <61457993+sayamame-beans@users.noreply.github.com>
Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
2023-10-17 20:56:17 +09:00
syuilo 5686e1d2d0 refactor 2023-10-17 09:00:42 +09:00
まっちゃてぃー 5efd01ba70
feat: サーバーサイレンス機能を追加 (#12031)
* feat : サーバーサイレンスを追加

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update locale

* Update instance-info.vue

* update misskey-js.api.md

* lint fix

* migration fix

* 既存のものを使うように

* fix

* 色々直した

* Update packages/frontend/src/pages/admin/instance-block.vue

* Update packages/frontend/src/pages/admin/instance-block.vue

* Update packages/frontend/src/components/MkInstanceCardMini.vue

* Update packages/backend/src/core/entities/InstanceEntityService.ts

* Update packages/backend/src/core/entities/InstanceEntityService.ts

* Update packages/backend/src/core/entities/InstanceEntityService.ts

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

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

* fix: サイレンスされてるサーバーからの投稿は全部ホームにする

* fix: undefinedでfalseを返すようにした

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-10-16 20:11:27 +09:00
syuilo 3ebed5aa3e feat: local-only antenna
Resolve #11869
2023-10-16 15:06:00 +09:00
syuilo 24437a04d4 fix of 1fa1d31696 2023-10-16 12:00:56 +09:00
syuilo 1fa1d31696 perf(backend): createdAtをidから取得するように & 無駄なDateインスタンスの生成を避けるように 2023-10-16 10:45:22 +09:00
syuilo 3f4ee98405
perf(backend): improve streaming api performance (#12033)
* wip

* Update NoteEntityService.ts

* wip

* wip

* wip

* wip
2023-10-15 10:36:22 +09:00
syuilo 329830e2c3 perf(backend): tweak populateMyReaction 2023-10-14 10:05:44 +09:00
syuilo 061e389340 perf(backend): nyaizeを投稿時にやる
Resolve #12030
2023-10-14 10:04:13 +09:00
syuilo 7a8d5e5840 enhance: ローカルタイムライン、ソーシャルタイムラインで返信を含むかどうか設定可能に
Resolve #12001
2023-10-11 10:15:44 +09:00
syuilo 1f0c27edf2 fix(backend): フォローしているユーザーからの自分の投稿への返信がタイムラインに含まれない問題を修正 2023-10-11 08:18:00 +09:00
syuilo 8ab3640291 fix of 0bb0c32908 2023-10-09 21:52:31 +09:00
syuilo edf847d966 fix of 0bb0c32908 2023-10-09 21:23:07 +09:00
syuilo 0bb0c32908 enhance(backend): RedisへのTLの構築をListで行うように
#11404
2023-10-09 20:31:39 +09:00
syuilo 04971ca565 perf(backend): untilDate/sinceDate指定時のクエリパフォーマンスを向上 2023-10-09 18:13:53 +09:00
syuilo 7066d61730 fix 2023-10-09 17:41:54 +09:00
syuilo 0f367da84b fix(backend): TLを途中までしかページネーションできなくなることがある問題を修正
Fix #11404
2023-10-09 16:47:46 +09:00
syuilo 3a4039e2e1 refactor 2023-10-09 15:34:03 +09:00
syuilo 4f20c87186 lint fixes 2023-10-09 13:32:41 +09:00
syuilo a2d3544a08 refactor(backend): better argument name 2023-10-09 13:22:58 +09:00
_ ca07459f5e
fix(backend): ダイレクト投稿がタイムライン上に正常に表示されない問題を修正 (#11993)
* DMをredisにpushするように

* add test

* add CHANGELOG

* Update NoteCreateService.ts

* lint

* ✌️

* 前のバージョンから発生した問題ではないため不要

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-10-09 12:36:25 +09:00
syuilo 5601ed0914 enhance(backend): UserListMembershipにユーザーリストの作成者IDを非正規化 2023-10-09 08:46:05 +09:00
syuilo 2859cbab91 perf(backend): WebSocket接続が多い場合のパフォーマンスを向上
https: //github.com/MisskeyIO/misskey/pull/176
Co-Authored-By: KOBA789 <kobahide789@gmail.com>
2023-10-08 08:10:28 +09:00
syuilo 7cd9a90f26 perf(backend): use HyperLogLog instead of Set to improve hashtag chart performance 2023-10-08 07:51:10 +09:00
syuilo dc435fb8ee enhance(backend): tweak hashtag trend 2023-10-07 14:05:58 +09:00
MeiMei c8d7a5ae76
連合なしアンケートのUpdateがリモートに配信されてしまうのを修正 (#11977) 2023-10-07 12:19:05 +09:00
syuilo 71edc65d0d enhance(backend): improve hashtags/trend performance 2023-10-07 12:05:17 +09:00
syuilo 3a7558f36c enhance(backend): 3日以内に投稿されたノートのみハイライト用スコア加算 2023-10-07 07:59:46 +09:00
syuilo 4a595153dc enhance(backend): 返信はハイライトに載らないように 2023-10-07 07:53:14 +09:00
syuilo 873a93fea3 Merge branch 'develop' of https://github.com/misskey-dev/misskey into develop 2023-10-06 21:11:48 +09:00
syuilo e4345679dc clean up 2023-10-06 21:11:45 +09:00
nenohi 11e657bdd7
絵文字重複チェック (#11941)
* 絵文字重複チェック

* アップデート時のチェック

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

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>

* Update packages/backend/src/server/api/endpoints/admin/emoji/add.ts

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>

* Update packages/backend/src/server/api/endpoints/admin/emoji/update.ts

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-10-06 21:05:44 +09:00
syuilo a5b6e807bb feat: per user featured notes 2023-10-06 18:30:08 +09:00
syuilo 7d289c1b77 refactor 2023-10-06 17:01:06 +09:00
syuilo 0bdbdba9f8 refactor 2023-10-06 16:58:38 +09:00
syuilo 4489ca3c74 refactor 2023-10-06 16:28:21 +09:00
syuilo 87416710c3 enhance(backend): some tweaks 2023-10-06 16:17:29 +09:00
syuilo 132b01461d refactor 2023-10-06 16:10:59 +09:00
syuilo dab205edb8 enhance(backend): improve featured system 2023-10-06 14:24:25 +09:00
syuilo 780721e9a2 clean up 2023-10-05 20:34:50 +09:00
anatawa12 ee483f2dee
Disallow renote of direct note (#11970)
* chore: renoteに関するチェックをまとめる

* fix: ダイレクト投稿をrenoteできる

* fix(frontend): 自分のダイレクト投稿をrenoteできる

* docs(changelog): ダイレクト投稿をリノートできてしまう

* fix lint

* chore(backend): visibilityに関するエラーをApi Errorとして返す
2023-10-05 17:03:50 +09:00
syuilo 5b00fa6f82 enhance(backend): users/notesでチャンネル投稿を含めるオプション
Resolve #11965
2023-10-05 09:48:45 +09:00
syuilo 0dbf5175df enhance: improve moderation log 2023-10-04 19:55:35 +09:00
syuilo b40329887f revert: note editing 2023-10-04 12:05:01 +09:00
syuilo 3dd84f7824 tweak 2023-10-04 11:48:51 +09:00
syuilo 17b83ff4c1 enhance: TLキャッシュ容量を設定できるように 2023-10-04 08:46:27 +09:00
syuilo 6277a5545c
feat: improve tl performance (#11946)
* wip

* wip

* wip

* wip

* wip

* wip

* Update NoteCreateService.ts

* wip

* wip

* wip

* wip

* Update NoteCreateService.ts

* wip

* Update NoteCreateService.ts

* wip

* Update user-notes.ts

* wip

* wip

* wip

* Update NoteCreateService.ts

* wip

* Update timeline.ts

* Update timeline.ts

* Update timeline.ts

* Update timeline.ts

* Update timeline.ts

* wip

* Update timelines.ts

* Update timelines.ts

* Update timelines.ts

* wip

* wip

* wip

* Update timelines.ts

* Update misskey-js.api.md

* Update timelines.ts

* Update timelines.ts

* wip

* wip

* wip

* Update timelines.ts

* wip

* Update timelines.ts

* wip

* test

* Update activitypub.ts

* refactor: UserListJoining -> UserListMembership

* Update NoteCreateService.ts

* wip
2023-10-03 20:26:11 +09:00
syuilo 7e74cff126 後方互換性の強化 2023-09-30 08:12:25 +09:00
syuilo 392de4df36 enhance: ノートの翻訳機能の利用可否をロールで設定可能に
Resolve #11923
2023-09-30 07:54:11 +09:00
syuilo a512915a84 fix(backend): Redisに古いMisskeyバージョンのキャッシュが残っている場合の問題を修正 2023-09-30 07:33:58 +09:00
syuilo b9da1415a5 feat: 通知の受信設定を強化 2023-09-29 11:29:54 +09:00
syuilo 2438c047a7 enhance: 編集されたノートかどうか分かるように 2023-09-28 21:06:14 +09:00
syuilo c106db89e1 feat: note edit 2023-09-28 17:21:16 +09:00
syuilo 5318532a8d enhance: improve moderation log 2023-09-25 10:29:12 +09:00
syuilo fe570fe16b
Update DriveService.ts 2023-09-24 16:45:36 +09:00
syuilo cf573add27 fix 2023-09-24 16:24:13 +09:00
syuilo 841e6ff901 improve moderation log 2023-09-24 15:40:38 +09:00
syuilo 8e5a90589d improve moderation log 2023-09-24 10:57:24 +09:00
syuilo ed983a5baf improve moderation log 2023-09-24 10:46:09 +09:00
syuilo 2ad3b1fd74 improve moderation log 2023-09-24 10:33:30 +09:00
syuilo 9e4d3ebe5f
enhance(backend): refine moderation log (#10939)
* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* Update DriveService.ts
2023-09-23 18:28:16 +09:00
anatawa12 526b3ae0e4
feat: ユーザを除外できるアンテナ (#11277)
* feat: ユーザを除外できるアンテナ

* feat(backend/api): ユーザを除外できるアンテナの作成・更新

* feat(frontend): ユーザを除外できるアンテナの作成・更新

* docs(changelog): add アンテナで一部のユーザを除外したすべてのノートから受信できるようになりました

* fix: d.ts生成時にexport defaultを生成するように

* fix CHANGELOG.md

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-09-22 16:52:43 +09:00
typeling1578 3bbc2e55b1
fix(backend): mostr.pub, Mitraのユーザーをフォローできない問題を修正 (#11791)
* fix(backend): mostr.pub, Mitraのユーザーをフォローできない問題を修正

* Revert "fix(backend): mostr.pub, Mitraのユーザーをフォローできない問題を修正"

This reverts commit 9685715e6470caffc2b0c7b991d55c5edf7fa0f1.

* fix ApResolverService

* Update CHANGELOG.md

* fix test

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-09-22 16:43:01 +09:00
syuilo c836157edb
enhance: 二要素認証設定時のセキュリティを強化 (#11863)
* enhance: 二要素認証設定時のセキュリティを強化

パスワード入力が必要な操作を行う際、二要素認証が有効であれば確認コードの入力も必要にする

* Update CoreModule.ts

* Update 2fa.ts

* wip

* wip

* Update 2fa.ts

* tweak
2023-09-22 14:12:33 +09:00
syuilo e3f151e230 feat: 指定したユーザーの投稿通知
Resolve #11499
2023-09-21 18:48:15 +09:00
syuilo e41619775f feat: プロフィールでのリンク検証
Resolve #11099
2023-09-21 11:58:51 +09:00
syuilo fa13b815ef fix: provide NoSuchNoteError error 2023-09-20 11:43:33 +09:00
syuilo 0183d24786 Update ClipService.ts 2023-09-20 11:36:39 +09:00
syuilo 053da10e94 refactor(backend): update directory structure for models 2023-09-20 11:33:36 +09:00
syuilo c3db55b5b6 fix 2023-09-20 11:29:10 +09:00
syuilo bb0b2df37e refactor(backend): extract clip-related logics to ClipService 2023-09-20 09:33:52 +09:00
syuilo f7c6932a83 enhance: 各ノートが被クリップ数を保持するようにし、無意味にnotes/clipsを叩かないように 2023-09-17 10:55:26 +09:00
syuilo 6cf466e5d1
update deps (#11820)
* update deps

* fix

* wip

* wip

* wip

* Update docker-compose.yml.example

* Delete reviewer-lottery.yml

* Update RepositoryModule.ts

* wip

* wip

* clean up

* update deps

* wip

* wip
2023-09-15 14:28:29 +09:00
かっこかり 3456680e1d
新しい実績を追加 (#11817)
* (add) new achievement

* (update) changelog

* Update test-notification.ts

* tweak

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-09-12 15:48:19 +09:00
syuilo ff9a65e8fa
feat: passkey support (#11804)
https://github.com/MisskeyIO/misskey/pull/149
2023-09-08 14:05:03 +09:00
syuilo ca00a08e6e feat: introduce aidx and make it default
Co-Authored-By: MeiMei <30769358+mei23@users.noreply.github.com>
2023-09-06 18:33:51 +09:00
syuilo 1beaac8e2d fixes 2023-09-05 17:02:14 +09:00
syuilo f53cffaeb2 enhance(backend): タイムライン等の有効期限を設定可能に
Resolve #11773
2023-09-05 15:03:50 +09:00
syuilo 1f7a81aae7
update deps (#11764)
* update deps

* node16

* wip

* wip

* wip

* Update test-utils.ts

* wip

* Update tsconfig.json

* wip

* Update package.json

* wip

* Update following.vue

* Update followers.vue

* Update index.vue

* Update share.vue

* Update MkUserPopup.vue

* Update MkPostForm.vue

* wip

* Update MkTokenGenerateWindow.vue

* Update MkPagination.vue

* refactor

* update deps

* update deps

* Update sw.ts

* wip

* wip

* wip

* Update FetchInstanceMetadataService.ts

* Update FetchInstanceMetadataService.ts

* update node

* update deps

* 🎨
2023-09-04 13:33:38 +09:00
syuilo 257c4fccf1
feat: Refine 2fa (#11766)
* wip

* Update 2fa.qrdialog.vue

* Update 2fa.vue

* Update CHANGELOG.md

* tweak

* ✌️
2023-08-28 18:25:31 +09:00
taichan af806352a1
feat: ローカルのみノート検索 (#11451)
* Add local search

* Update CHANGELOG

* lint

* Remove TODO comment

* lint

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

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-08-20 13:39:37 +09:00
Essem 3eacbe6b6d
enhance(backend): Add address bind config option (#11725)
* Add address bind config option

* Edit changelog

* forgot to add to types
2023-08-20 13:20:01 +09:00
Juunini 60fe5d6824
fix(backend): fix typo lnik to link (#11740) 2023-08-19 15:49:21 +09:00
woxtu dd1783f984
chore(backend): Resolve import/no-default-export rule violations (#11732)
* Disable `import/no-default-export` properly

* Disable `import/no-default-export`
2023-08-17 21:20:58 +09:00
syuilo 792622aead
refactor: prefix Mi for all entities (#11719)
* wip

* wip

* wip

* wip

* Update RepositoryModule.ts

* wip

* wip

* wip

* Revert "wip"

This reverts commit c1c13b37d2aaf3c65bc148212da302b0eb7868bf.
2023-08-16 17:51:28 +09:00
syuilo 9487856495
feat: refine announcement (#11497)
* wip

* Update read-announcement.ts

* wip

* wip

* wip

* Update index.d.ts

* wip

* Create 1691649257651-refine-announcement.js

* wip

* wip

* wip

* wip

* wip

* wip

* Update announcements.vue

* wip

* wip

* Update announcements.vue

* wip

* Update announcements.vue

* wip

* Update misskey-js.api.md

* Update users.ts

* Create MkAnnouncementDialog.stories.impl.ts

* wip

* wip

* Create AnnouncementService.ts
2023-08-13 20:12:29 +09:00
Kagami Sascha Rosylight ec229dbd3b
fix(backend/ApNoteService): try retrieving again when failed by duplication (#11472)
* fix(backend/ApNoteService): try retrieving again when failed by duplication

* Update CHANGELOG.md

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-08-08 13:26:03 +09:00
anatawa12 c5b8766a18
feat: sensitive channel (#11438)
* feat(backend): add isSensitive to Channel

* feat(backend): support isSensitive in channel endpoints

* feat(frontend/channel-editor): support isSensitive in create/edit channel page

* feat(frontend/channel): show sensitive indicator for sensitive channels

* docs(changelog): add チャンネルをセンシティブ指定できるようになりました

* chore: license header for each file

* chore: add isSensitive of channel to Note object
2023-08-05 13:58:31 +09:00
woxtu 79966d33b5
Fix typos (#11450) 2023-08-05 13:56:33 +09:00
woxtu 8a6791da3f
refactor(backend): Remove unused injections (#11462)
* Remove unused injections

* Remove unused imports
2023-08-05 10:33:00 +09:00
syuilo 2b4c8c9e0f
update deps (#11409)
* update deps

* Update .eslintrc.js

* Update .eslintrc.js

* lint

* lint

* Update update.ts

* update deps

* Update .eslintrc.js
2023-07-31 19:14:20 +09:00
Shun Sakai c2370a1be6
chore: 著作権とライセンスについての情報を各ファイルに追加する (#11348)
* chore: Add the SPDX information to each file

Add copyright and licensing information as defined in version 3.0 of
the REUSE Specification.

* tweak format

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-07-27 14:31:52 +09:00
woxtu cb0fa9a8ab
Use promises API (#11351) 2023-07-27 09:04:19 +09:00
Koki Takahashi 0404d9c103
fix(backend): Change isPublic to correctly recognize as:Public term (#11347)
* fix: Change isPublic to correctly recognize as:Public term

* Update CHANGELOG.md

---------

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2023-07-25 10:35:21 +00:00
Acid Chicken (硫酸鶏) c9b9db13c7
refactor: avoid redundant method chain 2023-07-21 10:07:03 +00:00
syuilo af2368bd2b perf(backend): use RSA 2048bit
#11129
2023-07-21 11:59:00 +09:00
tamaina dc93a418c0
perf(backend): createPersonでキャッシュに保存する, DBのトランザクション回数を減らす (#11324)
* perf(backend): createPersonでキャッシュを積極的に利用する, トランザクション回数を減らす

* move comment

* fix

* oops

* fix

* fix

* fix
2023-07-20 14:44:37 +09:00
syuilo 871027fa0c enhance: ユーザーにロールが期限付きでアサインされている場合、その期限をユーザーのモデレーションページで確認できるように
Close #11059
2023-07-20 10:54:41 +09:00
xtex bf9e74ca05
fix: failed to resolve acct URI which points to local Person (#11024)
* fix: resolving alias for local users (#9199)

Signed-off-by: xtex <xtexchooser@duck.com>

* style: return type for RemoteUserResolveService#resolveSelf

Signed-off-by: xtex <xtexchooser@duck.com>

* docs: update CHANGELOG

Signed-off-by: xtex <xtexchooser@duck.com>

* style: fix typecheck

Signed-off-by: xtex <xtexchooser@duck.com>

---------

Signed-off-by: xtex <xtexchooser@duck.com>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-07-19 13:01:14 +09:00
woxtu 8c77153c04
Fix auto-fixable issues (#11314) 2023-07-19 11:27:50 +09:00
Kagami Sascha Rosylight d5f30ecb86
feat(backend): allow disabling cache for sensitive files (#11245)
* feat(backend): allow disabling cache for sensitive files

* Update CHANGELOG.md

* fix storybook

* Update locales/ja-JP.yml

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-07-15 20:12:20 +09:00
syuilo f96ed9a3f3 fix type errors 2023-07-15 20:07:31 +09:00
woxtu b392f44b81
refactor(backend): Improve UUID generation (#11286)
* Replace with `crypto.randomUUID()`

* Remove uuid
2023-07-15 18:39:38 +09:00
ZerglingGo 8f196fc67c
fix: typo in comment (#11283) 2023-07-15 10:01:41 +09:00
まっちゃとーにゅ 9e330c9e38
feat: MeilisearchにIndexするノートの範囲を設定できるように (#11282) 2023-07-15 09:59:19 +09:00
yukineko 02957a1b5d
enhance: 招待機能の改善 (#11195)
* refactor(backend): 招待機能を改修

* feat(backend): 招待コードのcreate/delete/listエンドポイントを追加

* add(misskey-js): エンドポイントと型を追加

* change(backend): metaでinvite関連の情報も返すように

* add(misskey-js): エンドポイントと型を追加

* add(backend): `/endpoints/invite/limit`を追加

* fix: createdByがnullableではなかったのを修正

* fix: relationが取得できていなかった問題を修正

* fix: パラメータを間違えていたのを修正

* feat(client): 招待ページを実装

* change(client): インスタンスメニューの「招待」押した場合に招待ページに飛ぶように変更

* feat: 招待コードをコピーできるように

* change(backend): metaに招待コード発行に関する情報を持たせるのをやめる

* feat: ロールごとに招待コードの発行上限数などを設定できるように

* change(client): 招待コードをコピーしたときにダイアログを出すように

* add: 招待に関する管理者用のエンドポイントを追加

* change(backend): モデレーターであれば作成者以外でも招待コードを削除できるように

* change(backend): admin/invite/listはオフセットでページネーションするように

* feat(client): 招待コードの管理ページを追加

* feat(client): 招待コードのリストをソートできるように

* change: `admin/invite/create`のレスポンスを修正

* fix(client): 有効期限を指定できていなかった問題を修正

* refactor: 必要のない箇所を削除

* perf(backend): use limit() instead of take()

* change(client): 作成ボタンを見た目を変更

* refactor: 招待コードの生成部分を共通化し、コード内に"01OI"のいずれかの文字を含まないように

* fix(client): paginationの仕様が変わっていたので修正

* change(backend): expiresAtパラメータのnullを許容

* change(client): 有効期限を設けないときは日付の入力欄を非表示に

* fix: 自身のポリシーよりもインスタンス側のポリシーが優先表示される問題を修正

* fix: n時間のときに「n時間間」となってしまうのを修正

* fix(backend): ポリシーが途中で変更されたときに作成可能数がマイナス表記になってしまうのを修正

* change(client): 招待コードのユーザー名が不明な理由を表示するように

* update: CHANGELOG.md

* lint

* refactor

* refactor

* tweak ui

* 🎨

* 🎨

* add(backend): indexを追加

* change(backend): indexの追加に伴う変更

* change(client): インスタンスメニューの「招待」の場所を変更

* add(frontend): MkInviteCode用のstorybookを追加

* Update misskey-js.api.md

* fix(misskey-js): InviteのcreatedByの型が間違っていたのを修正

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-07-15 09:57:58 +09:00
okayurisotto 2b6dbd4fcb
refactor: 可読性のため一部でArray.prototype.atを使うように (#11274)
* refactor: `Array.prototype.at`を使うように

* fixup! refactor: `Array.prototype.at`を使うように
2023-07-14 10:45:01 +09:00
okayurisotto c0dbc3b53f
refactor: substr -> substring (#11273) 2023-07-14 07:59:54 +09:00
syuilo af30959cb9 fix runtime error 2023-07-13 20:15:47 +09:00
okayurisotto e35a370af0
refactor(backend): core/activitypub (#11247)
* eslint: `explicit-function-return-type`

* eslint: `no-unnecessary-condition`

* eslint: `eslint-disable-next-line`

* eslint: `no-unused-vars`

* eslint: `comma-dangle`

* eslint: `import/order`

* cleanup: unnecessary non-null assertion

* cleanup: `IActivity`に`actor`は常に存在するようなので

* cleanup: unnecessary `as`

* cleanup: unnecessary `Promise.resolve`

* cleanup

* refactor: `String.prototype.match()`である必要がない部分をよりシンプルな書き方に変更

* refactor: よりよい型定義

* refactor: よりよい型定義

- `LdSignature`の`normalize`メソッドでの使われ方から、
	- `data`引数の型定義を`any`から`JsonLdDocument`へ修正
	- `getLoader`メソッドの返り値の型定義の一部を`any`から`RemoteDocument`へ修正
		- `contextUrl`が不正な値(`null`)となっていたことが判明したため`undefined`へ修正
		- `document`の型と合わせるために`CONTEXTS`の型定義の一部を`unknown`から`JsonLd`へ修正
			- とりあえず`satisfies`を使用
		- `document`の型と合わせるために`fetchDocument`メソッドの返り値の型定義の一部を`unknown`から`JsonLd`へ修正
			- どうしようもなく`as`を使用

* refactor: 型ガードを使うことでnon-null assertionをやめた

* refactor: non-null assertionをやめた

`.filter()`で行っている型ガードなどの文脈から、より適しているだろうと思われる書き方に変更した。

* refactor: 型ガードを使うことで`as`をやめた

* refactor: `as`をやめた

* refactor: よりよい型定義

- `id`は`null`とのunionになっていたが、`null`を渡している場面はなかった
	- またおそらくこのメソッドは`IOrderedCollection`を返すため、そちらに合わせて`null`とのunionをやめた
		- `IOrderedCollection`とはまだ型に相違がある
- `totalItems`をコメントや使われ方を元に`number`へ推論

* refactor: `for-of` -> `Array.prototype.map`

* refactor: `delete`演算子を使わない形に
2023-07-13 12:48:34 +09:00
okayurisotto cf3e39178b
refactor(backend): 存在確認のfindOneByexistに置き換え (#11224)
* refactor(backend): 存在確認の`findOneBy`を`exist`に置き換え

* cleanup
2023-07-11 14:58:58 +09:00
nomad 791ae608a5
fix(backend): fix fetchInstanceMetadata error (#11236) 2023-07-11 14:40:56 +09:00
Kagami Sascha Rosylight 5059d4d7e1
refactor(backend): skip fetching notes when the data is same-origin (#11200)
* refactor(backend): skip fetching notes when the data is same-origin

* Update CHANGELOG.md

* sentFrom
2023-07-09 08:59:44 +09:00
Caipira 60366a4558
fix(backend): Remove Meilisearch index when notes are deleted (#10988)
* fix(backend): Include feature to delete Meilisearch index notes

* Update variable name
`cascadingNotesFilter` -> `federatedLocalCascadingNotes`

* tweak

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-07-08 21:31:38 +09:00
tamaina 7ec07d5fd2
perf(backend): Reduce memory usage of MemoryKVCache (#11076)
* perf(backend): Reduce memory usage of MemoryKVCache

* fix
2023-07-08 21:18:16 +09:00
syuilo 081a14d6f3 perf(backend): use limit() instead of take() 2023-07-08 16:53:07 +09:00
okayurisotto 4f876c9e8d
refactor(backend): core/activitypub/models (#11067)
* cleanup(`ApImageService.ts`)

* refactor(`ApImageService.ts`)

* cleanup(`check-https.ts`)

* cleanup(`ApMentionService.ts`)

* refactor(`ApMentionService.ts`)

* cleanup(`ApNoteService.ts`): unneeded `eslint-disable-next-line`

* cleanup(`ApNoteService.ts`)

* WIP(`ApImageService.ts`): `image.url`を`getApHrefNullable()`に通すかどうか悩んでいる

* refactor(`ApNoteService.ts`): function return type

* cleanup(`ApNoteService.ts`): deadcode

* refactor(`ApNoteService.ts`): `eslint-disable-next-line`

* refactor(`ApNoteService.ts`): non-null assertion

これまでは`getApId()`の方でエラーがスローされていた。

* cleanup(`ApNoteService.ts`): unneeded await

* refactor(`ApNoteService.ts`): note.attachment

- `toArray()`を使うように
- よくわからない条件式を整理
- `as`をなくすために`promiseLimit()`でジェネリクスを使うように

* cleanup(`ApNoteService.ts`)

* refactor(`ApNoteService.ts`): よりよい型定義

`res`が`null`でないことは確認されているようだったので`null`とのunionはなくした

* refactor(`ApNoteService.ts`): 不要な条件を削除

* cleanup(`ApNoteService.ts`)

* cleanup(`ApNoteService.ts`): 重要でない`as`を削除

* refactor(`ApNoteService.ts`): `eslint-disable-next-line`

* cleanup(`ApNoteService.ts`): deadcode

* cleanup(`ApNoteService.ts`): unneeded non-null assertion

* refactor(`ApNoteService.ts`): 不要な条件を削除

* WIP(`ApNoteService.ts`): `as`をなくす

エラーメッセージを考える

* cleanup(`ApNoteService.ts`): 不要な`as`を削除

* cleanup(`ApPersonService.ts`): `no-unused-vars`

* cleanup(`ApPersonService.ts`): deadcode

* refactor(`ApPersonService.ts`): function return type

* cleanup(`ApPersonService.ts`): deadcode

* cleanup(`ApPersonService.ts`): deadcode

* WIP(`ApPersonService.ts`): `as`を調整

`null`でないか確認する処理が続いていたので型アサーションは`null`とのunionにした。
より本質的な改善の余地があるように感じるのでひとまずWIPとしてコミット。

* refactor(`ApPersonService.ts`): `eslint-disable-next-line`

* WIP(`ApPersonService.ts`): `as any`をなくした

エラーをスローするようにせざるを得なかったのでエラーメッセージを考える必要がある。

* WIP(`ApNoteService.ts`): non-null assertion

non-nullアサーションを減らすために事前に存在確認をするようにした。
エラーをスローするようにしたのでメッセージを考えなければならない。

* refactor(`ApNoteService.ts`): non-null assertion -> optional chaining

* refactor(`ApPersonService.ts`): `eslint-disable-next-line`

* refactor(`ApPersonService.ts`): `eslint-disable-next-line`

* refactor(`ApPersonService.ts`): function return type

* refactor(`ApPersonService.ts`): type guardによるnon-null assertionの削除

* WIP(`ApPersonService.ts`): `analyzeAttachments`

- Field型を事前に定義しておくように

- `attachments`が`IObject`だった場合、返り値が`{ fields: [] }`になるようだが構わないのか?
- `toArray()`を通すべきでは?

* Revert "WIP(`ApImageService.ts`): `image.url`を`getApHrefNullable()`に通すかどうか悩んでいる"

This reverts commit aeefb843a8a688f8a356794e8981c58f8a2733af.

* cleanup(`ApImageService.ts`): `import`

* refactor(`ApImageService.ts`): 冗長だった部分を短く

* cleanup(`ApMentionService.ts`): `import`

* refactor(`ApImageService.ts`): `JSON.stringify()`でのindentationを追加

* cleanup(`ApNoteService.ts`): `import`

* cleanup(`ApNoteService.ts`)

* cleanup(`ApNoteService.ts`)

* cleanup(`ApNoteService.ts`)

* cleanup(`ApNoteService.ts`): `any`に対するnon-null assertion

* refactor(`ApNoteService.ts`): 添付ファイル

* cleanup(`ApPersonService.ts`): `import`

* refactor(`ApPersonService.ts`): より実情に即した`as`に

* cleanup(`ApPersonService.ts`)

* refactor(`ApPersonService.ts`): 冗長だった部分を修正

* cleanup(`ApPersonService.ts`): deadcode

* cleanup(`ApPersonService.ts`)

* cleanup(`ApQuestionService.ts`): `import`

* refactor(`ApQuestionService.ts`): `eslint-disable-next-line`

* refactor(`ApQuestionService.ts`): `eslint-disable-next-line`

* cleanup(`ApQuestionService.ts`)

* refactor(`ApQuestionService.ts`): non-null assertionを消した

* cleanup(`ApQuestionService.ts`)

* WIP(`ApQuestionService.ts`): non-null assertionを消す

エラーメッセージを考える必要がある。

* refactor(`ApQuestionService.ts`): `any`を消す

* refactor(`ApQuestionService.ts`): function return type

* WIP(`ApPersonService.ts`): 可読性の低い三項演算子を削除しつつnon-null assertionを回避

エラーメッセージを考える必要がある。

* cleanup(`ApPersonService.ts`): 不必要な三項演算子を削除

* cleanup(`ApPersonService.ts`): 不要な`as`

* cleanup(`ApPersonService.ts`)

* refactor(`ApPersonService.ts`)

* refactor(`ApPersonService.ts`): 可読性の低い三項演算子を削除

元の実装が悪いと判断し`null`かどうかの確認をより厳密に行うようにした。

* cleanup(`ApPersonService.ts`)

* cleanup(`ApPersonService.ts`)

* refactor(`ApPersonService.ts`): 返り値を`void`に統一

この返り値を参照しているコードは見当たらなかった。
また、普通に意味がない値であるように見受けられた。

* fixup! refactor(`ApPersonService.ts`): 返り値を`void`に統一

* refactor(`ApNoteService.ts`)

* refactor(`ApPersonService.ts`)

* cleanup(`ApPersonService.ts`)

* cleanup(`ApPersonService.ts`)

* refactor(`ApPersonService.ts`): 返り値の`void`統一と条件式の調整

この返り値を参照しているコードは見当たらなかった。
また、普通に意味がない値であるように見受けられた。

* cleanup(`ApQuestionService.ts`)

* refactor(`ApQuestionService.ts`)

* refactor(`ApQuestionService.ts`)

* refactor(`tag.ts`): function return type

* fixup! enhance: account migration (#10592)

* fixup! WIP(`ApPersonService.ts`): 可読性の低い三項演算子を削除しつつnon-null assertionを回避

* fixup! cleanup(`ApPersonService.ts`): 不要な`as`

* refactor: エラーメッセージを見繕った

* Revert "cleanup(`ApImageService.ts`): `import`"

This reverts commit 1454d04c377eaf46013b0f3c3ce664a4034fd53a.

* Revert "cleanup(`ApMentionService.ts`): `import`"

This reverts commit 244f6720c134a3434e33c1caf6e3e0c2c87b58f5.

* Revert "cleanup(`ApNoteService.ts`): `import`"

This reverts commit d8f0d769733c4cb0629821b04e557a0ae6f5ff5b.

* Revert "cleanup(`ApPersonService.ts`): `import`"

This reverts commit 5190ef954caf376da46c707f52e02208d53caafd.

# Conflicts:
#	packages/backend/src/core/activitypub/models/ApPersonService.ts

* Revert "cleanup(`ApQuestionService.ts`): `import`"

This reverts commit 778585e2882477fec5f11fabf398b4b89cf26da2.

* processRemoteMoveはそのままにしてほしい

* Revert "fixup! refactor(`ApPersonService.ts`): 返り値を`void`に統一"

This reverts commit 083cd678abcd64325b9628895366c03b893e42ca.

* Revert "refactor(`ApPersonService.ts`): 返り値を`void`に統一"

This reverts commit bfa0fcd6f01a6e519ea0c68017358f9980d2ed96.

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-07-08 08:57:13 +09:00
tamaina b318789354 fix(backend): deliverManyにcontentのnullチェックを追加
https://github.com/MisskeyIO/misskey/pull/99
2023-07-07 23:15:04 +00:00
tamaina 0b8e0fa91b fix 2023-07-07 22:55:53 +00:00
popkirby 8daca59ca6
perf(backend): use mutex for nsfw model loading (#11109)
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-07-08 07:27:26 +09:00
okayurisotto d84796588c
cleanup: trim trailing whitespace (#11136)
* cleanup: trim trailing whitespace

* update(`.editorconfig`)

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-07-08 07:08:16 +09:00
Yuriha 4c879b3a33
perf(backend): Improve performance of FetchInstanceMetadata (#11128)
* Perf: Avoid retries to acquire lock in fetchInstanceMetadata

* Fix

* Add Changelog

* Fix typo

* Fix lint

* 記法をMisskey式にする

* ????

* refactor
https://github.com/misskey-dev/misskey/pull/11128#pullrequestreview-1518059366

* refactor

* getいらない?

* fix

* fix

* Update CHANGELOG.md

* clean up

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-07-07 23:28:27 +09:00
syuilo d5c4e77c44 update deps 2023-07-07 10:53:06 +09:00
okayurisotto 4a7da723b3
refactor(backend): ノート削除時のfindCascadingNotesの処理を整理 (#11131)
* refactor(backend): ノート削除時の`findCascadingNotes`の処理を整理

* cleanup: unneeded async await

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-07-06 11:25:46 +09:00
okayurisotto 9959f5bd04
refactor(ApDbResolverService.ts): URLを扱う複雑な正規表現をURLインターフェイスで置き換え (#11123)
* refactor(`ApDbResolverService.ts`): URLを扱う複雑な正規表現をURLインターフェイスで置き換え

* fixup! refactor(`ApDbResolverService.ts`): URLを扱う複雑な正規表現をURLインターフェイスで置き換え
2023-07-06 08:47:47 +09:00
Umisyo(Souta Kusunoki) 8f94b36732
refactor: ApDeliverManagerService.tsの型とJSDocを適切に置き換え (#11096)
* refactor: ApDeliverManagerService.ts のanyを適切な型に置き換え

Signed-off-by: Umisyo <kusunokisouta@gmail.com>

* fix: quote to single quote

Signed-off-by: Umisyo <kusunokisouta@gmail.com>

* refactor: JSDocを実態に合わせて修正

Signed-off-by: Umisyo <kusunokisouta@gmail.com>

* fix: activityのnullを許容するよう変更

Signed-off-by: Umisyo <kusunokisouta@gmail.com>

---------

Signed-off-by: Umisyo <kusunokisouta@gmail.com>
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-07-05 12:17:52 +09:00
tamaina 22227fa641
perf(backend): Use addBulk to add deliver queues (#11114) 2023-07-05 12:15:48 +09:00