From 6c2ce8f39cc222868937a1c9b8addbab66eceb00 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 18 Apr 2026 02:32:56 +0000 Subject: [PATCH 01/12] fix(deps): update ai sdk --- apps/server/package.json | 4 ++-- pnpm-lock.yaml | 38 ++++++++++++++------------------------ 2 files changed, 16 insertions(+), 26 deletions(-) diff --git a/apps/server/package.json b/apps/server/package.json index 3f5871dfda..14852983f0 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -32,9 +32,9 @@ "dependencies": { "@ai-sdk/anthropic": "3.0.69", "@ai-sdk/google": "3.0.63", - "@ai-sdk/openai": "3.0.52", + "@ai-sdk/openai": "3.0.53", "@modelcontextprotocol/sdk": "^1.12.1", - "ai": "6.0.159", + "ai": "6.0.161", "better-sqlite3": "12.9.0", "html-to-text": "9.0.5", "js-yaml": "4.1.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6c1c7168a7..5929ba957e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -575,14 +575,14 @@ importers: specifier: 3.0.63 version: 3.0.63(zod@4.3.6) '@ai-sdk/openai': - specifier: 3.0.52 - version: 3.0.52(zod@4.3.6) + specifier: 3.0.53 + version: 3.0.53(zod@4.3.6) '@modelcontextprotocol/sdk': specifier: ^1.12.1 version: 1.29.0(zod@4.3.6) ai: - specifier: 6.0.159 - version: 6.0.159(zod@4.3.6) + specifier: 6.0.161 + version: 6.0.161(zod@4.3.6) better-sqlite3: specifier: 12.9.0 version: 12.9.0 @@ -1482,8 +1482,8 @@ packages: peerDependencies: zod: ^3.25.76 || ^4.1.8 - '@ai-sdk/gateway@3.0.96': - resolution: {integrity: sha512-BDiVEMUVHGpngReeigzLyJobG0TvzYbNGzdHI8JYBZHrjOX4aL6qwIls7z3p7V4TuXVWUCbG8TSWEe7ksX4Vhw==} + '@ai-sdk/gateway@3.0.98': + resolution: {integrity: sha512-Ol+nP8PIlj8FjN8qKlxhE89N0woqAaGi9CUBGp1boe3RafpphJ7WMuq/RErSvxtwTqje03TP+zIdzP113krxRg==} engines: {node: '>=18'} peerDependencies: zod: ^3.25.76 || ^4.1.8 @@ -1494,8 +1494,8 @@ packages: peerDependencies: zod: ^3.25.76 || ^4.1.8 - '@ai-sdk/openai@3.0.52': - resolution: {integrity: sha512-4Rr8NCGmfWTz6DCUvixn9UmyZcMatiHn0zWoMzI3JCUe9R1P/vsPOpCBALKoSzVYOjyJnhtnVIbfUKujcS39uw==} + '@ai-sdk/openai@3.0.53': + resolution: {integrity: sha512-Wld+Rbc05KaUn08uBt06eEuwcgalcIFtIl32Yp+GxuZXUQwOb6YeAuq+C6da4ch6BurFoqEaLemJVwjBb7x+PQ==} engines: {node: '>=18'} peerDependencies: zod: ^3.25.76 || ^4.1.8 @@ -6766,8 +6766,8 @@ packages: resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} engines: {node: '>=8'} - ai@6.0.159: - resolution: {integrity: sha512-S18ozG7Dkm3Ud1tzOtAK5acczD4vygfml80RkpM9VWMFpvAFwAKSHaGYkATvPQHIE+VpD1tJY9zcTXLZ/zR5cw==} + ai@6.0.161: + resolution: {integrity: sha512-ufhmijmx2YyWTPAicGgtpLOB/xD7mG8zKs1pT1Trj+JL/3r1rS8fkMi/cHZoChSAQSGB4pgmcWVxDrVTUvK2IQ==} engines: {node: '>=18'} peerDependencies: zod: ^3.25.76 || ^4.1.8 @@ -11656,10 +11656,6 @@ packages: resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==} engines: {node: ^10 || ^12 || >=14} - postcss@8.5.8: - resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} - engines: {node: ^10 || ^12 || >=14} - postcss@8.5.9: resolution: {integrity: sha512-7a70Nsot+EMX9fFU3064K/kdHWZqGVY+BADLyXc8Dfv+mTLLVl6JzJpPaCZ2kQL9gIJvKXSLMHhqdRRjwQeFtw==} engines: {node: ^10 || ^12 || >=14} @@ -14262,7 +14258,7 @@ snapshots: '@ai-sdk/provider-utils': 4.0.23(zod@4.3.6) zod: 4.3.6 - '@ai-sdk/gateway@3.0.96(zod@4.3.6)': + '@ai-sdk/gateway@3.0.98(zod@4.3.6)': dependencies: '@ai-sdk/provider': 3.0.8 '@ai-sdk/provider-utils': 4.0.23(zod@4.3.6) @@ -14275,7 +14271,7 @@ snapshots: '@ai-sdk/provider-utils': 4.0.23(zod@4.3.6) zod: 4.3.6 - '@ai-sdk/openai@3.0.52(zod@4.3.6)': + '@ai-sdk/openai@3.0.53(zod@4.3.6)': dependencies: '@ai-sdk/provider': 3.0.8 '@ai-sdk/provider-utils': 4.0.23(zod@4.3.6) @@ -21658,9 +21654,9 @@ snapshots: clean-stack: 2.2.0 indent-string: 4.0.0 - ai@6.0.159(zod@4.3.6): + ai@6.0.161(zod@4.3.6): dependencies: - '@ai-sdk/gateway': 3.0.96(zod@4.3.6) + '@ai-sdk/gateway': 3.0.98(zod@4.3.6) '@ai-sdk/provider': 3.0.8 '@ai-sdk/provider-utils': 4.0.23(zod@4.3.6) '@opentelemetry/api': 1.9.0 @@ -27552,12 +27548,6 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 - postcss@8.5.8: - dependencies: - nanoid: 3.3.11 - picocolors: 1.1.1 - source-map-js: 1.2.1 - postcss@8.5.9: dependencies: nanoid: 3.3.11 From e5daa75cb4586f60d51133da74fa3e3de85dbff5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 18 Apr 2026 02:36:30 +0000 Subject: [PATCH 02/12] chore(deps): update node.js to v24.15.0 --- .nvmrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.nvmrc b/.nvmrc index 045200741c..eefb690f4a 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -24.14.1 \ No newline at end of file +24.15.0 \ No newline at end of file From c69e3b7e14275117a801256bd4dc85eec72dfd81 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 18 Apr 2026 08:42:38 +0000 Subject: [PATCH 03/12] chore(deps): update dependency @redocly/cli to v2.28.0 --- apps/build-docs/package.json | 2 +- pnpm-lock.yaml | 48 ++++++++++++++---------------------- 2 files changed, 20 insertions(+), 30 deletions(-) diff --git a/apps/build-docs/package.json b/apps/build-docs/package.json index 631578d9ec..cae84da510 100644 --- a/apps/build-docs/package.json +++ b/apps/build-docs/package.json @@ -16,7 +16,7 @@ "license": "AGPL-3.0-only", "packageManager": "pnpm@10.33.0", "devDependencies": { - "@redocly/cli": "2.26.0", + "@redocly/cli": "2.28.0", "archiver": "7.0.1", "fs-extra": "11.3.4", "js-yaml": "4.1.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6c1c7168a7..34a9c90c1d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -187,8 +187,8 @@ importers: apps/build-docs: devDependencies: '@redocly/cli': - specifier: 2.26.0 - version: 2.26.0(@opentelemetry/api@1.9.0)(bufferutil@4.0.9)(core-js@3.46.0)(encoding@0.1.13)(utf-8-validate@6.0.5) + specifier: 2.28.0 + version: 2.28.0(@opentelemetry/api@1.9.0)(bufferutil@4.0.9)(core-js@3.46.0)(encoding@0.1.13)(utf-8-validate@6.0.5) archiver: specifier: 7.0.1 version: 7.0.1 @@ -4872,27 +4872,27 @@ packages: '@redocly/cli-otel@0.1.2': resolution: {integrity: sha512-Bg7BoO5t1x3lVK+KhA5aGPmeXpQmdf6WtTYHhelKJCsQ+tRMiJoFAQoKHoBHAoNxXrhlS3K9lKFLHGmtxsFQfA==} - '@redocly/cli@2.26.0': - resolution: {integrity: sha512-24S1ls0qvu3uaPiW4OImy06CpImAkUOd3h7OG+Hq9By5pPavjOE34KtdQTaaFso3e1qgzXYdQh6HPqEY1nTZgA==} + '@redocly/cli@2.28.0': + resolution: {integrity: sha512-hAHtMjo4fLdLqZXtZwQqlwGnAiOzEAh7EPbE01rs9j7cewj2btOXrGQW8v6Eg3gDh+i77/DOxxazRWvZ/zAa7w==} engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'} hasBin: true '@redocly/config@0.22.2': resolution: {integrity: sha512-roRDai8/zr2S9YfmzUfNhKjOF0NdcOIqF7bhf4MVC5UxpjIysDjyudvlAiVbpPHp3eDRWbdzUgtkK1a7YiDNyQ==} - '@redocly/config@0.46.1': - resolution: {integrity: sha512-dSdkB2wRLtvl3f7ayRu9vqVhUMjjRaxZlHgRbgOtPPXxn4uI/ciDO87h4CJb7Iet+OVpevpAU6gU8bo5qVbQxg==} + '@redocly/config@0.48.0': + resolution: {integrity: sha512-8W3wz+Q7y4e9klJWlYOvQWK5r7P2Mo589vcjtlT5coOxsyAdt53k8Vb8iAqnRiGWExbjBQmSbL2XbuU747Nf6Q==} '@redocly/openapi-core@1.34.5': resolution: {integrity: sha512-0EbE8LRbkogtcCXU7liAyC00n9uNG9hJ+eMyHFdUsy9lB/WGqnEBgwjA9q2cyzAVcdTkQqTBBU1XePNnN3OijA==} engines: {node: '>=18.17.0', npm: '>=9.5.0'} - '@redocly/openapi-core@2.26.0': - resolution: {integrity: sha512-BjTPzSV1Gv430W9S/7i5T/dEZDK00GFk6ILCNTI+31pA9lEFJOXc0XRJT+V3v+m3nXIgGoo6GgqeLdAiM10rNg==} + '@redocly/openapi-core@2.28.0': + resolution: {integrity: sha512-Htpp4PsjKMgEuMT9iJu4iuFFzWCDe8FylvpGaQEA5D7jZXWv+8XvnqhpGCKN2cM/n/Uri2QfqNdw0JlKIC59sg==} engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'} - '@redocly/respect-core@2.26.0': - resolution: {integrity: sha512-mejFg26XNp8pqHwnL75QvI7MO4dhgFKa+v35OgOcVMrU9tGZ/VaFbplEyvdrRgjoonguXoLDoMN4Iw1rWlZg0g==} + '@redocly/respect-core@2.28.0': + resolution: {integrity: sha512-svjCRzXsj/EyN7chfB9pTVYvWT1+hlOqMkZVlkrH6PqFKXAHYeP47YRW9+3omUSDBd1Ph4A4J4NBUW1PRph5+g==} engines: {node: '>=22.12.0 || >=20.19.0 <21.0.0', npm: '>=10'} '@replit/codemirror-indentation-markers@6.5.3': @@ -11656,10 +11656,6 @@ packages: resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==} engines: {node: ^10 || ^12 || >=14} - postcss@8.5.8: - resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} - engines: {node: ^10 || ^12 || >=14} - postcss@8.5.9: resolution: {integrity: sha512-7a70Nsot+EMX9fFU3064K/kdHWZqGVY+BADLyXc8Dfv+mTLLVl6JzJpPaCZ2kQL9gIJvKXSLMHhqdRRjwQeFtw==} engines: {node: ^10 || ^12 || >=14} @@ -18739,15 +18735,15 @@ snapshots: dependencies: ulid: 2.4.0 - '@redocly/cli@2.26.0(@opentelemetry/api@1.9.0)(bufferutil@4.0.9)(core-js@3.46.0)(encoding@0.1.13)(utf-8-validate@6.0.5)': + '@redocly/cli@2.28.0(@opentelemetry/api@1.9.0)(bufferutil@4.0.9)(core-js@3.46.0)(encoding@0.1.13)(utf-8-validate@6.0.5)': dependencies: '@opentelemetry/exporter-trace-otlp-http': 0.202.0(@opentelemetry/api@1.9.0) '@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-trace-node': 2.0.1(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.34.0 '@redocly/cli-otel': 0.1.2 - '@redocly/openapi-core': 2.26.0 - '@redocly/respect-core': 2.26.0 + '@redocly/openapi-core': 2.28.0 + '@redocly/respect-core': 2.28.0 abort-controller: 3.0.0 ajv: '@redocly/ajv@8.18.0' ajv-formats: 3.0.1(@redocly/ajv@8.18.0) @@ -18781,7 +18777,7 @@ snapshots: '@redocly/config@0.22.2': {} - '@redocly/config@0.46.1': + '@redocly/config@0.48.0': dependencies: json-schema-to-ts: 2.7.2 @@ -18799,10 +18795,10 @@ snapshots: transitivePeerDependencies: - supports-color - '@redocly/openapi-core@2.26.0': + '@redocly/openapi-core@2.28.0': dependencies: '@redocly/ajv': 8.18.0 - '@redocly/config': 0.46.1 + '@redocly/config': 0.48.0 ajv: '@redocly/ajv@8.18.0' ajv-formats: 3.0.1(@redocly/ajv@8.18.0) colorette: 1.4.0 @@ -18812,12 +18808,12 @@ snapshots: pluralize: 8.0.0 yaml-ast-parser: 0.0.43 - '@redocly/respect-core@2.26.0': + '@redocly/respect-core@2.28.0': dependencies: '@faker-js/faker': 7.6.0 '@noble/hashes': 1.8.0 '@redocly/ajv': 8.18.0 - '@redocly/openapi-core': 2.26.0 + '@redocly/openapi-core': 2.28.0 ajv: '@redocly/ajv@8.18.0' better-ajv-errors: 1.2.0(@redocly/ajv@8.18.0) colorette: 2.0.20 @@ -24657,7 +24653,7 @@ snapshots: glob@13.0.6: dependencies: - minimatch: 10.2.4 + minimatch: 10.2.5 minipass: 7.1.3 path-scurry: 2.0.2 @@ -27552,12 +27548,6 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 - postcss@8.5.8: - dependencies: - nanoid: 3.3.11 - picocolors: 1.1.1 - source-map-js: 1.2.1 - postcss@8.5.9: dependencies: nanoid: 3.3.11 From 676a988433190f862673fb4524cf28906dbdad9c Mon Sep 17 00:00:00 2001 From: green Date: Sat, 18 Apr 2026 05:13:55 +0200 Subject: [PATCH 04/12] Translated using Weblate (Japanese) Currently translated at 99.9% (1961 of 1962 strings) Translation: Trilium Notes/Client Translate-URL: https://hosted.weblate.org/projects/trilium/client/ja/ --- apps/client/src/translations/ja/translation.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/apps/client/src/translations/ja/translation.json b/apps/client/src/translations/ja/translation.json index cdbe639287..2c99b6e57c 100644 --- a/apps/client/src/translations/ja/translation.json +++ b/apps/client/src/translations/ja/translation.json @@ -615,7 +615,8 @@ "collections": "コレクション", "ai-chat": "AI チャット", "spreadsheet": "スプレッドシート", - "llm-chat": "AI チャット" + "llm-chat": "AI チャット", + "markdown": "Markdown" }, "edited_notes": { "no_edited_notes_found": "この日の編集されたノートはまだありません...", @@ -2479,5 +2480,10 @@ }, "launcher_button_context_menu": { "remove_from_launch_bar": "ランチャーバーから削除" + }, + "display_mode": { + "source": "ソースビュー", + "split": "分割ビュー", + "preview": "プレビュー" } } From a915c60c38af4fa4b4ee1f542ef68256762ddd96 Mon Sep 17 00:00:00 2001 From: "Francis C." Date: Sat, 18 Apr 2026 11:23:46 +0200 Subject: [PATCH 05/12] Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 99.2% (401 of 404 strings) Translation: Trilium Notes/Server Translate-URL: https://hosted.weblate.org/projects/trilium/server/zh_Hant/ --- apps/server/src/assets/translations/tw/server.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/server/src/assets/translations/tw/server.json b/apps/server/src/assets/translations/tw/server.json index 8a549ec7a8..a6a411b9ab 100644 --- a/apps/server/src/assets/translations/tw/server.json +++ b/apps/server/src/assets/translations/tw/server.json @@ -45,7 +45,7 @@ "show-note-source": "顯示筆記來源對話方塊", "show-options": "打開選項頁面", "show-revisions": "顯示筆記歷史版本對話方塊", - "show-recent-changes": "顯示最近更改對話方塊", + "show-recent-changes": "顯示最近修改對話方塊", "show-sql-console": "打開 SQL 控制台頁面", "show-backend-log": "打開後端日誌頁面", "text-note-operations": "文字筆記操作", @@ -261,7 +261,7 @@ "show-note-source": "顯示筆記原始碼", "show-options": "顯示選項", "show-revisions": "顯示歷史版本", - "show-recent-changes": "顯示最近更改", + "show-recent-changes": "顯示最近修改", "show-sql-console": "顯示 SQL 控制台", "show-backend-log": "顯示後端日誌", "show-help": "顯示說明", From ec7b9e08e3971a1fb139726b3d827745f352644b Mon Sep 17 00:00:00 2001 From: passkal4 Date: Sat, 18 Apr 2026 11:40:50 +0200 Subject: [PATCH 06/12] Translated using Weblate (Uyghur) Currently translated at 23.0% (93 of 404 strings) Translation: Trilium Notes/Server Translate-URL: https://hosted.weblate.org/projects/trilium/server/ug/ --- apps/server/src/assets/translations/ug/server.json | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/apps/server/src/assets/translations/ug/server.json b/apps/server/src/assets/translations/ug/server.json index 7f7380ddaa..66c2f76a28 100644 --- a/apps/server/src/assets/translations/ug/server.json +++ b/apps/server/src/assets/translations/ug/server.json @@ -85,6 +85,13 @@ "reload-frontend-app": "ئالدى تەرەپ ئەپىنى قايتا يۈكلەش", "open-dev-tools": "تەتقىقاتچى قوراللىرىنى ئېچىش", "find-in-text": "تېكىست ئىچىدىن ئىزدەش", - "toggle-left-note-tree-panel": "سول تەرەپ (خاتىرە دەرىخى) تاختىسىنى ئالماشتۇرۇش" + "toggle-left-note-tree-panel": "سول تەرەپ (خاتىرە دەرىخى) تاختىسىنى ئالماشتۇرۇش", + "toggle-full-screen": "پۈتۈن ئېكران شەكلىگە ئالماشتۇرۇش", + "zoom-out": "كىچىكلىتىش", + "zoom-in": "چوڭايتىش", + "note-navigation": "خاتىرە يولباشچىسى", + "reset-zoom-level": "چوڭ-كىچىكلىك دەرىجىسىنى ئەسلىگە كەلتۈرۈش", + "copy-without-formatting": "تاللانغان تېكىستنى فارماٹسىز كۆچۈرۈش", + "force-save-revision": "نۆۋەتتىكى خاتىرىنىڭ يېڭى نەشرىنى مەجبۇرىي قۇرۇش/ساقلاش" } } From 7dfdc7f31aa9c941eeccb987f4e7e6b65b5bc199 Mon Sep 17 00:00:00 2001 From: passkal4 Date: Sat, 18 Apr 2026 11:41:24 +0200 Subject: [PATCH 07/12] Translated using Weblate (Uyghur) Currently translated at 78.9% (94 of 119 strings) Translation: Trilium Notes/README Translate-URL: https://hosted.weblate.org/projects/trilium/readme/ug/ --- docs/README-ug.md | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/docs/README-ug.md b/docs/README-ug.md index b20038be1e..9b081dba6c 100644 --- a/docs/README-ug.md +++ b/docs/README-ug.md @@ -285,23 +285,24 @@ pnpm run --filter desktop electron-forge:make --arch=x64 --platform=win32 ### تەتقىقاتچى ھۆججەتلىرى -Please view the [documentation -guide](https://github.com/TriliumNext/Trilium/blob/main/docs/Developer%20Guide/Developer%20Guide/Environment%20Setup.md) -for details. If you have more questions, feel free to reach out via the links -described in the "Discuss with us" section above. +تەپسىلاتلار ئۈچۈن [ھۆججەت +يېتەكچىسى](https://github.com/TriliumNext/Trilium/blob/main/docs/Developer%20Guide/Developer%20Guide/Environment%20Setup.md)گە +قاراڭ. ئەگەر تېخىمۇ كۆپ سوئاللىرىڭىز بولسا، ئۈستىدىكى "بىز بىلەن ئالاقىلىشىڭ" +بۆلىكىدە تەمىنلەنگەن ئۇلىنىشلار ئارقىلىق بىز بىلەن ئالاقىلىشىڭنى قارشى ئالىمىز. -## 👏 Shoutouts +## 👏 مىننەتدارلىق -* [zadam](https://github.com/zadam) for the original concept and implementation - of the application. -* [Sarah Hussein](https://github.com/Sarah-Hussein) for designing the - application icon. -* [nriver](https://github.com/nriver) for his work on internationalization. -* [Thomas Frei](https://github.com/thfrei) for his original work on the Canvas. -* [antoniotejada](https://github.com/nriver) for the original syntax highlight - widget. -* [Dosu](https://dosu.dev/) for providing us with the automated responses to - GitHub issues and discussions. +* ئەپنىڭ ئەسلى ئۇقۇم لاھىيەسى ۋە ئەمەلگە ئاشۇرۇلۇشىغا تۆھپە قوشقان + [zadam](https://github.com/zadam). +* ئەپ سىنبەلگىسىنى لاھىيەلىگەن [Sarah + Hussein](https://github.com/Sarah-Hussein). +* خەلقئارالاشتۇرۇش خىزمىتىگە تۆھپە قوشقان [nriver](https://github.com/nriver). +* Canvas جەھەتتىكى ئەسلى ئىجادىي خىزمەتلىرى ئۈچۈن [Thomas + Frei](https://github.com/thfrei). +* ئەسلى گرامماتىكا گەۋدىلەندۈرۈش كىچىك زاپچاسلارنى ئاپتورى + [antoniotejada](https://github.com/nriver). +* GitHub مەسىلىلىرى ۋە مۇنازىرىلىرىگە ئاپتوماتىك جاۋاب قايتۇرۇش بىلەن تەمىنلىگەن + [Dosu](https://dosu.dev/). * [Tabler Icons](https://tabler.io/icons) for the system tray icons. Trilium would not be possible without the technologies behind it: From 0bdebca2b694583e843788763099fd7807faa14f Mon Sep 17 00:00:00 2001 From: "Francis C." Date: Sat, 18 Apr 2026 11:29:07 +0200 Subject: [PATCH 08/12] Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 89.7% (1760 of 1962 strings) Translation: Trilium Notes/Client Translate-URL: https://hosted.weblate.org/projects/trilium/client/zh_Hant/ --- .../src/translations/tw/translation.json | 30 +++++++++++++++---- 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/apps/client/src/translations/tw/translation.json b/apps/client/src/translations/tw/translation.json index cc0497127e..09b044c264 100644 --- a/apps/client/src/translations/tw/translation.json +++ b/apps/client/src/translations/tw/translation.json @@ -89,13 +89,21 @@ }, "delete_notes": { "delete_all_clones_description": "同時刪除所有克隆(可以在最近修改中撤消)", - "erase_notes_description": "通常(軟)刪除僅標記筆記為已刪除,可以在一段時間內透過最近修改對話方塊撤消。勾選此選項將立即擦除筆記,無法撤銷。", + "erase_notes_description": "立即刪除筆記,而非執行軟刪除。此操作無法撤銷,且會強制重新載入應用程式。", "erase_notes_warning": "永久擦除筆記(無法撤銷),包括所有克隆。這將強制應用程式重新載入。", - "notes_to_be_deleted": "將刪除以下筆記 ({{notesCount}})", + "notes_to_be_deleted": "待刪除筆記 ({{notesCount}})", "no_note_to_delete": "沒有筆記將被刪除(僅克隆)。", - "broken_relations_to_be_deleted": "將刪除以下關聯並斷開連接 ({{ relationCount}})", + "broken_relations_to_be_deleted": "斷開的關聯 ({{ relationCount}})", "cancel": "取消", - "close": "關閉" + "close": "關閉", + "title": "刪除筆記", + "clones_label": "克隆", + "delete_clones_description_one": "同時刪除 {{count}} 個其他克隆。此操作可在最近修改中撤銷。", + "erase_notes_label": "永久擦除", + "table_note_with_relation": "有關聯的筆記", + "table_relation": "關聯", + "table_points_to": "指向 (已刪除)", + "delete": "刪除" }, "export": { "export_note_title": "匯出筆記", @@ -206,7 +214,8 @@ "box_size_small": "小型(顯示大約 10 行)", "box_size_medium": "中型 (顯示大約30行)", "box_size_full": "完整顯示(完整文字框)", - "button_include": "內嵌筆記" + "button_include": "內嵌筆記", + "box_size_expandable": "可展開(預設為摺疊狀態)" }, "info": { "modalTitle": "資訊消息", @@ -1430,7 +1439,7 @@ "expand-subtree": "展開子階層", "collapse-subtree": "收摺子階層", "sort-by": "排序方式…", - "recent-changes-in-subtree": "子階層中的最近更改", + "recent-changes-in-subtree": "子階層中的最近修改", "convert-to-attachment": "轉換為附件", "copy-note-path-to-clipboard": "複製筆記路徑至剪貼簿", "protect-subtree": "保護子階層", @@ -2334,5 +2343,14 @@ "history": "對話歷史", "recent_chats": "最近的對話", "no_chats": "無先前的對話記錄" + }, + "revisions": { + "note_revisions": "筆記歷史版本", + "delete_all_revisions": "刪除此筆記的所有歷史版本", + "delete_all_button": "刪除所有歷史版本", + "help_title": "關於筆記歷史版本的說明", + "confirm_delete_all": "您要刪除此筆記的所有歷史版本嗎?", + "no_revisions": "尚無此筆記的歷史版本...", + "restore_button": "還原" } } From e5f97b6fdd35af201ade1cf4642e5cc954e78c18 Mon Sep 17 00:00:00 2001 From: green Date: Sat, 18 Apr 2026 05:14:25 +0200 Subject: [PATCH 09/12] Translated using Weblate (Japanese) Currently translated at 100.0% (116 of 116 strings) Translation: Trilium Notes/README Translate-URL: https://hosted.weblate.org/projects/trilium/readme/ja/ --- docs/README-ja.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/README-ja.md b/docs/README-ja.md index 6804c08b7c..9f667bc589 100644 --- a/docs/README-ja.md +++ b/docs/README-ja.md @@ -63,7 +63,7 @@ Trilium Notes * ノートは任意の深さのツリーに配置できます。1つのノートをツリー内の複数の場所に配置できます([クローン](https://docs.triliumnotes.org/user-guide/concepts/notes/cloning)を参照) * 豊富な WYSIWYG ノートエディター 例: - 表、画像、[数式](https://docs.triliumnotes.org/user-guide/note-types/text) とマークダウン + 表、画像、[数式](https://docs.triliumnotes.org/user-guide/note-types/text) と markdown [自動フォーマット](https://docs.triliumnotes.org/user-guide/note-types/text/markdown-formatting) など * 構文ハイライト表示を含む From 1c508b830e4f20f3b2bf7375c8f01ea8e86a8719 Mon Sep 17 00:00:00 2001 From: green Date: Sat, 18 Apr 2026 05:12:40 +0200 Subject: [PATCH 10/12] Translated using Weblate (Japanese) Currently translated at 100.0% (404 of 404 strings) Translation: Trilium Notes/Server Translate-URL: https://hosted.weblate.org/projects/trilium/server/ja/ --- apps/server/src/assets/translations/ja/server.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/server/src/assets/translations/ja/server.json b/apps/server/src/assets/translations/ja/server.json index 2197272282..6e41b1934f 100644 --- a/apps/server/src/assets/translations/ja/server.json +++ b/apps/server/src/assets/translations/ja/server.json @@ -382,7 +382,8 @@ "migration": { "old_version": "現在のバージョンからの直接的な移行はサポートされていません。まず最新のv0.60.4にアップグレードしてから、このバージョンにアップグレードしてください。", "error_message": "バージョン {{version}} への移行中にエラーが発生しました: {{stack}}", - "wrong_db_version": "データベースのバージョン({{version}})は、アプリケーションが想定しているバージョン({{targetVersion}})よりも新しく、互換性のないバージョンによって作成された可能性があります。この問題を解決するには、Triliumを最新バージョンにアップグレードしてください。" + "wrong_db_version": "データベースのバージョン({{version}})は、アプリケーションが想定しているバージョン({{targetVersion}})よりも新しく、互換性のないバージョンによって作成された可能性があります。この問題を解決するには、Triliumを最新バージョンにアップグレードしてください。", + "invalid_db_version": "データベースのバージョン番号が無効です。これは通常、データベース内の 'dbVersion' オプションが破損していることを示しています。バックアップから復元してください。" }, "modals": { "error_title": "エラー" From d1528a2f3a24f01ad8630f2a12af048289329934 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 18 Apr 2026 15:10:58 +0300 Subject: [PATCH 11/12] "Claude PR Assistant workflow" --- .github/workflows/claude.yml | 50 ++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 .github/workflows/claude.yml diff --git a/.github/workflows/claude.yml b/.github/workflows/claude.yml new file mode 100644 index 0000000000..6b15fac7af --- /dev/null +++ b/.github/workflows/claude.yml @@ -0,0 +1,50 @@ +name: Claude Code + +on: + issue_comment: + types: [created] + pull_request_review_comment: + types: [created] + issues: + types: [opened, assigned] + pull_request_review: + types: [submitted] + +jobs: + claude: + if: | + (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) || + (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) || + (github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude')) || + (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude'))) + runs-on: ubuntu-latest + permissions: + contents: read + pull-requests: read + issues: read + id-token: write + actions: read # Required for Claude to read CI results on PRs + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 1 + + - name: Run Claude Code + id: claude + uses: anthropics/claude-code-action@v1 + with: + claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }} + + # This is an optional setting that allows Claude to read CI results on PRs + additional_permissions: | + actions: read + + # Optional: Give a custom prompt to Claude. If this is not specified, Claude will perform the instructions specified in the comment that tagged it. + # prompt: 'Update the pull request description to include a summary of changes.' + + # Optional: Add claude_args to customize behavior and configuration + # See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md + # or https://code.claude.com/docs/en/cli-reference for available options + # claude_args: '--allowed-tools Bash(gh pr *)' + From 81dfc59846e6647fe0828d01f295c7ceb98d05a9 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 18 Apr 2026 15:11:00 +0300 Subject: [PATCH 12/12] "Claude Code Review workflow" --- .github/workflows/claude-code-review.yml | 44 ++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 .github/workflows/claude-code-review.yml diff --git a/.github/workflows/claude-code-review.yml b/.github/workflows/claude-code-review.yml new file mode 100644 index 0000000000..b5e8cfd4dc --- /dev/null +++ b/.github/workflows/claude-code-review.yml @@ -0,0 +1,44 @@ +name: Claude Code Review + +on: + pull_request: + types: [opened, synchronize, ready_for_review, reopened] + # Optional: Only run on specific file changes + # paths: + # - "src/**/*.ts" + # - "src/**/*.tsx" + # - "src/**/*.js" + # - "src/**/*.jsx" + +jobs: + claude-review: + # Optional: Filter by PR author + # if: | + # github.event.pull_request.user.login == 'external-contributor' || + # github.event.pull_request.user.login == 'new-developer' || + # github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR' + + runs-on: ubuntu-latest + permissions: + contents: read + pull-requests: read + issues: read + id-token: write + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 1 + + - name: Run Claude Code Review + id: claude-review + uses: anthropics/claude-code-action@v1 + with: + claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }} + plugin_marketplaces: 'https://github.com/anthropics/claude-code.git' + plugins: 'code-review@claude-code-plugins' + prompt: '/code-review:code-review ${{ github.repository }}/pull/${{ github.event.pull_request.number }}' + # See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md + # or https://code.claude.com/docs/en/cli-reference for available options +