diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 958afa28..5aed379e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -81,6 +81,7 @@ jobs: - run: pnpm install --frozen-lockfile - run: pnpm typecheck - run: pnpm lint + - run: pnpm format:check - run: pnpm test - run: pnpm build diff --git a/.oxfmtrc.json b/.oxfmtrc.json index e80c8f34..758635b6 100644 --- a/.oxfmtrc.json +++ b/.oxfmtrc.json @@ -5,5 +5,22 @@ "singleQuote": false, "trailingComma": "all", "sortPackageJson": false, - "ignorePatterns": ["dist", "target", "src/bindings.ts", "pnpm-lock.yaml", "**/*.toml"] + "ignorePatterns": [ + "dist", + "target", + "src/bindings.ts", + "docs/plugins/themes.md", + "pnpm-lock.yaml", + "**/*.toml", + "fixtures", + "crates/**/tests/fixtures" + ], + "overrides": [ + { + "files": ["**/*.md"], + "options": { + "embeddedLanguageFormatting": "off" + } + } + ] } diff --git a/README.md b/README.md index 0a424820..af53c1de 100644 --- a/README.md +++ b/README.md @@ -30,14 +30,14 @@ for 60+ languages. Builds for macOS, Windows and Linux. Opening [freqtrade](https://github.com/freqtrade/freqtrade) (Python, ~770 files) with warm caches, median of 5 runs: -| | OpenIDEA | IntelliJ IDEA 2026.2.3 | -|---|---|---| -| Window with the project | **0.9 s** | 3.1 s | -| Ready (CPU settled) | **1.1 s** | 13.2 s | -| Memory (USS, all processes) | **169 MB** | 2011 MB | -| CPU time until ready | **2.4 s** | 47.9 s | -| Idle CPU | **4 %** of a core | 7 % of a core | -| Quit | **0.3 s** | 5.9 s | +| | OpenIDEA | IntelliJ IDEA 2026.2.3 | +| --------------------------- | ----------------- | ---------------------- | +| Window with the project | **0.9 s** | 3.1 s | +| Ready (CPU settled) | **1.1 s** | 13.2 s | +| Memory (USS, all processes) | **169 MB** | 2011 MB | +| CPU time until ready | **2.4 s** | 47.9 s | +| Idle CPU | **4 %** of a core | 7 % of a core | +| Quit | **0.3 s** | 5.9 s | A release build of OpenIDEA from `main` and IDEA with default settings and plugins, on Windows 11, 32-core AMD, 62 GB RAM. diff --git a/THIRD_PARTY_LICENSES.md b/THIRD_PARTY_LICENSES.md index 202e475b..df0396a9 100644 --- a/THIRD_PARTY_LICENSES.md +++ b/THIRD_PARTY_LICENSES.md @@ -116,7 +116,7 @@ Apache License Version 2.0, January 2004 -http://www.apache.org/licenses/ +http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION @@ -251,7 +251,6 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ``` - ## Chinese UI terminology from Visual Studio Code Some Simplified Chinese terms in `src/platform/locales/text/zh.json` follow the diff --git a/docs/themes.md b/docs/themes.md index 55b0531b..b4420ad9 100644 --- a/docs/themes.md +++ b/docs/themes.md @@ -87,12 +87,12 @@ terminal is a real xterm renderer, without a native PTY or shell. These images cover the shell, sidebar, editor, gutter, find matches, terminal, Settings, focused controls, disabled settings and the selected theme popup. -| Theme | Workbench, editor and terminal | Settings and theme popup | -|---|---|---| +| Theme | Workbench, editor and terminal | Settings and theme popup | +| --------------- | -------------------------------------------------------- | ---------------------------------------------------- | | Solarized Light | [Screenshot](media/themes/solarized-light-workbench.png) | [Screenshot](media/themes/solarized-light-popup.png) | -| Solarized Dark | [Screenshot](media/themes/solarized-dark-workbench.png) | [Screenshot](media/themes/solarized-dark-popup.png) | -| One Light | [Screenshot](media/themes/one-light-workbench.png) | [Screenshot](media/themes/one-light-popup.png) | -| One Dark | [Screenshot](media/themes/one-dark-workbench.png) | [Screenshot](media/themes/one-dark-popup.png) | +| Solarized Dark | [Screenshot](media/themes/solarized-dark-workbench.png) | [Screenshot](media/themes/solarized-dark-popup.png) | +| One Light | [Screenshot](media/themes/one-light-workbench.png) | [Screenshot](media/themes/one-light-popup.png) | +| One Dark | [Screenshot](media/themes/one-dark-workbench.png) | [Screenshot](media/themes/one-dark-popup.png) | The browser regression also checks refresh / startup cache restoration, selection visibility, same-kind switches, the quick menu, existing themes, diff --git a/index.html b/index.html index 30e7b912..845b697d 100644 --- a/index.html +++ b/index.html @@ -11,11 +11,20 @@
- +
diff --git a/package.json b/package.json index d51e0f5e..e2a928ac 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ "test:watch": "vitest", "lint": "oxlint", "format": "oxfmt", + "format:check": "oxfmt --check", "typecheck": "tsrs --noEmit && tsrs -p tsconfig.node.json --noEmit && tsrs -p perf --noEmit && tsrs -p scripts --noEmit", "gen:bindings": "cargo test -p openidea --test export_bindings", "gen:theme-docs": "node scripts/theme/gen-docs.ts", diff --git a/perf/compare/README.md b/perf/compare/README.md index 304a5792..4d5099fe 100644 --- a/perf/compare/README.md +++ b/perf/compare/README.md @@ -13,15 +13,15 @@ python perf/compare/bench.py ~/src/spring-petclinic --runs 5 --wipe-caches # c Each run launches the app on the project, waits until it is ready, idles, closes it, and records: -| Metric | How | -|---|---| -| `window_s` | first visible window whose title matches `window_title` (the project name) | -| `ready_s` | the process tree's CPU stays under `--quiet-cores` for `--quiet-secs`, after the window and any `ready_after` markers | -| markers | first/last time a log line matches, e.g. OpenIDEA `indexed`, IDEA `exit dumb mode` | -| `peak_rss_mb`, `rss_mb`, `uss_mb`, `pss_mb` | summed over every process the app started (WebView2/WebKit, jdtls, language servers, the JVM) | -| `total_cpu_s`, `idle_cpu_pct` | CPU time until ready; CPU while idle for `--idle-secs` | -| `exit_s` | until every process has exited | -| `cache_mb`, install size | `cache_dirs`, `install_dir` | +| Metric | How | +| ------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| `window_s` | first visible window whose title matches `window_title` (the project name) | +| `ready_s` | the process tree's CPU stays under `--quiet-cores` for `--quiet-secs`, after the window and any `ready_after` markers | +| markers | first/last time a log line matches, e.g. OpenIDEA `indexed`, IDEA `exit dumb mode` | +| `peak_rss_mb`, `rss_mb`, `uss_mb`, `pss_mb` | summed over every process the app started (WebView2/WebKit, jdtls, language servers, the JVM) | +| `total_cpu_s`, `idle_cpu_pct` | CPU time until ready; CPU while idle for `--idle-secs` | +| `exit_s` | until every process has exited | +| `cache_mb`, install size | `cache_dirs`, `install_dir` | Apps run interleaved, rotating the order, after `--warmup` discarded runs. Output goes to `results/