Hazel K
32872181dd
feat: implement attachLdSignatureForRelays
to control signing of Relayed activities
2024-07-25 10:37:23 -04:00
zyoshoka
befa8e4a7f
fix(backend): avoid caching remote user's HTL when receiving Note ( #13772 )
...
* fix(backend): avoid caching remote user's HTL when receiving Note
* test(backend): add test for FFT
* Update CHANGELOG.md
---------
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-07-25 16:37:46 +09:00
zyoshoka
fc71bcc98e
fix(backend): avoid notifying to remote users on local ( #13774 )
...
* fix(backend): avoid notifying to remote users on local
* Update CHANGELOG.md
* refactor: check before calling method
---------
Co-authored-by: かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com>
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-07-25 16:32:07 +09:00
dakkar
f18f30cb79
ignore cpuCount when it's 0 - fixes #586
...
seems more useful this way
2024-07-21 13:29:54 +01:00
dakkar
3eff85a3d3
error out when we can't spawn workers - fixes #586
...
Setting `clusterLimit` to 0 means no workers are started, which
usually breaks things. Also, some "hardening" things may prevent node
from seeing how many CPUs the machine has, which has the same effect.
With this commit we provide hopefully-useful error messages.
2024-07-21 11:32:39 +01:00
dakkar
6e1e3bc0ea
pass redis config as-is to postgres cache
...
also, explicitly state that `path` is a valid config option for
redis (tells `ioredis` to connect via UNIX socked instead of TCP
socket)
2024-07-21 11:02:46 +01:00
syuilo
337b42bcb1
revert 5f88d56d96
...
バグがある(かつすぐに修正できそうにない) & まだレビュー途中で意図せずマージされたため
2024-07-20 21:33:20 +09:00
dakkar
01b10d0d3b
fix drive search query
...
`.andWhere` does not add parentheses, so that `or` changed the whole
meaning of the query
2024-07-19 14:32:14 +01:00
woxtu
6920f0fa7e
Disable ESLint for migration files ( #14262 )
2024-07-19 10:05:34 +09:00
anatawa12
10ce7bf3c4
kill any from streaming API Implementation ( #14251 )
...
* chore: add JsonValue type
* refactor: kill any from Connection.ts
* refactor: fix StreamEventEmitter contains undefined instead of null
* refactor: kill any from channels
* docs(changelog): Fix: Steaming APIが不正なデータを受けた場合の動作が不安定である問題
* fix license header
* fix lints
2024-07-18 20:04:23 +09:00
かっこかり
de166a8ed4
fix(backend): リノートミュートがキャッシュが切れるまで効かない問題を修正 ( #14242 )
...
* Fix: RenoteMuteがキャッシュが切れるまで効かない問題を修正
(cherry picked from commit e9601029b52e0ad43d9131b555b614e56c84ebc1)
* update changelog
* 🎨
* remove unused import
* 消したときもキャッシュを飛ばすように
* lint
---------
Co-authored-by: mattyatea <mattyacocacora0@gmail.com>
2024-07-18 08:55:36 +09:00
anatawa12
cfdad45092
fix: ソーシャルタイムラインにローカルタイムラインに表示される自分へのリプライが表示されない問題を修正 ( #13978 )
...
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
2024-07-18 02:06:31 +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
KevinWh0
5e65b6d01d
Merge develop into feature/search-drive-via-alt-text
2024-07-16 23:02:15 +02:00
KevinWh0
f97417cfca
Add stuff talked about on MR
2024-07-16 22:06:38 +02:00
Kisaragi
ce39c3a2fb
chore(backend): registed -> registered ( #14213 )
...
* chore(backend): registed -> registered
* Update CHANGELOG.md
2024-07-15 14:58:48 +09:00
dakkar
4d0a340620
merge: [feat] port fetching host-meta before the webfinger endpoint from iceshrimp - fixes #539 ( !567 )
...
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/567
Closes #539
Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <marie@kaifa.ch>
2024-07-14 14:10:54 +00:00
slonkazoid
2232f65410
use more concise syntax for env var checking
2024-07-14 16:11:11 +03:00
slonkazoid
1fa92ad763
rename fetchHostMeta to fetchWebFingerTemplateFromHostMeta
2024-07-14 16:11:02 +03:00
Souma
1b84760c19
enhance(backend): Load settings via environment variables ( #14179 )
...
* feat(backend): Load settings via environment variables
If they're not loaded from the config file.
* chore(docker): Add hints for environment variables
It supports users to know about them.
* docs(changelog): Add the description about this change
Users can notice what's changed by this PR.
* style(backend): Fix code syntax
To pass the linter.
2024-07-14 21:33:22 +09:00
Kisaragi
f0b9d70720
ci: cache eslint ( #14204 )
...
* ci: cache eslint
* dummy commit to trigger
* fix syntax error
2024-07-14 21:30:57 +09:00
Sayamame-beans
4b9c60ad21
fix(backend): ユーザーのリアクション一覧でミュート/ブロックが機能していなかった問題を修正 ( #14100 )
...
* fix: mute/block was not considered on users/reactions
* docs(changelog): update changelog
* chore: Apply suggestion from code review
Co-authored-by: zyoshoka <107108195+zyoshoka@users.noreply.github.com>
---------
Co-authored-by: zyoshoka <107108195+zyoshoka@users.noreply.github.com>
2024-07-14 20:24:29 +09:00
syuilo
c5607d8633
enhance(backend): configにsignToActivityPubGetの指定が無い場合trueと見做すように
...
trueの方が望ましいため
2024-07-14 20:14:43 +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
Sayamame-beans
7afa593d11
Feat: ユーザーのアイコン/バナーの変更可否をロールで設定可能に ( #14078 )
...
* feat: implement role policy "canUpdateBioMedia"
* docs(changelog): update changelog
* docs(changelog): update changelog
* chore: regenerate misskey-js type definitions
* chore: Apply suggestion from code review
Co-authored-by: anatawa12 <anatawa12@icloud.com>
* chore: fix unnecessarily strict inequality check
* chore: policies should be gotten only once
---------
Co-authored-by: anatawa12 <anatawa12@icloud.com>
2024-07-14 09:31:05 +09:00
かっこかり
58c596cacf
fix(backend): 一般ユーザーから見たユーザーのバッジの一覧に公開されていないものが含まれることがある問題を修正 ( #14195 )
...
* enhance(backend): 公開バッジのみをpackするように (MisskeyIO#652)
(cherry picked from commit b8a90659f35fef49d1d00fb2f9b152226c97643c)
* Update Changelog
* fix
* Update UserEntityService.ts
---------
Co-authored-by: CyberRex <26585194+CyberRex0@users.noreply.github.com>
2024-07-14 09:26:25 +09:00
Gianni Ceccarelli
c83c831c53
parse notRespondingSince
from redis instance cache ( #14079 )
...
if we don't do this, we'll get a string, and `DeliverProcessorService`
will error out `i.notRespondingSince.getTime is not a function`
2024-07-13 20:26:48 +09:00
dakkar
9a9570ab62
mute users when blocking them - fixes #558
...
we already unfollow them, and make them unfollow us, so muting them is
a very sensible thing to want
since the mute is handled separately, users can un-mute the people
they block (same as they can re-follow them)
2024-07-13 10:53:40 +01:00
syuilo
91de35ecdf
fix(backend): デフォルトテーマに無効なテーマコードを入力するとUIが使用できなくなる問題を修正
...
Fix #13955
2024-07-13 10:30:28 +09:00
slonkazoid
d81aadfe23
replace useHttp with defaultProtocol
2024-07-12 15:46:23 +03:00
slonkazoid
6fa6f1ba45
i re-read the code several times but oh well
2024-07-12 15:28:05 +03:00
おさむのひと
6cd15275bb
fix: サジェストされるユーザのリストアップ方法を見直し ( #14180 )
...
* fix: サジェストされるユーザのリストアップ方法を見直し
* fix comment
* fix CHANGELOG.md
* ノートの無いユーザ(updatedAtが無いユーザ)は含めないらしい
* fix test
2024-07-12 21:14:09 +09:00
slonkazoid
0b6fb394c0
apply fixes from review
2024-07-12 14:28:19 +03:00
dakkar
cced87da7f
rate limit all password checks - fixes #540
...
all of these endpoints require the caller to already be logged in, so
it's not really much of a security problem, but it's still safer to
limit any endpoints that can be used to guess the current password
2024-07-12 11:15:58 +01:00
かっこかり
600f16d625
fix(backend): api-docをScalarに変更 ( #14152 )
...
* fix(backend): api-docをScalarに変更
* Update Changelog
2024-07-09 21:57:19 +09:00
slonkazoid
7a62e1be31
implement fetching host-meta before the webfinger endpoint
...
code ported from iceshrimp: c3e685a925/packages/backend/src/remote/webfinger.ts
2024-07-09 05:45:41 +03:00
かっこかり
9ef6c4716c
fix(backend): 名前を空白文字列だけにできる問題を修正 ( #14119 )
...
* fix(backend): 名前を空白文字列だけにできる問題を修正
* Update Changelog
* fix test
* Unicodeを含める
* fix
* ユーザー名がUnicode制御文字とスペースのみで構成される場合はnullに
* Revert "ユーザー名がUnicode制御文字とスペースのみで構成される場合はnullに"
This reverts commit 6c752a69c0d3649072e7e4ed30025183bceb48f9.
* [ci skip] changelog typo
2024-07-07 14:19:00 +09:00
かっこかり
984d582796
fix(frontend): サーバーサイドbootでエラー画面の描画時にDOMが初期化できていないことがあるのを修正 ( #14139 )
2024-07-07 09:56:09 +09:00
おさむのひと
fe852920c3
fix(backend): parse5関係の型のimport方法を変更 ( #14146 )
2024-07-07 09:55:06 +09:00
syuilo
8e1d94c6c7
fix import path
2024-07-06 21:46:19 +09:00
dakkar
f086bc23f5
don't send real-time updates of replies to blocked users
...
this is in line with the behaviour of a note's detailed view, which
does not show me replies from users who blocked me
2024-07-06 11:35:52 +01:00
anatawa12
5d03efa1bb
dev: fix pnpm dev is broken ( #14123 )
...
* dev: pnpm dev is broken
* dev: fix crash pnpm dev because of unhandled promise
2024-07-03 06:40:31 +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
syuilo
427648c4b8
update deps ( #14057 )
...
* wip
* locales/index.jsのymlファイル取得ロジックを調節
* regenerate pnpm-lock.yaml
* fix(backend): typecheck fails
* chore(deps): bump ip-cidr from 4.0.0 to 4.0.1 in /packages/backend
* chore: migrate ESLint configs to flat config (#14094 )
* chore: migrate ESLint configs to flat config
* fix: update paths
* fix: frontend lint fails
* refactor(misskey-js): lint build.js
* update deps
---------
Co-authored-by: samunohito <46447427+samunohito@users.noreply.github.com>
Co-authored-by: zyoshoka <root@zyoshoka.com>
Co-authored-by: zyoshoka <107108195+zyoshoka@users.noreply.github.com>
2024-07-02 11:38:34 +09:00
dakkar
320db585e3
pass all the options to the cache constructor
2024-06-30 11:08:21 +01:00
dakkar
8cdea537e9
cache URL previews on the server
...
we already tell browsers to cache the preview for 7 days, but each
browser will ask the server, and the server will talk to the network,
hammering the poor site that got mentioned on fedi
let's instead cache the preview on the server!
2024-06-30 10:55:13 +01:00
Leah
2ebdc36c7a
Add search for files in drive
2024-06-28 16:27:28 +02:00
ぬるきゃっと
a6edd50a5d
chore(docker-compose): 推奨の名前にする ( #14096 )
...
* chore(docker-compose): 推奨の名前にする
5c18e329d5/spec.md (compose-file)
* yaml to yml
* fix
* fix
2024-06-28 11:16:12 +09:00
anatawa12
0e5a52c678
fix: notRespondingSinceが実装される前に不通になったインスタンスが自動的に配信停止にならない ( #14059 )
...
Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com>
2024-06-23 10:59:43 +01:00