You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adopted ESLint 10 + typescript-eslint 8, TypeScript 6, @types/node25, Mocha 11, plus the client/server dependency and
GitHub Actions bumps (checkout@v6, setup-node@v6, upload-artifact@v7, action-gh-release@v3). CI matrix now also covers Node 22. Audited
vulnerabilities dropped from 17 to 3.
Fixed — compatibility & bugs surfaced by the majors
Migrated ESLint to flat config (eslint.config.mjs); removed the legacy .eslintrc.js / .eslintignore and the deprecated --ext lint flag.
Rewrote the e2e test runner to the promise-based glob API (glob 11 dropped
the callback form).
Replaced the unmaintained, TS6-incompatible ts-node with tsx for the
server test loader and import-docs (Mocha 11 loads specs via native ESM).
TypeScript 6 fixes: import = require for the two stray node:assert
namespace imports, lib: es2022 for Array.prototype.at, skipLibCheck,
and the moduleResolution deprecation.
Replaced the stale Microsoft lsp-sample boilerplate e2e (wrong extension
id, fake "uppercase" diagnostics) with a real Enma suite: valid-source =
zero diagnostics, undefined-symbol diagnostic, predefined-globals completion.
Added — usable outside VS Code
Standalone stdio language server: bin/enma-language-server launcher (auto --stdio), bin/files packaging, and README setup for OpenCode, Claude
Code, Copilot CLI, Neovim, Helix, and VS Code forks (Cursor, Antigravity,
GitHub Copilot host).
Verified
Exhaustive Perception/Enma docs cross-check: 246 documented identifiers
across all 17 addons + math3d confirmed present in the bundled predefined
(the only absent names are non-script engine-registration functions).