Repository navigation
fix(terminal): speed up dense keyword highlighting - #2581
Conversation
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 12c8e03541
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| const electron = require("electron"); | ||
|
|
||
| const appRoot = path.resolve(__dirname, ".."); | ||
| const userData = fs.mkdtempSync(path.join(os.tmpdir(), "netcatty-xterm-decoration-perf-")); |
There was a problem hiding this comment.
Put test user data in Netcatty's temp directory
When this live test is interrupted or exits before cleanup, the Electron profile remains directly under the system temp root, so Netcatty's cleanup and Settings visibility cannot find it. Allocate the test directory through tempDirBridge.getTempFilePath(...) instead of os.tmpdir(), as required for all temporary artifacts.
AGENTS.md reference: AGENTS.md:L140-L143
Useful? React with 👍 / 👎.
|
Automatic fix did not produce additional code changes for the latest Codex findings. Marking for human review. |
|
@codex review |
|
Codex Review: Didn't find any major issues. Can't wait for the next one! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
Codex reported no major issues. This PR is marked ready for human review/merge. |
Summary
Upgrade the terminal core to the first build containing xterm.js's decoration lookup optimization, addressing the dense keyword-highlighting repaint cost identified in the latest #2251 reproduction.
This PR intentionally targets the proven dense-decoration bottleneck. It does not claim that every Vim or command-history lag path in #2251 is resolved; affected Windows verification is still required.
Type of Change
Related Issue (optional)
Related to #2251
Changes Made
@xterm/xtermfrom6.1.0-beta.220to6.1.0-beta.221, which contains Optimize forEachDecorationAtCell by maintaining cache against buffer line index xtermjs/xterm.js#5902.@xterm/addon-webglpinned at0.20.0-beta.219, preserving Netcatty's existing atlas safety patch.KeywordHighlighteragainst representative log output, then run the 20,000-decoration upstream stress regression.Screenshots / Demo
Same-machine comparison for the 20,000-decoration bottleneck:
Testing
npm run dev)npm run lint)npm test— 8,222 tests, 0 failures)Additional checks:
npm run buildnpm run test:xterm-decoration-performancenpm run test:xterm-webgl-overflownpx tsc --noEmitremains red on pre-existing repository-wide type errors; none point to the changed files.Checklist