Commit Graph

520 Commits

Author SHA1 Message Date
syuilo
26d85c8bed enhance(backend): ノートのハッシュタグもMeilisearchに突っ込むように
今後ハッシュタグ検索とか実装するときのため
2023-05-11 16:33:39 +09:00
syuilo
b380dc53e1 fix typo 2023-05-11 16:22:46 +09:00
nenohi
c15b75e477
センシティブワードを正規表現、CWにも適用するように (#10688)
* cwにセンシティブが効いてない

* CWが無いときにTextを見るように

* 比較演算子間違えた

* とりあえずチェック

* 正規表現対応

* /test/giにも対応

* matchでしなくてもいいのでは感

* レビュー修正

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

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

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

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* 修正

* wipかも

* wordsでスペース区切りのものできたかも

* なんか動いたかも

* test作成

* 文言の修正

* 修正

* note参照

---------

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2023-05-10 18:02:41 +09:00
syuilo
341c42ebb9 enhance(backend): graceful shutdown for job queue and refactor 2023-05-10 15:05:08 +09:00
syuilo
ae5a72a2df feat: 投稿したコンテンツのAIによる学習を軽減するオプションを追加
Resolve #10819
2023-05-10 10:52:41 +09:00
syuilo
22d6c7fe8a fix(backend): 13.11を経験しない状態で13.12にアップデートした場合ユーザープロフィール関連の画像が消失する問題を修正
Fix #10811
2023-05-09 15:28:44 +09:00
syuilo
b2f6c67aa9 fix(backend): リモートサーバーの情報が更新できない問題を修正
Fix #10787
2023-05-09 14:57:42 +09:00
syuilo
95e7e003fd fix test 2023-05-07 12:04:16 +09:00
syuilo
29a84230b0 enhance(backend): SearchService.searchNoteでhost指定対応 2023-05-07 11:59:06 +09:00
syuilo
6ad9a9677a fix test 2023-05-07 11:31:32 +09:00
syuilo
1a4b4348a9 fix(backend): sort notes
Fix #10776
2023-05-06 12:49:49 +09:00
syuilo
0a59407a3c fix type 2023-05-06 10:24:14 +09:00
syuilo
10ff379b4c enhance(backend/frontend): モデレーションノートをユーザーのプロフィールページからも閲覧および編集できるように 2023-05-06 09:51:06 +09:00
syuilo
bd1c2abffc clean up 2023-05-06 09:39:14 +09:00
Chocolate Pie
39748ea0c3
feat: アンテナのエクスポート・インポート (#10754)
* feat: アンテナのエクスポートに対応 (misskey-dev/misskey#10690)

* feat: アンテナのインポートに対応 (misskey-dev/misskey#10690)

* fix: タイポを修正

* feat: ユーザーリストをサポート

* fix: バグを直した

* fix: バグを直した

* fix: 適当に決めた変数名を変更

* fix

* fix: 変数の変更、リファクタリング
2023-05-06 08:17:55 +09:00
syuilo
5dfbce7571 feat: チャンネルの削除
Resolve #7171
Resolve #9935
2023-05-06 08:15:17 +09:00
nenohi
2d84e04240
ロールにNSFWを強制的につけるオプションを追加 (#10731)
* ロールにNSFWを強制的につけるオプションを追加

* すでにあるファイルにNSFWが付与できない

* NSFWを付与しようとするとエラーに

* add test

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

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

* spacingで怒られたので

* ロール作成時のプロパティ削除

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-05-05 14:18:06 +09:00
syuilo
6db37d4fcb fix(backend): ノートの検索インデックス条件を調整 2023-05-05 12:24:29 +09:00
syuilo
5c08f2b93b
feat: Introduce Meilisearch (#10755)
* wip

* wip

* Update SearchService.ts

* Update SearchService.ts

* wip

* wip

* Update SearchService.ts

* Update CHANGELOG.md

* wip

* Update SearchService.ts

* Update docker-compose.yml.example
2023-05-05 08:52:14 +09:00
tamaina
363eb73fb3 fix 2023-05-02 16:21:18 +00:00
tamaina
f3e43a0fc6 refactor 2023-05-02 10:26:18 +00:00
syuilo
8dc5edde76 fix(backend): フォローリクエストの通知が残る問題を修正
Fix #10611
2023-05-02 12:14:06 +09:00
syuilo
d535ec21a2 feat: チャンネルに色を設定できるように 2023-05-02 09:36:40 +09:00
Namekuji
d28866f71a
enhance: account migration (#10592)
* copy block and mute then create follow and unfollow jobs

* copy block and mute and update lists when detecting an account has moved

* no need to care promise orders

* refactor updating actor and target

* automatically accept if a locked account had accepted an old account

* fix exception format

* prevent the old account from calling some endpoints

* do not unfollow when moving

* adjust following and follower counts

* check movedToUri when receiving a follow request

* skip if no need to adjust

* Revert "disable account migration"

This reverts commit 2321214c98.

* fix translation specifier

* fix checking alsoKnownAs and uri

* fix updating account

* fix refollowing locked account

* decrease followersCount if followed by the old account

* adjust following and followers counts when unfollowing

* fix copying mutings

* prohibit moved account from moving again

* fix move service

* allow app creation after moving

* fix lint

* remove unnecessary field

* fix cache update

* add e2e test

* add e2e test of accepting the new account automatically

* force follow if any error happens

* remove unnecessary joins

* use Array.map instead of for const of

* ユーザーリストの移行は追加のみを行う

* nanka iroiro

* fix misskey-js?

* ✌️

* 移行を行ったアカウントからのフォローリクエストの自動許可を調整

* newUriを外に出す

* newUriを外に出す2

* clean up

* fix newUri

* prevent moving if the destination account has already moved

* set alsoKnownAs via /i/update

* fix database initialization

* add return type

* prohibit updating alsoKnownAs after moving

* skip to add to alsoKnownAs if toUrl is known

* skip adding to the list if it already has

* use Acct.parse instead

* rename error code

* 🎨

* 制限を5から10に緩和

* movedTo(Uri), alsoKnownAsはユーザーidを返すように

* test api res

* fix

* 元アカウントはミュートし続ける

* 🎨

* unfollow

* fix

* getUserUriをUserEntityServiceに

* ?

* job!

* 🎨

* instance => server

* accountMovedShort, forbiddenBecauseYouAreMigrated

* accountMovedShort

* fix test

* import, pin禁止

* 実績を凍結する

* clean up

* ✌️

* change message

* ブロック, フォロー, ミュート, リストのインポートファイルの制限を32MiBに

* Revert "ブロック, フォロー, ミュート, リストのインポートファイルの制限を32MiBに"

This reverts commit 3bd7be35d8aa455cb01ae58f8172a71a50485db1.

* validateAlsoKnownAs

* 移行後2時間以内はインポート可能なファイルサイズを拡大

* clean up

* どうせactorをupdatePersonで更新するならupdatePersonしか移行処理を発行しないことにする

* handle error?

* リモートからの移行処理の条件を是正

* log, port

* fix

* fix

* enhance(dev): non-production環境でhttpサーバー間でもユーザー、ノートの連合が可能なように

* refactor (use checkHttps)

* MISSKEY_WEBFINGER_USE_HTTP

* Environment Variable readme

* NEVER USE IN PRODUCTION

* fix punyHost

* fix indent

* fix

* experimental

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-04-30 00:09:29 +09:00
tamaina
09764b909b
enhance(dev): non-production環境でhttpサーバー間でもユーザー、ノートの連合が可能なように (#10717)
* enhance(dev): non-production環境でhttpサーバー間でもユーザー、ノートの連合が可能なように

* refactor (use checkHttps)

* MISSKEY_WEBFINGER_USE_HTTP

* Environment Variable readme

* NEVER USE IN PRODUCTION

* fix punyHost
2023-04-29 23:26:47 +09:00
syuilo
0ad7869249 feat: preserved usernames
Resolve #10704
2023-04-29 17:03:14 +09:00
Yuriha
a986203b38
[fix] .wav .flac ファイルを再生可能にする (#10686)
* .wav .flac ファイルを再生可能にする
file-typeにより判定されたMIME TypeをHTML5 Audio/Video要素に認識されるものに書き換える

* fix typecheck error

* frontend側の FILE_TYPE_BROWSERSAFEも更新

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

* ✌️

* 後方互換を確保

* add tests

* update changelog.md

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-04-26 02:17:58 +09:00
syuilo
b57ee4dd96 fix of 34492f3c9a 2023-04-22 20:12:41 +09:00
syuilo
8876ae09ed .js 2023-04-22 20:05:36 +09:00
syuilo
34492f3c9a enhance(backend): tweak cache of federated instance
#10631
2023-04-22 19:59:08 +09:00
nenohi
8dc60cd327
Role timeline setting (#10677)
* ロールタイムライン設定

* isRoleTimeline to isExplorable

* ポリシーではないので削除

* 型からも

* wip

* 足りてなかった説

* wip

* listはpublicを表示

* 前回の記載修正( #10671 )

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-04-20 20:02:50 +09:00
syuilo
40debf20d8 add new achievement 2023-04-20 19:40:02 +09:00
nenohi
65ff2c2498
カスタム絵文字のライセンスを一括でできるように (#10671)
* setlicensebulk追加

* 5時に誤字った!w

* 並び順の変更(set,add,removeの順

* add changelog
2023-04-19 08:25:24 +09:00
tamaina
38fdc73d01 Fix?(server): Content-Dispositionのパースでエラーが発生した場合にもダウンロードが完了するように
#10626
2023-04-15 11:19:00 +00:00
Kisaragi
83d0f819be
refactor(backend): validateNoteの引数の型を強くし、anyを除去 (#10325)
* refactor(backend): validateNoteの引数の型を推論する

* fix(backend): アサーションの内容から推論してエラーの内容を期待されるであろう式へと変更する

* refactor

Co-authored-by: Acid-Chicken <root@acid-chicken.com>

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
Co-authored-by: Acid-Chicken <root@acid-chicken.com>
2023-04-14 16:27:55 +09:00
tamaina
168fe0e376
fix(server): Force the extention of exported file (#10630)
* fix(server): Force the extention of exported file

* update changelog.md
2023-04-14 14:35:38 +09:00
syuilo
a67439981b fix types 2023-04-14 13:50:05 +09:00
tamaina
93dcd1c98e fix DriveService.ts 2023-04-13 11:27:05 +00:00
CGsama
2423fb8d38
fix: proper expire remote user drivefile over limits at adding time (#9426)
* delete remote user drivefile over limits at adding

* refactor

* delete → expire

* speed up by batch find

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-04-13 18:48:38 +09:00
syuilo
5cac1515fd fix(backend): user.memoはdetailがtrueな時だけに 2023-04-13 13:34:54 +09:00
syuilo
97abfd48ce refactor(backend): tweak repository name 2023-04-13 13:31:54 +09:00
Ebise Lutica
605f149235
feat: 自分用メモ機能 (#10516)
* 自分用メモを作成する機能

* 不要なCSSを削除

* メモ: デザイン調整

* デザイン崩れを修正

* fix: メモ機能のe2eテストで見つかった不具合を修正

* デザイン調整

* fix(frontend): 自分用メモtextareaにline-heightが適用されない問題を修正
2023-04-13 13:17:32 +09:00
syuilo
2a7ba37996 [ci skip] improve readability 2023-04-13 09:09:29 +09:00
syuilo
dcbaca4260 fix(backend): チャンネルのピン留めされたノートの順番が正しくない問題を修正
Fix #10541
2023-04-13 08:52:30 +09:00
tamaina
4c0ef07f6f fix 2023-04-12 12:34:34 +00:00
tamaina
3ff5a5ae29 fix type in CustomEmojiService 2 2023-04-12 12:32:27 +00:00
tamaina
6ea057f8f8 fix type in CustomEmojiService 2023-04-12 12:09:28 +00:00
hutchisr
b7d056fb22
Use unique identifier for each follow request (#10600)
Co-authored-by: anemone <anemoneya@icloud.com>
2023-04-12 20:22:50 +09:00
syuilo
72031e49fc Update CustomEmojiService.ts 2023-04-12 16:10:17 +09:00
syuilo
d06d1e8682 fix(backend): カスタム絵文字でリアクションできないことがある問題を修正 2023-04-12 16:07:58 +09:00
syuilo
5d56799070 feat: role timeline
Resolve #10581
2023-04-12 11:40:08 +09:00
tamaina
81d2c5a4a7
enhance: カスタム絵文字関連の変更 (#9794)
* PackedNoteなどのemojisはプロキシしていないURLを返すように

* MFMでx3/x4もしくはscale.x/yが2.5以上に指定されていた場合にはオリジナル品質の絵文字を使用する

* update CHANGELOG.md

* fix changelog

* ??

* wip

* fix

* merge

* Update packages/frontend/src/scripts/media-proxy.ts

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

* merge

* calc scale

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-04-12 10:58:56 +09:00
syuilo
77f91d67b4 perf(backend): ノート作成時のアンテナ追加パフォーマンスを改善 2023-04-12 10:07:14 +09:00
Namekuji
da83322200
feat: queueing bulk follow/unfollow and block/unblock (#10544)
* wrap follow/unfollow and block/unblock as job queue

* create import job to follow in each iteration

* make relationship jobs concurrent

* replace to job queue if called repeatedly

* use addBulk to import

* omit stream when importing

* fix job caller

* use ThinUser instead of User to reduce redis memory consumption

* createImportFollowingToDbJobの呼び出し方を変える, 型補強

* Force ThinUser

* オブジェクト操作のみのメソッド名はgenerate...Data

* Force ThinUser in generateRelationshipJobData

* silent bulk unfollow at admin api endpoint

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-04-12 09:13:58 +09:00
syuilo
c10d591bd0 perf(backend): cache swSubscriptions 2023-04-11 14:20:16 +09:00
tamaina
3a90bcc03c
sw: なんかもうめっちゃ変えた (#10570)
* sw: なんかいろいろ

* remove debug code

* never renotify

* update changelog.md
2023-04-11 14:11:39 +09:00
Chimorium
0702f9775a
カスタム絵文字のキャッシュ時に"{}"が入ってしまう問題を修正 (#10573) 2023-04-11 07:39:46 +09:00
syuilo
70a06e30d5 fix(backend): アンテナのノート、チャンネルのノート、通知が正常に作成できないことがある問題を修正
Fix #10482
2023-04-10 10:03:53 +09:00
syuilo
39cf80e19f fix(backend): イベント用redis分離が上手く動かない問題を修正 2023-04-09 17:09:27 +09:00
syuilo
59d0d507d5 fix(backend): 連合しているインスタンスについて予期せず配送が全て停止されることがある問題を修正
Fix #10499
2023-04-09 10:19:57 +09:00
syuilo
1057da1556 add note 2023-04-09 09:53:02 +09:00
tamaina
9feb6b0f5b
fix(server): リアクションできない問題をとりあえず修正 (#10529)
* fix(server): リアクションできない問題をとりあえず修正
Fix #10502

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

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-04-09 09:52:19 +09:00
syuilo
b7ed3ddfdd fix(backend): 通知読み込みでエラーが発生する場合がある問題を修正 2023-04-09 08:02:52 +09:00
tamaina
d76220cc80
fix(server): IdService.parseを全てのidタイプに対応させるように (#10533)
* wip fix-id

* ✌️

* fix import
2023-04-09 04:41:06 +09:00
syuilo
2321214c98 disable account migration 2023-04-08 20:51:36 +09:00
syuilo
ad9f72291f use for of 2023-04-08 20:03:32 +09:00
Namekuji
e23cf77f86
fetch person again (#10514) 2023-04-08 16:13:50 +09:00
syuilo
68e8892f61 chore: use for instead of forEach 2023-04-08 14:18:28 +09:00
Namekuji
25ebb73756
feat: account migration (#10507)
* add Move activity

* add endpoint to move from local to remote

* follow move activity coming to inbox

* fix move endpoint

* add known-as endpoint to create account alias

* add migration page

* add route to migration page

* add move and known-as endpoints

* fix dependnecies error

* fix new endpoints

* fix move activity id

* fix refollow

* add movedToUri and alsoKnownAs to api

* fix moveToUri indicator

* fix missing context

* add chengelog

* rename MkMoved to MkAccountMoved

* add missing semicolon

* fix targetUri

* fix followings query

* remove redundant null check
2023-04-08 14:16:26 +09:00
syuilo
ed4a100e96 fix(backend): restore date properly of federated instance cache 2023-04-07 18:55:11 +09:00
syuilo
1377ea4178 perf(backend): improve cache of federated instances 2023-04-07 18:48:45 +09:00
syuilo
6e1ae7b242 enhance(backend): tweak cache of role
#10439
2023-04-07 18:15:47 +09:00
syuilo
3bbeec70ec perf(backend): improve cache of instance of user 2023-04-07 18:12:24 +09:00
syuilo
1e3fb5531b typo 2023-04-07 11:33:15 +09:00
syuilo
239d3f2dbf feat(backend): ジョブキュー用Redisを別サーバーに分離できるように 2023-04-07 11:27:01 +09:00
syuilo
ff6d9d2860 feat(backend): イベント用Redisを別サーバーに分離できるように 2023-04-07 11:20:14 +09:00
syuilo
f4588f3907 perf(backend): reduce db query 2023-04-07 10:07:41 +09:00
syuilo
f8cdab6d02 Merge branch 'develop' of https://github.com/misskey-dev/misskey into develop 2023-04-06 19:48:28 +09:00
syuilo
521eb95dbc perf(backend): cache avatar and banner url to db 2023-04-06 19:48:24 +09:00
syuilo
c29f21ac56
perf(backend): prevent emit needless db queries 2023-04-06 19:45:12 +09:00
syuilo
de9d136a3f perf(backend): reduce db query 2023-04-06 18:27:42 +09:00
syuilo
b38811af7c fix(backend): fix pack of notification behaviour 2023-04-06 15:09:21 +09:00
syuilo
73203a3d72 perf(backend): cache local custom emojis 2023-04-06 11:14:43 +09:00
syuilo
bd142b8fe5 refactor 2023-04-06 10:12:30 +09:00
syuilo
384a3bed09 perf(backend): reduce db query 2023-04-06 10:09:44 +09:00
tamaina
2650a7a5b8
fix: 通知インジケータが光りっぱなしになる問題を修正 (#10483)
* fix(misskey-js): ストリームがstringで送信される場合があるのを修正

* pnpm run api

* force read notification

* fix competition
2023-04-06 06:11:59 +09:00
syuilo
a093c373c4 fix 2023-04-05 13:57:22 +09:00
syuilo
288cce4a22 fix 2023-04-05 13:50:05 +09:00
syuilo
28647de196 enhance(backend): improve userkeypair cache 2023-04-05 12:10:40 +09:00
syuilo
cf6a302f8f add note 2023-04-05 12:08:18 +09:00
syuilo
f44504097c enhance(backend): improve cache 2023-04-05 10:21:10 +09:00
syuilo
625fed8838 enhance(backend): チャンネルの既読管理を削除
- 現状上手く機能していない
- パフォーマンス上の理由
- 実装するにしてももっと効率的な方法がある
2023-04-05 07:52:49 +09:00
syuilo
ecaf152b4a enhance(backend): improve cache 2023-04-04 17:32:09 +09:00
syuilo
7f3afac0a2 refactor(backend): rename Cache -> MemoryCache 2023-04-04 15:56:47 +09:00
syuilo
30d6992684 perf(backend): 通知をRedisに保存するように
Resolve #10168
2023-04-04 14:06:57 +09:00
syuilo
8a0201fe9c add notes 2023-04-03 20:14:19 +09:00
syuilo
b53d6c7f8c perf(backend): store notes of an antenna to redis instead of postgresql
Resolve #10169
2023-04-03 12:11:16 +09:00
syuilo
4f9f625e65 perf(backend): cache timeline of a channel to redis 2023-04-03 11:49:58 +09:00
tamaina
a0c3dede8e enhance(server): 動画サムネイルの縦の長さを最大422pxにする
Related to #10149
Related to #10450
2023-04-02 15:49:07 +00:00
syuilo
9bc5d52e41 feat: チャンネルにノートをピン留めできるように
Resolve #7740
2023-03-31 15:01:56 +09:00
syuilo
3cb0cc7989 feat: チャンネルをお気に入りに登録できるように
Resolve #10097
2023-03-31 11:30:27 +09:00
YS
31cc188bbd
regionが空文字列のときはundefinedとする (#10410) 2023-03-25 18:45:14 +09:00
syuilo
31f3f5f0f0 enhance(backend): リモートサーバーのチャート生成を無効にするオプションを追加 2023-03-24 19:08:08 +09:00
syuilo
09a846a45c enhance(backend): use ❤️ for reaction fallback 2023-03-24 18:55:31 +09:00
syuilo
4edc7d8956 enhance of f01e6ef6bf 2023-03-24 18:48:42 +09:00
syuilo
6a29b182ee perf(backend): ドライブのチャートはローカルユーザーのみ生成するように 2023-03-24 18:37:08 +09:00
syuilo
e438091113 refactor(backend): rename cache class 2023-03-24 16:43:42 +09:00
syuilo
f01e6ef6bf enhance(backend): リモートユーザーのチャート生成を無効にするオプションを追加 2023-03-24 15:43:36 +09:00
syuilo
41d1b1b8c9 enhance: コンディショナルロールの条件に「投稿数が~以下」「投稿数が~以上」を追加
Resolve #10395
2023-03-23 17:18:38 +09:00
YS
658901a47f
bump aws-sdk to v3 for s3 (#10363)
* indent

* aws-sdk v3移行
2023-03-23 13:48:14 +09:00
syuilo
54630edb0f enhance: 使われてないアンテナは自動停止されるように
Resolve #9373
2023-03-20 20:12:38 +09:00
syuilo
b644567735 feat: clip favorite
Resolve #10337
2023-03-16 17:24:49 +09:00
syuilo
8ae9d2eaa8 enhance: カスタム絵文字にライセンス情報を付与できるように
Resolve #10091
2023-03-16 15:08:48 +09:00
syuilo
a9bc22e4e6 Update NotificationService.ts 2023-03-16 14:36:21 +09:00
syuilo
89e2c302dd refactor(backend): integrate CreateNotificationService to NotificationService 2023-03-16 14:24:11 +09:00
CyberRex
c05c504c86
Deliverキューに宛先がSharedInboxかどうかのフラグを追加 ( #10298 関係 ) (#10317)
* enhance(backend): 配送先が410 Goneで応答してきた場合配送停止するように

* Update CHANGELOG.md

* Deliverキューのデータに宛先がSharedInboxかどうかのフラグを追加

* Fix lint

* Mapを使用するように

* Fix typo
2023-03-14 19:11:31 +09:00
YS
3cb669a852
fix: クエリキャッシュ無効化時の絵文字操作エラーを解消 (#10320)
* disabledCache: trueのときにqueryResultCacheへアクセスしないように

* append changelog
2023-03-14 09:37:14 +09:00
syuilo
5d1ccb9bdc enhance: make configurable to whether notes search available by role
Resolve #10318
2023-03-13 17:52:24 +09:00
syuilo
7f16b50e73 feat: sensitive word 2023-03-13 17:37:22 +09:00
YS
44213812b8
空文字列のobjectStorageEndtpoinをnullと同様に扱う (#10312) 2023-03-13 09:45:21 +09:00
tamaina
dff0bee748
fix: Do not use avif (#10301)
* fix: Do not use avif

* fix

* fix
2023-03-12 17:31:52 +09:00
syuilo
7c2d8d73ce enhance: ロールの並び順を設定可能に 2023-03-12 16:38:08 +09:00
Kagami Sascha Rosylight
57cac0aa23
fix(backend/ApRendererService): allow announces with visibility: followers (#10291)
* fix(backend/ApRendererService): allow announces with visibility: followers

* Update CHANGELOG.md

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-03-12 12:11:37 +09:00
tamaina
88e3d3e8cb
enhance(server): 画像圧縮周り(主にサムネイルの仕様)の変更 (#10287)
* DriveService, is-mime-image

* static, previewをavifに, アニメーション画像でもthumbnailを生成

* fallback

* animated: true

* fix

* avatarはwebp

* revert ?? file.url

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-03-11 14:11:40 +09:00
Kagami Sascha Rosylight
4094ab58aa
fix(backend/DriveService): gracely skip when getting NoSuchKey error from S3 (#10292)
* fix(backend/DriveService): gracely skip when getting NoSuchKey error from S3

* Update CHANGELOG.md

* import type
2023-03-11 13:35:51 +09:00
Kisaragi
0ac1fc846b
refactor(backend): 必要ないas anyを消去 (#10293) 2023-03-11 08:51:37 +09:00
syuilo
99f3f0917f tweak postgresql entities
Fix #10266
2023-03-10 14:53:56 +09:00
syuilo
5de8930058 refactor: rename schema to json-schema 2023-03-10 14:22:37 +09:00
Kisaragi
a81ebc5966
chore(backend): fix typo in warning message (#10284) 2023-03-10 13:21:23 +09:00
Kagami Sascha Rosylight
3f53cbd8f6
fix(backend/DriveService): convert WebP/AVIF to WebP (#10239)
* fix(backend/DriveService): convert transparent WebP/AVIF to PNG

* webpにする

その希望が複数ありましたので

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

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* update test

* webpはwebpublicにできる

---------

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-03-10 09:37:22 +09:00
tamaina
dc49a24f07
Merge pull request #9970 from saschanaz/mkusername-empty
fix(backend/ApPersonService): normalize empty value of `name` into an absent value
2023-03-09 22:36:26 +09:00
tamaina
97a43bc30f fix(server): videoThumbnailGeneratorが適用されない問題を修正 2023-03-08 19:57:52 +00:00
syuilo
dd6569a1bb
feat: Reaction acceptance (#10256)
* wip

* wip

* デフォルト設定
2023-03-08 08:56:47 +09:00
syuilo
4c2f7c64cc
feat: Per-user renote mute (#10249)
* feat: per-user renote muting

From FoundKey/c414f24a2c https://akkoma.dev/FoundKeyGang/FoundKey

* Update ja-JP.yml

* Delete renote-muting.ts

* rename

* fix ids

* lint

* fix

* Update CHANGELOG.md

* リノートをミュートしたユーザー一覧を見れるように

* 🎨

* add test

* fix test

---------

Co-authored-by: Hélène <pleroma-dev@helene.moe>
2023-03-08 08:56:09 +09:00
Kagami Sascha Rosylight
5651353c27
Merge branch 'develop' into mkusername-empty 2023-03-06 07:51:17 +01:00
syuilo
ae7d17d121 fix of b9a3b2c165 2023-03-05 11:11:36 +09:00
syuilo
b9a3b2c165 enhance(server): make identicon same between local and remote
Resolve #10200
2023-03-05 11:09:55 +09:00
tamaina
2d551a8598
enhance(server): downloadUrlでContent-Dispositionからファイル名を取得 (#10150)
* enhance(server): downloadUrlでContent-Dispositionからファイル名を取得
Resolve #10036
Resolve #4750

* untitled

* オブジェクトストレージのContent-Dispositionのファイル名の拡張子をContent-Typeに添ったものにする

* ✌️

* tiff

* fix filename

* add test

* /files/でもContent-Disposition

* comment

* fix test
2023-03-04 16:51:07 +09:00
rinsuki
49f0837729
fix(server): DriveFile related N+1 query when call note packMany (again) (#10190)
* Revert "Revert "fix(server): DriveFile related N+1 query when call note packMany (#10133)""

This reverts commit a7c82eeabc.

* packManyByIdsMap: 存在チェックをしてなかったものは null を入れるように

* Note.packMany で reply とか renote がもうあったらそのファイルも引く

* テストを書く

* fix test

* fix test

* fix test

* fix test
2023-03-04 16:48:50 +09:00
syuilo
ad7ecbaf37 通知部分は残す
Co-Authored-By: rinsuki <428rinsuki+contact.github@gmail.com>
2023-03-03 20:43:31 +09:00
syuilo
a7c82eeabc Revert "fix(server): DriveFile related N+1 query when call note packMany (#10133)"
This reverts commit 452a48e7f4.
2023-03-03 20:26:44 +09:00
Kagami Sascha Rosylight
61215e50ff
test(backend): APIテストの復活 (#10163)
* Revert 1c5291f818

* APIテストの復活

* apiテストの移行

* moduleNameMapper修正

* simpleGetでthrowしないように

status確認しているので要らない

* longer timeout

* ローカルでは問題ないのになんで

* case sensitive

* Run Nest instance within the current process

* Skip some setIntervals

* wait for 5 seconds

* kill them all!!

* logHeapUsage: true

* detectOpenHandlesがじゃましているらしい

* maxWorkers=1?

* restore drive api tests

* workerIdleMemoryLimit: 500MB

* 1024MiB

* Wait what
2023-03-03 11:13:12 +09:00
rinsuki
452a48e7f4
fix(server): DriveFile related N+1 query when call note packMany (#10133)
* fix(server): DriveFile related N+1 query when call note packMany

* Update packages/backend/src/misc/is-not-null.ts

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* ignore lint

* 途中でやめたやつが混入していた

* fix: 順番通りである必要がある場所で順番通りになっていなかった

---------

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2023-03-03 10:06:59 +09:00
syuilo
9e5278d276 fix of #10145 2023-03-01 12:02:37 +09:00
syuilo
1c5291f818
feat: 時限ロール (#10145)
* feat: 時限ロール

* クライアントから期限を確認できるように

* リファクタとか

* fix test

* fix test

* fix test

* clean up
2023-03-01 10:20:03 +09:00
syuilo
83a67606a9 enhance(server): make antenna handle cw
Resolve #10140
2023-02-28 20:20:23 +09:00
syuilo
746770ac3b fix Serialized type 2023-02-28 16:46:25 +09:00
Kagami Sascha Rosylight
b468330ed9
Merge branch 'develop' into mkusername-empty 2023-02-25 20:04:48 +01:00
xianon
0ec5327474
未知のユーザーが deleteActor されたら処理をスキップする (#10067) 2023-02-25 04:27:37 +09:00
Kagami Sascha Rosylight
d1d3b48e51
test(backend): restore ap-request tests (#9997)
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-02-24 16:10:48 +09:00
tamaina
becc4d2e54
fix: i/notificationsで古い通知タイプを許容するなど、古い通知タイプの清算 (#10042)
* wip

* fix

* create migration

* oops

* fix front const

* changelog

* fix type

* fix

* wip

* Revert "wip"

This reverts commit 6cdb3600e280be3550b8b6353b2c7930f7b31438.

* enumのこす

* fix

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-02-23 20:46:14 +09:00
potpro
bd13ea3d2c
MFMのDOM ParserをJSDOMからhappy-domに変更する (#10016)
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-02-22 17:32:45 +09:00
syuilo
5ec07ede7c fix types 2023-02-22 14:58:41 +09:00
dojineko
a6fb6150a3
chore: add tiny definition for redis-lock (#9971)
* add tiny definition for redis-lock

* Update packages/backend/src/@types/redis-lock.d.ts

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* fix type name

* add @typescript-eslint/naming-convention

* define taskToPerform type

* chore: use default settings for `@typescript-eslint/naming-convention`

* set `format:none` to typeParameter (default)

* ignore lines to be treated as exceptions

* chore: fix naming

---------

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-02-22 14:51:34 +09:00
syuilo
870f7608be enhance: exploreで公開ロール一覧とそのメンバーを閲覧できるように 2023-02-22 14:43:18 +09:00
xianon
b055f516c0
削除済みのユーザーが deleteActor される時の動作を修正する (#9980) 2023-02-20 17:08:05 +09:00
noonworks
ea92254b73
refactor: 型エラー修正 / Fix type errors backend (#9983)
* refactor: fix type errors in backend

* revert some changes

* なるべくJS挙動を変えない方法に修正

* Update packages/backend/src/server/api/ApiCallService.ts

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* コンフリクトするファイルを削除

---------

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2023-02-20 08:13:37 +09:00
Kagami Sascha Rosylight
cf2b1c1e00 Merge branch 'develop' into mkusername-empty 2023-02-19 09:26:27 +01:00
Kagami Sascha Rosylight
194d656bb4 fix: normalize empty value of name into an absent value 2023-02-17 09:06:48 +01:00
syuilo
60df819c60 refactor: fix types 2023-02-17 15:36:36 +09:00
syuilo
0e1b5d6f14 refactor: fix types 2023-02-17 15:15:36 +09:00
Kagami Sascha Rosylight
8f9ce23e52
style(backend): fix all eslint errors (#9967) 2023-02-17 10:56:59 +09:00
Kagami Sascha Rosylight
63df2c851e
refactor: remove all unused imports (#9951)
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-02-16 23:09:41 +09:00
syuilo
8caf288ac1
drop group (#9942)
* drop group

* Update operations.ts
2023-02-15 13:37:18 +09:00
syuilo
8f2049bcd2
drop messaging (#9919)
* drop messaging (from backend)

* wip
2023-02-15 13:06:06 +09:00
tamaina
b7b8fd4b59 Merge branch 'develop' of https://github.com/misskey-dev/misskey into develop 2023-02-14 04:09:03 +00:00
tamaina
55d4d3418e fix(server): HttpRequestService.sendでは常にUser-Agentを含むように
Fix #9817 (maybe)
2023-02-14 04:08:56 +00:00
syuilo
e8d4f3eac3 refactor: fix types 2023-02-13 16:19:29 +09:00
syuilo
1b21bad202 refactor 2023-02-13 15:50:22 +09:00
syuilo
f34f9f6ea5 refactor: fix types 2023-02-13 15:28:07 +09:00
syuilo
a71682f6f0 refactor: fix types 2023-02-12 20:06:10 +09:00
syuilo
5d3d5cd59c refactor: fix types 2023-02-12 18:54:38 +09:00
syuilo
451bc0b444 refactor: fix types 2023-02-12 18:47:30 +09:00
Kagami Sascha Rosylight
9965bc8f94
Fix moduleNameMapper to not resolve .wasm.js to .wasm (#9894)
* Fix moduleNameMapper to not resolve `.wasm.js` to `.js`

Fixes #9767

Undici [tries to import `./llhttp/llhttp.wasm.js`](e155c6db5c/lib/client.js (L342)) which is currently broken by the (hacky) module name mapper.

* longer timeout value

* 30s

* 50s

* 60s to be safe

* Revert "60s to be safe"

This reverts commit f3e0f5796273c0cdcbd901e8c08ae3136b9768f8.

* 2cc98226ca revert?

* revert

* remove timeout

* detectOpenHandles

* Really solved?

* Revert "detectOpenHandles"

This reverts commit 29214bdff80e15998f34171bf409d454a3d10129.

* Add `coveragePathIgnorePatterns`

* Revert "Add `coveragePathIgnorePatterns`"

This reverts commit fcf8c6806b339b7c21f53137f9939d00020904aa.

* Import jsonld dynamically

* remove import

* add comment

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-02-12 17:18:31 +09:00
syuilo
b55d26387b improve error handling 2023-02-12 10:36:43 +09:00
tamaina
ee03ab8d2c
enhance(server): videoThumbnailGenerator config (#9845)
* enhance(server): videoThumbnailGenerator config

* ✌️

* fix

* 相対url

* サムネイルのproxyRemoteFilesは直接プロキシを指定する

* メディアプロキシ
2023-02-12 09:13:47 +09:00
syuilo
9351fb9617 コンディショナルロールもバッジとして表示可能に 2023-02-11 09:03:43 +09:00
syuilo
76faec2115 refactor: fix types 2023-02-09 11:46:08 +09:00
syuilo
5facd11592 refactor: fix types 2023-02-09 11:02:37 +09:00
syuilo
73f06e591a revert: 650187deaf 2023-02-08 20:07:19 +09:00
syuilo
0da0cc80b9 fix(server): validate url from ap to improve security 2023-02-08 17:50:23 +09:00
syuilo
650187deaf perf(client): do not render custom emojis in user names
#9778
2023-02-08 17:48:02 +09:00
tamaina
54f789bd55 fix(server): DriveFileEntityService.getPublicUrl調整
- 外部MediaProxyではビデオのサムネイルを生成できないので外部に投げない
- thumbnailUrlが存在しない場合、画像の場合はプロキシで圧縮させる
2023-02-07 14:24:15 +00:00
syuilo
2be1a39d13 fix(server): validate urls from ap to improve security 2023-02-07 19:58:58 +09:00
MeiMei
505ecf6c1f
Deny UNIX domain socket (#9802)
* Deny UNIX domain socket

* got v12ならこれが使える?
2023-02-05 13:51:59 +09:00
syuilo
6a3039f7b7 feat: ロールにアイコンを設定してユーザー名の横に表示できるように
Resolve #9761
2023-02-05 10:37:03 +09:00
syuilo
4ad0345f20 fix(server): cannot follow user 2023-02-04 19:19:30 +09:00
tamaina
2dfed75402
perf(server): improvement of external mediaProxy (#9787)
* perf(server): improvement of external mediaProxy

* add a comment

* ✌️

* /filesでsharpの処理を行わずリダイレクトする

* fix

* thumbnail => static

* Fix #9788

* add avatar mode

* add url

* fix

* static.webp

* remove encodeURIComponent from media proxy path

* remove existance check
2023-02-04 13:38:51 +09:00
syuilo
0c12e80106 perf(server): cache blocking 2023-02-04 12:40:40 +09:00
syuilo
b7522f69e7 fix typo 2023-02-04 10:02:03 +09:00
syuilo
1d39f785f1 perf: use replaceAll instead of regex 2023-02-03 17:44:25 +09:00
syuilo
825551d64f drop syslog
Close #9774
2023-02-03 15:08:36 +09:00
syuilo
562b02310f drop twitter/github/discord integrations
Close #9775
2023-02-03 15:01:31 +09:00
syuilo
c559a9843f drop hashtag chart 2023-02-03 14:10:14 +09:00
syuilo
4610d8dfe3 refactor: fix type 2023-02-01 20:15:11 +09:00
syuilo
fa296efdf6 refactor: fix type 2023-02-01 20:13:22 +09:00
syuilo
387fcd5c5d refactor: fix type 2023-02-01 17:29:28 +09:00
syuilo
ebc6437977 refactor: tweak variable name 2023-02-01 16:24:50 +09:00
Nya Candy
00d28826b9
fix(try): ld signature normalizer (#9758) 2023-01-31 19:37:39 +09:00
syuilo
7cb13cf839 proxyRemoteFilesがfalseならリモートカスタム絵文字は直リンにする 2023-01-26 18:44:43 +09:00
tamaina
4735ae6451
refactor: /proxyをFileServerServiceに統合し、/proxyのurlで/filesが指定されていた場合は直接ファイルを解決するようにする (#9709)
* wip?

* clean up

* Implement? HttpFetchService

* ✌️

* remove node-fetch

* fix

* refactor

* fix

* gateway timeout

* UndiciFetcherクラスを追加 (仮コミット, ビルドもstartもさせていない)

* fix

* add logger and fix url preview

* fix ip check

* enhance logger and error handling

* fix

* fix

* clean up

* Use custom fetcher for ApRequest / ApResolver

* bypassProxyはproxyBypassHostsに判断を委譲するように

* set maxRedirections (default 3, ApRequest/ApResolver: 0)

* fix

* wip????

* wip

* ✌️

* set .node-version

* clean up

* refactor

* clean up

* refactor

* refactor detectRequestType

* rename detectResponseType

* ✌️

* fix

* wip

* clean up

* no got

* remove got

* wip

* ✌️

* fix

* clean up

* remove unnnecessary const

* good cleanup

* no stream

* Revert "no stream"

This reverts commit 636f9192fcd2b17e71bbf6b5b106b490e0f66244.

* fix

* cache-control: max-age=300 to error

* refactor cleanup
2023-01-26 16:06:29 +09:00
syuilo
452bd6db25 tweak custom emoji handling
Close #9721
2023-01-26 15:48:12 +09:00
syuilo
f5d6b84381 chore: check emoji host 2023-01-26 14:29:28 +09:00
syuilo
7131eb1827 fix(server): turnstile-failed: missing-input-secret
Fix #9726
2023-01-26 11:31:43 +09:00
tamaina
605b0f27e4 Merge branch 'develop' into emoji-re 2023-01-25 14:22:26 +00:00
syuilo
5ffa106cc1 サードパーティからも自身のロールを確認できるように
Close #9700
2023-01-25 19:34:10 +09:00
syuilo
3ba5541a66 Update ApResolverService.ts 2023-01-25 12:36:39 +09:00
syuilo
945c50db1f Update ApRequestService.ts 2023-01-25 12:31:03 +09:00
syuilo
d4fb201d05 fix(server): node-fetchおよびgotを使う以前の実装に戻す
see #9710
2023-01-25 12:00:04 +09:00
syuilo
2a2e8d0cf6 refactor(server): fix type errors 2023-01-25 11:23:57 +09:00
syuilo
520ed8cb4d refactor(server): fix type errors 2023-01-25 11:18:16 +09:00
tamaina
6589e8a390
Fix #9710 ? (#9712)
* wip

* update pnpm-lock

* use our own DevNull

* fix

* deliverJobConcurrencyをmacSocketsで割ってソケット数にする
2023-01-24 15:54:14 +09:00
tamaina
9fd1b35d95 fix TypeError: Cannot read properties of undefined (reading 'getLogger') 2023-01-24 01:34:14 +00:00
syuilo
869854eae7 コミット漏れ 2023-01-24 08:32:17 +09:00
syuilo
238f923b41 refactor(server): httpRequestServiceのUndiciFetcher依存をなるべくカプセル化 2023-01-24 08:31:02 +09:00
tamaina
d347f0a087 wip 2023-01-22 16:07:17 +00:00
tamaina
2f6c45e118 wip 2023-01-22 14:53:24 +00:00
syuilo
b906ff3fed add an achievement 2023-01-22 20:30:56 +09:00
syuilo
42f3d9188b add a secret achievement 2023-01-22 20:22:38 +09:00
syuilo
7a6534f30b カスタム絵文字のURLが空文字列になる場合があるのを修正 2023-01-22 17:29:31 +09:00
syuilo
26ae2dfc0f add achievement 2023-01-22 08:00:42 +09:00
syuilo
3e112da486 ローカルのカスタム絵文字については直接オリジナルURLにリクエストするように 2023-01-21 20:40:09 +09:00
syuilo
2b377a3dc5 add some achievements 2023-01-21 16:06:49 +09:00
syuilo
9d367882fb add some achievements 2023-01-21 15:30:29 +09:00
syuilo
7e89e70934
enhance(server): separate job queue process (#9662)
* enhance(server): separate job queue process

* add commands for build with swc
2023-01-21 14:09:01 +09:00
syuilo
65cd605b73
Achievements (#9665)
* wip

* Update ja-JP.yml

* wip

* wip

* Update MkAchievements.vue

* wip

* 🎨

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip
2023-01-21 13:14:55 +09:00
tamaina
79212bbd37 refactor(server): notify url when fetch error 2023-01-17 17:12:41 +00:00
Mary
3feaf39294
ApRequestService: don't generate our own Host header (#9378) 2023-01-17 02:21:15 +09:00
syuilo
fe0bb21b37 enhance(client): make possible to hide ads
Resolve #9590
Resolve #8996
2023-01-16 11:21:04 +09:00
syuilo
30fced38c4 refactor: rename instance.caughtAt to instance.firstRetrievedAt 2023-01-16 05:02:38 +09:00
syuilo
9f0dfb5517
typo 2023-01-16 03:16:44 +09:00
syuilo
81f11d8f86 refactor: rename role.options -> role.policies 2023-01-15 20:52:53 +09:00
syuilo
518b3e2f73 ロールの各オプションに優先度を設定できるように 2023-01-15 19:10:39 +09:00
syuilo
7fc8d2e6d5 ロールでレートリミットを調整できるように
Resolve #9584
2023-01-15 16:52:12 +09:00
Masaya Suzuki
0f31a0548c
Fix import (#9566) 2023-01-15 08:33:07 +09:00
syuilo
e46e7f5252 ノートをピン留めできる数を設定可能に
Resolve #9555
2023-01-14 18:04:56 +09:00
syuilo
76c049522e enhance: ユーザーリストおよびユーザーリスト内のユーザーの作成可能数を設定可能に 2023-01-14 17:38:16 +09:00
syuilo
c2009acb2d enhance: クリップおよびクリップ内のノートの作成可能数を設定可能に 2023-01-14 16:14:24 +09:00
syuilo
2bedc084a3 tweak MkRolePreview 2023-01-14 11:14:14 +09:00
syuilo
bcb5182e86 Webhookの作成可能数を設定可能に 2023-01-14 10:48:11 +09:00
syuilo
4151087d3c フォロワー数、フォロー数もConditional roleで利用できるように 2023-01-14 08:27:23 +09:00
syuilo
d1807ee5dc enhance: ハードワードミュートの最大文字数を設定可能に
Resolve #7574
2023-01-14 08:04:38 +09:00
tamaina
303519a1bd
enhance: Judge instance block by endsWith (#9263)
* TypeScriptでendsWith

* fix

* SQL?

* バ〜カアホ

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

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* add comment

* add description

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

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

* Update packages/backend/src/core/chart/charts/federation.ts

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* remove comment

* fix

* fix?

* add changelog

* ILIKE, ARRAY

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-01-13 18:21:07 +09:00
syuilo
b250456814 カスタム絵文字の管理を権限を持つユーザーが行えるように
Resolve #9542
2023-01-13 14:58:27 +09:00
syuilo
7b7faf1e84 招待コード発行を権限を持つユーザーが行えるように
Resolve #9541
2023-01-13 14:22:53 +09:00
syuilo
4c21d83639 プロフィールにロールを表示するように 2023-01-13 12:07:24 +09:00
syuilo
4e39e690b6 Revert "リモートユーザーはcanPublicNoteがfalseでもhomeにしないように"
This reverts commit b2117ba3a1.
2023-01-13 11:14:23 +09:00
syuilo
6458239a7c remoteDriveCapacityMbをロールに統合 2023-01-13 11:14:07 +09:00
syuilo
c5c40a73b7 feat: conditional role
Resolve #9539
2023-01-13 11:03:54 +09:00
syuilo
e00003edff refactor 2023-01-13 08:56:06 +09:00