From 43f1034d03bd9b91981d52414c3c2ec217b967e8 Mon Sep 17 00:00:00 2001 From: Linca Date: Wed, 6 Mar 2024 18:27:34 +0000 Subject: [PATCH 01/59] feat: add unencrypted messaging warning in chat Co-authored-by: Lhcfl --- locales/en-US.yml | 1 + locales/zh-CN.yml | 1 + packages/client/src/pages/messaging/index.vue | 4 ++++ 3 files changed, 6 insertions(+) diff --git a/locales/en-US.yml b/locales/en-US.yml index e9abbfa2c7..c7512bb941 100644 --- a/locales/en-US.yml +++ b/locales/en-US.yml @@ -2220,3 +2220,4 @@ _iconSets: moreUrls: "Pinned pages" moreUrlsDescription: "Enter the pages you want to pin to the help menu in the lower left corner using this notation:\n\"Display name\": https://example.com/" +messagingUnencryptedInfo: "Chats on Firefish are not end-to-end encrypted. Don't share any sensitive infomation over Firefish." diff --git a/locales/zh-CN.yml b/locales/zh-CN.yml index 820cbdbcc4..7c33eb815f 100644 --- a/locales/zh-CN.yml +++ b/locales/zh-CN.yml @@ -2049,3 +2049,4 @@ searchWordsDescription: "要搜索帖子,请输入关键词。交集搜索关 searchRangeDescription: "如果您要过滤时间段,请按以下格式输入:20220615-20231031\n\n如果您省略年份(例如 0105-0106 或 20231105-0110),它将被解释为当前年份。\n\n您还可以省略开始日期或结束日期。 例如 -0102 将过滤搜索结果以仅显示今年 1 月 2 日之前发布的帖子,而 20231026- 将过滤结果以仅显示 2023 年 10 月 26 日之后发布的帖子。" +messagingUnencryptedInfo: "Firefish 上的聊天没有经过端到端加密,请不要在聊天中分享您的敏感信息。" diff --git a/packages/client/src/pages/messaging/index.vue b/packages/client/src/pages/messaging/index.vue index 4b4a8b2ce5..ff42a808e5 100644 --- a/packages/client/src/pages/messaging/index.vue +++ b/packages/client/src/pages/messaging/index.vue @@ -8,6 +8,9 @@ />
+ + + Date: Thu, 7 Mar 2024 04:02:45 +0900 Subject: [PATCH 02/59] chore: bump Node requirement from v18.16.0 to v18.17.0 to be compatible with Node-API version 9: https://nodejs.org/api/n-api.html#node-api-version-matrix --- README.md | 2 +- docs/notice-for-admins.md | 3 +++ packages/backend-rs/Cargo.lock | 12 ++++++------ packages/backend-rs/Cargo.toml | 4 ++-- packages/backend/src/boot/master.ts | 2 +- 5 files changed, 13 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 6edbd5efbd..26913a0001 100644 --- a/README.md +++ b/README.md @@ -48,7 +48,7 @@ If you have access to a server that supports one of the sources below, I recomme ## Dependencies -- At least [NodeJS](https://nodejs.org/en/) v18.16.0 (v20/v21 recommended) +- At least [NodeJS](https://nodejs.org/en/) v18.17.0 (v20/v21 recommended) - At least [PostgreSQL](https://www.postgresql.org/) v12 (v16 recommended) - At least [Redis](https://redis.io/) v7 - Web Proxy (one of the following) diff --git a/docs/notice-for-admins.md b/docs/notice-for-admins.md index 6fa5689642..c52cf61620 100644 --- a/docs/notice-for-admins.md +++ b/docs/notice-for-admins.md @@ -4,6 +4,9 @@ The full-text search engine used in Firefish has been changed to [PGroonga](http ## For systemd/pm2 users +- Required Node.js version has been bumped from v18.16.0 to v18.17.0. +- You need to install PGroonga on your system. Please follow the instructions below. + ### 1. Install PGroonga Please execute `psql --version` to check your PostgreSQL major version. This will print a message like this: diff --git a/packages/backend-rs/Cargo.lock b/packages/backend-rs/Cargo.lock index 43cd907126..3b2eef0389 100644 --- a/packages/backend-rs/Cargo.lock +++ b/packages/backend-rs/Cargo.lock @@ -406,9 +406,9 @@ checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" [[package]] name = "chrono" -version = "0.4.34" +version = "0.4.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bc015644b92d5890fab7489e49d21f879d5c990186827d42ec511919404f38b" +checksum = "8eaf5903dcbc0a39312feb77df2ff4c76387d591b9fc7b04a238dcf8bb62639a" dependencies = [ "android-tzdata", "iana-time-zone", @@ -421,9 +421,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.1" +version = "4.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c918d541ef2913577a0f9566e9ce27cb35b6df072075769e0b26cb5a554520da" +checksum = "b230ab84b0ffdf890d5a10abdbc8b83ae1c4918275daea1ab8801f71536b2651" dependencies = [ "clap_builder", "clap_derive", @@ -431,9 +431,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.1" +version = "4.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f3e7391dad68afb0c2ede1bf619f579a3dc9c2ec67f089baa397123a2f3d1eb" +checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4" dependencies = [ "anstream", "anstyle", diff --git a/packages/backend-rs/Cargo.toml b/packages/backend-rs/Cargo.toml index 1c80914c54..3ab3a4b742 100644 --- a/packages/backend-rs/Cargo.toml +++ b/packages/backend-rs/Cargo.toml @@ -28,8 +28,8 @@ thiserror = "1.0.52" tokio = { version = "1.35.1", features = ["full"] } # Default enable napi4 feature, see https://nodejs.org/api/n-api.html#node-api-version-matrix -napi = { version = "2.14.1", default-features = false, features = ["napi6", "tokio_rt"], optional = true } -napi-derive = { version = "2.14.5", optional = true } +napi = { version = "2.16.0", default-features = false, features = ["napi9", "tokio_rt"], optional = true } +napi-derive = { version = "2.16.0", optional = true } basen = "0.1.0" [dev-dependencies] diff --git a/packages/backend/src/boot/master.ts b/packages/backend/src/boot/master.ts index 9418f59e4c..5a1e0da454 100644 --- a/packages/backend/src/boot/master.ts +++ b/packages/backend/src/boot/master.ts @@ -149,7 +149,7 @@ function showNodejsVersion(): void { nodejsLogger.info(`Version ${process.version} detected.`); - const minVersion = "v18.16.0"; + const minVersion = "v18.17.0"; if (semver.lt(process.version, minVersion)) { nodejsLogger.error(`At least Node.js ${minVersion} required!`); process.exit(1); From 031e2720524b316af7a6544b39220cc3462f8c72 Mon Sep 17 00:00:00 2001 From: naskya Date: Thu, 7 Mar 2024 09:59:30 +0900 Subject: [PATCH 03/59] chore (client): add kmyblue to commonNames --- packages/client/src/components/MkInstanceTicker.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/client/src/components/MkInstanceTicker.vue b/packages/client/src/components/MkInstanceTicker.vue index 14a95c58f5..da46185218 100644 --- a/packages/client/src/components/MkInstanceTicker.vue +++ b/packages/client/src/components/MkInstanceTicker.vue @@ -55,6 +55,7 @@ const commonNames = new Map([ ["gnusocial", "GNU social"], ["gotosocial", "GoToSocial"], ["kbin", "/kbin"], + ["kmyblue", "kmyblue"], ["microblogpub", "microblog.pub"], ["nextcloud social", "Nextcloud Social"], ["peertube", "PeerTube"], From ce406f986131070166712882c635d91237fc1824 Mon Sep 17 00:00:00 2001 From: naskya Date: Thu, 7 Mar 2024 10:52:32 +0900 Subject: [PATCH 04/59] refactor (client): $instance -> instance --- packages/client/src/components/MkDonation.vue | 6 +++--- packages/client/src/init.ts | 1 - packages/client/src/instance.ts | 7 ------- packages/client/src/pages/about-firefish.vue | 3 ++- packages/client/src/pages/about.emojis.vue | 9 +++++++-- packages/client/src/pages/about.vue | 20 +++++++++---------- packages/client/src/pages/admin/index.vue | 6 +++--- packages/client/src/ui/_common_/navbar.vue | 6 ------ packages/client/src/ui/visitor/a.vue | 5 +++-- packages/client/src/ui/visitor/kanban.vue | 4 +++- packages/client/src/widgets/server-info.vue | 9 +++++---- 11 files changed, 36 insertions(+), 40 deletions(-) diff --git a/packages/client/src/components/MkDonation.vue b/packages/client/src/components/MkDonation.vue index 095dd7a14b..f213867d65 100644 --- a/packages/client/src/components/MkDonation.vue +++ b/packages/client/src/components/MkDonation.vue @@ -10,7 +10,7 @@
{{ i18n.ts._aboutFirefish.pleaseDonateToFirefish }} -

+

{{ i18n.t("_aboutFirefish.pleaseDonateToHost", { host: hostname, @@ -27,9 +27,9 @@ >{{ i18n.ts._aboutFirefish.donate }} {{ i18n.t("_aboutFirefish.donateHost", { host: hostname, diff --git a/packages/client/src/init.ts b/packages/client/src/init.ts index c5e003ed18..859f5211ce 100644 --- a/packages/client/src/init.ts +++ b/packages/client/src/init.ts @@ -205,7 +205,6 @@ function checkForSplash() { app.config.globalProperties = { $i, - $instance: instance, }; widgets(app); diff --git a/packages/client/src/instance.ts b/packages/client/src/instance.ts index 319c95b2ea..7a5a7f4def 100644 --- a/packages/client/src/instance.ts +++ b/packages/client/src/instance.ts @@ -46,10 +46,3 @@ export const emojiTags = computed(() => { } return Array.from(tags); }); - -// このファイルに書きたくないけどここに書かないと何故かVeturが認識しない -declare module "@vue/runtime-core" { - interface ComponentCustomProperties { - $instance: typeof instance; - } -} diff --git a/packages/client/src/pages/about-firefish.vue b/packages/client/src/pages/about-firefish.vue index 64c33cee3e..4ddd508fbb 100644 --- a/packages/client/src/pages/about-firefish.vue +++ b/packages/client/src/pages/about-firefish.vue @@ -35,7 +35,7 @@ > diff --git a/packages/client/src/pages/about.vue b/packages/client/src/pages/about.vue index 815611cdd5..0a9c546df6 100644 --- a/packages/client/src/pages/about.vue +++ b/packages/client/src/pages/about.vue @@ -28,7 +28,7 @@

@@ -41,7 +41,7 @@ @click="easterEgg" />
- {{ $instance.name || host }} + {{ instance.name || host }}
@@ -49,7 +49,7 @@ @@ -70,7 +70,7 @@ i18n.ts.administrator }} @@ -78,20 +78,20 @@ i18n.ts.contact }} {{ i18n.ts.tos }} {{ i18n.t("_aboutFirefish.donateHost", { - host: $instance.name || host, + host: instance.name || host, }) }} diff --git a/packages/client/src/pages/admin/index.vue b/packages/client/src/pages/admin/index.vue index 29c43946f3..9a3e0eca49 100644 --- a/packages/client/src/pages/admin/index.vue +++ b/packages/client/src/pages/admin/index.vue @@ -5,7 +5,7 @@
diff --git a/packages/client/src/ui/visitor/a.vue b/packages/client/src/ui/visitor/a.vue index bc8f601457..1010d3a052 100644 --- a/packages/client/src/ui/visitor/a.vue +++ b/packages/client/src/ui/visitor/a.vue @@ -3,7 +3,7 @@