Hazelnoot
fc4599ec07
fix rate limit scaling (it's no longer inverted)
2024-12-08 12:02:58 -05:00
Hazelnoot
91c9b67cb0
bypass rate limits when factor is 0
2024-12-08 11:58:57 -05:00
Hazelnoot
2bcac80092
use fraction seconds for rate limit headers
2024-12-08 11:56:26 -05:00
Hazelnoot
7c002ce56e
move all Rate Limit type defs to rate-limit-utils.ts
2024-12-08 11:33:57 -05:00
Hazelnoot
8b091f77ca
check for invalid rate limit inputs
2024-12-08 09:46:49 -05:00
Hazelnoot
a7a1edc92e
fix NaN from extremely high rate limits
2024-12-08 09:22:38 -05:00
Hazelnoot
2781f53d6b
support fractional rate limit scaling
2024-12-08 08:32:05 -05:00
Hazelnoot
f6b256620b
separate SkRateLimiterService from RateLimiterService and update all usages
2024-12-07 13:13:19 -05:00
Hazelnoot
32635ecc25
fix rate limit storage in redis
2024-12-07 12:15:38 -05:00
Hazelnoot
ffc2737478
implement SkRateLimiterService with Leaky Bucket rate limiting
2024-12-07 10:22:49 -05:00
dakkar
51afbbaf72
handle .masto.host
specially
2024-11-29 11:39:18 +00:00
dakkar
97d17c537b
spaces / lint
2024-11-29 11:39:18 +00:00
dakkar
82376f312d
use "userland" punycode
, plus tests
...
thanks to CenTdemeern1 for the `import` incantation
2024-11-29 11:39:18 +00:00
Hazelnoot
1fb1875ac3
normalize AP IDs during verification
2024-11-23 20:23:05 -05:00
Julia Johannesen
1758f29364
Fix error in test function calls
2024-11-20 20:16:43 -05:00
Hazelnoot
b5a1c54d65
fix lint errors in backend unit tests
2024-10-15 21:40:20 -04:00
Hazelnoot
8a34d8e9d2
Merge branch 'develop' into feature/2024.9.0
...
# Conflicts:
# locales/en-US.yml
# locales/ja-JP.yml
# packages/backend/src/core/NoteCreateService.ts
# packages/backend/src/core/NoteDeleteService.ts
# packages/backend/src/core/NoteEditService.ts
# packages/frontend-shared/js/config.ts
# packages/frontend/src/boot/common.ts
# packages/frontend/src/pages/following-feed.vue
# packages/misskey-js/src/autogen/endpoint.ts
2024-10-15 18:09:11 -04:00
Marie
7647aa637a
merge: Improvements and tweaks to latest note handling ( resolves #744 ) ( !688 )
...
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/688
Closes #744
Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2024-10-15 21:50:32 +00:00
Hazelnoot
de9b99c937
merge: Add filter options to following feed ( resolves #726 ) ( !671 )
...
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/671
Closes #726
Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
2024-10-15 21:50:26 +00:00
Hazelnoot
e781be3c72
add unit tests for SkLatestNote.areEquivalent
2024-10-15 14:17:19 -04:00
Hazelnoot
fa687ecb33
fix is-renote tests
2024-10-15 14:16:46 -04:00
Hazelnoot
d3792ab201
fix test failures
2024-10-15 14:16:46 -04:00
Hazel K
463b9ac59d
add filters for following feed
2024-10-15 14:16:46 -04:00
Hazelnoot
86a693b182
factor out tuple logic into from-tuple.ts
2024-10-15 14:03:57 -04:00
dakkar
f00576bce6
Merge remote-tracking branch 'misskey/master' into feature/2024.9.0
2024-10-09 15:17:22 +01:00
Hazel K
39214431f4
check for host
2024-10-07 11:45:58 -04:00
Hazel K
a790fef261
prevent deletion or suspension of system accounts
2024-10-07 10:02:55 -04:00
Yuri Lee
b83a2f33ff
test(backend): Add test for Passkey API ( #14635 )
2024-09-28 08:09:30 +09:00
syuilo
023fa30280
refactor/perf(backend): provide metadata statically ( #14601 )
...
* wip
* Update ReactionService.ts
* Update ApiCallService.ts
* Update timeline.ts
* Update GlobalModule.ts
* Update GlobalModule.ts
* Update NoteEntityService.ts
* wip
* wip
* wip
* Update ApPersonService.ts
* wip
* Update GlobalModule.ts
* Update mock-resolver.ts
* Update RoleService.ts
* Update activitypub.ts
* Update activitypub.ts
* Update activitypub.ts
* Update activitypub.ts
* Update activitypub.ts
* clean up
* Update utils.ts
* Update UtilityService.ts
* Revert "Update utils.ts"
This reverts commit a27d4be764b78c1b5a9eac685e261fee49331d89.
* Revert "Update UtilityService.ts"
This reverts commit e5fd9e004c482cf099252201c0c1aa888e001430.
* vuwa-
* Revert "vuwa-"
This reverts commit 0c3bd12472b4b9938cdff2d6f131e6800bc3724c.
* Update entry.ts
* Update entry.ts
* Update entry.ts
* Update entry.ts
* Update jest.setup.ts
2024-09-22 12:53:13 +09:00
syuilo
0b062f1407
Misskey® Reactions Buffering Technology™ ( #14579 )
...
* wip
* wip
* Update ReactionsBufferingService.ts
* Update ReactionsBufferingService.ts
* wip
* wip
* wip
* Update ReactionsBufferingService.ts
* wip
* wip
* wip
* Update NoteEntityService.ts
* wip
* wip
* wip
* wip
* Update CHANGELOG.md
2024-09-20 21:03:53 +09:00
おさむのひと
4ac8aad50a
feat: UserWebhook/SystemWebhookのテスト送信機能を追加 ( #14489 )
...
* feat: UserWebhook/SystemWebhookのテスト送信機能を追加
* fix CHANGELOG.md
* 一部設定をパラメータから上書き出来るように修正
* remove async
* regenerate autogen
2024-09-19 17:20:50 +09:00
dakkar
6151099f5b
Merge remote-tracking branch 'misskey/master' into feature/misskey-2024.8
2024-08-30 12:08:31 +01:00
Daiki Mizukami
0d508db8a7
fix(backend): check visibility of following/followers of remote users / feat: moderators can see following/followers of all users ( #14375 )
...
* fix(backend): check visibility of following/followers of remote users
Resolves https://github.com/misskey-dev/misskey/issues/13362 .
* test(backend): add tests for visibility of following/followers of remote users
* docs(changelog): update CHANGELOG.md
* feat: moderators can see following/followers of all users
* docs(changelog): update CHANGELOG.md
* refactor(backend): minor refactoring
`createPerson`と`if`の条件を統一するとともに、異常系の
処理をearly returnに追い出すための変更。
* feat(backend): moderators can see following/followers count of all users
As per https://github.com/misskey-dev/misskey/pull/14375#issuecomment-2275044908 .
2024-08-09 12:10:51 +09:00
dakkar
cfa9b852df
Merge remote-tracking branch 'misskey/master' into feature/misskey-2024.07
2024-08-02 12:25:58 +01:00
syuilo
337b42bcb1
revert 5f88d56d96
...
バグがある(かつすぐに修正できそうにない) & まだレビュー途中で意図せずマージされたため
2024-07-20 21:33:20 +09:00
tamaina
5f88d56d96
perf(federation): Ed25519署名に対応する ( #13464 )
...
* 1. ed25519キーペアを発行・Personとして公開鍵を送受信
* validate additionalPublicKeys
* getAuthUserFromApIdはmainを選ぶ
* ✌️
* fix
* signatureAlgorithm
* set publicKeyCache lifetime
* refresh
* httpMessageSignatureAcceptable
* ED25519_SIGNED_ALGORITHM
* ED25519_PUBLIC_KEY_SIGNATURE_ALGORITHM
* remove sign additionalPublicKeys signature requirements
* httpMessageSignaturesSupported
* httpMessageSignaturesImplementationLevel
* httpMessageSignaturesImplementationLevel: '01'
* perf(federation): Use hint for getAuthUserFromApId (#13470 )
* Hint for getAuthUserFromApId
* とどのつまりこれでいいのか?
* use @misskey-dev/node-http-message-signatures
* fix
* signedPost, signedGet
* ap-request.tsを復活させる
* remove digest prerender
* fix test?
* fix test
* add httpMessageSignaturesImplementationLevel to FederationInstance
* ManyToOne
* fetchPersonWithRenewal
* exactKey
* ✌️
* use const
* use gen-key-pair fn. from '@misskey-dev/node-http-message-signatures'
* update node-http-message-signatures
* fix
* @misskey-dev/node-http-message-signatures@0.0.0-alpha.11
* getAuthUserFromApIdでupdatePersonの頻度を増やす
* cacheRaw.date
* use requiredInputs
https://github.com/misskey-dev/misskey/pull/13464#discussion_r1509964359
* update @misskey-dev/node-http-message-signatures
* clean up
* err msg
* fix(backend): fetchInstanceMetadataのLockが永遠に解除されない問題を修正
Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>
* fix httpMessageSignaturesImplementationLevel validation
* fix test
* fix
* comment
* comment
* improve test
* fix
* use Promise.all in genRSAAndEd25519KeyPair
* refreshAndprepareEd25519KeyPair
* refreshAndfindKey
* commetn
* refactor public keys add
* digestプリレンダを復活させる
RFC実装時にどうするか考える
* fix, async
* fix
* !== true
* use save
* Deliver update person when new key generated (not tested)
https://github.com/misskey-dev/misskey/pull/13464#issuecomment-1977049061
* 循環参照で落ちるのを解消?
* fix?
* Revert "fix?"
This reverts commit 0082f6f8e8c5d5febd14933ba9a1ac643f70ca92.
* a
* logger
* log
* change logger
* 秘密鍵の変更は、フラグではなく鍵を引き回すようにする
* addAllKnowingSharedInboxRecipe
* nanka meccha kaeta
* delivre
* キャッシュ有効チェックはロック取得前に行う
* @misskey-dev/node-http-message-signatures@0.0.3
* PrivateKeyPem
* getLocalUserPrivateKey
* fix test
* if
* fix ap-request
* update node-http-message-signatures
* fix type error
* update package
* fix type
* update package
* retry no key
* @misskey-dev/node-http-message-signatures@0.0.8
* fix type error
* log keyid
* logger
* db-resolver
* JSON.stringify
* HTTP Signatureがなかったり使えなかったりしそうな場合にLD Signatureを活用するように
* inbox-delayed use actor if no signature
* ユーザーとキーの同一性チェックはhostの一致にする
* log signature parse err
* save array
* とりあえずtryで囲っておく
* fetchPersonWithRenewalでエラーが起きたら古いデータを返す
* use transactionalEntityManager
* fix spdx
* @misskey-dev/node-http-message-signatures@0.0.10
* add comment
* fix
* publicKeyに配列が入ってもいいようにする
https://github.com/misskey-dev/misskey/pull/13950
* define additionalPublicKeys
* fix
* merge fix
* refreshAndprepareEd25519KeyPair → refreshAndPrepareEd25519KeyPair
* remove gen-key-pair.ts
* defaultMaxListeners = 512
* Revert "defaultMaxListeners = 512"
This reverts commit f2c412c18057a9300540794ccbe4dfbf6d259ed6.
* genRSAAndEd25519KeyPairではキーを直列に生成する?
* maxConcurrency: 8
* maxConcurrency: 16
* maxConcurrency: 8
* Revert "genRSAAndEd25519KeyPairではキーを直列に生成する?"
This reverts commit d0aada55c1ed5aa98f18731ec82f3ac5eb5a6c16.
* maxWorkers: '90%'
* Revert "maxWorkers: '90%'"
This reverts commit 9e0a93f110456320d6485a871f014f7cdab29b33.
* e2e/timelines.tsで個々のテストに対するtimeoutを削除, maxConcurrency: 32
* better error handling of this.userPublickeysRepository.delete
* better comment
* set result to keypairEntityCache
* deliverJobConcurrency: 16, deliverJobPerSec: 1024, inboxJobConcurrency: 4
* inboxJobPerSec: 64
* delete request.headers['host'];
* fix
* // node-fetch will generate this for us. if we keep 'Host', it won't change with redirects!
* move delete host
* modify comment
* modify comment
* fix correct → collect
* refreshAndfindKey → refreshAndFindKey
* modify comment
* modify attachLdSignature
* getApId, InboxProcessorService
* TODO
* [skip ci] add CHANGELOG
---------
Co-authored-by: MeiMei <30769358+mei23@users.noreply.github.com>
Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>
2024-07-18 01:28:17 +09:00
Kisaragi
31e82fc29a
test(backend): kill many any
in backend test (partial) ( #14054 )
...
* kill any on utils:api
* kill any on timeline test
* use optional chain to kill TS2532 on timeline test
変更前: 該当ノートが見つからなければundefinedに対するプロパティアクセスとしてテストがクラッシュ
変更後: 該当ノートが見つからなければoptional chainがundefinedとして評価されるが、strictEqualの右辺がnon-nullableなためアサーションに失敗しテストがクラッシュ
* kill `as any` for ApMfmService
* kill argument any for api-visibility
* kill argument any across a few tests
* do not return value that has yielded from `await`-ing `Promise<void>`
* force cast
* runtime non-null assertion to coerce
* rewrite `assert.notEqual(expr, null)` to `assert.ok(expr)`
こうすることでassertion type扱いになり、non-nullableになる
* change return type of `failedApiCall` to `void`
戻り値がどこにも使われていない
* split bindings for exports.ts
型が合わなくて文句を言ってくるので適切に分割
* runtime non-null assertion
* runtime non-null assertion
* 何故かうまく行かないので、とりあえずXORしてみる
* Revert "何故かうまく行かないので、とりあえずXORしてみる"
This reverts commit 48cf32c930924840d0892af92d71b9437acb5844.
* castAsErrorで安全ではないキャストを隠蔽
* 型アサーションの追加
* 型アサーションの追加
* 型アサーションの追加
* voidで値を返さない
* castAsError
* assert.ok => kill nullability
* もはや明示的な型の指定は必要ない
* castAsError
* castAsError
* 型アサーションの追加
* nullableを一旦抑止
* 変数を分離して型エラーを排除
* 不要なプロパティを削除する処理を隠蔽してanyを排除
* Repository type
* simple type
* assert.ok => kill nullability
* revert `as any` drop
reverts fe95c05b3f53266108128680d9358a3796844232 partialy
* test: fix invalid assertion
partially revert b99b7b5392d9d20c81dfee1346ba8b33ff9e1fbb
* test: 52d8a54fc7
により型が合うようになった部分の`as any`を除去
* format
* test: apply https://github.com/misskey-dev/misskey/pull/14054#discussion_r1672369526 (part 1)
* test: use non-null assertion to suppress too many error
* Update packages/backend/test/utils.ts
Co-authored-by: anatawa12 <anatawa12@icloud.com>
---------
Co-authored-by: anatawa12 <anatawa12@icloud.com>
2024-07-14 09:33:16 +09:00
おさむのひと
6cd15275bb
fix: サジェストされるユーザのリストアップ方法を見直し ( #14180 )
...
* fix: サジェストされるユーザのリストアップ方法を見直し
* fix comment
* fix CHANGELOG.md
* ノートの無いユーザ(updatedAtが無いユーザ)は含めないらしい
* fix test
2024-07-12 21:14:09 +09:00
woxtu
de1fe7cc5a
Use built-in API ( #14095 )
2024-07-02 14:47:07 +09:00
Kisaragi
eafae79869
test(backend): goodbye, Lenna ( #14111 )
2024-07-02 14:29:44 +09:00
おさむのひと
61fae45390
feat: 通報を受けた際にメールまたはWebhookで通知を送出出来るようにする ( #13758 )
...
* feat: 通報を受けた際にメールまたはWebhookで通知を送出出来るようにする
* モデログに対応&エンドポイントを単一オブジェクトでのサポートに変更(API経由で大量に作るシチュエーションもないと思うので)
* fix spdx
* fix migration
* fix migration
* fix models
* add e2e webhook
* tweak
* fix modlog
* fix bugs
* add tests and fix bugs
* add tests and fix bugs
* add tests
* fix path
* regenerate locale
* 混入除去
* 混入除去
* add abuseReportResolved
* fix pnpm-lock.yaml
* add abuseReportResolved test
* fix bugs
* fix ui
* add tests
* fix CHANGELOG.md
* add tests
* add RoleService.getModeratorIds tests
* WebhookServiceをUserとSystemに分割
* fix CHANGELOG.md
* fix test
* insertOneを使う用に
* fix
* regenerate locales
* revert version
* separate webhook job queue
* fix
* 🎨
* Update QueueProcessorService.ts
---------
Co-authored-by: osamu <46447427+sam-osamu@users.noreply.github.com>
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-06-08 15:34:19 +09:00
dakkar
1c2bb90ac5
fix types in my test
2024-05-31 12:59:32 +01:00
dakkar
3372e0ffe1
Merge remote-tracking branch 'misskey/release/2024.5.0' into future
2024-05-31 12:26:07 +01:00
dakkar
7b630b48b5
Merge branch 'develop' into future
2024-05-31 11:43:09 +01:00
かっこかり
3ffbf6296f
feat: 個別のお知らせにリンクで飛べるように ( #13885 )
...
* feat(announcement): 個別のお知らせにリンクで飛べるように (MisskeyIO#639)
(cherry picked from commit f6bf7f992a78e54d86a4701dbd1e4fda7ef4eb27)
* fix
Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>
* fix
Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>
* 一覧ページではお知らせpanel全体を押せるように
* お知らせバーは個別ページに飛ばすように
* Update Changelog
* spdx
* attempt to fox test
* remove unnecessary thong
* `announcement` → `announcements/show`
* リンクを押せる場所をタイトルと日付部分のみに変更
---------
Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>
2024-05-27 17:15:11 +09:00
dakkar
c05cc63e24
look inside url
when checking activity origin - #512
...
The previous assertion that:
> if it's a complicated thing and the `activity.id` doesn't match, I
> think we're fine rejecting the activity
was wrong: at least peertube sends activities that have `url` as an
array of objects.
Notice that this does *not*, in fact, fix #512 : the peertube activity
does not contain its short URL (`https://example.com/w/someid `), so
there's no way to confirm that it is the activity we requested.
2024-05-18 16:48:10 +01:00
dakkar
451b0ecc9b
Merge remote-tracking branch 'misskey/release/2024.5.0' into future-2024-04-25-post
2024-05-11 14:13:07 +01:00
Daiki Mizukami
d2a5bb39e3
Merge pull request from GHSA-2vxv-pv3m-3wvj
...
* fix: normalize incoming signed activities
* Tweak style
* Update CHANGELOG.md
* Log compacted activity as well
---------
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-05-01 16:33:58 +09:00
MeiMei
c7d7da8fc5
AP Link等は添付ファイル扱いしないようになど ( #13754 )
...
* Linkは添付ファイルではない
* CHANGELOG
2024-04-28 10:53:33 +09:00
ikasoba
20eb4bc296
Fix(backend): ActivityPubでのHTMLへのシリアライズを修正 ( #13752 )
...
* devモードでもActivityPub系エンドポイントへアクセスできるように
* ActivityPubでのHTMLのシリアライズを修正
* ハードコードしていたurlを`httpUrl`へ修正
* テストの追加
2024-04-27 20:26:55 +09:00