Commit graph

2372 commits

Author SHA1 Message Date
syuilo
a1e12c0ec3 Merge branch 'develop' of https://github.com/misskey-dev/misskey into develop 2024-02-12 11:37:55 +09:00
syuilo
9b5aeb76d8 update SPDX-FileCopyrightText 2024-02-12 11:37:45 +09:00
Acid Chicken (硫酸鶏)
3dc095d1c9
feat: provide tarball (#13260)
* feat: provide tarball

* build: pack on build-assets

* chore: use ignore-walk

* chore: debug

* build: dependencies
2024-02-12 10:02:27 +09:00
dakkar
421f8d49e5 Never return broken notifications #409
Since notifications are stored in Redis, we can't expect relational
integrity: deleting a user will *not* delete notifications that
mention it.

But if we return notifications with missing bits (a `follow` without a
`user`, for example), the frontend will get very confused and throw an
exception while trying to render them.

This change makes sure we never expose those broken notifications. For
uniformity, I've applied the same logic to notes and roles mentioned
in notifications, even if nobody reported breakage in those cases.

Tested by creating a few types of notifications with a `notifierId`,
then deleting their user.
2024-02-11 12:25:50 +00:00
Marie
2e7df3297c
fix: diff between NoteCreateService and NoteEditService 2024-02-09 19:51:41 +01:00
Marie
85355813ad
merge: latest changes 2024-02-09 19:22:06 +01:00
syuilo
7fc1d77893 update deps 2024-02-09 17:10:16 +09:00
おさむのひと
614c9a0fc6
fix: 特定文字列を含むノートを投稿できないようにする管理画面用設定項目を追加 (#13210)
* fix: 特定文字列を含むノートを投稿できないようにする管理画面用設定項目を追加

* Serviceでチェックするように変更
2024-02-09 10:07:18 +09:00
かっこかり
0f7918c51b
refactor(backend): exist -> exists (#13203)
* refactor(backend): exist -> exists

* fix
2024-02-08 16:04:41 +09:00
Marie
af5ebdfced
merge: more upstream changes 2024-02-07 21:52:27 +01:00
MeiMei
e89d760240
Enhance: 連合向けのノート配信を軽量化 (#13192)
* AP HTML表現をシンプルに

* a

* CHANGELOG

* リンク
2024-02-07 19:57:59 +09:00
Marie
6a94a52131
merge: upstream 2024-02-06 21:23:37 +01:00
MeiMei
d6cb68b091
AP Key の JSON-LD 表現を修正 (#13170) 2024-02-06 16:51:14 +09:00
1Step621
74245df382
Enhance(frontend): フロント側でもリアクション権限のチェックをするように (#13134)
* フロント側でもリアクション権限のチェックをするように

* update CHANGELOG.md

* lint fixes

* remove unrelated diffs

* deny -> reject
denyは「(信用しないことを理由に)拒否する」という意味らしい

* allow -> accept

* EmojiSimpleにlocalOnlyを含めるように

* リアクション権限のない絵文字は打てないように(ダイアログを出すのではなく)

* regenerate type definitions

* lint fix

* remove unused locales

* remove unnecessary async
2024-02-06 16:45:21 +09:00
Marie
0aadc302c3 fix: quote being returned as null instead of false on mastodon api 2024-02-05 19:38:00 +00:00
Gianni Ceccarelli
dabf1867fd
keep cached avatar&banner when refresh fails to get new values (#13145)
* keep cached avatar&banner when refresh fails to get new values

when the remote explicitly tells us a user image is gone, we remove
our cached value, but if we fail to get the image, we keep whatever
value we already have

this should minimise the problem of avatars randomly disappearing

* autogen bits

* pnpm run build-misskey-js-with-types

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2024-02-04 21:03:49 +09:00
Gianni Ceccarelli
bafef1f8b4
ignore instance.actor when checking if there are local users (#13146)
* ignore `instance.actor` when checking if there are local users

We've seen this happen a few times:

* there was some AP software at $some_domain
* it gets replaced by Misskey
* before the first user can be created, an AP activity comes in
* Misskey resolves the activity
* to do this, it creates the `instance.actor` to sign its request
* now there *is* a local user, so the `meta` endpoint returns
  `requireSetup:false`
* the admin is very confused

This commit factors out the check, and doesn't count the
`instance.actor` as a real user.

* autogen bits
2024-02-04 20:46:28 +09:00
atsuchan
2c4ba4723f
fix(backend): メール配信機能が無効ならばメールを送ることのないように (#13152)
Do not send email if email delivery is disabled
2024-02-04 20:44:35 +09:00
Marie
11628e4b6a
merge: upstream 2024-02-03 20:19:44 +01:00
Marie
f93a8e2d38 merge: Fix sfm-js linkage (!399)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/399

Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
Approved-by: dakkar <dakkar@thenautilus.net>
2024-02-03 18:28:47 +00:00
Marie
d3d0e510d8 merge: DeepLX-JS support (!396)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/396

Closes #324

Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
Approved-by: dakkar <dakkar@thenautilus.net>
2024-02-03 17:54:59 +00:00
Marie
469c3f3f1a
upd: remove https 2024-02-03 18:41:47 +01:00
Marie
75bce2228f merge: some fixes to NoteEdit and muting (!376)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/376

Approved-by: Amelia Yukii <amelia.yukii@shourai.de>
Approved-by: Luna <her@mint.lgbt>
Approved-by: Marie <marie@kaifa.ch>
2024-02-03 17:25:17 +00:00
Marie
f091b84c6e
chore: change sfm registry and name 2024-02-03 15:01:09 +01:00
dakkar
4bc517ca89 import fs/promises the right way
thanks Marie
2024-02-03 12:55:56 +00:00
dakkar
bb3694bfed lint 2024-02-03 12:55:46 +00:00
dakkar
1bb5021c54 decode entity references from tweets
apparently *some* tweets have those ☹
2024-02-03 12:05:08 +00:00
dakkar
a981bca7a3 simpler logic
thanks Alina
2024-02-03 11:37:20 +00:00
dakkar
3a3a051bb5 make almost all fs ops async
there's no `fs.promises.exists`
2024-02-03 11:33:42 +00:00
dakkar
7684f45a5e simpler mapping
thanks Alina
2024-02-03 11:30:39 +00:00
dakkar
25948c9232 simpler json-isation
thanks Alina for the suggestion
2024-02-03 11:29:46 +00:00
yukineko
d8bdbd53ed
fix: api-docが開けない問題を修正 (#13132)
* refactor: 自己参照を使用している箇所に`selfRef`を持たせるように

* feat: スキーマ生成時に自己参照を含むかどうかを指定できるように

* fix: api.jsonにselfRefが含まれているのを修正

* refactor: 他の箇所と同様にselfRefの除去を行うように

* remove: 不要なimportを削除
2024-02-02 12:47:07 +09:00
おさむのひと
85809a240e
fix(backend): "誰でも新規登録できるようにする"の初期値をOFFにする (#13130)
* fix(backend): "誰でも新規登録できるようにする"の初期値をOFFにする

* fix CHANGELOG.md

* fix
2024-02-02 11:24:45 +09:00
Amelia Yukii
a6e257f502 Merge branch 'feture/code-injection-fix' into 'develop'
CVE: Fixed code injection from twitter import

See merge request TransFem-org/Sharkey!390

(cherry picked from commit 127f8556d4)

2a8e93e4 Fixed code injection from twitter import
2024-02-01 15:07:35 +00:00
KevinWh0
2a8e93e4be Fixed code injection from twitter import 2024-02-01 15:58:50 +01:00
tamaina
b0a38c0cae
fix: Hide reactions of all remote users / feat: moderators can see reactions of all users (#13128)
* fix: Hide reactions of all remote users
https://github.com/misskey-dev/misskey/issues/12964

* feat: Moderators can see reactions of all users
https://github.com/misskey-dev/misskey/issues/13127

* modify CHANGELOG.md

* fix iAmModerator
2024-02-01 20:05:45 +09:00
zyoshoka
2db5b61616
refactor(backend): User関連のスキーマ/型の指定を強くする (#12808)
* refactor(backend): User関連のスキーマ/型の指定を強くする

* refactor(backend): `pack()`の引数にスキーマを指定するように

* chore: fix ci

* fix: 変更漏れ

* fix ci

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2024-01-31 15:45:35 +09:00
syuilo
e90dea4be9 update deps 2024-01-30 20:59:44 +09:00
yukineko
a6a91fec3a
refactor: frontendのcomponentsの型エラーを改善 (#12926)
* add: safeFloatParserを追加

* fix: 欠けていた型を追加

* refactor: pageBlockTypesをjson-schemaに移植

* refactor: components/global内の型エラーが出ている箇所を修正

* lint: fix null check style

* refactor: fix type error

* refactor: fix some type errors

* fix: 翻訳が抜けていた箇所を修正

* refactor: getJsonSchemaで正しいスキーマが返されるように修正

* fix: MkChartの型エラーとbytesオプションが機能していない問題を修正

* fix(misskey-js): `drive`->`folderUpdated`のpayloadの型が間違っていたのを修正

* refactor: fix some type errors

* change: Captcha読み込み中の文言をLoadingに変更

* refactor(backend/misskey-js): MainEventの型を改善

* refactor: chartjs-plugin-gradientが二重でpluginに登録されていたのを修正

* update: misskey-js.api.md

* refactor: fix some type errors

* fix: backendのtypecheckが落ちていたのを修正

* update: misskey-js.api.md

* add: json-schemaのnoteにpollの型定義を追加

* refactor: noteのjson-schemaの型を改善

* refactor: MkPoll

* refactor: fix some type errors

* change: UserLiteにisLockedを持たせるように

* fix: notificationスキーマにroleが含まれていないのを修正

* Revert "change: UserLiteにisLockedを持たせるように"

This reverts commit 1bb0c8e7a9b19a4e9f21bf7381712b98f27672a5.

* fix: フォロー通知から鍵垢へのフォローを行うと処理中のまま止まってしまう問題を修正

* refactor: noteスキーマのvisibilityにenumを追加

* change: deepCloneのCloneableTypeにundefinedを追加

* refactor: fix some type errors

* refactor: `allowEmpty: false`を使用していた箇所を`minLength: 1`に置き換え

* enhance: API 'retension' のresponseの型を追加

* fix: Chart関連のtooltipが正しい位置に表示されない問題を修正

* refactor: fix some type errors

* fix: 型情報が不足していたのを修正

* enhance: announcementスキーマにenumを追加

* enhance: ロールポリシーの型定義をRoleServiceからjson-schemaに移植

* refactor: policiesを`ref: RolePolicies`に統一

* fix: API `meta` のレスポンスの型にpoliciesが含まれていないのを修正

* refactor: fix some type errors

* fix: backendのlintが落ちているのを修正

* fix: MkFoldableSectionの開閉時のanimationが適用されていない問題を修正

* fix: backendのtypecheckが落ちているのを修正

* update: run build-misskey-js-with-types

* fix: MkDialogのmount時に文字数制限の判定が行われない問題を修正

* update: CHANGELOG.md

* refactor: MkUserSelectDialogの型を改善

* fix: deepCloneでundefinedはcloneしないように (#9207)

* change: frontendのcloneをbackend側にも反映

* update: CHANGELOG.md

* fix: RoleServiceからPackを通して型RolePoliciesに依存させないように

* Update packages/frontend/src/scripts/get-note-summary.ts

* revert RoleService.ts changes

* change:  optional chaining -> non-null assertion

* remove: unused import

* fix: propsで渡されたuserがUserLiteの場合に意図しない動作になってしまうのを修正

* change: fix null check style

* refactor: fix type error

* change: fix null check style

* Update packages/frontend/src/components/MkDrive.vue

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>

* refactor: css moduleでglobalを使わないように

* refactor: roleのiconUrlは必ず存在するものとして扱うように

* enhance: MenuButtonのactiveにcomputedを受け付けられるように

* Update packages/frontend/src/components/MkNotePreview.vue

* Update MkWindow.vue

* refactor: notification.noteは必ず存在するものとして扱うように

* Update packages/frontend/src/components/MkNotification.vue

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>

* fix: MkSignupDialogでdoneのemit時にresを含んでいなかったのを修正

* Update packages/frontend/src/scripts/clone.ts

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>

* refactor: 不要な返り値の型を削除

* refactor: 不要なnullチェックを削除

* update: misskey-js-autogen

* update: clone.ts

* refactor

* Update MkNotification.vue

* Update MkNotification.vue

* ✌️

* Update MkNotification.vue

* Update MkNotification.vue

* Update MkNotification.vue

* Update MkNotifications.vue

* Update MkUserSetupDialog.Profile.vue

* Update MkUserCardMini.vue

* ✌️

* Update MkMenu.vue

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2024-01-30 19:53:53 +09:00
dakkar
b77c025245 link twitter names to twitter, not nitter #382
nitter seems very dead
2024-01-28 16:06:16 +00:00
woxtu
cdac3988b5
fix(backend): Fix typos in job configurations (#13086)
* Fix typos

* Update CHANGELOG
2024-01-28 15:08:45 +09:00
Marie
c6e3ec07d1
add: DeepLX-JS support
Closes #324
2024-01-26 21:29:38 +01:00
dakkar
e93e73673a probably more correct muting logic
we want to notify if neither the thread nor the user are muted;
otherwise, for example, notes in a muted thread from a non-muted user
would get notified
2024-01-26 18:09:25 +00:00
dakkar
b0fcc11d9e null-ify text after trimming
this comes from upstream, it's already present in the "import"
section, I think it was missed in a merge
2024-01-26 18:07:49 +00:00
dakkar
83e9057b27 apply to NoteEditService all recent changes from NoteCreateService 2024-01-26 18:07:34 +00:00
Marie
e5c060eecf
fix: don't show mentions and boosts towards muted user posts in timeline
Closes #336
2024-01-26 01:59:19 +01:00
Marie
c8c505fb92
fix: allow viewing of muted users posts
This would allow admins and mods to see muted users posts as well as normal users to view them if they ever get a link sent to them.
2024-01-26 01:39:53 +01:00
Marie
47cf7f6822
fix: don't show replies to muted users in timelines
Closes #337
2024-01-26 01:39:01 +01:00
Marie
6c6ccdc1e0
fix: properly mute notifications when mentioned by muted users
Closes #339
2024-01-26 01:24:26 +01:00
Marie
1bec69df16
fix: reactions being shown on muted/blocked users
Closes #342
2024-01-26 01:00:12 +01:00
Marie
e89f4ff3c8
fix: boosts not being muted when muting thread
Closes #347
2024-01-25 19:39:41 +01:00
Marie
913dd581ef
merge: upstream 2024-01-25 14:21:42 +01:00
Marie
92ee0a5863
fix: notes/versions not checking visibility
Issue reported by fEmber
2024-01-25 14:17:57 +01:00
syuilo
60156a40b2 fix(reversi/backend): refactor and fixes 2024-01-24 16:44:12 +09:00
syuilo
5719a929ad enhance(reversi): 変則なしマッチングを可能に 2024-01-24 16:37:06 +09:00
syuilo
d27b3525cd enhance(reversi): improve matching system 2024-01-24 15:18:50 +09:00
syuilo
a97d4fa4ef fix(reversi): wait redis operation to improve stability 2024-01-24 13:53:55 +09:00
syuilo
908e0f3b8b perf(reversi): set expire matchSpecific and matchAny 2024-01-24 13:51:16 +09:00
syuilo
b68446b289 enhance(reversi): tweak MATCHING_TIMEOUT_MS 2024-01-24 13:32:08 +09:00
syuilo
547be1973d fix of 65557d5f27 2024-01-24 10:35:44 +09:00
syuilo
65557d5f27 enhance(reversi): more robust matching process 2024-01-24 10:16:05 +09:00
syuilo
cc420c245f enhance(reversi): 準備中の自分の対局も一覧に表示するように 2024-01-24 09:41:22 +09:00
syuilo
e8ba0b3f54 enhance(reversi): improve desync handling 2024-01-23 10:51:59 +09:00
Marie
d15e4a85bb
chore: typecheck 2024-01-22 22:13:10 +01:00
Marie
fd69a2fbbd
merge: upstream 2024-01-22 19:58:43 +01:00
syuilo
e0ad066382 fix lint 2024-01-22 18:32:32 +09:00
おさむのひと
850d38414e
fix: 2024-01-22 10:50時点のdevelopにてCIがコケている (#13060)
* fix: バブルゲームのビルド失敗修正

* fix: api.jsonの定義誤りを修正

* fix: lint.yml(typecheck)

* fix: fix eslint error

* fix: frontend vitest version

* fix: frontend vitest version

* fix:

* fix: cypress

* fix: misskey-js test

* fix: misskey-js tsd(tsdはpakcage.jsonのexportsをサポートしない?)

* fix: conflict

* fix: 間違えて上書きしたところを修正

* fix: 再

* fix: api.json

* fix: api.json

* fix: タイムアウト延長

* Update packages/misskey-js/jest.config.cjs

Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
2024-01-22 18:01:54 +09:00
syuilo
d380ed36de fix lint 2024-01-22 18:00:46 +09:00
syuilo
5c8888d6a8 enhance(reversi): render ogp 2024-01-22 17:59:12 +09:00
syuilo
4af3640bd3 fix lint 2024-01-22 17:44:03 +09:00
syuilo
94e282b612 perf(reversi): improve performance of reversi backend 2024-01-22 15:41:29 +09:00
syuilo
259992c65f enhance(reversi): some tweaks 2024-01-22 12:03:32 +09:00
syuilo
a431dde537 refactor(reversi): refactoring of reversi backend 2024-01-22 09:29:06 +09:00
syuilo
1a01a85182 perf(reversi): improve performance of reversi backend 2024-01-22 08:39:38 +09:00
Marie
013032dd93
fix: downgrade eslint to fix bug
prefer-nullish-coalescing broke in the 6.19.0 update with a funky bug which has an open PR to be fixed https://github.com/typescript-eslint/typescript-eslint/issues/8261
2024-01-21 14:18:47 +01:00
Marie
db012fc8c3
merge: upstream (1) 2024-01-21 13:11:23 +01:00
syuilo
f4657eb16f update deps 2024-01-21 18:43:01 +09:00
かっこかり
fb309f3d4f
return a Vary: Accept header for all dual-format endpoints #365 (#13044)
`/users/:user`, `/@:user`, `/notes/:note` return different responses
depending on the request's `Accept:` header. If we don't consistently
return a `Vary: Accept` header, browsers and caching proxies will get
confused, and return AP representations when HTML was requested, or
vice versa.

Co-authored-by: dakkar <dakkar@thenautilus.net>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2024-01-21 18:14:42 +09:00
syuilo
6039f27bd5 enhance(reversi): tweak reversi 2024-01-21 12:05:51 +09:00
syuilo
a17251d913 enhance(reversi): tweak reversi 2024-01-21 10:07:43 +09:00
syuilo
fcd7ffe956 enhance(reversi): tweak reversi 2024-01-20 21:23:33 +09:00
syuilo
b9a81edae5 enhance(reversi): tweak reversi 2024-01-20 13:14:46 +09:00
syuilo
bc7b2f1876 lint fix 2024-01-20 09:56:13 +09:00
syuilo
a637b4e282 feat: reversi
Resolve #12962
2024-01-19 20:51:49 +09:00
AsukaMari
b17eb8e537
fix: Some fixes for #12850 (#12862)
- refinement the error message when trueMail validation fails
- the settings of trueMail are not displayed after saving
- changing how `Active Email Validation` is saved
2024-01-19 18:48:30 +09:00
Marie
0d766a6310 merge: fix make sure that signToActivityPubGet defaults to true (#352)
Reviewed-on: https://git.joinsharkey.org/Sharkey/Sharkey/pulls/352
Reviewed-by: dakkar <dakkar@noreply.git.joinshakrey.org>
2024-01-17 17:01:39 +01:00
syuilo
945d6a2b09 enhance(drop-and-fusion): ゲームバランスの調整など 2024-01-17 20:11:32 +09:00
a
0283142d0e
Fix: properly handle cc followers (#13009)
* Fix: properly handle cc followers

Fix #13001

* Update CHANGELOG.md

* Fix syntax error
2024-01-17 18:19:20 +09:00
Marie
4c1f6be735
merge: upstream 2024-01-15 12:07:35 +01:00
かっこかり
8b0fdfcd69
enhance: 動画・音声周りのUIと動作改良 (#12925)
* wip

* (fix) `/files` をバイトレンジリクエストに対応させる

* video

* audio

* fix

* fix

* spdx

* fix (rangeRequest)

* fix

* Update CHANGELOG.md

* (add) ボリュームを保存できるように

* (fix) ミュート復帰時に音量が固定される

* named export

* tweak design

* Add sensitive class for audio component

* Refactor seekbar styles

* Refactor hms

* Revert "(add) ボリュームを保存できるように"

This reverts commit 6271f9493b63f96d0dd9915207e97fe120ef9037.

* Revert "(fix) ミュート復帰時に音量が固定される"

This reverts commit a65002b56ecdcb10f76bcc2debbe38593a69643f.

* revert revert changes

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2024-01-15 18:17:01 +09:00
YS
d92aaf81c4
refactor: noteテーブルのインデックス整理と配列カラムへのクエリでインデックスを使うように (#12993)
* Optimize note model index

* enhance(backend): ANY()をやめる (MisskeyIO#239)

* add small e2e test drive endpoint

---------

Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>
2024-01-15 08:19:27 +09:00
GrapeApple0
ec4e57bb67
fix: isPrivateIpで検証時にipバージョンが一致するかを確認するように (#12988)
* fix: isPrivateIpで検証時にipバージョンが一致するかを確認するように

* Update CHANGELOG.md

* Update CHANGELOG.md
2024-01-14 15:57:26 +09:00
ShittyKopper
de66ecbbd0 fix: actually make signToActivityPubGet default to true 2024-01-13 14:47:55 +03:00
zyoshoka
d792f4f348
fix(backend): 虚無ノートを投稿できる問題の修正と api.json の OpenAPI Specification 3.1.0 への対応 (#12969)
* fix(backend): `text: null`だけのノートは投稿できないように

* add test

* Update CHANGELOG.md

* chore: bump OpenAPI Specification from 3.0.0 to 3.1.0

* chore: テストがすでにコメントで記述されていたのでそっちを使うことにする

* fix test

* fix(backend): prohibit posting whitespace-only notes

* Update CHANGELOG.md

* fix(backend): `renoteId`または`fileIds`(`mediaIds`)または`poll`が`null`でない場合に、`text  が空白文字のみで構成されたリクエストになることを許可して、結果は`text: null`を返すように

* test(backend): 引用renoteで空白文字のみで構成されたtextにするとレスポンスが`text: null`になることをチェックするテストを追加

* fix(frontend): `text`が`null`であって`renoteId`と`replyId`が`null`でないようなノートは引用リノートとして表示するように

* fix(misskey-js): OpenAPI 3.1に対応

* fix(misskey-js): 型生成をOpenAPI Specification 3.1.0に対応

* fix(ci): `validate-api.json`をOpenAPI Specification 3.1.0に対応

* fix(ci): スキーマ書き換えの際のミスを修正

* Revert "fix(frontend): `text`が`null`であって`renoteId`と`replyId`が`null`でないようなノートは引用リノートとして表示するように"

This reverts commit a9ca55343df6ea1679599acbc4801f78aa3a242b.

* fix(misskey-js): `build-misskey-js-with-types`時は`api.json`のGETをスキップするように

* Revert "fix(misskey-js): `build-misskey-js-with-types`時は`api.json`のGETをスキップするように"

This reverts commit 865458989f9ddacc38d1bb3743a41ea828dbf324.

* fix(misskey-js): `openapi-parser`で`validate`のかわりに`parse`を用いるように

* Update CHANGELOG.md
2024-01-13 16:54:25 +09:00
dakkar
d2d75b25bf emoji search: show closest match first #338 2024-01-12 16:58:21 +00:00
かっこかり
be57ff4985
run pnpm build-misskey-js-with-types (#12972) 2024-01-11 23:41:22 +09:00
Marie
bbdc4e7789
merge: upstream 2024-01-11 11:43:20 +01:00
syuilo
cf54c2ba47 feat: ranking system of bubble game
Resolve #12961
2024-01-11 18:13:39 +09:00
Nila The Dragon
e0e5236864
Revert auto-formatted change in NodeinfoServerService 2024-01-09 22:25:46 +01:00
Nila The Dragon
9ceb74b98d
feat: Implement Donation URL 2024-01-09 21:32:47 +01:00
Marie
3c2c72539a
chore: update sfm dep 2024-01-09 04:11:41 +01:00
Marie
8009e73741
chore: typecheck 2024-01-09 04:10:31 +01:00
Marie
7552cea69a
merge: upstream 2024-01-09 02:57:57 +01:00
dakkar
9d939bcc49 authorised fetch: log more details
this will help debugging problems in the implementation; thanks to
@ShittyKopper for the suggestion
2024-01-08 18:54:01 +00:00
おさむのひと
35ec41fc1e
enhance(backend): テストの高速化 (#12939)
* enhance(backend): テストの高速化

* add ls

* 自動的にマージされるようなので不要

* 起動方法を揃える

* fix test
2024-01-08 17:43:52 +09:00
zyoshoka
618e2ba1d2
fix(backend): drive/files/updateにおけるファイル名のバリデーションが機能していない問題を修正 (#12923)
* fix(backend): `drive/files/update`におけるファイル名のバリデーションが機能していない問題を修正

* Update CHANGELOG.md

* refactor: `!== undefined` -> `!= null`

* add test
2024-01-08 17:40:37 +09:00
Kagami Sascha Rosylight
0c2118e963
refactor: make sure promises are settled before app shutdown (#12942)
👍
2024-01-08 12:28:13 +09:00
かっこかり
6a02dfdd3b
enhance(frontend): バブルゲームの諸々を修正・改良 (#12938)
* enhance(frontend): バブルゲームのテクスチャをゲーム開始時にキャッシュするように

* (fix) カーソルが枠線内を動くように

* (add) 最大コンボ数を表示するように

* (add) 実績を追加

* Update ja-JP.yml

* tweak

* tweak flavor

* perf tweak

* refactor

* perf tweak

* lint

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2024-01-08 11:02:05 +09:00
zyoshoka
0e536bdd86
refactor(frontend): widgets/server-metric内の型エラーを除去 (#12937) 2024-01-07 23:56:46 +09:00
Kagami Sascha Rosylight
2a9db983fc
feat: export clips (#12931)
* feat: export clips

* Update CHANGELOG.md
2024-01-07 10:35:58 +09:00
_
f2dee7b25e
Fix: リストライムラインの「リノートを表示」が正しく機能しない問題を修正 (#12932)
* fix: list timeline withRenotes

* add CHANGELOG
2024-01-07 09:57:01 +09:00
Chocolate Pie
072f67d6e7
feat: Add support for mCaptcha (#12905)
* feat: Add support for mCaptcha

* fix: Fix docker compose configuration

* chore(frontend/docs): update changelog & fix eslint errors

* `@mcaptcha/vanilla-glue`をダイナミックインポートするように

* chore: Add missing prefix to CHANGELOG

* refactor(backend): 適当につけた変数の名前を変更
2024-01-06 20:14:33 +09:00
riku6460
24645e3d3d
enhance(backend): ActivityPub 周りで連合先から HTTP 429 Too Many Requests を受け取った際にジョブをリトライするように (#12917)
* enhance(backend): ActivityPub 周りで HTTP 429 Too Many Requests を受け取った際にリトライするように

* add to changelog

---------

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2024-01-06 09:40:08 +09:00
MeiMei
d415fd29a3
enhance(backend): ActivityPub Deliver queueでBodyを事前処理するように (#12916)
* Pre-processing deliver body

* CHANGELOG

* ループ内で計算されると意味がないので

* 同じ処理を同じ形に

---------

Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>
2024-01-06 09:07:48 +09:00
Marie
3c3c5e190a
upd: add tossface emojis as an option 2024-01-04 20:42:25 +01:00
おさむのひと
30311aca18
fix(misskey-js): /signupと/signinの定義を作成してフロントの型エラーを抑制する (#12846)
* fix(misskey-js): /signupと/signinの定義を復活してフロントの型エラーを抑制する

* fix ci

* fix ci

* fix

* fix

---------

Co-authored-by: osamu <46447427+sam-osamu@users.noreply.github.com>
2024-01-03 13:41:28 +09:00
かっこかり
a9127e3ecd
enhance(frontend): チャンネルノートのピン留めをノートメニューからできるように (#12887)
* enhance(frontend): チャンネルノートのピン留めをノートメニューからできるように

* Update Changelog
2024-01-03 13:35:40 +09:00
Marie
12d60ea457 upd: lower minimum wait time on reactions/delete endpoint
Closes #301
2024-01-03 02:21:49 +01:00
Marie
d412879560
fix: bubble state not working on federation page 2024-01-02 20:43:11 +01:00
Marie
a1a57889fc
upd: add bubble to instance federation page as state
Closes #296
2024-01-02 13:35:03 +01:00
Marie
81dea75eb7
upd: higher character limit for poll options
Limited to 150 to account for {}, "" and commas in DB column

Closes #297
2024-01-02 12:39:47 +01:00
Kagami Sascha Rosylight
09aba4cf16
chore(backend/logger): log data for every level if exists (#12863) 2024-01-02 16:52:51 +09:00
Marie
1805150533 fix: visibility check on masto import
Originally from PR #288
2023-12-31 22:41:35 +01:00
dakkar
8bc77072cb fix: sort multiple config files
`globSync` doesn't guarantee the order in which it returns the
matching paths, so without the `sort()`, the config files may be
merged differently each time the server is started
2023-12-31 18:44:53 +00:00
Marie
4f2fa60a72 merge: bugfix auth-fetch ask to never cache responses (#284)
Reviewed-on: https://git.joinsharkey.org/Sharkey/Sharkey/pulls/284
2023-12-31 19:24:29 +01:00
Marie
3ec00398a3
fix: security with notes/show endpoint 2023-12-31 19:21:59 +01:00
Marie
233eff48f3 merge: pleroma note import - Use hashed filename for exists check (#283)
Reviewed-on: https://git.joinsharkey.org/Sharkey/Sharkey/pulls/283
2023-12-31 18:43:38 +01:00
Marie
b1c26201ca
upd: Note Length customization
note length is now configurable through the config file

Closes #281

falls back to 3000 (misskey default) if not used/included in config
2023-12-31 18:22:02 +01:00
Marie
031d748d0c fix: /oauth/oauth to /oauth 2023-12-31 17:25:38 +01:00
dakkar
61c193c08f lint 2023-12-31 16:17:45 +00:00
smitten
8d6d5923da
Simplify hash steps 2023-12-31 11:14:41 -05:00
smitten
327694d4cf
Use base64url digest 2023-12-31 09:13:51 -05:00
smitten
e9428a5a05
Use hex digest 2023-12-31 09:03:46 -05:00
dakkar
6d5d3d9ea1 auth-fetch: ask to never cache responses
I could have factored out all the lines that set cache headers, but
that would have made future merges even more complicated ☹

thanks ShittyCopper for reporting the problem!
2023-12-31 13:27:38 +00:00
tamaina
1d5a0d0777
chore: use @misskey-dev/eslint-plugin (#12860)
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-12-31 15:26:57 +09:00
Marie
b700fadbe3 upd: add home as a visibility for mastodon imports 2023-12-31 06:32:39 +01:00
Marie
07f06d7ed6 fix: if condition 2023-12-31 04:09:44 +01:00
Marie
fc6581b948 fix: correct followers visibility on import 2023-12-31 03:50:05 +01:00
Marie
667daebb79 upd: prevent vanilla mastodon imports from importing DMs
Also adds the visibility function to mastodon imports
2023-12-31 03:48:51 +01:00
smitten
0bb0d69543
Use hashed filename for exists check 2023-12-30 20:44:31 -05:00
tamaina
2a33981811
chore: use summaly, browser-image-resizer, and sharp-read-bmp on registry.npmjs.org instead of git (#12856)
* chore: use @misskey-dev/summaly on registry.npmjs.org instead of git

* fix backend dependency

* fic backend dependency

* @misskey-dev/sharp-read-bmp

* fix

* use @misskey-dev/browser-image-resizer
2023-12-31 09:45:35 +09:00
trivernis
5f2e07d81f
Revert unnecessary changes to backend package.json 2023-12-29 20:05:19 +01:00
Trivernis
5af915e17e Merge branch 'develop' into feature/config-dropdir 2023-12-29 20:04:22 +01:00
MomentQYC
7948018e6a
feat: Add support for TrueMail (#12850)
Co-authored-by: MarryDream <2190758465@qq.com>
2023-12-29 18:23:29 +09:00
Marie
18e82c0627
fix: frontend not being able to build 2023-12-28 19:37:22 +01:00
Marie
870f70a683
upd: up sfm.js version 2023-12-28 13:06:11 +01:00
Marie
9a9f61a6c0
fix: typecheck 2023-12-28 12:52:12 +01:00
Marie
592027cf68
merge: upstream 2023-12-28 09:54:32 +01:00
Chocolate Pie
530a282524
fix(test): CIが落ちている問題を修正 (#12816)
* fix(test): CIが落ちているのを修正

* fix(ci)?: CIの`typecheck`が落ちる問題を修正

* fix(ci): コンフィグファイルのタイポを修正
2023-12-28 09:46:46 +01:00
MomentQYC
3f60d7c44b
Add a prompt for Tor Browser users (#12776)
* perf: Add a prompt for Tor Browser users

* typo
2023-12-28 09:46:46 +01:00
Kagami Sascha Rosylight
544b8106b2
feat(backend/oauth): allow CORS for token endpoint (#12814)
* feat(backend/oauth): allow CORS for token endpoint

* no need to explicitly set origin to `*`

* Update CHANGELOG.md
2023-12-28 09:46:19 +01:00
Chocolate Pie
82822e29d9
Merge pull request from GHSA-7pxq-6xx9-xpgm
* fix: fix improper authorization when accessing with third-party application

* refactor: refactor type definitions

* fix: get rid of unnecessary access limitation

* enhance: サードパーティアプリケーションがWebsocket APIを使えるように

* fix: add missing parentheses

* Revert "fix(backend): add missing kind definition for admin endpoints to improve security"

This reverts commit 5150053275.

* frontend: 翻訳の抜けを訂正, read:adminとwrite:adminはアクセス発行トークンのデフォルトでは非表示にする

* enhance(test): misskey-ghsa-7pxq-6xx9-xpgmに関するテストを追加

* enhance(test): Websocket APIに対するテストも追加

* enhance(refactor): `@/misc/api-permissions.ts`を`misskey-js/permissions`に統合

* fix(frontend): アクセストークン発行UIで全ての権限を有効にした際、管理者用APIへのアクセスも許可してしまう問題を修正

* enhance(backend): Websocketの接続に最低限必要な権限を変更

* fix(backend): `/api/admin/meta`をサードパーティアプリケーションからはアクセスできないように

* fix(backend): エンドポイントにアクセスするために必要な権限を変更

* fix(frontend/locale): Add missing type declaration

* chore: update `misskey-js/src/autogen`

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-12-28 09:45:54 +01:00
shiosyakeyakini
790f509ebe
fix(backend): 非センシティブのみ(リモートはいいねのみ)が昨日していない問題を修正 (#12801) (#12802)
Co-authored-by: sorairo <sorairo@shiosyakeyakini.info>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-12-28 09:45:15 +01:00
zyoshoka
8daff4a998
refactor(frontend): Reactivityで型を明示するように (#12791)
* refactor(frontend): Reactivityで型を明示するように

* fix: プロパティの参照が誤っているのを修正

* fix: 初期化の値を空配列に書き換えていた部分をnullに置き換え
2023-12-28 09:45:15 +01:00
anatawa12
34cdba6c11
fix: 自分のdirect noteがuser list timelineに追加されない (#12782)
* fix: 自分のdirect noteがuser list timelineに追加されない

* docs(changelog): Fix: 自分のdirect noteがuser list timelineに追加されない
2023-12-28 09:43:12 +01:00
Nya Candy
6f65091cef
fix: lint (#12761) 2023-12-28 09:42:47 +01:00
おさむのひと
f743cba26b
fix(backend): 1702718871541-ffVisibility.jsのdownが壊れている (#12767) 2023-12-28 09:42:47 +01:00
syuilo
42cc909c5b
enhance(backend): センシティブワードの設定がハッシュタグトレンドにも適用されるように 2023-12-28 09:42:47 +01:00
Marie
1f5256b99c
upd: mute reaction notifications if thread is muted
Closes #263
2023-12-27 23:53:37 +01:00
trivernis
06d110a773
Lock glob to exact package version 10.3.10 2023-12-27 21:02:10 +01:00
trivernis
93094bcb72
Keep only the changes to loading the config files using glob patterns 2023-12-27 16:35:14 +01:00
trivernis
df7f4aa3ec
Add support for glob syntax to config file env variables
This change allows loading config files using glob syntax, for
exakple `production-*.yml` to load all config files prefixed with
*production*. With this change the config file can also be configured
using two additional env variables `SHARKEY_CONFIG_YML`
and `SHARKEY_CONFIG_FILE`.
2023-12-27 16:08:37 +01:00
Trivernis
8b31c12607 Merge branch 'develop' into feature/config-dropdir 2023-12-27 14:11:42 +01:00
trivernis
64d34f595c
Change loadConfig to load all yaml files in the config directory 2023-12-27 14:09:59 +01:00
Chocolate Pie
a598baaf01
fix(test): CIが落ちている問題を修正 (#12816)
* fix(test): CIが落ちているのを修正

* fix(ci)?: CIの`typecheck`が落ちる問題を修正

* fix(ci): コンフィグファイルのタイポを修正
2023-12-27 17:36:38 +09:00
MomentQYC
e0040f5da3
Add a prompt for Tor Browser users (#12776)
* perf: Add a prompt for Tor Browser users

* typo
2023-12-27 15:55:56 +09:00
Kagami Sascha Rosylight
ad346b6f36
feat(backend/oauth): allow CORS for token endpoint (#12814)
* feat(backend/oauth): allow CORS for token endpoint

* no need to explicitly set origin to `*`

* Update CHANGELOG.md
2023-12-27 15:10:24 +09:00
Chocolate Pie
c96bc36fed
Merge pull request from GHSA-7pxq-6xx9-xpgm
* fix: fix improper authorization when accessing with third-party application

* refactor: refactor type definitions

* fix: get rid of unnecessary access limitation

* enhance: サードパーティアプリケーションがWebsocket APIを使えるように

* fix: add missing parentheses

* Revert "fix(backend): add missing kind definition for admin endpoints to improve security"

This reverts commit 5150053275.

* frontend: 翻訳の抜けを訂正, read:adminとwrite:adminはアクセス発行トークンのデフォルトでは非表示にする

* enhance(test): misskey-ghsa-7pxq-6xx9-xpgmに関するテストを追加

* enhance(test): Websocket APIに対するテストも追加

* enhance(refactor): `@/misc/api-permissions.ts`を`misskey-js/permissions`に統合

* fix(frontend): アクセストークン発行UIで全ての権限を有効にした際、管理者用APIへのアクセスも許可してしまう問題を修正

* enhance(backend): Websocketの接続に最低限必要な権限を変更

* fix(backend): `/api/admin/meta`をサードパーティアプリケーションからはアクセスできないように

* fix(backend): エンドポイントにアクセスするために必要な権限を変更

* fix(frontend/locale): Add missing type declaration

* chore: update `misskey-js/src/autogen`

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-12-27 15:08:59 +09:00
shiosyakeyakini
9022b05fea
fix(backend): 非センシティブのみ(リモートはいいねのみ)が昨日していない問題を修正 (#12801) (#12802)
Co-authored-by: sorairo <sorairo@shiosyakeyakini.info>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2023-12-26 18:42:37 +09:00
zyoshoka
75034d9240
refactor(frontend): Reactivityで型を明示するように (#12791)
* refactor(frontend): Reactivityで型を明示するように

* fix: プロパティの参照が誤っているのを修正

* fix: 初期化の値を空配列に書き換えていた部分をnullに置き換え
2023-12-26 14:19:35 +09:00
Marie
5bc036180f upd: module versions 2023-12-25 21:37:13 +01:00
anatawa12
fd040c50b1
fix: 自分のdirect noteがuser list timelineに追加されない (#12782)
* fix: 自分のdirect noteがuser list timelineに追加されない

* docs(changelog): Fix: 自分のdirect noteがuser list timelineに追加されない
2023-12-25 11:56:00 +09:00
Marie
fd57c7e24c merge: authorized fetch (#247)
Closes #217
2023-12-24 10:02:53 +01:00
Nya Candy
cae40e68e4
fix: lint (#12761) 2023-12-24 15:24:51 +09:00
おさむのひと
36701f8a7c
fix(backend): 1702718871541-ffVisibility.jsのdownが壊れている (#12767) 2023-12-24 15:24:26 +09:00
syuilo
6fce36374d enhance(backend): センシティブワードの設定がハッシュタグトレンドにも適用されるように 2023-12-24 15:23:56 +09:00
dakkar
a3dd61dec4 fix logging 2023-12-23 21:27:48 +00:00
dakkar
e6c02909c7 fix typo
thanks @Marie
2023-12-23 20:11:53 +00:00
Marie
53365159e8 merge: real-time updates on note detail view (#246)
Closes #223

Reviewed-on: https://git.joinsharkey.org/Sharkey/Sharkey/pulls/246
Reviewed-by: Marie <marie@kaifa.ch>
2023-12-23 21:00:00 +01:00
dakkar
477cda0b63 authorized fetch: log when things go wrong 2023-12-23 15:26:42 +00:00
dakkar
1984416e3e authorized fetch: let /@instance.actor through
this is probably never actually used, but it still looks like a good
idea (also, FireFish does it)

thanks @ShittyKoper for noticing!
2023-12-23 15:26:42 +00:00
dakkar
e5ea882ed7 authorized fetch #217
the implementation is copied from the other places we already check
HTTP signatures, and cross-checked with Firefish's implementation
2023-12-23 15:26:42 +00:00
Marie
6526968f2d fix: check 2023-12-23 16:08:04 +01:00
dakkar
683b4aafb2 real-time updates on note detail view
`useNoteCapture` already subscribes to all updates for a note, so
we can tell it when a note gets replied to, too

Since I'm not actually adding any extra subscription in the client,
just an extra callback, there should be no overhead when replies are
not coming in.

Also, all the timelines already call `useNoteCapture` for each note
displayed, so we know the whole `GlobalEventService` thing works fine.

Many thanks to VueJS for taking care of all the DOM complications
2023-12-23 14:09:51 +00:00
Marie
b3b89567ee merge: upstream 2023-12-23 14:26:24 +01:00
anatawa12
2f425aa03f
fix: ブロックされててもpure RNできる (#12758)
なぜかわからないけど元々Quoteはできるようなのでそれに戻しました
2023-12-23 17:55:34 +09:00
syuilo
e852f4b60d Revert "fix(backend): renote判定がおかしい"
This reverts commit f43599552f.
2023-12-23 17:55:27 +09:00
syuilo
f43599552f fix(backend): renote判定がおかしい 2023-12-23 17:54:29 +09:00
syuilo
6e4894c165 lint 2023-12-23 14:39:01 +09:00
GrapeApple0
5b5a537f56
feat: 登録を拒否するメールアドレスのドメインを手動で設定できるように (#12740)
* feat: 使い捨てアドレスのドメインを手動で設定できるように

* Update CHANGELOG.md

* disposableEmailDomains -> bannedEmailDomains

* isBlockedHostを使うように
2023-12-23 12:06:22 +09:00
Nya Candy
b3c4f7eddc
fix: email verify enable logic (#12743) 2023-12-23 11:00:14 +09:00
Marie
220344c552 fix: email validation 2023-12-23 02:15:12 +01:00
Marie
5db583a3eb merge: upstream 2023-12-23 02:09:23 +01:00
Marie
e0155cffae add: Custom MOTDs
This works almost exactly like FF's custom MOTDs with the only difference being that they get defined in the config file for performance reasons.

Closes #86
2023-12-22 13:10:21 +01:00
anatawa12
52b94dbc4a
fix: 引用RNがpure RNとして連合され、pure RNが引用RNとして連合される (#12744)
* fix: quote notes are rendered as pure renote

* fix: filesが指定されてて空配列のときにQuote扱いされる

* chore: isQuoteの仕様をmisc/is-quote.tsと揃える

* docs: is-quote.tsの方にNoteCreateService.isQuoteのことを書いて更新忘れを防ぐ
2023-12-22 14:03:39 +09:00
おさむのひと
433d46e57f
fix(backend): テストが死んでいるのを修正 (#12738)
* fix test

* fix test

* fix test

* fix test

* fix test
2023-12-22 09:06:13 +09:00
Marie
043f26c895 upd: improve performance for checking if instance is marked as NSFW on images 2023-12-21 23:15:49 +01:00
Marie
4ca3c05487 upd: make new posts be marked as NSFW if instance is marked as NSFW
Closes #226
2023-12-21 23:15:03 +01:00
Marie
9c6a7aed98 fix: websocket for timelines not checking following for muted instance users
Closes #233
2023-12-21 22:42:06 +01:00
Marie
90f8d8e575 upd: fix tag view not respecting blocks and suspensions
Closes #234
2023-12-21 22:24:23 +01:00