Mar0xy
89924b587a
add: speakAsCat extension
2023-10-04 04:35:58 +02:00
Gianni Ceccarelli
7136735c14
handle {
http://fedibird.com/ns# }quoteUri on note edit
...
my previous PR had missed this part of the code
2023-10-03 15:17:44 +01:00
dakkar
f31f601111
federade quote-notes a bit better
...
tested against the treehouse mastodon, but should work with others
2023-10-02 13:31:00 +01:00
Mar0xy
6a0aa612cc
fix: no such note
2023-09-23 02:50:54 +02:00
Mar0xy
d0956d5657
chore: resolve uri on UpdateNote call
2023-09-23 02:37:33 +02:00
Mar0xy
93ec6a62fb
upd: attempt at updating remote notes
2023-09-23 02:32:49 +02:00
Mar0xy
2bcd2eefc1
change to default functions for resolving collections
2023-09-22 02:46:41 +02:00
Mar0xy
2bfe51e39d
upd: fetch counts for notes, followers and following
2023-09-22 02:23:17 +02:00
syuilo
053da10e94
refactor(backend): update directory structure for models
2023-09-20 11:33:36 +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
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
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
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
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
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
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
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
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
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
syuilo
fd7b77c542
enhance(backend): migrate bull to bullmq ( #10910 )
...
* wip
* wip
* Update QueueService.ts
* wip
* refactor
* ✌️
* fix
* Update QueueStatsService.ts
* refactor
* Update ApNoteService.ts
* Update mock-resolver.ts
* refactor
* Update mock-resolver.ts
2023-05-29 11:54:49 +09:00
syuilo
d10d5a8d53
enhance: タイムラインにフォロイーの行った他人へのリプライを含めるかどうかの設定をアカウントに保存するのをやめるように
...
Resolve #10646
2023-05-16 12:16:37 +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
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
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
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
521eb95dbc
perf(backend): cache avatar and banner url to db
2023-04-06 19:48:24 +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
syuilo
ecaf152b4a
enhance(backend): improve cache
2023-04-04 17:32:09 +09:00
syuilo
31f3f5f0f0
enhance(backend): リモートサーバーのチャート生成を無効にするオプションを追加
2023-03-24 19:08:08 +09:00
Kisaragi
0ac1fc846b
refactor(backend): 必要ないas anyを消去 ( #10293 )
2023-03-11 08:51:37 +09:00
Kisaragi
a81ebc5966
chore(backend): fix typo in warning message ( #10284 )
2023-03-10 13:21:23 +09:00
Kagami Sascha Rosylight
194d656bb4
fix: normalize empty value of name
into an absent value
2023-02-17 09:06:48 +01: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
8f2049bcd2
drop messaging ( #9919 )
...
* drop messaging (from backend)
* wip
2023-02-15 13:06:06 +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
451bc0b444
refactor: fix types
2023-02-12 18:47:30 +09:00
syuilo
0da0cc80b9
fix(server): validate url from ap to improve security
2023-02-08 17:50:23 +09:00
syuilo
2be1a39d13
fix(server): validate urls from ap to improve security
2023-02-07 19:58:58 +09:00
syuilo
562b02310f
drop twitter/github/discord integrations
...
Close #9775
2023-02-03 15:01:31 +09:00
syuilo
2a2e8d0cf6
refactor(server): fix type errors
2023-01-25 11:23:57 +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
4cc71d2443
✌️
2023-01-03 09:32:36 +09:00
syuilo
f44a7e2536
refactor
2022-12-25 14:22:23 +09:00
syuilo
bbb49457f9
refactor: introduce bindThis decorator to bind this automaticaly
2022-12-04 15:03:09 +09:00