(nodeVersion: string)
| 18 | * (see ../ui/glyphs.ts for the rationale). |
| 19 | */ |
| 20 | export function buildNode25BlockBanner(nodeVersion: string): string { |
| 21 | const sep = '-'.repeat(72); |
| 22 | return [ |
| 23 | sep, |
| 24 | `[CodeGraph] Unsupported Node.js version: ${nodeVersion}`, |
| 25 | sep, |
| 26 | 'Node.js 25.x has a V8 WASM JIT (turboshaft) Zone allocator bug that', |
| 27 | 'crashes with `Fatal process out of memory: Zone` when CodeGraph', |
| 28 | 'compiles tree-sitter grammars. CodeGraph WILL crash on this Node', |
| 29 | 'version mid-indexing. See https://github.com/colbymchenry/codegraph/issues/81', |
| 30 | '', |
| 31 | 'Fix: install Node.js 22 LTS:', |
| 32 | ' nvm install 22 && nvm use 22 # nvm', |
| 33 | ' brew install node@22 && brew link --overwrite --force node@22 # Homebrew', |
| 34 | '', |
| 35 | 'To override (NOT recommended - you will likely OOM):', |
| 36 | ' CODEGRAPH_ALLOW_UNSAFE_NODE=1 codegraph ...', |
| 37 | sep, |
| 38 | ].join('\n'); |
| 39 | } |
| 40 | |
| 41 | /** |
| 42 | * Lowest supported Node.js major version. Matches the `engines` floor in |
no test coverage detected