Commit graph

1841 commits

Author SHA1 Message Date
tamaina
87ded2bd1c ManyToOne 2024-03-01 05:04:02 +00:00
tamaina
16cea7d3b6 add httpMessageSignaturesImplementationLevel to FederationInstance 2024-03-01 04:38:42 +00:00
tamaina
7751d80056 fix test 2024-02-29 22:57:10 +00:00
tamaina
66c0942d7e fix test? 2024-02-29 22:50:46 +00:00
tamaina
5f89b0a2a3 remove digest prerender 2024-02-29 22:41:45 +00:00
tamaina
434520a14e ap-request.tsを復活させる 2024-02-29 22:36:19 +00:00
tamaina
735714d61c signedPost, signedGet 2024-02-29 22:20:48 +00:00
tamaina
fc20ef0181 fix 2024-02-29 21:18:46 +00:00
tamaina
a1e6cb02b8 use @misskey-dev/node-http-message-signatures 2024-02-29 21:05:31 +00:00
tamaina
a4e7d6940b Merge branch 'develop' into ed25519 2024-02-29 20:34:55 +00:00
Yuriha
26d4c5fd94
メンションの最大数をロールごとに設定可能にする (#13343)
* Add new role policy: maximum mentions per note

* fix

* Reviewを反映

* fix

* Add ChangeLog

* Update type definitions

* Add E2E test

* CHANGELOG に説明を追加

---------

Co-authored-by: taichan <40626578+tai-cha@users.noreply.github.com>
2024-02-29 20:48:02 +09:00
zyoshoka
16f16e6b08
fix(backend): ダイレクトなノートに対してはダイレクトでしか返信できないように (#13477)
* fix(backend): ダイレクトなノートに対してはダイレクトでしか返信できないように

* Update CHANGELOG.md

* test(backend): `notes/create`とWebSocket関連のテストを追加
2024-02-29 20:42:02 +09:00
かっこかり
39d6af135f
enhance: 通知の履歴をリセットできるように (#13335)
* enhance: 通知の履歴をリセットできるように

* Update Changelog

* 通知欄も連動して更新するように

* revert some changes

* Update CHANGELOG.md

* Remove unused part

* fix
2024-02-29 20:03:30 +09:00
syuilo
98934b6738 fix type 2024-02-29 17:54:32 +09:00
syuilo
920c3be750 update deps 2024-02-29 11:10:03 +09:00
tamaina
2bc4221f40 Merge branch 'develop' into ed25519 2024-02-28 14:21:25 +00:00
taichan
5f43c2faa2
enhance(backend): 通知がミュート・凍結を考慮するようにする (#13412)
* Never return broken notifications #409

Since notifications are stored in Redis, we can't expect relational
integrity: deleting a user will *not* delete notifications that
mention it.

But if we return notifications with missing bits (a `follow` without a
`user`, for example), the frontend will get very confused and throw an
exception while trying to render them.

This change makes sure we never expose those broken notifications. For
uniformity, I've applied the same logic to notes and roles mentioned
in notifications, even if nobody reported breakage in those cases.

Tested by creating a few types of notifications with a `notifierId`,
then deleting their user.

(cherry picked from commit 421f8d49e5d7a8dc3a798cc54716c767df8be3cb)

* Update Changelog

* Update CHANGELOG.md

* enhance: 通知がミュートを考慮するようにする

* enhance: 通知が凍結も考慮するようにする

* fix: notifierIdがない通知が消えてしまう問題

* Add tests (通知がミュートを考慮しているかどうか)

* fix: notifierIdがない通知が消えてしまう問題 (grouped)

* Remove unused import

* Fix: typo

* Revert "enhance: 通知が凍結も考慮するようにする"

This reverts commit b1e57e571dfd9a7d8b2430294473c2053cc3ea33.

* Revert API handling

* Remove unused imports

* enhance: Check if notifierId is valid in NotificationEntityService

* 通知作成時にpackしてnullになったらあとの処理をやめる

* Remove duplication of valid notifier check

* add filter notification is not null

* Revert "Remove duplication of valid notifier check"

This reverts commit 239a6952f717add53d52c3e701e7362eb1987645.

* Improve performance

* Fix packGrouped

* Refactor: 判定部分を共通化

* Fix condition

* use isNotNull

* Update CHANGELOG.md

* filterの改善

* Refactor: DONT REPEAT YOURSELF
Note: GroupedNotificationはNotificationの拡張なのでその例外だけ書けば基本的に共通の処理になり複雑な個別の処理は増えにくいと思われる

* Add groupedNotificationTypes

* Update misskey-js typedef

* Refactor: less sql calls

* refactor

* clean up

* filter notes to mark as read

* packed noteがmapなのでそちらを使う

* if (notesToRead.size > 0)

* if (notes.length === 0) return;

* fix

* Revert "if (notes.length === 0) return;"

This reverts commit 22e2324f9633bddba50769ef838bc5ddb4564c88.

* 🎨

* console.error

* err

* remove try-catch

* 不要なジェネリクスを除去

* Revert  (既読処理をpack内で行うものを元に戻す)

* Clean

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

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

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

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

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

* Clean

---------

Co-authored-by: dakkar <dakkar@thenautilus.net>
Co-authored-by: kakkokari-gtyih <daisho7308+f@gmail.com>
Co-authored-by: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com>
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-02-28 21:26:26 +09:00
zyoshoka
664aeb3ced
fix(backend): リノート時のHTLへのストリーミングの意図しない挙動を修正 (#13425)
* fix(backend): リノート時のストリーミングの意図しない挙動を修正

* Update CHANGELOG.md

* fix: 不要な返り値

* fix: 不適切な条件分岐を修正

* test(backend): add htl tests

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-02-28 17:43:17 +09:00
MeiMei
aaacfabc1b
perf(federation): Use hint for getAuthUserFromApId (#13470)
* Hint for getAuthUserFromApId

* とどのつまりこれでいいのか?
2024-02-28 16:44:01 +09:00
okayurisotto
b7d9d16201
refactor(backend): ノートのエクスポート処理でStreams APIを使うように (#13465)
* refactor(backend): ノートのエクスポート処理でStreams APIを使うように

* fixup! refactor(backend): ノートのエクスポート処理でStreams APIを使うように

`await`忘れにより、ジョブがすぐに完了したことになり削除されてしまっていた。
それによって、`NoteStream`内での`updateProgress`メソッドの呼び出しで、`Missing key for job`のエラーが発生することがあった。

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-02-28 15:34:58 +09:00
zyoshoka
0d47877db1
enhance(backend): フォロー・フォロワー関連の通知の受信設定の強化 (#13468)
* enhance(backend): 通知の受信設定に「フォロー中またはフォロワー」を追加

* fix(backend): 通知の受信設定で「相互フォロー」が正しく動作しない問題を修正

* Update CHANGELOG.md
2024-02-28 09:49:34 +09:00
zawa-ch
f906ad6ca7
Enhance: コンディショナルロールの条件に「マニュアルロールへのアサイン」を追加 (#13463)
* コンディショナルロールの条件に「マニュアルロールへのアサイン」を追加

* コメント修正
2024-02-27 18:45:46 +09:00
tamaina
59ae735169 httpMessageSignaturesImplementationLevel: '01' 2024-02-27 04:52:40 +00:00
tamaina
8579cb222f httpMessageSignaturesImplementationLevel 2024-02-27 04:25:51 +00:00
tamaina
f6b7872a02 httpMessageSignaturesSupported 2024-02-27 03:37:02 +00:00
tamaina
9705ec4a47 remove sign additionalPublicKeys signature requirements 2024-02-27 03:33:50 +00:00
tamaina
437e69cfc4 ED25519_PUBLIC_KEY_SIGNATURE_ALGORITHM 2024-02-27 03:08:55 +00:00
tamaina
eb8bef486d ED25519_SIGNED_ALGORITHM 2024-02-27 03:06:19 +00:00
tamaina
5876a28f1e httpMessageSignatureAcceptable 2024-02-27 03:01:07 +00:00
tamaina
e2a8f4f880 refresh 2024-02-27 02:15:49 +00:00
tamaina
13e0a64a77 set publicKeyCache lifetime 2024-02-27 01:57:35 +00:00
tamaina
1d780ac010 signatureAlgorithm 2024-02-27 01:41:34 +00:00
tamaina
172546f3ef fix 2024-02-26 21:44:33 +00:00
tamaina
00738b90c2 ✌️ 2024-02-26 21:31:43 +00:00
tamaina
5b7b8503cd getAuthUserFromApIdはmainを選ぶ 2024-02-26 21:27:50 +00:00
tamaina
1835397385 validate additionalPublicKeys 2024-02-26 21:06:05 +00:00
tamaina
02dfe0a3d5 1. ed25519キーペアを発行・Personとして公開鍵を送受信 2024-02-26 20:49:40 +00:00
zyoshoka
0fb7b98f96
fix(backend): fix incorrect schemas (#13458) 2024-02-26 19:49:12 +09:00
FineArchs
dd48366ed8
admin/emoji/updateの必須項目を減らす 等 (#13449)
* admin/emoji/update enhancement

* add CustomEmojiService.getEmojiByName

* update endpoint

* fix

* Update update.ts

* Update autogen files

* type assertion

* Update CHANGELOG.md
2024-02-25 18:06:26 +09:00
tamaina
2c6f25b710
fix: 古いキャッシュを使うのを修正 (#13453) 2024-02-25 12:36:10 +09:00
syuilo
41747b6ee2 refactor 2024-02-24 11:50:10 +09:00
tamaina
c0156b740b
enhance?: DeleteAccountServiceでユーザーを削除する際にuserChangeDeletedStateを発行する (#13382) 2024-02-23 18:15:39 +09:00
tamaina
600d91beda
enhance: リモートのフォロワーから再度Followが来た場合、acceptを返してあげる (#13388)
* enhance: リモートのフォロワーから再度Followが来た場合、acceptを返してあげる

* nanka meccha kaeta

* ブロックチェックの後にフォロー関係の存在チェックをする
2024-02-23 18:04:30 +09:00
okayurisotto
a861f913a7
fix(backend): より多くの人に使われているハッシュタグが検索結果上位に来るように (#11498) (#13340) 2024-02-23 18:02:12 +09:00
tamaina
b8d8b359bc
fix: プッシュ通知の変更が1時間ほど反映されない問題を修正 (#13407)
* fix: プッシュ通知の変更が1時間ほど反映されない問題を修正

* 410 to refresh

* refreshCache
2024-02-23 17:19:08 +09:00
okayurisotto
64953fadc9
refactor(backend): Array.prototype.filterでの非null確認ではisNotNull関数を使うように (#13442)
* `Array.prototype.filter`での非null確認では`isNotNull`関数を使うように

* `{}` -> `NonNullable<unknown>`
2024-02-23 14:12:57 +09:00
かっこかり
080a3c20bd
fix: SSR時のmetaをエスケープするように (#13440)
* fix: SSR時のmetaをエスケープするように

* エスケープ方法を変更
2024-02-23 14:10:13 +09:00
かっこかり
d20542c495
enhance: metaをSSR HTMLに埋め込む (#13436)
* enhance: `meta`をSSR HTMLに埋め込む

* HTML Metaの有効時間を指定

* 1時間

* MetaEntityService

* JSONをPackするように

* ✌️

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-02-23 10:47:17 +09:00
FineArchs
bf5952fd63
flash/update で部分的に変更できるようにする (#13396)
* make flash/update params optional

* Update autogen files

pnpm run build-misskey-js-with-types

* Update update.ts

* Update CHANGELOG.md

* hasOwnProperty -> hasOwn

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

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-02-22 21:31:57 +09:00
tamaina
4d6fab06de
refactor: Refactor NoteReadService.read (#13429)
* refactor: Refactor NoteReadService.read

* clean up

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

---------

Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-02-22 21:10:28 +09:00