Commit graph

63 commits

Author SHA1 Message Date
Hazelnoot
74d4799ed5 fix rebase errors 2025-11-15 14:08:36 -05:00
Hazelnoot
e81c8b075b make sure validation errors in background update-featured are returned to the job queue 2025-11-15 14:08:35 -05:00
Hazelnoot
f9a6a8d214 fix MockResolver failing on calls to secureResolve 2025-11-15 14:08:35 -05:00
Hazelnoot
a903d77a3f fix ImmediateApPersonService producing duplicate calls to updateFeatured 2025-11-15 14:08:35 -05:00
Hazelnoot
4b08e978ce implement background task queue 2025-11-15 14:08:29 -05:00
Hazelnoot
815bb2234e fix broken import in MockRedis 2025-11-11 23:13:54 -05:00
Hazelnoot
c777b79431 implement assert.isNotNullish, assert.throws, assert.throwsAsync, and assert.rejectsAsync testing utilities 2025-11-11 20:19:08 -05:00
Hazelnoot
b013649a41 prefer type-only imports in testing utilities 2025-11-09 00:51:34 -05:00
Hazelnoot
8271dc199e normalize cache constructors and detect duplicate cache names 2025-11-05 19:42:31 -05:00
Hazelnoot
c53bb126ef fix MockEnvService not properly reverting overrides 2025-11-05 19:42:31 -05:00
Hazelnoot
effdea5658 update unit tests and mocks 2025-11-05 19:42:30 -05:00
Hazelnoot
48984908e7 implement multi() in MockRedis 2025-11-05 19:42:30 -05:00
Hazelnoot
a55649e89a move global services to "global" directory 2025-11-05 19:42:28 -05:00
Hazelnoot
8e000ae313 implement MockEnvService and fix tests 2025-11-05 19:41:09 -05:00
Hazelnoot
acf29ff40b rename MockInternalEventService methods to match other utilities 2025-11-05 19:21:51 -05:00
Hazelnoot
a1ef776f6f fix repeating timers in GodOfTimeService 2025-11-05 19:21:51 -05:00
Hazelnoot
6cceca90f9 use TimeService everywhere in the backend 2025-11-05 19:21:46 -05:00
Hazelnoot
2dfc878445 add GodOfTimeService.tick() to easily increment time 2025-11-05 19:20:25 -05:00
Hazelnoot
3f950e398b remove NoOpCaches in favor of CacheManagementService 2025-11-05 19:20:05 -05:00
Hazelnoot
ff76371057 add MockApResolverService testing utility 2025-11-05 19:20:05 -05:00
Hazelnoot
ac0d261190 add FakeSkRateLimiterService testing utility 2025-11-05 19:20:05 -05:00
Hazelnoot
d2e902f5b7 rename FakeInternalEventService to MockInternalEventService and fix DI errors 2025-11-05 19:20:05 -05:00
Hazelnoot
dac1a3d20f add FakeCacheManagementService testing utility 2025-11-05 19:20:05 -05:00
Hazelnoot
4142788989 add MockRedis testing utility 2025-11-05 19:20:05 -05:00
Hazelnoot
1d5bc6928f add FakeRedis testing utility 2025-11-05 19:20:05 -05:00
Hazelnoot
411df0c0bf fix DI errors when using TimeService 2025-11-05 19:20:05 -05:00
Hazelnoot
48cc7e21e3 make TimeService abstract and add support for managed timers 2025-11-05 19:20:04 -05:00
Hazelnoot
5b01ed54b9 implement MockApResolverService.ts testing utility 2025-11-05 19:20:04 -05:00
Hazelnoot
6f6ee0436e verify recursion limit in MockResolver 2025-11-05 19:20:04 -05:00
Hazelnoot
c45d6ea452 implement MockLoggerService.ts testing utility 2025-11-05 19:20:04 -05:00
Hazelnoot
ac9b787796 move userFollowingChannelsCache and federatedInstanceCache to CacheService for more reliable disposal 2025-11-05 19:20:04 -05:00
Hazelnoot
7200c3d6c8 implement note mutings and move favorited/renoted status into note entity directly 2025-06-23 13:47:04 -04:00
Hazelnoot
72a512a59d fix tests 2025-06-18 10:46:49 -04:00
Hazelnoot
fa68751a19 normalize userFollowingsCache / userFollowersCache and add hibernatedUserCache to reduce the number of cache-clears and allow use of caching in many more places 2025-06-09 11:02:51 -04:00
Hazelnoot
372714c9b6 implement userFollowersCache 2025-06-09 11:02:36 -04:00
Hazelnoot
853b548a43 re-type userFollowingsCache to match the others 2025-06-09 11:02:36 -04:00
Hazelnoot
0c84d73294 move QuantumKVCache to a separate file 2025-06-09 11:02:36 -04:00
Hazelnoot
2e486f02ff implement no-op caches for testing 2025-06-09 11:02:36 -04:00
Hazelnoot
1f2742ddd7 add ignoreRemote filter to InternalEventService 2025-06-09 11:02:36 -04:00
Hazelnoot
aa7cadbb6c implement InternalEventService 2025-06-09 11:02:36 -04:00
Hazelnoot
d8908ef2d8 merge upstream 2025-03-25 16:14:53 -04:00
Hazelnoot
27e8289126 fix lint errors in mock-resolver.ts and activitypub.ts 2025-03-21 12:37:06 -04:00
Hazelnoot
a568333ecd remove assertActivityMatchesUrls in favor of three-way same-authority checks 2025-03-02 11:06:29 -05:00
syuilo
616cccf251
enhance(backend): refine system account (#15530)
* wip

* wip

* wip

* Update SystemAccountService.ts

* Update 1740121393164-system-accounts.js

* Update DeleteAccountService.ts

* wip

* wip

* wip

* wip

* Update 1740121393164-system-accounts.js

* Update RepositoryModule.ts

* wip

* wip

* wip

* Update ApRendererService.ts

* wip

* wip

* Update SystemAccountService.ts

* fix tests

* fix tests

* fix tests

* fix tests

* fix tests

* fix tests

* add print logs

* ログが長すぎて出てないかもしれない

* fix migration

* refactor

* fix fed-tests

* Update RelayService.ts

* merge

* Update user.test.ts

* chore: emit log

* fix: tweak sleep duration

* fix: exit 1

* fix: wait for misskey processes to become healthy

* fix: longer sleep for user deletion

* fix: make sleep longer again

* デッドロック解消の試み

https://github.com/misskey-dev/misskey/issues/15005

* Revert "デッドロック解消の試み"

This reverts commit 266141f66fb584371bbb56ef7eba04e14bcff94d.

* wip

* Update SystemAccountService.ts

---------

Co-authored-by: おさむのひと <46447427+samunohito@users.noreply.github.com>
Co-authored-by: zyoshoka <107108195+zyoshoka@users.noreply.github.com>
2025-03-02 20:06:20 +09:00
Hazelnoot
dbaeb7f2ac fix unit tests using mock-resolver 2025-02-16 19:25:25 -05: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
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
tamaina
c1514ce91d (re) update SPDX-FileCopyrightText
Fix  #13290
2024-02-13 15:59:27 +00:00
tamaina
311c2172d7 Revert "update SPDX-FileCopyrightText"
This reverts commit 9b5aeb76d8.
2024-02-13 15:50:11 +00:00