дзеркало
https://github.com/l0ng-ai/openidea.git
синхронізовано 2026-11-14 21:55:44 +02:00
Порівняти коміти
1
Коміти
| Автор | SHA1 | Дата | |
|---|---|---|---|
|
|
44c87ce727 |
No files matched your search
@@ -41,7 +41,7 @@ User-visible text is written in English at the call site and goes through the te
|
||||
|
||||
## WebKit compatibility
|
||||
|
||||
On macOS and Linux the app runs in WebKit, and the supported floor is Safari 16 (macOS 11 can update to it). `pnpm build` runs `scripts/check-webkit.ts` on the bundle, and `src/platform/webkitCompatibility.test.ts` checks application regexes. Avoid:
|
||||
On macOS and Linux the app runs in WebKit, and the supported floor is Safari 16, the engine of macOS 13 (on macOS 11 and 12 a Safari update doesn't update the engine other apps use). `pnpm build` runs `scripts/check-webkit.ts` on the bundle, and `src/platform/webkitCompatibility.test.ts` checks application regexes. Avoid:
|
||||
|
||||
- regex lookbehind (`(?<=…)`, `(?<!…)`), which needs Safari 16.4, and the regex `v` flag;
|
||||
- import attributes;
|
||||
|
||||
@@ -9,7 +9,7 @@ In the file names below, `<version>` is the release version, for example `0.1.40
|
||||
|
||||
## macOS
|
||||
|
||||
macOS 11 or later.
|
||||
macOS 13 Ventura or later.
|
||||
|
||||
| Mac | File |
|
||||
| ------------- | -------------------------------- |
|
||||
|
||||
@@ -41,7 +41,7 @@ description: "前端 UI 代码的规则:设计 token、CSS Modules、图标、
|
||||
|
||||
## WebKit 兼容性
|
||||
|
||||
在 macOS 和 Linux 上应用运行于 WebKit,最低支持 Safari 16(macOS 11 可以升级到这个版本)。`pnpm build` 会对产物运行 `scripts/check-webkit.ts`,`src/platform/webkitCompatibility.test.ts` 会检查应用中的正则。请避免:
|
||||
在 macOS 和 Linux 上应用运行于 WebKit,最低支持 Safari 16,即 macOS 13 的引擎(macOS 11、12 上更新 Safari 不会更新其他应用使用的引擎)。`pnpm build` 会对产物运行 `scripts/check-webkit.ts`,`src/platform/webkitCompatibility.test.ts` 会检查应用中的正则。请避免:
|
||||
|
||||
- 正则后行断言(`(?<=…)`、`(?<!…)`,需要 Safari 16.4)和正则 `v` 标志;
|
||||
- import attributes;
|
||||
|
||||
@@ -9,7 +9,7 @@ description: "在 macOS、Windows 或 Linux 上下载并安装 OpenIDEA,以及
|
||||
|
||||
## macOS
|
||||
|
||||
需要 macOS 11 或更高版本。
|
||||
需要 macOS 13 Ventura 或更高版本。
|
||||
|
||||
| Mac | 文件 |
|
||||
| ---------- | -------------------------------- |
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
details: "启动错误详情",
|
||||
timeout: "启动未在 30 秒内完成。",
|
||||
outdatedMac:
|
||||
"这台 Mac 的 Safari 版本过旧:OpenIDEA 的界面使用系统的 Safari 网页引擎,需要 Safari 16 或更高版本。请在「系统偏好设置 › 软件更新」中更新 Safari,然后重新打开 OpenIDEA。",
|
||||
"这台 Mac 的系统网页引擎过旧:OpenIDEA 的界面运行在 macOS 自带的 WebKit 引擎上,需要 macOS 13 Ventura 或更高版本。在 macOS 11、12 上更新 Safari 不会更新其他应用使用的引擎,需要升级 macOS。",
|
||||
outdated:
|
||||
"系统的 WebKitGTK 版本过旧:OpenIDEA 需要较新的 WebKitGTK(webkit2gtk-4.1)。请通过系统的包管理器更新后重新打开 OpenIDEA。",
|
||||
}
|
||||
@@ -27,7 +27,7 @@
|
||||
details: "Startup error details",
|
||||
timeout: "Startup did not finish within 30 seconds.",
|
||||
outdatedMac:
|
||||
"Safari on this Mac is too old: OpenIDEA's interface runs on the system's Safari web engine and needs Safari 16 or later. Update Safari in System Preferences › Software Update, then open OpenIDEA again.",
|
||||
"The system web engine on this Mac is too old: OpenIDEA's interface runs on macOS's built-in WebKit and needs macOS 13 Ventura or later. On macOS 11 and 12 a Safari update doesn't update the engine other apps use, so macOS itself needs upgrading.",
|
||||
outdated:
|
||||
"The system's WebKitGTK is too old: OpenIDEA needs a recent WebKitGTK (webkit2gtk-4.1). Update it with your package manager, then open OpenIDEA again.",
|
||||
};
|
||||
|
||||
@@ -3,7 +3,7 @@ import { dirname, resolve } from "node:path";
|
||||
import { pathToFileURL } from "node:url";
|
||||
import ts from "typescript";
|
||||
|
||||
// macOS 11 can update to Safari 16. Keep this floor in sync with vite.config.ts.
|
||||
// Safari 16 is macOS 13's system engine (the app's minimum). Keep this floor in sync with vite.config.ts.
|
||||
// Syntax lowering does not replace newer runtime APIs in dependencies.
|
||||
const newerStatics = new Set([
|
||||
"Promise.withResolvers",
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
"longDescription": "OpenIDEA is an open-source IDE inspired by IntelliJ IDEA. Not affiliated with JetBrains.",
|
||||
"macOS": {
|
||||
"entitlements": "./Entitlements.plist",
|
||||
"minimumSystemVersion": "11.0"
|
||||
"minimumSystemVersion": "13.0"
|
||||
}
|
||||
},
|
||||
"mainBinaryName": "openidea",
|
||||
|
||||
@@ -221,8 +221,7 @@ it("names an outdated system web engine as the cause", () => {
|
||||
window.dispatchEvent(new ErrorEvent("error", { error: new SyntaxError("Unexpected token '.'") }));
|
||||
const hint = document.querySelector("#boot-error p")?.textContent;
|
||||
expect(supports).toHaveBeenCalledWith("container-type", "inline-size");
|
||||
expect(hint).toContain("needs Safari 16 or later");
|
||||
expect(hint).toContain("Software Update");
|
||||
expect(hint).toContain("needs macOS 13 Ventura or later");
|
||||
vi.unstubAllGlobals();
|
||||
});
|
||||
|
||||
|
||||
Reference in new issue
Заблокувати користувача