Commit graph

2182 commits

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