Commit Graph

2179 Commits

Author SHA1 Message Date
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