Commit graph

227 commits

Author SHA1 Message Date
syuilo
e03d5a86a4 lint fix 2023-03-30 12:16:03 +09:00
syuilo
4d73080da1 perf(backend): improve performance of timeline apis 2023-03-19 16:52:38 +09:00
syuilo
b644567735 feat: clip favorite
Resolve #10337
2023-03-16 17:24:49 +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
syuilo
5d1ccb9bdc enhance: make configurable to whether notes search available by role
Resolve #10318
2023-03-13 17:52:24 +09: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
syuilo
2b884ba338 enhance(server): tweak notes/featured api 2023-03-07 08:41:10 +09:00
tamaina
02d7ffd305 fix(server): 単純にrenoteできないのを修正 2023-02-26 11:10:24 +00:00
syuilo
a78a839841 refactor 2023-02-26 18:57:24 +09:00
xianon
67ca7ee4ec
ホームタイムラインの読み込みでクエリタイムアウトになるのを修正する (#10106) 2023-02-26 18:54:52 +09:00
tamaina
18dbcfa0b0
test(server): add validation test of api:notes/create (#10090)
* fix(server): notes/createのバリデーションが効いていない
Fix #10079

Co-Authored-By: mei23 <m@m544.net>

* anyOf内にバリデーションを書いても最初の一つしかチェックされない

* ✌️

* wip

* wip

* ✌️

* RequiredProp

* Revert "RequiredProp"

This reverts commit 74693900119a590263106fa3adefd008d69ce80c.

* add api:notes/create

* fix lint

* text

* ✌️

* improve readability

---------

Co-authored-by: mei23 <m@m544.net>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-02-26 11:28:05 +09:00
syuilo
ea04778649 feat: in-channel featured note
Resolve #9938
2023-02-25 18:26:35 +09:00
tamaina
e4336f5b76
fix(server): notes/createで、fileIdsと見つかったファイルの数が異なる場合はエラーにする (#9911)
* fix(server): notes/createで、fileIdsと見つかったファイルの数が異なる場合はエラーにする

* NO_SUCH_FILE
2023-02-24 16:32:01 +09:00
syuilo
7ce0f79f7f chore(server): tweak notes/featured api 2023-02-19 17:50:14 +09:00
tamaina
e8c5307f66
perf(client): ウェルカムページを最適化 (#9960)
* perf(client): ウェルカムページの最適化

* remove max
2023-02-17 12:38:30 +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
1b21bad202 refactor 2023-02-13 15:50:22 +09:00
syuilo
451bc0b444 refactor: fix types 2023-02-12 18:47:30 +09:00
syuilo
1139632f95 fix(server): 自分のノートをお気に入りに登録しても実績解除される問題を修正 2023-02-05 14:30:07 +09:00
syuilo
ee74df6823 fix(server): improve security 2023-02-04 18:21:07 +09:00
syuilo
0c12e80106 perf(server): cache blocking 2023-02-04 12:40:40 +09:00
tamaina
7c3143b8e5
enhance(backend): enhance SchemaType handling of anyOf (#9762)
* enhance(backend): enhance anyOf handling

* clean up
2023-02-01 20:04:01 +09:00
syuilo
d4fb201d05 fix(server): node-fetchおよびgotを使う以前の実装に戻す
see #9710
2023-01-25 12:00:04 +09:00
syuilo
26ae2dfc0f add achievement 2023-01-22 08:00:42 +09:00
syuilo
81f11d8f86 refactor: rename role.options -> role.policies 2023-01-15 20:52:53 +09:00
syuilo
2047449294 enhance(server): add rate limits for some endpoints 2023-01-14 20:21:03 +09:00
syuilo
7df3ca7388 enhance(server): add rate limits for some endpoints 2023-01-14 15:59:15 +09:00
tamaina
978a9bbb3b
perf(backend): Use undici instead of node-fetch and got (#9459)
* 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 comment

* handle error s3 upload

* add debug message

* no return await

* Revert "no return await"

This reverts commit b5b0dc58a342393d260492e3a6f58304372f53b2.

* reduce maxSockets

* apResolverのUndiciFetcherを廃止しapRequestのものを使う、 add ap logger

* Revert "apResolverのUndiciFetcherを廃止しapRequestのものを使う、 add ap logger"

This reverts commit 997243915c8e1f8472da64f607f88c36cb1d5cb4.

* add logger

* fix

* change logger name

* safe

* デフォルトでUser-Agentを設定
2023-01-12 21:03:02 +09:00
syuilo
2470afaa2e
Role (#9437)
* wip

* Update CHANGELOG.md

* wip

* wip

* wip

* Update create.ts

* wip

* wip

* Update CHANGELOG.md

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* Update CHANGELOG.md

* wip

* wip

* Update delete.ts

* Update delete.ts

* wip

* wip

* wip

* Update account-info.vue

* wip

* wip

* Update settings.vue

* Update user-info.vue

* wip

* Update show-file.ts

* Update show-user.ts

* wip

* wip

* Update delete.ts

* wip

* wip

* Update overview.moderators.vue

* Create 1673500412259-Role.js

* wip

* wip

* Update roles.vue

* 色

* Update roles.vue

* integrate silence

* wip

* wip
2023-01-12 21:02:26 +09:00
syuilo
91ced90fb2 fix imports 2023-01-09 08:58:16 +09:00
MeiMei
10e526ba56
fix: Escape SQL LIKE (#9493)
* SQL LIKE escape

* CHANGELOG
2023-01-08 20:32:17 +09:00
syuilo
2e2ed1385f delete pollVote notification 2023-01-08 10:54:45 +09:00
syuilo
6f51e7300e ✌️ 2023-01-01 09:35:14 +09:00
syuilo
22ccb0fa71 refactor 2022-12-04 10:16:03 +09:00
syuilo
0f7cbb5922 fix type 2022-09-24 10:39:17 +09:00
syuilo
614b11951b refactor 2022-09-24 07:15:16 +09:00
syuilo
01d4d55e78 fix import type 2022-09-21 05:33:11 +09:00
syuilo
567c550120 lint 2022-09-20 05:32:18 +09:00
syuilo
b75184ec8e
なんかもうめっちゃ変えた 2022-09-18 03:27:08 +09:00
syuilo
972b03f842 perf: allow get for notes/reactions 2022-07-05 19:16:21 +09:00
syuilo
52a1ec9af1 enhance(server): アンケートを新しい順にソート 2022-07-02 12:34:22 +09:00
Johann150
5728350267
fix: always respect instance mutes (#8854)
* fix: muted user query also checks instances

This way it can be ensured that the instance mute is used everywhere it
is required without checking the whole codebase again. Muted users and
muted instances should be used together anyways.

* fix lint
2022-06-25 14:23:59 +09:00
syuilo
963f538728 lint fixes 2022-06-14 18:01:23 +09:00
Johann150
21d54f2758
fix: validate text is not empty
fix #8747
2022-05-28 17:26:17 +02:00
Johann150
037ca92275
fix: postgres type error
Fix a bug introduced in #8659. Solution was already tested there.
2022-05-15 11:32:00 +02:00
Johann150
4b872856c2
fix: keep file order (#8659) 2022-05-14 15:09:10 +09:00
xianon
60620bdb25
fix: アンテナ、クリップ、リストの表示を速くする (#8518)
* アンテナノートを取得するクエリがタイムアウトしないように速くする

* テーブル名を直接指定しないようにする

* クリップの取得を速くする

* リストの取得を速くする
2022-04-19 22:59:39 +09:00
syuilo
ff8313b48b refactor 2022-04-17 20:51:59 +09:00
syuilo
1ee757cc5f refactor: fix type 2022-04-17 13:21:07 +09:00
syuilo
e0a4864bea refactor: fix type 2022-04-17 13:01:30 +09:00
syuilo
9f7cdb4bc7 refactor 2022-04-08 19:01:38 +09:00
syuilo
91f4ec3747 fix types 2022-04-03 16:30:22 +09:00
syuilo
41c2aed7dc chore: fix lint 2022-04-03 15:33:22 +09:00
Johann150
c8935b32f8
fix: validation (better #8456) (#8461)
* Revert "revert 484e023c0"

This reverts commit c03b70c949.

* also allow pure renote

* fix checks for pure renote
2022-04-03 13:57:26 +09:00
syuilo
c03b70c949 revert 484e023c0 2022-04-02 16:47:53 +09:00
Johann150
484e023c0c
enhance(doc): required input fields (#8456)
* remove empty file

If the endpoint is to be implemented later, the file can be added back,
but for now it is confusing to have an empty file.

* enhance(doc): document defaults

Default for `isPublic` is based on the database schema default value.
Defaults for `local` and `withFiles` are based on the behaviour of the endpoint.

* enhance(doc): explain nullable emoji category

* fix: make nullable if default is null

* enhance(doc): explain mute attribute expiresAt

* fix: define required fields

- `notes/create`: the default for `text` has been removed because ajv can not handle
  `default` inside of `anyOf`, see
  https://ajv.js.org/guide/modifying-data.html#assigning-defaults
  and the default value cannot be `null` if text is `nullable: false` in the `anyOf`
  first alternative.
- `notes/create`: The `mediaIds` property has been marked as deprecated because it
  has the same behaviour as using `fileIds`, but the implementation tries to handlè
  `fileIds` first.
- The result schema for `admin/emoji/list` has been altered because the `host`
  property will always be `null` as it is filtered this way in the database query.
  See packages/backend/src/server/api/endpoints/admin/emoji/list.ts line 67.

* enhance(doc): explain nullable hostname

* update changelog

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2022-04-02 15:04:36 +09:00
syuilo
1c67c26bd8
refactor: migrate to typeorm 3.0 (#8443)
* wip

* wip

* wip

* Update following.ts

* wip

* wip

* wip

* Update resolve-user.ts

* maxQueryExecutionTime

* wip

* wip
2022-03-26 15:34:00 +09:00
syuilo
ac8c66f5ab perf(server): refactor and performance improvements 2022-03-25 16:27:41 +09:00
syuilo
22b56ac65c refactor 2022-03-25 13:11:52 +09:00
tamaina
e314be5b59
Fix avatar/banner proxy (#8346)
* Fix avatar/banner proxy

Co-authored-by: mei23 <m@m544.net>

* use getAvatarUrl

* fix

* join avatar and banner to improve performance

* join

* Update hybrid-timeline.ts

* fix

Co-authored-by: mei23 <m@m544.net>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2022-02-27 13:59:10 +09:00
syuilo
d071d18dd7
refactor: Use ESM (#8358)
* wip

* wip

* fix

* clean up

* Update tsconfig.json

* Update activitypub.ts

* wip
2022-02-27 11:07:39 +09:00
syuilo
a1c7c1fb49 remove max note text length setting
Resolve #8323
2022-02-20 16:07:43 +09:00
tamaina
fcfb5ef0a3
Fix ajv (#8333)
* wip

* ✌️

* use ajv/dist/core

* revert try

* clean up
2022-02-20 13:15:40 +09:00
syuilo
510de87607
refactor: use ajv instead of cafy (#8324)
* wip

* wip

* Update abuse-user-reports.ts

* Update files.ts

* Update list-remote.ts

* Update list.ts

* Update show-users.ts

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* Update update.ts

* Update search.ts

* Update reactions.ts

* Update search.ts

* wip

* wip

* wip

* wip

* Update update.ts

* Update relation.ts

* Update available.ts

* wip

* wip

* wip

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

Co-authored-by: Johann150 <johann.galle@protonmail.com>

* Update define.ts

* Update define.ts

* typo

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* Update update.ts

* wip

* Update signup.ts

* Update call.ts

* minimum for limit

* type

* remove needless annotation

* wip

* Update signup.ts

* wip

* wip

* fix

* Update create.ts

Co-authored-by: Johann150 <johann.galle@protonmail.com>
2022-02-19 14:05:32 +09:00
syuilo
7fcd9435f3 feat: introduce intersection calculation of charts 2022-02-09 03:46:58 +09:00
syuilo
e3a5584d0a feat: increase files limit for note
#8062
2022-01-21 18:27:33 +09:00
tamaina
efb0ffc4ec
refactor: APIエンドポイントファイルの定義を良い感じにする (#8154)
* Fix API Schema Error

* Delete SimpleSchema/SimpleObj
and Move schemas to dedicated files

* Userのスキーマを分割してみる

* define packMany type

* add ,

* Ensure enum schema and Make "as const" put once

* test?

* Revert "test?"

This reverts commit 97dc9bfa70851bfb7d1cf38e883f8df20fb78b79.

* Revert "Fix API Schema Error"

This reverts commit 21b6176d974ed8e3eb73723ad21a105c5d297323.

* ✌️

* clean up

* test?

* wip

* wip

* better schema def

* ✌️

* fix

* add minLength property

* wip

* wip

* wip

* anyOf/oneOf/allOfに対応? ~ relation.ts

* refactor!

* Define MinimumSchema

* wip

* wip

* anyOf/oneOf/allOfが動作するようにUnionSchemaTypeを修正

* anyOf/oneOf/allOfが動作するようにUnionSchemaTypeを修正

* Update packages/backend/src/misc/schema.ts

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

* fix

* array oneOfをより正確な型に

* array oneOfをより正確な型に

* wip

* ✌️

* なんかもういろいろ

* remove

* very good schema

* api schema

* wip

* refactor: awaitAllの型定義を変えてみる

* fix

* specify types in awaitAll

* specify types in awaitAll

* ✌️

* wip

* ...

* ✌️

* AllowDateはやめておく

* 不必要なoptional: false, nullable: falseを廃止

* Packedが展開されないように

* 続packed

* wip

* define note type

* wip

* UserDetailedをMeDetailedかUserDetailedNotMeかを区別できるように

* wip

* wip

* wip specify user type of other schemas

* ok

* convertSchemaToOpenApiSchemaを改修

* convertSchemaToOpenApiSchemaを改修

* Fix

* fix

* ✌️

* wip

* 分割代入ではなくallOfで定義するように

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2022-01-18 22:27:10 +09:00
syuilo
4a64280a7c lint 2022-01-03 02:12:50 +09:00
syuilo
c69b72e199 fix lint 2021-12-09 23:58:30 +09:00
romaboo
054417354c
feat: user-level instance mute (#7712)
* Update ja-JP.yml

* Added settable config for muted instances

* added psql query for removal of muted notes

* Added filtering and trimming for instance mutes

* cleaned up filtering of bad instance mutes and added a refresh at the end for the list on the client

* Added notification & streaming timeline muting

* Updated changelog

* Added missing semicolon

* Apply japanese string suggestions from robflop

Co-authored-by: Robin B. <robflop98@outlook.com>

* Changed Ja-JP instance mute title string to one suggested by sousuke

Co-authored-by: sousuke0422 <sousuke20xx@gmail.com>

* Update ja-JP instanceMuteDescription based on sousuke's suggestion

Co-authored-by: sousuke0422 <sousuke20xx@gmail.com>

* added notification mute

* added notification and note children muting

* Fixed a bug where local notifications were getting filtered on cold start

* Fixed instance mute imports

* Fixed not saving/loading instance mutes

* removed en-US translations for instance mute

* moved instance mute migration to js

* changed settings index back to spaces

* removed destructuring assignment from notification stream in instance mute check call

Co-authored-by: tamaina <tamaina@hotmail.co.jp>

* added .note accessor for checking note data instead of notification data

* changed note to use Packed<'Note'> instead of any and removed usage of snake case

Co-authored-by: tamaina <tamaina@hotmail.co.jp>

* changed notification mute check to check specifically for notification host

* changed to using single quotes

* moved @click to the end for the linter

* revert unnecessary changes

* restored newlines

* whitespace removal

Co-authored-by: syuilo <syuilotan@yahoo.co.jp>
Co-authored-by: Robin B. <robflop98@outlook.com>
Co-authored-by: sousuke0422 <sousuke20xx@gmail.com>
Co-authored-by: puffaboo <emilis@jigglypuff.club>
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2021-12-09 21:38:56 +09:00
syuilo
8b7f5be878 fix for lint 2021-11-13 19:10:14 +09:00
syuilo
9b876b30b2 update ms to 3.0.0 2021-11-12 19:47:04 +09:00
syuilo
6496835515 viaMobileフラグ廃止
Close #7965
2021-11-12 15:11:20 +09:00
syuilo
0e4a111f81 refactoring
Resolve #7779
2021-11-12 02:02:25 +09:00